The `task` tool delegates to a SubagentSpawner (owned by the composition root): resolves the agent, enforces the depth limit, applies permission intersection, filters tools per-agent, and runs the child session foreground or background. Foreground returns the child's final text; background registers on the job board and detaches under the parent run token. The run loop injects the board into primary-agent requests and reconciles terminal jobs each step. Integration tests cover foreground run + alias reuse continuing the same child session, depth-limit and unknown-agent rejection, and board prompt injection. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
26 lines
605 B
TOML
26 lines
605 B
TOML
[package]
|
|
name = "harness-app"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
|
|
[dependencies]
|
|
harness-core = { workspace = true }
|
|
harness-providers = { workspace = true }
|
|
harness-tools = { workspace = true }
|
|
harness-mcp = { workspace = true }
|
|
harness-lsp = { workspace = true }
|
|
tokio = { workspace = true }
|
|
tokio-util = { workspace = true }
|
|
async-trait = { workspace = true }
|
|
dirs = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
tracing = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
tempfile = { workspace = true }
|
|
futures = { workspace = true }
|
|
|
|
[lints]
|
|
workspace = true
|