pi-gauntlet 7.14.0 → 7.15.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/CHANGELOG.md +6 -0
- package/README.md +2 -2
- package/package.json +1 -1
- package/skills/forge-skill/SKILL.md +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v7.15.0 - 2026-10-18
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- **forge-skill covers repo-routed files and adds the No history rule.** The `description` names a file the repo's `AGENTS.md` or `CLAUDE.md` routes to the skill, so a consumer declares procedure files with one always-on bullet instead of an overrides key; `## Authoring rules` gains "No history": an added or changed line carries no date or narration of a rule's past, and a rule edited inside a history section moves to its topic section with the history section deleted in the same edit (#66).
|
|
8
|
+
|
|
3
9
|
## v7.14.0 - 2026-10-17
|
|
4
10
|
|
|
5
11
|
### Added
|
package/README.md
CHANGED
|
@@ -179,7 +179,7 @@ On both harnesses, `gatekeep-pr` uses the same temporary continuation record
|
|
|
179
179
|
and action-scoped consent protocol; Claude Code uses native file operations
|
|
180
180
|
and a checklist when pi's tracker is absent. Native tool permissions still apply.
|
|
181
181
|
`forge-skill` is the authoring skill for skills, personas, prompt templates,
|
|
182
|
-
|
|
182
|
+
slash commands, and files the repo routes to it under
|
|
183
183
|
gauntlet's conventions (imperative voice, minimal diff, low conditionality,
|
|
184
184
|
extraction over 500 lines); Claude Code namespaces plugin skills, so it lists
|
|
185
185
|
as `/gauntlet:forge-skill` and coexists with the skill-authoring skill of
|
|
@@ -290,7 +290,7 @@ exact repo folder* in interactive Claude Code. Trusting a parent folder,
|
|
|
290
290
|
|
|
291
291
|
## Project-specific overrides
|
|
292
292
|
|
|
293
|
-
The gauntlet overrides file is the one place a repo tunes gauntlet's Markdown surface: skills read it as instructions, and `gauntlet-spec-index` reads `## Spec index`. Discovery checks `.pi/gauntlet-overrides.md`, `<repo root>/gauntlet-overrides.md`, then `<repo root>/doc/gauntlet-overrides.md`; first found wins, never merged (`<repo root>` is `git rev-parse --show-toplevel`, or the current directory outside a repo). `## conventions` applies to every skill without a relevance judgment; `## <skill-name>` applies to that skill's steps and wins over conflicting conventions. Missing or empty conventions adds no rules; a lower-priority file cannot supplement the selected file.
|
|
293
|
+
The gauntlet overrides file is the one place a repo tunes gauntlet's Markdown surface: skills read it as instructions, and `gauntlet-spec-index` reads `## Spec index`. Discovery checks `.pi/gauntlet-overrides.md`, `<repo root>/gauntlet-overrides.md`, then `<repo root>/doc/gauntlet-overrides.md`; first found wins, never merged (`<repo root>` is `git rev-parse --show-toplevel`, or the current directory outside a repo). `## conventions` applies to every skill without a relevance judgment; `## <skill-name>` applies to that skill's steps and wins over conflicting conventions. Missing or empty conventions adds no rules; a lower-priority file cannot supplement the selected file. A repo declares procedure files for `forge-skill` in its `AGENTS.md` (Claude Code: `CLAUDE.md`), not here, because the overrides file is read only after a skill loads - for example `Edits to projects/*/README.md follow /skill:forge-skill`.
|
|
294
294
|
|
|
295
295
|
### What you can tweak
|
|
296
296
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: forge-skill
|
|
3
|
-
description: Use when creating or editing a SKILL.md, a skill's reference file, an agent persona, a prompt template,
|
|
3
|
+
description: Use when creating or editing a SKILL.md, a skill's reference file, an agent persona, a prompt template, a slash command, or a file the repo's AGENTS.md or CLAUDE.md routes here, in pi or Claude Code - including one-line edits - or when such a file exceeds 500 lines, gains if/else branching, or drifts from imperative voice; the authoring skill for repos that follow gauntlet's conventions.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Forge Skill
|
|
@@ -35,6 +35,7 @@ These rules bind the lines an edit adds or changes. Leave other lines alone.
|
|
|
35
35
|
- Imperative voice. Write instructions as commands. Never "should", "consider", "you may want to", "it is recommended".
|
|
36
36
|
- Low conditionality. One path per step: branch only on a runtime fact the model can observe - a tool result, a file's presence, a settings value - never on the reader's judgment. Two branches is the ceiling; a third goes into a table, or for a skill a reference/ file.
|
|
37
37
|
- Minimal diff. A rule change touches the sentence that owns the rule, not the section. Never restate a rule in a second place; link the owner.
|
|
38
|
+
- No history. An instruction file states current rules only: an added or changed line carries no date, no "previously"/"formerly"/"as of" clause, and no narration of a rule's past - that goes to the commit body, the ticket, or the spec; a one-clause operational reason stays, and a date that is itself a rule (a freeze window) stays. The one exception to Minimal diff and to "Leave other lines alone": an edit that changes a rule inside a changelog, a dated-entry list, or a "previously" section moves that section's surviving rules into the section that owns their topic and deletes the history section in the same edit; a history section the edit does not touch stays. Example: `2025-03-02: builds now use the release profile because debug ran out of memory` under `## History` becomes `Build with the release profile (debug runs out of memory)` under `## Deploy`, and `## History` is deleted.
|
|
38
39
|
- Skills only: Oversized file. A change touching a file over 500 lines extracts the concern it touches - or the largest self-contained `##` section - into `reference/<topic>.md` in the same change, and leaves a one-line "read X now" pointer at the step that needs it.
|
|
39
40
|
- Recipe over prohibition. A shape or quality problem gets a statement of what the output is; a discipline problem gets one explicit rule. Never a list of things to avoid.
|
|
40
41
|
- No nuance clauses. "Unless it matters", "when appropriate", "if needed" reopen the decision; delete them or name the observable condition.
|
|
@@ -59,7 +60,7 @@ A persona is an `agents/<name>.md` file dispatched by name (pi-cohort `subagent(
|
|
|
59
60
|
## Edit procedure
|
|
60
61
|
|
|
61
62
|
1. Read the whole file.
|
|
62
|
-
2. Locate and edit the sentence that owns the rule you are changing (see Minimal diff).
|
|
63
|
+
2. Locate and edit the sentence that owns the rule you are changing (see Minimal diff; under No history, the history section it sits in).
|
|
63
64
|
3. Read the changed lines back against `## Authoring rules`.
|
|
64
65
|
4. Run wc -l; over 500 lines, a skill extracts per the oversized-file rule, a persona splits by job.
|
|
65
66
|
5. Skill, pi: run /reload. Persona, pi: nothing. Claude Code: start a new session.
|