Problem
When running agentic workflows with the Copilot engine, the system prompt includes instructions to proactively invoke the rubber-duck sub-agent for plan validation and critique. This adds significant token overhead and latency for every non-trivial task — launching a separate Haiku-model agent, waiting for its response, then processing the feedback.
For Copilot engine runs, this is wasteful because:
- The rubber-duck agent uses additional model calls that count against the workflow's token budget
- It adds latency (sync sub-agent calls block the main agent)
- Copilot's built-in reasoning is generally sufficient for the tasks these workflows handle
- The defense-in-depth value is lower when the primary model already has strong reasoning capabilities
Proposed Solution
When the workflow engine is copilot, the compiled lock file should either:
- Omit the rubber-duck collaboration instructions from the system prompt entirely, or
- Include a directive like "Do not use the rubber-duck agent" in the system prompt
This could be implemented as:
- A per-engine default in the compiler (rubber-duck enabled for claude/codex, disabled for copilot)
- A workflow-level opt-in/opt-out field (e.g.
rubber-duck: false)
- Both (engine default + explicit override)
Context
The rubber-duck instructions are injected via the Copilot CLI system prompt and encourage the agent to call task(agent_type: "rubber-duck") before implementing non-trivial changes. While valuable for some engines/tasks, it's pure overhead for Copilot engine workflows that are already well-scoped.
Problem
When running agentic workflows with the Copilot engine, the system prompt includes instructions to proactively invoke the rubber-duck sub-agent for plan validation and critique. This adds significant token overhead and latency for every non-trivial task — launching a separate Haiku-model agent, waiting for its response, then processing the feedback.
For Copilot engine runs, this is wasteful because:
Proposed Solution
When the workflow engine is
copilot, the compiled lock file should either:This could be implemented as:
rubber-duck: false)Context
The rubber-duck instructions are injected via the Copilot CLI system prompt and encourage the agent to call
task(agent_type: "rubber-duck")before implementing non-trivial changes. While valuable for some engines/tasks, it's pure overhead for Copilot engine workflows that are already well-scoped.