| Type | Tools | Use For |
|---|---|---|
| ------ | ------- | --------- |
| Worker | Default (no web) | File ops, script execution, git, code changes |
| Researcher | ollama_web_search, ollama_web_fetch | Web research, API lookups, live data |
| Council | Default (no web) | Analysis, review, decision-making with passed context |
Default subagents (Worker/Council) cannot:
ollama_web_fetch or ollama_web_searchpython3 -c "..." inline commandsThey can:
.py files (python3 /path/to/script.py)exec, read, write, edit toolssessions_spawn(
toolsAllow: ["ollama_web_fetch", "ollama_web_search"],
runtime: "subagent",
mode: "run",
lightContext: true,
runTimeoutSeconds: 600,
task: "Research X. Return: findings, sources, key metrics."
)
sessions_spawn(
runtime: "subagent",
mode: "run",
lightContext: true,
runTimeoutSeconds: 300,
task: "Run python3 /path/to/script.py. Report output."
)
# Spawn 3 parallel subagents with different models and perspectives
# See skills/council-of-llms/SKILL.md for full details
sessions_spawn(model: "ollama/kimi-k2.6:cloud", label: "Council-Strategos", ...)
sessions_spawn(model: "ollama/deepseek-v4-pro:cloud", label: "Council-Analyticos", ...)
sessions_spawn(model: "ollama/gemma4:31b-cloud", label: "Council-Creativos", ...)
# Then synthesize all 3 outputs into a unified verdict
# WARNING: Single-model councils cause context overflow and produce shallow analysis
# Use multi-model pattern above instead
sessions_spawn(
runtime: "subagent",
mode: "run",
lightContext: true,
runTimeoutSeconds: 900,
task: "Review this data and decide: [data pasted inline]. Return: verdict, conditions, risks."
)
| Task Type | Min Timeout | Recommended |
|---|---|---|
| ----------- | ------------ | ------------- |
| Simple file ops | 120s | 180s |
| Research (web) | 300s | 600s |
| Council/review | 300s | 600s |
| Complex multi-step | 600s | 900s |
Never rush agents. Quality > speed. If an agent takes >60s, give the user a brief status update.
.py files first — don't pass inline Python to subagents.| Symptom | Cause | Fix |
|---|---|---|
| --------- | ------- | ----- |
| Agent times out | Can't access web tools | Use toolsAllow or pre-fetch content |
| Agent times out | Can't run inline Python | Write .py file, pass path |
| Agent times out | runTimeoutSeconds too low | Set runTimeoutSeconds: 900 in spawn call |
| Agent times out | Gateway under load (10s spawn timeout) | Kill zombie subagents, wait, retry |
| Agent returns nothing | Missing context | Paste data in task parameter |
| Agent stuck in loop | Vague task | Add explicit "return X" instruction |
| Gateway crashes | Context overflow on spawn | Use lightContext: true |
| Spawn fails (10s gateway timeout) | Gateway CPU overload | Kill stale subagents first, then retry |
python3 -c inline in task descriptionsSet subagent defaults in ~/.openclaw/openclaw.json:
{
"agents": {
"defaults": {
"subagents": {
"runTimeoutSeconds": 900,
"maxConcurrent": 5
}
}
}
}
Also set in ~/.openclaw/council-config.json:
{
"default_timeout": 900,
"max_tokens": 8192
}
共 1 个版本