GLM Autoroute
by @raufimusaddiq
Routes tasks between GLM-4.7-FlashX for simple queries and GLM-5 for coding, analysis, reasoning, and complex tasks, switching automatically as needed.
clawhub install glm-autorouteπ About This Skill
GLM Autoroute
Binary model routing for ZAI GLM models - lightweight vs heavyweight tasks.
Introduction
1. GLM-4.7 is the default model. Only spawn GLM-5 when the task actually needs it. 2. Use sessions_spawn to run tasks with GLM-5:sessions_spawn({
task: "",
model: "zai/glm-5",
label: ""
})
3. After done with GLM-5, the main session continues with GLM-4.7 as default.Models
GLM-4.7 (DEFAULT - zai/glm-4.7)
Use for lightweight tasks: 1. Simple Q&A - What, When, Who, Where 2. Casual chat - No reasoning needed 3. Quick lookups 4. File lookups 5. Simple tasks - repetitive tasks, formatting 6. Cron Jobs - if it needs reasoning, THEN ESCALATE TO GLM-5 7. Status checks 8. Basic confirmations 9. Provide concise output, just plain answer, no explaining
DO NOT:
GLM-5 (zai/glm-5)
Use for heavyweight tasks: 1. Coding (any complexity) 2. Analysis & debugging 3. Multi-step reasoning 4. Research & investigation 5. Critical planning 6. Architecture decisions 7. Complex problem solving 8. Deep research 9. Critical decisions 10. Detailed explanations
Examples
| Task | Model | Why | |------|-------|-----| | "Check calendar" | GLM-4.7 | Simple lookup | | "What time is it?" | GLM-4.7 | Simple Q&A | | "Heartbeat check" | GLM-4.7 | Routine | | "Read this file" | GLM-4.7 | Simple lookup | | "Summarize this" | GLM-4.7 | Basic task | | "Write Python script" | GLM-5 | Coding | | "Debug this error" | GLM-5 | Analysis | | "Research market trends" | GLM-5 | Deep research | | "Plan migration" | GLM-5 | Complex planning | | "Analyze this issue" | GLM-5 | Analysis |
Other Notes
1. When the user asks to use a specific model, use it 2. Always mention which model is used in outputs β example: "(GLM-5)" or "(GLM-4.7)" at the end of responses 3. After done with GLM-5 (via sessions_spawn), continue with GLM-4.7 as default 4. If you think the request does not fall into GLM-4.7 use cases, THEN ESCALATE TO GLM-5 5. If you think you will violate the DO NOT list, THEN ESCALATE TO GLM-5 6. Coding = always GLM-5 7. When in doubt β GLM-5 (better safe than sorry) 8. Heartbeat checks β always GLM-4.7 unless complex analysis needed
Memory Management with sessions_spawn
When spawning GLM-5 sub-agent sessions for ANY task (coding, research, analysis, planning, etc.), follow this pattern:
Output Rules
1. Code Output (Important)
2. Full Announce for Other Results
3. Two-Layer Memory Strategy
MEMORY.md (Curated Long-Term)
Detailed Reports (Task-Specific Files)
research/YYYY-MM-DD-topic.md (full findings, data, analysis)Examples
Research task:
sessions_spawn({
task: "Research X. Announce full findings to user. Write full report to research/YYYY-MM-DD-X.md, then write ONLY key insights to MEMORY.md (clean, concise).",
model: "zai/glm-5",
label: "Research X"
})
Coding task:
sessions_spawn({
task: "Write Python script for X. Save full code to file. Provide summary (what created, path, status, dependencies) in announce. Write key implementation decisions to MEMORY.md (important only).",
model: "zai/glm-5",
label: "Python script X"
})
Apply this pattern to ALL GLM-5 spawns. Code in files only, summary in announce, full disclosure on request.
π‘ Examples
Research task:
sessions_spawn({
task: "Research X. Announce full findings to user. Write full report to research/YYYY-MM-DD-X.md, then write ONLY key insights to MEMORY.md (clean, concise).",
model: "zai/glm-5",
label: "Research X"
})
Coding task:
sessions_spawn({
task: "Write Python script for X. Save full code to file. Provide summary (what created, path, status, dependencies) in announce. Write key implementation decisions to MEMORY.md (important only).",
model: "zai/glm-5",
label: "Python script X"
})
Apply this pattern to ALL GLM-5 spawns. Code in files only, summary in announce, full disclosure on request.