@event4u/agent-config 9.5.0 → 9.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/CHANGELOG.md +84 -942
- package/README.md +17 -17
- package/dist/agent-src/README.md +2 -2
- package/dist/agent-src/commands/agents/audit.md +2 -3
- package/dist/agent-src/commands/agents/optimize.md +2 -3
- package/dist/agent-src/commands/agents/user/review.md +4 -5
- package/dist/agent-src/commands/agents/user/show.md +4 -5
- package/dist/agent-src/commands/agents/user/update.md +4 -5
- package/dist/agent-src/commands/agents/user.md +2 -3
- package/dist/agent-src/commands/analytics/prune.md +2 -3
- package/dist/agent-src/commands/analytics/show.md +2 -3
- package/dist/agent-src/commands/analyze/decision.md +2 -3
- package/dist/agent-src/commands/analyze/incident.md +2 -3
- package/dist/agent-src/commands/analyze/near-miss.md +2 -3
- package/dist/agent-src/commands/analyze/postmortem.md +2 -3
- package/dist/agent-src/commands/analyze/premortem.md +2 -3
- package/dist/agent-src/commands/analyze/reference-repo.md +2 -3
- package/dist/agent-src/commands/brand/identity.md +2 -3
- package/dist/agent-src/commands/brand/review.md +2 -3
- package/dist/agent-src/commands/brand/strategy.md +2 -3
- package/dist/agent-src/commands/brand/tokens.md +2 -3
- package/dist/agent-src/commands/brand/voice.md +2 -3
- package/dist/agent-src/commands/bug/fix.md +2 -3
- package/dist/agent-src/commands/bug/investigate.md +2 -3
- package/dist/agent-src/commands/challenge-me/vision.md +2 -3
- package/dist/agent-src/commands/challenge-me/with-docs.md +2 -3
- package/dist/agent-src/commands/chat-history/import.md +2 -3
- package/dist/agent-src/commands/commit/in-chunks.md +2 -3
- package/dist/agent-src/commands/context/create.md +2 -3
- package/dist/agent-src/commands/context/refactor.md +2 -3
- package/dist/agent-src/commands/cost/report.md +2 -3
- package/dist/agent-src/commands/council/analysis.md +2 -3
- package/dist/agent-src/commands/council/debate.md +2 -3
- package/dist/agent-src/commands/council/design.md +2 -3
- package/dist/agent-src/commands/council/optimize.md +2 -3
- package/dist/agent-src/commands/council/pr.md +2 -3
- package/dist/agent-src/commands/feature/dev.md +2 -3
- package/dist/agent-src/commands/feature/explore.md +2 -3
- package/dist/agent-src/commands/feature/plan.md +2 -3
- package/dist/agent-src/commands/feature/refactor.md +2 -3
- package/dist/agent-src/commands/feature/roadmap.md +2 -3
- package/dist/agent-src/commands/fix/ci.md +2 -3
- package/dist/agent-src/commands/fix/comments.md +2 -3
- package/dist/agent-src/commands/fix/pr-comments.md +2 -3
- package/dist/agent-src/commands/fix/quality.md +2 -3
- package/dist/agent-src/commands/fix/route.md +2 -3
- package/dist/agent-src/commands/fix/seeder.md +2 -3
- package/dist/agent-src/commands/ghostwriter/delete.md +2 -3
- package/dist/agent-src/commands/ghostwriter/fetch.md +2 -3
- package/dist/agent-src/commands/ghostwriter/list.md +2 -3
- package/dist/agent-src/commands/ghostwriter/show.md +2 -3
- package/dist/agent-src/commands/ghostwriter/write.md +2 -3
- package/dist/agent-src/commands/image/analyse.md +2 -3
- package/dist/agent-src/commands/image/create.md +2 -3
- package/dist/agent-src/commands/image/verify.md +2 -3
- package/dist/agent-src/commands/knowledge/cross-repo.md +2 -3
- package/dist/agent-src/commands/knowledge/forget.md +2 -3
- package/dist/agent-src/commands/knowledge/ingest.md +2 -3
- package/dist/agent-src/commands/knowledge/list.md +2 -3
- package/dist/agent-src/commands/memory/add.md +2 -3
- package/dist/agent-src/commands/memory/learn-low-impact.md +2 -3
- package/dist/agent-src/commands/module/create.md +2 -3
- package/dist/agent-src/commands/module/explore.md +2 -3
- package/dist/agent-src/commands/optimize/agents-dir.md +2 -3
- package/dist/agent-src/commands/optimize/project.md +2 -3
- package/dist/agent-src/commands/optimize/prompt.md +2 -3
- package/dist/agent-src/commands/optimize/skills.md +2 -3
- package/dist/agent-src/commands/override/create.md +2 -3
- package/dist/agent-src/commands/override/manage.md +2 -3
- package/dist/agent-src/commands/post-as/ghostwriter.md +2 -3
- package/dist/agent-src/commands/post-as/me.md +2 -3
- package/dist/agent-src/commands/pr/create/description-only.md +2 -3
- package/dist/agent-src/commands/pr/create.md +1 -1
- package/dist/agent-src/commands/profile/activate.md +2 -3
- package/dist/agent-src/commands/profile/deactivate.md +2 -3
- package/dist/agent-src/commands/profile/show.md +2 -3
- package/dist/agent-src/commands/project/analyze.md +2 -3
- package/dist/agent-src/commands/project/health.md +2 -3
- package/dist/agent-src/commands/research/deep.md +2 -3
- package/dist/agent-src/commands/research/report.md +2 -3
- package/dist/agent-src/commands/review/changes.md +2 -3
- package/dist/agent-src/commands/review/routing.md +2 -3
- package/dist/agent-src/commands/roadmap/ai-council.md +2 -3
- package/dist/agent-src/commands/roadmap/create.md +2 -3
- package/dist/agent-src/commands/roadmap/materialize.md +2 -3
- package/dist/agent-src/commands/roadmap/process-full.md +2 -3
- package/dist/agent-src/commands/roadmap/process-phase.md +2 -3
- package/dist/agent-src/commands/roadmap/process-step.md +2 -3
- package/dist/agent-src/commands/skill/preview.md +2 -3
- package/dist/agent-src/commands/skills/discover.md +2 -3
- package/dist/agent-src/commands/sync/gitignore/fix.md +3 -4
- package/dist/agent-src/commands/tdd/green.md +2 -3
- package/dist/agent-src/commands/tdd/red.md +2 -3
- package/dist/agent-src/commands/tdd/refactor.md +2 -3
- package/dist/agent-src/commands/team/adversarial.md +2 -3
- package/dist/agent-src/commands/team/review.md +2 -3
- package/dist/agent-src/commands/team-knowledge/bootstrap.md +2 -3
- package/dist/agent-src/commands/team-knowledge/consolidate.md +2 -3
- package/dist/agent-src/commands/tests/create.md +2 -3
- package/dist/agent-src/commands/tests/e2e-heal.md +2 -3
- package/dist/agent-src/commands/tests/e2e-plan.md +2 -3
- package/dist/agent-src/commands/tests/execute.md +2 -3
- package/dist/agent-src/commands/video/from-script.md +2 -3
- package/dist/agent-src/commands/video/from-song.md +2 -3
- package/dist/agent-src/commands/video/scene.md +2 -3
- package/dist/agent-src/commands/video/stitch.md +2 -3
- package/dist/agent-src/commands/video/storyboard.md +2 -3
- package/dist/agent-src/commands/worktree/cleanup.md +2 -3
- package/dist/agent-src/commands/worktree/create.md +2 -3
- package/dist/agent-src/commands/worktree/status.md +2 -3
- package/dist/agent-src/commands/worktree/verify.md +2 -3
- package/dist/agent-src/contexts/contracts/command-suggestion-flow.md +10 -0
- package/dist/agent-src/rules/downstream-changes.md +31 -1
- package/dist/agent-src/skills/agent-docs-writing/SKILL.md +34 -16
- package/dist/agent-src/skills/agents-md-thin-root/SKILL.md +9 -9
- package/dist/agent-src/templates/agents/agent-project-settings.example.yml +1 -1
- package/dist/agent-src/templates/github-workflows/doc-impact.yml +101 -0
- package/dist/discovery/deprecation-report.md +1 -1
- package/dist/discovery/discovery-manifest.json +113 -113
- package/dist/discovery/discovery-manifest.json.sha256 +1 -1
- package/dist/discovery/discovery-manifest.summary.md +1 -1
- package/dist/discovery/orphan-report.md +1 -1
- package/dist/discovery/packs.json +2 -2
- package/dist/discovery/trust-report.md +1 -1
- package/dist/discovery/workspaces.json +2 -2
- package/dist/mcp/awesome-mcp-servers.row.md +1 -1
- package/dist/mcp/mcp-cloudflare-catalogue.json +1 -1
- package/dist/mcp/registry-manifest.json +3 -3
- package/docs/CLAIMS.md +2 -1
- package/docs/archive/CHANGELOG-6.0.0-overview.md +953 -0
- package/docs/benchmark.md +33 -9
- package/docs/decisions/ADR-122-adversarial-verification-council.md +30 -0
- package/docs/decisions/ADR-123-runtime-security-scope-and-spawn-hardening.md +142 -0
- package/docs/decisions/INDEX.md +1 -0
- package/docs/guidelines/agent-infra/artifact-drafting-protocol-mechanics.md +26 -0
- package/docs/spawn-site-policy.md +72 -0
- package/docs/threat-model.md +2 -1
- package/package.json +2 -2
- package/src/agent-src/README.md +2 -2
- package/src/scripts/_lib/adversarial_bench_score.ts +106 -0
- package/src/scripts/_lib/spawn_env.ts +120 -0
- package/src/scripts/ai_council/clients.ts +6 -0
- package/src/scripts/bench_adversarial_council.ts +292 -0
- package/src/scripts/check_no_new_legacy_path.ts +2 -0
- package/src/scripts/check_source_pointer_freshness.ts +165 -0
- package/src/scripts/hooks/dispatch_hook.ts +5 -1
- package/src/scripts/hot_context_hook.ts +2 -0
- package/src/scripts/lint_readme_serial_comma.ts +169 -0
- package/src/scripts/roadmap_progress_hook.ts +2 -0
|
@@ -21,7 +21,7 @@ packs:
|
|
|
21
21
|
|
|
22
22
|
Use when:
|
|
23
23
|
- Editing `AGENTS.md` at the package root.
|
|
24
|
-
- Editing `
|
|
24
|
+
- Editing `src/agent-src/templates/AGENTS.md` (consumer-shipped template).
|
|
25
25
|
- Reviewing a PR that changes either file.
|
|
26
26
|
- Running `/optimize/agents`.
|
|
27
27
|
- A budget meter (`scripts/measure_augment_budget.ts`) flags the package-root AGENTS.md as the dominant cost.
|
|
@@ -29,7 +29,7 @@ Use when:
|
|
|
29
29
|
## Do NOT
|
|
30
30
|
|
|
31
31
|
- Edit `.github/copilot-instructions.md` with this skill (use `copilot-agents-optimization` instead).
|
|
32
|
-
- Edit other `.md` files under `.augment/`, `
|
|
32
|
+
- Edit other `.md` files under `.augment/`, `src/`, or `agents/` with this skill.
|
|
33
33
|
- Add a section to AGENTS.md without first checking whether an outboard target already exists in `agents/settings/contexts/` or `docs/contracts/`.
|
|
34
34
|
- Replace prose with a bare link `[label](path)` — every pointer needs a *why*-clause ≥ 60 chars or it does not count toward the 40 % ratio.
|
|
35
35
|
- Reuse the package-root anatomy in the consumer template — caps and target paths differ.
|
|
@@ -47,7 +47,7 @@ Every entry describes **what** the project does or **where** to learn more — n
|
|
|
47
47
|
| File | FAIL above | WARN above | Target |
|
|
48
48
|
|---|---|---|---|
|
|
49
49
|
| `AGENTS.md` (package root) | 3,000 chars | 2,800 chars | ≤ 2,800 |
|
|
50
|
-
| `
|
|
50
|
+
| `src/agent-src/templates/AGENTS.md` (consumer) | 2,500 chars | 2,300 chars | ≤ 2,300 |
|
|
51
51
|
|
|
52
52
|
Char-count is raw file size (`wc -c`), frontmatter included. Enforcement: `scripts/lint_agents_md.ts` (Phase 7), wired into the package's CI pipeline via the `lint-agents-md` task. WARN is a soft signal in CI; FAIL blocks merge.
|
|
53
53
|
|
|
@@ -85,7 +85,7 @@ Every substantive pointer specifies, on the same line or the immediately followi
|
|
|
85
85
|
|
|
86
86
|
## The contract — emergency-triage block
|
|
87
87
|
|
|
88
|
-
Every Thin-Root AGENTS.md MUST contain an **Emergency Triage** section verbatim from `
|
|
88
|
+
Every Thin-Root AGENTS.md MUST contain an **Emergency Triage** section verbatim from `src/agent-src/contexts/contracts/emergency-triage-block.md` (Phase 6.4 will create that file as the canonical source). The block lists the five questions a host agent answers from the root file alone when network / tool access is degraded:
|
|
89
89
|
|
|
90
90
|
1. What is this repository?
|
|
91
91
|
2. What language(s) does this repository accept?
|
|
@@ -99,22 +99,22 @@ Each answer must fit on one line. The block exists so the root never silently de
|
|
|
99
99
|
|
|
100
100
|
1. **Measure baseline.** `wc -c AGENTS.md` and `./scripts-run src/scripts/measure_augment_budget`. Record current char-count and the gap to 2,200 / 2,500.
|
|
101
101
|
2. **Inventory sections.** List every `## ` heading and its char-count. Mark each as `keep-inline` (Iron-Law-adjacent, ≤ 200 chars, no good outboard target) or `outboard-candidate` (longer-form prose, table-only sections, narrative).
|
|
102
|
-
3. **Identify outboard targets.** For each `outboard-candidate`, name the destination — `
|
|
102
|
+
3. **Identify outboard targets.** For each `outboard-candidate`, name the destination — `src/agent-src/contexts/`, `docs/contracts/`, an existing rule body, an existing skill body. Never invent a new top-level directory.
|
|
103
103
|
4. **Move content; insert pointer.** Cut the section into the target file. Replace it in AGENTS.md with a single substantive pointer per anatomy above. Verify the *why*-clause length.
|
|
104
104
|
5. **Re-measure.** `wc -c AGENTS.md` again. If above 2,200, repeat steps 2–4 on the next-largest section. Above 2,500 = must outboard further before commit.
|
|
105
105
|
6. **Validate pointer ratio.** Count non-blank lines and substantive-pointer lines. Ratio < 0.40 = collapse decorative or boilerplate lines into a single pointer or remove.
|
|
106
|
-
7. **Verify emergency-triage block.** Diff the in-file block against `
|
|
106
|
+
7. **Verify emergency-triage block.** Diff the in-file block against `src/agent-src/contexts/contracts/emergency-triage-block.md`. Drift = revert to canonical.
|
|
107
107
|
8. **Run lints.** `task lint-agents-md && task check-refs && task lint-skills`. All green before commit.
|
|
108
108
|
|
|
109
109
|
## Procedure — apply Thin-Root to consumer template
|
|
110
110
|
|
|
111
|
-
Same procedure, applied to `
|
|
111
|
+
Same procedure, applied to `src/agent-src/templates/AGENTS.md`. Hard cap shifts to 2,000 / 1,700. The consumer template intentionally lacks the package-self-references — its pointers target files that exist in the **consumer's** repo (`.augment/skills/`, `agents/settings/contexts/`, ...), not this package's authoring tree.
|
|
112
112
|
|
|
113
113
|
## Gotchas
|
|
114
114
|
|
|
115
|
-
- **Outboarding to a new top-level dir.** Inventing `agents/explainers/` or `docs/notes/` for the moved content silently widens the contract surface. Outboard only into `
|
|
115
|
+
- **Outboarding to a new top-level dir.** Inventing `agents/explainers/` or `docs/notes/` for the moved content silently widens the contract surface. Outboard only into `src/agent-src/contexts/`, `docs/contracts/`, an existing rule body, or an existing skill body.
|
|
116
116
|
- **Pointer-ratio inflation by decoration.** Adding boilerplate "Browse all skills" / "See also" links to lift the ratio above 40 % defeats the purpose. The lint counts only substantive pointers (with a *why*-clause ≥ 60 chars); decorative links get filtered out and the ratio drops back below threshold.
|
|
117
|
-
- **Emergency-triage drift.** Editing the in-file emergency-triage block instead of the canonical `
|
|
117
|
+
- **Emergency-triage drift.** Editing the in-file emergency-triage block instead of the canonical `src/agent-src/contexts/contracts/emergency-triage-block.md` causes the package-root and consumer-template versions to diverge silently. Always edit the canonical file and let the lint diff pull both back in sync.
|
|
118
118
|
- **Cap inversion under WARN.** A 2,250-char AGENTS.md (above 2,200 WARN, below 2,500 FAIL) is a yellow signal not a green one — every additional sentence raises the probability of the next FAIL. Treat WARN as the spend boundary, not a buffer.
|
|
119
119
|
- **Char-count includes frontmatter.** `wc -c` counts every byte including the YAML preamble, blank lines, and the trailing newline. Stripping a section to "look smaller" without re-running `wc -c` understates the true budget impact.
|
|
120
120
|
- **Path enumeration.** A run of three or more bare `` `path/to/dir/` `` bullets without *why*-clauses is the classic re-bloat pattern. The lint emits a WARN at ≥ 3 such lines. Collapse them into one capability-style pointer — see the recipe in [`agents-md-anatomy § Iron Law`](../../contexts/contracts/agents-md-anatomy.md#iron-law--capabilities-over-structure).
|
|
@@ -39,7 +39,7 @@ schema_version: 1
|
|
|
39
39
|
# CI guard: a release bump of `package.json` must update this value
|
|
40
40
|
# in lockstep — see scripts/check_template_pin_drift.ts (road-to-
|
|
41
41
|
# portable-runtime-and-update-check P3.3).
|
|
42
|
-
agent_config_version: "9.
|
|
42
|
+
agent_config_version: "9.7.0"
|
|
43
43
|
|
|
44
44
|
# --- Project identity ---
|
|
45
45
|
project:
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
# Doc-Impact Check — template shipped by agent-config
|
|
2
|
+
#
|
|
3
|
+
# Copy this file to `.github/workflows/doc-impact.yml` in the consumer
|
|
4
|
+
# project. It is the OPTIONAL CI backstop for the doc-follows-code
|
|
5
|
+
# discipline that already ships to you via projection:
|
|
6
|
+
#
|
|
7
|
+
# - rule `downstream-changes` § Doc-Impact — the same-change obligation
|
|
8
|
+
# - skill `agent-docs-writing` § Doc-Impact — the surface→doc procedure
|
|
9
|
+
#
|
|
10
|
+
# Those two are framework-agnostic and behavioral; they need no CI. This
|
|
11
|
+
# workflow adds a deterministic reminder: when a PR changes a PUBLIC
|
|
12
|
+
# SURFACE but touches no documentation, it flags the likely doc drift.
|
|
13
|
+
#
|
|
14
|
+
# Design (per the 2026-07-21 council): WARN-first, opt-in, with an
|
|
15
|
+
# explicit escape hatch — a gate that hard-fails on every surface change
|
|
16
|
+
# gets routinely overridden, which is worse than none. Flip STRICT=true
|
|
17
|
+
# below only once your team wants the hard gate.
|
|
18
|
+
#
|
|
19
|
+
# Framework-agnostic: it globs the changed-file paths, so it works for
|
|
20
|
+
# Laravel / Symfony / Next.js / Python / Go / … without per-stack tuning.
|
|
21
|
+
# Tune the PUBLIC_SURFACE / DOC globs to your repo layout.
|
|
22
|
+
#
|
|
23
|
+
# Escape hatch: put `[docs:not-needed]` in the PR title/body, or use a
|
|
24
|
+
# `refactor:`-prefixed PR title, when a surface changed but genuinely
|
|
25
|
+
# needs no doc edit. State the reason — do not edit a doc just to pass.
|
|
26
|
+
|
|
27
|
+
name: Doc-Impact Check
|
|
28
|
+
|
|
29
|
+
on:
|
|
30
|
+
pull_request:
|
|
31
|
+
types: [opened, synchronize, reopened, edited]
|
|
32
|
+
workflow_dispatch: {}
|
|
33
|
+
|
|
34
|
+
permissions:
|
|
35
|
+
contents: read
|
|
36
|
+
|
|
37
|
+
jobs:
|
|
38
|
+
doc-impact:
|
|
39
|
+
name: Public surface changed without a doc update?
|
|
40
|
+
runs-on: ubuntu-latest
|
|
41
|
+
steps:
|
|
42
|
+
- uses: actions/checkout@v4
|
|
43
|
+
with:
|
|
44
|
+
fetch-depth: 0
|
|
45
|
+
|
|
46
|
+
- name: Detect surface-vs-doc drift
|
|
47
|
+
env:
|
|
48
|
+
BASE_SHA: ${{ github.event.pull_request.base.sha }}
|
|
49
|
+
HEAD_SHA: ${{ github.event.pull_request.head.sha }}
|
|
50
|
+
PR_TITLE: ${{ github.event.pull_request.title }}
|
|
51
|
+
PR_BODY: ${{ github.event.pull_request.body }}
|
|
52
|
+
# Flip to "true" to make the drift a hard CI failure.
|
|
53
|
+
STRICT: "false"
|
|
54
|
+
run: |
|
|
55
|
+
set -euo pipefail
|
|
56
|
+
|
|
57
|
+
# Escape hatch — skip entirely on an explicit opt-out.
|
|
58
|
+
case "${PR_TITLE}${PR_BODY}" in
|
|
59
|
+
*"[docs:not-needed]"*|refactor:*|"refactor("*)
|
|
60
|
+
echo "Doc-Impact: escape hatch present — skipping." ; exit 0 ;;
|
|
61
|
+
esac
|
|
62
|
+
|
|
63
|
+
changed="$(git diff --name-only "${BASE_SHA}" "${HEAD_SHA}")"
|
|
64
|
+
echo "Changed files:"; echo "${changed}" | sed 's/^/ /'
|
|
65
|
+
|
|
66
|
+
# PUBLIC-SURFACE globs (extend for your stack).
|
|
67
|
+
surface="$(printf '%s\n' "${changed}" | grep -E \
|
|
68
|
+
-e '(^|/)routes/' \
|
|
69
|
+
-e '(^|/)(migrations|schema)/' \
|
|
70
|
+
-e 'openapi.*\.(ya?ml|json)$' \
|
|
71
|
+
-e '(^|/)(cli|commands|console)/' \
|
|
72
|
+
-e '(^|/)\.env\.example$' \
|
|
73
|
+
-e '(^|/)(config)/' \
|
|
74
|
+
|| true)"
|
|
75
|
+
|
|
76
|
+
# DOC globs — a change to any of these satisfies the obligation.
|
|
77
|
+
docs="$(printf '%s\n' "${changed}" | grep -E \
|
|
78
|
+
-e '\.md$' \
|
|
79
|
+
-e '(^|/)docs/' \
|
|
80
|
+
-e '(^|/)AGENTS\.md$' \
|
|
81
|
+
-e 'openapi.*\.(ya?ml|json)$' \
|
|
82
|
+
-e '(^|/)CHANGELOG' \
|
|
83
|
+
|| true)"
|
|
84
|
+
|
|
85
|
+
if [ -n "${surface}" ] && [ -z "${docs}" ]; then
|
|
86
|
+
echo "Public surface(s) changed with NO accompanying doc update:"
|
|
87
|
+
echo "${surface}" | sed 's/^/ /'
|
|
88
|
+
echo ""
|
|
89
|
+
echo "Update the doc that DESCRIBES the changed surface (README /"
|
|
90
|
+
echo "API reference / AGENTS.md / examples / CHANGELOG), per the"
|
|
91
|
+
echo "downstream-changes § Doc-Impact obligation. If no doc is"
|
|
92
|
+
echo "needed, add [docs:not-needed] to the PR with a one-line reason."
|
|
93
|
+
if [ "${STRICT}" = "true" ]; then
|
|
94
|
+
echo "::error::Doc-Impact drift (STRICT mode)."
|
|
95
|
+
exit 1
|
|
96
|
+
fi
|
|
97
|
+
echo "::warning::Public surface changed without a doc update — review Doc-Impact."
|
|
98
|
+
exit 0
|
|
99
|
+
fi
|
|
100
|
+
|
|
101
|
+
echo "Doc-Impact: OK — no undocumented public-surface change."
|