github / github/copilot-sdk

Does onPostToolUse hook additionalContext get injected into sub-agent context?

Open
#1,971 0 comments 0 reactions 0 assignees View on GitHub
question
Dominant language
Java
Stars
10.5k
Forks
1.5k
Avg merge
1d 11h
Merged PRs (30d)
127

Description

## Context

We're building a qa agent. It has an orchestrator agent that dispatches work to custom sub-agents via the `task` tool. We use session-level `onPostToolUse` hooks to enforce guardrails (retry limits on failing tests). The hooks fire correctly during sub-agent execution — we can see `hook.start`/`hook.end` events in the session journal, and `onPreToolUse` denials work as expected inside sub-agents.

## What we observe

We have a guardrail that tracks test failures per spec. After 3 failures, we want to tell the sub-agent "stop retrying, mark as fixme, move on." Currently our hook calls `session.send({ prompt: text, mode: "immediate" })` separately. The sub-agent ignores this and keeps retrying (7+ attempts observed).

Before max attempts, we return `{ additionalContext: feedbackText }` from the hook (per-attempt guidance like "attempt 2/3, try a different approach"). We haven't been able to confirm whether this feedback actually reaches the sub-agent.

## Questions

1. Does `{ additionalContext }` returned from `onPostToolUse` get injected into the active sub-agent's context, or only the parent session?
2. Does `session.send({ mode: "immediate" })` reach a running sub-agent, or does it queue on the parent session?
3. What is the recommended way to steer a sub-agent mid-turn from a hook?

## Environment

- `@github/copilot-sdk@1.0.6`
- `@github/copilot@1.0.70`
- Custom agents with `tools: null` (all tools)
- Hooks registered at session creation via `hooks: { onPreToolUse, onPostToolUse }`

Contributor guide

Open the contributing guide

Research direction

Start with the onPostToolUse hook, task tool, and session.send({ mode: "immediate" }) entry points using the listed SDK versions. Reproduce the behavior while checking the session journal for hook.start and hook.end events and the sub-agent's received context. Done means the context scope, message delivery behavior, and recommended mid-turn steering method are clearly documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
api, developer-experience
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.