Automated configuration and deployment system for OpenClaw VMs with comprehensive tooling for AI development, cloud deployment, file sharing, and personal productivity.
What's New in v3.0:
- π Veritas Kanban β local-first Kanban board with AI agent orchestration and MCP server
- ποΈ OCI Terraform + cloud-init infrastructure for Debian 12 and Ubuntu 24.04 ARM
- π 14 critical/high security findings fixed (v2.0.1 audit)
- π― Interactive installation with preset selection
- π Personal productivity integrations (Calendar, Email, Tasks, Slack)
- β‘ Smart dependency resolution
Recommended Method (Secure):
# One-line install (clone + run)
git clone https://github.com/nyldn/openclaw-config.git && cd openclaw-config/bootstrap && ./bootstrap.shAlternative One-Line (Download + Run):
curl -fsSL https://raw.githubusercontent.com/nyldn/openclaw-config/main/bootstrap/install.sh -o /tmp/openclaw-install.sh && bash /tmp/openclaw-install.shThe installer will:
- β Verify prerequisites (git, curl, bash)
- β Show an interactive module selection menu
- β Install only the components you choose
- β Complete in ~5-15 minutes depending on selections
- β Automatically run post-install setup and auth wizards
Non-Interactive Mode:
For automated installations (CI/CD, scripts):
# Install all modules without prompts
./bootstrap.sh --non-interactive
# Install specific modules only
./bootstrap.sh --only system-deps,nodejs,python
# Skip the post-install wizard
./bootstrap.sh --skip-setupSee docs/INSTALLATION.md for detailed installation options and customization.
Security Note: We no longer support curl | bash installation methods as they pose security risks. Always clone the repository first to review the code before execution.
- Claude Code CLI - Anthropic's Claude assistant
- OpenAI CLI - GPT-4 and GPT-3.5 access
- Gemini CLI - Run via
npx @google/gemini-cli(see https://github.com/google-gemini/gemini-cli) - Claude Octopus - Multi-AI orchestration system
Claude Code CLI install notes:
- macOS:
brew install --cask claude-code - Linux:
curl -fsSL https://claude.ai/install.sh -o /tmp/claude-install.sh && bash /tmp/claude-install.sh - Node.js 18+ only required for deprecated npm install flows
ripgrepis usually included; ifclaudesearch fails, see Claude search troubleshooting Claude Octopus requires the Claude CLI; if it isn't installed yet, rerun later with:./bootstrap.sh --only claude-cli,claude-octopus
- Vercel CLI - Serverless and edge deployments
- Netlify CLI - Static sites and functions
- Supabase CLI - Backend-as-a-Service
- Google Drive MCP - Drive integration via MCP
- Dropbox MCP - Dropbox API access
- rclone - 50+ cloud storage backends
- GitHub MCP - Repository operations
- Python 3.9+ with virtual environment
- Node.js 20+ with npm
- System utilities - git, curl, jq, etc.
- Memory system - SQLite-based persistence
- Auto-updates - Daily automated updates for all components
- Veritas Kanban - Local-first Kanban board with AI agent orchestration,
vkCLI, and MCP server
Core Servers:
- Google Drive - File operations and sharing
- Dropbox - Cloud storage access
- GitHub - Repository management
- Filesystem - Local file operations
- PostgreSQL - Database access (Supabase)
- Brave Search - Web search capabilities
Productivity Servers:
- Google Calendar - Event management and scheduling
- Email - IMAP/SMTP for reading and sending emails
- Todoist - Task and project management
- Slack - Team messaging and collaboration
Development Servers (NEW in v3.0):
- Veritas Kanban - Task management, board operations, and AI agent orchestration via MCP
- Download Verification - All external downloads use
secure-download.shwith SHA256 hash audit logging - Secret Sanitization - Automatic redaction of API keys, tokens, passwords in logs
- Credential Encryption - AES-256-CBC encryption with 600,000 PBKDF2 iterations
- Pre-commit Hook - Prevents accidental commits of secrets
- Input Validation - Strict validation of module names, URLs, file paths; sed injection prevention
- Secure Temp Files - Uses
mktempinstead of predictable paths across all modules - Restrictive Permissions - 0600/0700 for sensitive directories and files
- .env Validation - Rejects command substitution, backticks, and shell constructs before sourcing
- Atomic Locking -
mkdir-based locks prevent TOCTOU race conditions - Localhost-Only Ports - Dev ports (3000, 5432, 8000) restricted to loopback in UFW
- Safe Auto-Updates - Security-only upgrades via
unattended-upgrade;--ff-onlygit pulls
- Deployment shortcuts (deploy-vercel, deploy-netlify, etc.)
- File sharing (share-dropbox, share-gdrive)
- Cloud sync (sync-dropbox, sync-gdrive, sync-s3)
- MCP management (mcp-list, mcp-reload, mcp-logs)
- Productivity helpers (productivity-setup, calendar-auth)
openclaw-config/
βββ README.md # This file
βββ docs/INSTALLATION.md # Detailed installation guide
βββ docs/guides/MIGRATION.md # Migration guide for v1.x β v2.0
βββ docs/guides/SECURITY.md # Security policy and practices
βββ bootstrap/ # Bootstrap system
β βββ bootstrap.sh # Main installer (with interactive mode)
β βββ install.sh # Secure installation script
β βββ manifest.yaml # Module metadata (v2.0)
β βββ checksums.yaml # Download verification checksums
β βββ modules/ # Installation modules (19 total)
β β βββ 01-system-deps.sh
β β βββ 02-python.sh
β β βββ 03-nodejs.sh
β β βββ 04-claude-cli.sh
β β βββ ...
β β βββ 18-ollama.sh
β β βββ 19-veritas-kanban.sh # NEW in v3.0
β βββ lib/ # Shared utilities
β βββ logger.sh # With secret sanitization
β βββ validation.sh # Enhanced input validation
β βββ network.sh
β βββ interactive.sh # NEW: Interactive menus
β βββ dependency-resolver.sh # NEW: Dependency resolution
β βββ secure-download.sh # NEW: Download verification
β βββ crypto.sh # NEW: Credential encryption
βββ deployment-tools/ # Deployment configuration
β βββ mcp/
β β βββ mcp-servers-extended.json
β β βββ mcp-servers-full-stack.json
β β βββ implementations/ # NEW: Custom MCP servers
β β βββ google-calendar-mcp.js
β β βββ email-mcp.js
β β βββ todoist-mcp.js
β β βββ slack-mcp.js
β βββ config/
β β βββ productivity-credentials.template.env
β βββ docs/
β βββ PRODUCTIVITY_INTEGRATIONS.md # NEW: 40-page guide
β βββ QUICK-START.md
β βββ openclaw-setup-plan.md
β βββ EMBRACE-WORKFLOW-RESULTS.md
βββ reports/ # Project documentation
βββ FEASIBILITY_REPORT.md
- Individual modules for each component
- Incremental updates (only install what's changed)
- Dependency management between modules
- Rollback support for failed installations
- Daily auto-updates for all components
- System packages, Python packages, Node.js packages
- CLI tools (Vercel, Netlify, Supabase)
- MCP servers and repository updates
- Automatic cleanup of unused packages
- Daily update reports and logs
- Post-installation health checks
- Module-specific validation
- System diagnostics (--doctor flag)
- Automated testing
- State tracking and version management
- Remote manifest for updates
- Non-interactive installation mode
- Logging and error reporting
- No credentials in repository
- Docker secrets support
- Token-based authentication
- Minimal privilege requirements
# Full installation (all modules)
./bootstrap.sh
# Verbose output
./bootstrap.sh --verbose
# Install specific modules
./bootstrap.sh --only deployment-tools
# Skip optional modules
./bootstrap.sh --skip gemini-cli
# Preview changes (dry run)
./bootstrap.sh --dry-run
# Non-interactive mode
./bootstrap.sh --non-interactiveThe installer launches a post-install wizard by default. If you skip it, run:
bash ~/openclaw-config/bootstrap/scripts/openclaw-setup.sh
bash ~/openclaw-config/bootstrap/scripts/openclaw-auth.sh --all-
Configure API Keys
nano ~/openclaw-workspace/.envAdd your keys:
ANTHROPIC_API_KEY=sk-ant-xxx OPENAI_API_KEY=sk-proj-xxx GOOGLE_API_KEY=xxx GITHUB_PAT=ghp_xxx SUPABASE_DB_URL=postgresql://xxx
-
Authenticate Services
claude login vercel login netlify login supabase login
-
Reload Shell
source ~/.zshrc
-
Test Installation
./bootstrap.sh --validate
-
Auto-Updates (Configured Automatically)
Daily updates are configured to run at 3:00 AM:
# Check update timer status systemctl --user status openclaw-auto-update.timer # View last update journalctl --user -u openclaw-auto-update.service # View today's update report cat /var/log/openclaw/update-report-$(date +%Y%m%d).txt # Run update manually now systemctl --user start openclaw-auto-update.service
See AUTO_UPDATE_GUIDE.md for full documentation.
- Bootstrap System: bootstrap/README.md
- Auto-Update Guide: bootstrap/AUTO_UPDATE_GUIDE.md
- Quick Start Guide: deployment-tools/docs/QUICK-START.md
- Setup Plan: deployment-tools/docs/openclaw-setup-plan.md
- Workflow Results: deployment-tools/docs/EMBRACE-WORKFLOW-RESULTS.md
ssh user@vm-host 'curl -fsSL https://raw.githubusercontent.com/nyldn/openclaw-config/main/bootstrap/install.sh | bash'for host in vm1 vm2 vm3; do
ssh user@$host 'curl -fsSL https://raw.githubusercontent.com/nyldn/openclaw-config/main/bootstrap/install.sh | bash'
done./bootstrap.sh --config config/custom.yaml
./bootstrap.sh --manifest-url https://internal.company.com/manifest.yamlAfter installation, you'll have access to 42+ shell aliases:
deploy-vercel # Deploy to Vercel
deploy-netlify # Deploy to Netlify
deploy-supabase # Deploy to Supabase
deploy # Auto-detect platformshare # Create shareable link
share-dropbox # Upload to Dropbox
share-gdrive # Upload to Google Drivesync-dropbox # Sync to Dropbox
sync-gdrive # Sync to Google Drive
sync-s3 # Sync to S3mcp-list # List MCP servers
mcp-reload # Reload configuration
mcp-logs # View MCP logs
mcp-test # Test connectionsproject-init # Initialize new project
project-deploy # Deploy current project
project-share # Share project files- OS: Debian 10+ or Ubuntu 20.04+
- User: Non-root with sudo privileges
- Disk: 2GB+ free space
- Network: Internet connection
- Memory: 1GB+ RAM recommended
- Fork the repository
- Create a feature branch
- Add/modify modules in
bootstrap/modules/ - Test with
./bootstrap.sh --module your-module - Submit a pull request
- Setup Time: ~5 minutes
- Components: 19 modules
- MCP Servers: 11+ configured
- Shell Aliases: 42 available
- Validation: 100% coverage
Enhanced in v2.0.1 (14 findings fixed β 5 CRITICAL, 9 HIGH):
- β
No
curl | bashinstallation (security vulnerability eliminated) - β
SHA256 checksum verification for all downloads via centralized
secure-download.sh - β Automatic secret sanitization in logs (15+ patterns)
- β AES-256-CBC credential encryption with 600,000 PBKDF2 iterations
- β Pre-commit hook prevents accidental secret commits
- β Sed injection prevention β safe line-by-line file rewrites instead of interpolation
- β
.envvalidation rejects command substitution, backticks, and shell constructs before sourcing - β API keys passed via environment variables, never exposed in process lists
- β
Atomic
mkdir-based locking prevents TOCTOU race conditions - β Dev ports (3000, 5432, 8000) restricted to localhost in UFW
- β
Safe auto-updates β security-only via
unattended-upgrade;--ff-onlygit pulls - β Module sourcing validation β shebang and permission checks before execution
- β
Secure temporary file handling with
mktemp(no predictable paths) - β Restrictive file permissions (0600/0700 for sensitive files)
Best Practices:
- API tokens via environment variables
- App-specific passwords for email
- 90-day token rotation recommended
- Minimum privilege scopes enforced
- See docs/guides/SECURITY.md for full security policy
This project is licensed under the MIT License - see the LICENSE file for details.
- Issues: https://github.com/nyldn/openclaw-config/issues
- Documentation: https://github.com/nyldn/openclaw-config/wiki
- Bootstrap Docs: bootstrap/README.md
π Veritas Kanban Integration:
- New bootstrap module
19-veritas-kanban.shβ installs Veritas Kanban local-first Kanban board with AI agent orchestration - Automated setup: git clone,
pnpm build,vkCLI linking,.envgeneration with random admin key, and Claude MCP config merging - MCP server entries added to
mcp-servers-extended.jsonandmcp-servers-full-stack.json - Module includes full lifecycle:
check,install,validate,rollback
ποΈ Infrastructure:
- OCI Terraform + cloud-init infrastructure for Debian 12 ARM deployment
- Ubuntu 24.04 Minimal ARM support from OCI catalog
- Aligned bootstrap with upstream
openclaw/openclawrequirements
π§ Improvements:
- 18 codebase improvements across security, UX, infrastructure, and tooling
- Interactive install wizard and CLI setup hardening
- Post-install onboarding system
- Manifest updated to v3.0.0 with
veritas-kanbanentry
π Zero-Trust Security Audit β 14 Findings Fixed (5 CRITICAL, 9 HIGH):
CRITICAL Fixes:
- Sed injection prevention β Replaced unsafe
sedinterpolation with line-by-line file rewrites inopenclaw-setup.shandopenclaw-auth.sh - API key process list exposure β API keys now passed via environment variables, not CLI arguments (
openclaw-auth.sh) - Download verification β All external downloads routed through
secure-download.shwith SHA256 audit logging (5 modules: nodejs, claude-cli, dev-tools, tailscale, ollama) .envsourcing validation β.envfiles validated for format and rejected if containing$(), backticks,;,&&,||beforesource
HIGH Fixes:
- Hardcoded
/tmppaths β Replaced withmktempto prevent symlink attacks (network.sh,claude-octopus.sh,openclaw-validate.sh) - TOCTOU lock race β File-based locking replaced with atomic
mkdir-based locking (auto-update.sh) - UFW port exposure β Dev ports (3000, 5432, 8000) restricted to
127.0.0.1/::1(14-security.sh) - Supabase download β Routed through
download_with_verification()(10-deployment-tools.sh) - Placeholder API keys β Replaced fake-looking placeholders with empty values (
08-memory-init.sh) - Module sourcing β Metadata extracted via
grepinstead ofsource; shebang and world-writable checks added (bootstrap.sh) - PBKDF2 iterations β Increased from 10,000 to 600,000 per OWASP 2023 guidance (
crypto.sh) - Auto-update safety β Security-only upgrades via
unattended-upgrade;git pull --ff-onlyprevents merge commits (auto-update.sh)
π― Major Features:
- Interactive Installation - Beautiful TUI with preset selection (Minimal, Developer, Full, Custom)
- Productivity Integrations - 4 new MCP servers: Google Calendar, Email, Todoist, Slack (30 tools total)
- Smart Dependencies - Automatic dependency resolution with topological sort
- OpenClaw Optional - No longer required; choose only what you need
π Security Enhancements (20+ Fixes):
- Fixed all
curl | bashvulnerabilities - SHA256 checksum verification for downloads
- Secret sanitization in logs (API keys, tokens, passwords)
- AES-256-CBC credential encryption
- Pre-commit hook for secret detection
- Comprehensive input validation
- Secure temp directory handling
π¦ New Components:
15-productivity-tools.shmodulelib/interactive.sh- Interactive menu systemlib/dependency-resolver.sh- Graph-based dependency resolutionlib/secure-download.sh- Download verificationlib/crypto.sh- Credential encryption- 4 MCP server implementations
- Comprehensive 40-page productivity guide
π Documentation:
- Updated installation instructions (no more
curl | bash) - PRODUCTIVITY_INTEGRATIONS.md - Complete setup guide
- Enhanced manifest.yaml with categories and sizes
- docs/guides/MIGRATION.md for v1.x users
- docs/guides/SECURITY.md policy document
- Default installation is now interactive (use
--non-interactivefor scripts) - OpenClaw no longer installed by default
- Removed insecure
curl | bashinstallation method - See docs/guides/MIGRATION.md for upgrade instructions
- Added auto-update system (module 11)
- Daily automated updates for all components
- Systemd timer for scheduled updates
- Update reports and comprehensive logging
- Repository auto-update from GitHub
- Package cleanup and maintenance
- Added deployment tools module
- Extended MCP server configuration (6 servers)
- 28+ new shell aliases
- Comprehensive deployment documentation
- GitHub, Filesystem, PostgreSQL, Brave Search MCP servers
- Initial release
- Core modules: system-deps, python, nodejs
- LLM CLI tools: Claude, OpenAI, Gemini
- GOTCHA framework structure
- Memory system initialization
- Update mechanism
- Validation and diagnostics
Built with β€οΈ for the OpenClaw ecosystem
Powered by Claude Octopus π - Full Double Diamond Workflow