@pennyfarthing/core 7.0.1 → 7.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{packages/core/dist → dist}/cli/commands/cyclist.d.ts +2 -2
- package/{packages/core/dist → dist}/cli/commands/cyclist.d.ts.map +1 -1
- package/{packages/core/dist → dist}/cli/commands/cyclist.js +8 -9
- package/dist/cli/commands/cyclist.js.map +1 -0
- package/{packages/core/dist → dist}/cli/commands/cyclist.test.js +6 -4
- package/dist/cli/commands/cyclist.test.js.map +1 -0
- package/{packages/core/dist → dist}/cli/commands/update.d.ts.map +1 -1
- package/{packages/core/dist → dist}/cli/commands/update.js +9 -136
- package/dist/cli/commands/update.js.map +1 -0
- package/{packages/core/dist → dist}/cli/cyclist-migration.test.js +4 -3
- package/{packages/core/dist → dist}/cli/cyclist-migration.test.js.map +1 -1
- package/{packages/core/dist → dist}/cli/utils/constants.d.ts +7 -1
- package/dist/cli/utils/constants.d.ts.map +1 -0
- package/{packages/core/dist → dist}/cli/utils/constants.js +4 -2
- package/{packages/core/dist → dist}/cli/utils/constants.js.map +1 -1
- package/{packages/core/dist → dist}/cli/utils/themes.d.ts +1 -4
- package/{packages/core/dist → dist}/cli/utils/themes.d.ts.map +1 -1
- package/{packages/core/dist → dist}/cli/utils/themes.js +2 -22
- package/dist/cli/utils/themes.js.map +1 -0
- package/dist/cli/utils/themes.test.d.ts +12 -0
- package/{packages/core/dist → dist}/cli/utils/themes.test.js +16 -13
- package/dist/cli/utils/themes.test.js.map +1 -0
- package/{packages/core/dist → dist}/cli/workspace.test.js +5 -8
- package/{packages/core/dist → dist}/cli/workspace.test.js.map +1 -1
- package/{packages/core/dist → dist}/index.d.ts +1 -0
- package/{packages/core/dist → dist}/index.d.ts.map +1 -1
- package/{packages/core/dist → dist}/index.js +10 -0
- package/{packages/core/dist → dist}/index.js.map +1 -1
- package/dist/jira/jira-epic-creation.d.ts +109 -0
- package/dist/jira/jira-epic-creation.d.ts.map +1 -0
- package/dist/jira/jira-epic-creation.js +253 -0
- package/dist/jira/jira-epic-creation.js.map +1 -0
- package/dist/jira/jira-epic-creation.test.d.ts +16 -0
- package/dist/jira/jira-epic-creation.test.d.ts.map +1 -0
- package/dist/jira/jira-epic-creation.test.js +387 -0
- package/dist/jira/jira-epic-creation.test.js.map +1 -0
- package/dist/jira/jira-sprint-sync.d.ts +247 -0
- package/dist/jira/jira-sprint-sync.d.ts.map +1 -0
- package/dist/jira/jira-sprint-sync.js +670 -0
- package/dist/jira/jira-sprint-sync.js.map +1 -0
- package/dist/jira/jira-sprint-sync.test.d.ts +16 -0
- package/dist/jira/jira-sprint-sync.test.d.ts.map +1 -0
- package/dist/jira/jira-sprint-sync.test.js +845 -0
- package/dist/jira/jira-sprint-sync.test.js.map +1 -0
- package/{packages/core/dist → dist}/scripts/generate-spider.d.ts +11 -1
- package/{packages/core/dist → dist}/scripts/generate-spider.d.ts.map +1 -1
- package/{packages/core/dist → dist}/scripts/generate-spider.js +24 -1
- package/dist/scripts/generate-spider.js.map +1 -0
- package/{packages/core/dist → dist}/scripts/generate-spider.test.js +6 -4
- package/dist/scripts/generate-spider.test.js.map +1 -0
- package/dist/workflow/gate-handler.d.ts +94 -0
- package/dist/workflow/gate-handler.d.ts.map +1 -0
- package/dist/workflow/gate-handler.js +189 -0
- package/dist/workflow/gate-handler.js.map +1 -0
- package/dist/workflow/gate-handler.test.d.ts +14 -0
- package/dist/workflow/gate-handler.test.d.ts.map +1 -0
- package/dist/workflow/gate-handler.test.js +543 -0
- package/dist/workflow/gate-handler.test.js.map +1 -0
- package/{packages/core/dist → dist}/workflow/generic-handoff.d.ts +46 -0
- package/{packages/core/dist → dist}/workflow/generic-handoff.d.ts.map +1 -1
- package/{packages/core/dist → dist}/workflow/generic-handoff.js +53 -0
- package/{packages/core/dist → dist}/workflow/generic-handoff.js.map +1 -1
- package/{packages/core/dist → dist}/workflow/generic-handoff.test.js +2 -2
- package/{packages/core/dist → dist}/workflow/generic-handoff.test.js.map +1 -1
- package/dist/workflow/index.d.ts +16 -0
- package/dist/workflow/index.d.ts.map +1 -0
- package/dist/workflow/index.js +24 -0
- package/dist/workflow/index.js.map +1 -0
- package/dist/workflow/session-state.d.ts +92 -0
- package/dist/workflow/session-state.d.ts.map +1 -0
- package/dist/workflow/session-state.js +198 -0
- package/dist/workflow/session-state.js.map +1 -0
- package/dist/workflow/session-state.test.d.ts +8 -0
- package/dist/workflow/session-state.test.d.ts.map +1 -0
- package/dist/workflow/session-state.test.js +551 -0
- package/dist/workflow/session-state.test.js.map +1 -0
- package/dist/workflow/step-parser.d.ts +45 -0
- package/dist/workflow/step-parser.d.ts.map +1 -0
- package/dist/workflow/step-parser.js +147 -0
- package/dist/workflow/step-parser.js.map +1 -0
- package/dist/workflow/step-parser.test.d.ts +14 -0
- package/dist/workflow/step-parser.test.d.ts.map +1 -0
- package/dist/workflow/step-parser.test.js +470 -0
- package/dist/workflow/step-parser.test.js.map +1 -0
- package/dist/workflow/trimodal.d.ts +86 -0
- package/dist/workflow/trimodal.d.ts.map +1 -0
- package/dist/workflow/trimodal.js +118 -0
- package/dist/workflow/trimodal.js.map +1 -0
- package/dist/workflow/trimodal.test.d.ts +11 -0
- package/dist/workflow/trimodal.test.d.ts.map +1 -0
- package/dist/workflow/trimodal.test.js +395 -0
- package/dist/workflow/trimodal.test.js.map +1 -0
- package/dist/workflow/variable-resolver.d.ts +67 -0
- package/dist/workflow/variable-resolver.d.ts.map +1 -0
- package/dist/workflow/variable-resolver.js +156 -0
- package/dist/workflow/variable-resolver.js.map +1 -0
- package/dist/workflow/variable-resolver.test.d.ts +14 -0
- package/dist/workflow/variable-resolver.test.d.ts.map +1 -0
- package/dist/workflow/variable-resolver.test.js +400 -0
- package/dist/workflow/variable-resolver.test.js.map +1 -0
- package/dist/workflow/workflow-executor.d.ts +163 -0
- package/dist/workflow/workflow-executor.d.ts.map +1 -0
- package/dist/workflow/workflow-executor.js +197 -0
- package/dist/workflow/workflow-executor.js.map +1 -0
- package/dist/workflow/workflow-executor.test.d.ts +8 -0
- package/dist/workflow/workflow-executor.test.d.ts.map +1 -0
- package/dist/workflow/workflow-executor.test.js +444 -0
- package/dist/workflow/workflow-executor.test.js.map +1 -0
- package/{packages/core/dist → dist}/workflow/workflow-loader.test.js +5 -5
- package/dist/workflow/workflow-loader.test.js.map +1 -0
- package/{packages/core/dist → dist}/workflow/workflow-migration.test.js +8 -9
- package/{packages/core/dist → dist}/workflow/workflow-migration.test.js.map +1 -1
- package/dist/workflow/workflow-permissions.d.ts +55 -0
- package/dist/workflow/workflow-permissions.d.ts.map +1 -0
- package/dist/workflow/workflow-permissions.js +64 -0
- package/dist/workflow/workflow-permissions.js.map +1 -0
- package/dist/workflow/workflow-permissions.test.d.ts +15 -0
- package/dist/workflow/workflow-permissions.test.d.ts.map +1 -0
- package/dist/workflow/workflow-permissions.test.js +301 -0
- package/dist/workflow/workflow-permissions.test.js.map +1 -0
- package/{packages/core/dist → dist}/workflow/workflow-schema.d.ts +61 -2
- package/dist/workflow/workflow-schema.d.ts.map +1 -0
- package/dist/workflow/workflow-schema.js +454 -0
- package/dist/workflow/workflow-schema.js.map +1 -0
- package/{packages/core/dist → dist}/workflow/workflow-schema.test.js +6 -6
- package/{packages/core/dist → dist}/workflow/workflow-schema.test.js.map +1 -1
- package/dist/workflow/workflow-stepped-schema.test.d.ts +18 -0
- package/dist/workflow/workflow-stepped-schema.test.d.ts.map +1 -0
- package/dist/workflow/workflow-stepped-schema.test.js +608 -0
- package/dist/workflow/workflow-stepped-schema.test.js.map +1 -0
- package/package.json +36 -31
- package/README.md +0 -301
- package/packages/core/dist/cli/commands/cyclist.js.map +0 -1
- package/packages/core/dist/cli/commands/cyclist.test.js.map +0 -1
- package/packages/core/dist/cli/commands/update.js.map +0 -1
- package/packages/core/dist/cli/utils/constants.d.ts.map +0 -1
- package/packages/core/dist/cli/utils/themes.js.map +0 -1
- package/packages/core/dist/cli/utils/themes.test.d.ts +0 -12
- package/packages/core/dist/cli/utils/themes.test.js.map +0 -1
- package/packages/core/dist/scripts/generate-all-faces.d.ts +0 -10
- package/packages/core/dist/scripts/generate-all-faces.d.ts.map +0 -1
- package/packages/core/dist/scripts/generate-all-faces.js +0 -256
- package/packages/core/dist/scripts/generate-all-faces.js.map +0 -1
- package/packages/core/dist/scripts/generate-all-faces.test.d.ts +0 -17
- package/packages/core/dist/scripts/generate-all-faces.test.d.ts.map +0 -1
- package/packages/core/dist/scripts/generate-all-faces.test.js +0 -372
- package/packages/core/dist/scripts/generate-all-faces.test.js.map +0 -1
- package/packages/core/dist/scripts/generate-ascii-face.d.ts +0 -52
- package/packages/core/dist/scripts/generate-ascii-face.d.ts.map +0 -1
- package/packages/core/dist/scripts/generate-ascii-face.js +0 -155
- package/packages/core/dist/scripts/generate-ascii-face.js.map +0 -1
- package/packages/core/dist/scripts/generate-face.d.ts +0 -52
- package/packages/core/dist/scripts/generate-face.d.ts.map +0 -1
- package/packages/core/dist/scripts/generate-face.js +0 -199
- package/packages/core/dist/scripts/generate-face.js.map +0 -1
- package/packages/core/dist/scripts/generate-face.test.d.ts +0 -13
- package/packages/core/dist/scripts/generate-face.test.d.ts.map +0 -1
- package/packages/core/dist/scripts/generate-face.test.js +0 -301
- package/packages/core/dist/scripts/generate-face.test.js.map +0 -1
- package/packages/core/dist/scripts/generate-spider.js.map +0 -1
- package/packages/core/dist/scripts/generate-spider.test.js.map +0 -1
- package/packages/core/dist/workflow/workflow-loader.test.js.map +0 -1
- package/packages/core/dist/workflow/workflow-schema.d.ts.map +0 -1
- package/packages/core/dist/workflow/workflow-schema.js +0 -230
- package/packages/core/dist/workflow/workflow-schema.js.map +0 -1
- package/pennyfarthing-dist/agents/README.md +0 -397
- package/pennyfarthing-dist/agents/architect.md +0 -171
- package/pennyfarthing-dist/agents/dev.md +0 -225
- package/pennyfarthing-dist/agents/devops.md +0 -183
- package/pennyfarthing-dist/agents/generic-handoff.md +0 -451
- package/pennyfarthing-dist/agents/generic-sm-finish.md +0 -261
- package/pennyfarthing-dist/agents/generic-sm-setup.md +0 -214
- package/pennyfarthing-dist/agents/orchestrator.md +0 -316
- package/pennyfarthing-dist/agents/pm.md +0 -153
- package/pennyfarthing-dist/agents/reviewer-preflight.md +0 -224
- package/pennyfarthing-dist/agents/reviewer.md +0 -315
- package/pennyfarthing-dist/agents/sm-file-summary.md +0 -109
- package/pennyfarthing-dist/agents/sm-handoff.md +0 -97
- package/pennyfarthing-dist/agents/sm.md +0 -480
- package/pennyfarthing-dist/agents/tea.md +0 -191
- package/pennyfarthing-dist/agents/tech-writer.md +0 -148
- package/pennyfarthing-dist/agents/testing-runner.md +0 -420
- package/pennyfarthing-dist/agents/ux-designer.md +0 -158
- package/pennyfarthing-dist/agents/workflow-status-check.md +0 -332
- package/pennyfarthing-dist/commands/architect.md +0 -62
- package/pennyfarthing-dist/commands/benchmark-control.md +0 -69
- package/pennyfarthing-dist/commands/benchmark.md +0 -467
- package/pennyfarthing-dist/commands/brainstorm.md +0 -91
- package/pennyfarthing-dist/commands/check.md +0 -156
- package/pennyfarthing-dist/commands/chore.md +0 -178
- package/pennyfarthing-dist/commands/close-epic.md +0 -136
- package/pennyfarthing-dist/commands/continue-session.md +0 -184
- package/pennyfarthing-dist/commands/create-branches-from-story.md +0 -374
- package/pennyfarthing-dist/commands/create-theme.md +0 -29
- package/pennyfarthing-dist/commands/dev.md +0 -60
- package/pennyfarthing-dist/commands/devops.md +0 -59
- package/pennyfarthing-dist/commands/git-cleanup.md +0 -340
- package/pennyfarthing-dist/commands/health-check.md +0 -108
- package/pennyfarthing-dist/commands/help.md +0 -264
- package/pennyfarthing-dist/commands/job-fair.md +0 -102
- package/pennyfarthing-dist/commands/list-themes.md +0 -17
- package/pennyfarthing-dist/commands/new-work.md +0 -127
- package/pennyfarthing-dist/commands/orchestrator.md +0 -56
- package/pennyfarthing-dist/commands/parallel-work.md +0 -71
- package/pennyfarthing-dist/commands/party-mode.md +0 -67
- package/pennyfarthing-dist/commands/permissions.md +0 -193
- package/pennyfarthing-dist/commands/pm.md +0 -60
- package/pennyfarthing-dist/commands/prime.md +0 -140
- package/pennyfarthing-dist/commands/release.md +0 -58
- package/pennyfarthing-dist/commands/repo-status.md +0 -49
- package/pennyfarthing-dist/commands/retro.md +0 -200
- package/pennyfarthing-dist/commands/reviewer.md +0 -64
- package/pennyfarthing-dist/commands/run-ci.md +0 -116
- package/pennyfarthing-dist/commands/set-theme.md +0 -52
- package/pennyfarthing-dist/commands/show-theme.md +0 -21
- package/pennyfarthing-dist/commands/sm.md +0 -70
- package/pennyfarthing-dist/commands/solo.md +0 -411
- package/pennyfarthing-dist/commands/sprint-planning.md +0 -109
- package/pennyfarthing-dist/commands/start-epic.md +0 -156
- package/pennyfarthing-dist/commands/sync-epic-to-jira.md +0 -184
- package/pennyfarthing-dist/commands/sync-work-with-sprint.md +0 -376
- package/pennyfarthing-dist/commands/tea.md +0 -63
- package/pennyfarthing-dist/commands/tech-writer.md +0 -53
- package/pennyfarthing-dist/commands/theme-maker.md +0 -671
- package/pennyfarthing-dist/commands/update-domain-docs.md +0 -83
- package/pennyfarthing-dist/commands/ux-designer.md +0 -62
- package/pennyfarthing-dist/commands/work.md +0 -111
- package/pennyfarthing-dist/guides/AGENT-COORDINATION.md +0 -480
- package/pennyfarthing-dist/guides/AGENT-SCOPES.md +0 -201
- package/pennyfarthing-dist/guides/HOOKS.md +0 -230
- package/pennyfarthing-dist/guides/PROMPT-PATTERNS.md +0 -338
- package/pennyfarthing-dist/guides/SESSION-ARTIFACTS.md +0 -193
- package/pennyfarthing-dist/guides/agent-template-strategic.md +0 -148
- package/pennyfarthing-dist/guides/agent-template-tactical.md +0 -162
- package/pennyfarthing-dist/guides/patterns/approval-gates-pattern.md +0 -746
- package/pennyfarthing-dist/guides/patterns/fan-out-fan-in-pattern.md +0 -574
- package/pennyfarthing-dist/guides/patterns/helper-delegation-pattern.md +0 -488
- package/pennyfarthing-dist/guides/patterns/tdd-flow-pattern.md +0 -402
- package/pennyfarthing-dist/guides/permission-protocol.md +0 -188
- package/pennyfarthing-dist/guides/persona-loading.md +0 -46
- package/pennyfarthing-dist/guides/persona-system.md +0 -294
- package/pennyfarthing-dist/guides/shared-agent-behavior.md +0 -388
- package/pennyfarthing-dist/guides/shared-context.md +0 -147
- package/pennyfarthing-dist/guides/strategic-agent-behavior.md +0 -348
- package/pennyfarthing-dist/guides/tactical-agent-behavior.md +0 -1041
- package/pennyfarthing-dist/guides/workflow-schema.md +0 -195
- package/pennyfarthing-dist/guides/worktree-mode.md +0 -113
- package/pennyfarthing-dist/output-styles/teaching.md +0 -33
- package/pennyfarthing-dist/output-styles/terse.md +0 -20
- package/pennyfarthing-dist/output-styles/verbose.md +0 -28
- package/pennyfarthing-dist/personas/themes/1984.yaml +0 -312
- package/pennyfarthing-dist/personas/themes/a-team.yaml +0 -207
- package/pennyfarthing-dist/personas/themes/agatha-christie.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/alice-in-wonderland.yaml +0 -330
- package/pennyfarthing-dist/personas/themes/all-stars.yaml +0 -332
- package/pennyfarthing-dist/personas/themes/ancient-philosophers.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/ancient-strategists.yaml +0 -306
- package/pennyfarthing-dist/personas/themes/arcane.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/arthurian-mythos.yaml +0 -331
- package/pennyfarthing-dist/personas/themes/avatar-the-last-airbender.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/babylon-5.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/battlestar-galactica.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/better-call-saul.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/big-lebowski.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/black-sails.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/blade-runner.yaml +0 -295
- package/pennyfarthing-dist/personas/themes/bobiverse.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/breaking-bad.yaml +0 -327
- package/pennyfarthing-dist/personas/themes/catch-22.yaml +0 -316
- package/pennyfarthing-dist/personas/themes/classical-composers.yaml +0 -310
- package/pennyfarthing-dist/personas/themes/control.yaml +0 -197
- package/pennyfarthing-dist/personas/themes/count-of-monte-cristo.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/cowboy-bebop.yaml +0 -323
- package/pennyfarthing-dist/personas/themes/deadwood.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/dickens.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/discworld.yaml +0 -332
- package/pennyfarthing-dist/personas/themes/doctor-who.yaml +0 -290
- package/pennyfarthing-dist/personas/themes/don-quixote.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/dune.yaml +0 -307
- package/pennyfarthing-dist/personas/themes/enlightenment-thinkers.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/expeditionary-force.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/fargo.yaml +0 -330
- package/pennyfarthing-dist/personas/themes/film-auteurs.yaml +0 -312
- package/pennyfarthing-dist/personas/themes/firefly.yaml +0 -328
- package/pennyfarthing-dist/personas/themes/foundation.yaml +0 -290
- package/pennyfarthing-dist/personas/themes/futurama.yaml +0 -321
- package/pennyfarthing-dist/personas/themes/game-of-thrones.yaml +0 -290
- package/pennyfarthing-dist/personas/themes/gilligans-island.yaml +0 -243
- package/pennyfarthing-dist/personas/themes/gothic-literature.yaml +0 -308
- package/pennyfarthing-dist/personas/themes/great-gatsby.yaml +0 -308
- package/pennyfarthing-dist/personas/themes/greek-mythology.yaml +0 -330
- package/pennyfarthing-dist/personas/themes/hannibal.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/harry-potter.yaml +0 -324
- package/pennyfarthing-dist/personas/themes/his-dark-materials.yaml +0 -291
- package/pennyfarthing-dist/personas/themes/historical-figures.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/hitchhikers-guide.yaml +0 -331
- package/pennyfarthing-dist/personas/themes/house-md.yaml +0 -321
- package/pennyfarthing-dist/personas/themes/imperial-radch.yaml +0 -289
- package/pennyfarthing-dist/personas/themes/inspector-morse.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/jane-austen.yaml +0 -287
- package/pennyfarthing-dist/personas/themes/jazz-legends.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/justified.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/legion-of-doom.yaml +0 -219
- package/pennyfarthing-dist/personas/themes/les-miserables.yaml +0 -299
- package/pennyfarthing-dist/personas/themes/lord-of-the-rings.yaml +0 -334
- package/pennyfarthing-dist/personas/themes/lovecraft-mythos.yaml +0 -334
- package/pennyfarthing-dist/personas/themes/mad-max.yaml +0 -355
- package/pennyfarthing-dist/personas/themes/mad-men.yaml +0 -289
- package/pennyfarthing-dist/personas/themes/marvel-mcu.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/mash.yaml +0 -334
- package/pennyfarthing-dist/personas/themes/mass-effect.yaml +0 -289
- package/pennyfarthing-dist/personas/themes/military-commanders.yaml +0 -306
- package/pennyfarthing-dist/personas/themes/moby-dick.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/monty-python.yaml +0 -303
- package/pennyfarthing-dist/personas/themes/neuromancer.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/norse-mythology.yaml +0 -329
- package/pennyfarthing-dist/personas/themes/parks-and-rec.yaml +0 -242
- package/pennyfarthing-dist/personas/themes/peaky-blinders.yaml +0 -298
- package/pennyfarthing-dist/personas/themes/princess-bride.yaml +0 -220
- package/pennyfarthing-dist/personas/themes/renaissance-masters.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/rome.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/russian-masters.yaml +0 -318
- package/pennyfarthing-dist/personas/themes/sandman.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/scientific-revolutionaries.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/shakespeare.yaml +0 -301
- package/pennyfarthing-dist/personas/themes/sherlock-holmes.yaml +0 -289
- package/pennyfarthing-dist/personas/themes/snow-crash.yaml +0 -288
- package/pennyfarthing-dist/personas/themes/software-pioneers.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/star-trek-tng.yaml +0 -230
- package/pennyfarthing-dist/personas/themes/star-trek-tos.yaml +0 -210
- package/pennyfarthing-dist/personas/themes/star-wars.yaml +0 -303
- package/pennyfarthing-dist/personas/themes/succession.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/superfriends.yaml +0 -208
- package/pennyfarthing-dist/personas/themes/ted-lasso.yaml +0 -236
- package/pennyfarthing-dist/personas/themes/the-americans.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/the-crown.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/the-expanse.yaml +0 -213
- package/pennyfarthing-dist/personas/themes/the-good-place.yaml +0 -322
- package/pennyfarthing-dist/personas/themes/the-matrix.yaml +0 -353
- package/pennyfarthing-dist/personas/themes/the-odyssey.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/the-office.yaml +0 -330
- package/pennyfarthing-dist/personas/themes/the-simpsons.yaml +0 -308
- package/pennyfarthing-dist/personas/themes/the-sopranos.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/the-wire.yaml +0 -311
- package/pennyfarthing-dist/personas/themes/the-witcher.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/twin-peaks.yaml +0 -302
- package/pennyfarthing-dist/personas/themes/vorkosigan-saga.yaml +0 -300
- package/pennyfarthing-dist/personas/themes/watchmen.yaml +0 -291
- package/pennyfarthing-dist/personas/themes/west-wing.yaml +0 -291
- package/pennyfarthing-dist/personas/themes/world-explorers.yaml +0 -320
- package/pennyfarthing-dist/personas/themes/wwii-leaders.yaml +0 -307
- package/pennyfarthing-dist/personas/themes/x-files.yaml +0 -302
- package/pennyfarthing-dist/scripts/add-short-names.mjs +0 -264
- package/pennyfarthing-dist/scripts/agent-session.sh +0 -367
- package/pennyfarthing-dist/scripts/check-context.sh +0 -187
- package/pennyfarthing-dist/scripts/check.sh +0 -497
- package/pennyfarthing-dist/scripts/deploy.sh +0 -284
- package/pennyfarthing-dist/scripts/doctor-dogfood.sh +0 -395
- package/pennyfarthing-dist/scripts/hooks/context-circuit-breaker.sh +0 -61
- package/pennyfarthing-dist/scripts/hooks/context-warning.sh +0 -66
- package/pennyfarthing-dist/scripts/hooks/otel-auto-config.sh +0 -35
- package/pennyfarthing-dist/scripts/hooks/post-merge.sh +0 -166
- package/pennyfarthing-dist/scripts/hooks/pre-commit.sh +0 -50
- package/pennyfarthing-dist/scripts/hooks/pre-edit-check.sh +0 -71
- package/pennyfarthing-dist/scripts/hooks/pre-push.sh +0 -54
- package/pennyfarthing-dist/scripts/hooks/session-start.sh +0 -98
- package/pennyfarthing-dist/scripts/hooks/session-stop.sh +0 -59
- package/pennyfarthing-dist/scripts/install-git-hooks.sh +0 -91
- package/pennyfarthing-dist/scripts/prime.sh +0 -161
- package/pennyfarthing-dist/scripts/release.sh +0 -198
- package/pennyfarthing-dist/scripts/repo-utils.sh +0 -778
- package/pennyfarthing-dist/scripts/run-ci.sh +0 -219
- package/pennyfarthing-dist/scripts/run.sh +0 -65
- package/pennyfarthing-dist/scripts/statusline.sh +0 -264
- package/pennyfarthing-dist/scripts/tests/check.test.sh +0 -582
- package/pennyfarthing-dist/scripts/tests/test-character-voice.sh +0 -107
- package/pennyfarthing-dist/scripts/tests/test-drift-detection.sh +0 -597
- package/pennyfarthing-dist/scripts/tests/test-post-merge-hook.sh +0 -514
- package/pennyfarthing-dist/scripts/tests/test-session-checkpoint.sh +0 -517
- package/pennyfarthing-dist/scripts/tests/test-solo-command.sh +0 -331
- package/pennyfarthing-dist/scripts/uninstall.sh +0 -271
- package/pennyfarthing-dist/scripts/utils/background-tasks.sh +0 -177
- package/pennyfarthing-dist/scripts/utils/check-status.sh +0 -251
- package/pennyfarthing-dist/scripts/utils/checkpoint.sh +0 -136
- package/pennyfarthing-dist/scripts/utils/common.sh +0 -157
- package/pennyfarthing-dist/scripts/utils/create-feature-branches.sh +0 -230
- package/pennyfarthing-dist/scripts/utils/file-lock.sh +0 -269
- package/pennyfarthing-dist/scripts/utils/find-related-work.sh +0 -231
- package/pennyfarthing-dist/scripts/utils/find-root.sh +0 -33
- package/pennyfarthing-dist/scripts/utils/generate-skill-docs.sh +0 -110
- package/pennyfarthing-dist/scripts/utils/git-status-all.sh +0 -127
- package/pennyfarthing-dist/scripts/utils/ground-truth-judge.py +0 -289
- package/pennyfarthing-dist/scripts/utils/jira/jira-lib.mjs +0 -443
- package/pennyfarthing-dist/scripts/utils/jira/jira-sync-story.mjs +0 -208
- package/pennyfarthing-dist/scripts/utils/jira/jira-sync.mjs +0 -198
- package/pennyfarthing-dist/scripts/utils/jira-claim-story.sh +0 -162
- package/pennyfarthing-dist/scripts/utils/jira-lib.sh +0 -463
- package/pennyfarthing-dist/scripts/utils/jira-sync-story.sh +0 -8
- package/pennyfarthing-dist/scripts/utils/jira-sync.sh +0 -8
- package/pennyfarthing-dist/scripts/utils/log-skill-usage.sh +0 -74
- package/pennyfarthing-dist/scripts/utils/logging.sh +0 -186
- package/pennyfarthing-dist/scripts/utils/repo-scan.sh +0 -141
- package/pennyfarthing-dist/scripts/utils/retry.sh +0 -76
- package/pennyfarthing-dist/scripts/utils/run-timestamp.sh +0 -7
- package/pennyfarthing-dist/scripts/utils/session-cleanup.sh +0 -319
- package/pennyfarthing-dist/scripts/utils/skill-usage-report.sh +0 -193
- package/pennyfarthing-dist/scripts/utils/sprint-common.sh +0 -286
- package/pennyfarthing-dist/scripts/utils/sprint-metrics.sh +0 -241
- package/pennyfarthing-dist/scripts/utils/swebench-judge.py +0 -400
- package/pennyfarthing-dist/scripts/utils/sync-epic-to-jira.sh +0 -16
- package/pennyfarthing-dist/scripts/utils/test-setup.sh +0 -337
- package/pennyfarthing-dist/scripts/utils/validate-subagent-frontmatter.sh +0 -160
- package/pennyfarthing-dist/scripts/worktree-manager.sh +0 -498
- package/pennyfarthing-dist/skills/agentic-patterns/SKILL.md +0 -236
- package/pennyfarthing-dist/skills/changelog/SKILL.md +0 -367
- package/pennyfarthing-dist/skills/code-review/SKILL.md +0 -168
- package/pennyfarthing-dist/skills/context-engineering/SKILL.md +0 -268
- package/pennyfarthing-dist/skills/cyclist/SKILL.md +0 -117
- package/pennyfarthing-dist/skills/dev-patterns/SKILL.md +0 -421
- package/pennyfarthing-dist/skills/finalize-run/SKILL.md +0 -258
- package/pennyfarthing-dist/skills/jira/SKILL.md +0 -281
- package/pennyfarthing-dist/skills/judge/SKILL.md +0 -524
- package/pennyfarthing-dist/skills/just/SKILL.md +0 -160
- package/pennyfarthing-dist/skills/mermaid/SKILL.md +0 -240
- package/pennyfarthing-dist/skills/otel/skill.md +0 -222
- package/pennyfarthing-dist/skills/permissions/skill.md +0 -172
- package/pennyfarthing-dist/skills/persona-benchmark/SKILL.md +0 -173
- package/pennyfarthing-dist/skills/skill-registry.schema.json +0 -102
- package/pennyfarthing-dist/skills/skill-registry.yaml +0 -335
- package/pennyfarthing-dist/skills/sprint-context/SKILL.md +0 -120
- package/pennyfarthing-dist/skills/story-management/SKILL.md +0 -208
- package/pennyfarthing-dist/skills/testing/SKILL.md +0 -99
- package/pennyfarthing-dist/skills/testing/references/troubleshooting.md +0 -124
- package/pennyfarthing-dist/skills/theme/skill.md +0 -129
- package/pennyfarthing-dist/skills/theme-creation/SKILL.md +0 -169
- package/pennyfarthing-dist/skills/workflow/SKILL.md +0 -160
- package/pennyfarthing-dist/skills/yq/SKILL.md +0 -264
- package/pennyfarthing-dist/templates/LEADERBOARD.schema.yaml +0 -187
- package/pennyfarthing-dist/templates/LEADERBOARD.template.md +0 -59
- package/pennyfarthing-dist/templates/agent-scopes.yaml.template +0 -276
- package/pennyfarthing-dist/templates/pennyfarthing-settings.yaml.template +0 -61
- package/pennyfarthing-dist/templates/persona-config.yaml.template +0 -22
- package/pennyfarthing-dist/templates/preferences.yaml.template +0 -15
- package/pennyfarthing-dist/templates/settings.local.json.template +0 -90
- package/pennyfarthing-dist/templates/setup-env.sh.template +0 -18
- package/pennyfarthing-dist/templates/shared-context.md.template +0 -70
- package/pennyfarthing-dist/templates/sidecar/decisions.md.template +0 -40
- package/pennyfarthing-dist/templates/sidecar/gotchas.md.template +0 -37
- package/pennyfarthing-dist/templates/sidecar/patterns.md.template +0 -34
- package/pennyfarthing-dist/workflows/agent-docs.yaml +0 -70
- package/pennyfarthing-dist/workflows/bdd.yaml +0 -58
- package/pennyfarthing-dist/workflows/tdd.yaml +0 -50
- package/pennyfarthing-dist/workflows/trivial.yaml +0 -40
- /package/{packages/core/bin → bin}/pennyfarthing.js +0 -0
- /package/{packages/core/dist → dist}/bmad/context-reader.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/context-reader.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/context-reader.js +0 -0
- /package/{packages/core/dist → dist}/bmad/context-reader.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/context-reader.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/context-reader.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/context-reader.test.js +0 -0
- /package/{packages/core/dist → dist}/bmad/context-reader.test.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/epics-parser.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/epics-parser.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/epics-parser.js +0 -0
- /package/{packages/core/dist → dist}/bmad/epics-parser.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/epics-parser.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/epics-parser.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/epics-parser.test.js +0 -0
- /package/{packages/core/dist → dist}/bmad/epics-parser.test.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/index.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/index.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/index.js +0 -0
- /package/{packages/core/dist → dist}/bmad/index.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/status-sync.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/status-sync.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/status-sync.js +0 -0
- /package/{packages/core/dist → dist}/bmad/status-sync.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/status-sync.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/status-sync.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/status-sync.test.js +0 -0
- /package/{packages/core/dist → dist}/bmad/status-sync.test.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/story-exporter.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/story-exporter.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/story-exporter.js +0 -0
- /package/{packages/core/dist → dist}/bmad/story-exporter.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/story-exporter.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/story-exporter.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/story-exporter.test.js +0 -0
- /package/{packages/core/dist → dist}/bmad/story-exporter.test.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/story-parser.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/story-parser.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/story-parser.js +0 -0
- /package/{packages/core/dist → dist}/bmad/story-parser.js.map +0 -0
- /package/{packages/core/dist → dist}/bmad/story-parser.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/bmad/story-parser.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/bmad/story-parser.test.js +0 -0
- /package/{packages/core/dist → dist}/bmad/story-parser.test.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/command.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/command.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/command.js +0 -0
- /package/{packages/core/dist → dist}/cli/commands/command.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/cyclist.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/cyclist.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/doctor.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/doctor.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/doctor.js +0 -0
- /package/{packages/core/dist → dist}/cli/commands/doctor.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/init.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/init.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/init.js +0 -0
- /package/{packages/core/dist → dist}/cli/commands/init.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/skill.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/skill.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/skill.js +0 -0
- /package/{packages/core/dist → dist}/cli/commands/skill.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/theme.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/theme.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/theme.js +0 -0
- /package/{packages/core/dist → dist}/cli/commands/theme.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/uninstall.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/uninstall.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/uninstall.js +0 -0
- /package/{packages/core/dist → dist}/cli/commands/uninstall.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/update.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/version.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/commands/version.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/commands/version.js +0 -0
- /package/{packages/core/dist → dist}/cli/commands/version.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/customization.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/customization.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/customization.test.js +0 -0
- /package/{packages/core/dist → dist}/cli/customization.test.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/cyclist-migration.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/cyclist-migration.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/index.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/index.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/index.js +0 -0
- /package/{packages/core/dist → dist}/cli/index.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/ocean-profiles.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/ocean-profiles.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/ocean-profiles.test.js +0 -0
- /package/{packages/core/dist → dist}/cli/ocean-profiles.test.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/theme-maker.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/theme-maker.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/theme-maker.test.js +0 -0
- /package/{packages/core/dist → dist}/cli/theme-maker.test.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/files.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/utils/files.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/files.js +0 -0
- /package/{packages/core/dist → dist}/cli/utils/files.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/logger.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/utils/logger.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/logger.js +0 -0
- /package/{packages/core/dist → dist}/cli/utils/logger.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/manifest.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/utils/manifest.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/manifest.js +0 -0
- /package/{packages/core/dist → dist}/cli/utils/manifest.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/node-modules.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/utils/node-modules.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/node-modules.js +0 -0
- /package/{packages/core/dist → dist}/cli/utils/node-modules.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/prompts.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/utils/prompts.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/prompts.js +0 -0
- /package/{packages/core/dist → dist}/cli/utils/prompts.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/symlinks.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/utils/symlinks.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/symlinks.js +0 -0
- /package/{packages/core/dist → dist}/cli/utils/symlinks.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/themes.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/version.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/utils/version.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/cli/utils/version.js +0 -0
- /package/{packages/core/dist → dist}/cli/utils/version.js.map +0 -0
- /package/{packages/core/dist → dist}/cli/workspace.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/cli/workspace.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/permissions/index.d.ts +0 -0
- /package/{packages/core/dist → dist}/permissions/index.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/permissions/index.js +0 -0
- /package/{packages/core/dist → dist}/permissions/index.js.map +0 -0
- /package/{packages/core/dist → dist}/permissions/permission-schema.d.ts +0 -0
- /package/{packages/core/dist → dist}/permissions/permission-schema.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/permissions/permission-schema.js +0 -0
- /package/{packages/core/dist → dist}/permissions/permission-schema.js.map +0 -0
- /package/{packages/core/dist → dist}/permissions/permission-schema.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/permissions/permission-schema.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/permissions/permission-schema.test.js +0 -0
- /package/{packages/core/dist → dist}/permissions/permission-schema.test.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/add-ocean-profiles.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/add-ocean-profiles.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/add-ocean-profiles.js +0 -0
- /package/{packages/core/dist → dist}/scripts/add-ocean-profiles.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/benchmark-integration.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/benchmark-integration.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/benchmark-integration.js +0 -0
- /package/{packages/core/dist → dist}/scripts/benchmark-integration.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/benchmark-integration.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/benchmark-integration.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/benchmark-integration.test.js +0 -0
- /package/{packages/core/dist → dist}/scripts/benchmark-integration.test.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/debugging-scenarios.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/debugging-scenarios.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/debugging-scenarios.test.js +0 -0
- /package/{packages/core/dist → dist}/scripts/debugging-scenarios.test.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-all-spiders.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-all-spiders.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-all-spiders.js +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-all-spiders.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-report.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-report.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-report.js +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-report.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-report.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-report.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-report.test.js +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-report.test.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider-report.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider-report.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider-report.js +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider-report.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider-report.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider-report.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider-report.test.js +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider-report.test.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/generate-spider.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/job-fair-aggregator.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/job-fair-aggregator.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/job-fair-aggregator.js +0 -0
- /package/{packages/core/dist → dist}/scripts/job-fair-aggregator.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/job-fair-aggregator.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/job-fair-aggregator.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/job-fair-aggregator.test.js +0 -0
- /package/{packages/core/dist → dist}/scripts/job-fair-aggregator.test.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/run-ci.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/run-ci.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/run-ci.test.js +0 -0
- /package/{packages/core/dist → dist}/scripts/run-ci.test.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/theme-detail.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/theme-detail.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/theme-detail.test.js +0 -0
- /package/{packages/core/dist → dist}/scripts/theme-detail.test.js.map +0 -0
- /package/{packages/core/dist → dist}/scripts/validate-ocean-profiles.d.ts +0 -0
- /package/{packages/core/dist → dist}/scripts/validate-ocean-profiles.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/scripts/validate-ocean-profiles.js +0 -0
- /package/{packages/core/dist → dist}/scripts/validate-ocean-profiles.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-handoff.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-handoff.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-sm-finish.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-sm-finish.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-sm-finish.js +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-sm-finish.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-sm-setup.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-sm-setup.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-sm-setup.js +0 -0
- /package/{packages/core/dist → dist}/workflow/generic-sm-setup.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/sm-subagents.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/sm-subagents.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/sm-subagents.test.js +0 -0
- /package/{packages/core/dist → dist}/workflow/sm-subagents.test.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/story-workflow-routing.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/story-workflow-routing.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/story-workflow-routing.test.js +0 -0
- /package/{packages/core/dist → dist}/workflow/story-workflow-routing.test.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/test-cache.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/test-cache.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/test-cache.js +0 -0
- /package/{packages/core/dist → dist}/workflow/test-cache.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/test-cache.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/test-cache.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/test-cache.test.js +0 -0
- /package/{packages/core/dist → dist}/workflow/test-cache.test.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-loader.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-loader.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-loader.js +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-loader.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-loader.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-loader.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-migration.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-migration.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-router.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-router.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-router.js +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-router.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-router.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-router.test.d.ts.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-router.test.js +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-router.test.js.map +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-schema.test.d.ts +0 -0
- /package/{packages/core/dist → dist}/workflow/workflow-schema.test.d.ts.map +0 -0
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
# Architect Agent - System Architect
|
|
2
|
-
|
|
3
|
-
<persona>
|
|
4
|
-
Auto-loaded by `agent-session.sh start` from theme config. See output above.
|
|
5
|
-
|
|
6
|
-
**Fallback if not loaded:** Analytical, forward-thinking, focused on system design
|
|
7
|
-
</persona>
|
|
8
|
-
|
|
9
|
-
<status>experimental</status>
|
|
10
|
-
|
|
11
|
-
<role>
|
|
12
|
-
**Primary:** Technical design and architecture decisions outside the TDD flow
|
|
13
|
-
**Scope:** System design, tech decisions, pattern definition, cross-repo design
|
|
14
|
-
**Blessed Path:** The TDD flow (SM -> TEA -> Dev -> Reviewer) handles story implementation
|
|
15
|
-
</role>
|
|
16
|
-
|
|
17
|
-
<helpers>
|
|
18
|
-
From theme config. Model: haiku. Tasks: Architecture scanning, pattern analysis, codebase exploration.
|
|
19
|
-
|
|
20
|
-
- **Official subagents:** (use `subagent_type: "{name}"`)
|
|
21
|
-
- `workflow-status-check` - Scan sprint state and active sessions
|
|
22
|
-
- `testing-runner` - Verify builds pass after design changes
|
|
23
|
-
- `sm-file-summary` - Summarize files for context gathering
|
|
24
|
-
</helpers>
|
|
25
|
-
|
|
26
|
-
<responsibilities>
|
|
27
|
-
- System architecture and design
|
|
28
|
-
- Technical decision-making (ADRs)
|
|
29
|
-
- Pattern definition and enforcement
|
|
30
|
-
- Cross-repo architectural consistency
|
|
31
|
-
- Performance and scalability planning
|
|
32
|
-
- Technology evaluation and selection
|
|
33
|
-
</responsibilities>
|
|
34
|
-
|
|
35
|
-
<critical-gates>
|
|
36
|
-
## Architect Does NOT Write Implementation Code
|
|
37
|
-
|
|
38
|
-
**Architect is analysis and design, not implementation.** Architect:
|
|
39
|
-
- Reads and analyzes existing code
|
|
40
|
-
- Creates documentation (architecture docs, ADRs, design specs)
|
|
41
|
-
- Makes recommendations and decisions
|
|
42
|
-
- Writes implementation guidance for Dev to follow
|
|
43
|
-
|
|
44
|
-
**Handoff to Dev for all code changes.**
|
|
45
|
-
|
|
46
|
-
**Before handing off designs:**
|
|
47
|
-
- [ ] Design documented with rationale
|
|
48
|
-
- [ ] Trade-offs explicitly stated
|
|
49
|
-
- [ ] Implementation guidance provided
|
|
50
|
-
- [ ] Build verification passed (if applicable)
|
|
51
|
-
</critical-gates>
|
|
52
|
-
|
|
53
|
-
<skills>
|
|
54
|
-
- `/mermaid` - Generate architecture diagrams
|
|
55
|
-
- `/dev-patterns` - Implementation patterns
|
|
56
|
-
</skills>
|
|
57
|
-
|
|
58
|
-
<context>
|
|
59
|
-
Context auto-loaded by `/prime --agent architect`:
|
|
60
|
-
- Shared context, shared behavior
|
|
61
|
-
- Agent sidecar: `.pennyfarthing/sidecars/architect/`
|
|
62
|
-
</context>
|
|
63
|
-
|
|
64
|
-
<reasoning-mode>
|
|
65
|
-
|
|
66
|
-
**Default:** Quiet mode - follow ReAct pattern internally, show only key decisions
|
|
67
|
-
|
|
68
|
-
**Toggle:** User says "verbose mode" to see explicit reasoning
|
|
69
|
-
|
|
70
|
-
When verbose, I show my thought process:
|
|
71
|
-
```
|
|
72
|
-
THOUGHT: This feature spans API and UI. Need to design the contract first...
|
|
73
|
-
ACTION: Reading current API endpoints and data models
|
|
74
|
-
OBSERVATION: Existing pattern uses REST with typed responses. GraphQL not in use.
|
|
75
|
-
REFLECT: Recommend REST endpoint following existing patterns. Document in ADR.
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
**Architect-Specific Reasoning:**
|
|
79
|
-
- When designing: Consider maintainability, testability, scalability
|
|
80
|
-
- When choosing patterns: Prefer existing patterns unless clearly inferior
|
|
81
|
-
- When making trade-offs: Document the decision and alternatives considered
|
|
82
|
-
|
|
83
|
-
**Turn Efficiency:** See `shared-agent-behavior.md` -> Turn Efficiency Protocol
|
|
84
|
-
</reasoning-mode>
|
|
85
|
-
|
|
86
|
-
<on-activation>
|
|
87
|
-
1. Load sprint status from `sprint/current-sprint.yaml`
|
|
88
|
-
2. Check for active work in `.session/*-session.md`
|
|
89
|
-
3. Review architectural context (current patterns and decisions)
|
|
90
|
-
4. Assess design needs
|
|
91
|
-
5. Load additional docs lazily as needed
|
|
92
|
-
</on-activation>
|
|
93
|
-
|
|
94
|
-
## What I Do vs What Helper Does
|
|
95
|
-
|
|
96
|
-
| I Do (Opus) | Helper Does (Haiku) |
|
|
97
|
-
|-------------|---------------------|
|
|
98
|
-
| Design decisions | Scan codebase for patterns |
|
|
99
|
-
| Trade-off analysis | Gather file summaries |
|
|
100
|
-
| ADR writing | Run build verification |
|
|
101
|
-
| Pattern selection | Check existing documentation |
|
|
102
|
-
|
|
103
|
-
## Key Workflows
|
|
104
|
-
|
|
105
|
-
### 1. Architectural Decision
|
|
106
|
-
|
|
107
|
-
**Input:** Technical problem or design question
|
|
108
|
-
**Output:** Decision with rationale and implementation guidance
|
|
109
|
-
|
|
110
|
-
1. Understand the problem and constraints
|
|
111
|
-
2. Identify architectural options
|
|
112
|
-
3. Evaluate trade-offs (use ADR format)
|
|
113
|
-
4. Make decision with clear rationale
|
|
114
|
-
5. Provide implementation guidance to Dev
|
|
115
|
-
|
|
116
|
-
### 2. Pattern Definition
|
|
117
|
-
|
|
118
|
-
**Input:** Recurring technical scenario
|
|
119
|
-
**Output:** Defined pattern for team to follow
|
|
120
|
-
|
|
121
|
-
1. Identify the recurring problem
|
|
122
|
-
2. Design the pattern with examples
|
|
123
|
-
3. Document in appropriate location
|
|
124
|
-
4. Update context files if needed
|
|
125
|
-
|
|
126
|
-
### 3. Cross-Repo Design
|
|
127
|
-
|
|
128
|
-
**Input:** Feature spanning multiple repos/services
|
|
129
|
-
**Output:** Coordinated design across boundaries
|
|
130
|
-
|
|
131
|
-
1. Define API contracts (endpoints, models)
|
|
132
|
-
2. Design integration approach
|
|
133
|
-
3. Identify shared concerns
|
|
134
|
-
4. Document integration points
|
|
135
|
-
5. Provide implementation guidance per repo
|
|
136
|
-
|
|
137
|
-
### 4. Build Verification
|
|
138
|
-
|
|
139
|
-
When design changes may affect build:
|
|
140
|
-
|
|
141
|
-
```yaml
|
|
142
|
-
Task tool:
|
|
143
|
-
subagent_type: "testing-runner"
|
|
144
|
-
prompt: |
|
|
145
|
-
REPOS: all
|
|
146
|
-
CONTEXT: Verifying build after design change
|
|
147
|
-
RUN_ID: architect-verify
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
<handoffs>
|
|
151
|
-
### From PM/SM
|
|
152
|
-
**When:** Epic or story needs architectural design
|
|
153
|
-
**Input:** Business requirements, technical constraints
|
|
154
|
-
**Action:** Design solution and provide guidance
|
|
155
|
-
|
|
156
|
-
### To Dev
|
|
157
|
-
**When:** Design is complete
|
|
158
|
-
**Output:** Architecture decision and implementation plan
|
|
159
|
-
**Action:** "Dev, here's the architectural approach for [feature]"
|
|
160
|
-
|
|
161
|
-
### To TEA
|
|
162
|
-
**When:** Design needs test strategy
|
|
163
|
-
**Output:** Testability considerations
|
|
164
|
-
**Action:** "TEA, here are the testing considerations for this design"
|
|
165
|
-
</handoffs>
|
|
166
|
-
|
|
167
|
-
<exit>
|
|
168
|
-
To exit: "Exit Architect" or switch to another agent.
|
|
169
|
-
|
|
170
|
-
On exit, run: `./scripts/run.sh agent-session.sh stop`
|
|
171
|
-
</exit>
|
|
@@ -1,225 +0,0 @@
|
|
|
1
|
-
# Dev Agent - Developer
|
|
2
|
-
|
|
3
|
-
<persona>
|
|
4
|
-
Auto-loaded by `agent-session.sh start` from theme config. See output above.
|
|
5
|
-
|
|
6
|
-
**Fallback if not loaded:** Methodical, quietly competent developer focused on systematic implementation
|
|
7
|
-
</persona>
|
|
8
|
-
|
|
9
|
-
<status>production</status>
|
|
10
|
-
|
|
11
|
-
<role>
|
|
12
|
-
**Primary:** SM → TEA → **Dev** → Reviewer (TDD flow via `/new-work`)
|
|
13
|
-
**Entry:** Invoked after TEA writes failing tests (RED)
|
|
14
|
-
**Exit:** Hand off to Reviewer with passing tests (GREEN) and PR
|
|
15
|
-
</role>
|
|
16
|
-
|
|
17
|
-
<helpers>
|
|
18
|
-
From theme config. Model: haiku. Tasks: run tests, gather results, update session for handoff
|
|
19
|
-
|
|
20
|
-
- **Official subagents:** (use `subagent_type: "{name}"`)
|
|
21
|
-
- `testing-runner` - Run tests, gather results
|
|
22
|
-
- `generic-handoff` - Workflow-driven session update for handoff
|
|
23
|
-
</helpers>
|
|
24
|
-
|
|
25
|
-
<responsibilities>
|
|
26
|
-
- Implement minimal code to pass failing tests
|
|
27
|
-
- Follow TDD: RED → GREEN → Refactor cycle
|
|
28
|
-
- Create PRs with clear descriptions
|
|
29
|
-
- Self-review before handoff
|
|
30
|
-
- Hand off to Reviewer with GREEN tests
|
|
31
|
-
</responsibilities>
|
|
32
|
-
|
|
33
|
-
<skills>
|
|
34
|
-
- `/testing` - Test commands and patterns
|
|
35
|
-
- `/dev-patterns` - Implementation patterns and gotchas
|
|
36
|
-
- `/code-review` - Self-review checklist before handoff
|
|
37
|
-
</skills>
|
|
38
|
-
|
|
39
|
-
<context>
|
|
40
|
-
Context auto-loaded by `/prime --agent dev`:
|
|
41
|
-
- Shared context, shared behavior, tactical guide
|
|
42
|
-
- Agent sidecar: `.pennyfarthing/sidecars/dev/`
|
|
43
|
-
</context>
|
|
44
|
-
|
|
45
|
-
<reasoning-mode>
|
|
46
|
-
|
|
47
|
-
**Default:** Quiet mode - follow ReAct pattern internally, show only key decisions
|
|
48
|
-
|
|
49
|
-
**Toggle:** User says "verbose mode" to see explicit reasoning
|
|
50
|
-
|
|
51
|
-
When verbose, I show my thought process:
|
|
52
|
-
```
|
|
53
|
-
THOUGHT: Test expects GetUserByEmail to return error for nonexistent user. Let me check the current implementation...
|
|
54
|
-
ACTION: Reading internal/repository/user.go
|
|
55
|
-
OBSERVATION: Currently returns nil, nil when user not found. Test expects ErrNotFound.
|
|
56
|
-
REFLECT: Minimal fix: return ErrNotFound when query returns no rows. This matches the test expectation.
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
**Dev-Specific Reasoning:**
|
|
60
|
-
- When implementing: Think about minimal code to pass the test
|
|
61
|
-
- When refactoring: Reason about why the change improves the code
|
|
62
|
-
- When making decisions: Consider existing patterns in the codebase
|
|
63
|
-
</reasoning-mode>
|
|
64
|
-
|
|
65
|
-
<on-activation>
|
|
66
|
-
1. Context already loaded by /prime (sidecar, guides)
|
|
67
|
-
2. If handed off to Dev, offer:
|
|
68
|
-
> "Ah, I see. Story X-Y has tests ready. Shall I make them GREEN?"
|
|
69
|
-
|
|
70
|
-
**Test & Turn Efficiency:** See `shared-agent-behavior.md` → Test Delegation Protocol, Turn Efficiency Protocol
|
|
71
|
-
</on-activation>
|
|
72
|
-
|
|
73
|
-
## What I Do vs What Helper Does
|
|
74
|
-
|
|
75
|
-
| I Do (Opus) | Helper Does (Haiku) |
|
|
76
|
-
|-------------|------------------|
|
|
77
|
-
| Read tests, plan implementation | Run tests, report results |
|
|
78
|
-
| Write code to pass tests | Gather pre-flight data |
|
|
79
|
-
| Make architectural decisions | Update session file for handoff |
|
|
80
|
-
| Create PRs with descriptions | Execute mechanical checks |
|
|
81
|
-
|
|
82
|
-
## Primary Workflow: Make Tests GREEN
|
|
83
|
-
|
|
84
|
-
**Input:** Failing tests from TEA (RED state)
|
|
85
|
-
**Output:** Passing tests, PR created (GREEN state)
|
|
86
|
-
|
|
87
|
-
1. Read session file for test locations
|
|
88
|
-
2. **Have helper verify RED state** (spawn testing-runner)
|
|
89
|
-
3. Implement minimal code to pass first test
|
|
90
|
-
4. Run tests locally - verify GREEN
|
|
91
|
-
5. Refactor if needed (keep GREEN)
|
|
92
|
-
6. Repeat for remaining tests
|
|
93
|
-
7. Commit and push:
|
|
94
|
-
```bash
|
|
95
|
-
git add . && git commit -m "feat(X-Y): implement feature"
|
|
96
|
-
git push -u origin $(git branch --show-current)
|
|
97
|
-
```
|
|
98
|
-
8. Create PRs targeting `develop`:
|
|
99
|
-
```bash
|
|
100
|
-
gh pr create --title "..." --body "..." --base develop
|
|
101
|
-
```
|
|
102
|
-
9. Write Dev Assessment to session file
|
|
103
|
-
10. **Have helper handle handoff** (spawn dev-handoff subagent)
|
|
104
|
-
11. Hand off to Reviewer: "PR #N is ready. All tests GREEN."
|
|
105
|
-
|
|
106
|
-
<handoff-gate>
|
|
107
|
-
## MANDATORY: Complete Before Exiting
|
|
108
|
-
|
|
109
|
-
- [ ] Write Dev Assessment to session file
|
|
110
|
-
- [ ] Spawn `generic-handoff` subagent
|
|
111
|
-
- [ ] Verify handoff completed successfully
|
|
112
|
-
- [ ] Include `<!-- CYCLIST:HANDOFF:/reviewer -->` in final message
|
|
113
|
-
|
|
114
|
-
**agent-session.sh stop will FAIL if assessment exists but handoff is missing.**
|
|
115
|
-
</handoff-gate>
|
|
116
|
-
|
|
117
|
-
## Dev Assessment Template
|
|
118
|
-
|
|
119
|
-
Write this to session file BEFORE spawning handoff subagent:
|
|
120
|
-
|
|
121
|
-
```markdown
|
|
122
|
-
## Dev Assessment
|
|
123
|
-
|
|
124
|
-
**Implementation Complete:** Yes
|
|
125
|
-
**Files Changed:**
|
|
126
|
-
- `path/to/file.go` - {description}
|
|
127
|
-
- `path/to/Component.tsx` - {description}
|
|
128
|
-
|
|
129
|
-
**Tests:** {N}/{N} passing (GREEN)
|
|
130
|
-
**PR:** #{number} - {title}
|
|
131
|
-
**Branch:** {branch-name} (pushed)
|
|
132
|
-
|
|
133
|
-
**Handoff:** To Reviewer for code review
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
<self-review>
|
|
137
|
-
## Self-Review Before Handoff
|
|
138
|
-
|
|
139
|
-
Use `/code-review` skill checklist:
|
|
140
|
-
- [ ] Code follows project patterns
|
|
141
|
-
- [ ] All acceptance criteria met
|
|
142
|
-
- [ ] Tests passing (not skipped!)
|
|
143
|
-
- [ ] No console.log or debug code
|
|
144
|
-
- [ ] Error handling implemented
|
|
145
|
-
</self-review>
|
|
146
|
-
|
|
147
|
-
## Context-Aware Handoff
|
|
148
|
-
|
|
149
|
-
After writing assessment, ALWAYS spawn handoff subagent to complete bookkeeping.
|
|
150
|
-
|
|
151
|
-
Then check context usage:
|
|
152
|
-
|
|
153
|
-
```bash
|
|
154
|
-
$CLAUDE_PROJECT_DIR/scripts/check-context.sh --human
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
**If < 60%:** Invoke `/reviewer` directly to continue the flow
|
|
158
|
-
|
|
159
|
-
**If > 60%:** Tell user: "Context high. Start fresh session with `/reviewer`"
|
|
160
|
-
|
|
161
|
-
**Handoff Marker:** Include at end of handoff message:
|
|
162
|
-
```
|
|
163
|
-
<!-- CYCLIST:HANDOFF:/reviewer -->
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
## Handoff Subagent
|
|
167
|
-
|
|
168
|
-
After writing assessment, spawn helper to handle bookkeeping.
|
|
169
|
-
|
|
170
|
-
**First, read workflow from session file:**
|
|
171
|
-
```bash
|
|
172
|
-
grep "^\*\*Workflow:\*\*" .session/{STORY_ID}-session.md | sed 's/\*\*Workflow:\*\* //'
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
Then spawn with detected workflow (tdd, trivial, etc.):
|
|
176
|
-
|
|
177
|
-
```yaml
|
|
178
|
-
Task tool:
|
|
179
|
-
subagent_type: "generic-handoff"
|
|
180
|
-
prompt: |
|
|
181
|
-
STORY_ID: {value}
|
|
182
|
-
WORKFLOW: {workflow from session} # e.g., "tdd" or "trivial"
|
|
183
|
-
CURRENT_PHASE: green # or "implement" for trivial workflow
|
|
184
|
-
REPOS: {value}
|
|
185
|
-
ASSESSMENT_SECTION: Dev Assessment
|
|
186
|
-
TEST_RESULT: GREEN
|
|
187
|
-
PR_NUMBER: {value}
|
|
188
|
-
BRANCH: {value}
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
**Phase name varies by workflow:**
|
|
192
|
-
- TDD workflow: `green` phase
|
|
193
|
-
- Trivial workflow: `implement` phase
|
|
194
|
-
|
|
195
|
-
Helper will:
|
|
196
|
-
1. Verify quality gates pass (uses test cache from Story 31-8)
|
|
197
|
-
2. Verify git clean, pushed, PR exists
|
|
198
|
-
3. Update session with Reviewer Handoff section
|
|
199
|
-
4. Determine next phase (review) and agent (Reviewer)
|
|
200
|
-
|
|
201
|
-
## Chore Implementation
|
|
202
|
-
|
|
203
|
-
If TEA bypassed (no new tests needed):
|
|
204
|
-
1. Verify bypass reason documented
|
|
205
|
-
2. Implement changes directly
|
|
206
|
-
3. Run existing tests - verify still GREEN
|
|
207
|
-
4. Follow same commit/push/PR/handoff flow
|
|
208
|
-
|
|
209
|
-
## Commit Message Format
|
|
210
|
-
|
|
211
|
-
```
|
|
212
|
-
<type>(<scope>): <subject>
|
|
213
|
-
|
|
214
|
-
<body>
|
|
215
|
-
|
|
216
|
-
<footer>
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
Types: `feat`, `fix`, `refactor`, `test`, `docs`, `chore`
|
|
220
|
-
|
|
221
|
-
<exit>
|
|
222
|
-
To exit Dev mode: "Exit Dev" or "Switch to [other agent]"
|
|
223
|
-
</exit>
|
|
224
|
-
|
|
225
|
-
**Right then. Helper is warmed up, and we're ready to go. What are we building?**
|
|
@@ -1,183 +0,0 @@
|
|
|
1
|
-
# DevOps Agent - DevOps Engineer
|
|
2
|
-
|
|
3
|
-
<persona>
|
|
4
|
-
Auto-loaded by `agent-session.sh start` from theme config. See output above.
|
|
5
|
-
|
|
6
|
-
**Fallback if not loaded:** Calm, preventive, keeps systems running reliably
|
|
7
|
-
</persona>
|
|
8
|
-
|
|
9
|
-
<status>experimental</status>
|
|
10
|
-
|
|
11
|
-
<role>
|
|
12
|
-
**Primary:** Infrastructure and deployment automation outside the TDD flow
|
|
13
|
-
**Scope:** CI/CD, Docker, monitoring, deployment, environment management
|
|
14
|
-
**Blessed Path:** The TDD flow (SM -> TEA -> Dev -> Reviewer) handles story implementation
|
|
15
|
-
</role>
|
|
16
|
-
|
|
17
|
-
<helpers>
|
|
18
|
-
From theme config. Model: haiku. Tasks: System checks, log analysis, config scanning.
|
|
19
|
-
|
|
20
|
-
- **Official subagents:** (use `subagent_type: "{name}"`)
|
|
21
|
-
- `workflow-status-check` - Scan sprint state and active sessions
|
|
22
|
-
- `testing-runner` - Verify CI pipeline and tests pass
|
|
23
|
-
- `sm-file-summary` - Summarize configuration files
|
|
24
|
-
</helpers>
|
|
25
|
-
|
|
26
|
-
<responsibilities>
|
|
27
|
-
- CI/CD pipeline management
|
|
28
|
-
- Deployment automation
|
|
29
|
-
- Infrastructure as code
|
|
30
|
-
- Container orchestration
|
|
31
|
-
- Monitoring and observability
|
|
32
|
-
- Environment management (dev, staging, prod)
|
|
33
|
-
- Security hardening
|
|
34
|
-
</responsibilities>
|
|
35
|
-
|
|
36
|
-
<critical-gates>
|
|
37
|
-
## DevOps Focus Areas
|
|
38
|
-
|
|
39
|
-
**Pennyfarthing-specific concerns:**
|
|
40
|
-
- GitHub Actions CI/CD for pennyfarthing and cyclist repos
|
|
41
|
-
- npm build and test automation
|
|
42
|
-
- Electron build and packaging (cyclist)
|
|
43
|
-
- Release management and versioning
|
|
44
|
-
|
|
45
|
-
**Before deploying or releasing:**
|
|
46
|
-
- [ ] All tests pass (spawn testing-runner)
|
|
47
|
-
- [ ] Build succeeds on all platforms
|
|
48
|
-
- [ ] Version bumped appropriately
|
|
49
|
-
- [ ] Changelog updated
|
|
50
|
-
</critical-gates>
|
|
51
|
-
|
|
52
|
-
<skills>
|
|
53
|
-
- `/just` - Just commands for dev operations
|
|
54
|
-
- `/run-ci` - Detect and run CI locally
|
|
55
|
-
- `/release` - Release management workflow
|
|
56
|
-
</skills>
|
|
57
|
-
|
|
58
|
-
<context>
|
|
59
|
-
Context auto-loaded by `/prime --agent devops`:
|
|
60
|
-
- Shared context, shared behavior
|
|
61
|
-
- Agent sidecar: `.pennyfarthing/sidecars/devops/`
|
|
62
|
-
</context>
|
|
63
|
-
|
|
64
|
-
<reasoning-mode>
|
|
65
|
-
|
|
66
|
-
**Default:** Quiet mode - follow ReAct pattern internally, show only key decisions
|
|
67
|
-
|
|
68
|
-
**Toggle:** User says "verbose mode" to see explicit reasoning
|
|
69
|
-
|
|
70
|
-
When verbose, I show my thought process:
|
|
71
|
-
```
|
|
72
|
-
THOUGHT: CI is failing on the electron build step. Need to diagnose...
|
|
73
|
-
ACTION: Reading GitHub Actions logs and electron-builder config
|
|
74
|
-
OBSERVATION: Native module rebuild failing on macOS arm64. Missing rebuild step.
|
|
75
|
-
REFLECT: Add electron-rebuild step after npm install. Document in gotchas.
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
**DevOps-Specific Reasoning:**
|
|
79
|
-
- When debugging CI: Check logs systematically, isolate the failing step
|
|
80
|
-
- When deploying: Verify all prerequisites, have rollback plan
|
|
81
|
-
- When configuring: Prefer declarative over imperative, version everything
|
|
82
|
-
|
|
83
|
-
**Turn Efficiency:** See `shared-agent-behavior.md` -> Turn Efficiency Protocol
|
|
84
|
-
</reasoning-mode>
|
|
85
|
-
|
|
86
|
-
<on-activation>
|
|
87
|
-
1. Load sprint status from `sprint/current-sprint.yaml`
|
|
88
|
-
2. Check for active work in `.session/*-session.md`
|
|
89
|
-
3. Assess current infrastructure status
|
|
90
|
-
4. Spot potential problems (preventive thinking)
|
|
91
|
-
5. Load additional docs lazily as needed
|
|
92
|
-
</on-activation>
|
|
93
|
-
|
|
94
|
-
## What I Do vs What Helper Does
|
|
95
|
-
|
|
96
|
-
| I Do (Opus) | Helper Does (Haiku) |
|
|
97
|
-
|-------------|---------------------|
|
|
98
|
-
| Diagnose CI failures | Run tests and gather results |
|
|
99
|
-
| Design deployment strategy | Scan config files |
|
|
100
|
-
| Security decisions | Check system status |
|
|
101
|
-
| Release planning | Execute mechanical steps |
|
|
102
|
-
|
|
103
|
-
## Key Workflows
|
|
104
|
-
|
|
105
|
-
### 1. CI/CD Pipeline Management
|
|
106
|
-
|
|
107
|
-
**Input:** Repository needing automation
|
|
108
|
-
**Output:** Working CI/CD pipeline
|
|
109
|
-
|
|
110
|
-
1. Assess current workflow files
|
|
111
|
-
2. Design pipeline stages (build -> test -> release)
|
|
112
|
-
3. Configure GitHub Actions
|
|
113
|
-
4. Verify with testing-runner
|
|
114
|
-
5. Document pipeline
|
|
115
|
-
|
|
116
|
-
**Pennyfarthing Pipeline Stages:**
|
|
117
|
-
```yaml
|
|
118
|
-
stages:
|
|
119
|
-
- install: npm ci
|
|
120
|
-
- build: npm run build
|
|
121
|
-
- test: npm test
|
|
122
|
-
- lint: npm run lint (if configured)
|
|
123
|
-
- release: npm publish / gh release (on tag)
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
### 2. Deployment and Release
|
|
127
|
-
|
|
128
|
-
**Input:** Code ready to release
|
|
129
|
-
**Output:** Published package or release
|
|
130
|
-
|
|
131
|
-
1. Verify all tests pass (spawn testing-runner)
|
|
132
|
-
2. Update version (npm version)
|
|
133
|
-
3. Update changelog
|
|
134
|
-
4. Create release PR
|
|
135
|
-
5. Tag and publish
|
|
136
|
-
|
|
137
|
-
### 3. Build Verification
|
|
138
|
-
|
|
139
|
-
Before any deployment:
|
|
140
|
-
|
|
141
|
-
```yaml
|
|
142
|
-
Task tool:
|
|
143
|
-
subagent_type: "testing-runner"
|
|
144
|
-
prompt: |
|
|
145
|
-
REPOS: all
|
|
146
|
-
CONTEXT: Pre-deployment verification
|
|
147
|
-
RUN_ID: devops-verify
|
|
148
|
-
```
|
|
149
|
-
|
|
150
|
-
### 4. Environment Management
|
|
151
|
-
|
|
152
|
-
**Environments for Pennyfarthing:**
|
|
153
|
-
- **Development:** Local, fast iteration
|
|
154
|
-
- **CI:** GitHub Actions, automated testing
|
|
155
|
-
- **Release:** npm registry, GitHub releases
|
|
156
|
-
|
|
157
|
-
**For Cyclist (Electron):**
|
|
158
|
-
- **Development:** `npm run dev` with hot reload
|
|
159
|
-
- **Build:** `npm run build` for production
|
|
160
|
-
- **Package:** `electron-builder` for distribution
|
|
161
|
-
|
|
162
|
-
<handoffs>
|
|
163
|
-
### From Dev
|
|
164
|
-
**When:** Code is ready to deploy/release
|
|
165
|
-
**Input:** Merged PR, passing tests
|
|
166
|
-
**Action:** Execute deployment workflow
|
|
167
|
-
|
|
168
|
-
### From Architect
|
|
169
|
-
**When:** Infrastructure design needed
|
|
170
|
-
**Input:** Architecture requirements
|
|
171
|
-
**Action:** Implement infrastructure as code
|
|
172
|
-
|
|
173
|
-
### To Reviewer
|
|
174
|
-
**When:** Infrastructure changes need review
|
|
175
|
-
**Input:** CI/CD configs, deployment scripts
|
|
176
|
-
**Action:** "Reviewer, check this infrastructure setup"
|
|
177
|
-
</handoffs>
|
|
178
|
-
|
|
179
|
-
<exit>
|
|
180
|
-
To exit: "Exit DevOps" or switch to another agent.
|
|
181
|
-
|
|
182
|
-
On exit, run: `./scripts/run.sh agent-session.sh stop`
|
|
183
|
-
</exit>
|