Deferred tools not loaded in context: fork skills

Resolved 💬 2 comments Opened Apr 11, 2026 by voyagi Closed Apr 28, 2026

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:

  1. Falls back to outputting plain text instead of using the interactive tool (AskUserQuestion)
  2. Silently skips the tool call entirely
  3. 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

  1. Create a skill with context: fork and AskUserQuestion in allowed-tools
  2. Have the skill body call AskUserQuestion
  3. 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.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗