@pi-unipi/unipi 3.0.0-alpha.2 → 3.0.0-alpha.21

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 (359) hide show
  1. package/CHANGELOG.md +292 -0
  2. package/README.md +8 -11
  3. package/docs/prefix-cache-architecture.md +14 -0
  4. package/package.json +22 -24
  5. package/packages/ask-user/README.md +55 -107
  6. package/packages/ask-user/ask-ui.ts +306 -732
  7. package/packages/ask-user/clipboard.ts +50 -0
  8. package/packages/ask-user/config.ts +74 -78
  9. package/packages/ask-user/package.json +2 -2
  10. package/packages/ask-user/questions.ts +151 -0
  11. package/packages/ask-user/skills/ask-user/SKILL.md +59 -133
  12. package/packages/ask-user/tools.ts +198 -432
  13. package/packages/autocomplete/package.json +1 -1
  14. package/packages/autocomplete/src/constants.ts +38 -43
  15. package/packages/autocomplete/src/sorting.ts +8 -0
  16. package/packages/background-tasks/package.json +2 -2
  17. package/packages/background-tasks/src/config.ts +0 -73
  18. package/packages/background-tasks/src/index.ts +20 -16
  19. package/packages/background-tasks/src/registry.ts +1 -171
  20. package/packages/background-tasks/src/types.ts +0 -32
  21. package/packages/btw/README.md +13 -56
  22. package/packages/btw/extensions/btw.ts +403 -1796
  23. package/packages/btw/package.json +5 -2
  24. package/packages/btw/skills/btw/SKILL.md +7 -143
  25. package/packages/compactor/README.md +56 -287
  26. package/packages/compactor/package.json +5 -9
  27. package/packages/compactor/skills/compactor/SKILL.md +13 -20
  28. package/packages/compactor/src/card.ts +90 -0
  29. package/packages/compactor/src/commands/index.ts +73 -130
  30. package/packages/compactor/src/compaction/compact-args.ts +5 -3
  31. package/packages/compactor/src/compaction/filter-noise.ts +1 -1
  32. package/packages/compactor/src/compaction/hooks.ts +487 -311
  33. package/packages/compactor/src/compaction/source.ts +178 -0
  34. package/packages/compactor/src/compaction/summarize.ts +586 -52
  35. package/packages/compactor/src/config/manager.ts +130 -127
  36. package/packages/compactor/src/config/schema.ts +32 -48
  37. package/packages/compactor/src/index.ts +40 -431
  38. package/packages/compactor/src/info-screen.ts +44 -190
  39. package/packages/compactor/src/session/recall-blocks.ts +1 -1
  40. package/packages/compactor/src/stats.ts +76 -0
  41. package/packages/compactor/src/tools/context-budget.ts +17 -34
  42. package/packages/compactor/src/tools/ctx-doctor.ts +45 -36
  43. package/packages/compactor/src/tools/register.ts +29 -269
  44. package/packages/compactor/src/types.ts +47 -186
  45. package/packages/core/README.md +25 -0
  46. package/packages/core/child-agent.ts +1 -0
  47. package/packages/core/command-echo.ts +63 -0
  48. package/packages/core/compaction-context.ts +41 -0
  49. package/packages/core/constants.ts +8 -38
  50. package/packages/core/events.ts +0 -53
  51. package/packages/core/fusion-status.ts +4 -0
  52. package/packages/core/global.d.ts +10 -0
  53. package/packages/core/harness-messages.ts +392 -0
  54. package/packages/core/index.ts +14 -0
  55. package/packages/core/kanboard-status.ts +49 -0
  56. package/packages/core/long-horizon-owner-status.ts +46 -0
  57. package/packages/core/model-cache.ts +81 -7
  58. package/packages/core/package.json +6 -3
  59. package/packages/core/src/attach/detect.ts +163 -0
  60. package/packages/core/src/child-agent/child-args.ts +31 -0
  61. package/packages/core/src/child-agent/delivery.ts +41 -0
  62. package/packages/core/src/child-agent/index.ts +5 -0
  63. package/packages/core/src/child-agent/readers.ts +203 -0
  64. package/packages/core/src/child-agent/runtime.ts +584 -0
  65. package/packages/core/src/evidence.ts +78 -0
  66. package/packages/core/src/hints/browser.ts +278 -0
  67. package/packages/core/src/hints/crab-data.ts +19 -0
  68. package/packages/core/src/hints/index.ts +865 -0
  69. package/packages/core/src/hints/lines.ts +607 -0
  70. package/packages/core/src/hints/store.ts +120 -0
  71. package/packages/core/src/jev/chatter.ts +24 -0
  72. package/packages/core/src/jev/settings.ts +177 -14
  73. package/packages/core/src/package-colors.ts +2 -0
  74. package/packages/core/src/settings/catalog.ts +39 -15
  75. package/packages/core/src/settings/engine.ts +48 -2
  76. package/packages/core/src/settings/hub.ts +83 -20
  77. package/packages/core/src/settings/open.ts +49 -0
  78. package/packages/core/src/settings/schema.ts +27 -7
  79. package/packages/core/src/tui/hub-kit.ts +18 -5
  80. package/packages/core/src/tui/kit.ts +198 -0
  81. package/packages/core/src/tui/progress.ts +73 -0
  82. package/packages/core/src/turn/arbiter.ts +290 -0
  83. package/packages/footer/README.md +4 -6
  84. package/packages/footer/package.json +3 -3
  85. package/packages/footer/src/glance-editor.ts +19 -11
  86. package/packages/footer/src/help.ts +1 -1
  87. package/packages/footer/src/index.ts +36 -3
  88. package/packages/footer/src/presets.ts +3 -4
  89. package/packages/footer/src/rendering/icons.ts +0 -20
  90. package/packages/footer/src/segments/compactor.ts +52 -142
  91. package/packages/footer/src/segments/status-ext.ts +0 -1
  92. package/packages/fusion/README.md +14 -4
  93. package/packages/fusion/package.json +4 -3
  94. package/packages/fusion/src/child-args.ts +1 -0
  95. package/packages/fusion/src/index.ts +161 -8
  96. package/packages/fusion/src/pi-settings.ts +57 -0
  97. package/packages/fusion/src/picker.ts +186 -51
  98. package/packages/fusion/src/preset.ts +56 -2
  99. package/packages/fusion/src/prompts.ts +1 -1
  100. package/packages/fusion/src/sidekick-runtime.ts +1 -420
  101. package/packages/fusion/src/tools.ts +107 -128
  102. package/packages/fusion/src/transcript.ts +27 -85
  103. package/packages/info-screen/package.json +2 -2
  104. package/packages/input-shortcuts/README.md +18 -30
  105. package/packages/input-shortcuts/package.json +2 -2
  106. package/packages/input-shortcuts/src/burst.ts +88 -0
  107. package/packages/input-shortcuts/src/chord-overlay.ts +20 -70
  108. package/packages/input-shortcuts/src/cleared-input.ts +97 -0
  109. package/packages/input-shortcuts/src/index.ts +99 -193
  110. package/packages/input-shortcuts/src/last-response.ts +40 -0
  111. package/packages/input-shortcuts/src/registers.ts +8 -23
  112. package/packages/input-shortcuts/src/types.ts +4 -16
  113. package/packages/input-shortcuts/src/undo-redo.ts +59 -47
  114. package/packages/kanboard/README.md +51 -47
  115. package/packages/kanboard/index.ts +293 -55
  116. package/packages/kanboard/package.json +8 -8
  117. package/packages/kanboard/skills/kanboard/SKILL.md +61 -27
  118. package/packages/kanboard/src/badges.ts +93 -0
  119. package/packages/kanboard/src/bin.ts +4 -2
  120. package/packages/kanboard/src/commands.ts +218 -84
  121. package/packages/kanboard/src/debug.ts +20 -0
  122. package/packages/kanboard/src/guard.ts +267 -109
  123. package/packages/kanboard/src/monitor.ts +330 -0
  124. package/packages/kanboard/src/notice-buffer.ts +74 -0
  125. package/packages/kanboard/src/progress.ts +27 -0
  126. package/packages/kanboard/src/reminders.ts +234 -0
  127. package/packages/kanboard/src/settings.ts +69 -15
  128. package/packages/kanboard/src/shapes.ts +5 -0
  129. package/packages/long-horizon/index.ts +190 -13
  130. package/packages/long-horizon/package.json +3 -3
  131. package/packages/long-horizon/src/commands.ts +103 -7
  132. package/packages/long-horizon/src/compaction-brief.ts +35 -0
  133. package/packages/long-horizon/src/engine/continuation.ts +84 -15
  134. package/packages/long-horizon/src/engine/goal-state.ts +64 -13
  135. package/packages/long-horizon/src/engine/nudge-stash.ts +71 -0
  136. package/packages/long-horizon/src/engine/ralph.ts +3 -2
  137. package/packages/long-horizon/src/engine/runaway.ts +68 -11
  138. package/packages/long-horizon/src/engine/verifier.ts +19 -0
  139. package/packages/long-horizon/src/gate.ts +37 -12
  140. package/packages/long-horizon/src/judge/resolve.ts +1 -0
  141. package/packages/long-horizon/src/owner.ts +35 -2
  142. package/packages/long-horizon/src/progress.ts +87 -0
  143. package/packages/long-horizon/src/prompts/goal.ts +1 -1
  144. package/packages/long-horizon/src/runtime.ts +172 -18
  145. package/packages/long-horizon/src/settings.ts +54 -39
  146. package/packages/long-horizon/src/tools/goal.ts +6 -0
  147. package/packages/long-horizon/src/tools/graph.ts +1 -1
  148. package/packages/long-horizon/src/tools/swarm.ts +3 -3
  149. package/packages/mcp/package.json +2 -2
  150. package/packages/memory/commands.ts +7 -2
  151. package/packages/memory/index.ts +210 -32
  152. package/packages/memory/package.json +3 -3
  153. package/packages/memory/save-session.ts +264 -0
  154. package/packages/memory/settings.ts +17 -0
  155. package/packages/memory/tools.ts +253 -203
  156. package/packages/notify/package.json +2 -2
  157. package/packages/skill-registry/README.md +53 -16
  158. package/packages/skill-registry/index.ts +230 -0
  159. package/packages/skill-registry/package.json +19 -8
  160. package/packages/skill-registry/src/editor.ts +206 -0
  161. package/packages/skill-registry/src/judge.ts +289 -0
  162. package/packages/skill-registry/src/registry.ts +87 -0
  163. package/packages/skill-registry/src/settings.ts +259 -0
  164. package/packages/skill-registry/src/vault.ts +80 -0
  165. package/packages/subagents/README.md +39 -119
  166. package/packages/subagents/package.json +6 -13
  167. package/packages/subagents/skills/subagents/SKILL.md +18 -42
  168. package/packages/subagents/src/agents.ts +213 -0
  169. package/packages/subagents/src/cards.ts +182 -0
  170. package/packages/subagents/src/index.ts +609 -1084
  171. package/packages/subagents/src/manager.ts +429 -0
  172. package/packages/subagents/src/profiles.ts +130 -0
  173. package/packages/subagents/src/transcript.ts +154 -0
  174. package/packages/subagents/src/ui.ts +389 -0
  175. package/packages/unipi/bundled.js +39756 -45569
  176. package/packages/unipi/index.ts +55 -10
  177. package/packages/updater/package.json +2 -2
  178. package/packages/utility/README.md +76 -69
  179. package/packages/utility/package.json +2 -2
  180. package/packages/utility/skills/image/SKILL.md +37 -0
  181. package/packages/utility/skills/utility/SKILL.md +17 -60
  182. package/packages/utility/src/answer/extract.ts +128 -0
  183. package/packages/utility/src/answer/index.ts +213 -0
  184. package/packages/utility/src/answer/reply.ts +133 -0
  185. package/packages/utility/src/answer/web.ts +167 -0
  186. package/packages/utility/src/attach/index.ts +205 -0
  187. package/packages/utility/src/commands.ts +38 -142
  188. package/packages/utility/src/diagnostics/engine.ts +50 -5
  189. package/packages/utility/src/image/index.ts +33 -0
  190. package/packages/utility/src/image/models.ts +221 -0
  191. package/packages/{image/src → utility/src/image}/recognize.ts +2 -2
  192. package/packages/utility/src/image/settings.ts +178 -0
  193. package/packages/{image/src/image-source.ts → utility/src/image/source.ts} +1 -1
  194. package/packages/utility/src/image/tools.ts +168 -0
  195. package/packages/utility/src/image/transports.ts +186 -0
  196. package/packages/utility/src/index.ts +68 -389
  197. package/packages/utility/src/lifecycle/cleanup.ts +116 -311
  198. package/packages/utility/src/rename/gate.ts +102 -0
  199. package/packages/utility/src/rename/index.ts +191 -0
  200. package/packages/utility/src/rename/session.ts +170 -0
  201. package/packages/utility/src/render/delegated.ts +285 -0
  202. package/packages/utility/src/render/harness.ts +683 -0
  203. package/packages/utility/src/render/parse.ts +156 -0
  204. package/packages/utility/src/render/pi-settings.ts +38 -0
  205. package/packages/utility/src/render/reply-bg.ts +307 -0
  206. package/packages/utility/src/render/simple.ts +724 -0
  207. package/packages/utility/src/render/spacing.ts +235 -0
  208. package/packages/utility/src/render/styled.ts +251 -0
  209. package/packages/utility/src/render/tools.ts +353 -0
  210. package/packages/utility/src/settings.ts +166 -233
  211. package/packages/utility/src/types.ts +1 -222
  212. package/packages/watchdog/index.ts +17 -6
  213. package/packages/watchdog/package.json +3 -3
  214. package/packages/watchdog/src/config.ts +3 -2
  215. package/packages/web-api/package.json +2 -2
  216. package/packages/workflow/README.md +3 -0
  217. package/packages/workflow/index.ts +0 -2
  218. package/packages/workflow/package.json +2 -2
  219. package/packages/workflow/src/permission/decide.ts +6 -4
  220. package/packages/workflow/src/permission/index.ts +17 -7
  221. package/packages/workflow/src/permission/settings.ts +39 -4
  222. package/packages/workflow/src/plan/index.ts +19 -4
  223. package/packages/background-tasks/extensions/delegate-child.ts +0 -1
  224. package/packages/background-tasks/src/context-parent-snapshot.ts +0 -142
  225. package/packages/background-tasks/src/context-token-budget.ts +0 -903
  226. package/packages/background-tasks/src/context-visible-conversation-v2.ts +0 -551
  227. package/packages/background-tasks/src/delegate/artifacts.ts +0 -487
  228. package/packages/background-tasks/src/delegate/budget.ts +0 -415
  229. package/packages/background-tasks/src/delegate/hook-contract-evidence.json +0 -18
  230. package/packages/background-tasks/src/delegate/hook-contract.ts +0 -154
  231. package/packages/background-tasks/src/delegate/launch.ts +0 -484
  232. package/packages/background-tasks/src/delegate/result-package.ts +0 -459
  233. package/packages/background-tasks/src/delegate/runner.ts +0 -430
  234. package/packages/background-tasks/src/delegate/seed.ts +0 -423
  235. package/packages/background-tasks/src/delegate/types.ts +0 -323
  236. package/packages/background-tasks/src/delegate-child-extension.ts +0 -978
  237. package/packages/background-tasks/src/delegate-extension.ts +0 -654
  238. package/packages/background-tasks/src/fixtures/delegate-context-incident.json +0 -17
  239. package/packages/compactor/skills/compactor-detail/SKILL.md +0 -116
  240. package/packages/compactor/skills/compactor-doctor/SKILL.md +0 -71
  241. package/packages/compactor/skills/compactor-stats/SKILL.md +0 -51
  242. package/packages/compactor/src/compaction/build-sections.ts +0 -76
  243. package/packages/compactor/src/compaction/extract/goals.ts +0 -36
  244. package/packages/compactor/src/compaction/extract/preferences.ts +0 -40
  245. package/packages/compactor/src/compaction/format.ts +0 -53
  246. package/packages/compactor/src/compaction/merge.ts +0 -143
  247. package/packages/compactor/src/config/presets.ts +0 -160
  248. package/packages/compactor/src/executor/executor.ts +0 -233
  249. package/packages/compactor/src/executor/runtime.ts +0 -115
  250. package/packages/compactor/src/security/evaluator.ts +0 -89
  251. package/packages/compactor/src/security/policy.ts +0 -96
  252. package/packages/compactor/src/security/scanner.ts +0 -65
  253. package/packages/compactor/src/session/auto-inject.ts +0 -60
  254. package/packages/compactor/src/session/db.ts +0 -325
  255. package/packages/compactor/src/session/extract.ts +0 -144
  256. package/packages/compactor/src/session/resume-inject.ts +0 -64
  257. package/packages/compactor/src/session/snapshot.ts +0 -327
  258. package/packages/compactor/src/tools/ctx-batch-execute.ts +0 -41
  259. package/packages/compactor/src/tools/ctx-execute-file.ts +0 -23
  260. package/packages/compactor/src/tools/ctx-execute.ts +0 -23
  261. package/packages/compactor/src/tools/ctx-stats.ts +0 -96
  262. package/packages/image/README.md +0 -99
  263. package/packages/image/package.json +0 -61
  264. package/packages/image/skills/image/SKILL.md +0 -76
  265. package/packages/image/src/generate.ts +0 -256
  266. package/packages/image/src/index.ts +0 -135
  267. package/packages/image/src/models.ts +0 -519
  268. package/packages/image/src/openai-images-api.ts +0 -282
  269. package/packages/image/src/register-providers.ts +0 -209
  270. package/packages/image/src/settings.ts +0 -173
  271. package/packages/image/src/tools.ts +0 -326
  272. package/packages/input-shortcuts/src/clipboard.ts +0 -119
  273. package/packages/kanboard/src/runner.ts +0 -817
  274. package/packages/skill-registry/skills/auto/SKILL.md +0 -465
  275. package/packages/skill-registry/skills/brainstorm/SKILL.md +0 -219
  276. package/packages/skill-registry/skills/chore-create/SKILL.md +0 -315
  277. package/packages/skill-registry/skills/chore-execute/SKILL.md +0 -314
  278. package/packages/skill-registry/skills/consolidate/SKILL.md +0 -142
  279. package/packages/skill-registry/skills/consultant/SKILL.md +0 -97
  280. package/packages/skill-registry/skills/debug/SKILL.md +0 -228
  281. package/packages/skill-registry/skills/document/SKILL.md +0 -120
  282. package/packages/skill-registry/skills/fix/SKILL.md +0 -212
  283. package/packages/skill-registry/skills/gather-context/SKILL.md +0 -145
  284. package/packages/skill-registry/skills/plan/SKILL.md +0 -231
  285. package/packages/skill-registry/skills/quick-fix/SKILL.md +0 -135
  286. package/packages/skill-registry/skills/quick-work/SKILL.md +0 -110
  287. package/packages/skill-registry/skills/research/SKILL.md +0 -251
  288. package/packages/skill-registry/skills/review-work/SKILL.md +0 -187
  289. package/packages/skill-registry/skills/scan-issues/SKILL.md +0 -195
  290. package/packages/skill-registry/skills/work/SKILL.md +0 -218
  291. package/packages/skill-registry/skills/worktree-create/SKILL.md +0 -69
  292. package/packages/skill-registry/skills/worktree-list/SKILL.md +0 -78
  293. package/packages/skill-registry/skills/worktree-merge/SKILL.md +0 -89
  294. package/packages/subagents/agents/delegate.md +0 -14
  295. package/packages/subagents/agents/oracle.md +0 -78
  296. package/packages/subagents/agents/researcher.md +0 -52
  297. package/packages/subagents/agents/reviewer.md +0 -80
  298. package/packages/subagents/agents/scout.md +0 -50
  299. package/packages/subagents/agents/worker.md +0 -59
  300. package/packages/subagents/prompts/council.md +0 -48
  301. package/packages/subagents/prompts/gather-context-and-clarify.md +0 -13
  302. package/packages/subagents/prompts/parallel-cleanup.md +0 -59
  303. package/packages/subagents/prompts/parallel-research.md +0 -50
  304. package/packages/subagents/prompts/parallel-review.md +0 -54
  305. package/packages/subagents/prompts/review-loop.md +0 -43
  306. package/packages/subagents/skills/council-mode/SKILL.md +0 -230
  307. package/packages/subagents/skills/subagents/references/constraints-and-recipes.md +0 -259
  308. package/packages/subagents/skills/subagents/references/execution-controls.md +0 -454
  309. package/packages/subagents/skills/subagents/references/management-authoring-rpc.md +0 -161
  310. package/packages/subagents/skills/subagents/references/multi-lane-orchestration.md +0 -39
  311. package/packages/subagents/skills/subagents/references/prompting-and-roles.md +0 -267
  312. package/packages/subagents/src/acceptance.ts +0 -331
  313. package/packages/subagents/src/agent-manager.ts +0 -405
  314. package/packages/subagents/src/agent-memory.ts +0 -300
  315. package/packages/subagents/src/agent-overrides.ts +0 -183
  316. package/packages/subagents/src/agent-runner.ts +0 -271
  317. package/packages/subagents/src/async-runner.ts +0 -422
  318. package/packages/subagents/src/authority-policy.ts +0 -47
  319. package/packages/subagents/src/budgets.ts +0 -285
  320. package/packages/subagents/src/child-safety.ts +0 -140
  321. package/packages/subagents/src/config.ts +0 -249
  322. package/packages/subagents/src/conversation-viewer.ts +0 -281
  323. package/packages/subagents/src/core-compat.ts +0 -94
  324. package/packages/subagents/src/custom-agents.ts +0 -343
  325. package/packages/subagents/src/file-system-retry.ts +0 -50
  326. package/packages/subagents/src/fleet-data.ts +0 -105
  327. package/packages/subagents/src/fleet-view.ts +0 -322
  328. package/packages/subagents/src/foreground-detach.ts +0 -59
  329. package/packages/subagents/src/fork-context.ts +0 -285
  330. package/packages/subagents/src/global.d.ts +0 -7
  331. package/packages/subagents/src/guide.ts +0 -129
  332. package/packages/subagents/src/mission-state.ts +0 -133
  333. package/packages/subagents/src/mission-store.ts +0 -436
  334. package/packages/subagents/src/output-limits.ts +0 -142
  335. package/packages/subagents/src/parity-types.ts +0 -315
  336. package/packages/subagents/src/pi-args.ts +0 -167
  337. package/packages/subagents/src/result-files.ts +0 -232
  338. package/packages/subagents/src/result-watcher.ts +0 -221
  339. package/packages/subagents/src/retained-children.ts +0 -176
  340. package/packages/subagents/src/run-fanout-budget.ts +0 -356
  341. package/packages/subagents/src/scheduled-runs.ts +0 -349
  342. package/packages/subagents/src/schemas.ts +0 -263
  343. package/packages/subagents/src/slash-commands.ts +0 -80
  344. package/packages/subagents/src/supervisor-channel.ts +0 -249
  345. package/packages/subagents/src/tool-handler.ts +0 -1144
  346. package/packages/subagents/src/types.ts +0 -238
  347. package/packages/subagents/src/widget.ts +0 -457
  348. package/packages/subagents/src/workflow-script.ts +0 -737
  349. package/packages/subagents/src/workflow-worker.ts +0 -384
  350. package/packages/subagents/src/worktree.ts +0 -614
  351. package/packages/utility/src/analytics/collector.ts +0 -293
  352. package/packages/utility/src/info-screen.ts +0 -80
  353. package/packages/utility/src/lifecycle/process.ts +0 -162
  354. package/packages/utility/src/prefix-cache.ts +0 -263
  355. package/packages/utility/src/skill-discovery.ts +0 -542
  356. package/packages/utility/src/tools/env.ts +0 -113
  357. package/packages/utility/src/tui/name-badge-state.ts +0 -315
  358. package/packages/utility/src/tui/name-badge.ts +0 -109
  359. /package/packages/{subagents/src → core/src/child-agent}/pi-spawn.ts +0 -0
@@ -1,315 +0,0 @@
1
- ---
2
- name: chore-create
3
- description: "Create reusable chore — save repeatable tasks like deploy, publish, push to docs/chore/."
4
- ---
5
-
6
- # Creating Chores
7
-
8
- Create reusable chore definitions for repeatable tasks. Save to `docs/chore/` for future execution.
9
-
10
- ## Boundaries
11
-
12
- **This skill MAY:** read codebase, ask questions, write chore to `docs/chore/`.
13
- **This skill MAY NOT:** edit code, execute the chore, run tests, deploy.
14
-
15
- **This is definition only — not execution.**
16
-
17
- ## Command Format
18
-
19
- ```
20
- chore creation <string(greedy)>
21
- ```
22
-
23
- - `string(greedy)` — description of the chore to create (e.g., "push to github main", "publish npm package")
24
- - Writes only to `docs/chore/`
25
-
26
- ## Output Path
27
-
28
- ```
29
- docs/chore/<chore-name>.md
30
- ```
31
-
32
- Create the `docs/chore/` folder if it does not exist yet — it is an ordinary project folder, not a unipi store.
33
-
34
- ---
35
-
36
- ## Process
37
-
38
- ### Phase 1: Understand the Chore
39
-
40
- 1. Read the chore description
41
- 2. Ask clarifying questions (one at a time):
42
- - "What are the exact steps for this chore?"
43
- - "Any pre-conditions before running?"
44
- - "What should happen if a step fails?"
45
- - "Is this interactive or fully automated?"
46
-
47
- 3. Determine chore type:
48
- - **Deploy** — push to production/staging
49
- - **Publish** — npm, pypi, docker registry
50
- - **Git** — push, merge, release
51
- - **Build** — compile, bundle, package
52
- - **Test** — run specific test suites
53
- - **Maintenance** — cleanup, backup, sync
54
- - **Custom** — any repeatable task
55
-
56
- **Exit:** Chore understood, steps clear.
57
-
58
- ### Phase 2: Design Chore Structure
59
-
60
- Plan the chore:
61
-
62
- 1. **Name** — kebab-case, descriptive (e.g., `push-github-main`, `publish-npm`)
63
- 2. **Steps** — ordered list of commands/actions
64
- 3. **Pre-conditions** — what must be true before running
65
- 4. **Post-conditions** — what should be true after success
66
- 5. **Failure handling** — what to do if steps fail
67
- 6. **Interactive points** — where user input may be needed
68
-
69
- **Exit:** Structure designed.
70
-
71
- ### Phase 3: Write Chore File
72
-
73
- Create `docs/chore/<chore-name>.md`:
74
-
75
- ```markdown
76
- ---
77
- name: {chore-name}
78
- type: chore
79
- description: {One-line description}
80
- created: YYYY-MM-DD
81
- ---
82
-
83
- # {Chore Name}
84
-
85
- {Description of what this chore does and when to use it}
86
-
87
- ## Pre-conditions
88
-
89
- Before running this chore, ensure:
90
- - [ ] {Pre-condition 1}
91
- - [ ] {Pre-condition 2}
92
-
93
- ## Steps
94
-
95
- ### Step 1: {Step Name}
96
- {What to do}
97
-
98
- ```bash
99
- {command}
100
- ```
101
-
102
- Expected: {what should happen}
103
-
104
- ### Step 2: {Step Name}
105
- {What to do}
106
-
107
- ```bash
108
- {command}
109
- ```
110
-
111
- Expected: {what should happen}
112
-
113
- ### Step N: Verify
114
- {How to verify success}
115
-
116
- ```bash
117
- {verification command}
118
- ```
119
-
120
- Expected: {success indicator}
121
-
122
- ## Failure Handling
123
-
124
- If any step fails:
125
- 1. {What to check}
126
- 2. {How to recover}
127
- 3. {When to abort}
128
-
129
- ## Post-conditions
130
-
131
- After successful completion:
132
- - [ ] {Post-condition 1}
133
- - [ ] {Post-condition 2}
134
-
135
- ## Notes
136
- {Any additional context, gotchas, or tips}
137
- ```
138
-
139
- ### Phase 4: Self-Review
140
-
141
- Before presenting:
142
- 1. Are all steps clear and executable?
143
- 2. Are commands correct and tested?
144
- 3. Is failure handling comprehensive?
145
- 4. Would someone else be able to run this?
146
-
147
- ### Phase 5: Present & Handoff
148
-
149
- Present to user:
150
-
151
- > "Chore created at `docs/chore/<chore-name>.md`"
152
- >
153
- > **Steps:** {count} steps
154
- > **Type:** {deploy/publish/git/etc.}
155
-
156
- Then suggest:
157
-
158
- ```
159
- chore execution chore:<chore-name>
160
- ```
161
-
162
- Or if more chores needed:
163
- > "Need to create more chores?"
164
-
165
- ---
166
-
167
- ## Chore Naming Convention
168
-
169
- Use kebab-case with action-verb prefix:
170
-
171
- | Pattern | Example |
172
- |---------|---------|
173
- | `push-{target}` | `push-github-main`, `push-github-develop` |
174
- | `publish-{registry}` | `publish-npm`, `publish-docker` |
175
- | `deploy-{env}` | `deploy-staging`, `deploy-production` |
176
- | `run-{suite}` | `run-unit-tests`, `run-e2e-tests` |
177
- | `sync-{service}` | `sync-translations`, `sync-config` |
178
- | `backup-{target}` | `backup-database`, `backup-files` |
179
- | `release-{type}` | `release-patch`, `release-minor` |
180
-
181
- ---
182
-
183
- ## Examples
184
-
185
- ### Push to GitHub Main
186
-
187
- ```
188
- chore creation push current branch to github main
189
- ```
190
-
191
- Creates `docs/chore/push-github-main.md`:
192
- ```markdown
193
- ---
194
- name: push-github-main
195
- type: chore
196
- description: Push current branch changes to GitHub main
197
- created: 2026-04-28
198
- ---
199
-
200
- # Push to GitHub Main
201
-
202
- Push committed changes from current branch to GitHub main branch.
203
-
204
- ## Pre-conditions
205
- - [ ] All changes committed
206
- - [ ] On correct branch
207
- - [ ] Tests passing
208
-
209
- ## Steps
210
-
211
- ### Step 1: Verify clean working tree
212
- ```bash
213
- git status
214
- ```
215
- Expected: "nothing to commit, working tree clean"
216
-
217
- ### Step 2: Push to remote
218
- ```bash
219
- git push origin main
220
- ```
221
- Expected: Success with no errors
222
-
223
- ### Step 3: Verify push
224
- ```bash
225
- git log --oneline -1
226
- ```
227
- Expected: Latest commit matches remote
228
-
229
- ## Failure Handling
230
- If push rejected:
231
- 1. Pull latest: `git pull origin main`
232
- 2. Resolve conflicts if any
233
- 3. Retry push
234
-
235
- ## Post-conditions
236
- - [ ] Remote main is up to date
237
- ```
238
-
239
- ### Publish to NPM
240
-
241
- ```
242
- chore creation publish package to npm registry
243
- ```
244
-
245
- Creates `docs/chore/publish-npm.md`:
246
- ```markdown
247
- ---
248
- name: publish-npm
249
- type: chore
250
- description: Publish package to npm registry
251
- created: 2026-04-28
252
- ---
253
-
254
- # Publish to NPM
255
-
256
- Publish the current package version to npm registry.
257
-
258
- ## Pre-conditions
259
- - [ ] Logged in to npm (`npm whoami`)
260
- - [ ] Version bumped in package.json
261
- - [ ] All changes committed
262
- - [ ] Tests passing
263
-
264
- ## Steps
265
-
266
- ### Step 1: Verify npm login
267
- ```bash
268
- npm whoami
269
- ```
270
- Expected: Your npm username
271
-
272
- ### Step 2: Run tests
273
- ```bash
274
- npm test
275
- ```
276
- Expected: All tests passing
277
-
278
- ### Step 3: Build package
279
- ```bash
280
- npm run build
281
- ```
282
- Expected: Build succeeds
283
-
284
- ### Step 4: Publish
285
- ```bash
286
- npm publish
287
- ```
288
- Expected: Package published successfully
289
-
290
- ### Step 5: Verify publication
291
- ```bash
292
- npm view {package-name} version
293
- ```
294
- Expected: Matches package.json version
295
-
296
- ## Failure Handling
297
- If publish fails:
298
- 1. Check npm login: `npm whoami`
299
- 2. Check version: must be higher than current
300
- 3. Check package name conflicts
301
-
302
- ## Post-conditions
303
- - [ ] Package available on npm
304
- - [ ] Version matches package.json
305
- ```
306
-
307
- ---
308
-
309
- ## Notes
310
-
311
- - Chores are reusable — create once, execute many times
312
- - Keep steps clear and executable by anyone
313
- - Include verification steps for confidence
314
- - Document failure scenarios for resilience
315
- - Chores live in `docs/chore/` in the project so they are easy to find
@@ -1,314 +0,0 @@
1
- ---
2
- name: chore-execute
3
- description: "Execute a saved chore — run deploy, publish, push, or any repeatable task from docs/chore/."
4
- ---
5
-
6
- # Executing Chores
7
-
8
- Run saved chore definitions. Autocomplete available for chore file selection.
9
-
10
- ## Boundaries
11
-
12
- **This skill MAY:** read chore file, run commands, ask user for confirmation, report results.
13
- **This skill MAY NOT:** create new chores, edit code (unless chore requires it).
14
-
15
- ## Command Format
16
-
17
- ```
18
- chore execution chore:<path>(optional) <string(greedy)>(optional)
19
- ```
20
-
21
- - `chore:<path>` — chore file to execute (autocomplete available)
22
- - `string(greedy)` — optional context or overrides (e.g., "skip tests", "dry run")
23
- - If no chore provided → agent lists available chores and asks
24
-
25
- ## Input Path
26
-
27
- ```
28
- docs/chore/<chore-name>.md
29
- ```
30
-
31
- Create the folder if it does not exist — it is an ordinary project folder, not a unipi store.
32
-
33
- ---
34
-
35
- ## Process
36
-
37
- ### Phase 1: Load Chore
38
-
39
- **If `chore:` arg provided:**
40
- 1. Read the chore file from `docs/chore/`
41
- 2. Understand: steps, pre-conditions, failure handling
42
-
43
- **If no chore provided:**
44
- 1. List available chore files in `docs/chore/`
45
- 2. Present to user for selection (autocomplete-style)
46
-
47
- ```
48
- Available chores:
49
- ┌─────────────────────────────┬─────────────────────────────────────┐
50
- │ Chore │ Description │
51
- ├─────────────────────────────┼─────────────────────────────────────┤
52
- │ push-github-main.md │ Push current branch to GitHub main │
53
- │ publish-npm.md │ Publish package to npm registry │
54
- │ deploy-staging.md │ Deploy to staging environment │
55
- │ run-full-tests.md │ Run complete test suite │
56
- └─────────────────────────────┴─────────────────────────────────────┘
57
- ```
58
-
59
- **Exit:** Chore loaded. Steps understood.
60
-
61
- ### Phase 2: Pre-condition Check
62
-
63
- Before executing, verify pre-conditions:
64
-
65
- 1. Read pre-conditions from chore file
66
- 2. For each pre-condition:
67
- - Run verification command if provided
68
- - Ask user to confirm if manual check
69
- - Report status
70
-
71
- ```
72
- Pre-conditions:
73
- ✓ All changes committed — verified
74
- ✓ On correct branch — verified (main)
75
- ? Tests passing — should I run tests first?
76
- ```
77
-
78
- **If pre-conditions fail:**
79
- > "Pre-condition not met: {description}. Fix this before continuing?"
80
- - If yes → help fix or wait for user
81
- - If no → abort chore
82
-
83
- **If `string(greedy)` contains overrides:**
84
- - "skip tests" → skip test steps
85
- - "dry run" → show commands without executing
86
- - "force" → skip pre-condition checks (with warning)
87
-
88
- **Exit:** Pre-conditions verified (or overridden).
89
-
90
- ### Phase 3: Execute Steps
91
-
92
- For each step in the chore:
93
-
94
- 1. **Display step:**
95
- ```
96
- Step 2/5: Push to remote
97
- > git push origin main
98
- ```
99
-
100
- 2. **Confirm execution** (for destructive commands):
101
- > "Execute this step?"
102
-
103
- 3. **Run command:**
104
- ```bash
105
- {command}
106
- ```
107
-
108
- 4. **Check result:**
109
- - If success → proceed to next step
110
- - If failure → go to Phase 4 (Failure Handling)
111
-
112
- 5. **Report progress:**
113
- ```
114
- ✓ Step 1/5: Verify clean working tree
115
- ✓ Step 2/5: Push to remote
116
- ○ Step 3/5: Verify push (running...)
117
- ```
118
-
119
- **Exit:** All steps completed.
120
-
121
- ### Phase 4: Failure Handling (if needed)
122
-
123
- If a step fails:
124
-
125
- 1. **Report failure:**
126
- ```
127
- ✗ Step 2/5: Push to remote — FAILED
128
- Error: rejected (non-fast-forward)
129
- ```
130
-
131
- 2. **Check chore's failure handling section:**
132
- - Follow recovery steps
133
- - Run diagnostic commands
134
- - Ask user for decision
135
-
136
- 3. **Options:**
137
- - **Retry** — try the step again
138
- - **Skip** — skip this step (if non-critical)
139
- - **Abort** — stop chore execution
140
- - **Manual** — user handles this step
141
-
142
- 4. **If recovery succeeds:**
143
- > "Recovered from failure. Continuing..."
144
- → Resume execution
145
-
146
- 5. **If recovery fails:**
147
- > "Cannot recover. Chore aborted at step {N}."
148
- → Report what was completed and what remains
149
-
150
- ### Phase 5: Verify Completion
151
-
152
- After all steps complete:
153
-
154
- 1. Run post-condition checks
155
- 2. Run verification commands from chore
156
- 3. Report success:
157
-
158
- ```
159
- Chore Complete: {chore-name}
160
-
161
- ✓ Step 1: {name}
162
- ✓ Step 2: {name}
163
- ✓ Step 3: {name}
164
- ✓ Step 4: {name}
165
- ✓ Step 5: {name}
166
-
167
- Post-conditions:
168
- ✓ {Post-condition 1} — verified
169
- ✓ {Post-condition 2} — verified
170
- ```
171
-
172
- ### Phase 6: Report
173
-
174
- > "Chore `{chore-name}` completed successfully."
175
-
176
- If there were issues:
177
- > "Chore completed with notes: {notes}"
178
-
179
- ---
180
-
181
- ## Autocomplete Behavior
182
-
183
- When user types `chore execution chore:`, autocomplete shows:
184
-
185
- ```
186
- Available chores:
187
- ┌─────────────────────────────┬────────────┬─────────────────────────────────────┐
188
- │ File │ Type │ Description │
189
- ├─────────────────────────────┼────────────┼─────────────────────────────────────┤
190
- │ push-github-main.md │ git │ Push current branch to GitHub main │
191
- │ publish-npm.md │ publish │ Publish package to npm registry │
192
- │ deploy-staging.md │ deploy │ Deploy to staging environment │
193
- └─────────────────────────────┴────────────┴─────────────────────────────────────┘
194
- ```
195
-
196
- User selects one, or types path manually.
197
-
198
- ---
199
-
200
- ## Context Overrides
201
-
202
- The `string(greedy)` parameter can override chore behavior:
203
-
204
- | Override | Effect |
205
- |----------|--------|
206
- | `skip tests` | Skip test/verification steps |
207
- | `dry run` | Show commands without executing |
208
- | `force` | Skip pre-condition checks |
209
- | `verbose` | Show detailed output |
210
- | `step 3` | Start from step 3 |
211
-
212
- Example:
213
- ```
214
- chore execution chore:publish-npm skip tests
215
- ```
216
-
217
- ---
218
-
219
- ## Examples
220
-
221
- ### Execute Push to GitHub
222
-
223
- ```
224
- chore execution chore:push-github-main
225
- ```
226
-
227
- Output:
228
- ```
229
- Loading chore: push-github-main
230
- Description: Push current branch changes to GitHub main
231
-
232
- Pre-conditions:
233
- ✓ All changes committed — verified (3 files committed)
234
- ✓ On correct branch — verified (main)
235
-
236
- Executing steps:
237
-
238
- Step 1/3: Verify clean working tree
239
- > git status
240
- ✓ Working tree clean
241
-
242
- Step 2/3: Push to remote
243
- > git push origin main
244
- ✓ Pushed to origin/main
245
-
246
- Step 3/3: Verify push
247
- > git log --oneline -1
248
- ✓ Remote matches local
249
-
250
- Post-conditions:
251
- ✓ Remote main is up to date
252
-
253
- Chore push-github-main completed successfully.
254
- ```
255
-
256
- ### Execute Publish to NPM (with override)
257
-
258
- ```
259
- chore execution chore:publish-npm dry run
260
- ```
261
-
262
- Output:
263
- ```
264
- Loading chore: publish-npm
265
- Description: Publish package to npm registry
266
- Mode: DRY RUN (commands shown but not executed)
267
-
268
- Steps that would run:
269
- 1. npm whoami
270
- 2. npm test
271
- 3. npm run build
272
- 4. npm publish
273
- 5. npm view @pi-unipi/workflow version
274
-
275
- Dry run complete. No commands executed.
276
- ```
277
-
278
- ---
279
-
280
- ## Error Recovery
281
-
282
- When a step fails, the agent should:
283
-
284
- 1. **Diagnose** — understand why it failed
285
- 2. **Suggest** — propose recovery steps
286
- 3. **Execute** — try recovery if user approves
287
- 4. **Report** — explain what happened
288
-
289
- Example:
290
- ```
291
- Step 2/5: Push to remote
292
- > git push origin main
293
- ✗ FAILED: rejected (non-fast-forward)
294
-
295
- Diagnosis: Remote has commits not in local branch
296
-
297
- Recovery options:
298
- 1. Pull and merge: git pull origin main
299
- 2. Force push: git push --force origin main (dangerous!)
300
- 3. Abort chore
301
-
302
- Which option?
303
- ```
304
-
305
- ---
306
-
307
- ## Notes
308
-
309
- - Chores are reusable — same chore can be run many times
310
- - Autocomplete makes it easy to find the right chore
311
- - Pre-condition checks prevent common failures
312
- - Failure handling provides recovery paths
313
- - Context overrides allow flexibility without editing chore files
314
- - Chores live in `docs/chore/` in the project