AGENTS.md: dedupe the section 2 state tree into its declared owners#641
Open
jbassiri wants to merge 1 commit into
Open
AGENTS.md: dedupe the section 2 state tree into its declared owners#641jbassiri wants to merge 1 commit into
jbassiri wants to merge 1 commit into
Conversation
AGENTS.md is loaded in full by every firstmate session (CLAUDE.md is a symlink to it), so its size is a fixed per-session token cost. Section 2 still inlined an exhaustive state/ + config/ file tree that restates exact child-file fields, even though the repo already assigns that content to other owners: - Section 2's own opening line names docs/configuration.md as "the single owner of the operational-home layout, configuration schemas, and reference state map", and each producing script's header/--help as the owner of exact child fields and mutation mechanics. - docs/configuration.md's "Operational home layout and state" section states the child fields belong to producer script headers and deliberately keeps wake/watcher/away-mode/X state "rather than being duplicated into one exhaustive state tree here". The inline tree was therefore the last remaining duplicate of content the one-owner rule assigns elsewhere. Replace it with a concise pointer to those owners, preserving the two boundaries that bind at every turn inline (projects/ is read-only; state/ watcher/sub-supervisor/wake internals are never hand-edited) and the CLAUDE.md / .claude/skills symlink facts. No safety rule, prime directive, or ownership pointer was weakened or dropped; this is a pure dedupe of reference detail. AGENTS.md: 44901 -> 38023 bytes.
jbassiri
force-pushed
the
slim-agents-md-core
branch
from
July 16, 2026 15:47
ca4471a to
609097a
Compare
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.
Motivation
AGENTS.mdis loaded in full by every firstmate session (CLAUDE.mdis a symlink to it), so its byte size is a fixed token cost paid at every session start. This PR removes the one remaining block that duplicates content the repo already assigns to other owners, reducing that always-loaded cost without touching any rule.What changed
Section 2 ("Layout and state") still inlined an exhaustive
state/+config/file tree that restates exact child-file fields, even though the repo already assigns that content elsewhere:docs/configuration.mdas "the single owner of the operational-home layout, configuration schemas, and reference state map", and each producing script's header/--helpas the owner of exact child fields and mutation mechanics.docs/configuration.md("Operational home layout and state") assigns child fields to producer script headers and deliberately keeps wake/watcher/away-mode/X state "rather than being duplicated into one exhaustive state tree here".So the inline tree was the last remaining duplicate of content the one-owner rule (per
firstmate-coding-guidelines) assigns todocs/and script headers. It is replaced with a concise pointer to those owners. Preserved inline: the two boundaries that bind at every turn (projects/is read-only;state/watcher/sub-supervisor/wake internals are never hand-edited) and theCLAUDE.md/.claude/skillssymlink facts.Size
AGENTS.mdbeforeAGENTS.mdafterA 6,878-byte (~15%) reduction in the always-loaded surface.
Not a rewrite
This is a pure dedupe of reference detail; no safety boundary, prime directive, or ownership pointer was weakened, dropped, or reworded. The two load-bearing section-2 facts that were interleaved in the tree (
state/<id>.statusis a wake event;data/captain.md/data/learnings.mdcanonicity) are untouched. The sections the repo marks as always-loaded operational contracts (task lifecycle, supervision) are left exactly as-is.Validation
bin/fm-lint.shpasses (shellcheck 0.11.0). The instruction-ownership and cross-reference tests pass, includingfm-instruction-owners(which asserts the section-2 owner pointer, the always-loaded contracts, and the retained safety phrases),fm-no-mistakes-ownership,fm-stow-contract, andfm-ensure-agents-md. No test asserts the removed tree's contents. TheCLAUDE.md->AGENTS.mdand.claude/skills->../.agents/skillssymlinks are untouched.