Playbook
VIBE module Ansible playbook guide.
VIBE provides the vibe.yml playbook to deploy Code-Server, JupyterLab, Node.js, Claude Code, and Codex CLI.
vibe.ymlincludes onlynode_idandviberoles, it does not includenode/infra. Rundeploy.ymlfirst, or explicitly runnode.ymlandinfra.yml.
vibe.yml
- name: VIBE
hosts: all
become: true
gather_facts: no
roles:
- { role: node_id, tags: id }
- { role: vibe, tags: vibe }
Task Structure
vibe
├── vibe_dir # create workspace and context files
├── code # Code-Server
│ ├── code_install
│ ├── code_dir
│ ├── code_config
│ └── code_launch
├── jupyter # JupyterLab
│ ├── jupyter_install
│ ├── jupyter_dir
│ ├── jupyter_config
│ └── jupyter_launch
├── nodejs # Node.js runtime and additional npm packages
│ ├── nodejs_install
│ ├── nodejs_config
│ └── nodejs_pkg
├── codex # Codex CLI
│ └── codex_install
└── claude # Claude Code
├── claude_install
└── claude_config
Notes:
jupyter_installusesuv pip, it does not create venvnodejs_pkginstalls only the additional packages declared innpm_packages; the list is empty by defaultclaude_installinstalls Claude CLI withclaude_package, whileclaude_configwrites the~/.claudeconfigurationcodex_installinstalls@openai/codexand does not manage Codex configuration
Common Commands
Full deploy:
./vibe.yml -l <host>
Component-level:
./vibe.yml -l <host> -t code
./vibe.yml -l <host> -t jupyter
./vibe.yml -l <host> -t nodejs
./vibe.yml -l <host> -t claude
./vibe.yml -l <host> -t codex
Config updates:
./vibe.yml -l <host> -t code_config,code_launch
./vibe.yml -l <host> -t jupyter_config,jupyter_launch
./vibe.yml -l <host> -t claude_config
Disable components:
./vibe.yml -l <host> -e code_enabled=false
./vibe.yml -l <host> -e jupyter_enabled=false
./vibe.yml -l <host> -e nodejs_enabled=false
./vibe.yml -l <host> -e claude_enabled=false
./vibe.yml -l <host> -e codex_enabled=false
Deployment Order
./deploy.yml # NODE + INFRA + PGSQL
./juice.yml # optional shared storage
./vibe.yml # VIBE
Idempotency
vibe.yml is idempotent. Re-run after config changes.
Feedback
Was this page helpful?
Thanks for the feedback! Please let us know how we can improve.
Sorry to hear that. Please let us know how we can improve.