@jaggerxtrm/specialists 3.9.0 → 3.10.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/config/mandatory-rules/README.md +4 -0
- package/config/mandatory-rules/gitnexus-required.md +12 -1
- package/config/mandatory-rules/serena-cheatsheet.md +41 -0
- package/config/specialists/debugger.specialist.json +2 -1
- package/config/specialists/executor.specialist.json +2 -1
- package/config/specialists/explorer.specialist.json +2 -1
- package/config/specialists/memory-processor.specialist.json +6 -1
- package/config/specialists/overthinker.specialist.json +2 -1
- package/config/specialists/planner.specialist.json +6 -1
- package/config/specialists/researcher.specialist.json +2 -1
- package/config/specialists/reviewer.specialist.json +2 -1
- package/config/specialists/specialists-creator.specialist.json +7 -1
- package/config/specialists/sync-docs.specialist.json +2 -1
- package/config/specialists/test-runner.specialist.json +2 -1
- package/dist/index.js +998 -533
- package/dist/lib.js +13219 -0
- package/dist/types/cli/attach.d.ts +2 -0
- package/dist/types/cli/attach.d.ts.map +1 -0
- package/dist/types/cli/clean.d.ts +2 -0
- package/dist/types/cli/clean.d.ts.map +1 -0
- package/dist/types/cli/config.d.ts +2 -0
- package/dist/types/cli/config.d.ts.map +1 -0
- package/dist/types/cli/db.d.ts +2 -0
- package/dist/types/cli/db.d.ts.map +1 -0
- package/dist/types/cli/doctor.d.ts +15 -0
- package/dist/types/cli/doctor.d.ts.map +1 -0
- package/dist/types/cli/edit.d.ts +2 -0
- package/dist/types/cli/edit.d.ts.map +1 -0
- package/dist/types/cli/end.d.ts +2 -0
- package/dist/types/cli/end.d.ts.map +1 -0
- package/dist/types/cli/epic.d.ts +8 -0
- package/dist/types/cli/epic.d.ts.map +1 -0
- package/dist/types/cli/feed.d.ts +19 -0
- package/dist/types/cli/feed.d.ts.map +1 -0
- package/dist/types/cli/follow-up.d.ts +2 -0
- package/dist/types/cli/follow-up.d.ts.map +1 -0
- package/dist/types/cli/format-helpers.d.ts +108 -0
- package/dist/types/cli/format-helpers.d.ts.map +1 -0
- package/dist/types/cli/help.d.ts +2 -0
- package/dist/types/cli/help.d.ts.map +1 -0
- package/dist/types/cli/init.d.ts +10 -0
- package/dist/types/cli/init.d.ts.map +1 -0
- package/dist/types/cli/install.d.ts +2 -0
- package/dist/types/cli/install.d.ts.map +1 -0
- package/dist/types/cli/list-rules.d.ts +2 -0
- package/dist/types/cli/list-rules.d.ts.map +1 -0
- package/dist/types/cli/list.d.ts +13 -0
- package/dist/types/cli/list.d.ts.map +1 -0
- package/dist/types/cli/memory.d.ts +2 -0
- package/dist/types/cli/memory.d.ts.map +1 -0
- package/dist/types/cli/merge.d.ts +79 -0
- package/dist/types/cli/merge.d.ts.map +1 -0
- package/dist/types/cli/models.d.ts +2 -0
- package/dist/types/cli/models.d.ts.map +1 -0
- package/dist/types/cli/node.d.ts +2 -0
- package/dist/types/cli/node.d.ts.map +1 -0
- package/dist/types/cli/poll.d.ts +25 -0
- package/dist/types/cli/poll.d.ts.map +1 -0
- package/dist/types/cli/ps.d.ts +2 -0
- package/dist/types/cli/ps.d.ts.map +1 -0
- package/dist/types/cli/quickstart.d.ts +2 -0
- package/dist/types/cli/quickstart.d.ts.map +1 -0
- package/dist/types/cli/result.d.ts +2 -0
- package/dist/types/cli/result.d.ts.map +1 -0
- package/dist/types/cli/resume.d.ts +2 -0
- package/dist/types/cli/resume.d.ts.map +1 -0
- package/dist/types/cli/run.d.ts +2 -0
- package/dist/types/cli/run.d.ts.map +1 -0
- package/dist/types/cli/script.d.ts +23 -0
- package/dist/types/cli/script.d.ts.map +1 -0
- package/dist/types/cli/serve.d.ts +17 -0
- package/dist/types/cli/serve.d.ts.map +1 -0
- package/dist/types/cli/setup.d.ts +2 -0
- package/dist/types/cli/setup.d.ts.map +1 -0
- package/dist/types/cli/status.d.ts +4 -0
- package/dist/types/cli/status.d.ts.map +1 -0
- package/dist/types/cli/steer.d.ts +2 -0
- package/dist/types/cli/steer.d.ts.map +1 -0
- package/dist/types/cli/stop.d.ts +2 -0
- package/dist/types/cli/stop.d.ts.map +1 -0
- package/dist/types/cli/tmux-utils.d.ts +23 -0
- package/dist/types/cli/tmux-utils.d.ts.map +1 -0
- package/dist/types/cli/validate.d.ts +11 -0
- package/dist/types/cli/validate.d.ts.map +1 -0
- package/dist/types/cli/version.d.ts +2 -0
- package/dist/types/cli/version.d.ts.map +1 -0
- package/dist/types/cli/view.d.ts +2 -0
- package/dist/types/cli/view.d.ts.map +1 -0
- package/dist/types/constants.d.ts +140 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/lib.d.ts +5 -0
- package/dist/types/lib.d.ts.map +1 -0
- package/dist/types/pi/backendMap.d.ts +3 -0
- package/dist/types/pi/backendMap.d.ts.map +1 -0
- package/dist/types/pi/session.d.ts +209 -0
- package/dist/types/pi/session.d.ts.map +1 -0
- package/dist/types/server.d.ts +10 -0
- package/dist/types/server.d.ts.map +1 -0
- package/dist/types/specialist/beads.d.ts +60 -0
- package/dist/types/specialist/beads.d.ts.map +1 -0
- package/dist/types/specialist/chain-identity.d.ts +18 -0
- package/dist/types/specialist/chain-identity.d.ts.map +1 -0
- package/dist/types/specialist/epic-lifecycle.d.ts +57 -0
- package/dist/types/specialist/epic-lifecycle.d.ts.map +1 -0
- package/dist/types/specialist/epic-readiness.d.ts +55 -0
- package/dist/types/specialist/epic-readiness.d.ts.map +1 -0
- package/dist/types/specialist/epic-reconciler.d.ts +35 -0
- package/dist/types/specialist/epic-reconciler.d.ts.map +1 -0
- package/dist/types/specialist/hooks.d.ts +44 -0
- package/dist/types/specialist/hooks.d.ts.map +1 -0
- package/dist/types/specialist/job-control.d.ts +29 -0
- package/dist/types/specialist/job-control.d.ts.map +1 -0
- package/dist/types/specialist/job-file-output.d.ts +4 -0
- package/dist/types/specialist/job-file-output.d.ts.map +1 -0
- package/dist/types/specialist/job-root.d.ts +21 -0
- package/dist/types/specialist/job-root.d.ts.map +1 -0
- package/dist/types/specialist/jobRegistry.d.ts +69 -0
- package/dist/types/specialist/jobRegistry.d.ts.map +1 -0
- package/dist/types/specialist/json-output.d.ts +2 -0
- package/dist/types/specialist/json-output.d.ts.map +1 -0
- package/dist/types/specialist/loader.d.ts +48 -0
- package/dist/types/specialist/loader.d.ts.map +1 -0
- package/dist/types/specialist/mandatory-rules.d.ts +41 -0
- package/dist/types/specialist/mandatory-rules.d.ts.map +1 -0
- package/dist/types/specialist/memory-retrieval.d.ts +34 -0
- package/dist/types/specialist/memory-retrieval.d.ts.map +1 -0
- package/dist/types/specialist/model-display.d.ts +4 -0
- package/dist/types/specialist/model-display.d.ts.map +1 -0
- package/dist/types/specialist/node-contract.d.ts +343 -0
- package/dist/types/specialist/node-contract.d.ts.map +1 -0
- package/dist/types/specialist/node-resolve.d.ts +5 -0
- package/dist/types/specialist/node-resolve.d.ts.map +1 -0
- package/dist/types/specialist/node-supervisor.d.ts +198 -0
- package/dist/types/specialist/node-supervisor.d.ts.map +1 -0
- package/dist/types/specialist/observability-db.d.ts +19 -0
- package/dist/types/specialist/observability-db.d.ts.map +1 -0
- package/dist/types/specialist/observability-sqlite.d.ts +218 -0
- package/dist/types/specialist/observability-sqlite.d.ts.map +1 -0
- package/dist/types/specialist/pipeline.d.ts +23 -0
- package/dist/types/specialist/pipeline.d.ts.map +1 -0
- package/dist/types/specialist/process-liveness.d.ts +2 -0
- package/dist/types/specialist/process-liveness.d.ts.map +1 -0
- package/dist/types/specialist/runner.d.ts +98 -0
- package/dist/types/specialist/runner.d.ts.map +1 -0
- package/dist/types/specialist/schema.d.ts +2875 -0
- package/dist/types/specialist/schema.d.ts.map +1 -0
- package/dist/types/specialist/script-runner.d.ts +47 -0
- package/dist/types/specialist/script-runner.d.ts.map +1 -0
- package/dist/types/specialist/supervisor.d.ts +142 -0
- package/dist/types/specialist/supervisor.d.ts.map +1 -0
- package/dist/types/specialist/templateEngine.d.ts +2 -0
- package/dist/types/specialist/templateEngine.d.ts.map +1 -0
- package/dist/types/specialist/timeline-events.d.ts +563 -0
- package/dist/types/specialist/timeline-events.d.ts.map +1 -0
- package/dist/types/specialist/timeline-query.d.ts +129 -0
- package/dist/types/specialist/timeline-query.d.ts.map +1 -0
- package/dist/types/specialist/worktree-gc.d.ts +24 -0
- package/dist/types/specialist/worktree-gc.d.ts.map +1 -0
- package/dist/types/specialist/worktree.d.ts +69 -0
- package/dist/types/specialist/worktree.d.ts.map +1 -0
- package/dist/types/tools/specialist/feed_specialist.tool.d.ts +51 -0
- package/dist/types/tools/specialist/feed_specialist.tool.d.ts.map +1 -0
- package/dist/types/tools/specialist/list_specialists.tool.d.ts +28 -0
- package/dist/types/tools/specialist/list_specialists.tool.d.ts.map +1 -0
- package/dist/types/tools/specialist/resume_specialist.tool.d.ts +46 -0
- package/dist/types/tools/specialist/resume_specialist.tool.d.ts.map +1 -0
- package/dist/types/tools/specialist/specialist_init.tool.d.ts +26 -0
- package/dist/types/tools/specialist/specialist_init.tool.d.ts.map +1 -0
- package/dist/types/tools/specialist/specialist_status.tool.d.ts +33 -0
- package/dist/types/tools/specialist/specialist_status.tool.d.ts.map +1 -0
- package/dist/types/tools/specialist/steer_specialist.tool.d.ts +38 -0
- package/dist/types/tools/specialist/steer_specialist.tool.d.ts.map +1 -0
- package/dist/types/tools/specialist/stop_specialist.tool.d.ts +31 -0
- package/dist/types/tools/specialist/stop_specialist.tool.d.ts.map +1 -0
- package/dist/types/tools/specialist/use_specialist.tool.d.ts +93 -0
- package/dist/types/tools/specialist/use_specialist.tool.d.ts.map +1 -0
- package/dist/types/utils/circuitBreaker.d.ts +19 -0
- package/dist/types/utils/circuitBreaker.d.ts.map +1 -0
- package/dist/types/utils/logger.d.ts +11 -0
- package/dist/types/utils/logger.d.ts.map +1 -0
- package/package.json +13 -2
|
@@ -3,6 +3,10 @@
|
|
|
3
3
|
Rule sets injected at the end of every specialist prompt at spawn time. Enforces
|
|
4
4
|
behaviors the model must follow regardless of the specific task.
|
|
5
5
|
|
|
6
|
+
> **Quick introspection:** `sp list-rules` prints the rule × specialist matrix.
|
|
7
|
+
> Filter with `sp list-rules --rule <id>` or `sp list-rules --specialist <name>`,
|
|
8
|
+
> machine output via `--json`.
|
|
9
|
+
|
|
6
10
|
## Layout (three tiers)
|
|
7
11
|
|
|
8
12
|
The loader reads and unions indexes from three paths, in this precedence:
|
|
@@ -2,4 +2,15 @@
|
|
|
2
2
|
name: gitnexus-required
|
|
3
3
|
kind: mandatory-rule
|
|
4
4
|
---
|
|
5
|
-
Use GitNexus
|
|
5
|
+
Use GitNexus before editing any function/class/method.
|
|
6
|
+
|
|
7
|
+
Tools (prefer MCP; fall back to CLI if MCP unavailable):
|
|
8
|
+
- Blast radius before edit: `gitnexus_impact({target, direction:"upstream"})` or `npx gitnexus impact <target>`. STOP and warn if HIGH/CRITICAL.
|
|
9
|
+
- Symbol callers/callees: `gitnexus_context({name})` or `npx gitnexus context <name>`.
|
|
10
|
+
- Concept search: `gitnexus_query({query})` or `npx gitnexus query "<text>"`.
|
|
11
|
+
- Pre-commit scope check: `gitnexus_detect_changes()` (MCP only — fallback: `git diff --stat`).
|
|
12
|
+
|
|
13
|
+
Rules:
|
|
14
|
+
- Run impact for every symbol you modify; never edit without it.
|
|
15
|
+
- Never rename via find-replace — use `gitnexus_rename({symbol_name, new_name, dry_run:true})` first.
|
|
16
|
+
- If index is stale, ask the user to run `npx gitnexus analyze`.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: serena-cheatsheet
|
|
3
|
+
kind: mandatory-rule
|
|
4
|
+
rules:
|
|
5
|
+
- id: prefer-serena
|
|
6
|
+
level: required
|
|
7
|
+
text: "Prefer Serena tools over read/grep/find/ls for source code (.ts .py .go .rs .js etc.). Native tools fine for .md .json .yaml configs."
|
|
8
|
+
- id: get_symbols_overview
|
|
9
|
+
level: required
|
|
10
|
+
text: "get_symbols_overview <path> — symbol skeleton of a file or dir (~300 tokens vs reading the whole file). Use first to pick what you actually need."
|
|
11
|
+
- id: find_symbol
|
|
12
|
+
level: required
|
|
13
|
+
text: "find_symbol <name_path> — fetch one symbol's body (or just signature). Drop-in replacement for read-then-scan-for-function workflows."
|
|
14
|
+
- id: find_referencing_symbols
|
|
15
|
+
level: required
|
|
16
|
+
text: "find_referencing_symbols <name_path> — who calls or uses this symbol across the codebase."
|
|
17
|
+
- id: search_for_pattern
|
|
18
|
+
level: required
|
|
19
|
+
text: "search_for_pattern <regex> — replaces grep. Returns matches with file:line context."
|
|
20
|
+
- id: find_file
|
|
21
|
+
level: required
|
|
22
|
+
text: "find_file <glob> and list_dir <path> — replace native find and ls."
|
|
23
|
+
- id: read_file
|
|
24
|
+
level: required
|
|
25
|
+
text: "read_file <path> — full or sliced read. Use only when navigation tools are not enough; check get_symbols_overview first."
|
|
26
|
+
- id: replace_symbol_body
|
|
27
|
+
level: required
|
|
28
|
+
text: "replace_symbol_body <name_path> — swap a function or class body in place. Use instead of Edit string-match for symbol-scoped changes (MEDIUM+ permission)."
|
|
29
|
+
- id: insert_around_symbol
|
|
30
|
+
level: required
|
|
31
|
+
text: "insert_before_symbol / insert_after_symbol <name_path> — add adjacent code such as imports or helpers (MEDIUM+ permission)."
|
|
32
|
+
- id: rename_symbol
|
|
33
|
+
level: required
|
|
34
|
+
text: "rename_symbol <name_path> <new_name> — refactor-safe across all references. Use instead of find-and-replace (MEDIUM+ permission)."
|
|
35
|
+
- id: replace_content
|
|
36
|
+
level: required
|
|
37
|
+
text: "replace_content <path> <pattern> <replacement> — line-range or regex edits when no symbol target fits (MEDIUM+ permission)."
|
|
38
|
+
- id: cost-rule
|
|
39
|
+
level: info
|
|
40
|
+
text: "Rule of thumb: read of a 500-line source file ~5000 tokens; find_symbol on one function ~200 tokens (~25x cheaper). Use get_symbols_overview before deciding."
|
|
41
|
+
---
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
"execution": {
|
|
18
18
|
"mode": "tool",
|
|
19
19
|
"model": "anthropic/claude-sonnet-4-6",
|
|
20
|
+
"fallback_model": "google-gemini-cli/gemini-3.1-pro-preview",
|
|
20
21
|
"timeout_ms": 0,
|
|
21
22
|
"stall_timeout_ms": 120000,
|
|
22
23
|
"response_format": "markdown",
|
|
@@ -62,6 +63,11 @@
|
|
|
62
63
|
},
|
|
63
64
|
"beads_integration": "auto",
|
|
64
65
|
"stall_detection": {},
|
|
65
|
-
"beads_write_notes": true
|
|
66
|
+
"beads_write_notes": true,
|
|
67
|
+
"mandatory_rules": {
|
|
68
|
+
"template_sets": [
|
|
69
|
+
"serena-cheatsheet"
|
|
70
|
+
]
|
|
71
|
+
}
|
|
66
72
|
}
|
|
67
73
|
}
|