Re-verified after v0.7.0 — still blocked, and the new subcommand is now unambiguously CLI work (needs-cli added).
Problem
Every sub-agent invocation spends two live tool calls (list_documents + list_relations) bootstrapping its view of the knowledge base. The preamble is at plugins/archcore/agents/archcore-{assistant,auditor}.md ("First Step — Bootstrap Knowledge Tree", ~line 43) and is mandatory for a reason it states itself: sub-agents are spawned via the Task tool and do NOT receive the SessionStart additional context the main conversation gets. This is Option A — shipped and test-enforced. As the knowledge base grows, the per-invocation cost becomes measurable.
Expected result
Option B: precompute a knowledge-tree snapshot (the same payload bin/session-start gets from the CLI) and prepend it at Task-dispatch time via a new archcore hooks <host> subagent-start leaf, eliminating the per-invocation bootstrap calls.
Blocked
No host exposes a documented sub-agent-start hook surface, so this needs host-side plumbing plus a new CLI subcommand. The adopted design (.archcore/plugin/subagent-knowledge-tree-bootstrap.adr.md) defers Option B until such a lifecycle hook exists on at least one host; the revisit trigger is roughly 10x knowledge-base growth. Track as a blocked epic.
Re-open triggers
Related but distinct: .archcore/plugin/user-prompt-submit-injection.idea.md (draft) explores injecting on a different lifecycle event; worth reading before designing this one, since a shared injection payload would serve both.
Proposed approach
References
Design rationale: .archcore/plugin/subagent-knowledge-tree-preload.idea.md (Option B) and subagent-knowledge-tree-bootstrap.adr.md. Code: plugins/archcore/agents/archcore-{assistant,auditor}.md, plugins/archcore/bin/session-start.
Problem
Every sub-agent invocation spends two live tool calls (
list_documents+list_relations) bootstrapping its view of the knowledge base. The preamble is atplugins/archcore/agents/archcore-{assistant,auditor}.md("First Step — Bootstrap Knowledge Tree", ~line 43) and is mandatory for a reason it states itself: sub-agents are spawned via the Task tool and do NOT receive theSessionStartadditional context the main conversation gets. This is Option A — shipped and test-enforced. As the knowledge base grows, the per-invocation cost becomes measurable.Expected result
Option B: precompute a knowledge-tree snapshot (the same payload
bin/session-startgets from the CLI) and prepend it at Task-dispatch time via a newarchcore hooks <host> subagent-startleaf, eliminating the per-invocation bootstrap calls.Blocked
No host exposes a documented sub-agent-start hook surface, so this needs host-side plumbing plus a new CLI subcommand. The adopted design (
.archcore/plugin/subagent-knowledge-tree-bootstrap.adr.md) defers Option B until such a lifecycle hook exists on at least one host; the revisit trigger is roughly 10x knowledge-base growth. Track as a blocked epic.Re-open triggers
A-din Run the host probe protocol on all four hosts and replace the deferred:not-yet-run records #21 records afail— i.e. delegated writes turn out not to be covered — which makes injection at dispatch time a correctness matter, not only a cost one.Related but distinct:
.archcore/plugin/user-prompt-submit-injection.idea.md(draft) explores injecting on a different lifecycle event; worth reading before designing this one, since a shared injection payload would serve both.Proposed approach
subagent-startCLI leaf and per-host injection plumbing; drop the Option A preamble from the agent files once a host covers it.References
Design rationale:
.archcore/plugin/subagent-knowledge-tree-preload.idea.md(Option B) andsubagent-knowledge-tree-bootstrap.adr.md. Code:plugins/archcore/agents/archcore-{assistant,auditor}.md,plugins/archcore/bin/session-start.