| name | agentic-coding-flywheel-setup |
| description | Bootstrap a fresh Ubuntu VPS into a complete multi-agent AI development environment with safety tools and coordination infrastructure in 30 minutes |
| triggers | ["set up an agentic coding environment on my VPS","install the ACFS stack on Ubuntu","bootstrap my server for AI coding agents","configure a VPS with Claude Code and agentic tools","run the agentic coding flywheel setup","install the Dicklesworthstone agent stack","set up NTM and MCP Agent Mail","configure vibe mode for AI development"] |
Agentic Coding Flywheel Setup (ACFS)
Skill by ara.so — AI Agent Skills collection
Overview
Agentic Coding Flywheel Setup (ACFS) is a bootstrapping system that transforms a fresh Ubuntu VPS into a professional AI-powered development environment in ~30 minutes. It installs 30+ tools, configures three AI coding agents (Claude Code, Codex CLI, Gemini CLI), and sets up a complete agent coordination stack.
Key Features:
- One-liner install:
curl | bash to full environment
- Idempotent: Resume from interruptions automatically
- Vibe mode: Pre-configured for maximum development velocity
- Manifest-driven: Single source of truth for all tools and configs
- Battle-tested stack: 10 Dicklesworthstone tools + 20+ developer utilities
What Gets Installed:
- Modern shell: zsh + oh-my-zsh + powerlevel10k
- Language runtimes: bun, uv/Python, Rust, Go
- AI agents: Claude Code, Codex CLI, Gemini CLI
- Agent coordination: NTM, MCP Agent Mail, SLB
- Developer tools: tmux, neovim, ripgrep, fzf, git, gh
- Cloud CLIs: Vault, Wrangler, Supabase, Vercel
- Security: checksummed upstream installers, verified downloads
Installation
Quick Install (Latest)
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh?$(date +%s)" | bash
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh?$(date +%s)" | bash -s -- --yes --mode vibe
Production Install (Pinned Version)
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/v0.7.0/install.sh" | bash -s -- --yes --mode vibe --ref v0.7.0
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/abc1234/install.sh" | bash -s -- --yes --mode vibe --ref abc1234
Installation Flags
--yes
--mode vibe
--ref <tag|sha>
--skip-check
--debug
Requirements
- OS: Ubuntu 25.10 (installer auto-upgrades from 24.04/24.10)
- User: Non-root user with sudo access
- Network: Internet connection for package downloads
- Disk: ~10GB free space
- Memory: 2GB+ RAM recommended
Post-Install Commands
After installation, ACFS provides several management commands:
Health Check
acfs doctor
acfs doctor --category shells
acfs doctor --category language_runtimes
acfs doctor --category agent_clis
Update ACFS
acfs update
acfs update --ref v0.7.0
Service Setup
acfs services-setup
Onboarding
onboard
Key Tools & Usage
AI Coding Agents
Claude Code (Anthropic)
export ANTHROPIC_API_KEY="sk-ant-..."
claude
claude "refactor this function to use async/await" < input.js
claude --edit main.py "add error handling"
Codex CLI (OpenAI)
export OPENAI_API_KEY="sk-..."
codex
codex "write a REST API with Express"
codex --review src/
Gemini CLI (Google)
export GEMINI_API_KEY="..."
gemini
gemini "analyze this screenshot" --image screenshot.png
Agent Coordination Stack
NTM (Note-Taking Manager)
ntm init
ntm new "project-ideas"
ntm search "api design"
ntm list
ntm edit "project-ideas"
MCP Agent Mail (inter-agent communication)
mcp_agent_mail serve --port 3000
mcp_agent_mail send --to claude@agents.local --subject "Review PR" --body "..."
mcp_agent_mail inbox
SLB (Session Ledger Bot)
slb init
slb start "implementing auth feature"
slb log "completed OAuth flow"
slb end
slb history
BV (Beads Viewer) - Session visualization
bv show
bv export --format svg --output session.svg
bv analyze
UBS (Universal Backup System)
ubs init --dest s3://my-backups
ubs backup ~/projects
ubs list
ubs restore --backup 2025-01-15 --dest ~/restored
Developer Tools
Tmux (terminal multiplexer)
tmux new -s work
tmux ls
tmux attach -t work
Neovim (text editor)
nvim file.py
Ripgrep (fast search)
rg "function.*async"
rg -C 3 "TODO"
rg --type py "class.*Model"
rg -i "error"
FZF (fuzzy finder)
selected_file=$(fzf)
echo "Selected: $selected_file"
ps aux | fzf
Configuration
ACFS Config Files
All ACFS configuration lives in ~/.acfs/:
~/.acfs/
├── zshrc
├── tmux.conf
├── state.json
├── onboard/
└── scripts/
Environment Variables
Key environment variables to configure:
export ANTHROPIC_API_KEY="sk-ant-..."
export OPENAI_API_KEY="sk-..."
export GEMINI_API_KEY="..."
export CLOUDFLARE_API_TOKEN="..."
export SUPABASE_ACCESS_TOKEN="..."
export VERCEL_TOKEN="..."
export VAULT_ADDR="https://vault.example.com"
export VAULT_TOKEN="..."
export ACFS_MODE="vibe"
export ACFS_AUTO_UPDATE="true"
export ACFS_TELEMETRY="false"
Add to ~/.zshrc:
echo 'export ANTHROPIC_API_KEY="sk-ant-..."' >> ~/.zshrc
source ~/.zshrc
Vibe Mode
Vibe mode enables maximum development velocity:
curl -fsSL "..." | bash -s -- --mode vibe
Security Note: Vibe mode is designed for personal development VPS instances, not production servers or shared environments.
Common Patterns
Pattern 1: Initial VPS Setup
ssh user@vps-ip
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh?$(date +%s)" | bash -s -- --yes --mode vibe
echo 'export ANTHROPIC_API_KEY="sk-ant-..."' >> ~/.zshrc
echo 'export OPENAI_API_KEY="sk-..."' >> ~/.zshrc
source ~/.zshrc
acfs doctor
claude "create a new Express API project"
Pattern 2: Agent Session Workflow
slb start "building user authentication"
claude "create user model with email and password fields"
slb log "created user model"
codex --review models/user.py
bv show
slb end
Pattern 3: Multi-Agent Collaboration
claude "implement JWT authentication" > auth.py
codex --review auth.py > review.md
gemini "optimize this authentication flow" < auth.py > auth_optimized.py
mcp_agent_mail send --to review-agent --body "$(cat review.md)"
Pattern 4: Backup Before Experimentation
ubs backup ~/projects/myapp
claude --edit src/ "refactor entire codebase to use TypeScript" --allow-dangerous
ubs restore --backup latest --dest ~/projects/myapp
Pattern 5: Reproducible Team Environments
cat > setup-team-env.sh << 'EOF'
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/v0.7.0/install.sh" \
| bash -s -- --yes --mode vibe --ref v0.7.0
git config --global user.name "$GIT_NAME"
git config --global user.email "$GIT_EMAIL"
gh repo clone myorg/backend ~/projects/backend
gh repo clone myorg/frontend ~/projects/frontend
EOF
export GIT_NAME="Alice" GIT_EMAIL="alice@company.com"
bash setup-team-env.sh
Architecture
Manifest-Driven Design
ACFS uses a single source of truth: acfs.manifest.yaml
modules:
- id: bun
category: language_runtimes
install:
bash: |
curl -fsSL https://bun.sh/install | bash
verify:
bash: |
command -v bun >/dev/null 2>&1
- id: claude_code
category: agent_clis
install:
bash: |
npm install -g @anthropic-ai/claude-code
verify:
bash: |
command -v claude >/dev/null 2>&1
Generated Scripts (Reference)
The manifest generates reference scripts in scripts/generated/:
scripts/generated/
├── install_shells.sh
├── install_language_runtimes.sh
├── install_agent_clis.sh
├── install_agent_coordination.sh
├── install_developer_tools.sh
├── install_cloud_clis.sh
├── doctor_checks.sh
└── install_all.sh
Security
ACFS implements multiple security layers:
- Checksummed installers:
checksums.yaml verifies upstream scripts
- HTTPS-only downloads: All sources fetched over TLS
- Isolated environments: Each tool runs in its own context
- API key isolation: Keys stored in environment, not config files
- Audit logging: All installations logged to
~/.acfs/state.json
Troubleshooting
Installation Fails Midway
curl -fsSL "https://raw.githubusercontent.com/Dicklesworthstone/agentic_coding_flywheel_setup/main/install.sh?$(date +%s)" | bash -s -- --yes --mode vibe
cat ~/.acfs/state.json | jq '.completed_phases'
acfs doctor
Doctor Check Failures
acfs doctor --verbose
echo 'export PATH="$HOME/.bun/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
acfs update
sudo chown -R $USER:$USER ~/.acfs
Agent CLI Not Found
acfs doctor --category agent_clis
npm install -g @anthropic-ai/claude-code
echo $ANTHROPIC_API_KEY
Slow Performance
htop
rm ~/.zcompdump
zsh -c 'autoload -U compinit && compinit'
SSH Connection Issues After Install
ssh user@vps-ip
cat ~/.ssh/authorized_keys
echo "ssh-ed25519 AAAA..." >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
ssh -i ~/.ssh/id_ed25519 user@vps-ip
Services Won't Start
acfs services-setup --status
journalctl -u ntm -f
journalctl -u mcp_agent_mail -f
sudo systemctl restart ntm
sudo systemctl restart mcp_agent_mail
Advanced Usage
Custom Tool Installation
Add custom tools to your environment post-install:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
cargo install ripgrep
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
acfs doctor
Extending the Manifest
To add tools to ACFS itself, edit acfs.manifest.yaml:
modules:
- id: my_custom_tool
category: developer_tools
description: "My custom development tool"
install:
bash: |
curl -fsSL https://example.com/install.sh | bash
verify:
bash: |
command -v my_tool >/dev/null 2>&1
Then regenerate scripts:
cd packages/manifest
npm run generate
Integration Testing
ACFS includes Docker-based integration tests:
bash tests/vm/test_install_ubuntu.sh
ACFS_REF=v0.7.0 bash tests/vm/test_install_ubuntu.sh
ACFS_MODE=vibe bash tests/vm/test_install_ubuntu.sh
Monitoring Agent Activity
slb history --all
slb export --format json > sessions.json
bv analyze --input sessions.json --output report.html
tail -f ~/.acfs/logs/agent-activity.log
Version Compatibility
- v0.7.0: Current stable (Ubuntu 25.10, all features)
- v0.6.x: Legacy (Ubuntu 24.10, limited stack tools)
- v0.5.x: Deprecated (Ubuntu 24.04, no vibe mode)
Always use the latest tagged release for production environments.
Additional Resources