Markdown Converter
Agent skill for markdown-converter
This directory contains the foundation Docker image for secure devcontainer environments.
Sign in to like and favorite skills
This directory contains the foundation Docker image for secure devcontainer environments.
Provides a reusable base image with:
The base image is built using:
./images/build.sh devcontainer # Builds ai-agents-sandbox/devcontainer:latest # Or from images directory: cd images && ./build.sh devcontainer
/scripts/Security and setup scripts installed in the image:
: Merges whitelist files from multiple sourcesget-whitelist.sh
: Post-creation setup for non-root usernon-root-post-create.sh
~/scripts/logs/ to avoid conflicts with .claude/ directory
: Installs Claude Code configurationssetup-claude-defaults.sh
.claude/agents/.claude/hooks/logs/ and projects/ directories
: Configures Powerlevel10k theme for zshsetup-p10k.sh
: Network isolation verificationtest-network.sh
: Security permissions validationtest-permissions.sh
/home/claude/.claude/projects directory has group local-ai-team for shared access
: Development tools verificationtest-tools.sh
/claude-defaults/Minimal Claude Code configurations:
: Notification hook/hooks/
notify.sh: Host notification system for alerts
: Base Claude Code settings (telemetry disabled)settings.json
: Local settings with notification hook configurationsettings.local.json
Note: This is a minimal base image. Users can add their own agents, commands, and hooks during project initialization by choosing to copy their host Claude settings.
/conf/User configuration files:
.tmux.conf: Terminal multiplexer configuration.zshrc: Shell configuration with p10k themedefault-whitelist.txtBuilt-in allowed domains for proxy filtering:
Base: Ubuntu 22.04 User: claude (UID 1001) Group: local-ai-team (GID 3000) Shell: zsh with Powerlevel10k
Installed Tools:
Directory Structure:
/home/claude/scripts/: Utility scripts and tools (added to PATH)/home/claude/scripts/logs/: Script execution logs (separate from .claude/)/home/claude/claude-defaults/: Source for Claude Code configurations/home/claude/.claude/: Runtime Claude Code configuration (populated by setup script)/home/claude/.claude/projects/: Mount point for host projects directory (group: local-ai-team)/workspace/.notifications/: Mount point for host notification systemThe image enforces:
entrypoint.sh (Runtime).codex directory ownership issuesnon-root-post-create.sh (Post-Creation)~/scripts/logs/After building, run validation tests:
docker run --rm ai-agents-sandbox/devcontainer:latest /usr/local/bin/test-tools.sh docker run --rm ai-agents-sandbox/devcontainer:latest /usr/local/bin/test-permissions.sh
Network tests require proper compose setup:
# From .devcontainer/ directory with compose running docker exec devcontainer /usr/local/bin/test-network.sh
Projects can extend this base:
FROM ai-agents-sandbox/devcontainer:latest # Add project-specific tools USER claude WORKDIR /workspace
Remember: Maintain security constraints when extending.
The base image includes a notification hook for alerting the host:
/home/claude/claude-defaults/hooks/notify.sh
# From within container /home/claude/claude-defaults/hooks/notify.sh "type" "message" # Types: error, clarification, blocked, approval, complete, test
/workspace/.notifications/ (mounted from host)See root CLAUDE.md for complete notification system documentation.