docs: document coding harnesses and fill P0/P1/P2 documentation gaps#2950
Merged
Conversation
…tering, and other gaps - Add new Coding Harnesses page (docs/features/harnesses/index.md) covering claude-code, codex, opencode, pi harness types, field reference, recipes for sequential and parallel harness dispatch, limitations, and hook behavior - Add Coding Harnesses to nav.yml (Features section, after MCP Mode) - Update multi-agent/index.md: add Harness-Backed Sub-Agents section - Update background-agents/index.md: add Using Harness Sub-Agents section - Update configuration/agents/index.md: - Add harness field to Properties Reference table and Full Schema YAML - Add Agent-Switching Commands subsection with handoff/transfer_task comparison - Expand welcome_message description (Markdown rendered, not sent to model) - Update configuration/hooks/index.md: - Add cross-link to Coding Harnesses page in model_id note - Add link to examples/snapshot_hooks.yaml - Update configuration/models/index.md: add link to examples/task_budget.yaml - Update configuration/tools/index.md: - Expand Tool Instructions section with ORIGINAL_INSTRUCTIONS placeholder docs - Expand Deferred Tool Loading section with full explanation and example link - Add link to examples/lifecycle.yaml in Lifecycle section - Update tools/fetch/index.md: add Domain Filtering summary section with example links (fetch_domain_filtering.yaml, remote_mcp_allow_private_ips.yaml) - Update tools/filesystem/index.md: expand Post-Edit Hooks section with field table, error behavior, and link to examples/post_edit.yaml - Update tools/mcp/index.md: expand TOON section with regex semantics and link to examples/github-toon.yaml - Update features/skills/index.md: add links to skills_inline.yaml and skills_filter.yaml examples - Update concepts/multi-agent/index.md: add link to sub-agents-from-catalog.yaml
B1: before_llm_call/after_llm_call DO fire for harness agents - remove
incorrect 'will not fire' claim. model_id is set to the harness label
(e.g. claude-code) rather than a canonical provider/model string.
B2: Token usage IS tracked when the CLI reports it. Claude Code and Codex
both report usage data. Replace 'unavailable' bullet with accurate
description of conditional tracking.
B3: Remove incorrect pi.ai/talk link (Inflection AI consumer chatbot).
Replace with 'Refer to the pi CLI documentation for installation.'
N1: Replace all prose 'docker-agent' with 'Docker Agent' per STYLE.md in
harnesses/index.md, multi-agent/index.md, and background-agents/index.md.
(Repo/URL path 'docker/docker-agent' is unchanged.)
N2: Fix agent names in recipe YAML to use hyphens (claude-coder, codex-coder)
matching examples/coding_harnesses.yaml and
examples/coding_harness_background_agents.yaml. Updated in
harnesses/index.md, multi-agent/index.md, and background-agents/index.md.
N3: Fix blocked_domains bullet in fetch/index.md Domain Filtering section -
was self-contradictory ('takes priority over allowed; cannot be combined').
Corrected to: 'mutually exclusive with allowed_domains (a config error is
thrown if both are set)'.
N4: Broaden allow_private_ips scope note in fetch/index.md - flag is also
supported on api, openapi, a2a, and remote mcp toolsets, not just fetch.
N5: Add 'toolsets: are silently ignored when harness: is set' note to the
harness row in the agents/index.md Properties Reference table.
Contributor
Author
|
/review |
|
❌ PR Review Failed — The review agent encountered an error and could not complete the review. View logs. |
dgageot
approved these changes
Jun 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Addresses the gap analysis (artifact d7dff17d-15d5-49b4-966e-ee6ee006f5f6).
New pages
docs/features/harnesses/index.md— Coding Harnesses (P0): full reference forharness:field, claude-code/codex/opencode/pi types, sequential and parallel recipes, limitations, hook behaviorPages updated
docs/_data/nav.yml— added Coding Harnesses to Features navdocs/configuration/agents/index.md— harness field in schema + table; agent-switching commands subsection; welcome_message description expandeddocs/configuration/hooks/index.md— model_id note links to harnesses page; snapshot_hooks.yaml example linkdocs/configuration/models/index.md— task_budget.yaml example linkdocs/configuration/tools/index.md— ORIGINAL_INSTRUCTIONS placeholder docs; Deferred Tool Loading expanded; lifecycle.yaml and deferred.yaml linksdocs/concepts/multi-agent/index.md— Harness-Backed Sub-Agents section; sub-agents-from-catalog.yaml linkdocs/tools/background-agents/index.md— Using Harness Sub-Agents sectiondocs/tools/fetch/index.md— Domain Filtering summary section with example linksdocs/tools/filesystem/index.md— Post-Edit Hooks section expanded with field table and post_edit.yaml linkdocs/tools/mcp/index.md— TOON section expanded with regex semantics and github-toon.yaml linkdocs/features/skills/index.md— skills_inline.yaml and skills_filter.yaml example linksValidated:
golangci-lint run(0 issues),task build(builds cleanly).