@pennyfarthing/core 11.2.0 → 11.2.2

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.
Files changed (367) hide show
  1. package/README.md +100 -40
  2. package/package.json +2 -1
  3. package/packages/core/dist/cli/commands/doctor.d.ts.map +1 -1
  4. package/packages/core/dist/cli/commands/doctor.js +474 -66
  5. package/packages/core/dist/cli/commands/doctor.js.map +1 -1
  6. package/packages/core/dist/cli/commands/init.js +4 -4
  7. package/packages/core/dist/cli/commands/init.js.map +1 -1
  8. package/packages/core/dist/cli/commands/update.d.ts.map +1 -1
  9. package/packages/core/dist/cli/commands/update.js +4 -5
  10. package/packages/core/dist/cli/commands/update.js.map +1 -1
  11. package/packages/core/dist/cli/utils/constants.d.ts +3 -8
  12. package/packages/core/dist/cli/utils/constants.d.ts.map +1 -1
  13. package/packages/core/dist/cli/utils/constants.js +3 -4
  14. package/packages/core/dist/cli/utils/constants.js.map +1 -1
  15. package/packages/core/dist/cli/utils/settings.d.ts +7 -0
  16. package/packages/core/dist/cli/utils/settings.d.ts.map +1 -1
  17. package/packages/core/dist/cli/utils/settings.js +70 -29
  18. package/packages/core/dist/cli/utils/settings.js.map +1 -1
  19. package/packages/core/dist/cli/utils/symlinks.js +16 -16
  20. package/packages/core/dist/cli/utils/symlinks.js.map +1 -1
  21. package/packages/core/dist/consultation/dialogue-manager.d.ts +1 -1
  22. package/packages/core/dist/consultation/dialogue-manager.d.ts.map +1 -1
  23. package/packages/core/dist/consultation/dialogue-manager.js +1 -1
  24. package/packages/core/dist/consultation/dialogue-manager.js.map +1 -1
  25. package/packages/core/dist/consultation/dialogue-manager.test.js.map +1 -1
  26. package/packages/core/dist/consultation/tandem-metrics.d.ts +91 -0
  27. package/packages/core/dist/consultation/tandem-metrics.d.ts.map +1 -0
  28. package/packages/core/dist/consultation/tandem-metrics.js +131 -0
  29. package/packages/core/dist/consultation/tandem-metrics.js.map +1 -0
  30. package/packages/core/dist/consultation/tandem-metrics.test.d.ts +18 -0
  31. package/packages/core/dist/consultation/tandem-metrics.test.d.ts.map +1 -0
  32. package/packages/core/dist/consultation/tandem-metrics.test.js +457 -0
  33. package/packages/core/dist/consultation/tandem-metrics.test.js.map +1 -0
  34. package/packages/core/dist/public/css/react.css +1 -1
  35. package/packages/core/dist/public/js/react/react.js +14 -14
  36. package/packages/core/dist/server/api/agent-load.js +1 -1
  37. package/packages/core/dist/server/api/agent-load.js.map +1 -1
  38. package/packages/core/dist/server/api/git.d.ts.map +1 -1
  39. package/packages/core/dist/server/api/git.js +0 -1
  40. package/packages/core/dist/server/api/git.js.map +1 -1
  41. package/packages/core/dist/server/api/index.d.ts +2 -0
  42. package/packages/core/dist/server/api/index.d.ts.map +1 -1
  43. package/packages/core/dist/server/api/index.js +2 -0
  44. package/packages/core/dist/server/api/index.js.map +1 -1
  45. package/packages/core/dist/server/api/project-info.d.ts +11 -0
  46. package/packages/core/dist/server/api/project-info.d.ts.map +1 -0
  47. package/packages/core/dist/server/api/project-info.js +18 -0
  48. package/packages/core/dist/server/api/project-info.js.map +1 -0
  49. package/packages/core/dist/server/otlp-receiver.d.ts.map +1 -1
  50. package/packages/core/dist/server/otlp-receiver.js +18 -1
  51. package/packages/core/dist/server/otlp-receiver.js.map +1 -1
  52. package/packages/core/dist/server/otlp-receiver.test.js +1 -1
  53. package/packages/core/dist/server/otlp-receiver.test.js.map +1 -1
  54. package/packages/core/dist/server/server.d.ts +0 -3
  55. package/packages/core/dist/server/server.d.ts.map +1 -1
  56. package/packages/core/dist/server/server.js +5 -38
  57. package/packages/core/dist/server/server.js.map +1 -1
  58. package/packages/core/dist/server/server.test.d.ts +1 -1
  59. package/packages/core/dist/server/server.test.js +12 -23
  60. package/packages/core/dist/server/server.test.js.map +1 -1
  61. package/packages/core/dist/server/settings.d.ts +1 -0
  62. package/packages/core/dist/server/settings.d.ts.map +1 -1
  63. package/packages/core/dist/server/settings.js +13 -0
  64. package/packages/core/dist/server/settings.js.map +1 -1
  65. package/packages/core/dist/shared/capabilities.d.ts +88 -0
  66. package/packages/core/dist/shared/capabilities.d.ts.map +1 -0
  67. package/packages/core/dist/shared/capabilities.js +133 -0
  68. package/packages/core/dist/shared/capabilities.js.map +1 -0
  69. package/packages/core/dist/shared/capabilities.test.d.ts +2 -0
  70. package/packages/core/dist/shared/capabilities.test.d.ts.map +1 -0
  71. package/packages/core/dist/shared/capabilities.test.js +217 -0
  72. package/packages/core/dist/shared/capabilities.test.js.map +1 -0
  73. package/packages/core/dist/shared/spawn-prompt.d.ts +47 -0
  74. package/packages/core/dist/shared/spawn-prompt.d.ts.map +1 -0
  75. package/packages/core/dist/shared/spawn-prompt.js +82 -0
  76. package/packages/core/dist/shared/spawn-prompt.js.map +1 -0
  77. package/packages/core/dist/shared/spawn-prompt.test.d.ts +2 -0
  78. package/packages/core/dist/shared/spawn-prompt.test.d.ts.map +1 -0
  79. package/packages/core/dist/shared/spawn-prompt.test.js +251 -0
  80. package/packages/core/dist/shared/spawn-prompt.test.js.map +1 -0
  81. package/packages/core/dist/workflow/tandem-workflow-templates.test.d.ts +18 -0
  82. package/packages/core/dist/workflow/tandem-workflow-templates.test.d.ts.map +1 -0
  83. package/packages/core/dist/workflow/tandem-workflow-templates.test.js +434 -0
  84. package/packages/core/dist/workflow/tandem-workflow-templates.test.js.map +1 -0
  85. package/packages/core/dist/workflow/team-lifecycle.d.ts +169 -0
  86. package/packages/core/dist/workflow/team-lifecycle.d.ts.map +1 -0
  87. package/packages/core/dist/workflow/team-lifecycle.js +217 -0
  88. package/packages/core/dist/workflow/team-lifecycle.js.map +1 -0
  89. package/packages/core/dist/workflow/team-lifecycle.test.d.ts +20 -0
  90. package/packages/core/dist/workflow/team-lifecycle.test.d.ts.map +1 -0
  91. package/packages/core/dist/workflow/team-lifecycle.test.js +966 -0
  92. package/packages/core/dist/workflow/team-lifecycle.test.js.map +1 -0
  93. package/packages/core/dist/workflow/workflow-schema.d.ts +32 -0
  94. package/packages/core/dist/workflow/workflow-schema.d.ts.map +1 -1
  95. package/packages/core/dist/workflow/workflow-schema.js +120 -0
  96. package/packages/core/dist/workflow/workflow-schema.js.map +1 -1
  97. package/packages/core/dist/workflow/workflow-schema.test.d.ts.map +1 -1
  98. package/packages/core/dist/workflow/workflow-schema.test.js +570 -1
  99. package/packages/core/dist/workflow/workflow-schema.test.js.map +1 -1
  100. package/packages/core/dist/workflow/workflow-team-templates.test.d.ts +17 -0
  101. package/packages/core/dist/workflow/workflow-team-templates.test.d.ts.map +1 -0
  102. package/packages/core/dist/workflow/workflow-team-templates.test.js +275 -0
  103. package/packages/core/dist/workflow/workflow-team-templates.test.js.map +1 -0
  104. package/pennyfarthing-dist/agents/dev.md +21 -12
  105. package/pennyfarthing-dist/agents/reviewer.md +23 -4
  106. package/pennyfarthing-dist/agents/sm-finish.md +19 -2
  107. package/pennyfarthing-dist/agents/sm-setup.md +7 -7
  108. package/pennyfarthing-dist/agents/sm.md +12 -12
  109. package/pennyfarthing-dist/agents/tea.md +2 -2
  110. package/pennyfarthing-dist/agents/testing-runner.md +1 -1
  111. package/pennyfarthing-dist/commands/pf-architect.md +1 -1
  112. package/pennyfarthing-dist/commands/pf-ba.md +1 -1
  113. package/pennyfarthing-dist/commands/pf-chore.md +2 -2
  114. package/pennyfarthing-dist/commands/pf-dev.md +1 -1
  115. package/pennyfarthing-dist/commands/pf-devops.md +1 -1
  116. package/pennyfarthing-dist/commands/pf-epic.md +6 -6
  117. package/pennyfarthing-dist/commands/pf-git.md +12 -10
  118. package/pennyfarthing-dist/commands/pf-health-check.md +1 -1
  119. package/pennyfarthing-dist/commands/pf-help.md +12 -12
  120. package/pennyfarthing-dist/commands/pf-orchestrator.md +1 -1
  121. package/pennyfarthing-dist/commands/pf-pm.md +1 -1
  122. package/pennyfarthing-dist/commands/pf-prime.md +8 -8
  123. package/pennyfarthing-dist/commands/pf-reviewer.md +1 -1
  124. package/pennyfarthing-dist/commands/pf-session.md +7 -7
  125. package/pennyfarthing-dist/commands/pf-sm.md +1 -1
  126. package/pennyfarthing-dist/commands/pf-sprint.md +7 -7
  127. package/pennyfarthing-dist/commands/pf-tea.md +1 -1
  128. package/pennyfarthing-dist/commands/pf-tech-writer.md +1 -1
  129. package/pennyfarthing-dist/commands/pf-theme.md +9 -9
  130. package/pennyfarthing-dist/commands/pf-ux-designer.md +1 -1
  131. package/pennyfarthing-dist/commands/pf-work.md +1 -1
  132. package/pennyfarthing-dist/gates/approval.md +63 -0
  133. package/pennyfarthing-dist/gates/confidence-sm.md +71 -0
  134. package/pennyfarthing-dist/gates/context-ok.md +56 -0
  135. package/pennyfarthing-dist/gates/evaluations/confidence-sm.md +54 -0
  136. package/pennyfarthing-dist/gates/quality-pass.md +67 -0
  137. package/pennyfarthing-dist/gates/tests-fail.md +84 -0
  138. package/pennyfarthing-dist/gates/tests-pass.md +79 -0
  139. package/pennyfarthing-dist/guides/agent-behavior.md +84 -29
  140. package/pennyfarthing-dist/guides/agent-coordination.md +10 -10
  141. package/pennyfarthing-dist/guides/agent-tag-taxonomy.md +6 -6
  142. package/pennyfarthing-dist/guides/agent-template-tactical.md +1 -1
  143. package/pennyfarthing-dist/guides/bell-mode.md +1 -1
  144. package/pennyfarthing-dist/guides/bikerack.md +10 -10
  145. package/pennyfarthing-dist/guides/brownfield-tools.md +24 -24
  146. package/pennyfarthing-dist/guides/command-tag-taxonomy.md +1 -1
  147. package/pennyfarthing-dist/guides/gate-schema.md +2 -2
  148. package/pennyfarthing-dist/guides/gates.md +3 -3
  149. package/pennyfarthing-dist/guides/handoff-cli.md +8 -8
  150. package/pennyfarthing-dist/guides/hooks.md +29 -29
  151. package/pennyfarthing-dist/guides/prime.md +2 -2
  152. package/pennyfarthing-dist/guides/reflector.md +1 -1
  153. package/pennyfarthing-dist/guides/skill-schema.md +6 -6
  154. package/pennyfarthing-dist/guides/tandem-protocol.md +3 -3
  155. package/pennyfarthing-dist/guides/workflow-schema.md +1 -1
  156. package/pennyfarthing-dist/guides/worktree-mode.md +3 -3
  157. package/pennyfarthing-dist/guides/xml-tags.md +8 -8
  158. package/pennyfarthing-dist/scripts/README.md +4 -4
  159. package/pennyfarthing-dist/scripts/core/agent-session.sh +2 -5
  160. package/pennyfarthing-dist/scripts/core/check-context.sh +3 -1
  161. package/pennyfarthing-dist/scripts/core/pf.sh +5 -0
  162. package/pennyfarthing-dist/scripts/core/phase-check-start.sh +4 -89
  163. package/pennyfarthing-dist/scripts/core/prime.sh +2 -25
  164. package/pennyfarthing-dist/scripts/git/README.md +14 -14
  165. package/pennyfarthing-dist/scripts/git/create-feature-branches.sh +2 -3
  166. package/pennyfarthing-dist/scripts/git/git-status-all.sh +2 -3
  167. package/pennyfarthing-dist/scripts/git/install-git-hooks.sh +2 -3
  168. package/pennyfarthing-dist/scripts/git/worktree-manager.sh +2 -4
  169. package/pennyfarthing-dist/scripts/hooks/README.md +6 -6
  170. package/pennyfarthing-dist/scripts/hooks/bell-mode-hook.sh +4 -183
  171. package/pennyfarthing-dist/scripts/hooks/context-circuit-breaker.sh +4 -95
  172. package/pennyfarthing-dist/scripts/hooks/context-warning.sh +4 -65
  173. package/pennyfarthing-dist/scripts/hooks/cyclist-pretooluse-hook.sh +3 -31
  174. package/pennyfarthing-dist/scripts/hooks/otel-auto-config.sh +5 -4
  175. package/pennyfarthing-dist/scripts/hooks/pre-commit.sh +29 -34
  176. package/pennyfarthing-dist/scripts/hooks/pre-edit-check.sh +4 -71
  177. package/pennyfarthing-dist/scripts/hooks/question-reflector-check.sh +3 -19
  178. package/pennyfarthing-dist/scripts/hooks/schema-validation.sh +4 -30
  179. package/pennyfarthing-dist/scripts/hooks/session-start.sh +3 -32
  180. package/pennyfarthing-dist/scripts/hooks/session-stop.sh +4 -65
  181. package/pennyfarthing-dist/scripts/hooks/sprint-yaml-validation.sh +4 -78
  182. package/pennyfarthing-dist/scripts/hooks/welcome-hook.sh +3 -93
  183. package/pennyfarthing-dist/scripts/lib/env.sh +34 -0
  184. package/pennyfarthing-dist/scripts/lib/run-pf.sh +39 -0
  185. package/pennyfarthing-dist/scripts/misc/README.md +1 -1
  186. package/pennyfarthing-dist/scripts/misc/statusline.sh +4 -301
  187. package/pennyfarthing-dist/scripts/sprint/README.md +21 -21
  188. package/pennyfarthing-dist/scripts/workflow/README.md +2 -2
  189. package/pennyfarthing-dist/scripts/workflow/finish-story.sh +2 -16
  190. package/pennyfarthing-dist/scripts/workflow/fix-session-phase.sh +3 -3
  191. package/pennyfarthing-dist/scripts/workflow/get-workflow-type.sh +3 -3
  192. package/pennyfarthing-dist/scripts/workflow/list-workflows.sh +3 -3
  193. package/pennyfarthing-dist/scripts/workflow/phase-owner.sh +3 -3
  194. package/pennyfarthing-dist/scripts/workflow/resume-workflow.sh +3 -3
  195. package/pennyfarthing-dist/scripts/workflow/show-workflow.sh +3 -3
  196. package/pennyfarthing-dist/scripts/workflow/start-workflow.sh +3 -3
  197. package/pennyfarthing-dist/scripts/workflow/workflow-status.sh +3 -3
  198. package/pennyfarthing-dist/skills/pf-bc/examples.md +23 -23
  199. package/pennyfarthing-dist/skills/pf-bc/skill.md +17 -17
  200. package/pennyfarthing-dist/skills/pf-bc/usage.md +8 -8
  201. package/pennyfarthing-dist/skills/pf-jira/SKILL.md +15 -15
  202. package/pennyfarthing-dist/skills/pf-jira/examples.md +48 -48
  203. package/pennyfarthing-dist/skills/pf-jira/usage.md +15 -15
  204. package/pennyfarthing-dist/skills/pf-sprint/examples.md +80 -80
  205. package/pennyfarthing-dist/skills/pf-sprint/skill.md +35 -35
  206. package/pennyfarthing-dist/skills/pf-sprint/usage.md +30 -30
  207. package/pennyfarthing-dist/skills/pf-theme/examples.md +15 -15
  208. package/pennyfarthing-dist/skills/pf-theme/skill.md +6 -6
  209. package/pennyfarthing-dist/skills/pf-theme/usage.md +5 -5
  210. package/pennyfarthing-dist/skills/pf-workflow/examples.md +27 -27
  211. package/pennyfarthing-dist/skills/pf-workflow/skill.md +11 -11
  212. package/pennyfarthing-dist/skills/pf-workflow/usage.md +11 -11
  213. package/pennyfarthing-dist/skills/skill-registry.yaml +19 -19
  214. package/pennyfarthing-dist/templates/settings.local.json.template +19 -10
  215. package/pennyfarthing-dist/workflows/bdd-team.yaml +89 -0
  216. package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-05-import-to-future.md +1 -1
  217. package/pennyfarthing-dist/workflows/git-cleanup/steps/step-01-analyze.md +1 -1
  218. package/pennyfarthing-dist/workflows/git-cleanup/steps/step-04-verify.md +1 -1
  219. package/pennyfarthing-dist/workflows/git-cleanup/steps/step-05-complete.md +1 -1
  220. package/pennyfarthing-dist/workflows/project-setup/steps/step-01-discover.md +47 -0
  221. package/pennyfarthing-dist/workflows/tdd-team.yaml +80 -0
  222. package/pennyfarthing-dist/workflows/tdd.yaml +11 -2
  223. package/pennyfarthing_scripts/CLAUDE.md +19 -10
  224. package/pennyfarthing_scripts/__init__.py +1 -1
  225. package/pennyfarthing_scripts/__pycache__/__init__.cpython-314.pyc +0 -0
  226. package/pennyfarthing_scripts/__pycache__/bellmode_hook.cpython-314.pyc +0 -0
  227. package/pennyfarthing_scripts/__pycache__/cli.cpython-314.pyc +0 -0
  228. package/pennyfarthing_scripts/__pycache__/context.cpython-314.pyc +0 -0
  229. package/pennyfarthing_scripts/__pycache__/hooks.cpython-314.pyc +0 -0
  230. package/pennyfarthing_scripts/__pycache__/pretooluse_hook.cpython-314.pyc +0 -0
  231. package/pennyfarthing_scripts/__pycache__/schema_validation_hook.cpython-314.pyc +0 -0
  232. package/pennyfarthing_scripts/__pycache__/session_start_hook.cpython-314.pyc +0 -0
  233. package/pennyfarthing_scripts/bc/__pycache__/cli.cpython-314.pyc +0 -0
  234. package/pennyfarthing_scripts/bc/__pycache__/focus.cpython-314.pyc +0 -0
  235. package/pennyfarthing_scripts/bc/__pycache__/split.cpython-314.pyc +0 -0
  236. package/pennyfarthing_scripts/bc/cli.py +2 -2
  237. package/pennyfarthing_scripts/bellmode_hook.py +9 -296
  238. package/pennyfarthing_scripts/bikerack/__pycache__/audit_log_panel.cpython-314.pyc +0 -0
  239. package/pennyfarthing_scripts/bikerack/__pycache__/background_panel.cpython-314.pyc +0 -0
  240. package/pennyfarthing_scripts/bikerack/__pycache__/base_panel.cpython-314.pyc +0 -0
  241. package/pennyfarthing_scripts/bikerack/__pycache__/changed_panel.cpython-314.pyc +0 -0
  242. package/pennyfarthing_scripts/bikerack/__pycache__/context_meter_footer.cpython-314.pyc +0 -0
  243. package/pennyfarthing_scripts/bikerack/__pycache__/debug_panel.cpython-314.pyc +0 -0
  244. package/pennyfarthing_scripts/bikerack/__pycache__/diffs_panel.cpython-314.pyc +0 -0
  245. package/pennyfarthing_scripts/bikerack/__pycache__/events.cpython-314.pyc +0 -0
  246. package/pennyfarthing_scripts/bikerack/__pycache__/git_panel.cpython-314.pyc +0 -0
  247. package/pennyfarthing_scripts/bikerack/__pycache__/launcher.cpython-314.pyc +0 -0
  248. package/pennyfarthing_scripts/bikerack/__pycache__/portrait_resolver.cpython-314.pyc +0 -0
  249. package/pennyfarthing_scripts/bikerack/__pycache__/progress_panel.cpython-314.pyc +0 -0
  250. package/pennyfarthing_scripts/bikerack/__pycache__/sprint_panel.cpython-314.pyc +0 -0
  251. package/pennyfarthing_scripts/bikerack/__pycache__/story_detail_data.cpython-314.pyc +0 -0
  252. package/pennyfarthing_scripts/bikerack/__pycache__/story_detail_screen.cpython-314.pyc +0 -0
  253. package/pennyfarthing_scripts/bikerack/__pycache__/tui.cpython-314.pyc +0 -0
  254. package/pennyfarthing_scripts/bikerack/__pycache__/ws_client.cpython-314.pyc +0 -0
  255. package/pennyfarthing_scripts/bikerack/audit_log_panel.py +161 -0
  256. package/pennyfarthing_scripts/bikerack/base_panel.py +27 -4
  257. package/pennyfarthing_scripts/bikerack/changed_panel.py +96 -4
  258. package/pennyfarthing_scripts/bikerack/context_meter_footer.py +88 -0
  259. package/pennyfarthing_scripts/bikerack/debug_panel.py +1 -1
  260. package/pennyfarthing_scripts/bikerack/diffs_panel.py +30 -0
  261. package/pennyfarthing_scripts/bikerack/events.py +28 -0
  262. package/pennyfarthing_scripts/bikerack/launcher.py +6 -6
  263. package/pennyfarthing_scripts/bikerack/portrait_resolver.py +139 -0
  264. package/pennyfarthing_scripts/bikerack/progress_panel.py +0 -1
  265. package/pennyfarthing_scripts/bikerack/sprint_panel.py +373 -142
  266. package/pennyfarthing_scripts/bikerack/story_detail_data.py +247 -0
  267. package/pennyfarthing_scripts/bikerack/story_detail_screen.py +177 -0
  268. package/pennyfarthing_scripts/bikerack/tui.py +304 -62
  269. package/pennyfarthing_scripts/bikerack/ws_client.py +2 -2
  270. package/pennyfarthing_scripts/cli.py +5 -0
  271. package/pennyfarthing_scripts/common/__pycache__/config.cpython-314.pyc +0 -0
  272. package/pennyfarthing_scripts/common/config.py +29 -2
  273. package/pennyfarthing_scripts/common/pr_config.py +38 -0
  274. package/pennyfarthing_scripts/consultation/__pycache__/__init__.cpython-314.pyc +0 -0
  275. package/pennyfarthing_scripts/consultation/__pycache__/cli.cpython-314.pyc +0 -0
  276. package/pennyfarthing_scripts/consultation/cli.py +3 -3
  277. package/pennyfarthing_scripts/context.py +3 -3
  278. package/pennyfarthing_scripts/git/__pycache__/__init__.cpython-314.pyc +0 -0
  279. package/pennyfarthing_scripts/git/__pycache__/create_branches.cpython-314.pyc +0 -0
  280. package/pennyfarthing_scripts/git/__pycache__/repos.cpython-314.pyc +0 -0
  281. package/pennyfarthing_scripts/git/__pycache__/status_all.cpython-314.pyc +0 -0
  282. package/pennyfarthing_scripts/git/hooks_installer.py +2 -3
  283. package/pennyfarthing_scripts/git/status_all.py +1 -1
  284. package/pennyfarthing_scripts/git/worktree.py +2 -2
  285. package/pennyfarthing_scripts/git_group/__pycache__/cli.cpython-314.pyc +0 -0
  286. package/pennyfarthing_scripts/handoff/__pycache__/cli.cpython-314.pyc +0 -0
  287. package/pennyfarthing_scripts/handoff/__pycache__/complete_phase.cpython-314.pyc +0 -0
  288. package/pennyfarthing_scripts/handoff/__pycache__/marker.cpython-314.pyc +0 -0
  289. package/pennyfarthing_scripts/handoff/__pycache__/phase_check.cpython-314.pyc +0 -0
  290. package/pennyfarthing_scripts/handoff/__pycache__/resolve_gate.cpython-314.pyc +0 -0
  291. package/pennyfarthing_scripts/handoff/cli.py +33 -1
  292. package/pennyfarthing_scripts/handoff/complete_phase.py +28 -0
  293. package/pennyfarthing_scripts/handoff/marker.py +15 -15
  294. package/pennyfarthing_scripts/handoff/phase_check.py +96 -0
  295. package/pennyfarthing_scripts/handoff/resolve_gate.py +13 -1
  296. package/pennyfarthing_scripts/hooks/__init__.py +442 -0
  297. package/pennyfarthing_scripts/hooks/__pycache__/__init__.cpython-314.pyc +0 -0
  298. package/pennyfarthing_scripts/hooks/__pycache__/bell_mode.cpython-314.pyc +0 -0
  299. package/pennyfarthing_scripts/hooks/__pycache__/cli.cpython-314.pyc +0 -0
  300. package/pennyfarthing_scripts/hooks/__pycache__/context_breaker.cpython-314.pyc +0 -0
  301. package/pennyfarthing_scripts/hooks/__pycache__/context_warning.cpython-314.pyc +0 -0
  302. package/pennyfarthing_scripts/hooks/__pycache__/cyclist_pretooluse.cpython-314.pyc +0 -0
  303. package/pennyfarthing_scripts/hooks/__pycache__/pre_edit_check.cpython-314.pyc +0 -0
  304. package/pennyfarthing_scripts/hooks/__pycache__/reflector_check.cpython-314.pyc +0 -0
  305. package/pennyfarthing_scripts/hooks/__pycache__/schema_validation.cpython-314.pyc +0 -0
  306. package/pennyfarthing_scripts/hooks/__pycache__/session_start.cpython-314.pyc +0 -0
  307. package/pennyfarthing_scripts/hooks/__pycache__/session_stop.cpython-314.pyc +0 -0
  308. package/pennyfarthing_scripts/hooks/__pycache__/sprint_yaml_validation.cpython-314.pyc +0 -0
  309. package/pennyfarthing_scripts/hooks/__pycache__/statusline.cpython-314.pyc +0 -0
  310. package/pennyfarthing_scripts/hooks/bell_mode.py +214 -0
  311. package/pennyfarthing_scripts/hooks/cli.py +96 -0
  312. package/pennyfarthing_scripts/hooks/context_breaker.py +104 -0
  313. package/pennyfarthing_scripts/hooks/context_warning.py +66 -0
  314. package/pennyfarthing_scripts/hooks/cyclist_pretooluse.py +129 -0
  315. package/pennyfarthing_scripts/hooks/pre_edit_check.py +77 -0
  316. package/pennyfarthing_scripts/hooks/reflector_check.py +270 -0
  317. package/pennyfarthing_scripts/hooks/schema_validation.py +202 -0
  318. package/pennyfarthing_scripts/hooks/session_start.py +294 -0
  319. package/pennyfarthing_scripts/hooks/session_stop.py +111 -0
  320. package/pennyfarthing_scripts/hooks/sprint_yaml_validation.py +97 -0
  321. package/pennyfarthing_scripts/hooks/statusline.py +429 -0
  322. package/pennyfarthing_scripts/hooks.py +27 -432
  323. package/pennyfarthing_scripts/pretooluse_hook.py +3 -185
  324. package/pennyfarthing_scripts/prime/__pycache__/workflow.cpython-314.pyc +0 -0
  325. package/pennyfarthing_scripts/prime/heatmap.py +3 -15
  326. package/pennyfarthing_scripts/prime/workflow.py +2 -1
  327. package/pennyfarthing_scripts/schema_validation_hook.py +3 -298
  328. package/pennyfarthing_scripts/session_start_hook.py +4 -186
  329. package/pennyfarthing_scripts/sprint/__pycache__/cli.cpython-314.pyc +0 -0
  330. package/pennyfarthing_scripts/sprint/__pycache__/loader.cpython-314.pyc +0 -0
  331. package/pennyfarthing_scripts/sprint/__pycache__/story_finish.cpython-314.pyc +0 -0
  332. package/pennyfarthing_scripts/sprint/__pycache__/story_update.cpython-314.pyc +0 -0
  333. package/pennyfarthing_scripts/sprint/cli.py +121 -0
  334. package/pennyfarthing_scripts/sprint/loader.py +154 -3
  335. package/pennyfarthing_scripts/sprint/story_update.py +26 -0
  336. package/pennyfarthing_scripts/tests/__pycache__/test_bikerack.cpython-314-pytest-9.0.2.pyc +0 -0
  337. package/pennyfarthing_scripts/tests/__pycache__/test_handoff_cli.cpython-314-pytest-9.0.2.pyc +0 -0
  338. package/pennyfarthing_scripts/tests/__pycache__/test_workflow_list_team.cpython-314-pytest-9.0.2.pyc +0 -0
  339. package/pennyfarthing_scripts/tests/test_bikerack.py +26 -26
  340. package/pennyfarthing_scripts/tests/test_dialogue_manager.py +0 -1
  341. package/pennyfarthing_scripts/tests/test_sprint_panel.py +344 -265
  342. package/pennyfarthing_scripts/tests/test_workflow_list_team.py +147 -0
  343. package/pennyfarthing_scripts/validate/__pycache__/cli.cpython-314.pyc +0 -0
  344. package/pennyfarthing_scripts/validate/adapters/__pycache__/skill_command.cpython-314.pyc +0 -0
  345. package/pennyfarthing_scripts/validate/adapters/__pycache__/tandem_awareness.cpython-314.pyc +0 -0
  346. package/pennyfarthing_scripts/validate/adapters/__pycache__/team_mode.cpython-314.pyc +0 -0
  347. package/pennyfarthing_scripts/validate/adapters/__pycache__/workflow.cpython-314.pyc +0 -0
  348. package/pennyfarthing_scripts/validate/adapters/team_mode.py +323 -0
  349. package/pennyfarthing_scripts/validate/adapters/workflow.py +19 -0
  350. package/pennyfarthing_scripts/welcome_hook.py +3 -149
  351. package/pennyfarthing_scripts/workflow/__pycache__/__init__.cpython-314.pyc +0 -0
  352. package/pennyfarthing_scripts/workflow/__pycache__/cli.cpython-314.pyc +0 -0
  353. package/pennyfarthing_scripts/workflow/__pycache__/helpers.cpython-314.pyc +0 -0
  354. package/pennyfarthing_scripts/workflow/__pycache__/scale.cpython-314.pyc +0 -0
  355. package/pennyfarthing_scripts/workflow/__pycache__/state.cpython-314.pyc +0 -0
  356. package/pennyfarthing_scripts/workflow/__pycache__/team_lifecycle.cpython-314.pyc +0 -0
  357. package/pennyfarthing_scripts/workflow/cli.py +22 -20
  358. package/pennyfarthing_scripts/workflow/state.py +0 -1
  359. package/pennyfarthing_scripts/workflow/team_lifecycle.py +256 -0
  360. package/packages/core/dist/cli/cyclist-migration.test.d.ts +0 -16
  361. package/packages/core/dist/cli/cyclist-migration.test.d.ts.map +0 -1
  362. package/packages/core/dist/cli/cyclist-migration.test.js +0 -229
  363. package/packages/core/dist/cli/cyclist-migration.test.js.map +0 -1
  364. package/packages/core/dist/scripts/theme-detail.test.d.ts +0 -10
  365. package/packages/core/dist/scripts/theme-detail.test.d.ts.map +0 -1
  366. package/packages/core/dist/scripts/theme-detail.test.js +0 -199
  367. package/packages/core/dist/scripts/theme-detail.test.js.map +0 -1
@@ -5,7 +5,7 @@
5
5
  ### Set Focus
6
6
 
7
7
  ```bash
8
- pf bc <panel> [--dry-run]
8
+ pf.sh bc <panel> [--dry-run]
9
9
  ```
10
10
 
11
11
  | Arg/Option | Required | Description |
@@ -37,7 +37,7 @@ Output on error: `{"success": false, "error": "Invalid panel..."}`
37
37
  ### Clear Focus
38
38
 
39
39
  ```bash
40
- pf bc reset [--dry-run]
40
+ pf.sh bc reset [--dry-run]
41
41
  ```
42
42
 
43
43
  Removes the `focus` key from `.pennyfarthing/config.local.yaml`.
@@ -49,7 +49,7 @@ Removes the `focus` key from `.pennyfarthing/config.local.yaml`.
49
49
  ### Save Layout
50
50
 
51
51
  ```bash
52
- pf bc save <NAME> [--dry-run]
52
+ pf.sh bc save <NAME> [--dry-run]
53
53
  ```
54
54
 
55
55
  | Arg/Option | Required | Description |
@@ -57,14 +57,14 @@ pf bc save <NAME> [--dry-run]
57
57
  | `NAME` | Yes | Layout name to save as |
58
58
  | `--dry-run` | No | Preview without making changes |
59
59
 
60
- Fetches the active layout from the running Cyclist/BikeRack server (reads `.wheelhub-port`). Fails if no server is running.
60
+ Fetches the active layout from the running Cyclist/BikeRack server (reads `.bikerack-port`). Fails if no server is running.
61
61
 
62
62
  Output: `{"success": true, "name": "<name>", "panels": <count>}`
63
63
 
64
64
  ### Load Layout
65
65
 
66
66
  ```bash
67
- pf bc load <NAME> [--dry-run]
67
+ pf.sh bc load <NAME> [--dry-run]
68
68
  ```
69
69
 
70
70
  | Arg/Option | Required | Description |
@@ -77,7 +77,7 @@ Output: `{"success": true, "name": "<name>", "layout": {...}}`
77
77
  ### List Layouts
78
78
 
79
79
  ```bash
80
- pf bc list
80
+ pf.sh bc list
81
81
  ```
82
82
 
83
83
  No arguments. Output: `{"success": true, "layouts": ["normal", "review", ...]}`
@@ -85,7 +85,7 @@ No arguments. Output: `{"success": true, "layouts": ["normal", "review", ...]}`
85
85
  ### Delete Layout
86
86
 
87
87
  ```bash
88
- pf bc clear <NAME> [--dry-run]
88
+ pf.sh bc clear <NAME> [--dry-run]
89
89
  ```
90
90
 
91
91
  | Arg/Option | Required | Description |
@@ -96,7 +96,7 @@ pf bc clear <NAME> [--dry-run]
96
96
  ### Delete All Layouts
97
97
 
98
98
  ```bash
99
- pf bc clear-all [--dry-run]
99
+ pf.sh bc clear-all [--dry-run]
100
100
  ```
101
101
 
102
102
  | Option | Description |
@@ -11,7 +11,7 @@ Never fabricate or guess Jira IDs. Valid keys follow `MSSCI-XXXXX`. Old-style ID
11
11
  </critical>
12
12
 
13
13
  <run>
14
- pf jira <command> [args]
14
+ pf.sh jira <command> [args]
15
15
  </run>
16
16
 
17
17
  <output>
@@ -22,20 +22,20 @@ Command-specific output. Most commands print status messages. Use `--dry-run` on
22
22
 
23
23
  | Command | CLI | Purpose |
24
24
  |---------|-----|---------|
25
- | `/pf-jira view <key>` | `pf jira view <key>` | View issue details |
26
- | `/pf-jira check <key>` | `pf jira check <key>` | Check availability |
27
- | `/pf-jira claim <key>` | `pf jira claim <key> [--dry-run]` | Assign to self + In Progress |
28
- | `/pf-jira move <key> <status>` | `pf jira move <key> "<status>" [--dry-run]` | Transition status |
29
- | `/pf-jira assign <key> <user>` | `pf jira assign <key> <user> [--dry-run]` | Assign to user |
30
- | `/pf-jira link <p> <c> [type]` | `pf jira link <parent> <child> [type] [--dry-run]` | Link two issues |
31
- | `/pf-jira search "<jql>"` | `pf jira search "<jql>"` | Search by JQL |
32
- | `/pf-jira create epic <id>` | `pf jira create epic <id> [--dry-run]` | Create epic + stories |
33
- | `/pf-jira create story <ek> <sid>` | `pf jira create story <epic-key> <story-id> [--dry-run]` | Create single story |
34
- | `/pf-jira create standalone` | `pf jira create standalone "<title>" [opts]` | Create standalone story |
35
- | `/pf-jira sync <epic>` | `pf jira sync <epic> [--transition] [--points] [--all] [--dry-run]` | Sync epic to Jira |
36
- | `/pf-jira bidirectional` | `pf jira bidirectional [opts]` | Bidirectional sync |
37
- | `/pf-jira reconcile` | `pf jira reconcile [--fix]` | Reconciliation report |
38
- | `/pf-jira sprint add <sid> <key>` | `pf jira sprint add <sprint-id> <issue-key> [--dry-run]` | Add issue to sprint |
25
+ | `/pf-jira view <key>` | `pf.sh jira view <key>` | View issue details |
26
+ | `/pf-jira check <key>` | `pf.sh jira check <key>` | Check availability |
27
+ | `/pf-jira claim <key>` | `pf.sh jira claim <key> [--dry-run]` | Assign to self + In Progress |
28
+ | `/pf-jira move <key> <status>` | `pf.sh jira move <key> "<status>" [--dry-run]` | Transition status |
29
+ | `/pf-jira assign <key> <user>` | `pf.sh jira assign <key> <user> [--dry-run]` | Assign to user |
30
+ | `/pf-jira link <p> <c> [type]` | `pf.sh jira link <parent> <child> [type] [--dry-run]` | Link two issues |
31
+ | `/pf-jira search "<jql>"` | `pf.sh jira search "<jql>"` | Search by JQL |
32
+ | `/pf-jira create epic <id>` | `pf.sh jira create epic <id> [--dry-run]` | Create epic + stories |
33
+ | `/pf-jira create story <ek> <sid>` | `pf.sh jira create story <epic-key> <story-id> [--dry-run]` | Create single story |
34
+ | `/pf-jira create standalone` | `pf.sh jira create standalone "<title>" [opts]` | Create standalone story |
35
+ | `/pf-jira sync <epic>` | `pf.sh jira sync <epic> [--transition] [--points] [--all] [--dry-run]` | Sync epic to Jira |
36
+ | `/pf-jira bidirectional` | `pf.sh jira bidirectional [opts]` | Bidirectional sync |
37
+ | `/pf-jira reconcile` | `pf.sh jira reconcile [--fix]` | Reconciliation report |
38
+ | `/pf-jira sprint add <sid> <key>` | `pf.sh jira sprint add <sprint-id> <issue-key> [--dry-run]` | Add issue to sprint |
39
39
 
40
40
  ### GitHub to Jira User Mapping
41
41
 
@@ -4,126 +4,126 @@
4
4
 
5
5
  ```bash
6
6
  # View issue details
7
- pf jira view MSSCI-12345
7
+ pf.sh jira view MSSCI-12345
8
8
 
9
9
  # Check if story is available to claim
10
- pf jira check MSSCI-12345
10
+ pf.sh jira check MSSCI-12345
11
11
 
12
12
  # Search by JQL
13
- pf jira search "project=MSSCI AND type=Epic"
14
- pf jira search "project=MSSCI AND parent=MSSCI-10980"
15
- pf jira search "project=MSSCI AND summary~'feedback rules'"
13
+ pf.sh jira search "project=MSSCI AND type=Epic"
14
+ pf.sh jira search "project=MSSCI AND parent=MSSCI-10980"
15
+ pf.sh jira search "project=MSSCI AND summary~'feedback rules'"
16
16
  ```
17
17
 
18
18
  ## Claiming & Assigning
19
19
 
20
20
  ```bash
21
21
  # Claim story (assign to self + In Progress)
22
- pf jira claim MSSCI-12345
22
+ pf.sh jira claim MSSCI-12345
23
23
 
24
24
  # Assign to user by email
25
- pf jira assign MSSCI-12345 keith.avery@1898andco.io
25
+ pf.sh jira assign MSSCI-12345 keith.avery@1898andco.io
26
26
 
27
27
  # Assign by GitHub username (auto-mapped)
28
- pf jira assign MSSCI-12345 slabgorb
28
+ pf.sh jira assign MSSCI-12345 slabgorb
29
29
 
30
30
  # Preview
31
- pf jira claim MSSCI-12345 --dry-run
32
- pf jira assign MSSCI-12345 slabgorb --dry-run
31
+ pf.sh jira claim MSSCI-12345 --dry-run
32
+ pf.sh jira assign MSSCI-12345 slabgorb --dry-run
33
33
  ```
34
34
 
35
35
  ## Transitions
36
36
 
37
37
  ```bash
38
38
  # Move to In Progress
39
- pf jira move MSSCI-12345 "In Progress"
39
+ pf.sh jira move MSSCI-12345 "In Progress"
40
40
 
41
41
  # Move to Done
42
- pf jira move MSSCI-12345 "Done"
42
+ pf.sh jira move MSSCI-12345 "Done"
43
43
 
44
44
  # Move to In Review
45
- pf jira move MSSCI-12345 "In Review"
45
+ pf.sh jira move MSSCI-12345 "In Review"
46
46
 
47
47
  # Move back to To Do
48
- pf jira move MSSCI-12345 "To Do"
48
+ pf.sh jira move MSSCI-12345 "To Do"
49
49
 
50
50
  # Preview
51
- pf jira move MSSCI-12345 "Done" --dry-run
51
+ pf.sh jira move MSSCI-12345 "Done" --dry-run
52
52
  ```
53
53
 
54
54
  ## Creating Issues
55
55
 
56
56
  ```bash
57
57
  # Create epic + all child stories from sprint YAML
58
- pf jira create epic epic-63
59
- pf jira create epic 63
60
- pf jira create epic 63 --dry-run
58
+ pf.sh jira create epic epic-63
59
+ pf.sh jira create epic 63
60
+ pf.sh jira create epic 63 --dry-run
61
61
 
62
62
  # Create single story under an epic
63
- pf jira create story MSSCI-12077 63-7
64
- pf jira create story MSSCI-12077 63-7 --dry-run
63
+ pf.sh jira create story MSSCI-12077 63-7
64
+ pf.sh jira create story MSSCI-12077 63-7 --dry-run
65
65
 
66
66
  # Create standalone story (create + sprint + Done)
67
- pf jira create standalone "Fix sprint script shard support"
68
- pf jira create standalone "Fix sprint script shard support" --points 3
69
- pf jira create standalone "Add drift detection" -d "Detects YAML drift"
70
- pf jira create standalone "Quick fix" --dry-run
67
+ pf.sh jira create standalone "Fix sprint script shard support"
68
+ pf.sh jira create standalone "Fix sprint script shard support" --points 3
69
+ pf.sh jira create standalone "Add drift detection" -d "Detects YAML drift"
70
+ pf.sh jira create standalone "Quick fix" --dry-run
71
71
  ```
72
72
 
73
73
  ## Linking Issues
74
74
 
75
75
  ```bash
76
76
  # Block relationship
77
- pf jira link MSSCI-12345 MSSCI-12346 "Blocks"
77
+ pf.sh jira link MSSCI-12345 MSSCI-12346 "Blocks"
78
78
 
79
79
  # Parent-child
80
- pf jira link MSSCI-12345 MSSCI-12346 "Parent-Child"
80
+ pf.sh jira link MSSCI-12345 MSSCI-12346 "Parent-Child"
81
81
 
82
82
  # Related (default)
83
- pf jira link MSSCI-12345 MSSCI-12346
84
- pf jira link MSSCI-12345 MSSCI-12346 "Relates"
83
+ pf.sh jira link MSSCI-12345 MSSCI-12346
84
+ pf.sh jira link MSSCI-12345 MSSCI-12346 "Relates"
85
85
 
86
86
  # Duplicate
87
- pf jira link MSSCI-12345 MSSCI-12346 "Duplicate"
87
+ pf.sh jira link MSSCI-12345 MSSCI-12346 "Duplicate"
88
88
  ```
89
89
 
90
90
  ## Syncing
91
91
 
92
92
  ```bash
93
93
  # Sync epic to Jira (all fields)
94
- pf jira sync MSSCI-11952 --all
94
+ pf.sh jira sync MSSCI-11952 --all
95
95
 
96
96
  # Sync only status transitions
97
- pf jira sync 63 --transition
97
+ pf.sh jira sync 63 --transition
98
98
 
99
99
  # Sync only story points
100
- pf jira sync 63 --points
100
+ pf.sh jira sync 63 --points
101
101
 
102
102
  # Preview
103
- pf jira sync 63 --all --dry-run
103
+ pf.sh jira sync 63 --all --dry-run
104
104
 
105
105
  # Bidirectional sync (Jira wins by default)
106
- pf jira bidirectional --all
107
- pf jira bidirectional --all --dry-run
106
+ pf.sh jira bidirectional --all
107
+ pf.sh jira bidirectional --all --dry-run
108
108
 
109
109
  # YAML wins on conflicts
110
- pf jira bidirectional --status --yaml-wins
110
+ pf.sh jira bidirectional --status --yaml-wins
111
111
 
112
112
  # Sync specific fields
113
- pf jira bidirectional --status --points --assignee
113
+ pf.sh jira bidirectional --status --points --assignee
114
114
 
115
115
  # Target specific sprint
116
- pf jira bidirectional --all --sprint 276
116
+ pf.sh jira bidirectional --all --sprint 276
117
117
  ```
118
118
 
119
119
  ## Reconciliation
120
120
 
121
121
  ```bash
122
122
  # Report mismatches
123
- pf jira reconcile
123
+ pf.sh jira reconcile
124
124
 
125
125
  # Auto-fix (add missing stories to sprint)
126
- pf jira reconcile --fix
126
+ pf.sh jira reconcile --fix
127
127
  ```
128
128
 
129
129
  ## Sprint Management
@@ -133,10 +133,10 @@ pf jira reconcile --fix
133
133
  SPRINT_ID=$(grep 'jira_sprint_id:' sprint/current-sprint.yaml | awk '{print $2}')
134
134
 
135
135
  # Add issue to sprint
136
- pf jira sprint add "$SPRINT_ID" MSSCI-11999
136
+ pf.sh jira sprint add "$SPRINT_ID" MSSCI-11999
137
137
 
138
138
  # Preview
139
- pf jira sprint add "$SPRINT_ID" MSSCI-11999 --dry-run
139
+ pf.sh jira sprint add "$SPRINT_ID" MSSCI-11999 --dry-run
140
140
  ```
141
141
 
142
142
  ## Common Workflows
@@ -144,23 +144,23 @@ pf jira sprint add "$SPRINT_ID" MSSCI-11999 --dry-run
144
144
  ### New story from sprint YAML to Jira
145
145
  ```bash
146
146
  # 1. Add story to sprint YAML
147
- pf sprint story add 91 "New feature" 3
147
+ pf.sh sprint story add 91 "New feature" 3
148
148
 
149
149
  # 2. Create in Jira under existing epic
150
- pf jira create story MSSCI-14298 91-5
150
+ pf.sh jira create story MSSCI-14298 91-5
151
151
 
152
152
  # 3. Claim it
153
- pf jira claim MSSCI-15050
153
+ pf.sh jira claim MSSCI-15050
154
154
  ```
155
155
 
156
156
  ### End-of-sprint reconciliation
157
157
  ```bash
158
158
  # 1. Check for mismatches
159
- pf jira reconcile
159
+ pf.sh jira reconcile
160
160
 
161
161
  # 2. Sync all completed stories
162
- pf jira bidirectional --all
162
+ pf.sh jira bidirectional --all
163
163
 
164
164
  # 3. Fix any remaining issues
165
- pf jira reconcile --fix
165
+ pf.sh jira reconcile --fix
166
166
  ```
@@ -1,13 +1,13 @@
1
1
  # Jira CLI — Detailed Usage
2
2
 
3
- All commands use `pf jira <command>` as the entry point. REST API is used where possible — no interactive prompt issues.
3
+ All commands use `pf.sh jira <command>` as the entry point. REST API is used where possible — no interactive prompt issues.
4
4
 
5
5
  ## Commands
6
6
 
7
7
  ### View Issue
8
8
 
9
9
  ```bash
10
- pf jira view <KEY>
10
+ pf.sh jira view <KEY>
11
11
  ```
12
12
 
13
13
  | Arg | Required | Description |
@@ -19,7 +19,7 @@ Delegates to `jira issue view`. Shows summary, status, assignee, description, li
19
19
  ### Check Availability
20
20
 
21
21
  ```bash
22
- pf jira check <KEY>
22
+ pf.sh jira check <KEY>
23
23
  ```
24
24
 
25
25
  | Arg | Required | Description |
@@ -31,7 +31,7 @@ Exit codes: `0` = available, `1` = assigned, `2` = not found, `3` = error.
31
31
  ### Claim Story
32
32
 
33
33
  ```bash
34
- pf jira claim <KEY> [--dry-run]
34
+ pf.sh jira claim <KEY> [--dry-run]
35
35
  ```
36
36
 
37
37
  | Arg/Option | Required | Description |
@@ -44,7 +44,7 @@ Assigns to self and moves to In Progress.
44
44
  ### Move Issue
45
45
 
46
46
  ```bash
47
- pf jira move <KEY> "<STATUS>" [--dry-run]
47
+ pf.sh jira move <KEY> "<STATUS>" [--dry-run]
48
48
  ```
49
49
 
50
50
  | Arg/Option | Required | Description |
@@ -58,7 +58,7 @@ Checks current status first — skips if already there.
58
58
  ### Assign Issue
59
59
 
60
60
  ```bash
61
- pf jira assign <KEY> <USER> [--dry-run]
61
+ pf.sh jira assign <KEY> <USER> [--dry-run]
62
62
  ```
63
63
 
64
64
  | Arg/Option | Required | Description |
@@ -72,7 +72,7 @@ Checks current assignee — skips if already assigned.
72
72
  ### Link Issues
73
73
 
74
74
  ```bash
75
- pf jira link <PARENT_KEY> <CHILD_KEY> [LINK_TYPE] [--dry-run]
75
+ pf.sh jira link <PARENT_KEY> <CHILD_KEY> [LINK_TYPE] [--dry-run]
76
76
  ```
77
77
 
78
78
  | Arg/Option | Required | Description |
@@ -85,7 +85,7 @@ pf jira link <PARENT_KEY> <CHILD_KEY> [LINK_TYPE] [--dry-run]
85
85
  ### Search Issues
86
86
 
87
87
  ```bash
88
- pf jira search "<JQL>"
88
+ pf.sh jira search "<JQL>"
89
89
  ```
90
90
 
91
91
  | Arg | Required | Description |
@@ -97,7 +97,7 @@ Delegates to `jira issue list --jql`.
97
97
  ### Create Epic
98
98
 
99
99
  ```bash
100
- pf jira create epic <EPIC_ID> [--dry-run]
100
+ pf.sh jira create epic <EPIC_ID> [--dry-run]
101
101
  ```
102
102
 
103
103
  | Arg/Option | Required | Description |
@@ -110,7 +110,7 @@ Creates Jira epic and all child stories without existing Jira keys. Updates spri
110
110
  ### Create Story
111
111
 
112
112
  ```bash
113
- pf jira create story <EPIC_JIRA_KEY> <STORY_ID> [--dry-run]
113
+ pf.sh jira create story <EPIC_JIRA_KEY> <STORY_ID> [--dry-run]
114
114
  ```
115
115
 
116
116
  | Arg/Option | Required | Description |
@@ -124,7 +124,7 @@ Sets priority, points, sprint membership. Updates YAML.
124
124
  ### Create Standalone
125
125
 
126
126
  ```bash
127
- pf jira create standalone "<TITLE>" [--points N] [-d DESC] [--dry-run]
127
+ pf.sh jira create standalone "<TITLE>" [--points N] [-d DESC] [--dry-run]
128
128
  ```
129
129
 
130
130
  | Arg/Option | Required | Description |
@@ -139,7 +139,7 @@ Creates story, adds to current sprint, transitions to Done. All via REST API.
139
139
  ### Sync Epic
140
140
 
141
141
  ```bash
142
- pf jira sync <EPIC> [--transition] [--points] [--all] [--dry-run]
142
+ pf.sh jira sync <EPIC> [--transition] [--points] [--all] [--dry-run]
143
143
  ```
144
144
 
145
145
  | Arg/Option | Required | Description |
@@ -153,7 +153,7 @@ pf jira sync <EPIC> [--transition] [--points] [--all] [--dry-run]
153
153
  ### Bidirectional Sync
154
154
 
155
155
  ```bash
156
- pf jira bidirectional [options]
156
+ pf.sh jira bidirectional [options]
157
157
  ```
158
158
 
159
159
  | Option | Description |
@@ -169,7 +169,7 @@ pf jira bidirectional [options]
169
169
  ### Reconcile
170
170
 
171
171
  ```bash
172
- pf jira reconcile [--fix]
172
+ pf.sh jira reconcile [--fix]
173
173
  ```
174
174
 
175
175
  | Option | Description |
@@ -181,7 +181,7 @@ Reports: status mismatches, missing Jira keys, orphans, sprint membership gaps.
181
181
  ### Sprint Add
182
182
 
183
183
  ```bash
184
- pf jira sprint add <SPRINT_ID> <ISSUE_KEY> [--dry-run]
184
+ pf.sh jira sprint add <SPRINT_ID> <ISSUE_KEY> [--dry-run]
185
185
  ```
186
186
 
187
187
  | Arg/Option | Required | Description |