You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🔧 fix(core): fix orchestration loops, over-correction, and redundant LLM calls
Root cause analysis comparing against Claude Code revealed Meeseeks made
12-14 LLM calls per 3-step task (vs ~3 for CC). Each extra call introduced
drift, plan inflation, and loop risk.
Prompts:
- action-planner: enforce 1-2 steps for simple tasks, max 5 total
- plan-updater: NEVER add new steps, return empty when goal met
- step-executor: prefer "respond" over "tool" when uncertain
- reflection: default to "ok" unless clear failure (error/empty/contradiction)
Hard guards:
- Cap PlanUpdater output (never more steps out than in)
- Skip PlanUpdater when only 1 step remains (saves 1 LLM call)
- Pass budget context (steps_run/max_steps) to PlanUpdater
- Reduce max_steps multiplier from 5 to 3 (default 9 instead of 15)
Redundant LLM call elimination:
- Remove ToolSelector from act-mode flow (Planner already filters by intent)
- Make reflection opt-in per tool via metadata.reflect (shell/edit only)
Cleanup:
- Remove dead _should_replan() and _build_revised_query() methods
- Add .mcp.json to .gitignore (contains auth tokens)
0 commit comments