Deferred tools not loaded in context: fork skills
Problem
Skills with context: fork in their SKILL.md frontmatter cannot use deferred tools (AskUserQuestion, WebSearch, WebFetch, TodoWrite, TeamCreate, TeamDelete, SendMessage, etc.). The forked executor doesn't call ToolSearch to load their schemas before execution, so the model either:
- Falls back to outputting plain text instead of using the interactive tool (AskUserQuestion)
- Silently skips the tool call entirely
- Fails with an error the user never sees
Expected Behavior
When a skill declares a deferred tool in its allowed-tools list, the fork executor should auto-load that tool's schema (via ToolSearch or equivalent) before running the skill body.
Reproduction
- Create a skill with
context: forkandAskUserQuestioninallowed-tools - Have the skill body call AskUserQuestion
- Invoke the skill
Actual: The model outputs "Since AskUserQuestion isn't available as a deferred tool, I'll ask directly" and prints plain text instead of the interactive prompt.
Expected: The interactive AskUserQuestion prompt appears.
Workaround
Only use context: fork for skills that exclusively use non-deferred tools (Read, Glob, Grep, Bash, Write, Edit, Agent). Skills needing WebSearch, WebFetch, AskUserQuestion, TodoWrite, or team tools must not use fork.
Impact
This affects any skill author using context: fork who expects deferred tools to work. The failure is silent -- no error is shown, the skill just degrades or produces incomplete output.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗