Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 18 additions & 12 deletions .agents/skills/resync-a-repo/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,21 +49,27 @@ Preserve the evidence RESYNC.md section 2 requires, and do not leave the finding

## Apply, in this order

1. **The instruction set first.** `AGENTS.md` and `GOVERNANCE.md` verbatim sections, then
`CODESTYLE.md` and `WORKFLOW.md`, including the `AGENTS.md` skill-dependency pointer paragraph
(naming `scripts/skills_install.py` and where the fleet's Skills live) as one more verbatim
unit carried in this same step, not a separate pass. **Before any verbatim re-vendor in this
step, run the `carried-instruction-file-guard` skill's distinctive-phrase probe against the
target file, every time, without exception.** This is not advisory language to weigh against
how routine the diff looks, a diff that looks routine is exactly the shape the
AGENTS.md-overwrite incident took. Do not proceed to the re-vendor until the probe has run and
any local addition it finds has a destination, per that skill's own procedure.
1. **The instruction set first.** `CLAUDE.md`, then `AGENTS.md` and `GOVERNANCE.md` verbatim
sections, then `CODESTYLE.md` and `WORKFLOW.md`, including the `AGENTS.md` skill-dependency
pointer paragraph (naming `scripts/skills_install.py` and where the fleet's Skills live) as
one more verbatim unit carried in this same step, not a separate pass. `CLAUDE.md` is the
single `@AGENTS.md`-import file that gets `AGENTS.md` into a Claude Code session's context at
all, a separate baseline entry from `AGENTS.md` itself, so carrying one without the other
still leaves that provider unconfigured. **Before touching `AGENTS.md`, `GOVERNANCE.md`,
`CODESTYLE.md`, or `WORKFLOW.md` in this step, run the `carried-instruction-file-guard`
skill's distinctive-phrase probe against the target file, every time, without exception,
regardless of whether the update is a verbatim re-vendor or an intent-fidelity edit.** This is not advisory language to weigh against how routine
the diff looks, a diff that looks routine is exactly the shape the AGENTS.md-overwrite
incident took. Do not proceed to the re-vendor until the probe has run and any local addition
it finds has a destination, per that skill's own procedure. `CLAUDE.md` is outside that
guard's scope: it carries no mixed or repo-specific content by design, so its re-vendor is an
ordinary verbatim-fidelity copy, no probe needed.
2. **Deletions second, before any re-vendor.** Only a `retire` disposition in
`spec/divergences.json` authorizes removing a file, and the removal is swept tree-wide, per
RESYNC.md section 4, before the deletion counts as done.
3. **Verbatim re-vendors** for everything the probe in step 1 cleared. A finding classified
modified rather than stale gets its diff read before being overwritten, since it may be an
improvement the hub should adopt instead of a mistake to erase.
3. **Verbatim re-vendors** for `CLAUDE.md` and everything else the probe in step 1 cleared. A
finding classified modified rather than stale gets its diff read before being overwritten,
since it may be an improvement the hub should adopt instead of a mistake to erase.
4. **Interface workflows.** Honor the named contract, required jobs, the ruleset-bound check name,
the artifact-name handoff, rather than copying bytes.
5. **Settings, rulesets, and secrets.** Run
Expand Down
11 changes: 7 additions & 4 deletions .agents/skills/standup-a-repo/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,13 @@ maintainer can supply what section 0A lists.
section 2, then write or repair its `registry/repos.json` entry and confirm it with
`spec/validate.py`.

4. **The instruction set, before authoring anything.** STANDUP.md section 1A: carry `AGENTS.md`,
`GOVERNANCE.md`, `CODESTYLE.md`, `WORKFLOW.md` and `AUDIT.md`, adapted rather than cloned for
the ones that describe a repo, plus `.markdownlint-cli2.jsonc` and `cspell.json`. Read
`CODESTYLE.md` and the `GOVERNANCE.md` documentation-style rules before writing any repo
4. **The instruction set, before authoring anything.** STANDUP.md section 1A: carry `CLAUDE.md`,
`AGENTS.md`, `GOVERNANCE.md`, `CODESTYLE.md`, `WORKFLOW.md` and `AUDIT.md`, adapted rather
than cloned for the ones that describe a repo, plus `.markdownlint-cli2.jsonc` and
`cspell.json`. `CLAUDE.md` is the fixed, verbatim `@AGENTS.md`-import file that gets
`AGENTS.md` into a Claude Code session's context at all, a separate baseline entry from
`AGENTS.md` itself, so carrying one without the other still leaves that provider unconfigured.
Read `CODESTYLE.md` and the `GOVERNANCE.md` documentation-style rules before writing any repo
content of your own, the same window-closes shape as signing in step 1.

5. **Capture the source, if one exists.** STANDUP.md section 1B, only when the repo's content
Expand Down
2 changes: 1 addition & 1 deletion .claude-plugin/fleet-skills/.source-digest
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2044c888625ec970
79146733e388bff5
30 changes: 18 additions & 12 deletions .claude-plugin/fleet-skills/skills/resync-a-repo/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,21 +49,27 @@ Preserve the evidence RESYNC.md section 2 requires, and do not leave the finding

## Apply, in this order

1. **The instruction set first.** `AGENTS.md` and `GOVERNANCE.md` verbatim sections, then
`CODESTYLE.md` and `WORKFLOW.md`, including the `AGENTS.md` skill-dependency pointer paragraph
(naming `scripts/skills_install.py` and where the fleet's Skills live) as one more verbatim
unit carried in this same step, not a separate pass. **Before any verbatim re-vendor in this
step, run the `carried-instruction-file-guard` skill's distinctive-phrase probe against the
target file, every time, without exception.** This is not advisory language to weigh against
how routine the diff looks, a diff that looks routine is exactly the shape the
AGENTS.md-overwrite incident took. Do not proceed to the re-vendor until the probe has run and
any local addition it finds has a destination, per that skill's own procedure.
1. **The instruction set first.** `CLAUDE.md`, then `AGENTS.md` and `GOVERNANCE.md` verbatim
sections, then `CODESTYLE.md` and `WORKFLOW.md`, including the `AGENTS.md` skill-dependency
pointer paragraph (naming `scripts/skills_install.py` and where the fleet's Skills live) as
one more verbatim unit carried in this same step, not a separate pass. `CLAUDE.md` is the
single `@AGENTS.md`-import file that gets `AGENTS.md` into a Claude Code session's context at
all, a separate baseline entry from `AGENTS.md` itself, so carrying one without the other
still leaves that provider unconfigured. **Before touching `AGENTS.md`, `GOVERNANCE.md`,
`CODESTYLE.md`, or `WORKFLOW.md` in this step, run the `carried-instruction-file-guard`
skill's distinctive-phrase probe against the target file, every time, without exception,
regardless of whether the update is a verbatim re-vendor or an intent-fidelity edit.** This is not advisory language to weigh against how routine
the diff looks, a diff that looks routine is exactly the shape the AGENTS.md-overwrite
incident took. Do not proceed to the re-vendor until the probe has run and any local addition
it finds has a destination, per that skill's own procedure. `CLAUDE.md` is outside that
guard's scope: it carries no mixed or repo-specific content by design, so its re-vendor is an
ordinary verbatim-fidelity copy, no probe needed.
2. **Deletions second, before any re-vendor.** Only a `retire` disposition in
`spec/divergences.json` authorizes removing a file, and the removal is swept tree-wide, per
RESYNC.md section 4, before the deletion counts as done.
3. **Verbatim re-vendors** for everything the probe in step 1 cleared. A finding classified
modified rather than stale gets its diff read before being overwritten, since it may be an
improvement the hub should adopt instead of a mistake to erase.
3. **Verbatim re-vendors** for `CLAUDE.md` and everything else the probe in step 1 cleared. A
finding classified modified rather than stale gets its diff read before being overwritten,
since it may be an improvement the hub should adopt instead of a mistake to erase.
4. **Interface workflows.** Honor the named contract, required jobs, the ruleset-bound check name,
the artifact-name handoff, rather than copying bytes.
5. **Settings, rulesets, and secrets.** Run
Expand Down
11 changes: 7 additions & 4 deletions .claude-plugin/fleet-skills/skills/standup-a-repo/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,13 @@ maintainer can supply what section 0A lists.
section 2, then write or repair its `registry/repos.json` entry and confirm it with
`spec/validate.py`.

4. **The instruction set, before authoring anything.** STANDUP.md section 1A: carry `AGENTS.md`,
`GOVERNANCE.md`, `CODESTYLE.md`, `WORKFLOW.md` and `AUDIT.md`, adapted rather than cloned for
the ones that describe a repo, plus `.markdownlint-cli2.jsonc` and `cspell.json`. Read
`CODESTYLE.md` and the `GOVERNANCE.md` documentation-style rules before writing any repo
4. **The instruction set, before authoring anything.** STANDUP.md section 1A: carry `CLAUDE.md`,
`AGENTS.md`, `GOVERNANCE.md`, `CODESTYLE.md`, `WORKFLOW.md` and `AUDIT.md`, adapted rather
than cloned for the ones that describe a repo, plus `.markdownlint-cli2.jsonc` and
`cspell.json`. `CLAUDE.md` is the fixed, verbatim `@AGENTS.md`-import file that gets
`AGENTS.md` into a Claude Code session's context at all, a separate baseline entry from
`AGENTS.md` itself, so carrying one without the other still leaves that provider unconfigured.
Read `CODESTYLE.md` and the `GOVERNANCE.md` documentation-style rules before writing any repo
content of your own, the same window-closes shape as signing in step 1.

5. **Capture the source, if one exists.** STANDUP.md section 1B, only when the repo's content
Expand Down
30 changes: 18 additions & 12 deletions .github/skills/resync-a-repo/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,21 +49,27 @@ Preserve the evidence RESYNC.md section 2 requires, and do not leave the finding

## Apply, in this order

1. **The instruction set first.** `AGENTS.md` and `GOVERNANCE.md` verbatim sections, then
`CODESTYLE.md` and `WORKFLOW.md`, including the `AGENTS.md` skill-dependency pointer paragraph
(naming `scripts/skills_install.py` and where the fleet's Skills live) as one more verbatim
unit carried in this same step, not a separate pass. **Before any verbatim re-vendor in this
step, run the `carried-instruction-file-guard` skill's distinctive-phrase probe against the
target file, every time, without exception.** This is not advisory language to weigh against
how routine the diff looks, a diff that looks routine is exactly the shape the
AGENTS.md-overwrite incident took. Do not proceed to the re-vendor until the probe has run and
any local addition it finds has a destination, per that skill's own procedure.
1. **The instruction set first.** `CLAUDE.md`, then `AGENTS.md` and `GOVERNANCE.md` verbatim
sections, then `CODESTYLE.md` and `WORKFLOW.md`, including the `AGENTS.md` skill-dependency
pointer paragraph (naming `scripts/skills_install.py` and where the fleet's Skills live) as
one more verbatim unit carried in this same step, not a separate pass. `CLAUDE.md` is the
single `@AGENTS.md`-import file that gets `AGENTS.md` into a Claude Code session's context at
all, a separate baseline entry from `AGENTS.md` itself, so carrying one without the other
still leaves that provider unconfigured. **Before touching `AGENTS.md`, `GOVERNANCE.md`,
`CODESTYLE.md`, or `WORKFLOW.md` in this step, run the `carried-instruction-file-guard`
skill's distinctive-phrase probe against the target file, every time, without exception,
regardless of whether the update is a verbatim re-vendor or an intent-fidelity edit.** This is not advisory language to weigh against how routine
the diff looks, a diff that looks routine is exactly the shape the AGENTS.md-overwrite
incident took. Do not proceed to the re-vendor until the probe has run and any local addition
it finds has a destination, per that skill's own procedure. `CLAUDE.md` is outside that
guard's scope: it carries no mixed or repo-specific content by design, so its re-vendor is an
ordinary verbatim-fidelity copy, no probe needed.
2. **Deletions second, before any re-vendor.** Only a `retire` disposition in
`spec/divergences.json` authorizes removing a file, and the removal is swept tree-wide, per
RESYNC.md section 4, before the deletion counts as done.
3. **Verbatim re-vendors** for everything the probe in step 1 cleared. A finding classified
modified rather than stale gets its diff read before being overwritten, since it may be an
improvement the hub should adopt instead of a mistake to erase.
3. **Verbatim re-vendors** for `CLAUDE.md` and everything else the probe in step 1 cleared. A
finding classified modified rather than stale gets its diff read before being overwritten,
since it may be an improvement the hub should adopt instead of a mistake to erase.
4. **Interface workflows.** Honor the named contract, required jobs, the ruleset-bound check name,
the artifact-name handoff, rather than copying bytes.
5. **Settings, rulesets, and secrets.** Run
Expand Down
11 changes: 7 additions & 4 deletions .github/skills/standup-a-repo/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,13 @@ maintainer can supply what section 0A lists.
section 2, then write or repair its `registry/repos.json` entry and confirm it with
`spec/validate.py`.

4. **The instruction set, before authoring anything.** STANDUP.md section 1A: carry `AGENTS.md`,
`GOVERNANCE.md`, `CODESTYLE.md`, `WORKFLOW.md` and `AUDIT.md`, adapted rather than cloned for
the ones that describe a repo, plus `.markdownlint-cli2.jsonc` and `cspell.json`. Read
`CODESTYLE.md` and the `GOVERNANCE.md` documentation-style rules before writing any repo
4. **The instruction set, before authoring anything.** STANDUP.md section 1A: carry `CLAUDE.md`,
`AGENTS.md`, `GOVERNANCE.md`, `CODESTYLE.md`, `WORKFLOW.md` and `AUDIT.md`, adapted rather
than cloned for the ones that describe a repo, plus `.markdownlint-cli2.jsonc` and
`cspell.json`. `CLAUDE.md` is the fixed, verbatim `@AGENTS.md`-import file that gets
`AGENTS.md` into a Claude Code session's context at all, a separate baseline entry from
`AGENTS.md` itself, so carrying one without the other still leaves that provider unconfigured.
Read `CODESTYLE.md` and the `GOVERNANCE.md` documentation-style rules before writing any repo
content of your own, the same window-closes shape as signing in step 1.

5. **Capture the source, if one exists.** STANDUP.md section 1B, only when the repo's content
Expand Down
7 changes: 7 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Claude Code Entry Point

@AGENTS.md

Claude Code reads `CLAUDE.md`, not `AGENTS.md`, so the import line above is what gets this
repository's rules into a Claude Code session at all. See `AGENTS.md` for what is authoritative
and why. This file carries no rule of its own, and adds none beyond the import line.
1 change: 1 addition & 0 deletions GOVERNANCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -300,6 +300,7 @@ Every repo's GitHub repository details (the About panel) follow a fixed conventi
## Repository Layout

- [`AGENTS.md`](./AGENTS.md): the agent entry point, carrying context and delegation rules plus the map to the sections below.
- [`CLAUDE.md`](./CLAUDE.md): imports `AGENTS.md`, since Claude Code reads `CLAUDE.md` and never `AGENTS.md` on its own. Carries no rule of its own.
- [`GOVERNANCE.md`](./GOVERNANCE.md), [`CODESTYLE.md`](./CODESTYLE.md), [`WORKFLOW.md`](./WORKFLOW.md), [`AUDIT.md`](./AUDIT.md): the governance and audit docs. This file is the cross-cutting-rules authority.
- [`spec/`](./spec/): the machine-readable ground truth, covering project-type requirements, the file/section baseline, secrets, the host tool contract and its floors, and the preferred README structure.
- [`registry/repos.json`](./registry/repos.json): the fleet registry, holding every project, its type(s), and its status.
Expand Down
2 changes: 1 addition & 1 deletion RESYNC.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ python3 spec/fidelity_honesty.py --report # regenerate reports/divergences

The order is load-bearing. Each step below either changes the rules the later steps are judged against, or removes something a later step would otherwise refresh.

1. **The instruction set first.** `AGENTS.md` and `GOVERNANCE.md` verbatim sections, then `CODESTYLE.md` and `WORKFLOW.md`. `AGENTS.md`'s skill-dependency pointer paragraph, naming `scripts/skills_install.py` and where the fleet's Skills live, carries as one more verbatim unit in this same step, not a separate pass. These are the rules for producing every other file, so carrying them last means everything touched beforehand was judged against the previous revision. This is the same closing-window shape as [`STANDUP.md`][standup] section 1A, and the cost of getting it wrong is rework proportional to how much was changed first. **Run the `carried-instruction-file-guard` skill's distinctive-phrase probe before any verbatim re-vendor in this step, every time, without exception.** A diff that looks routine is exactly the shape the AGENTS.md-overwrite incident took, so the probe is not weighed against how routine the request sounds, it runs regardless. `resync-a-repo` packages this whole step, and the rest of this section, as a Skill for a hub-context session driving the resync.
1. **The instruction set first.** `CLAUDE.md`, then `AGENTS.md` and `GOVERNANCE.md` verbatim sections, then `CODESTYLE.md` and `WORKFLOW.md`. `CLAUDE.md` is the single `@AGENTS.md`-import file that gets `AGENTS.md` into a Claude Code session's context at all, so a repo carrying `AGENTS.md` without it is still a partial carry for that provider even though `spec/files.json` lists them as separate entries. `AGENTS.md`'s skill-dependency pointer paragraph, naming `scripts/skills_install.py` and where the fleet's Skills live, carries as one more verbatim unit in this same step, not a separate pass. These are the rules for producing every other file, so carrying them last means everything touched beforehand was judged against the previous revision. This is the same closing-window shape as [`STANDUP.md`][standup] section 1A, and the cost of getting it wrong is rework proportional to how much was changed first. **Run the `carried-instruction-file-guard` skill's distinctive-phrase probe before touching `AGENTS.md`, `GOVERNANCE.md`, `CODESTYLE.md`, or `WORKFLOW.md` in this step, every time, without exception, regardless of whether the update is a verbatim re-vendor or an intent-fidelity edit.** A diff that looks routine is exactly the shape the AGENTS.md-overwrite incident took, so the probe is not weighed against how routine the request sounds, it runs regardless. `CLAUDE.md` is outside that guard's scope entirely, the same as any file the guard was never written to cover: it carries no mixed or repo-specific content by design, so its own re-vendor is an ordinary verbatim-fidelity copy, no probe needed. `resync-a-repo` packages this whole step, and the rest of this section, as a Skill for a hub-context session driving the resync.
2. **Deletions second, before any re-vendor.** A `hub-only:` finding names a file the hub hosts rather than carries, and its remedy removes the file. Doing it after the re-vendors means refreshing a copy that is about to be deleted, which is wasted work that also reads as a deliberate update in the diff. See section 4, which is the whole of what deletion means here.
3. **Verbatim re-vendors.** Copy the current hub canonical down, whole file or the one named `## heading` region. A finding classified **stale** matches a past hub revision and needs no judgment. One classified **modified** matches no revision, so the repository changed fixed content and the change is read before it is overwritten, since it may be an improvement the hub should adopt instead.
Run `python3 scripts/carry.py check <Repo> --target /path/to/worktree` for manifest-owned trees. Read each modified-file diff and every extra path before running the same command with `apply`. The tree declaration supplies the prune authority, so the carried-instruction-file guard does not apply to this fully owned content.
Expand Down
Loading