@pennyfarthing/core 9.0.0 → 9.0.3
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 +16 -7
- package/package.json +1 -1
- package/packages/core/dist/cli/commands/doctor.d.ts +5 -2
- package/packages/core/dist/cli/commands/doctor.d.ts.map +1 -1
- package/packages/core/dist/cli/commands/doctor.js +225 -17
- package/packages/core/dist/cli/commands/doctor.js.map +1 -1
- package/packages/core/dist/cli/commands/init.d.ts.map +1 -1
- package/packages/core/dist/cli/commands/init.js +3 -246
- package/packages/core/dist/cli/commands/init.js.map +1 -1
- package/packages/core/dist/cli/commands/update.d.ts.map +1 -1
- package/packages/core/dist/cli/commands/update.js +4 -140
- package/packages/core/dist/cli/commands/update.js.map +1 -1
- package/packages/core/dist/cli/utils/constants.d.ts +7 -1
- package/packages/core/dist/cli/utils/constants.d.ts.map +1 -1
- package/packages/core/dist/cli/utils/constants.js +2 -0
- package/packages/core/dist/cli/utils/constants.js.map +1 -1
- package/packages/core/dist/cli/utils/settings.d.ts +22 -0
- package/packages/core/dist/cli/utils/settings.d.ts.map +1 -0
- package/packages/core/dist/cli/utils/settings.js +300 -0
- package/packages/core/dist/cli/utils/settings.js.map +1 -0
- package/pennyfarthing-dist/commands/chore.md +18 -17
- package/pennyfarthing-dist/commands/continue-session.md +41 -7
- package/pennyfarthing-dist/commands/fix-blocker.md +22 -0
- package/pennyfarthing-dist/commands/git-cleanup.md +25 -19
- package/pennyfarthing-dist/commands/patch.md +210 -0
- package/pennyfarthing-dist/guides/session-schema.md +346 -0
- package/pennyfarthing-dist/guides/skill-schema.md +412 -0
- package/pennyfarthing-dist/guides/workflow-step-schema.md +512 -0
- package/pennyfarthing-dist/guides/xml-tags.md +292 -0
- package/pennyfarthing-dist/scripts/hooks/context-circuit-breaker.sh +43 -8
- package/pennyfarthing-dist/scripts/hooks/schema-validation.sh +30 -0
- package/pennyfarthing-dist/scripts/lib/find-root.sh +32 -7
- package/pennyfarthing-dist/skills/agentic-patterns/SKILL.md +4 -0
- package/pennyfarthing-dist/skills/changelog/SKILL.md +18 -0
- package/pennyfarthing-dist/skills/code-review/SKILL.md +5 -1
- package/pennyfarthing-dist/skills/context-engineering/SKILL.md +3 -0
- package/pennyfarthing-dist/skills/cyclist/SKILL.md +2 -2
- package/pennyfarthing-dist/skills/dev-patterns/SKILL.md +24 -0
- package/pennyfarthing-dist/skills/finalize-run/SKILL.md +3 -0
- package/pennyfarthing-dist/skills/judge/SKILL.md +8 -0
- package/pennyfarthing-dist/skills/just/SKILL.md +11 -0
- package/pennyfarthing-dist/skills/mermaid/SKILL.md +16 -0
- package/pennyfarthing-dist/skills/otel/skill.md +4 -0
- package/pennyfarthing-dist/skills/permissions/skill.md +3 -0
- package/pennyfarthing-dist/skills/persona-benchmark/SKILL.md +9 -0
- package/pennyfarthing-dist/skills/story/skill.md +16 -16
- package/pennyfarthing-dist/skills/systematic-debugging/SKILL.md +56 -0
- package/pennyfarthing-dist/skills/testing/SKILL.md +22 -0
- package/pennyfarthing-dist/skills/theme/skill.md +12 -0
- package/pennyfarthing-dist/skills/theme-creation/SKILL.md +4 -0
- package/pennyfarthing-dist/skills/workflow/skill.md +22 -14
- package/pennyfarthing-dist/skills/yq/SKILL.md +8 -0
- package/pennyfarthing-dist/templates/settings.local.json.template +9 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-01-initialize.md +12 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-01b-continue.md +12 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-02-context.md +12 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-03-patterns.md +12 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-04-components.md +12 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-05-interfaces.md +12 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-06-risks.md +12 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-07-document.md +12 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-01-validate-prerequisites.md +25 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-02-design-epics.md +23 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-03-create-stories.md +26 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-04-final-validation.md +24 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-05-import-to-future.md +23 -0
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-01-analyze.md +43 -41
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-02-categorize.md +50 -19
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-03-execute.md +102 -111
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-04-verify.md +48 -39
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-05-complete.md +30 -31
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-01-document-discovery.md +21 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-02-prd-analysis.md +21 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-03-epic-coverage-validation.md +23 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-04-ux-alignment.md +23 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-05-epic-quality-review.md +28 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-06-final-assessment.md +25 -0
- package/pennyfarthing-dist/workflows/interactive-debug/steps/step-01-connect.md +257 -0
- package/pennyfarthing-dist/workflows/interactive-debug/steps/step-02-explore.md +107 -0
- package/pennyfarthing-dist/workflows/interactive-debug/steps/step-03-fix.md +127 -0
- package/pennyfarthing-dist/workflows/interactive-debug/steps/step-04-commit.md +122 -0
- package/pennyfarthing-dist/workflows/interactive-debug/workflow.yaml +51 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-01-init.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-01b-continue.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-02-discovery.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-03-success.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-04-journeys.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-05-domain.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-06-innovation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-07-project-type.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-08-scoping.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-09-functional.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-10-nonfunctional.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-11-polish.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-12-complete.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-01-discovery.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-01b-legacy-conversion.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-02-review.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-03-edit.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-04-complete.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-01-discovery.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-02-format-detection.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-02b-parity-check.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-03-density-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-04-brief-coverage-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-05-measurability-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-06-traceability-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-07-implementation-leakage-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-08-domain-compliance-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-09-project-type-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-10-smart-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-11-holistic-quality-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-12-completeness-validation.md +6 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-13-report-complete.md +6 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-01-init.md +18 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-01b-continue.md +19 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-02-vision.md +22 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-03-users.md +22 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-04-metrics.md +23 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-05-scope.md +24 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-06-complete.md +22 -0
- package/pennyfarthing-dist/workflows/project-context/steps/step-01-discover.md +22 -0
- package/pennyfarthing-dist/workflows/project-context/steps/step-02-generate.md +31 -0
- package/pennyfarthing-dist/workflows/project-context/steps/step-03-complete.md +28 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-01-mode-detection.md +21 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-02-context-gathering.md +23 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-03-execute.md +25 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-04-self-check.md +22 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-05-adversarial-review.md +23 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-06-resolve-findings.md +23 -0
- package/pennyfarthing-dist/workflows/quick-spec/steps/step-01-understand.md +12 -0
- package/pennyfarthing-dist/workflows/quick-spec/steps/step-02-investigate.md +12 -0
- package/pennyfarthing-dist/workflows/quick-spec/steps/step-03-generate.md +12 -0
- package/pennyfarthing-dist/workflows/quick-spec/steps/step-04-review.md +12 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-01-init.md +22 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-02-domain-analysis.md +24 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-03-competitive-landscape.md +25 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-04-regulatory-focus.md +26 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-05-technical-trends.md +26 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-06-research-synthesis.md +34 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-01-init.md +23 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-02-customer-behavior.md +25 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-02-customer-insights.md +27 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-03-customer-pain-points.md +26 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-04-customer-decisions.md +27 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-05-competitive-analysis.md +26 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-06-research-completion.md +35 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-01-init.md +22 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-02-technical-overview.md +25 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-03-integration-patterns.md +26 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-04-architectural-patterns.md +26 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-05-implementation-research.md +29 -1
- package/pennyfarthing-dist/workflows/research/steps-technical/step-06-research-synthesis.md +37 -1
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-01-parse-epic-files.md +15 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-02-build-sprint-status.md +17 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-03-status-detection.md +16 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-04-generate-status-file.md +17 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-05-validate-and-report.md +22 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-01-init.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-01b-continue.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-02-discovery.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-03-core-experience.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-04-emotional-response.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-05-inspiration.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-06-design-system.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-07-defining-experience.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-08-visual-foundation.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-09-design-directions.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-10-user-journeys.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-11-component-strategy.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-12-ux-patterns.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-13-responsive-accessibility.md +6 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-14-complete.md +6 -0
- package/pennyfarthing_scripts/migration/__init__.py +39 -0
- package/pennyfarthing_scripts/migration/__main__.py +10 -0
- package/pennyfarthing_scripts/migration/cli.py +304 -0
- package/pennyfarthing_scripts/migration/session.py +384 -0
- package/pennyfarthing_scripts/migration/skill.py +188 -0
- package/pennyfarthing_scripts/migration/step.py +229 -0
- package/pennyfarthing_scripts/migration/validate.py +282 -0
- package/pennyfarthing_scripts/schema_validation_hook.py +306 -0
- package/pennyfarthing_scripts/sprint/__pycache__/cli.cpython-314.pyc +0 -0
- package/pennyfarthing_scripts/sprint/archive_epic.py +399 -0
- package/pennyfarthing_scripts/sprint/cli.py +100 -0
- package/pennyfarthing_scripts/sprint/import_epic.py +431 -0
- package/pennyfarthing_scripts/story/__pycache__/__init__.cpython-314.pyc +0 -0
- package/pennyfarthing_scripts/story/__pycache__/__main__.cpython-314.pyc +0 -0
- package/pennyfarthing_scripts/story/__pycache__/cli.cpython-314.pyc +0 -0
- package/pennyfarthing_scripts/story/__pycache__/create.cpython-314.pyc +0 -0
- package/pennyfarthing_scripts/story/__pycache__/size.cpython-314.pyc +0 -0
- package/pennyfarthing_scripts/story/__pycache__/template.cpython-314.pyc +0 -0
- package/pennyfarthing-dist/scripts/sprint/import-epic-to-future.sh +0 -10
- package/pennyfarthing-dist/scripts/sprint/import_epic_to_future.py +0 -270
|
@@ -325,6 +325,298 @@ Assume the code is broken until you prove otherwise.
|
|
|
325
325
|
| `<persona>` | Agent files (top) |
|
|
326
326
|
| `<role>` | Agent files (after persona) |
|
|
327
327
|
|
|
328
|
+
## Session Tags
|
|
329
|
+
|
|
330
|
+
Tags used in session files (`.session/{story-id}-session.md`) for workflow state tracking.
|
|
331
|
+
|
|
332
|
+
### `<session>`
|
|
333
|
+
|
|
334
|
+
**Purpose:** Root container for all session data.
|
|
335
|
+
|
|
336
|
+
**Usage:** Wraps entire session file content.
|
|
337
|
+
|
|
338
|
+
```markdown
|
|
339
|
+
<session story="MSSCI-12345" workflow="tdd">
|
|
340
|
+
<!-- session content -->
|
|
341
|
+
</session>
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
**Attributes:**
|
|
345
|
+
- `story` - Story identifier (Jira key or local ID)
|
|
346
|
+
- `workflow` - Workflow type: `tdd`, `trivial`, `bdd`, `agent-docs`
|
|
347
|
+
|
|
348
|
+
### `<meta>`
|
|
349
|
+
|
|
350
|
+
**Purpose:** Story metadata that doesn't change during the session.
|
|
351
|
+
|
|
352
|
+
**Usage:** Inside `<session>`, contains static story info.
|
|
353
|
+
|
|
354
|
+
```markdown
|
|
355
|
+
<meta>
|
|
356
|
+
<jira>MSSCI-12345</jira>
|
|
357
|
+
<epic>MSSCI-12300</epic>
|
|
358
|
+
<points>3</points>
|
|
359
|
+
<started>2026-02-03</started>
|
|
360
|
+
</meta>
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
### `<status>`
|
|
364
|
+
|
|
365
|
+
**Purpose:** Machine-readable workflow state for agent navigation.
|
|
366
|
+
|
|
367
|
+
**Usage:** Self-closing element updated at phase transitions.
|
|
368
|
+
|
|
369
|
+
```markdown
|
|
370
|
+
<status phase="green" next-agent="reviewer" handoff-ready="true"/>
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
**Attributes:**
|
|
374
|
+
- `phase` - Current workflow phase (`setup`, `red`, `green`, `review`, `finish`)
|
|
375
|
+
- `next-agent` - Agent to handle next (`sm`, `tea`, `dev`, `reviewer`)
|
|
376
|
+
- `handoff-ready` - Whether current work is complete (`true`/`false`)
|
|
377
|
+
|
|
378
|
+
### `<acceptance-criteria>`
|
|
379
|
+
|
|
380
|
+
**Purpose:** Track AC completion status in machine-parseable format.
|
|
381
|
+
|
|
382
|
+
**Usage:** Contains `<ac>` child elements.
|
|
383
|
+
|
|
384
|
+
```markdown
|
|
385
|
+
<acceptance-criteria>
|
|
386
|
+
<ac id="1" status="done">User can create account</ac>
|
|
387
|
+
<ac id="2" status="pending">Email validation works</ac>
|
|
388
|
+
</acceptance-criteria>
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
### `<ac>`
|
|
392
|
+
|
|
393
|
+
**Purpose:** Individual acceptance criterion.
|
|
394
|
+
|
|
395
|
+
**Attributes:**
|
|
396
|
+
- `id` - Numeric identifier (1, 2, 3...)
|
|
397
|
+
- `status` - `pending`, `in-progress`, `done`, `blocked`
|
|
398
|
+
|
|
399
|
+
### `<work-log>`
|
|
400
|
+
|
|
401
|
+
**Purpose:** Container for chronological agent contributions.
|
|
402
|
+
|
|
403
|
+
**Usage:** Contains `<entry>` and `<assessment>` elements.
|
|
404
|
+
|
|
405
|
+
### `<entry>`
|
|
406
|
+
|
|
407
|
+
**Purpose:** Standard work log entry from any agent.
|
|
408
|
+
|
|
409
|
+
**Attributes:**
|
|
410
|
+
- `agent` - Agent identifier (`sm`, `tea`, `dev`, `reviewer`)
|
|
411
|
+
- `date` - Entry date (YYYY-MM-DD)
|
|
412
|
+
- `phase` - Optional TDD phase (`red`, `green`, `refactor`)
|
|
413
|
+
|
|
414
|
+
```markdown
|
|
415
|
+
<entry agent="tea" date="2026-02-03" phase="red">
|
|
416
|
+
Wrote failing tests for all ACs.
|
|
417
|
+
</entry>
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
### `<assessment>`
|
|
421
|
+
|
|
422
|
+
**Purpose:** Formal verdict from Reviewer agent.
|
|
423
|
+
|
|
424
|
+
**Attributes:**
|
|
425
|
+
- `agent` - Must be `reviewer`
|
|
426
|
+
- `verdict` - `approved`, `rejected`, `needs-work`
|
|
427
|
+
|
|
428
|
+
```markdown
|
|
429
|
+
<assessment agent="reviewer" verdict="approved">
|
|
430
|
+
All ACs verified, code follows patterns.
|
|
431
|
+
</assessment>
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
**See also:** `guides/session-schema.md` for complete session file schema.
|
|
435
|
+
|
|
436
|
+
---
|
|
437
|
+
|
|
438
|
+
## Skill Tags
|
|
439
|
+
|
|
440
|
+
Tags used in skill files (`skills/{name}/SKILL.md`) for command documentation.
|
|
441
|
+
|
|
442
|
+
### `<run>`
|
|
443
|
+
|
|
444
|
+
**Purpose:** The exact command to execute for a skill command.
|
|
445
|
+
|
|
446
|
+
**Usage:** One per command, contains shell command.
|
|
447
|
+
|
|
448
|
+
```markdown
|
|
449
|
+
<run>
|
|
450
|
+
.pennyfarthing/scripts/sprint/sprint-status.sh [filter]
|
|
451
|
+
</run>
|
|
452
|
+
```
|
|
453
|
+
|
|
454
|
+
### `<args>`
|
|
455
|
+
|
|
456
|
+
**Purpose:** Document command arguments in table format.
|
|
457
|
+
|
|
458
|
+
**Usage:** Follows `<run>`, contains markdown table.
|
|
459
|
+
|
|
460
|
+
```markdown
|
|
461
|
+
<args>
|
|
462
|
+
| Arg | Required | Description |
|
|
463
|
+
|-----|----------|-------------|
|
|
464
|
+
| `filter` | No | Filter by status: `todo`, `done` |
|
|
465
|
+
</args>
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
### `<example>`
|
|
469
|
+
|
|
470
|
+
**Purpose:** Show command usage with expected output.
|
|
471
|
+
|
|
472
|
+
**Usage:** Realistic invocation followed by commented output.
|
|
473
|
+
|
|
474
|
+
```markdown
|
|
475
|
+
<example>
|
|
476
|
+
.pennyfarthing/scripts/sprint/check-story.sh MSSCI-12038
|
|
477
|
+
# Returns: {"type": "story", "available": true}
|
|
478
|
+
</example>
|
|
479
|
+
```
|
|
480
|
+
|
|
481
|
+
### `<when>`
|
|
482
|
+
|
|
483
|
+
**Purpose:** Document conditions for using a command and next steps.
|
|
484
|
+
|
|
485
|
+
**Usage:** Trigger conditions or follow-up actions.
|
|
486
|
+
|
|
487
|
+
```markdown
|
|
488
|
+
<when>
|
|
489
|
+
- Starting new development work
|
|
490
|
+
- After promote, create Jira epic with `/jira create epic`
|
|
491
|
+
</when>
|
|
492
|
+
```
|
|
493
|
+
|
|
494
|
+
### `<agent-activation>`
|
|
495
|
+
|
|
496
|
+
**Purpose:** Command to load agent persona before using skill.
|
|
497
|
+
|
|
498
|
+
**Usage:** Shell command for agent activation.
|
|
499
|
+
|
|
500
|
+
```markdown
|
|
501
|
+
<agent-activation>
|
|
502
|
+
Load SM persona first:
|
|
503
|
+
```bash
|
|
504
|
+
d="$PWD"; while [[ ! -d "$d/.claude" ]] && [[ "$d" != "/" ]]; do d="$(dirname "$d")"; done; "$d/.pennyfarthing/scripts/core/agent-session.sh" start "sm"
|
|
505
|
+
```
|
|
506
|
+
</agent-activation>
|
|
507
|
+
```
|
|
508
|
+
|
|
509
|
+
**See also:** `guides/skill-schema.md` for complete skill file schema.
|
|
510
|
+
|
|
511
|
+
---
|
|
512
|
+
|
|
513
|
+
## Workflow Step Tags
|
|
514
|
+
|
|
515
|
+
Tags used in workflow step files (`workflows/{name}/steps/step-*.md`) for BikeLane navigation.
|
|
516
|
+
|
|
517
|
+
### `<step-meta>`
|
|
518
|
+
|
|
519
|
+
**Purpose:** Machine-readable step metadata for workflow navigation.
|
|
520
|
+
|
|
521
|
+
**Usage:** Required at top of every step file.
|
|
522
|
+
|
|
523
|
+
```markdown
|
|
524
|
+
<step-meta>
|
|
525
|
+
number: 1
|
|
526
|
+
name: initialize
|
|
527
|
+
gate: false
|
|
528
|
+
next: step-02-context
|
|
529
|
+
</step-meta>
|
|
530
|
+
```
|
|
531
|
+
|
|
532
|
+
**Fields:**
|
|
533
|
+
- `number` - Step number (integer)
|
|
534
|
+
- `name` - Step identifier (kebab-case)
|
|
535
|
+
- `gate` - Whether step has checkpoint (boolean)
|
|
536
|
+
- `next` - Next step filename (optional)
|
|
537
|
+
|
|
538
|
+
### `<purpose>`
|
|
539
|
+
|
|
540
|
+
**Purpose:** Explain what the step accomplishes.
|
|
541
|
+
|
|
542
|
+
**Usage:** Clear, concise goal statement.
|
|
543
|
+
|
|
544
|
+
```markdown
|
|
545
|
+
<purpose>
|
|
546
|
+
Set up the architecture session by gathering inputs and establishing context.
|
|
547
|
+
</purpose>
|
|
548
|
+
```
|
|
549
|
+
|
|
550
|
+
### `<prerequisites>`
|
|
551
|
+
|
|
552
|
+
**Purpose:** What must be true before starting this step.
|
|
553
|
+
|
|
554
|
+
**Usage:** Bullet list of requirements.
|
|
555
|
+
|
|
556
|
+
```markdown
|
|
557
|
+
<prerequisites>
|
|
558
|
+
- PRD document exists
|
|
559
|
+
- Previous step completed
|
|
560
|
+
</prerequisites>
|
|
561
|
+
```
|
|
562
|
+
|
|
563
|
+
### `<instructions>`
|
|
564
|
+
|
|
565
|
+
**Purpose:** Step-by-step execution guide.
|
|
566
|
+
|
|
567
|
+
**Usage:** Numbered list of actions.
|
|
568
|
+
|
|
569
|
+
```markdown
|
|
570
|
+
<instructions>
|
|
571
|
+
1. Read the PRD document
|
|
572
|
+
2. Identify architectural concerns
|
|
573
|
+
3. Document recommendation
|
|
574
|
+
</instructions>
|
|
575
|
+
```
|
|
576
|
+
|
|
577
|
+
### `<actions>`
|
|
578
|
+
|
|
579
|
+
**Purpose:** Specific file and script operations.
|
|
580
|
+
|
|
581
|
+
**Usage:** Prefixed bullet list (Check:, Read:, Write:, Run:).
|
|
582
|
+
|
|
583
|
+
```markdown
|
|
584
|
+
<actions>
|
|
585
|
+
- Read: `{planning_artifacts}/*prd*.md`
|
|
586
|
+
- Write: `{output_file}` with session content
|
|
587
|
+
</actions>
|
|
588
|
+
```
|
|
589
|
+
|
|
590
|
+
### `<collaboration-menu>`
|
|
591
|
+
|
|
592
|
+
**Purpose:** Present user options after step completion.
|
|
593
|
+
|
|
594
|
+
**Usage:** Standard menu with keyboard shortcuts.
|
|
595
|
+
|
|
596
|
+
```markdown
|
|
597
|
+
<collaboration-menu>
|
|
598
|
+
- **[C] Continue** - Proceed to next step
|
|
599
|
+
- **[R] Revise** - Make changes
|
|
600
|
+
- **[H] Help** - Get guidance
|
|
601
|
+
</collaboration-menu>
|
|
602
|
+
```
|
|
603
|
+
|
|
604
|
+
### `<next-step>`
|
|
605
|
+
|
|
606
|
+
**Purpose:** Explicit navigation to the next step.
|
|
607
|
+
|
|
608
|
+
**Usage:** Instruction on which file to load.
|
|
609
|
+
|
|
610
|
+
```markdown
|
|
611
|
+
<next-step>
|
|
612
|
+
After gate passes, proceed to step-02-context.md
|
|
613
|
+
</next-step>
|
|
614
|
+
```
|
|
615
|
+
|
|
616
|
+
**See also:** `guides/workflow-step-schema.md` for complete workflow step schema.
|
|
617
|
+
|
|
618
|
+
---
|
|
619
|
+
|
|
328
620
|
## Adding New Tags
|
|
329
621
|
|
|
330
622
|
Before adding a new tag type:
|
|
@@ -2,14 +2,17 @@
|
|
|
2
2
|
# Context circuit breaker hook: Block tool execution at 85% context usage
|
|
3
3
|
# Called by Claude Code before tool calls (PreToolUse)
|
|
4
4
|
#
|
|
5
|
-
# Input: JSON via stdin with tool_name, tool_input
|
|
5
|
+
# Input: JSON via stdin with tool_name, tool_input, session_id
|
|
6
6
|
# Output: Exit 0 to allow, Exit 2 to block (stderr shown to Claude)
|
|
7
7
|
#
|
|
8
8
|
# This hook provides a hard stop when context is critically high,
|
|
9
9
|
# unlike context-warning.sh which only warns.
|
|
10
|
+
#
|
|
11
|
+
# When triggered, automatically saves the active agent to a checkpoint
|
|
12
|
+
# so /continue-session can restore it with FULL tier.
|
|
10
13
|
|
|
11
|
-
# Read
|
|
12
|
-
cat
|
|
14
|
+
# Read stdin to get session_id (required by hook protocol)
|
|
15
|
+
INPUT=$(cat)
|
|
13
16
|
|
|
14
17
|
# Script location for sibling script references
|
|
15
18
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
@@ -34,6 +37,28 @@ CRITICAL_THRESHOLD="${CRITICAL_THRESHOLD:-80}"
|
|
|
34
37
|
|
|
35
38
|
# Check if at or above critical threshold
|
|
36
39
|
if [[ "$CONTEXT_PERCENT" -ge "$CRITICAL_THRESHOLD" ]] 2>/dev/null; then
|
|
40
|
+
# Auto-save active agent to checkpoint before blocking
|
|
41
|
+
# This allows /continue-session to restore with FULL tier
|
|
42
|
+
source "$SCRIPT_DIR/../lib/checkpoint.sh" 2>/dev/null || true
|
|
43
|
+
|
|
44
|
+
# Get session_id from input JSON
|
|
45
|
+
SESSION_ID=""
|
|
46
|
+
if command -v jq &>/dev/null && [[ -n "$INPUT" ]]; then
|
|
47
|
+
SESSION_ID=$(echo "$INPUT" | jq -r '.session_id // empty' 2>/dev/null)
|
|
48
|
+
fi
|
|
49
|
+
|
|
50
|
+
# Look up active agent for this session
|
|
51
|
+
ACTIVE_AGENT=""
|
|
52
|
+
AGENT_FILE="${CLAUDE_PROJECT_DIR:-.}/.session/agents/${SESSION_ID}"
|
|
53
|
+
if [[ -n "$SESSION_ID" && -f "$AGENT_FILE" ]]; then
|
|
54
|
+
ACTIVE_AGENT=$(cat "$AGENT_FILE" 2>/dev/null)
|
|
55
|
+
fi
|
|
56
|
+
|
|
57
|
+
# Save agent checkpoint if we found one
|
|
58
|
+
if [[ -n "$ACTIVE_AGENT" ]]; then
|
|
59
|
+
checkpoint_save "circuit_breaker_agent" "$ACTIVE_AGENT" 2>/dev/null || true
|
|
60
|
+
fi
|
|
61
|
+
|
|
37
62
|
# Send error message to stderr (Claude will see this)
|
|
38
63
|
cat >&2 << EOF
|
|
39
64
|
CONTEXT CIRCUIT BREAKER TRIGGERED
|
|
@@ -41,16 +66,26 @@ CONTEXT CIRCUIT BREAKER TRIGGERED
|
|
|
41
66
|
Context usage: ${CONTEXT_PERCENT}% - CRITICAL (threshold: ${CRITICAL_THRESHOLD}%)
|
|
42
67
|
|
|
43
68
|
Tool execution BLOCKED. You must stop and hand off.
|
|
69
|
+
EOF
|
|
70
|
+
|
|
71
|
+
# Include agent info if available
|
|
72
|
+
if [[ -n "$ACTIVE_AGENT" ]]; then
|
|
73
|
+
cat >&2 << EOF
|
|
74
|
+
|
|
75
|
+
Active agent saved: ${ACTIVE_AGENT}
|
|
76
|
+
The agent will be restored with FULL context when you run /continue-session.
|
|
77
|
+
EOF
|
|
78
|
+
fi
|
|
79
|
+
|
|
80
|
+
cat >&2 << EOF
|
|
44
81
|
|
|
45
82
|
Required actions:
|
|
46
|
-
1.
|
|
47
|
-
2.
|
|
48
|
-
3. Commit any pending changes
|
|
49
|
-
4. Hand off to next agent OR tell user to start fresh session
|
|
83
|
+
1. Commit any pending changes
|
|
84
|
+
2. Tell user to start fresh session with /continue-session
|
|
50
85
|
|
|
51
86
|
DO NOT attempt further tool calls. This is a hard stop.
|
|
52
87
|
|
|
53
|
-
To resume later: /continue-session
|
|
88
|
+
To resume later: /continue-session
|
|
54
89
|
EOF
|
|
55
90
|
# Exit 2 blocks the tool execution
|
|
56
91
|
exit 2
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
#!/usr/bin/env zsh
|
|
2
|
+
# Schema Validation Hook
|
|
3
|
+
# Validates XML schema for session, skill, and workflow step files on Write operations
|
|
4
|
+
# Called by Claude Code PreToolUse hook
|
|
5
|
+
#
|
|
6
|
+
# Input: JSON via stdin with tool_name, tool_input
|
|
7
|
+
# Output: JSON with decision (allow/deny)
|
|
8
|
+
|
|
9
|
+
set -euo pipefail
|
|
10
|
+
|
|
11
|
+
# Find script directory (zsh compatible)
|
|
12
|
+
SCRIPT_DIR="${0:A:h}"
|
|
13
|
+
source "$SCRIPT_DIR/../lib/find-root.sh"
|
|
14
|
+
|
|
15
|
+
# Set PYTHONPATH for pennyfarthing_scripts
|
|
16
|
+
PENNYFARTHING_SCRIPTS=""
|
|
17
|
+
if [[ -d "$PROJECT_ROOT/pennyfarthing" ]]; then
|
|
18
|
+
# Dogfooding: framework inlined in orchestrator
|
|
19
|
+
PENNYFARTHING_SCRIPTS="$PROJECT_ROOT/pennyfarthing"
|
|
20
|
+
elif [[ -d "$PROJECT_ROOT/node_modules/@pennyfarthing/core" ]]; then
|
|
21
|
+
# Normal install
|
|
22
|
+
PENNYFARTHING_SCRIPTS="$PROJECT_ROOT/node_modules/@pennyfarthing/core"
|
|
23
|
+
fi
|
|
24
|
+
|
|
25
|
+
if [[ -n "$PENNYFARTHING_SCRIPTS" ]]; then
|
|
26
|
+
export PYTHONPATH="$PENNYFARTHING_SCRIPTS:${PYTHONPATH:-}"
|
|
27
|
+
fi
|
|
28
|
+
|
|
29
|
+
# Run Python validation hook
|
|
30
|
+
python3 -m pennyfarthing_scripts.schema_validation_hook
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
|
-
# Shared utility: Find project root
|
|
2
|
+
# Shared utility: Find project root
|
|
3
3
|
#
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
#
|
|
4
|
+
# Resolution order:
|
|
5
|
+
# 1. Honor explicit PROJECT_ROOT override (from Claude Code or user)
|
|
6
|
+
# 2. BASH_SOURCE derivation (auto-detect caller's location)
|
|
7
|
+
# 3. PWD walk looking for .pennyfarthing/ (fallback)
|
|
7
8
|
#
|
|
8
|
-
#
|
|
9
|
-
# source /
|
|
9
|
+
# Usage:
|
|
10
|
+
# source "$(dirname "${BASH_SOURCE[0]}")/../lib/find-root.sh"
|
|
10
11
|
# # PROJECT_ROOT is now set
|
|
11
12
|
|
|
12
13
|
# Allow explicit override
|
|
@@ -15,7 +16,31 @@ if [[ -n "${PROJECT_ROOT:-}" ]]; then
|
|
|
15
16
|
return 0 2>/dev/null || exit 0
|
|
16
17
|
fi
|
|
17
18
|
|
|
18
|
-
#
|
|
19
|
+
# BASH_SOURCE approach: derive from caller's location
|
|
20
|
+
# BASH_SOURCE[1] is the script that sourced us, BASH_SOURCE[0] is this file
|
|
21
|
+
_caller_script="${BASH_SOURCE[1]:-}"
|
|
22
|
+
if [[ -n "$_caller_script" ]]; then
|
|
23
|
+
_real_dir="$(cd "$(dirname "$_caller_script")" && pwd -P)"
|
|
24
|
+
if [[ "$_real_dir" == */pennyfarthing-dist/scripts/* ]] || \
|
|
25
|
+
[[ "$_real_dir" == */.pennyfarthing/scripts/* ]]; then
|
|
26
|
+
# Extract package root from path
|
|
27
|
+
_pkg="${_real_dir%/scripts/*}"
|
|
28
|
+
_pkg="${_pkg%/pennyfarthing-dist}"
|
|
29
|
+
_pkg="${_pkg%/.pennyfarthing}"
|
|
30
|
+
if [[ "$_pkg" == */node_modules/* ]]; then
|
|
31
|
+
PROJECT_ROOT="${_pkg%/node_modules/*}"
|
|
32
|
+
else
|
|
33
|
+
PROJECT_ROOT="$_pkg"
|
|
34
|
+
fi
|
|
35
|
+
unset _real_dir _pkg _caller_script
|
|
36
|
+
export PROJECT_ROOT
|
|
37
|
+
return 0 2>/dev/null || exit 0
|
|
38
|
+
fi
|
|
39
|
+
unset _real_dir
|
|
40
|
+
fi
|
|
41
|
+
unset _caller_script
|
|
42
|
+
|
|
43
|
+
# Fallback: walk up from PWD looking for .pennyfarthing/
|
|
19
44
|
_d="$PWD"
|
|
20
45
|
while [[ ! -d "$_d/.pennyfarthing" ]] && [[ "$_d" != "/" ]]; do
|
|
21
46
|
_d="$(dirname "$_d")"
|
|
@@ -6,6 +6,10 @@ allowed_tools: [Read, Glob, Grep, Task]
|
|
|
6
6
|
|
|
7
7
|
# Agentic Patterns Skill
|
|
8
8
|
|
|
9
|
+
<run>When designing agent behavior, debugging agent failures, improving agent reliability.</run>
|
|
10
|
+
|
|
11
|
+
<output>Core reasoning patterns for building effective LLM agents. Includes ReAct, Plan-and-Execute, Self-Reflection, confidence calibration, error recovery, multi-agent coordination, and context management strategies.</output>
|
|
12
|
+
|
|
9
13
|
**Purpose:** Core reasoning patterns for building effective LLM agents.
|
|
10
14
|
|
|
11
15
|
**Use when:** Designing agent behavior, debugging agent failures, improving agent reliability.
|
|
@@ -3,6 +3,24 @@ name: changelog
|
|
|
3
3
|
description: Maintain changelogs following Keep a Changelog format. Use when creating release notes, parsing conventional commits for changelog entries, auto-generating changelog sections from git history, or preparing CHANGELOG.md for releases.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
<run>
|
|
7
|
+
Commands for changelog maintenance:
|
|
8
|
+
- Parse conventional commits for changelog entries
|
|
9
|
+
- Auto-generate changelog sections from git history
|
|
10
|
+
- Version bump decisions using semantic versioning
|
|
11
|
+
- Create release notes and CHANGELOG.md updates
|
|
12
|
+
</run>
|
|
13
|
+
|
|
14
|
+
<output>
|
|
15
|
+
Changelog entries in Keep a Changelog format:
|
|
16
|
+
- Added (new features from `feat:` commits)
|
|
17
|
+
- Changed (changes from `perf:` commits, breaking changes)
|
|
18
|
+
- Deprecated (features marked for removal)
|
|
19
|
+
- Removed (removed features)
|
|
20
|
+
- Fixed (bug fixes from `fix:` commits)
|
|
21
|
+
- Security (vulnerability fixes)
|
|
22
|
+
</output>
|
|
23
|
+
|
|
6
24
|
# Changelog Management Skill
|
|
7
25
|
|
|
8
26
|
## When to Use This Skill
|
|
@@ -3,7 +3,11 @@ name: code-review
|
|
|
3
3
|
description: Code review checklists and patterns for Pennyfarthing. Use when reviewing PRs, self-reviewing code, or checking for common issues before commit.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Code Review Skill
|
|
6
|
+
# Code Review Skill
|
|
7
|
+
|
|
8
|
+
<run>Review code against the checklists below. Focus on authorization, error handling, TypeScript/React patterns, and performance.</run>
|
|
9
|
+
|
|
10
|
+
<output>Code review comments using [MUST FIX], [SUGGESTION], [QUESTION], [NICE] prefixes</output>
|
|
7
11
|
|
|
8
12
|
## Overview
|
|
9
13
|
|
|
@@ -6,6 +6,9 @@ allowed_tools: [Read, Glob, Grep, Task]
|
|
|
6
6
|
|
|
7
7
|
# Context Engineering Skill
|
|
8
8
|
|
|
9
|
+
<run>context-engineering</run>
|
|
10
|
+
<output>strategies for managing context windows in long-running agent sessions</output>
|
|
11
|
+
|
|
9
12
|
**Purpose:** Strategies for managing context windows efficiently in long-running agent sessions.
|
|
10
13
|
|
|
11
14
|
**Use when:** Working on complex tasks, approaching context limits, designing subagent prompts.
|
|
@@ -15,7 +15,7 @@ args: "[check|status]"
|
|
|
15
15
|
Check if running inside Cyclist visual terminal.
|
|
16
16
|
|
|
17
17
|
<run>
|
|
18
|
-
.pennyfarthing/scripts
|
|
18
|
+
.pennyfarthing/scripts/cyclist/is-cyclist.sh
|
|
19
19
|
</run>
|
|
20
20
|
|
|
21
21
|
<output>
|
|
@@ -23,7 +23,7 @@ JSON: `{"cyclist": true}` with exit 0 if in Cyclist, `{"cyclist": false}` with e
|
|
|
23
23
|
</output>
|
|
24
24
|
|
|
25
25
|
<example>
|
|
26
|
-
.pennyfarthing/scripts
|
|
26
|
+
.pennyfarthing/scripts/cyclist/is-cyclist.sh
|
|
27
27
|
# Returns: {"cyclist": true}
|
|
28
28
|
</example>
|
|
29
29
|
|
|
@@ -4,6 +4,30 @@ description: Common development patterns, fixes, and gotchas. Use when implement
|
|
|
4
4
|
allowed_tools: [Read, Glob, Grep, Task]
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
<run>
|
|
8
|
+
Reference this skill when implementing features, debugging issues, or avoiding known pitfalls in development. Use these patterns to guide:
|
|
9
|
+
- Working directory management in bash commands
|
|
10
|
+
- TypeScript type system decisions
|
|
11
|
+
- Error handling in Go
|
|
12
|
+
- Test structure and isolation
|
|
13
|
+
- HTTP status code selection
|
|
14
|
+
- Turn-efficient coding practices
|
|
15
|
+
- Background task execution
|
|
16
|
+
|
|
17
|
+
The patterns capture common gotchas and solutions across multiple languages and frameworks.
|
|
18
|
+
</run>
|
|
19
|
+
|
|
20
|
+
<output>
|
|
21
|
+
Following these patterns produces:
|
|
22
|
+
- Reliable bash commands that work regardless of current directory
|
|
23
|
+
- TypeScript builds that pass verbatimModuleSyntax validation
|
|
24
|
+
- Go code with proper error handling and validation
|
|
25
|
+
- Well-isolated, maintainable test suites
|
|
26
|
+
- Consistent HTTP API behavior
|
|
27
|
+
- Faster task completion through turn-efficient techniques
|
|
28
|
+
- Properly tracked background operations
|
|
29
|
+
</output>
|
|
30
|
+
|
|
7
31
|
# Dev Patterns Skill
|
|
8
32
|
|
|
9
33
|
## Overview
|
|
@@ -5,6 +5,9 @@ description: Validate and save benchmark run results. Use when completing a benc
|
|
|
5
5
|
|
|
6
6
|
# Finalize Run Skill
|
|
7
7
|
|
|
8
|
+
<run>Validates and saves benchmark run results</run>
|
|
9
|
+
<output>JSON with validation success status and saved file path</output>
|
|
10
|
+
|
|
8
11
|
All runs MUST pass through this skill before saving. This is the guardrail.
|
|
9
12
|
|
|
10
13
|
## Invocation
|
|
@@ -7,6 +7,14 @@ description: Evaluate agent responses using standardized rubrics. Use when scori
|
|
|
7
7
|
|
|
8
8
|
Canonical evaluation of agent responses. All judging goes through this skill.
|
|
9
9
|
|
|
10
|
+
<run>
|
|
11
|
+
Judge is invoked via CLI with `/judge --mode <mode> --data <json>` to evaluate agent responses using standardized rubrics. Modes include solo (single response), compare (two responses), phase-specific modes (SM/TEA/Dev/Reviewer), coherence (chain coherence), swebench (SWE-bench evaluation), and ground-truth (patch comparison).
|
|
12
|
+
</run>
|
|
13
|
+
|
|
14
|
+
<output>
|
|
15
|
+
Judge returns structured JSON output containing evaluation scores, weighted totals, reasoning, and token usage information. Output format varies by mode: solo/compare return individual or comparative scores with dimensions (correctness, depth, quality, persona); phase modes return team evaluations; coherence returns a rating (excellent/good/poor); swebench/ground-truth return deterministic scores via Python scripts. All responses include validation of results and error handling for failed evaluations.
|
|
16
|
+
</output>
|
|
17
|
+
|
|
10
18
|
## Invocation
|
|
11
19
|
|
|
12
20
|
```
|
|
@@ -8,6 +8,17 @@ args: "[recipe] [args...]"
|
|
|
8
8
|
|
|
9
9
|
# /just - Project Task Runner
|
|
10
10
|
|
|
11
|
+
<run>
|
|
12
|
+
Main commands:
|
|
13
|
+
- `just --list` - List all available recipes
|
|
14
|
+
- `just <recipe>` - Run a specific recipe (e.g., `just build`, `just test`, `just cyclist`)
|
|
15
|
+
</run>
|
|
16
|
+
|
|
17
|
+
<output>
|
|
18
|
+
- `just --list` outputs a list of available recipes with their descriptions
|
|
19
|
+
- Individual recipe commands output their execution results (build logs, test results, etc.) depending on the recipe
|
|
20
|
+
</output>
|
|
21
|
+
|
|
11
22
|
`just` is a command runner for project tasks. All commands run from the **project root**.
|
|
12
23
|
|
|
13
24
|
## Commands
|
|
@@ -3,6 +3,22 @@ name: mermaid
|
|
|
3
3
|
description: Generate diagrams using Mermaid syntax. Use this skill when creating architecture diagrams, sequence diagrams, ER diagrams, flowcharts, or any visual documentation in markdown files.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
+
<run>
|
|
7
|
+
Generate Mermaid diagrams by writing code blocks with the `mermaid` language identifier in markdown files. Mermaid syntax is rendered natively by GitHub, GitLab, and most markdown editors. Choose the appropriate diagram type (flowchart, sequence, ER, class, or state) based on what you need to visualize.
|
|
8
|
+
</run>
|
|
9
|
+
|
|
10
|
+
<output>
|
|
11
|
+
Mermaid code blocks that render as diagrams. Example output format:
|
|
12
|
+
|
|
13
|
+
```mermaid
|
|
14
|
+
flowchart TD
|
|
15
|
+
A[Start] --> B[Process]
|
|
16
|
+
B --> C[End]
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
The diagram renders visually in GitHub, GitLab, and compatible markdown viewers.
|
|
20
|
+
</output>
|
|
21
|
+
|
|
6
22
|
# Mermaid Diagram Skill
|
|
7
23
|
|
|
8
24
|
## When to Use This Skill
|
|
@@ -6,6 +6,10 @@ allowed_tools: [Read, Glob, Grep, Task]
|
|
|
6
6
|
|
|
7
7
|
# OTEL Skill - Claude Code Telemetry
|
|
8
8
|
|
|
9
|
+
<run>Enable OTEL debug logging and inspect telemetry data to understand span structure, attributes, and correlation patterns.</run>
|
|
10
|
+
|
|
11
|
+
<output>Enriched span data with tool metadata, file information, and correlation IDs for UI visualization and telemetry analysis.</output>
|
|
12
|
+
|
|
9
13
|
## Purpose
|
|
10
14
|
|
|
11
15
|
Document the actual OTEL data Claude Code emits. This is ground truth, not speculation.
|
|
@@ -5,6 +5,9 @@ description: Manage runtime permission grants - list active grants, add/revoke t
|
|
|
5
5
|
|
|
6
6
|
# Permission Management Skill
|
|
7
7
|
|
|
8
|
+
<run>/permissions</run>
|
|
9
|
+
<output>List all active permission grants</output>
|
|
10
|
+
|
|
8
11
|
## Overview
|
|
9
12
|
|
|
10
13
|
Pennyfarthing uses a runtime permission system for tool access control. This skill provides commands to view and manage permission grants.
|
|
@@ -7,6 +7,15 @@ description: Run benchmarks to compare persona effectiveness across themes. Use
|
|
|
7
7
|
|
|
8
8
|
Run benchmarks to compare persona effectiveness.
|
|
9
9
|
|
|
10
|
+
<run>
|
|
11
|
+
/persona-benchmark <test-case-id> <persona>
|
|
12
|
+
/persona-benchmark <test-case-id> <persona> [--analyze] [--suite]
|
|
13
|
+
</run>
|
|
14
|
+
|
|
15
|
+
<output>
|
|
16
|
+
Benchmark results saved to `.claude/benchmarks/results/{timestamp}-{persona}-{test-case-id}.yaml` with quantitative and qualitative metrics, or analysis summary when using `--analyze`.
|
|
17
|
+
</output>
|
|
18
|
+
|
|
10
19
|
## Usage
|
|
11
20
|
|
|
12
21
|
```
|