Describe the bug
Custom agents loaded from a directory passed via --add-dir are correctly discovered for task-tool delegation (they appear in the model's list of available sub-agents, and can be invoked by mentioning them by name in a prompt), but the top-level --agent flag does not recognize them. Passing --agent for an agent that only exists under an --add-dir -added directory's .github/agents/ fails with "No such agent", even when that agent's frontmatter sets user-invocable: true .
Affected version
GitHub Copilot CLI 1.0.83
Steps to reproduce the behavior
- Create a custom agent at /.github/agents/my-agent.agent.md with user-invocable: true in its frontmatter.
- Run:
copilot --add-dir <some-dir> -p "List every custom agent name available to you via the task tool." --allow-all-tools
→ my-agent appears in the list, confirming --add-dir loaded it correctly.
- Run:
copilot --add-dir <some-dir> --agent my-agent -p "hello" --allow-all-tools
→ Fails with:
No such agent: my-agent, available: <only agents registered through other mechanisms, e.g. plugins>
Expected behavior
--agent should be able to select any agent discovered via --add-dir 's .github/agents/ directory — the same set of agents already visible to/usable by the task tool in that same session — especially when the agent explicitly sets user-invocable: true .
Additional context
• Workaround: instead of --agent , invoke the agent by mentioning its name directly in the prompt, e.g. -p "use the my-agent agent to ..." . This reliably delegates to the correct agent via the task tool.
• OS: macOS
• Shell: bash
Describe the bug
Custom agents loaded from a directory passed via --add-dir are correctly discovered for task-tool delegation (they appear in the model's list of available sub-agents, and can be invoked by mentioning them by name in a prompt), but the top-level --agent flag does not recognize them. Passing --agent for an agent that only exists under an --add-dir -added directory's .github/agents/ fails with "No such agent", even when that agent's frontmatter sets user-invocable: true .
Affected version
GitHub Copilot CLI 1.0.83
Steps to reproduce the behavior
copilot --add-dir <some-dir> -p "List every custom agent name available to you via the task tool." --allow-all-tools
→
my-agentappears in the list, confirming--add-dirloaded it correctly.copilot --add-dir <some-dir> --agent my-agent -p "hello" --allow-all-tools
→ Fails with:
No such agent: my-agent, available: <only agents registered through other mechanisms, e.g. plugins>
Expected behavior
--agent should be able to select any agent discovered via --add-dir 's .github/agents/ directory — the same set of agents already visible to/usable by the task tool in that same session — especially when the agent explicitly sets user-invocable: true .
Additional context
• Workaround: instead of --agent , invoke the agent by mentioning its name directly in the prompt, e.g. -p "use the my-agent agent to ..." . This reliably delegates to the correct agent via the task tool.
• OS: macOS
• Shell: bash