ADR-029 β Tool execution runtime architecture
Status: Superseded by
ADR-046 (2026-08-05)
Originally accepted: 2026-06-04
The current tool contract is intentionally small:
- Hermes owns tool selection, discovery, invocation, and result handling.
- Normal/native tools are primary. This includes terminal, filesystem,
Chromium/browser, direct network/web, image providers, and the normal
gitCLI implemented byrunners/hermes-binary/worker/hypersh-gitover AgentFS. - MCP adds a capability only when no normal tool provides it. Humanwork KB and tenant-connected business systems are examples.
- Humanwork does not inject a tool manifest or capability prose into the user message, task-classify a per-turn subset, or require approval/review before a normal or MCP tool call.
- MCP routing authenticates the tenant and resolves the configured connection; execution and audit records do not become permission or delivery gates.
- Hermes progressively discloses nonessential native, plugin, and MCP schemas so capabilities remain reachable without sending the whole catalog on every model call.
The former four-layer manifest/policy/approval design and its failure-mode catalog are retained only in Git history. They are not current architecture.