From admin-devops
Bootstrap admin-devops plugin on a fresh machine - install plugin, create profile, configure secrets
npx claudepluginhub joshuarweaver/cascade-code-devops-misc-1 --plugin evolv3-ai-vibe-skills[--headless] [--admin-root PATH] [--pkg-mgr MGR] [--remote user@host]# /bootstrap Command One-command setup for the admin-devops plugin on a fresh machine (local or remote Linux). Handles: plugin installation, profile creation, and secrets backend configuration. ## Modes ### Interactive (default) Runs TUI interview to gather preferences, then creates profile. ### Headless (for remote/automated installs) Skips all prompts, uses sensible defaults or explicit flags. ### Remote (SSH to target, bootstrap there) Bootstraps a remote machine by SSHing in and running setup. ## Workflow ### Step 1: Detect Environment Determine if running locally or t...
/bootstrapBuilds an HTTPS GET bootstrap endpoint returning per-user JSON config for MCP servers, skills, and dynamic settings via Entra token validation.
/bootstrapBootstraps Vercel-linked repo: preflight checks, provisions Neon Postgres via Vercel, verifies/pulls env vars, runs db migrations and dev startup.
/bootstrapScaffolds minimum repo structure for session-orchestrator. Auto-detects tier (fast/standard/deep), recommends and confirms, then creates files and commits. Supports --upgrade, --retroactive, --sync-rules flags.
/bootstrapGenerates API_REFERENCE.md, a hand-written style quick reference for IDA Domain Python API, by analyzing source code with sub-agents.
/bootstrapBootstraps a complete project with security foundation, scaffold (Static/SPA/Workers/Fullstack/Astro), design system, i18n, SEO, tests, and deploy pipeline after gathering requirements.
/bootstrapScaffolds missing test, lint, and CI infrastructure for JavaScript/TypeScript, Python, Go, Rust projects using standard tools. Detects stack, proposes plan, implements after approval. Scopes: test|lint|ci|all.
One-command setup for the admin-devops plugin on a fresh machine (local or remote Linux).
Handles: plugin installation, profile creation, and secrets backend configuration.
Runs TUI interview to gather preferences, then creates profile.
/bootstrap
Skips all prompts, uses sensible defaults or explicit flags.
/bootstrap --headless
/bootstrap --headless --admin-root /home/deploy/.admin --pkg-mgr apt
Bootstraps a remote machine by SSHing in and running setup.
/bootstrap --remote user@192.168.1.50
/bootstrap --remote root@kasm-htz-02 --headless
Determine if running locally or targeting a remote host.
If --remote specified:
ssh -o ConnectTimeout=5 USER@HOST 'echo ok'ssh USER@HOST 'uname -s && cat /etc/os-release 2>/dev/null'ssh USER@HOST 'command -v claude'If local:
command -v claudeIf Claude Code CLI is not found, offer to install it:
Interactive: Ask "Claude Code is not installed. Install it now?"
Headless: Install automatically.
# npm global install (most portable)
npm install -g @anthropic-ai/claude-code
If npm is not available, try:
# Direct install
curl -fsSL https://claude.ai/install.sh | sh
Check if The Library skill is installed at ~/.claude/skills/library/.
if [[ ! -f ~/.claude/skills/library/SKILL.md ]]; then
git clone git@github.com:evolv3ai/the-library.git ~/.claude/skills/library/ 2>/dev/null || \
git clone https://github.com/evolv3ai/the-library.git ~/.claude/skills/library/
fi
Check if the admin-devops plugin is registered with Claude Code.
# Check installed plugins
grep -q "admin-devops" ~/.claude/plugins/installed_plugins.json 2>/dev/null
If not installed — clone and register:
git clone git@github.com:evolv3ai/vibe-skills.git ~/dev/vibe-skills 2>/dev/null || \
git clone https://github.com/evolv3ai/vibe-skills.git ~/dev/vibe-skills
claude plugin add ~/dev/vibe-skills/plugins/admin-devops
Interactive mode: Proceed like /setup-profile (TUI interview).
Headless mode:
"${CLAUDE_PLUGIN_ROOT}/skills/admin/scripts/new-admin-profile.sh" \
--admin-root "${ADMIN_ROOT:-$HOME/.admin}" \
--pkg-mgr "${PKG_MGR:-apt}" \
--py-mgr "${PY_MGR:-uv}" \
--node-mgr "${NODE_MGR:-npm}" \
--shell-default "${SHELL_DEFAULT:-bash}" \
--run-inventory \
--force
The profile must exist before reconcile (Step 6) because reconcile reads consumer.type from the profile.
Determine what this device needs based on its consumer type and trust boundary:
"${CLAUDE_PLUGIN_ROOT}/skills/admin/scripts/reconcile-library.sh" --json
Returns a JSON array of {name, type, action, installPolicy}. For each entry with action: "should_install", run /library use <name>. The post-use hook writes bindings into the profile.
Interactive: Ask which secrets backend to use.
Headless: Use vault as default unless --secrets-backend flag is provided.
"${CLAUDE_PLUGIN_ROOT}/skills/admin/scripts/render-runtime.sh" --skip-unresolvable
"${CLAUDE_PLUGIN_ROOT}/skills/admin/scripts/render-mcp-config.sh" --skip-unresolvable
"${CLAUDE_PLUGIN_ROOT}/skills/admin/scripts/generate-agents-md.sh"
The --skip-unresolvable flag allows bootstrap to complete even before Infisical is configured. Unresolved secrets are marked as pending.
Run the profile gate to confirm everything works:
"${CLAUDE_PLUGIN_ROOT}/skills/admin/scripts/test-admin-profile.sh"
Expected output: {"exists":true,"device":"...","adminRoot":"...","platform":"..."}
Success:
Bootstrap Complete
══════════════════════════
Plugin: admin-devops (installed at ~/dev/vibe-skills/plugins/admin-devops)
Profile: ~/.admin/profiles/HOSTNAME.json
Platform: linux (Ubuntu 24.04)
Secrets: vault (age-encrypted)
Tools found: git, node, python, docker, ssh
Next steps:
- Test: /install jq
- View profile: /setup-profile
- Provision a server: /provision
Failure:
Bootstrap Failed
══════════════════════════
Step failed: Install Claude Code
Error: npm not found and curl install failed
Fix: Install Node.js first: sudo apt install -y nodejs npm
Then retry: /bootstrap
For remote machines (KASM runtimes, customer PCs), the full remote workflow:
/bootstrap --remote root@kasm-htz-02 --headless --pkg-mgr apt
This:
For machines that need Infisical machine identity access:
/bootstrap --remote deploy@customer-pc --headless --secrets-backend infisical --machine-identity customer-larrysinteriors-pc
| Flag | Default | Description |
|---|---|---|
--headless | false | Skip all TUI prompts, use defaults |
--remote USER@HOST | (local) | SSH to target machine |
--admin-root PATH | $HOME/.admin | Admin root directory |
--pkg-mgr MGR | auto-detect | Package manager: apt, brew, dnf |
--py-mgr MGR | uv | Python manager: uv, pip, conda |
--node-mgr MGR | npm | Node manager: npm, pnpm, yarn |
--shell-default SH | auto-detect | Default shell |
--secrets-backend | vault | Secrets backend: vault, infisical, env |
--machine-identity ID | (none) | Infisical machine identity name |
--skip-claude-install | false | Don't install Claude Code CLI |
--skip-profile | false | Don't create profile (plugin only) |
--force | false | Overwrite existing profile |
--force (headless) or ask (interactive)sudo or correct directory permissions