@dzhechkov/keysarium 1.3.0 → 1.4.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/README.md +22 -9
- package/package.json +1 -1
- package/src/utils.js +1 -1
- package/templates/.claude/commands/brain-export.md +2 -0
- package/templates/.claude/commands/bto-benchmark.md +302 -0
- package/templates/.claude/commands/harvest.md +28 -46
- package/templates/.claude/rules/trust-tiers.md +1 -0
- package/templates/.claude/skills/knowledge-extractor/SKILL.md +254 -0
- package/templates/.claude/skills/knowledge-extractor/modules/01-extract.md +188 -0
- package/templates/.claude/skills/knowledge-extractor/modules/02-classify.md +99 -0
- package/templates/.claude/skills/knowledge-extractor/modules/03-gate.md +150 -0
- package/templates/.claude/skills/knowledge-extractor/modules/04-integrate.md +159 -0
- package/templates/.claude/skills/knowledge-extractor/references/artifact-categories.md +100 -0
- package/templates/.claude/skills/knowledge-extractor/references/maturity-model.md +94 -0
- package/templates/.claude/skills/knowledge-extractor/references/quality-gates.md +98 -0
- package/templates/.claude/skills/knowledge-extractor/templates/artifact-card.md +63 -0
- package/templates/.claude/skills/knowledge-extractor/templates/harvest-report.md +102 -0
- package/templates/CLAUDE.md +22 -8
- package/templates/docs/continuous-learning-guide.md +622 -0
- package/templates/docs/improvement-directions.md +8 -4
- package/templates/docs/keysarium-core/02-functionality.md +3 -1
- package/templates/docs/skills-bto/01-deployment-guide.md +1 -1
- package/templates/docs/skills-bto/02-admin-guide.md +4 -1
- package/templates/docs/skills-bto/03-user-guide.md +4 -3
- package/templates/docs/skills-bto/04-infrastructure-requirements.md +2 -1
- package/templates/docs/skills-bto/05-architecture.md +11 -11
- package/templates/docs/skills-bto/06-user-flows.md +2 -1
- package/templates/lib/dream-engine.md +1 -1
- package/templates/lib/memory-protocol.md +6 -2
- package/templates/lib/reward-tracker.md +6 -3
package/README.md
CHANGED
|
@@ -28,10 +28,10 @@ After installation, open Claude Code in your project directory and start using s
|
|
|
28
28
|
|
|
29
29
|
| Component | Count | Description |
|
|
30
30
|
|-----------|-------|-------------|
|
|
31
|
-
| **Skills** |
|
|
32
|
-
| **Commands** |
|
|
33
|
-
| **Rules** |
|
|
34
|
-
| **Shards** |
|
|
31
|
+
| **Skills** | 8 | `explore`, `frontend-design`, `goap-research`, `presentation-storyteller`, `problem-solver`, `reverse-engineering`, `bto`, `knowledge-extractor` |
|
|
32
|
+
| **Commands** | 24 | `/casarium`, `/new-research`, `/parallel-research`, `/discovery`, `/explore-case`, `/research`, `/cjm-prototype`, `/solve`, `/architecture-phase`, `/presentation`, `/harvest`, `/brain-export`, `/brain-import`, `/bto`, `/bto-build`, `/bto-test`, `/bto-optimize`, `/bto-benchmark`, `/feature-adr`, `/init-platform`, `/learning-stats`, `/dream`, `/workers`, `/verify-chain` |
|
|
33
|
+
| **Rules** | 16 | `research-quality`, `checkpoint-protocol`, `agent-swarm`, `domain-specific`, `anti-patterns`, `file-conventions`, `modular-reuse`, `feedback-loops`, `model-routing`, `trust-tiers`, `bto-quality-gates`, `background-workers`, `dream-cycles`, `reward-learning`, `witness-chain`, `feature-adr-conventions` |
|
|
34
|
+
| **Shards** | 9 | Context shards for each phase: `phase-0-discovery`, `phase-1-explore`, `phase-2-research`, `phase-25-cjm`, `phase-3-solve`, `phase-4-architecture`, `phase-5-presentation`, `bto-evaluation`, `feature-adr` |
|
|
35
35
|
| **Agent Templates** | 5 | `discovery-worker`, `research-worker`, `cjm-variant-worker`, `presentation-worker`, `parallel-research-orchestrator` |
|
|
36
36
|
| **Library** | 4 | `phase-utils`, `agent-patterns`, `skill-loader`, `domain-templates` |
|
|
37
37
|
| **Documentation** | 12 | Deployment, admin, user guide, infrastructure, architecture, flows (for Keysarium and BTO) |
|
|
@@ -255,16 +255,29 @@ Create a new file under `.claude/rules/`:
|
|
|
255
255
|
|
|
256
256
|
Rules are automatically loaded by Claude Code and enforced across all phases.
|
|
257
257
|
|
|
258
|
-
### Knowledge Harvesting
|
|
258
|
+
### Knowledge Harvesting (knowledge-extractor skill)
|
|
259
259
|
|
|
260
|
-
After completing research, extract reusable patterns:
|
|
260
|
+
After completing research, extract reusable patterns using the multi-agent knowledge-extractor:
|
|
261
261
|
|
|
262
262
|
```bash
|
|
263
|
-
/harvest researches/<slug>/
|
|
264
|
-
/harvest
|
|
263
|
+
/harvest researches/<slug>/ # Full harvest from one directory
|
|
264
|
+
/harvest researches/<slug>/ only patterns # Extract only patterns
|
|
265
|
+
/harvest all # Harvest from all researches
|
|
266
|
+
/harvest all only rules,templates # All researches, specific categories
|
|
267
|
+
/harvest features/my-feature/ # Harvest from a feature directory
|
|
265
268
|
```
|
|
266
269
|
|
|
267
|
-
|
|
270
|
+
**Pipeline:** Extract (5 parallel agents) → Classify (7 categories) → User Checkpoint → Gate (8 quality checks) → Integrate (auto-place)
|
|
271
|
+
|
|
272
|
+
| Stage | What Happens |
|
|
273
|
+
|-------|-------------|
|
|
274
|
+
| **Extract** | 5 parallel agents scan through different lenses: patterns, commands, rules, templates, snippets |
|
|
275
|
+
| **Classify** | Findings sorted into 7 categories (`skills`, `commands`, `hooks`, `rules`, `templates`, `patterns`, `snippets`) with cross-dedup |
|
|
276
|
+
| **User Review** | Numbered list of findings with granular control (`#N` commands to accept/reject/merge) |
|
|
277
|
+
| **Quality Gates** | 8 blocking gates in 2 passes: deterministic (G1-G2, G5-G7) + semantic via haiku (G3-G4, G8) |
|
|
278
|
+
| **Integrate** | Auto-placement into `.claude/` directories + `TOOLKIT_HARVEST.md` update + harvest report |
|
|
279
|
+
|
|
280
|
+
The skill is **domain-agnostic** — works in any project, not just Keysarium research pipelines. Optional integrations (reward learning, dream cycles, brain export) activate automatically when their infrastructure is present.
|
|
268
281
|
|
|
269
282
|
### Brain Portability (v1.1)
|
|
270
283
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dzhechkov/keysarium",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "AI Case Research Toolkit for Claude Code — full 7-phase pipeline with feature-adr, dream cycles, background workers, multi-platform support, and reward learning",
|
|
5
5
|
"main": "src/cli.js",
|
|
6
6
|
"bin": {
|
package/src/utils.js
CHANGED
|
@@ -218,7 +218,7 @@ function getTemplatesDir() {
|
|
|
218
218
|
// ===========================================================================
|
|
219
219
|
|
|
220
220
|
const COMPONENTS = {
|
|
221
|
-
skills: { src: '.claude/skills', label: 'Skills (
|
|
221
|
+
skills: { src: '.claude/skills', label: 'Skills (8 skill packs)', group: 'core' },
|
|
222
222
|
commands: { src: '.claude/commands', label: 'Commands (13 slash commands)', group: 'core' },
|
|
223
223
|
rules: { src: '.claude/rules', label: 'Rules (10 auto-loaded rules)', group: 'core' },
|
|
224
224
|
shards: { src: '.claude/shards', label: 'Shards (7 context shards)', group: 'core' },
|
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
# /bto-benchmark — Deterministic Benchmarking of a Skill or Command
|
|
2
|
+
|
|
3
|
+
## Usage
|
|
4
|
+
```
|
|
5
|
+
/bto-benchmark [path to skill directory or file]
|
|
6
|
+
```
|
|
7
|
+
|
|
8
|
+
## Parameters
|
|
9
|
+
- $ARGUMENTS — Path to a skill directory (`.claude/skills/<name>/`), a command file (`.claude/commands/<name>.md`), a rule file (`.claude/rules/<name>.md`), or any structured artifact. Optionally include "verbose" to show expanded per-section diagnostics for all layers.
|
|
10
|
+
|
|
11
|
+
## Protocol
|
|
12
|
+
|
|
13
|
+
### Step 1: Load Skill and Module
|
|
14
|
+
|
|
15
|
+
Read `.claude/skills/bto/SKILL.md`
|
|
16
|
+
Read `.claude/skills/bto/modules/benchmark.md`
|
|
17
|
+
Read `.claude/skills/bto/references/golden-samples.md`
|
|
18
|
+
|
|
19
|
+
### Step 2: Validate Input
|
|
20
|
+
|
|
21
|
+
If $ARGUMENTS is empty:
|
|
22
|
+
- Ask: "Provide a path to the skill directory or artifact file you want to benchmark."
|
|
23
|
+
- Stop and wait.
|
|
24
|
+
|
|
25
|
+
Resolve the artifact path from $ARGUMENTS:
|
|
26
|
+
- Strip any trailing slash
|
|
27
|
+
- If the path points to a directory → look for `SKILL.md` inside it as the primary file, but include all files in the directory for context
|
|
28
|
+
- If the path points to a file → use that file directly
|
|
29
|
+
- If the path does not exist → report "Path not found: [path]" and stop
|
|
30
|
+
|
|
31
|
+
### Step 3: Detect Artifact Type
|
|
32
|
+
|
|
33
|
+
Auto-detect from path pattern:
|
|
34
|
+
|
|
35
|
+
| Path Pattern | Detected Type |
|
|
36
|
+
|-------------|--------------|
|
|
37
|
+
| `.claude/skills/*/SKILL.md` or `.claude/skills/*/` | skill |
|
|
38
|
+
| `.claude/commands/*.md` | command |
|
|
39
|
+
| `.claude/rules/*.md` | rule |
|
|
40
|
+
| `.claude/agents/*.md` | agent |
|
|
41
|
+
| `researches/**/*.md` | research artifact |
|
|
42
|
+
|
|
43
|
+
If type cannot be determined from path → infer from file content structure.
|
|
44
|
+
|
|
45
|
+
### Step 4: Layer B0 — Golden Sample Comparison (Deterministic)
|
|
46
|
+
|
|
47
|
+
**Purpose:** Compare artifact structure against the canonical golden sample for its type. Zero LLM cost.
|
|
48
|
+
|
|
49
|
+
Load golden samples for the detected type from `references/golden-samples.md`.
|
|
50
|
+
|
|
51
|
+
**Procedure:**
|
|
52
|
+
|
|
53
|
+
1. Parse the artifact into a section tree (heading hierarchy, section lengths, ordering)
|
|
54
|
+
2. Parse the matching golden sample into the same section tree format
|
|
55
|
+
3. Compare across three structural axes:
|
|
56
|
+
|
|
57
|
+
**Axis 1 — Section Coverage:**
|
|
58
|
+
For each required section in the golden sample, check if the artifact contains a matching section (by heading text or semantic equivalent).
|
|
59
|
+
- `section_coverage = matched_sections / total_golden_sections`
|
|
60
|
+
|
|
61
|
+
**Axis 2 — Ordering Score:**
|
|
62
|
+
Compare the ordering of matched sections against the golden sample ordering.
|
|
63
|
+
- Use normalized Kendall tau distance: `ordering_score = 1 - (inversions / max_inversions)`
|
|
64
|
+
- If fewer than 3 matched sections → ordering_score = 1.0 (too few to meaningfully compare)
|
|
65
|
+
|
|
66
|
+
**Axis 3 — Proportion Score:**
|
|
67
|
+
For each matched section, compute the ratio of artifact section length to golden sample section length.
|
|
68
|
+
- `proportion_score = 1 - mean(|log(artifact_len / golden_len)|)` clamped to [0, 1]
|
|
69
|
+
- Measures whether sections are proportionally sized (not too bloated, not too thin)
|
|
70
|
+
|
|
71
|
+
**Display per-section MATCH/MISS table:**
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
Golden Section Status Artifact Section Size Ratio
|
|
75
|
+
─────────────────────────── ──────── ──────────────────────────── ──────────
|
|
76
|
+
## Overview MATCH ## Overview 1.2x
|
|
77
|
+
## Protocol MATCH ## Protocol 0.8x
|
|
78
|
+
## Anti-Patterns MATCH ## Anti-Patterns 1.0x
|
|
79
|
+
## Dependencies MISS — —
|
|
80
|
+
## Quick Start MATCH ## Quick Start 1.5x
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
**Golden Similarity Score:**
|
|
84
|
+
```
|
|
85
|
+
B0 = section_coverage * 0.50 + ordering_score * 0.25 + proportion_score * 0.25
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
**Gate:** If B0 < 0.30 → BLOCK immediately. The artifact's structure is too far from the expected form to benchmark meaningfully.
|
|
89
|
+
|
|
90
|
+
### Step 5: Layer B1 — Deterministic Test Suite
|
|
91
|
+
|
|
92
|
+
**Purpose:** Run all applicable deterministic tests for the detected artifact type. Zero LLM cost.
|
|
93
|
+
|
|
94
|
+
Execute all applicable checks from `benchmark.md` for the detected artifact type. These overlap with but extend the Layer 0 checks from `/bto-test`:
|
|
95
|
+
|
|
96
|
+
**Universal Checks (U1-U12):**
|
|
97
|
+
- U-01: File exists and is non-empty
|
|
98
|
+
- U-02: UTF-8 encoding valid
|
|
99
|
+
- U-03: Starts with level-1 heading
|
|
100
|
+
- U-04: No placeholder text (`[TODO]`, `[TBD]`, `<INSERT>`, `[PLACEHOLDER]`)
|
|
101
|
+
- U-05: No empty sections (heading with no content before next heading)
|
|
102
|
+
- U-06: Consistent heading hierarchy (no h1→h3 jumps)
|
|
103
|
+
- U-07: No broken internal cross-references
|
|
104
|
+
- U-08: File size within bounds (200B – 100KB per file)
|
|
105
|
+
- U-09: No trailing whitespace on lines
|
|
106
|
+
- U-10: Standard Markdown only (no HTML unless in code blocks)
|
|
107
|
+
- U-11: All code blocks properly closed
|
|
108
|
+
- U-12: No duplicate top-level sections
|
|
109
|
+
|
|
110
|
+
**Type-Specific Checks:**
|
|
111
|
+
- Skill: SK-01 through SK-16 (SKILL.md exists, required sections, modules/, references/, examples/, etc.)
|
|
112
|
+
- Command: CM-01 through CM-08 (Usage section, Parameters, Protocol steps, Checkpoint, Critical Rules, etc.)
|
|
113
|
+
- Rule: RL-01 through RL-06 (Table format, detection signals, fix actions, no contradictions, etc.)
|
|
114
|
+
- Agent: AG-01 through AG-04 (Model specified, isolation rules, naming convention, output format)
|
|
115
|
+
|
|
116
|
+
**Display per-test PASS/FAIL table:**
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
ID Check Result Note
|
|
120
|
+
─────── ────────────────────────────────── ──────── ────────────────────────────
|
|
121
|
+
U-01 File exists and is non-empty PASS 8.4 KB
|
|
122
|
+
U-02 UTF-8 encoding PASS
|
|
123
|
+
...
|
|
124
|
+
SK-01 SKILL.md exists at skill root PASS
|
|
125
|
+
SK-02 Has ## Overview section PASS
|
|
126
|
+
SK-03 Has ## Anti-Patterns section FAIL Section missing
|
|
127
|
+
...
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
**Test Pass Rate:**
|
|
131
|
+
```
|
|
132
|
+
B1 = passed_tests / total_applicable_tests
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
**Gate:** If B1 < 0.60 → BLOCK. Too many structural failures to proceed to consistency probing.
|
|
136
|
+
|
|
137
|
+
### Step 6: Layer B2 — Consistency Probe
|
|
138
|
+
|
|
139
|
+
**Purpose:** Measure evaluation stability by running identical prompts across multiple agents. Detects artifacts that produce inconsistent interpretations.
|
|
140
|
+
|
|
141
|
+
**Model:** haiku (cost-optimized)
|
|
142
|
+
|
|
143
|
+
**Spawn 3 parallel haiku agents with the identical evaluation prompt:**
|
|
144
|
+
|
|
145
|
+
Each agent receives the exact same prompt:
|
|
146
|
+
```
|
|
147
|
+
You are evaluating a Claude Code artifact for structural quality.
|
|
148
|
+
Rate these 4 dimensions (0.0 to 1.0 each, two decimal places):
|
|
149
|
+
1. STRUCTURE — Does the artifact follow a clear, logical organization?
|
|
150
|
+
2. CLARITY — Are instructions unambiguous and actionable?
|
|
151
|
+
3. COVERAGE — Does it address all aspects implied by its title/scope?
|
|
152
|
+
4. CONSISTENCY — Is the internal terminology and style uniform?
|
|
153
|
+
Output as JSON: {"structure": X.XX, "clarity": X.XX, "coverage": X.XX, "consistency": X.XX}
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
**Isolation:** Each agent evaluates independently. No cross-communication.
|
|
157
|
+
|
|
158
|
+
**After all 3 return, compute structural agreement:**
|
|
159
|
+
|
|
160
|
+
For each dimension:
|
|
161
|
+
```
|
|
162
|
+
agreement[dim] = 1 - (max(scores[dim]) - min(scores[dim]))
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
**Consistency Score:**
|
|
166
|
+
```
|
|
167
|
+
B2 = mean(agreement across all 4 dimensions)
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
**Interpretation:**
|
|
171
|
+
- B2 > 0.85 → HIGH consistency — the artifact is unambiguously structured
|
|
172
|
+
- B2 0.60-0.85 → MODERATE consistency — some sections are open to interpretation
|
|
173
|
+
- B2 < 0.60 → LOW consistency — the artifact is structurally ambiguous
|
|
174
|
+
|
|
175
|
+
**Display per-probe comparison:**
|
|
176
|
+
|
|
177
|
+
```
|
|
178
|
+
Dimension Probe 1 Probe 2 Probe 3 Range Agreement
|
|
179
|
+
──────────── ────────── ────────── ────────── ──────── ──────────
|
|
180
|
+
STRUCTURE 0.80 0.85 0.82 0.05 0.95
|
|
181
|
+
CLARITY 0.70 0.75 0.65 0.10 0.90
|
|
182
|
+
COVERAGE 0.60 0.70 0.55 0.15 0.85
|
|
183
|
+
CONSISTENCY 0.75 0.78 0.73 0.05 0.95
|
|
184
|
+
Mean: 0.91
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
No gate on B2 — consistency is informational and feeds into the aggregate score.
|
|
188
|
+
|
|
189
|
+
### Step 7: Layer B3 — Performance Metrics
|
|
190
|
+
|
|
191
|
+
**Purpose:** Quantify token efficiency and information density. Zero LLM cost.
|
|
192
|
+
|
|
193
|
+
**Metric 1 — Token Efficiency:**
|
|
194
|
+
```
|
|
195
|
+
token_efficiency = meaningful_content_tokens / total_tokens
|
|
196
|
+
```
|
|
197
|
+
Where `meaningful_content_tokens` excludes: blank lines, decorative separators, repeated boilerplate headers, and excessive whitespace. Target: > 0.70.
|
|
198
|
+
|
|
199
|
+
**Metric 2 — Information Density:**
|
|
200
|
+
```
|
|
201
|
+
information_density = unique_concepts / total_sections
|
|
202
|
+
```
|
|
203
|
+
Where `unique_concepts` = count of distinct topics, terms, or instructions introduced. Measures whether each section contributes new information vs. repeating prior content. Target: > 2.0 concepts per section.
|
|
204
|
+
|
|
205
|
+
**Metric 3 — Bloat Detection:**
|
|
206
|
+
Identify sections where:
|
|
207
|
+
- Section length > 3x the golden sample equivalent → BLOATED
|
|
208
|
+
- Section length < 0.2x the golden sample equivalent → THIN
|
|
209
|
+
- Section repeats > 30% of content from another section → REDUNDANT
|
|
210
|
+
|
|
211
|
+
```
|
|
212
|
+
bloat_score = 1 - (bloated_sections + thin_sections + redundant_sections) / total_sections
|
|
213
|
+
```
|
|
214
|
+
Clamped to [0, 1].
|
|
215
|
+
|
|
216
|
+
**Performance Score:**
|
|
217
|
+
```
|
|
218
|
+
B3 = token_efficiency * 0.35 + normalize(information_density, 0, 4) * 0.35 + bloat_score * 0.30
|
|
219
|
+
```
|
|
220
|
+
Where `normalize(x, min, max)` clamps and scales x to [0, 1].
|
|
221
|
+
|
|
222
|
+
**Display per-section metrics:**
|
|
223
|
+
|
|
224
|
+
```
|
|
225
|
+
Section Tokens Concepts Golden Ratio Flag
|
|
226
|
+
───────────────────────── ──────── ────────── ────────────── ──────────
|
|
227
|
+
## Overview 320 4 1.2x OK
|
|
228
|
+
## Protocol 1840 12 0.8x OK
|
|
229
|
+
## Anti-Patterns 580 6 2.8x BLOATED
|
|
230
|
+
## Quick Start 95 2 0.3x THIN
|
|
231
|
+
## Dependencies 210 3 1.0x OK
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### Step 8: Aggregate & Gate
|
|
235
|
+
|
|
236
|
+
**BENCHMARK_SCORE formula:**
|
|
237
|
+
```
|
|
238
|
+
BENCHMARK_SCORE = B0 * 0.30 + B1 * 0.35 + B2 * 0.15 + B3 * 0.20
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
**Weight rationale:**
|
|
242
|
+
- B0 (Golden Comparison) at 0.30 — structural conformance is the primary benchmark signal
|
|
243
|
+
- B1 (Test Suite) at 0.35 — deterministic correctness is the most reliable signal
|
|
244
|
+
- B2 (Consistency) at 0.15 — stability matters but is a secondary signal
|
|
245
|
+
- B3 (Performance) at 0.20 — efficiency matters for production artifacts
|
|
246
|
+
|
|
247
|
+
**Gate:**
|
|
248
|
+
- BENCHMARK_SCORE < 0.50 → **BLOCK** — artifact requires significant rework before evaluation
|
|
249
|
+
- BENCHMARK_SCORE 0.50-0.70 → **WARN** — artifact has structural issues; proceed to TEST with caution
|
|
250
|
+
- BENCHMARK_SCORE > 0.70 → **PASS** — artifact meets benchmark standards; ready for TEST
|
|
251
|
+
|
|
252
|
+
Record `BENCHMARK_SCORE` for downstream consumption by `/bto-test` and `/bto`.
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Checkpoint
|
|
257
|
+
|
|
258
|
+
```
|
|
259
|
+
═══════════════════════════════════════════════════════
|
|
260
|
+
CHECKPOINT: BENCHMARK Complete
|
|
261
|
+
<promise>BTO_BENCHMARKED</promise>
|
|
262
|
+
Artifact: [path]
|
|
263
|
+
Type: [detected type]
|
|
264
|
+
|
|
265
|
+
Layer B0 (Golden): X.XX — section coverage, ordering, proportions
|
|
266
|
+
Layer B1 (Test Suite): X.XX — Y/Z tests passed
|
|
267
|
+
Layer B2 (Consistency): X.XX — agreement across 3 probes
|
|
268
|
+
Layer B3 (Performance): X.XX — token efficiency, density, bloat
|
|
269
|
+
|
|
270
|
+
BENCHMARK SCORE: X.XX [PASS / WARN / BLOCK]
|
|
271
|
+
|
|
272
|
+
• "ок" — proceed to TEST
|
|
273
|
+
• "покажи детали [B0/B1/B2/B3]" — expand layer details
|
|
274
|
+
• "пропусти тест" — skip TEST (if PASS)
|
|
275
|
+
═══════════════════════════════════════════════════════
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
Wait for user confirmation.
|
|
279
|
+
|
|
280
|
+
---
|
|
281
|
+
|
|
282
|
+
## Modular Usage
|
|
283
|
+
|
|
284
|
+
This command is also invoked internally by:
|
|
285
|
+
- `/bto` — as a pre-flight step before TEST phase (if benchmark module is loaded)
|
|
286
|
+
- `/bto-test` — optionally as a prerequisite gate (if user requests `benchmark` flag)
|
|
287
|
+
|
|
288
|
+
The `BENCHMARK_SCORE` is available to downstream commands:
|
|
289
|
+
- `/bto-test` may use it to calibrate Layer 1 expectations
|
|
290
|
+
- `/bto-optimize` may use it to set a structural baseline floor
|
|
291
|
+
|
|
292
|
+
## Critical Rules
|
|
293
|
+
|
|
294
|
+
- Layer B0 and B1 are fully deterministic — no LLM calls, zero cost
|
|
295
|
+
- Layer B2 uses haiku only — NEVER use sonnet or opus for consistency probes
|
|
296
|
+
- Agent tool is REQUIRED for Layer B2 — do not run probes sequentially
|
|
297
|
+
- Golden samples from `references/golden-samples.md` are the authoritative structural reference
|
|
298
|
+
- If golden sample does not exist for the detected type → skip B0, set B0 = 0.50 (neutral), and log a warning
|
|
299
|
+
- Report `BENCHMARK_SCORE` explicitly so downstream commands can consume it
|
|
300
|
+
- BLOCK verdict at B0 or B1 halts the benchmark — do NOT proceed to subsequent layers
|
|
301
|
+
- Layer B3 bloat detection uses golden sample proportions — without a golden sample, use absolute thresholds only
|
|
302
|
+
- If "verbose" is in $ARGUMENTS, show expanded per-section diagnostics for all layers without prompting
|
|
@@ -2,66 +2,48 @@
|
|
|
2
2
|
|
|
3
3
|
## Использование
|
|
4
4
|
```
|
|
5
|
-
/harvest [путь к директории
|
|
5
|
+
/harvest [путь к директории или "all"] [only категория1,категория2]
|
|
6
6
|
```
|
|
7
7
|
|
|
8
8
|
## Аргумент
|
|
9
9
|
$ARGUMENTS
|
|
10
10
|
|
|
11
|
-
##
|
|
12
|
-
|
|
13
|
-
Систематический процесс извлечения и организации полезных знаний после завершения исследования. Не героическое усилие, а лёгкий процесс после каждого проекта.
|
|
14
|
-
|
|
15
|
-
## Шаг 1 — Ревью с агентом
|
|
11
|
+
## Скилл
|
|
16
12
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
3. Ошибки и workaround-ы, которые стоит запомнить
|
|
21
|
-
4. Удачные формулировки и шаблоны
|
|
22
|
-
5. Инсайты о домене
|
|
23
|
-
|
|
24
|
-
## Шаг 2 — Классификация
|
|
13
|
+
```
|
|
14
|
+
Read: .claude/skills/knowledge-extractor/SKILL.md
|
|
15
|
+
```
|
|
25
16
|
|
|
26
|
-
|
|
17
|
+
Загрузи knowledge-extractor skill и следуй его Pipeline Protocol.
|
|
27
18
|
|
|
28
|
-
|
|
29
|
-
|-----------|--------------|--------|
|
|
30
|
-
| skills/ | Новые или улучшенные SKILL.md | Лучший подход к CJM |
|
|
31
|
-
| commands/ | Slash-команды для Claude Code | Новая фаза пайплайна |
|
|
32
|
-
| rules/ | Правила и ограничения | "Не используй X потому что Y" |
|
|
33
|
-
| templates/ | Шаблоны документов | Обновлённый шаблон архитектуры |
|
|
34
|
-
| patterns/ | Архитектурные паттерны | Event sourcing для AI pipeline |
|
|
35
|
-
| snippets/ | Готовые куски кода | Универсальный CJM renderer |
|
|
19
|
+
## Парсинг аргументов
|
|
36
20
|
|
|
37
|
-
|
|
21
|
+
1. **Путь:** Первый аргумент — путь к директории исследования или `"all"` для всех директорий в `researches/`
|
|
22
|
+
2. **Scope filter:** Если после пути есть `only X,Y` — передай как `{SCOPE_FILTER}` в skill
|
|
23
|
+
- Допустимые значения: `skills`, `commands`, `hooks`, `rules`, `templates`, `patterns`, `snippets`
|
|
24
|
+
- Множественные через запятую: `only rules,templates`
|
|
25
|
+
3. Если аргументов нет — запроси путь у пользователя
|
|
38
26
|
|
|
39
|
-
|
|
40
|
-
1. **Деконтекстуализировать** — убрать привязки к конкретному проекту
|
|
41
|
-
2. **Документировать** — когда использовать, когда нет, предусловия
|
|
42
|
-
3. **Версионировать** — пометить что изменилось и почему
|
|
27
|
+
## Примеры
|
|
43
28
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
- v1: начальная версия из [проект]
|
|
29
|
+
```
|
|
30
|
+
/harvest researches/bank-kc-automation/ ← полный harvest одной директории
|
|
31
|
+
/harvest researches/bank-kc-automation/ only patterns ← только паттерны
|
|
32
|
+
/harvest all ← все исследования
|
|
33
|
+
/harvest all only rules,templates ← все исследования, только правила и шаблоны
|
|
34
|
+
/harvest features/add-user-auth/ ← harvest фичи (не только исследования)
|
|
51
35
|
```
|
|
52
36
|
|
|
53
|
-
##
|
|
54
|
-
|
|
55
|
-
Обнови корневой `TOOLKIT_HARVEST.md` с новыми находками.
|
|
37
|
+
## Параллелизация
|
|
56
38
|
|
|
57
|
-
|
|
39
|
+
Если путь = `"all"`:
|
|
40
|
+
1. Получи список всех директорий в `researches/`
|
|
41
|
+
2. Для каждой директории запусти отдельную harvest сессию
|
|
42
|
+
3. Каждая сессия создаёт свой findings JSON и проходит полный pipeline
|
|
43
|
+
4. По завершении всех сессий — объедини отчёты
|
|
58
44
|
|
|
59
|
-
|
|
60
|
-
- Паттерны, использованные один раз без уверенности в качестве
|
|
61
|
-
- Workaround-ы для конкретных багов библиотек (устаревают)
|
|
45
|
+
## Суть
|
|
62
46
|
|
|
63
|
-
|
|
47
|
+
Систематический процесс извлечения и организации полезных знаний после завершения проекта. Использует 5 параллельных агентов-экстракторов, 7-категорийную классификацию, 8 блокирующих quality gates, и автоматическое размещение артефактов.
|
|
64
48
|
|
|
65
|
-
|
|
66
|
-
- Каждый агент ревьюит свою директорию
|
|
67
|
-
- Результаты синтезируются в единый TOOLKIT_HARVEST.md
|
|
49
|
+
Pipeline: Extract (5 agents) → Classify (7 categories) → User Checkpoint → Gate (8 checks) → Integrate (auto-place)
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
| presentation-storyteller | 1 | Structured | SKILL.md + references/ |
|
|
21
21
|
| reverse-engineering-unicorn | 1 | Structured | SKILL.md + modules/ + references/ + examples/ |
|
|
22
22
|
| bto | 1 | Structured | SKILL.md + modules/ + references/ + examples/ |
|
|
23
|
+
| knowledge-extractor | 2 | Validated | /bto-test Layer 2 score 7.5, optimized 2026-03-03 |
|
|
23
24
|
|
|
24
25
|
## Tier Enforcement
|
|
25
26
|
|