Configuration
Vibe Action uses a single YAML config file at ~/.vibe-action/config.yaml. It is created automatically on first run.
Action
Runtime settings for all flows.
action:
system: |
You are Vibe Action — a CLI tool, not a chatbot.
Work fast. Don't think too much. Just do the task.
Output ONLY the requested result.
retries: 2
| Field | Type | Description |
|---|---|---|
system | string | Global system prompt for all LLM requests |
retries | integer | Number of retries for failed LLM steps (0 = off) |
Cluster
Define one or more LLM providers. The engine sends prompts to all nodes in parallel.
Use role to assign models to specific complexity levels.
cluster:
- provider: ollama
host: http://localhost:11434
model: qwen2.5-coder:14b-instruct
role: medium
timeout_secs: 60
temperature: 0.1
seed: 42
num_ctx: 4096
num_predict: 2048
parallel: 1
Cluster Node Fields
| Field | Type | Description |
|---|---|---|
provider | string | ollama, deepseek, qwen, kimi, zhipu |
host | string | API endpoint URL |
model | string | Model name |
role | string | tiny, small, medium, large, vision |
timeout_secs | integer | Request timeout in seconds |
temperature | float | 0.0-2.0, lower = more deterministic |
seed | integer | Random seed for reproducibility |
num_ctx | integer | Context window size in tokens |
num_predict | integer | Max tokens to generate |
api_key | string | API key for cloud providers (optional) |
parallel | integer | Concurrent connections (default: 1) |
Multi-Node Cluster with Roles
cluster:
- provider: ollama
host: http://localhost:11434
model: qwen2.5-coder:3b-instruct
role: tiny
timeout_secs: 30
temperature: 0.0
seed: 42
num_ctx: 4096
num_predict: 512
parallel: 2
- provider: zhipu
host: https://open.bigmodel.cn/api/paas/v4
model: glm-4-flash
role: small
timeout_secs: 60
temperature: 0.1
seed: 42
num_ctx: 8192
num_predict: 2048
api_key: sk-...
parallel: 2
- provider: ollama
host: http://192.168.1.10:11434
model: qwen2.5-coder:14b-instruct
role: medium
timeout_secs: 60
temperature: 0.1
seed: 42
num_ctx: 8192
num_predict: 2048
parallel: 1
- provider: deepseek
host: https://api.deepseek.com/v1
model: deepseek-v4-flash
role: large
timeout_secs: 120
temperature: 0.1
seed: 42
num_ctx: 16384
num_predict: 8192
api_key: sk-...
parallel: 2
- provider: kimi
host: https://api.moonshot.cn/v1
model: moonshot-v1-8k
role: large
timeout_secs: 120
temperature: 0.1
seed: 42
num_ctx: 8192
num_predict: 2048
api_key: sk-...
parallel: 1
- provider: ollama
host: http://localhost:11434
model: qwen2.5vl:7b
role: vision
timeout_secs: 120
temperature: 0.1
seed: 42
num_ctx: 4096
num_predict: 2048
parallel: 1
Nodes with role: tiny are used for run: tiny, role: small for run: small, role: medium for run: medium, role: large for run: large, role: vision for run: vision.
Nodes without a role respond to all requests.
Actions Directory
Actions are stored in ~/.vibe-action/actions/. The directory is created on first run with default actions. Override with VIBE_ACTION_PATH.
~/.vibe-action/
├── config.yaml
└── actions/
├── comment.yaml
├── commit.yaml
├── describe.yaml
├── explain.yaml
├── ...
Add your own .yaml files here — they will be loaded automatically.