@pennyfarthing/core 7.9.2 → 7.9.5
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/package.json +2 -2
- package/pennyfarthing-dist/agents/README.md +348 -0
- package/pennyfarthing-dist/agents/architect.md +180 -0
- package/pennyfarthing-dist/agents/dev.md +169 -0
- package/pennyfarthing-dist/agents/devops.md +203 -0
- package/pennyfarthing-dist/agents/handoff.md +235 -0
- package/pennyfarthing-dist/agents/orchestrator.md +182 -0
- package/pennyfarthing-dist/agents/pm.md +152 -0
- package/pennyfarthing-dist/agents/reviewer-preflight.md +129 -0
- package/pennyfarthing-dist/agents/reviewer.md +180 -0
- package/pennyfarthing-dist/agents/sm-file-summary.md +79 -0
- package/pennyfarthing-dist/agents/sm-finish.md +82 -0
- package/pennyfarthing-dist/agents/sm-handoff.md +129 -0
- package/pennyfarthing-dist/agents/sm-setup.md +251 -0
- package/pennyfarthing-dist/agents/sm.md +284 -0
- package/pennyfarthing-dist/agents/tea.md +161 -0
- package/pennyfarthing-dist/agents/tech-writer.md +226 -0
- package/pennyfarthing-dist/agents/testing-runner.md +184 -0
- package/pennyfarthing-dist/agents/ux-designer.md +236 -0
- package/pennyfarthing-dist/agents/workflow-status-check.md +96 -0
- package/pennyfarthing-dist/commands/architect.md +7 -0
- package/pennyfarthing-dist/commands/benchmark-control.md +69 -0
- package/pennyfarthing-dist/commands/benchmark.md +485 -0
- package/pennyfarthing-dist/commands/brainstorming.md +91 -0
- package/pennyfarthing-dist/commands/check.md +156 -0
- package/pennyfarthing-dist/commands/chore.md +178 -0
- package/pennyfarthing-dist/commands/close-epic.md +139 -0
- package/pennyfarthing-dist/commands/continue-session.md +184 -0
- package/pennyfarthing-dist/commands/create-branches-from-story.md +358 -0
- package/pennyfarthing-dist/commands/create-theme.md +29 -0
- package/pennyfarthing-dist/commands/dev.md +7 -0
- package/pennyfarthing-dist/commands/devops.md +7 -0
- package/pennyfarthing-dist/commands/git-cleanup.md +51 -0
- package/pennyfarthing-dist/commands/health-check.md +141 -0
- package/pennyfarthing-dist/commands/help.md +264 -0
- package/pennyfarthing-dist/commands/job-fair.md +102 -0
- package/pennyfarthing-dist/commands/list-themes.md +21 -0
- package/pennyfarthing-dist/commands/orchestrator.md +7 -0
- package/pennyfarthing-dist/commands/parallel-work.md +71 -0
- package/pennyfarthing-dist/commands/party-mode.md +77 -0
- package/pennyfarthing-dist/commands/permissions.md +193 -0
- package/pennyfarthing-dist/commands/pm.md +7 -0
- package/pennyfarthing-dist/commands/prime.md +140 -0
- package/pennyfarthing-dist/commands/release.md +58 -0
- package/pennyfarthing-dist/commands/repo-status.md +49 -0
- package/pennyfarthing-dist/commands/retro.md +200 -0
- package/pennyfarthing-dist/commands/reviewer.md +7 -0
- package/pennyfarthing-dist/commands/run-ci.md +116 -0
- package/pennyfarthing-dist/commands/set-theme.md +56 -0
- package/pennyfarthing-dist/commands/show-theme.md +21 -0
- package/pennyfarthing-dist/commands/sm.md +7 -0
- package/pennyfarthing-dist/commands/solo.md +447 -0
- package/pennyfarthing-dist/commands/sprint-planning.md +109 -0
- package/pennyfarthing-dist/commands/sprint.md +133 -0
- package/pennyfarthing-dist/commands/standalone.md +194 -0
- package/pennyfarthing-dist/commands/start-epic.md +168 -0
- package/pennyfarthing-dist/commands/sync-epic-to-jira.md +184 -0
- package/pennyfarthing-dist/commands/sync-work-with-sprint.md +373 -0
- package/pennyfarthing-dist/commands/tea.md +7 -0
- package/pennyfarthing-dist/commands/tech-writer.md +7 -0
- package/pennyfarthing-dist/commands/theme-maker.md +676 -0
- package/pennyfarthing-dist/commands/update-domain-docs.md +83 -0
- package/pennyfarthing-dist/commands/ux-designer.md +7 -0
- package/pennyfarthing-dist/commands/work.md +23 -0
- package/pennyfarthing-dist/commands/workflow.md +21 -0
- package/pennyfarthing-dist/guides/agent-behavior.md +311 -0
- package/pennyfarthing-dist/guides/agent-coordination.md +480 -0
- package/pennyfarthing-dist/guides/agent-tag-taxonomy.md +432 -0
- package/pennyfarthing-dist/guides/agent-template-strategic.md +148 -0
- package/pennyfarthing-dist/guides/agent-template-tactical.md +162 -0
- package/pennyfarthing-dist/guides/hooks.md +230 -0
- package/pennyfarthing-dist/guides/measurement-framework.md +210 -0
- package/pennyfarthing-dist/guides/patterns/approval-gates-pattern.md +766 -0
- package/pennyfarthing-dist/guides/patterns/fan-out-fan-in-pattern.md +574 -0
- package/pennyfarthing-dist/guides/patterns/helper-delegation-pattern.md +488 -0
- package/pennyfarthing-dist/guides/patterns/tdd-flow-pattern.md +402 -0
- package/pennyfarthing-dist/guides/permission-protocol.md +188 -0
- package/pennyfarthing-dist/guides/persona-loading.md +46 -0
- package/pennyfarthing-dist/guides/prompt-patterns.md +338 -0
- package/pennyfarthing-dist/guides/scale-levels.md +114 -0
- package/pennyfarthing-dist/guides/session-artifacts.md +193 -0
- package/pennyfarthing-dist/guides/workflow-schema.md +257 -0
- package/pennyfarthing-dist/guides/worktree-mode.md +113 -0
- package/pennyfarthing-dist/guides/xml-tags.md +335 -0
- package/pennyfarthing-dist/output-styles/teaching.md +33 -0
- package/pennyfarthing-dist/output-styles/terse.md +20 -0
- package/pennyfarthing-dist/output-styles/verbose.md +28 -0
- package/pennyfarthing-dist/personas/BENCHMARK-METHODOLOGY.md +105 -0
- package/pennyfarthing-dist/personas/OCEAN-BENCHMARKING.md +210 -0
- package/pennyfarthing-dist/personas/TRAIL-OCEAN-MAPPING.md +168 -0
- package/pennyfarthing-dist/personas/ZEITGEIST-ANALYSIS.md +171 -0
- package/pennyfarthing-dist/personas/attributes.yaml +69 -0
- package/pennyfarthing-dist/personas/scripts/add-zeitgeist-calibrated.py +81 -0
- package/pennyfarthing-dist/personas/scripts/add-zeitgeist-scores.sh +56 -0
- package/pennyfarthing-dist/personas/themes/1984.yaml +304 -0
- package/pennyfarthing-dist/personas/themes/a-team.yaml +331 -0
- package/pennyfarthing-dist/personas/themes/agatha-christie.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/alice-in-wonderland.yaml +324 -0
- package/pennyfarthing-dist/personas/themes/all-stars.yaml +326 -0
- package/pennyfarthing-dist/personas/themes/ancient-philosophers.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/ancient-strategists.yaml +298 -0
- package/pennyfarthing-dist/personas/themes/arcane.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/arthurian-mythos.yaml +327 -0
- package/pennyfarthing-dist/personas/themes/avatar-the-last-airbender.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/babylon-5.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/battlestar-galactica.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/better-call-saul.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/big-lebowski.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/black-sails.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/blade-runner.yaml +289 -0
- package/pennyfarthing-dist/personas/themes/bobiverse.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/breaking-bad.yaml +319 -0
- package/pennyfarthing-dist/personas/themes/catch-22.yaml +304 -0
- package/pennyfarthing-dist/personas/themes/classical-composers.yaml +302 -0
- package/pennyfarthing-dist/personas/themes/control.yaml +201 -0
- package/pennyfarthing-dist/personas/themes/count-of-monte-cristo.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/cowboy-bebop.yaml +315 -0
- package/pennyfarthing-dist/personas/themes/deadwood.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/dickens.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/discworld.yaml +334 -0
- package/pennyfarthing-dist/personas/themes/doctor-who.yaml +284 -0
- package/pennyfarthing-dist/personas/themes/don-quixote.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/dune.yaml +301 -0
- package/pennyfarthing-dist/personas/themes/enlightenment-thinkers.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/expeditionary-force.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/fargo.yaml +322 -0
- package/pennyfarthing-dist/personas/themes/film-auteurs.yaml +304 -0
- package/pennyfarthing-dist/personas/themes/firefly.yaml +320 -0
- package/pennyfarthing-dist/personas/themes/foundation.yaml +284 -0
- package/pennyfarthing-dist/personas/themes/futurama.yaml +313 -0
- package/pennyfarthing-dist/personas/themes/game-of-thrones.yaml +284 -0
- package/pennyfarthing-dist/personas/themes/gilligans-island.yaml +365 -0
- package/pennyfarthing-dist/personas/themes/gothic-literature.yaml +300 -0
- package/pennyfarthing-dist/personas/themes/great-gatsby.yaml +300 -0
- package/pennyfarthing-dist/personas/themes/greek-mythology.yaml +326 -0
- package/pennyfarthing-dist/personas/themes/hannibal.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/harry-potter.yaml +316 -0
- package/pennyfarthing-dist/personas/themes/his-dark-materials.yaml +285 -0
- package/pennyfarthing-dist/personas/themes/historical-figures.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/hitchhikers-guide.yaml +323 -0
- package/pennyfarthing-dist/personas/themes/house-md.yaml +313 -0
- package/pennyfarthing-dist/personas/themes/imperial-radch.yaml +283 -0
- package/pennyfarthing-dist/personas/themes/inspector-morse.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/jane-austen.yaml +281 -0
- package/pennyfarthing-dist/personas/themes/jazz-legends.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/justified.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/legion-of-doom.yaml +343 -0
- package/pennyfarthing-dist/personas/themes/les-miserables.yaml +293 -0
- package/pennyfarthing-dist/personas/themes/lord-of-the-rings.yaml +326 -0
- package/pennyfarthing-dist/personas/themes/lovecraft-mythos.yaml +325 -0
- package/pennyfarthing-dist/personas/themes/mad-max.yaml +349 -0
- package/pennyfarthing-dist/personas/themes/mad-men.yaml +283 -0
- package/pennyfarthing-dist/personas/themes/marvel-mcu.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/mash.yaml +329 -0
- package/pennyfarthing-dist/personas/themes/mass-effect.yaml +283 -0
- package/pennyfarthing-dist/personas/themes/military-commanders.yaml +298 -0
- package/pennyfarthing-dist/personas/themes/moby-dick.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/monty-python.yaml +297 -0
- package/pennyfarthing-dist/personas/themes/neuromancer.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/norse-mythology.yaml +321 -0
- package/pennyfarthing-dist/personas/themes/parks-and-rec.yaml +364 -0
- package/pennyfarthing-dist/personas/themes/peaky-blinders.yaml +292 -0
- package/pennyfarthing-dist/personas/themes/princess-bride.yaml +344 -0
- package/pennyfarthing-dist/personas/themes/renaissance-masters.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/rome.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/russian-masters.yaml +310 -0
- package/pennyfarthing-dist/personas/themes/sandman.yaml +282 -0
- package/pennyfarthing-dist/personas/themes/scientific-revolutionaries.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/shakespeare.yaml +295 -0
- package/pennyfarthing-dist/personas/themes/sherlock-holmes.yaml +283 -0
- package/pennyfarthing-dist/personas/themes/snow-crash.yaml +290 -0
- package/pennyfarthing-dist/personas/themes/software-pioneers.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/star-trek-tng.yaml +358 -0
- package/pennyfarthing-dist/personas/themes/star-trek-tos.yaml +327 -0
- package/pennyfarthing-dist/personas/themes/star-wars.yaml +297 -0
- package/pennyfarthing-dist/personas/themes/succession.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/superfriends.yaml +332 -0
- package/pennyfarthing-dist/personas/themes/ted-lasso.yaml +359 -0
- package/pennyfarthing-dist/personas/themes/the-americans.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/the-crown.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/the-expanse.yaml +337 -0
- package/pennyfarthing-dist/personas/themes/the-good-place.yaml +315 -0
- package/pennyfarthing-dist/personas/themes/the-matrix.yaml +342 -0
- package/pennyfarthing-dist/personas/themes/the-odyssey.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/the-office.yaml +323 -0
- package/pennyfarthing-dist/personas/themes/the-simpsons.yaml +300 -0
- package/pennyfarthing-dist/personas/themes/the-sopranos.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/the-wire.yaml +303 -0
- package/pennyfarthing-dist/personas/themes/the-witcher.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/twin-peaks.yaml +296 -0
- package/pennyfarthing-dist/personas/themes/vorkosigan-saga.yaml +294 -0
- package/pennyfarthing-dist/personas/themes/watchmen.yaml +285 -0
- package/pennyfarthing-dist/personas/themes/west-wing.yaml +285 -0
- package/pennyfarthing-dist/personas/themes/world-explorers.yaml +312 -0
- package/pennyfarthing-dist/personas/themes/wwii-leaders.yaml +299 -0
- package/pennyfarthing-dist/personas/themes/x-files.yaml +296 -0
- package/pennyfarthing-dist/personas/zeitgeist-scores.yaml +1172 -0
- package/pennyfarthing-dist/scripts/README.md +87 -0
- package/pennyfarthing-dist/scripts/core/README.md +26 -0
- package/pennyfarthing-dist/scripts/core/agent-session.sh +383 -0
- package/pennyfarthing-dist/scripts/core/check-context.sh +280 -0
- package/pennyfarthing-dist/scripts/core/handoff-marker.sh +101 -0
- package/pennyfarthing-dist/scripts/core/phase-check-start.sh +95 -0
- package/pennyfarthing-dist/scripts/core/prime.sh +30 -0
- package/pennyfarthing-dist/scripts/core/run.sh +92 -0
- package/pennyfarthing-dist/scripts/cyclist/is-cyclist.sh +21 -0
- package/pennyfarthing-dist/scripts/git/README.md +25 -0
- package/pennyfarthing-dist/scripts/git/create-feature-branches.sh +267 -0
- package/pennyfarthing-dist/scripts/git/git-status-all.sh +152 -0
- package/pennyfarthing-dist/scripts/git/install-git-hooks.sh +91 -0
- package/pennyfarthing-dist/scripts/git/release.sh +215 -0
- package/pennyfarthing-dist/scripts/git/worktree-manager.sh +494 -0
- package/pennyfarthing-dist/scripts/health/drift-detection.sh +162 -0
- package/pennyfarthing-dist/scripts/hooks/README.md +32 -0
- package/pennyfarthing-dist/scripts/hooks/bell-mode-hook.sh +106 -0
- package/pennyfarthing-dist/scripts/hooks/context-circuit-breaker.sh +60 -0
- package/pennyfarthing-dist/scripts/hooks/context-warning.sh +65 -0
- package/pennyfarthing-dist/scripts/hooks/otel-auto-config.sh +35 -0
- package/pennyfarthing-dist/scripts/hooks/post-merge.sh +166 -0
- package/pennyfarthing-dist/scripts/hooks/pre-commit.sh +107 -0
- package/pennyfarthing-dist/scripts/hooks/pre-edit-check.sh +71 -0
- package/pennyfarthing-dist/scripts/hooks/pre-push.sh +54 -0
- package/pennyfarthing-dist/scripts/hooks/question-reflector-check.sh +20 -0
- package/pennyfarthing-dist/scripts/hooks/question_reflector_check.py +499 -0
- package/pennyfarthing-dist/scripts/hooks/session-start.sh +97 -0
- package/pennyfarthing-dist/scripts/hooks/session-stop.sh +65 -0
- package/pennyfarthing-dist/scripts/hooks/welcome-hook.sh +94 -0
- package/pennyfarthing-dist/scripts/jira/README.md +36 -0
- package/pennyfarthing-dist/scripts/jira/create-jira-epic.sh +101 -0
- package/pennyfarthing-dist/scripts/jira/create-jira-story.sh +97 -0
- package/pennyfarthing-dist/scripts/jira/jira-claim-story.sh +22 -0
- package/pennyfarthing-dist/scripts/jira/jira-lib.sh +464 -0
- package/pennyfarthing-dist/scripts/jira/jira-reconcile.sh +266 -0
- package/pennyfarthing-dist/scripts/jira/jira-sync-story.sh +18 -0
- package/pennyfarthing-dist/scripts/jira/jira-sync.sh +16 -0
- package/pennyfarthing-dist/scripts/jira/sync-epic-jira.sh +16 -0
- package/pennyfarthing-dist/scripts/jira/sync-epic-to-jira.sh +16 -0
- package/pennyfarthing-dist/scripts/lib/README.md +29 -0
- package/pennyfarthing-dist/scripts/lib/background-tasks.sh +177 -0
- package/pennyfarthing-dist/scripts/lib/checkpoint.sh +136 -0
- package/pennyfarthing-dist/scripts/lib/common.sh +212 -0
- package/pennyfarthing-dist/scripts/lib/file-lock.sh +269 -0
- package/pennyfarthing-dist/scripts/lib/find-root.sh +35 -0
- package/pennyfarthing-dist/scripts/lib/logging.sh +186 -0
- package/pennyfarthing-dist/scripts/lib/retry.sh +76 -0
- package/pennyfarthing-dist/scripts/maintenance/migrate-theme-schema.mjs +102 -0
- package/pennyfarthing-dist/scripts/maintenance/sidecar-health.sh +97 -0
- package/pennyfarthing-dist/scripts/misc/README.md +44 -0
- package/pennyfarthing-dist/scripts/misc/add-short-names.sh +13 -0
- package/pennyfarthing-dist/scripts/misc/add_short_names.py +226 -0
- package/pennyfarthing-dist/scripts/misc/backlog.sh +91 -0
- package/pennyfarthing-dist/scripts/misc/check-status.sh +247 -0
- package/pennyfarthing-dist/scripts/misc/find-related-work.sh +231 -0
- package/pennyfarthing-dist/scripts/misc/generate-skill-docs.sh +122 -0
- package/pennyfarthing-dist/scripts/misc/log-skill-usage.sh +74 -0
- package/pennyfarthing-dist/scripts/misc/migrate-bmad-workflow.sh +10 -0
- package/pennyfarthing-dist/scripts/misc/migrate_bmad_workflow.py +319 -0
- package/pennyfarthing-dist/scripts/misc/repo-scan.sh +141 -0
- package/pennyfarthing-dist/scripts/misc/repo-utils.sh +778 -0
- package/pennyfarthing-dist/scripts/misc/run-ci.sh +219 -0
- package/pennyfarthing-dist/scripts/misc/run-timestamp.sh +7 -0
- package/pennyfarthing-dist/scripts/misc/session-cleanup.sh +319 -0
- package/pennyfarthing-dist/scripts/misc/skill-usage-report.sh +193 -0
- package/pennyfarthing-dist/scripts/misc/statusline.sh +259 -0
- package/pennyfarthing-dist/scripts/misc/uninstall.sh +270 -0
- package/pennyfarthing-dist/scripts/misc/validate-subagent-frontmatter.sh +160 -0
- package/pennyfarthing-dist/scripts/portraits/generate-portraits.py +400 -0
- package/pennyfarthing-dist/scripts/portraits/generate-portraits.sh +54 -0
- package/pennyfarthing-dist/scripts/sprint/README.md +29 -0
- package/pennyfarthing-dist/scripts/sprint/archive-story.sh +139 -0
- package/pennyfarthing-dist/scripts/sprint/available-stories.sh +97 -0
- package/pennyfarthing-dist/scripts/sprint/check-story.sh +164 -0
- package/pennyfarthing-dist/scripts/sprint/get-epic-field.sh +58 -0
- package/pennyfarthing-dist/scripts/sprint/get-story-field.sh +69 -0
- package/pennyfarthing-dist/scripts/sprint/import-epic-to-future.sh +10 -0
- package/pennyfarthing-dist/scripts/sprint/import_epic_to_future.py +270 -0
- package/pennyfarthing-dist/scripts/sprint/list-future.sh +151 -0
- package/pennyfarthing-dist/scripts/sprint/new-sprint.sh +116 -0
- package/pennyfarthing-dist/scripts/sprint/promote-epic.sh +154 -0
- package/pennyfarthing-dist/scripts/sprint/sprint-common.sh +421 -0
- package/pennyfarthing-dist/scripts/sprint/sprint-info.sh +39 -0
- package/pennyfarthing-dist/scripts/sprint/sprint-metrics.sh +241 -0
- package/pennyfarthing-dist/scripts/sprint/sprint-status.sh +134 -0
- package/pennyfarthing-dist/scripts/story/README.md +23 -0
- package/pennyfarthing-dist/scripts/story/create-story.sh +19 -0
- package/pennyfarthing-dist/scripts/story/size-story.sh +18 -0
- package/pennyfarthing-dist/scripts/story/story-template.sh +18 -0
- package/pennyfarthing-dist/scripts/test/README.md +23 -0
- package/pennyfarthing-dist/scripts/test/ensure-swebench-data.sh +59 -0
- package/pennyfarthing-dist/scripts/test/ground-truth-judge.py +220 -0
- package/pennyfarthing-dist/scripts/test/swebench-judge.py +374 -0
- package/pennyfarthing-dist/scripts/test/test-cache.sh +165 -0
- package/pennyfarthing-dist/scripts/test/test-setup.sh +337 -0
- package/pennyfarthing-dist/scripts/tests/check.test.sh +582 -0
- package/pennyfarthing-dist/scripts/tests/dev-story-workflow-import.test.sh +515 -0
- package/pennyfarthing-dist/scripts/tests/epics-and-stories-workflow-import.test.sh +599 -0
- package/pennyfarthing-dist/scripts/tests/handoff-phase-update.test.sh +332 -0
- package/pennyfarthing-dist/scripts/tests/implementation-readiness-workflow-import.test.sh +573 -0
- package/pennyfarthing-dist/scripts/tests/migrate-bmad-workflow.test.sh +859 -0
- package/pennyfarthing-dist/scripts/tests/prd-workflow-import.test.sh +662 -0
- package/pennyfarthing-dist/scripts/tests/project-context-workflow-import.test.sh +589 -0
- package/pennyfarthing-dist/scripts/tests/test-character-voice.sh +105 -0
- package/pennyfarthing-dist/scripts/tests/test-drift-detection.sh +597 -0
- package/pennyfarthing-dist/scripts/tests/test-post-merge-hook.sh +514 -0
- package/pennyfarthing-dist/scripts/tests/test-session-checkpoint.sh +517 -0
- package/pennyfarthing-dist/scripts/tests/test-solo-command.sh +331 -0
- package/pennyfarthing-dist/scripts/tests/ux-design-workflow-import.test.sh +647 -0
- package/pennyfarthing-dist/scripts/theme/README.md +22 -0
- package/pennyfarthing-dist/scripts/theme/compute-theme-tiers.sh +13 -0
- package/pennyfarthing-dist/scripts/theme/compute_theme_tiers.py +402 -0
- package/pennyfarthing-dist/scripts/theme/list-themes.sh +73 -0
- package/pennyfarthing-dist/scripts/theme/update-theme-tiers.sh +97 -0
- package/pennyfarthing-dist/scripts/validation/validate-agent-schema.sh +576 -0
- package/pennyfarthing-dist/scripts/workflow/README.md +28 -0
- package/pennyfarthing-dist/scripts/workflow/check.py +502 -0
- package/pennyfarthing-dist/scripts/workflow/check.sh +24 -0
- package/pennyfarthing-dist/scripts/workflow/finish-story.sh +159 -0
- package/pennyfarthing-dist/scripts/workflow/fix-session-phase.sh +228 -0
- package/pennyfarthing-dist/scripts/workflow/get-workflow-type.py +61 -0
- package/pennyfarthing-dist/scripts/workflow/get-workflow-type.sh +13 -0
- package/pennyfarthing-dist/scripts/workflow/list-workflows.sh +130 -0
- package/pennyfarthing-dist/scripts/workflow/phase-owner.sh +40 -0
- package/pennyfarthing-dist/scripts/workflow/resume-workflow.sh +163 -0
- package/pennyfarthing-dist/scripts/workflow/show-workflow.sh +138 -0
- package/pennyfarthing-dist/scripts/workflow/start-workflow.sh +256 -0
- package/pennyfarthing-dist/scripts/workflow/workflow-status.sh +167 -0
- package/pennyfarthing-dist/skills/agentic-patterns/SKILL.md +242 -0
- package/pennyfarthing-dist/skills/changelog/SKILL.md +367 -0
- package/pennyfarthing-dist/skills/code-review/SKILL.md +168 -0
- package/pennyfarthing-dist/skills/context-engineering/SKILL.md +274 -0
- package/pennyfarthing-dist/skills/cyclist/SKILL.md +88 -0
- package/pennyfarthing-dist/skills/dev-patterns/SKILL.md +437 -0
- package/pennyfarthing-dist/skills/finalize-run/SKILL.md +258 -0
- package/pennyfarthing-dist/skills/jira/SKILL.md +484 -0
- package/pennyfarthing-dist/skills/judge/SKILL.md +636 -0
- package/pennyfarthing-dist/skills/just/SKILL.md +403 -0
- package/pennyfarthing-dist/skills/mermaid/SKILL.md +240 -0
- package/pennyfarthing-dist/skills/otel/skill.md +223 -0
- package/pennyfarthing-dist/skills/permissions/skill.md +172 -0
- package/pennyfarthing-dist/skills/persona-benchmark/SKILL.md +178 -0
- package/pennyfarthing-dist/skills/skill-registry.schema.json +107 -0
- package/pennyfarthing-dist/skills/skill-registry.yaml +393 -0
- package/pennyfarthing-dist/skills/sprint/scripts/archive-story.sh +101 -0
- package/pennyfarthing-dist/skills/sprint/scripts/available-stories.sh +97 -0
- package/pennyfarthing-dist/skills/sprint/scripts/check-story.sh +164 -0
- package/pennyfarthing-dist/skills/sprint/scripts/create-jira-epic.sh +101 -0
- package/pennyfarthing-dist/skills/sprint/scripts/new-sprint.sh +116 -0
- package/pennyfarthing-dist/skills/sprint/scripts/promote-epic.sh +164 -0
- package/pennyfarthing-dist/skills/sprint/scripts/sprint-info.sh +39 -0
- package/pennyfarthing-dist/skills/sprint/scripts/sprint-status.sh +147 -0
- package/pennyfarthing-dist/skills/sprint/scripts/sync-epic-jira.sh +86 -0
- package/pennyfarthing-dist/skills/sprint/skill.md +465 -0
- package/pennyfarthing-dist/skills/story/scripts/create-story.sh +159 -0
- package/pennyfarthing-dist/skills/story/scripts/size-story.sh +198 -0
- package/pennyfarthing-dist/skills/story/scripts/story-template.sh +162 -0
- package/pennyfarthing-dist/skills/story/skill.md +219 -0
- package/pennyfarthing-dist/skills/systematic-debugging/SKILL.md +390 -0
- package/pennyfarthing-dist/skills/testing/SKILL.md +99 -0
- package/pennyfarthing-dist/skills/testing/references/troubleshooting.md +124 -0
- package/pennyfarthing-dist/skills/theme/skill.md +129 -0
- package/pennyfarthing-dist/skills/theme-creation/SKILL.md +174 -0
- package/pennyfarthing-dist/skills/workflow/scripts/list-workflows.sh +91 -0
- package/pennyfarthing-dist/skills/workflow/scripts/resume-workflow.sh +163 -0
- package/pennyfarthing-dist/skills/workflow/scripts/show-workflow.sh +138 -0
- package/pennyfarthing-dist/skills/workflow/scripts/start-workflow.sh +273 -0
- package/pennyfarthing-dist/skills/workflow/scripts/workflow-status.sh +167 -0
- package/pennyfarthing-dist/skills/workflow/skill.md +337 -0
- package/pennyfarthing-dist/skills/yq/SKILL.md +264 -0
- package/pennyfarthing-dist/templates/LEADERBOARD.schema.yaml +187 -0
- package/pennyfarthing-dist/templates/LEADERBOARD.template.md +59 -0
- package/pennyfarthing-dist/templates/agent-scopes.yaml.template +276 -0
- package/pennyfarthing-dist/templates/pennyfarthing-settings.yaml.template +61 -0
- package/pennyfarthing-dist/templates/persona-config.yaml.template +22 -0
- package/pennyfarthing-dist/templates/preferences.yaml.template +15 -0
- package/pennyfarthing-dist/templates/settings.local.json.template +101 -0
- package/pennyfarthing-dist/templates/setup-env.sh.template +18 -0
- package/pennyfarthing-dist/templates/shared-context.md.template +70 -0
- package/pennyfarthing-dist/templates/sidecar/decisions.md.template +40 -0
- package/pennyfarthing-dist/templates/sidecar/gotchas.md.template +37 -0
- package/pennyfarthing-dist/templates/sidecar/patterns.md.template +34 -0
- package/pennyfarthing-dist/workflows/agent-docs.yaml +70 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-01-initialize.md +101 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-01b-continue.md +93 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-02-context.md +115 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-03-patterns.md +133 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-04-components.md +138 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-05-interfaces.md +133 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-06-risks.md +142 -0
- package/pennyfarthing-dist/workflows/architecture/steps/step-07-document.md +160 -0
- package/pennyfarthing-dist/workflows/architecture/templates/architecture-decision.md +102 -0
- package/pennyfarthing-dist/workflows/architecture.yaml +65 -0
- package/pennyfarthing-dist/workflows/bdd.yaml +60 -0
- package/pennyfarthing-dist/workflows/brainstorming/brain-methods.csv +62 -0
- package/pennyfarthing-dist/workflows/brainstorming/checklist.md +44 -0
- package/pennyfarthing-dist/workflows/brainstorming/instructions.md +736 -0
- package/pennyfarthing-dist/workflows/brainstorming/workflow.yaml +49 -0
- package/pennyfarthing-dist/workflows/code-review/checklist.md +23 -0
- package/pennyfarthing-dist/workflows/code-review/instructions.md +234 -0
- package/pennyfarthing-dist/workflows/code-review/workflow.yaml +51 -0
- package/pennyfarthing-dist/workflows/dev-story/checklist.md +80 -0
- package/pennyfarthing-dist/workflows/dev-story/instructions.xml +410 -0
- package/pennyfarthing-dist/workflows/dev-story/workflow.yaml +50 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-01-validate-prerequisites.md +256 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-02-design-epics.md +233 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-03-create-stories.md +272 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-04-final-validation.md +153 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-05-import-to-future.md +122 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/templates/epics-template.md +57 -0
- package/pennyfarthing-dist/workflows/epics-and-stories/workflow.yaml +28 -0
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-01-analyze.md +101 -0
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-02-categorize.md +116 -0
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-03-execute.md +224 -0
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-04-verify.md +88 -0
- package/pennyfarthing-dist/workflows/git-cleanup/steps/step-05-complete.md +79 -0
- package/pennyfarthing-dist/workflows/git-cleanup.yaml +59 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-01-document-discovery.md +190 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-02-prd-analysis.md +178 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-03-epic-coverage-validation.md +179 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-04-ux-alignment.md +139 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-05-epic-quality-review.md +252 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-06-final-assessment.md +133 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/templates/readiness-report-template.md +4 -0
- package/pennyfarthing-dist/workflows/implementation-readiness/workflow.yaml +40 -0
- package/pennyfarthing-dist/workflows/prd/data/domain-complexity.csv +13 -0
- package/pennyfarthing-dist/workflows/prd/data/prd-purpose.md +197 -0
- package/pennyfarthing-dist/workflows/prd/data/project-types.csv +11 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-01-init.md +191 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-01b-continue.md +153 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-02-discovery.md +224 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-03-success.md +226 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-04-journeys.md +213 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-05-domain.md +207 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-06-innovation.md +226 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-07-project-type.md +237 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-08-scoping.md +228 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-09-functional.md +231 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-10-nonfunctional.md +242 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-11-polish.md +217 -0
- package/pennyfarthing-dist/workflows/prd/steps-c/step-12-complete.md +180 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-01-discovery.md +247 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-02-review.md +249 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-03-edit.md +253 -0
- package/pennyfarthing-dist/workflows/prd/steps-e/step-e-04-complete.md +168 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-01-discovery.md +218 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-02-format-detection.md +191 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-02b-parity-check.md +209 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-03-density-validation.md +174 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-05-measurability-validation.md +228 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-06-traceability-validation.md +217 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-09-project-type-validation.md +263 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-10-smart-validation.md +209 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-12-completeness-validation.md +242 -0
- package/pennyfarthing-dist/workflows/prd/steps-v/step-v-13-report-complete.md +232 -0
- package/pennyfarthing-dist/workflows/prd/templates/prd-template.md +10 -0
- package/pennyfarthing-dist/workflows/prd/workflow.yaml +42 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-01-init.md +177 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-01b-continue.md +161 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-02-vision.md +199 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-03-users.md +202 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-04-metrics.md +205 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-05-scope.md +219 -0
- package/pennyfarthing-dist/workflows/product-brief/steps/step-06-complete.md +194 -0
- package/pennyfarthing-dist/workflows/product-brief/templates/product-brief.template.md +10 -0
- package/pennyfarthing-dist/workflows/product-brief/workflow.yaml +31 -0
- package/pennyfarthing-dist/workflows/project-context/project-context-template.md +21 -0
- package/pennyfarthing-dist/workflows/project-context/steps/step-01-discover.md +184 -0
- package/pennyfarthing-dist/workflows/project-context/steps/step-02-generate.md +318 -0
- package/pennyfarthing-dist/workflows/project-context/steps/step-03-complete.md +278 -0
- package/pennyfarthing-dist/workflows/project-context/workflow.yaml +27 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-01-mode-detection.md +156 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-02-context-gathering.md +120 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-03-execute.md +113 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-04-self-check.md +113 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-05-adversarial-review.md +106 -0
- package/pennyfarthing-dist/workflows/quick-dev/steps/step-06-resolve-findings.md +140 -0
- package/pennyfarthing-dist/workflows/quick-dev/workflow.yaml +27 -0
- package/pennyfarthing-dist/workflows/quick-spec/steps/step-01-understand.md +189 -0
- package/pennyfarthing-dist/workflows/quick-spec/steps/step-02-investigate.md +144 -0
- package/pennyfarthing-dist/workflows/quick-spec/steps/step-03-generate.md +128 -0
- package/pennyfarthing-dist/workflows/quick-spec/steps/step-04-review.md +191 -0
- package/pennyfarthing-dist/workflows/quick-spec/tech-spec-template.md +74 -0
- package/pennyfarthing-dist/workflows/quick-spec/workflow.yaml +27 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-01-init.md +137 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-02-domain-analysis.md +229 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-03-competitive-landscape.md +238 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-04-regulatory-focus.md +206 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-05-technical-trends.md +234 -0
- package/pennyfarthing-dist/workflows/research/steps-domain/step-06-research-synthesis.md +443 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-01-init.md +182 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-02-customer-behavior.md +237 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-02-customer-insights.md +200 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-03-customer-pain-points.md +249 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-04-customer-decisions.md +259 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-05-competitive-analysis.md +177 -0
- package/pennyfarthing-dist/workflows/research/steps-market/step-06-research-completion.md +475 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-01-init.md +137 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-02-technical-overview.md +239 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-03-integration-patterns.md +248 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-04-architectural-patterns.md +202 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-05-implementation-research.md +239 -0
- package/pennyfarthing-dist/workflows/research/steps-technical/step-06-research-synthesis.md +486 -0
- package/pennyfarthing-dist/workflows/research/templates/research.template.md +29 -0
- package/pennyfarthing-dist/workflows/research/workflow.yaml +45 -0
- package/pennyfarthing-dist/workflows/retrospective/checklist.md +31 -0
- package/pennyfarthing-dist/workflows/retrospective/instructions.md +1443 -0
- package/pennyfarthing-dist/workflows/retrospective/workflow.yaml +50 -0
- package/pennyfarthing-dist/workflows/sprint-planning/checklist.md +33 -0
- package/pennyfarthing-dist/workflows/sprint-planning/sprint-status-template.yaml +55 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-01-parse-epic-files.md +54 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-02-build-sprint-status.md +44 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-03-status-detection.md +64 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-04-generate-status-file.md +73 -0
- package/pennyfarthing-dist/workflows/sprint-planning/steps/step-05-validate-and-report.md +56 -0
- package/pennyfarthing-dist/workflows/sprint-planning/workflow.yaml +34 -0
- package/pennyfarthing-dist/workflows/tdd.yaml +50 -0
- package/pennyfarthing-dist/workflows/trivial.yaml +40 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-01-init.md +135 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-01b-continue.md +127 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-02-discovery.md +190 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-03-core-experience.md +216 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-04-emotional-response.md +219 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-05-inspiration.md +234 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-06-design-system.md +252 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-07-defining-experience.md +254 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-08-visual-foundation.md +224 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-09-design-directions.md +224 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-10-user-journeys.md +241 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-11-component-strategy.md +248 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-12-ux-patterns.md +237 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-13-responsive-accessibility.md +264 -0
- package/pennyfarthing-dist/workflows/ux-design/steps/step-14-complete.md +228 -0
- package/pennyfarthing-dist/workflows/ux-design/ux-design-template.md +13 -0
- package/pennyfarthing-dist/workflows/ux-design/workflow.yaml +41 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Update CLAUDE-*.md domain documentation files based on current codebase
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Update Domain Documentation
|
|
6
|
+
|
|
7
|
+
You are a documentation updater. Your job is to refresh the `internal/CLAUDE-*.md` domain documentation files to reflect the current state of the codebase.
|
|
8
|
+
|
|
9
|
+
## Process
|
|
10
|
+
|
|
11
|
+
### 1. Analyze Current Code Structure
|
|
12
|
+
|
|
13
|
+
For each domain, scan the relevant files and extract:
|
|
14
|
+
- Service files and their main functions
|
|
15
|
+
- Handler files and their endpoints
|
|
16
|
+
- Model files and their structs
|
|
17
|
+
- Worker files (if applicable)
|
|
18
|
+
- Test files
|
|
19
|
+
|
|
20
|
+
### 2. Domain Mappings
|
|
21
|
+
|
|
22
|
+
Use these file patterns to identify domain content:
|
|
23
|
+
|
|
24
|
+
| Domain | Service Pattern | Handler Pattern | Model Pattern | Worker Pattern |
|
|
25
|
+
|--------|-----------------|-----------------|---------------|----------------|
|
|
26
|
+
| ticket | `ticket_*.go`, `activity_*.go`, `event_*.go`, `bulk_*.go` | `ticket_*.go`, `events.go` | `ticket.go`, `activity_log.go`, `event.go` | `event_worker.go` |
|
|
27
|
+
| escalation | `sla_*.go`, `escalation_*.go` | `sla_*.go`, `escalation_*.go` | `sla*.go`, `escalation.go` | `sla_violation_checker.go` |
|
|
28
|
+
| notification | `notifiers/*`, `quota_alert_*.go` | `notification_*.go` | `notification_*.go`, `quota_alert.go` | `notification_*.go` |
|
|
29
|
+
| search | `search_*.go`, `filter_*.go`, `similarity_*.go` | `search_*.go`, `filter_*.go`, `similarity_*.go` | `filter_preset.go` | - |
|
|
30
|
+
| impact | `impact_*.go`, `risk_*.go`, `predictive_*.go` | `ticket_impact_*.go` | `impact.go`, `risk_*.go`, `historical_*.go` | - |
|
|
31
|
+
| asset | `asset_*.go`, `client_asset_*.go`, `completeness_*.go` | `asset_*.go`, `client_asset_*.go`, `completeness_*.go` | `asset.go`, `score_history.go` | - |
|
|
32
|
+
| dashboard | `dashboard_*.go`, `system_metrics_*.go`, `consolidation_*.go`, `metrics_collector.go` | `dashboard_*.go`, `metrics_*.go`, `analytics_*.go` | `dashboard_*.go`, `metrics.go` | - |
|
|
33
|
+
| compliance | `audit_*.go`, `compliance_*.go`, `merkle_*.go` | `audit_*.go`, `compliance_*.go` | `audit_log.go`, `compliance.go`, `legal_hold.go` | - |
|
|
34
|
+
| feedback | `feedback_*.go` | `feedback_*.go` | `feedback.go` | - |
|
|
35
|
+
| client | `client_*.go`, `tenant_*.go`, `resource_*.go` | `client_*.go`, `tenant_*.go` | `client*.go` | - |
|
|
36
|
+
| admin | `admin_*.go` | `admin_*.go` | `admin.go` | - |
|
|
37
|
+
|
|
38
|
+
### 3. For Each Domain, Update:
|
|
39
|
+
|
|
40
|
+
1. **Key Files section** - List actual files that exist (exclude _test.go in main list)
|
|
41
|
+
2. **API Endpoints section** - Extract from handler files using grep for route patterns
|
|
42
|
+
3. **Key Concepts** - Keep existing if accurate, update if code changed
|
|
43
|
+
4. **Testing section** - Verify test command patterns work
|
|
44
|
+
|
|
45
|
+
### 4. Update Process
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
# For each domain, run these to gather info:
|
|
49
|
+
ls internal/services/*{pattern}*.go 2>/dev/null | grep -v _test
|
|
50
|
+
ls internal/handlers/*{pattern}*.go 2>/dev/null | grep -v _test
|
|
51
|
+
ls internal/models/*{pattern}*.go 2>/dev/null | grep -v _test
|
|
52
|
+
ls internal/workers/*{pattern}*.go 2>/dev/null | grep -v _test
|
|
53
|
+
|
|
54
|
+
# Extract API routes from handlers:
|
|
55
|
+
grep -h "\.GET\|\.POST\|\.PUT\|\.PATCH\|\.DELETE" internal/handlers/{pattern}*.go | head -20
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 5. Output
|
|
59
|
+
|
|
60
|
+
After updating each file:
|
|
61
|
+
1. Show what changed (new files added, removed files, new endpoints)
|
|
62
|
+
2. Confirm the update was made
|
|
63
|
+
|
|
64
|
+
### 6. Update Index
|
|
65
|
+
|
|
66
|
+
After all domain files are updated, refresh `internal/CLAUDE.md`:
|
|
67
|
+
- Update the keyword table if new keywords discovered
|
|
68
|
+
- Update file sizes in any size references
|
|
69
|
+
- Verify all domain files listed exist
|
|
70
|
+
|
|
71
|
+
## Execution
|
|
72
|
+
|
|
73
|
+
Start by asking: "Which domains should I update? (all / specific domain names)"
|
|
74
|
+
|
|
75
|
+
Then systematically:
|
|
76
|
+
1. Scan the codebase for each domain
|
|
77
|
+
2. Compare with existing CLAUDE-{domain}.md
|
|
78
|
+
3. Update files with current information
|
|
79
|
+
4. Report changes made
|
|
80
|
+
|
|
81
|
+
## Quick Mode
|
|
82
|
+
|
|
83
|
+
If user says "quick" or "all", update all domains without confirmation prompts.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: UX Designer - User experience design and UI patterns
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
d="$PWD"; while [[ ! -d "$d/.claude" ]] && [[ "$d" != "/" ]]; do d="$(dirname "$d")"; done; "$d/.pennyfarthing/scripts/core/run.sh" core/agent-session.sh start "ux-designer"
|
|
7
|
+
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Resume work or start new - smart entry point that picks up where you left off
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Resume or Start Work
|
|
6
|
+
|
|
7
|
+
<agent-activation>
|
|
8
|
+
**FIRST:** Use Bash tool to run:
|
|
9
|
+
```bash
|
|
10
|
+
d="$PWD"; while [[ ! -d "$d/.claude" ]] && [[ "$d" != "/" ]]; do d="$(dirname "$d")"; done; "$d/.pennyfarthing/scripts/core/run.sh" core/agent-session.sh start "sm"
|
|
11
|
+
```
|
|
12
|
+
This finds the project root and loads your persona. Adopt the character shown in the output.
|
|
13
|
+
</agent-activation>
|
|
14
|
+
|
|
15
|
+
<purpose>
|
|
16
|
+
Smart entry point for picking up work. Activates SM who handles all work coordination.
|
|
17
|
+
</purpose>
|
|
18
|
+
|
|
19
|
+
<instructions>
|
|
20
|
+
You are now the SM agent. Follow your agent instructions from the activation output.
|
|
21
|
+
|
|
22
|
+
Your first action is ALWAYS to spawn `workflow-status-check` - this is defined in your agent file.
|
|
23
|
+
</instructions>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: List available workflows, show current workflow details, and switch workflows mid-session. Use when checking available workflow types (TDD, trivial, agent-docs), viewing current workflow phase, switching to a different workflow pattern, or managing BikeLane stepped workflows.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# /workflow - Workflow Management
|
|
6
|
+
|
|
7
|
+
Load and follow the workflow skill: `.claude/skills/workflow/skill.md`
|
|
8
|
+
|
|
9
|
+
Pass any arguments provided by the user to the skill commands.
|
|
10
|
+
|
|
11
|
+
## Quick Reference
|
|
12
|
+
|
|
13
|
+
| Command | Action |
|
|
14
|
+
|---------|--------|
|
|
15
|
+
| `/workflow` | List all available workflows |
|
|
16
|
+
| `/workflow list` | List all available workflows |
|
|
17
|
+
| `/workflow show [name]` | Show workflow details (current session if no name) |
|
|
18
|
+
| `/workflow set <name>` | Switch to a different workflow mid-session |
|
|
19
|
+
| `/workflow start <name> [--mode <mode>]` | Start a stepped workflow |
|
|
20
|
+
| `/workflow resume [name]` | Resume an interrupted stepped workflow |
|
|
21
|
+
| `/workflow status` | Show current stepped workflow progress |
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
# Agent Behavior Guide
|
|
2
|
+
|
|
3
|
+
**For all Pennyfarthing agents.**
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Critical Protocols
|
|
8
|
+
|
|
9
|
+
<critical>
|
|
10
|
+
**Reflector markers:** Run `handoff-marker.sh {next_agent}` as your ABSOLUTE LAST ACTION and output the result verbatim. See `<agent-exit-protocol>` below.
|
|
11
|
+
</critical>
|
|
12
|
+
|
|
13
|
+
<critical>
|
|
14
|
+
**Path resolution:** Use `.pennyfarthing/scripts/core/run.sh` for all script calls - it handles path resolution.
|
|
15
|
+
For direct commands, use relative paths from project root (Claude Code starts there).
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# GOOD: Use run.sh wrapper
|
|
19
|
+
.pennyfarthing/scripts/core/run.sh workflow/check.sh
|
|
20
|
+
|
|
21
|
+
# GOOD: Relative paths for simple commands
|
|
22
|
+
just test
|
|
23
|
+
npm run build
|
|
24
|
+
|
|
25
|
+
# BAD: $CLAUDE_PROJECT_DIR doesn't exist in Bash calls
|
|
26
|
+
$CLAUDE_PROJECT_DIR/.pennyfarthing/scripts/foo.sh # BROKEN!
|
|
27
|
+
```
|
|
28
|
+
</critical>
|
|
29
|
+
|
|
30
|
+
<critical>
|
|
31
|
+
**Session file:** `.session/{story-id}-session.md` - extract `**Phase:**` (whose turn), `**Workflow:**`, `**Repos:**`, `**Feature Branch:**`.
|
|
32
|
+
</critical>
|
|
33
|
+
|
|
34
|
+
<critical>
|
|
35
|
+
**Handoff Action:** After handoff subagent returns, run `handoff-marker.sh` as LAST action, output result, EXIT.
|
|
36
|
+
</critical>
|
|
37
|
+
|
|
38
|
+
<critical>
|
|
39
|
+
**Test delegation:** Never run tests directly. Always use `testing-runner` subagent.
|
|
40
|
+
</critical>
|
|
41
|
+
|
|
42
|
+
<critical>
|
|
43
|
+
**Sidecar memory:** Capture learnings BEFORE spawning handoff subagent. Don't wait until exit.
|
|
44
|
+
</critical>
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## Reference
|
|
49
|
+
|
|
50
|
+
<info>
|
|
51
|
+
**Workflow:** SM → TEA → Dev → Reviewer → SM (finish). Trivial (1-2 pts) skips TEA.
|
|
52
|
+
|
|
53
|
+
**Confidence:** HIGH=proceed, MEDIUM=ask before risky, LOW=always ask.
|
|
54
|
+
|
|
55
|
+
**Skills:** `/sprint-context`, `/testing`, `/dev-patterns`, `/jira`, `/just`
|
|
56
|
+
|
|
57
|
+
**Reflector:** HTML comments parsed by Cyclist UI (see below).
|
|
58
|
+
|
|
59
|
+
**Turn efficiency:** Parallelize reads, batch bash with `&&`, spawn independent subagents together.
|
|
60
|
+
|
|
61
|
+
**Background tasks:** Don't block unless result needed. Cyclist notifies on completion.
|
|
62
|
+
|
|
63
|
+
**Sidecar location:** `.pennyfarthing/sidecars/{agent}/` with `patterns.md`, `gotchas.md`, `decisions.md`.
|
|
64
|
+
|
|
65
|
+
**Subagent skills:** Include skill paths in prompts - subagents don't auto-load skills.
|
|
66
|
+
|
|
67
|
+
**Worktree:** Get path from session: `WORKTREE_PATH=$(grep "^path:" "$SESSION_FILE" | cut -d' ' -f2)`
|
|
68
|
+
|
|
69
|
+
**Dogfooding:** Write to `pennyfarthing-dist/` not `.claude/` (symlink permission issue).
|
|
70
|
+
</info>
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Project Context
|
|
75
|
+
|
|
76
|
+
<info>
|
|
77
|
+
**Project:** Pennyfarthing - Claude Code agent orchestration (pnpm monorepo, TypeScript)
|
|
78
|
+
|
|
79
|
+
**Key paths:**
|
|
80
|
+
- `pennyfarthing-dist/` - agents, commands, skills, guides, personas
|
|
81
|
+
- `sprint/current-sprint.yaml` - active sprint
|
|
82
|
+
- `.session/` - active work sessions
|
|
83
|
+
|
|
84
|
+
**Git:** Branch from `develop`, PR to `develop`, release merges to `main`.
|
|
85
|
+
|
|
86
|
+
**Commit:** `<type>(<scope>): <subject>` + `Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>`
|
|
87
|
+
|
|
88
|
+
**Build:** `npm run build`, `npm test`, `npm run lint`
|
|
89
|
+
</info>
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Sprint YAML and Jira Interaction Rules
|
|
94
|
+
|
|
95
|
+
<critical>
|
|
96
|
+
**Never directly edit sprint YAML.** All sprint YAML modifications MUST go through dedicated scripts.
|
|
97
|
+
</critical>
|
|
98
|
+
|
|
99
|
+
<info>
|
|
100
|
+
**Rule 1:** Use `/sprint` skill for sprint operations
|
|
101
|
+
- `/sprint status` - View sprint
|
|
102
|
+
- `/sprint backlog` - View available stories
|
|
103
|
+
- `/sprint work` - Start a story
|
|
104
|
+
- `/sprint archive` - Archive completed story
|
|
105
|
+
|
|
106
|
+
**Rule 2:** Use `/story` skill for story operations
|
|
107
|
+
- `/story finish` - Complete story (handles YAML, Jira, merge, archive)
|
|
108
|
+
- `/story create` - Add new story to sprint
|
|
109
|
+
|
|
110
|
+
**Rule 3:** Use `/jira` skill for all Jira operations
|
|
111
|
+
- `/jira claim` - Assign and move to In Progress
|
|
112
|
+
- `/jira move` - Transition status
|
|
113
|
+
- `/jira view` - Check status
|
|
114
|
+
- `/jira sync` - Sync YAML ↔ Jira
|
|
115
|
+
|
|
116
|
+
**Rule 4:** All sprint YAML access goes through scripts
|
|
117
|
+
```bash
|
|
118
|
+
# GOOD: Use scripts for ALL operations
|
|
119
|
+
.pennyfarthing/scripts/core/run.sh sprint/get-story-field.sh X-Y workflow
|
|
120
|
+
.pennyfarthing/scripts/core/run.sh sprint/get-epic-field.sh 35 jira
|
|
121
|
+
.pennyfarthing/scripts/core/run.sh sprint/check-story.sh X-Y
|
|
122
|
+
|
|
123
|
+
# BAD: Direct yq queries (even read-only)
|
|
124
|
+
yq '.epics[].stories[] | ...' sprint/current-sprint.yaml
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**Script Responsibilities:**
|
|
128
|
+
| Operation | Script | Skill |
|
|
129
|
+
|-----------|--------|-------|
|
|
130
|
+
| Get story field | `get-story-field.sh` | - |
|
|
131
|
+
| Get epic field | `get-epic-field.sh` | - |
|
|
132
|
+
| Check story/epic | `check-story.sh` | `/sprint work` |
|
|
133
|
+
| Start story | `jira-claim-story.sh` | `/jira claim` |
|
|
134
|
+
| Finish story | `finish-story.sh` | `/story finish` |
|
|
135
|
+
| Archive story | `archive-story.sh --apply` | `/sprint archive` |
|
|
136
|
+
| Sync to Jira | `sync-epic-jira.sh` | `/jira sync` |
|
|
137
|
+
| Create epic | `create-jira-epic.sh` | `/jira create epic` |
|
|
138
|
+
</info>
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
## Persona System
|
|
144
|
+
|
|
145
|
+
<info>
|
|
146
|
+
**Config:** `.pennyfarthing/config.local.yaml` with `theme:` field.
|
|
147
|
+
|
|
148
|
+
**many themes available:** `/list-themes` to browse, `/show-theme <name>` for details, `/set-theme <name>` to change.
|
|
149
|
+
|
|
150
|
+
**Categories:** TV Series, Film, Literature, Anime, Games, History/Mythology.
|
|
151
|
+
|
|
152
|
+
**Attributes:** `verbosity` (low/medium/high), `formality` (formal/casual/playful), `humor` (enabled/disabled/subtle).
|
|
153
|
+
|
|
154
|
+
**Per-agent override:**
|
|
155
|
+
```yaml
|
|
156
|
+
overrides:
|
|
157
|
+
reviewer:
|
|
158
|
+
theme: discworld # Keep Granny even in Star Trek mode
|
|
159
|
+
```
|
|
160
|
+
</info>
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
## Reflector
|
|
165
|
+
|
|
166
|
+
<critical>
|
|
167
|
+
**EVERY TURN MUST END WITH A CYCLIST MARKER.** A Stop hook enforces this - you will be blocked if you forget.
|
|
168
|
+
</critical>
|
|
169
|
+
|
|
170
|
+
<info>
|
|
171
|
+
HTML comments that agents emit to signal Cyclist UI. Format: `<!-- CYCLIST:TYPE:value -->`
|
|
172
|
+
|
|
173
|
+
| Type | Value | Cyclist Action |
|
|
174
|
+
|------|-------|----------------|
|
|
175
|
+
| `HANDOFF` | `/agent` | Shows "Continue with /agent" button |
|
|
176
|
+
| `CONTEXT_CLEAR` | `/agent` | Clears session, reloads with agent |
|
|
177
|
+
| `QUESTION` | `yesno` or `open` | Shows input dialog |
|
|
178
|
+
| `CHOICES` | `opt1,opt2,opt3` | Shows choice buttons |
|
|
179
|
+
| `CONTINUE` | (none) | Shows "Continue" button for status updates |
|
|
180
|
+
|
|
181
|
+
**Examples:**
|
|
182
|
+
```
|
|
183
|
+
<!-- CYCLIST:HANDOFF:/tea -->
|
|
184
|
+
<!-- CYCLIST:CONTEXT_CLEAR:/dev -->
|
|
185
|
+
<!-- CYCLIST:QUESTION:yesno -->
|
|
186
|
+
<!-- CYCLIST:QUESTION:open -->
|
|
187
|
+
<!-- CYCLIST:CHOICES:option1,option2,option3 -->
|
|
188
|
+
<!-- CYCLIST:CONTINUE -->
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
**When to use:**
|
|
192
|
+
- `HANDOFF` - End of phase (TEA→Dev, Dev→Reviewer)
|
|
193
|
+
- `CONTEXT_CLEAR` - Context >80% at handoff
|
|
194
|
+
- `QUESTION`/`CHOICES` - User input needed mid-work
|
|
195
|
+
- `CONTINUE` - Status updates, task completion, any turn that isn't a handoff or question
|
|
196
|
+
</info>
|
|
197
|
+
|
|
198
|
+
<critical>
|
|
199
|
+
**Marker Selection Guide:**
|
|
200
|
+
|
|
201
|
+
| Situation | Marker |
|
|
202
|
+
|-----------|--------|
|
|
203
|
+
| Workflow handoff to next agent | `<!-- CYCLIST:HANDOFF:/agent -->` |
|
|
204
|
+
| Handoff with context >80% | `<!-- CYCLIST:CONTEXT_CLEAR:/agent -->` |
|
|
205
|
+
| Yes/no question | `<!-- CYCLIST:QUESTION:yesno -->` |
|
|
206
|
+
| Open-ended question | `<!-- CYCLIST:QUESTION:open -->` |
|
|
207
|
+
| Multiple choice | `<!-- CYCLIST:CHOICES:a,b,c -->` |
|
|
208
|
+
| Status update / task complete | `<!-- CYCLIST:CONTINUE -->` |
|
|
209
|
+
| Providing information | `<!-- CYCLIST:CONTINUE -->` |
|
|
210
|
+
| Reporting an error/blocker | `<!-- CYCLIST:CONTINUE -->` |
|
|
211
|
+
|
|
212
|
+
**Question types requiring QUESTION/CHOICES markers:**
|
|
213
|
+
- Direct questions ending with `?`
|
|
214
|
+
- Implicit questions: "let me know if...", "would you like...", "should I..."
|
|
215
|
+
- Choice offerings: "Option A or Option B"
|
|
216
|
+
- Requests for input: "what do you think", "your preference"
|
|
217
|
+
- Clarification requests: "could you clarify"
|
|
218
|
+
|
|
219
|
+
**Exempt from question detection (but still need CONTINUE):**
|
|
220
|
+
- Rhetorical questions you answer yourself
|
|
221
|
+
- Questions inside code blocks or examples
|
|
222
|
+
- Historical context ("the question was...")
|
|
223
|
+
</critical>
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
<agent-exit-protocol>
|
|
228
|
+
## Agent Exit Protocol
|
|
229
|
+
|
|
230
|
+
### Exit Sequence
|
|
231
|
+
|
|
232
|
+
1. Write assessment to session file
|
|
233
|
+
2. Spawn `handoff` subagent
|
|
234
|
+
3. Await `HANDOFF_RESULT`
|
|
235
|
+
4. If `status: blocked` → report error, stop
|
|
236
|
+
5. **Run this as ABSOLUTE LAST ACTION:**
|
|
237
|
+
```bash
|
|
238
|
+
.pennyfarthing/scripts/core/handoff-marker.sh {next_agent}
|
|
239
|
+
```
|
|
240
|
+
6. **Output the script result verbatim and EXIT**
|
|
241
|
+
|
|
242
|
+
### HANDOFF_RESULT Format
|
|
243
|
+
|
|
244
|
+
```
|
|
245
|
+
HANDOFF_RESULT:
|
|
246
|
+
status: success|blocked
|
|
247
|
+
next_agent: {agent_name}
|
|
248
|
+
error: "{message}" # if blocked
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
### Script Output (emit verbatim)
|
|
252
|
+
|
|
253
|
+
```
|
|
254
|
+
---
|
|
255
|
+
AGENT_COMMAND:
|
|
256
|
+
marker: "<!-- CYCLIST:HANDOFF:/dev -->"
|
|
257
|
+
fallback: "Run `/dev` to continue"
|
|
258
|
+
---
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
**Nothing after the marker. EXIT.**
|
|
262
|
+
</agent-exit-protocol>
|
|
263
|
+
|
|
264
|
+
<wrong-phase-detection>
|
|
265
|
+
## Wrong Phase Detection
|
|
266
|
+
|
|
267
|
+
When an agent detects the story is NOT in their phase, emit a marker immediately.
|
|
268
|
+
|
|
269
|
+
### How to Check (works with custom workflows)
|
|
270
|
+
|
|
271
|
+
1. Read `**Workflow:**` and `**Phase:**` from session file
|
|
272
|
+
2. Query the phase owner:
|
|
273
|
+
```bash
|
|
274
|
+
OWNER=$(.pennyfarthing/scripts/core/run.sh workflow/phase-owner.sh {workflow} {phase})
|
|
275
|
+
```
|
|
276
|
+
3. If `$OWNER` != your agent name → story belongs to another agent
|
|
277
|
+
|
|
278
|
+
### Action When Not Your Phase
|
|
279
|
+
|
|
280
|
+
```bash
|
|
281
|
+
.pennyfarthing/scripts/core/handoff-marker.sh {OWNER}
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
Then output the result verbatim. This triggers Cyclist's handoff button.
|
|
285
|
+
|
|
286
|
+
### Example
|
|
287
|
+
|
|
288
|
+
Dev reads session: `**Workflow:** tdd`, `**Phase:** review`
|
|
289
|
+
|
|
290
|
+
```bash
|
|
291
|
+
OWNER=$(.pennyfarthing/scripts/core/run.sh workflow/phase-owner.sh tdd review)
|
|
292
|
+
# Returns: reviewer
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
Since "reviewer" != "dev", Dev runs:
|
|
296
|
+
```bash
|
|
297
|
+
.pennyfarthing/scripts/core/handoff-marker.sh reviewer
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
### Do NOT just say "run /reviewer"
|
|
301
|
+
|
|
302
|
+
Wrong:
|
|
303
|
+
> The story is in review. Run `/reviewer` to continue.
|
|
304
|
+
|
|
305
|
+
Right:
|
|
306
|
+
> The story is in review phase.
|
|
307
|
+
>
|
|
308
|
+
> <!-- CYCLIST:HANDOFF:/reviewer -->
|
|
309
|
+
>
|
|
310
|
+
> Run `/reviewer` to continue
|
|
311
|
+
</wrong-phase-detection>
|