@ferris1225/pi-subagents 4.3.3 → 4.3.4
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 +5 -0
- package/README.md +17 -16
- package/agents/artisan.md +1 -1
- package/agents/sentinel.md +1 -1
- package/agents/steward.md +1 -1
- package/package.json +1 -1
- package/src/config.ts +1 -1
- package/src/prompt.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,11 @@ Published versions of `@ferris1225/pi-subagents`. Unpublished numbers
|
|
|
4
4
|
(`4.2.3`, `4.2.6`, `4.2.9`–`4.2.11`) never shipped on npm; their changes
|
|
5
5
|
landed in the next published release.
|
|
6
6
|
|
|
7
|
+
## 4.3.4
|
|
8
|
+
|
|
9
|
+
- Keep artisan, steward, and sentinel fully usable when Ferris skills are absent.
|
|
10
|
+
Installed matching skills add deeper guidance but are optional and never block a role.
|
|
11
|
+
|
|
7
12
|
## 4.3.3
|
|
8
13
|
|
|
9
14
|
- Add `sentinel`, a concise read-only adversarial reviewer that runs after cleanup,
|
package/README.md
CHANGED
|
@@ -12,10 +12,9 @@ once and your main agent delegates on its own.
|
|
|
12
12
|
|
|
13
13
|
## What's new
|
|
14
14
|
|
|
15
|
-
**4.3.
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
rules remain canonical in skills.
|
|
15
|
+
**4.3.4** — makes Ferris skills optional enhancements instead of runtime
|
|
16
|
+
requirements. Artisan, steward, and sentinel remain fully operational from their
|
|
17
|
+
standalone role prompts when users have no Ferris skills installed.
|
|
19
18
|
See [CHANGELOG.md](./CHANGELOG.md).
|
|
20
19
|
|
|
21
20
|
## Contents
|
|
@@ -84,13 +83,13 @@ directly when you want exact control.
|
|
|
84
83
|
| `scout` | Read-only | Broad or unfamiliar code reconnaissance and external research. Returns compact file citations or source URLs as leads, not proof. |
|
|
85
84
|
| `artisan` | Full | One substantial primary change—implementation, fix, refactor, test, or docs—through root cause, affected verification, and local hygiene. |
|
|
86
85
|
| `steward` | Full | One final cleanup and cross-cutting docs/comment sync pass after a broad or multi-writer change. |
|
|
87
|
-
| `sentinel` | Review-only | A post-cleanup adversarial review
|
|
86
|
+
| `sentinel` | Review-only | A post-cleanup adversarial review using standalone evidence gates plus any matching Ferris skills; reports only evidence-backed defects and concrete test gaps. |
|
|
88
87
|
|
|
89
|
-
Role prompts
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
88
|
+
Role prompts are standalone: they embed root-cause-first diagnosis, meaningful test
|
|
89
|
+
evidence, bounded cleanup, and evidence-only review. Optional Ferris skills remain
|
|
90
|
+
the canonical source of deeper language, platform, debugging, testing, and audit
|
|
91
|
+
guidance. Artisan and sentinel load matching skills when available; steward uses
|
|
92
|
+
`ferris-audit`; a missing skill never blocks a role or changes its ownership contract.
|
|
94
93
|
|
|
95
94
|
Custom roles join them with a Markdown file (see [Custom agents](#custom-agents)).
|
|
96
95
|
|
|
@@ -139,10 +138,11 @@ tests, docs, comments, targeted checks, and local hygiene. Scout owns broad code
|
|
|
139
138
|
mapping or external research and stays read-only.
|
|
140
139
|
|
|
141
140
|
With the default team, every commit ends in one order: cleanup -> `sentinel`. A
|
|
142
|
-
focused diff gets
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
141
|
+
focused diff gets a bounded cleanup pass inline; a broad or multi-writer diff gets
|
|
142
|
+
one `steward` pass that attacks touched dead code, duplication, tangled conditionals,
|
|
143
|
+
needless layers, and spaghetti growth without widening into a repo refactor.
|
|
144
|
+
Sentinel then reviews the cleaned diff with its standalone evidence gates plus any
|
|
145
|
+
available matching skills.
|
|
146
146
|
A review-driven edit repeats that sequence once; unresolved findings block the
|
|
147
147
|
commit. Main inspects the final diff and runs the final gate.
|
|
148
148
|
|
|
@@ -316,8 +316,9 @@ search snippets, records material dates/versions, and marks uncertainty.
|
|
|
316
316
|
|
|
317
317
|
`sentinel` has an explicit retrieval/documentation list plus a portable shell
|
|
318
318
|
slot for Git inspection and the smallest proving check. It is pinned to `shared`
|
|
319
|
-
so it sees the current uncommitted diff. Its concise prompt
|
|
320
|
-
skills, preserves their owners, and forbids mutation;
|
|
319
|
+
so it sees the current uncommitted diff. Its concise prompt uses matching available
|
|
320
|
+
Ferris skills, preserves their owners, and forbids mutation; missing skills do not
|
|
321
|
+
block review. This is a review contract,
|
|
321
322
|
not a hard shell sandbox.
|
|
322
323
|
|
|
323
324
|
## Configuration
|
package/agents/artisan.md
CHANGED
|
@@ -7,7 +7,7 @@ You own one primary change phase: implementation, fix, refactor, test, or substa
|
|
|
7
7
|
|
|
8
8
|
## Rules
|
|
9
9
|
|
|
10
|
-
-
|
|
10
|
+
- Use matching ferris skills when available: `ferris-debug` for unexplained failures, `ferris-tests` for test changes, and the relevant language or platform skill. Missing skills are not a blocker; the rules below are the fallback contract.
|
|
11
11
|
- For a reported defect or failure, inspect current behavior, confirm the defect before editing, and establish its root cause; a disproved issue means zero edits.
|
|
12
12
|
- Make the smallest coherent root-cause change. Preserve unrelated work and existing conventions; avoid speculative abstractions and unrelated cleanup.
|
|
13
13
|
- Own the complete primary change plus directly affected tests, README/docs, comments, and local diff hygiene. Remove debug output, dead code, stale comments, and other debris introduced in your scope.
|
package/agents/sentinel.md
CHANGED
|
@@ -10,7 +10,7 @@ You own one adversarial final-review phase after cleanup. The brief is your only
|
|
|
10
10
|
## Rules
|
|
11
11
|
|
|
12
12
|
- Inspect the complete diff, untracked files, affected callers, and claimed checks. Attack behavior, trust boundaries, failure and cancellation paths, concurrency, portability, and tests.
|
|
13
|
-
-
|
|
13
|
+
- Use only matching ferris skills when available. Missing skills are not a blocker; this prompt is the fallback contract. Preserve ownership: ferris-audit/steward owns cleanup; the implementation owner owns fixes and test mutations. Do not duplicate either.
|
|
14
14
|
- Work read-only. Run only the smallest targeted check needed to prove a suspected defect. Never edit, stage, commit, push, publish, tag, or release.
|
|
15
15
|
- Report only actionable findings, highest severity first: `SEVERITY path:line — failure scenario; evidence; smallest fix`.
|
|
16
16
|
- No nits, praise, vague risks, or inspection narrative. If none, output `No findings.` Add only concrete missing verification that could hide a regression. Stay under 30 lines.
|
package/agents/steward.md
CHANGED
|
@@ -7,7 +7,7 @@ You own one final hygiene phase after primary writing has finished and before se
|
|
|
7
7
|
|
|
8
8
|
## Rules
|
|
9
9
|
|
|
10
|
-
-
|
|
10
|
+
- Use `ferris-audit` when available and apply its automatic pre-commit tier. Missing skills are not a blocker; the rules below are the fallback contract and must not widen into repo-wide cleanup.
|
|
11
11
|
- Require a named completed scope such as an uncommitted diff or Git range. Start there; never repeat implementation or reconnaissance, and stop if primary writing is still active.
|
|
12
12
|
- Hunt hard inside the touched scope: dead or unreachable code, unused imports/exports, duplicated facts or branches, debug residue, stale comments, one-off flags, tangled conditionals, pass-through wrappers, cast/optional fallback sprawl, feature logic in shared paths, and growth toward 1000-line files.
|
|
13
13
|
- Prefer deleting branches, state, and layers; otherwise reuse the canonical helper. Never merely move spaghetti. Prove every cut has no live consumer, and keep uncertain dynamic behavior, public APIs, persisted formats, and compatibility.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ferris1225/pi-subagents",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.4",
|
|
4
4
|
"description": "A managed sub-agent team for pi: scout, artisan, steward, and sentinel roles, durable threads, model fallback, and Git worktree isolation.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
package/src/config.ts
CHANGED
|
@@ -78,7 +78,7 @@ export const AGENT_PROFILES: Record<(typeof BUILTIN_AGENT_NAMES)[number], AgentP
|
|
|
78
78
|
},
|
|
79
79
|
sentinel: {
|
|
80
80
|
summary: "adversarial review",
|
|
81
|
-
remark: "Challenges every cleaned pre-commit diff
|
|
81
|
+
remark: "Challenges every cleaned pre-commit diff with standalone evidence gates plus available matching skills; follows artisan's model with max thinking by default.",
|
|
82
82
|
},
|
|
83
83
|
};
|
|
84
84
|
|
package/src/prompt.ts
CHANGED
|
@@ -113,7 +113,7 @@ export function buildDelegationDirective(
|
|
|
113
113
|
...(hasScout ? ["`scout`: read-only broad code mapping or external research; return file/source citations as leads, not proof."] : []),
|
|
114
114
|
...(hasArtisan ? ["`artisan`: one substantial primary change; own root cause, implementation, affected tests/docs, and targeted checks."] : []),
|
|
115
115
|
...(hasSteward ? ["`steward`: final cleanup/docs sync for a completed broad or multi-writer diff; keep focused hygiene inline."] : []),
|
|
116
|
-
...(hasSentinel ? ["`sentinel`: read-only post-cleanup review; use matching skills
|
|
116
|
+
...(hasSentinel ? ["`sentinel`: read-only post-cleanup review; use available matching skills, but never block on their absence; report only evidenced defects."] : []),
|
|
117
117
|
...(hasSentinel
|
|
118
118
|
? [`Before every commit: cleanup -> sentinel review. ${hasSteward ? "Use steward once only for broad or multi-writer diffs" : "Keep cleanup inline"}. Then dispatch sentinel on the final diff and check evidence. After review fixes, clean and review once more; findings block commit.`]
|
|
119
119
|
: []),
|