greprag 5.74.3 → 5.74.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (583) hide show
  1. package/dist/archive/glyph-font.js +0 -1
  2. package/dist/archive/page-renderer.js +0 -1
  3. package/dist/archive/png-codec.js +0 -1
  4. package/dist/archive/transcript-extract.js +0 -1
  5. package/dist/assistant-doctrine.js +0 -1
  6. package/dist/capture-manifest.js +0 -1
  7. package/dist/ccr-store.js +0 -1
  8. package/dist/claude-lifecycle-cutover.js +0 -1
  9. package/dist/codex-chip-hooks.js +0 -1
  10. package/dist/codex-delegation-dedupe.js +0 -1
  11. package/dist/codex-fast-hook.js +0 -1
  12. package/dist/codex-hook-events.js +0 -1
  13. package/dist/codex-notify-hook.js +0 -1
  14. package/dist/codex-prompt-cache.js +0 -1
  15. package/dist/codex-steering.js +0 -1
  16. package/dist/codex-store-background.js +0 -1
  17. package/dist/commands/agent-doctrine-file.js +0 -1
  18. package/dist/commands/agents.js +0 -1
  19. package/dist/commands/archive.js +0 -1
  20. package/dist/commands/arm-reminder.js +0 -1
  21. package/dist/commands/assistant-reminder.js +0 -1
  22. package/dist/commands/assistant.js +0 -1
  23. package/dist/commands/checkpoint-helpers.js +0 -1
  24. package/dist/commands/checkpoint.js +0 -1
  25. package/dist/commands/claude-md-patch.js +0 -1
  26. package/dist/commands/codex-app-server-client.js +0 -1
  27. package/dist/commands/codex-app-server.js +0 -1
  28. package/dist/commands/codex-chip/bootstrap.js +0 -1
  29. package/dist/commands/codex-chip/breakthrough-ack-command.js +0 -1
  30. package/dist/commands/codex-chip/breakthrough-command.js +0 -1
  31. package/dist/commands/codex-chip/breakthrough.js +0 -1
  32. package/dist/commands/codex-chip/cleanup-command.js +0 -1
  33. package/dist/commands/codex-chip/command.js +0 -1
  34. package/dist/commands/codex-chip/git.js +0 -1
  35. package/dist/commands/codex-chip/goal-command.js +0 -1
  36. package/dist/commands/codex-chip/goals.js +0 -1
  37. package/dist/commands/codex-chip/help.js +0 -1
  38. package/dist/commands/codex-chip/inbox.js +0 -1
  39. package/dist/commands/codex-chip/lifecycle.js +0 -1
  40. package/dist/commands/codex-chip/mechanic-lifecycle.js +0 -1
  41. package/dist/commands/codex-chip/model.js +0 -1
  42. package/dist/commands/codex-chip/naming.js +0 -1
  43. package/dist/commands/codex-chip/native.js +0 -1
  44. package/dist/commands/codex-chip/prompt.js +0 -1
  45. package/dist/commands/codex-chip/resume-command.js +0 -1
  46. package/dist/commands/codex-chip/selection.js +0 -1
  47. package/dist/commands/codex-chip/store.js +0 -1
  48. package/dist/commands/codex-chip/worker.js +0 -1
  49. package/dist/commands/codex-delivery.js +0 -1
  50. package/dist/commands/codex-doctor.js +0 -1
  51. package/dist/commands/codex-model-policy.js +0 -1
  52. package/dist/commands/codex-startup.js +0 -1
  53. package/dist/commands/codex-supervisor.js +0 -1
  54. package/dist/commands/codex-wake-test.js +0 -1
  55. package/dist/commands/codex-watch-health.js +0 -1
  56. package/dist/commands/codex.js +0 -1
  57. package/dist/commands/collision-check.js +0 -1
  58. package/dist/commands/collision-reminder.js +0 -1
  59. package/dist/commands/context-governor.js +0 -1
  60. package/dist/commands/coordinate-gate.js +0 -1
  61. package/dist/commands/corpus/client.js +0 -1
  62. package/dist/commands/corpus/index.js +0 -1
  63. package/dist/commands/corpus/manage.js +0 -1
  64. package/dist/commands/corpus/refresh.js +0 -1
  65. package/dist/commands/corpus/search.js +0 -1
  66. package/dist/commands/corpus/section.js +0 -1
  67. package/dist/commands/corpus/source.js +0 -1
  68. package/dist/commands/corpus/status.js +0 -1
  69. package/dist/commands/corpus/tags.js +0 -1
  70. package/dist/commands/corpus/upload.js +0 -1
  71. package/dist/commands/corpus/walk.js +0 -1
  72. package/dist/commands/corpus-reminder.js +0 -1
  73. package/dist/commands/crush-stats.js +0 -1
  74. package/dist/commands/crush.js +0 -1
  75. package/dist/commands/delivery-reminder.js +1 -2
  76. package/dist/commands/delivery.js +0 -1
  77. package/dist/commands/desk-line.js +0 -1
  78. package/dist/commands/discord.js +0 -1
  79. package/dist/commands/discover.js +0 -1
  80. package/dist/commands/doc-pointer-reminder.js +0 -1
  81. package/dist/commands/doc.js +0 -1
  82. package/dist/commands/docptr.js +0 -1
  83. package/dist/commands/doctor.js +6 -6
  84. package/dist/commands/email-primer-reminder.js +0 -1
  85. package/dist/commands/email.js +0 -1
  86. package/dist/commands/enrichment-health-reminder.js +0 -1
  87. package/dist/commands/fix.js +0 -1
  88. package/dist/commands/friction-reminder.js +1 -2
  89. package/dist/commands/identity.js +0 -1
  90. package/dist/commands/inbox-drain.js +0 -1
  91. package/dist/commands/inbox-primer-reminder.js +0 -1
  92. package/dist/commands/inbox-retract.js +0 -1
  93. package/dist/commands/inbox-watch-supervisor.js +0 -1
  94. package/dist/commands/inbox-watch.js +0 -1
  95. package/dist/commands/ingress-trigger.js +0 -1
  96. package/dist/commands/init.js +0 -1
  97. package/dist/commands/load-primer-reminder.js +0 -1
  98. package/dist/commands/load.js +0 -1
  99. package/dist/commands/loadout-reminder.js +0 -1
  100. package/dist/commands/loadout.js +0 -1
  101. package/dist/commands/mechanic-live.js +0 -1
  102. package/dist/commands/mechanic-manifest.js +0 -1
  103. package/dist/commands/mechanic-spawn.js +0 -1
  104. package/dist/commands/mechanic.js +0 -1
  105. package/dist/commands/memory-format.js +0 -1
  106. package/dist/commands/memory-reflex.js +0 -1
  107. package/dist/commands/memory.js +0 -1
  108. package/dist/commands/opencode-chip-client.js +0 -1
  109. package/dist/commands/opencode-chip-lifecycle.js +0 -1
  110. package/dist/commands/opencode-chip-mission.js +0 -1
  111. package/dist/commands/opencode-chip-store.js +0 -1
  112. package/dist/commands/opencode-chip.js +0 -1
  113. package/dist/commands/opencode-goals.js +0 -1
  114. package/dist/commands/opencode-interrupt.js +0 -1
  115. package/dist/commands/opencode-relay.js +0 -1
  116. package/dist/commands/opencode-watch.js +0 -1
  117. package/dist/commands/os-primer-reminder.js +0 -1
  118. package/dist/commands/parity.js +0 -1
  119. package/dist/commands/pipe-wrap.js +0 -1
  120. package/dist/commands/poll-registry.js +0 -1
  121. package/dist/commands/procedure-reminder.js +0 -1
  122. package/dist/commands/procedure.js +0 -1
  123. package/dist/commands/project.js +0 -1
  124. package/dist/commands/reminder-registry.js +0 -1
  125. package/dist/commands/reminder-types.js +0 -1
  126. package/dist/commands/search-guard.js +0 -1
  127. package/dist/commands/session.js +0 -1
  128. package/dist/commands/setup-reminder.js +0 -1
  129. package/dist/commands/shell-dialect-guard.js +0 -1
  130. package/dist/commands/skill-gain-reminder.js +0 -1
  131. package/dist/commands/skill-mirror-reminder.js +0 -1
  132. package/dist/commands/skill.js +12 -4
  133. package/dist/commands/skillgain.js +0 -1
  134. package/dist/commands/sms.js +0 -1
  135. package/dist/commands/state-trigger.js +0 -1
  136. package/dist/commands/status.js +6 -6
  137. package/dist/commands/version-reminder.js +13 -2
  138. package/dist/commands/watcher-registry.js +0 -1
  139. package/dist/crush/adaptive-sizer.js +0 -1
  140. package/dist/crush/code-compressor.js +0 -1
  141. package/dist/crush/crush-keywords.js +0 -1
  142. package/dist/crush/crush-types.js +0 -1
  143. package/dist/crush/index.js +0 -1
  144. package/dist/crush/json-crusher.js +0 -1
  145. package/dist/crush/json-detectors.js +0 -1
  146. package/dist/crush/log-compressor.js +0 -1
  147. package/dist/crush/search-compressor.js +0 -1
  148. package/dist/delivery-config.js +0 -1
  149. package/dist/delivery-lifecycle.js +0 -1
  150. package/dist/doc-mirror-client.js +0 -1
  151. package/dist/docptr-refs.js +0 -1
  152. package/dist/email-pull.js +0 -1
  153. package/dist/email-send.js +0 -1
  154. package/dist/equipped-loadouts-cache.js +0 -1
  155. package/dist/fix-trigger.js +0 -1
  156. package/dist/guard.js +0 -1
  157. package/dist/harness.js +0 -1
  158. package/dist/hook-runtime.js +0 -1
  159. package/dist/hook.js +21 -1
  160. package/dist/inbox-attachments.js +0 -1
  161. package/dist/index.js +0 -1
  162. package/dist/inline-atom-background.js +0 -1
  163. package/dist/inline-atom-episode.js +0 -1
  164. package/dist/inline-atom-hook.js +0 -1
  165. package/dist/inline-atom-worker.js +0 -1
  166. package/dist/inline-atom.js +0 -1
  167. package/dist/mechanic-friction.js +0 -1
  168. package/dist/mechanic-role.js +0 -1
  169. package/dist/native-skill-adoption.js +0 -1
  170. package/dist/native-skill-mirror.js +54 -17
  171. package/dist/native-skill-pending.js +0 -1
  172. package/dist/opencode-plugin-crush.js +0 -1
  173. package/dist/opencode-plugin-helpers.js +0 -1
  174. package/dist/opencode-plugin-png.js +0 -1
  175. package/dist/opencode-plugin.bundle.js +14 -3
  176. package/dist/opencode-plugin.js +0 -1
  177. package/dist/proc.js +0 -1
  178. package/dist/procedure-run.js +0 -1
  179. package/dist/procedure-runtime.js +0 -1
  180. package/dist/procedure-shadow.js +0 -1
  181. package/dist/procedure-watch.js +0 -1
  182. package/dist/procedure.js +0 -1
  183. package/dist/project-anchor.js +0 -1
  184. package/dist/reminder-injector.js +0 -1
  185. package/dist/secret-scrubber.js +0 -1
  186. package/dist/session-id.js +0 -1
  187. package/dist/skill-activation-manifest.js +0 -1
  188. package/dist/skill-landing.js +0 -1
  189. package/dist/skill-mirror-client.js +0 -1
  190. package/dist/skill-mirror-files.js +0 -1
  191. package/dist/skill-staleness.js +2 -2
  192. package/dist/turn-provenance.js +0 -1
  193. package/dist/windows-shims.js +134 -42
  194. package/dist/worktree-state.js +0 -1
  195. package/package.json +1 -1
  196. package/skill/mechanic/SKILL.md +1 -1
  197. package/skill/templates/skill-change.md +1 -0
  198. package/dist/archive/glyph-font.d.ts +0 -22
  199. package/dist/archive/glyph-font.js.map +0 -1
  200. package/dist/archive/page-renderer.d.ts +0 -67
  201. package/dist/archive/page-renderer.js.map +0 -1
  202. package/dist/archive/png-codec.d.ts +0 -21
  203. package/dist/archive/png-codec.js.map +0 -1
  204. package/dist/archive/transcript-extract.d.ts +0 -39
  205. package/dist/archive/transcript-extract.js.map +0 -1
  206. package/dist/assistant-doctrine.d.ts +0 -23
  207. package/dist/assistant-doctrine.js.map +0 -1
  208. package/dist/capture-manifest.d.ts +0 -20
  209. package/dist/capture-manifest.js.map +0 -1
  210. package/dist/ccr-store.d.ts +0 -49
  211. package/dist/ccr-store.js.map +0 -1
  212. package/dist/claude-lifecycle-cutover.d.ts +0 -23
  213. package/dist/claude-lifecycle-cutover.js.map +0 -1
  214. package/dist/codex-chip-hooks.d.ts +0 -16
  215. package/dist/codex-chip-hooks.js.map +0 -1
  216. package/dist/codex-delegation-dedupe.d.ts +0 -4
  217. package/dist/codex-delegation-dedupe.js.map +0 -1
  218. package/dist/codex-fast-hook.d.ts +0 -2
  219. package/dist/codex-fast-hook.js.map +0 -1
  220. package/dist/codex-hook-events.d.ts +0 -20
  221. package/dist/codex-hook-events.js.map +0 -1
  222. package/dist/codex-notify-hook.d.ts +0 -2
  223. package/dist/codex-notify-hook.js.map +0 -1
  224. package/dist/codex-prompt-cache.d.ts +0 -11
  225. package/dist/codex-prompt-cache.js.map +0 -1
  226. package/dist/codex-steering.d.ts +0 -30
  227. package/dist/codex-steering.js.map +0 -1
  228. package/dist/codex-store-background.d.ts +0 -2
  229. package/dist/codex-store-background.js.map +0 -1
  230. package/dist/commands/agent-doctrine-file.d.ts +0 -53
  231. package/dist/commands/agent-doctrine-file.js.map +0 -1
  232. package/dist/commands/agents.d.ts +0 -41
  233. package/dist/commands/agents.js.map +0 -1
  234. package/dist/commands/archive.d.ts +0 -81
  235. package/dist/commands/archive.js.map +0 -1
  236. package/dist/commands/arm-reminder.d.ts +0 -30
  237. package/dist/commands/arm-reminder.js.map +0 -1
  238. package/dist/commands/assistant-reminder.d.ts +0 -9
  239. package/dist/commands/assistant-reminder.js.map +0 -1
  240. package/dist/commands/assistant.d.ts +0 -20
  241. package/dist/commands/assistant.js.map +0 -1
  242. package/dist/commands/checkpoint-helpers.d.ts +0 -41
  243. package/dist/commands/checkpoint-helpers.js.map +0 -1
  244. package/dist/commands/checkpoint.d.ts +0 -16
  245. package/dist/commands/checkpoint.js.map +0 -1
  246. package/dist/commands/claude-md-patch.d.ts +0 -56
  247. package/dist/commands/claude-md-patch.js.map +0 -1
  248. package/dist/commands/codex-app-server-client.d.ts +0 -46
  249. package/dist/commands/codex-app-server-client.js.map +0 -1
  250. package/dist/commands/codex-app-server.d.ts +0 -1
  251. package/dist/commands/codex-app-server.js.map +0 -1
  252. package/dist/commands/codex-chip/bootstrap.d.ts +0 -8
  253. package/dist/commands/codex-chip/bootstrap.js.map +0 -1
  254. package/dist/commands/codex-chip/breakthrough-ack-command.d.ts +0 -1
  255. package/dist/commands/codex-chip/breakthrough-ack-command.js.map +0 -1
  256. package/dist/commands/codex-chip/breakthrough-command.d.ts +0 -5
  257. package/dist/commands/codex-chip/breakthrough-command.js.map +0 -1
  258. package/dist/commands/codex-chip/breakthrough.d.ts +0 -15
  259. package/dist/commands/codex-chip/breakthrough.js.map +0 -1
  260. package/dist/commands/codex-chip/cleanup-command.d.ts +0 -2
  261. package/dist/commands/codex-chip/cleanup-command.js.map +0 -1
  262. package/dist/commands/codex-chip/command.d.ts +0 -3
  263. package/dist/commands/codex-chip/command.js.map +0 -1
  264. package/dist/commands/codex-chip/git.d.ts +0 -34
  265. package/dist/commands/codex-chip/git.js.map +0 -1
  266. package/dist/commands/codex-chip/goal-command.d.ts +0 -1
  267. package/dist/commands/codex-chip/goal-command.js.map +0 -1
  268. package/dist/commands/codex-chip/goals.d.ts +0 -73
  269. package/dist/commands/codex-chip/goals.js.map +0 -1
  270. package/dist/commands/codex-chip/help.d.ts +0 -1
  271. package/dist/commands/codex-chip/help.js.map +0 -1
  272. package/dist/commands/codex-chip/inbox.d.ts +0 -10
  273. package/dist/commands/codex-chip/inbox.js.map +0 -1
  274. package/dist/commands/codex-chip/lifecycle.d.ts +0 -8
  275. package/dist/commands/codex-chip/lifecycle.js.map +0 -1
  276. package/dist/commands/codex-chip/mechanic-lifecycle.d.ts +0 -5
  277. package/dist/commands/codex-chip/mechanic-lifecycle.js.map +0 -1
  278. package/dist/commands/codex-chip/model.d.ts +0 -155
  279. package/dist/commands/codex-chip/model.js.map +0 -1
  280. package/dist/commands/codex-chip/naming.d.ts +0 -8
  281. package/dist/commands/codex-chip/naming.js.map +0 -1
  282. package/dist/commands/codex-chip/native.d.ts +0 -70
  283. package/dist/commands/codex-chip/native.js.map +0 -1
  284. package/dist/commands/codex-chip/prompt.d.ts +0 -3
  285. package/dist/commands/codex-chip/prompt.js.map +0 -1
  286. package/dist/commands/codex-chip/resume-command.d.ts +0 -7
  287. package/dist/commands/codex-chip/resume-command.js.map +0 -1
  288. package/dist/commands/codex-chip/selection.d.ts +0 -14
  289. package/dist/commands/codex-chip/selection.js.map +0 -1
  290. package/dist/commands/codex-chip/store.d.ts +0 -16
  291. package/dist/commands/codex-chip/store.js.map +0 -1
  292. package/dist/commands/codex-chip/worker.d.ts +0 -4
  293. package/dist/commands/codex-chip/worker.js.map +0 -1
  294. package/dist/commands/codex-delivery.d.ts +0 -67
  295. package/dist/commands/codex-delivery.js.map +0 -1
  296. package/dist/commands/codex-doctor.d.ts +0 -5
  297. package/dist/commands/codex-doctor.js.map +0 -1
  298. package/dist/commands/codex-model-policy.d.ts +0 -19
  299. package/dist/commands/codex-model-policy.js.map +0 -1
  300. package/dist/commands/codex-startup.d.ts +0 -13
  301. package/dist/commands/codex-startup.js.map +0 -1
  302. package/dist/commands/codex-supervisor.d.ts +0 -17
  303. package/dist/commands/codex-supervisor.js.map +0 -1
  304. package/dist/commands/codex-wake-test.d.ts +0 -46
  305. package/dist/commands/codex-wake-test.js.map +0 -1
  306. package/dist/commands/codex-watch-health.d.ts +0 -68
  307. package/dist/commands/codex-watch-health.js.map +0 -1
  308. package/dist/commands/codex.d.ts +0 -28
  309. package/dist/commands/codex.js.map +0 -1
  310. package/dist/commands/collision-check.d.ts +0 -112
  311. package/dist/commands/collision-check.js.map +0 -1
  312. package/dist/commands/collision-reminder.d.ts +0 -14
  313. package/dist/commands/collision-reminder.js.map +0 -1
  314. package/dist/commands/context-governor.d.ts +0 -87
  315. package/dist/commands/context-governor.js.map +0 -1
  316. package/dist/commands/coordinate-gate.d.ts +0 -80
  317. package/dist/commands/coordinate-gate.js.map +0 -1
  318. package/dist/commands/corpus/client.d.ts +0 -71
  319. package/dist/commands/corpus/client.js.map +0 -1
  320. package/dist/commands/corpus/index.d.ts +0 -24
  321. package/dist/commands/corpus/index.js.map +0 -1
  322. package/dist/commands/corpus/manage.d.ts +0 -6
  323. package/dist/commands/corpus/manage.js.map +0 -1
  324. package/dist/commands/corpus/refresh.d.ts +0 -12
  325. package/dist/commands/corpus/refresh.js.map +0 -1
  326. package/dist/commands/corpus/search.d.ts +0 -6
  327. package/dist/commands/corpus/search.js.map +0 -1
  328. package/dist/commands/corpus/section.d.ts +0 -5
  329. package/dist/commands/corpus/section.js.map +0 -1
  330. package/dist/commands/corpus/source.d.ts +0 -15
  331. package/dist/commands/corpus/source.js.map +0 -1
  332. package/dist/commands/corpus/status.d.ts +0 -5
  333. package/dist/commands/corpus/status.js.map +0 -1
  334. package/dist/commands/corpus/tags.d.ts +0 -17
  335. package/dist/commands/corpus/tags.js.map +0 -1
  336. package/dist/commands/corpus/upload.d.ts +0 -7
  337. package/dist/commands/corpus/upload.js.map +0 -1
  338. package/dist/commands/corpus/walk.d.ts +0 -5
  339. package/dist/commands/corpus/walk.js.map +0 -1
  340. package/dist/commands/corpus-reminder.d.ts +0 -15
  341. package/dist/commands/corpus-reminder.js.map +0 -1
  342. package/dist/commands/crush-stats.d.ts +0 -36
  343. package/dist/commands/crush-stats.js.map +0 -1
  344. package/dist/commands/crush.d.ts +0 -33
  345. package/dist/commands/crush.js.map +0 -1
  346. package/dist/commands/delivery-reminder.d.ts +0 -10
  347. package/dist/commands/delivery-reminder.js.map +0 -1
  348. package/dist/commands/delivery.d.ts +0 -1
  349. package/dist/commands/delivery.js.map +0 -1
  350. package/dist/commands/desk-line.d.ts +0 -36
  351. package/dist/commands/desk-line.js.map +0 -1
  352. package/dist/commands/discord.d.ts +0 -72
  353. package/dist/commands/discord.js.map +0 -1
  354. package/dist/commands/discover.d.ts +0 -45
  355. package/dist/commands/discover.js.map +0 -1
  356. package/dist/commands/doc-pointer-reminder.d.ts +0 -20
  357. package/dist/commands/doc-pointer-reminder.js.map +0 -1
  358. package/dist/commands/doc.d.ts +0 -6
  359. package/dist/commands/doc.js.map +0 -1
  360. package/dist/commands/docptr.d.ts +0 -17
  361. package/dist/commands/docptr.js.map +0 -1
  362. package/dist/commands/doctor.d.ts +0 -15
  363. package/dist/commands/doctor.js.map +0 -1
  364. package/dist/commands/email-primer-reminder.d.ts +0 -23
  365. package/dist/commands/email-primer-reminder.js.map +0 -1
  366. package/dist/commands/email.d.ts +0 -18
  367. package/dist/commands/email.js.map +0 -1
  368. package/dist/commands/enrichment-health-reminder.d.ts +0 -23
  369. package/dist/commands/enrichment-health-reminder.js.map +0 -1
  370. package/dist/commands/fix.d.ts +0 -50
  371. package/dist/commands/fix.js.map +0 -1
  372. package/dist/commands/friction-reminder.d.ts +0 -70
  373. package/dist/commands/friction-reminder.js.map +0 -1
  374. package/dist/commands/identity.d.ts +0 -24
  375. package/dist/commands/identity.js.map +0 -1
  376. package/dist/commands/inbox-drain.d.ts +0 -48
  377. package/dist/commands/inbox-drain.js.map +0 -1
  378. package/dist/commands/inbox-primer-reminder.d.ts +0 -27
  379. package/dist/commands/inbox-primer-reminder.js.map +0 -1
  380. package/dist/commands/inbox-retract.d.ts +0 -18
  381. package/dist/commands/inbox-retract.js.map +0 -1
  382. package/dist/commands/inbox-watch-supervisor.d.ts +0 -66
  383. package/dist/commands/inbox-watch-supervisor.js.map +0 -1
  384. package/dist/commands/inbox-watch.d.ts +0 -127
  385. package/dist/commands/inbox-watch.js.map +0 -1
  386. package/dist/commands/ingress-trigger.d.ts +0 -67
  387. package/dist/commands/ingress-trigger.js.map +0 -1
  388. package/dist/commands/init.d.ts +0 -48
  389. package/dist/commands/init.js.map +0 -1
  390. package/dist/commands/load-primer-reminder.d.ts +0 -38
  391. package/dist/commands/load-primer-reminder.js.map +0 -1
  392. package/dist/commands/load.d.ts +0 -20
  393. package/dist/commands/load.js.map +0 -1
  394. package/dist/commands/loadout-reminder.d.ts +0 -37
  395. package/dist/commands/loadout-reminder.js.map +0 -1
  396. package/dist/commands/loadout.d.ts +0 -15
  397. package/dist/commands/loadout.js.map +0 -1
  398. package/dist/commands/mechanic-live.d.ts +0 -12
  399. package/dist/commands/mechanic-live.js.map +0 -1
  400. package/dist/commands/mechanic-manifest.d.ts +0 -28
  401. package/dist/commands/mechanic-manifest.js.map +0 -1
  402. package/dist/commands/mechanic-spawn.d.ts +0 -39
  403. package/dist/commands/mechanic-spawn.js.map +0 -1
  404. package/dist/commands/mechanic.d.ts +0 -101
  405. package/dist/commands/mechanic.js.map +0 -1
  406. package/dist/commands/memory-format.d.ts +0 -68
  407. package/dist/commands/memory-format.js.map +0 -1
  408. package/dist/commands/memory-reflex.d.ts +0 -20
  409. package/dist/commands/memory-reflex.js.map +0 -1
  410. package/dist/commands/memory.d.ts +0 -74
  411. package/dist/commands/memory.js.map +0 -1
  412. package/dist/commands/opencode-chip-client.d.ts +0 -8
  413. package/dist/commands/opencode-chip-client.js.map +0 -1
  414. package/dist/commands/opencode-chip-lifecycle.d.ts +0 -2
  415. package/dist/commands/opencode-chip-lifecycle.js.map +0 -1
  416. package/dist/commands/opencode-chip-mission.d.ts +0 -22
  417. package/dist/commands/opencode-chip-mission.js.map +0 -1
  418. package/dist/commands/opencode-chip-store.d.ts +0 -72
  419. package/dist/commands/opencode-chip-store.js.map +0 -1
  420. package/dist/commands/opencode-chip.d.ts +0 -3
  421. package/dist/commands/opencode-chip.js.map +0 -1
  422. package/dist/commands/opencode-goals.d.ts +0 -5
  423. package/dist/commands/opencode-goals.js.map +0 -1
  424. package/dist/commands/opencode-interrupt.d.ts +0 -34
  425. package/dist/commands/opencode-interrupt.js.map +0 -1
  426. package/dist/commands/opencode-relay.d.ts +0 -144
  427. package/dist/commands/opencode-relay.js.map +0 -1
  428. package/dist/commands/opencode-watch.d.ts +0 -17
  429. package/dist/commands/opencode-watch.js.map +0 -1
  430. package/dist/commands/os-primer-reminder.d.ts +0 -14
  431. package/dist/commands/os-primer-reminder.js.map +0 -1
  432. package/dist/commands/parity.d.ts +0 -20
  433. package/dist/commands/parity.js.map +0 -1
  434. package/dist/commands/pipe-wrap.d.ts +0 -97
  435. package/dist/commands/pipe-wrap.js.map +0 -1
  436. package/dist/commands/poll-registry.d.ts +0 -56
  437. package/dist/commands/poll-registry.js.map +0 -1
  438. package/dist/commands/procedure-reminder.d.ts +0 -8
  439. package/dist/commands/procedure-reminder.js.map +0 -1
  440. package/dist/commands/procedure.d.ts +0 -15
  441. package/dist/commands/procedure.js.map +0 -1
  442. package/dist/commands/project.d.ts +0 -16
  443. package/dist/commands/project.js.map +0 -1
  444. package/dist/commands/reminder-registry.d.ts +0 -47
  445. package/dist/commands/reminder-registry.js.map +0 -1
  446. package/dist/commands/reminder-types.d.ts +0 -208
  447. package/dist/commands/reminder-types.js.map +0 -1
  448. package/dist/commands/search-guard.d.ts +0 -18
  449. package/dist/commands/search-guard.js.map +0 -1
  450. package/dist/commands/session.d.ts +0 -8
  451. package/dist/commands/session.js.map +0 -1
  452. package/dist/commands/setup-reminder.d.ts +0 -9
  453. package/dist/commands/setup-reminder.js.map +0 -1
  454. package/dist/commands/shell-dialect-guard.d.ts +0 -25
  455. package/dist/commands/shell-dialect-guard.js.map +0 -1
  456. package/dist/commands/skill-gain-reminder.d.ts +0 -17
  457. package/dist/commands/skill-gain-reminder.js.map +0 -1
  458. package/dist/commands/skill-mirror-reminder.d.ts +0 -10
  459. package/dist/commands/skill-mirror-reminder.js.map +0 -1
  460. package/dist/commands/skill.d.ts +0 -1
  461. package/dist/commands/skill.js.map +0 -1
  462. package/dist/commands/skillgain.d.ts +0 -12
  463. package/dist/commands/skillgain.js.map +0 -1
  464. package/dist/commands/sms.d.ts +0 -11
  465. package/dist/commands/sms.js.map +0 -1
  466. package/dist/commands/state-trigger.d.ts +0 -103
  467. package/dist/commands/state-trigger.js.map +0 -1
  468. package/dist/commands/status.d.ts +0 -69
  469. package/dist/commands/status.js.map +0 -1
  470. package/dist/commands/version-reminder.d.ts +0 -27
  471. package/dist/commands/version-reminder.js.map +0 -1
  472. package/dist/commands/watcher-registry.d.ts +0 -121
  473. package/dist/commands/watcher-registry.js.map +0 -1
  474. package/dist/crush/adaptive-sizer.d.ts +0 -40
  475. package/dist/crush/adaptive-sizer.js.map +0 -1
  476. package/dist/crush/code-compressor.d.ts +0 -61
  477. package/dist/crush/code-compressor.js.map +0 -1
  478. package/dist/crush/crush-keywords.d.ts +0 -40
  479. package/dist/crush/crush-keywords.js.map +0 -1
  480. package/dist/crush/crush-types.d.ts +0 -38
  481. package/dist/crush/crush-types.js.map +0 -1
  482. package/dist/crush/index.d.ts +0 -17
  483. package/dist/crush/index.js.map +0 -1
  484. package/dist/crush/json-crusher.d.ts +0 -38
  485. package/dist/crush/json-crusher.js.map +0 -1
  486. package/dist/crush/json-detectors.d.ts +0 -48
  487. package/dist/crush/json-detectors.js.map +0 -1
  488. package/dist/crush/log-compressor.d.ts +0 -60
  489. package/dist/crush/log-compressor.js.map +0 -1
  490. package/dist/crush/search-compressor.d.ts +0 -60
  491. package/dist/crush/search-compressor.js.map +0 -1
  492. package/dist/delivery-config.d.ts +0 -35
  493. package/dist/delivery-config.js.map +0 -1
  494. package/dist/delivery-lifecycle.d.ts +0 -3
  495. package/dist/delivery-lifecycle.js.map +0 -1
  496. package/dist/doc-mirror-client.d.ts +0 -56
  497. package/dist/doc-mirror-client.js.map +0 -1
  498. package/dist/docptr-refs.d.ts +0 -37
  499. package/dist/docptr-refs.js.map +0 -1
  500. package/dist/email-pull.d.ts +0 -106
  501. package/dist/email-pull.js.map +0 -1
  502. package/dist/email-send.d.ts +0 -75
  503. package/dist/email-send.js.map +0 -1
  504. package/dist/equipped-loadouts-cache.d.ts +0 -20
  505. package/dist/equipped-loadouts-cache.js.map +0 -1
  506. package/dist/fix-trigger.d.ts +0 -63
  507. package/dist/fix-trigger.js.map +0 -1
  508. package/dist/guard.d.ts +0 -129
  509. package/dist/guard.js.map +0 -1
  510. package/dist/harness.d.ts +0 -6
  511. package/dist/harness.js.map +0 -1
  512. package/dist/hook-runtime.d.ts +0 -22
  513. package/dist/hook-runtime.js.map +0 -1
  514. package/dist/hook.d.ts +0 -8
  515. package/dist/hook.js.map +0 -1
  516. package/dist/inbox-attachments.d.ts +0 -37
  517. package/dist/inbox-attachments.js.map +0 -1
  518. package/dist/index.d.ts +0 -9
  519. package/dist/index.js.map +0 -1
  520. package/dist/inline-atom-background.d.ts +0 -9
  521. package/dist/inline-atom-background.js.map +0 -1
  522. package/dist/inline-atom-episode.d.ts +0 -85
  523. package/dist/inline-atom-episode.js.map +0 -1
  524. package/dist/inline-atom-hook.d.ts +0 -22
  525. package/dist/inline-atom-hook.js.map +0 -1
  526. package/dist/inline-atom-worker.d.ts +0 -2
  527. package/dist/inline-atom-worker.js.map +0 -1
  528. package/dist/inline-atom.d.ts +0 -52
  529. package/dist/inline-atom.js.map +0 -1
  530. package/dist/mechanic-friction.d.ts +0 -82
  531. package/dist/mechanic-friction.js.map +0 -1
  532. package/dist/mechanic-role.d.ts +0 -20
  533. package/dist/mechanic-role.js.map +0 -1
  534. package/dist/native-skill-adoption.d.ts +0 -45
  535. package/dist/native-skill-adoption.js.map +0 -1
  536. package/dist/native-skill-mirror.d.ts +0 -50
  537. package/dist/native-skill-mirror.js.map +0 -1
  538. package/dist/native-skill-pending.d.ts +0 -44
  539. package/dist/native-skill-pending.js.map +0 -1
  540. package/dist/opencode-plugin-crush.d.ts +0 -137
  541. package/dist/opencode-plugin-crush.js.map +0 -1
  542. package/dist/opencode-plugin-helpers.d.ts +0 -200
  543. package/dist/opencode-plugin-helpers.js.map +0 -1
  544. package/dist/opencode-plugin-png.d.ts +0 -151
  545. package/dist/opencode-plugin-png.js.map +0 -1
  546. package/dist/opencode-plugin.d.ts +0 -93
  547. package/dist/opencode-plugin.js.map +0 -1
  548. package/dist/proc.d.ts +0 -35
  549. package/dist/proc.js.map +0 -1
  550. package/dist/procedure-run.d.ts +0 -51
  551. package/dist/procedure-run.js.map +0 -1
  552. package/dist/procedure-runtime.d.ts +0 -28
  553. package/dist/procedure-runtime.js.map +0 -1
  554. package/dist/procedure-shadow.d.ts +0 -31
  555. package/dist/procedure-shadow.js.map +0 -1
  556. package/dist/procedure-watch.d.ts +0 -155
  557. package/dist/procedure-watch.js.map +0 -1
  558. package/dist/procedure.d.ts +0 -164
  559. package/dist/procedure.js.map +0 -1
  560. package/dist/project-anchor.d.ts +0 -110
  561. package/dist/project-anchor.js.map +0 -1
  562. package/dist/reminder-injector.d.ts +0 -3
  563. package/dist/reminder-injector.js.map +0 -1
  564. package/dist/secret-scrubber.d.ts +0 -48
  565. package/dist/secret-scrubber.js.map +0 -1
  566. package/dist/session-id.d.ts +0 -98
  567. package/dist/session-id.js.map +0 -1
  568. package/dist/skill-activation-manifest.d.ts +0 -37
  569. package/dist/skill-activation-manifest.js.map +0 -1
  570. package/dist/skill-landing.d.ts +0 -88
  571. package/dist/skill-landing.js.map +0 -1
  572. package/dist/skill-mirror-client.d.ts +0 -59
  573. package/dist/skill-mirror-client.js.map +0 -1
  574. package/dist/skill-mirror-files.d.ts +0 -6
  575. package/dist/skill-mirror-files.js.map +0 -1
  576. package/dist/skill-staleness.d.ts +0 -57
  577. package/dist/skill-staleness.js.map +0 -1
  578. package/dist/turn-provenance.d.ts +0 -18
  579. package/dist/turn-provenance.js.map +0 -1
  580. package/dist/windows-shims.d.ts +0 -46
  581. package/dist/windows-shims.js.map +0 -1
  582. package/dist/worktree-state.d.ts +0 -14
  583. package/dist/worktree-state.js.map +0 -1
@@ -67,4 +67,3 @@ async function main() {
67
67
  main().catch(() => {
68
68
  process.exit(0);
69
69
  });
70
- //# sourceMappingURL=inline-atom-worker.js.map
@@ -253,4 +253,3 @@ function prepareInlineAtomContext(params) {
253
253
  function buildInlineAtomContext(params) {
254
254
  return prepareInlineAtomContext(params).text;
255
255
  }
256
- //# sourceMappingURL=inline-atom.js.map
@@ -302,4 +302,3 @@ async function postMechanicReply(apiUrl, apiKey, args, cwd = process.cwd()) {
302
302
  return json;
303
303
  }
304
304
  exports.__test__ = { buildMechanicLiveBody };
305
- //# sourceMappingURL=mechanic-friction.js.map
@@ -104,4 +104,3 @@ function readMechanicRole(cwd) {
104
104
  const anchor = (0, project_anchor_1.readAnchor)(cwd);
105
105
  return { anchor, isMechanic: isMechanicProject(anchor), mechanicSessionId: readMechanicSessionId(anchor) };
106
106
  }
107
- //# sourceMappingURL=mechanic-role.js.map
@@ -237,4 +237,3 @@ function installAdoptedNativeSkill(params) {
237
237
  writeState(params.root, state);
238
238
  return 'installed';
239
239
  }
240
- //# sourceMappingURL=native-skill-adoption.js.map
@@ -310,6 +310,47 @@ function nativeCreationLocations(platform) {
310
310
  }
311
311
  return '`~/.claude/skills/<new-name>/SKILL.md` (global) or `<repo>/.claude/skills/<new-name>/SKILL.md` (project)';
312
312
  }
313
+ function renderChangeSkillLine(params) {
314
+ const exportCommand = `greprag skill mirror export ${params.skillName} ${params.identityArg} --to <dir>`;
315
+ const applyCommand = `greprag skill mirror apply <dir> --skill ${params.skillName} ${params.editArgs} --expected-hash <exported-hash>`;
316
+ if (params.platform === 'codex') {
317
+ return `- **Change this skill:** run \`greprag load skill-change\`, then \`${exportCommand}\`; patch the exported Markdown files non-interactively; run \`${applyCommand}\`; then \`${params.syncCommand}\`; then verify with \`${params.loadCommand}\`.`;
318
+ }
319
+ return `- **Change this skill:** run \`greprag load skill-change\`, then \`greprag skill edit ${params.skillName} ${params.editArgs}\`, then \`${params.syncCommand}\`, then verify with \`${params.loadCommand}\`.`;
320
+ }
321
+ function renderEditingSection(platform, params) {
322
+ const exportCommand = `greprag skill mirror export ${params.skillName} ${params.identityArg} --to <dir>`;
323
+ const applyCommand = `greprag skill mirror apply <dir> --skill ${params.skillName} ${params.editArgs} --expected-hash <exported-hash>`;
324
+ if (platform === 'codex') {
325
+ return `## Editing
326
+
327
+ Codex agents must use the non-interactive mirror path:
328
+
329
+ \`\`\`bash
330
+ ${exportCommand}
331
+ # patch the exported Markdown files with normal file edits
332
+ ${applyCommand}
333
+ \`\`\`
334
+
335
+ Do not launch an interactive editor from Codex. If using \`greprag skill edit\` as an export helper, include \`--no-open\` and run the printed apply command after patching.
336
+ `;
337
+ }
338
+ return `## Editing
339
+
340
+ To edit this skill, run the guarded editor flow:
341
+
342
+ \`\`\`bash
343
+ greprag skill edit ${params.skillName} ${params.editArgs}
344
+ \`\`\`
345
+
346
+ Manual path:
347
+
348
+ \`\`\`bash
349
+ ${exportCommand}
350
+ ${applyCommand}
351
+ \`\`\`
352
+ `;
353
+ }
313
354
  function renderAdapterBody(platform, skill) {
314
355
  const skillName = skill.skillName;
315
356
  const skillId = canonicalSkillId(skill);
@@ -324,6 +365,16 @@ function renderAdapterBody(platform, skill) {
324
365
  : `- **Create another skill:** create a normal native skill at ${creationLocations}; run \`${syncCommand} --dry-run\` and confirm it says \`adopt\`; then run \`${syncCommand}\`. GrepRAG adopts it as canon and replaces the native package with an adapter.`;
325
366
  const companions = skill.files.map(file => file.path).filter(relative => relative !== 'SKILL.md').sort();
326
367
  const harnessArg = `--harness ${platform}`;
368
+ const loadCommand = `greprag load ${skillName} ${identityArg} ${harnessArg}`;
369
+ const changeSkillLine = renderChangeSkillLine({
370
+ platform,
371
+ skillName,
372
+ editArgs,
373
+ identityArg,
374
+ syncCommand,
375
+ loadCommand,
376
+ });
377
+ const editingSection = renderEditingSection(platform, { skillName, editArgs, identityArg });
327
378
  const companionLines = companions.length
328
379
  ? companions.map(relative => `- \`greprag load ${skillName} ${relative} ${identityArg} ${harnessArg}\``).join('\n')
329
380
  : '- No companion docs are mirrored into this native adapter.';
@@ -337,8 +388,8 @@ Do not add or maintain project-state/doc pointers here. Current project state be
337
388
 
338
389
  Required action chains:
339
390
 
340
- - **Use this skill:** run \`greprag load ${skillName} ${identityArg} ${harnessArg}\` before acting.
341
- - **Change this skill:** run \`greprag load skill-change\`, then \`greprag skill edit ${skillName} ${editArgs}\`, then \`${syncCommand}\`, then verify with \`greprag load ${skillName} ${identityArg} ${harnessArg}\`.
391
+ - **Use this skill:** run \`${loadCommand}\` before acting.
392
+ ${changeSkillLine}
342
393
  ${creationLine}
343
394
 
344
395
  Authority: ${skillId}
@@ -346,20 +397,7 @@ Source binding: ${sourceBindingState(skill)}
346
397
  Canonical content hash: ${canonicalContentHash(skill)}
347
398
  ${typeof skill.revision === 'number' ? `Mirror revision: ${skill.revision}` : 'Mirror revision: unknown'}
348
399
 
349
- ## Editing
350
-
351
- To edit this skill, run the guarded editor flow:
352
-
353
- \`\`\`bash
354
- greprag skill edit ${skillName} ${editArgs}
355
- \`\`\`
356
-
357
- Manual path:
358
-
359
- \`\`\`bash
360
- greprag skill mirror export ${skillName} ${identityArg} --to <dir>
361
- greprag skill mirror apply <dir> --skill ${skillName} ${editArgs} --expected-hash <exported-hash>
362
- \`\`\`
400
+ ${editingSection}
363
401
 
364
402
  Snapshot rollback:
365
403
 
@@ -637,4 +675,3 @@ function nativeSkillMirrorSummary(result) {
637
675
  + (result.skipped ? `, ${result.skipped} unmanaged collision(s) preserved (GrepRAG canon was not written over the local skill)` : '')
638
676
  + (result.blocked ? `, ${result.blocked} diverged managed adapter(s) preserved — canonical skill remains in GrepRAG; inspect the local changes, then remove or relocate them and rerun \`greprag skill mirror sync\`` : '');
639
677
  }
640
- //# sourceMappingURL=native-skill-mirror.js.map
@@ -252,4 +252,3 @@ function capturePendingNativeSkills(params) {
252
252
  touchedSkillCount: touched.length,
253
253
  };
254
254
  }
255
- //# sourceMappingURL=native-skill-pending.js.map
@@ -275,4 +275,3 @@ function crushMessages(messages, opts) {
275
275
  }
276
276
  return stats;
277
277
  }
278
- //# sourceMappingURL=opencode-plugin-crush.js.map
@@ -509,4 +509,3 @@ async function buildRecapBody(apiUrl, apiKey, anchor, now = new Date()) {
509
509
  }
510
510
  return parts.join('\n');
511
511
  }
512
- //# sourceMappingURL=opencode-plugin-helpers.js.map
@@ -272,4 +272,3 @@ function recodeMessagesToPng(messages, opts) {
272
272
  : 'threshold crossed but no recodable text parts (all below per-part floor or already marked)';
273
273
  return stats;
274
274
  }
275
- //# sourceMappingURL=opencode-plugin-png.js.map
@@ -2046,7 +2046,7 @@ function buildBootstrapFrictionReminder(env) {
2046
2046
  function buildMechanicAnnounce() {
2047
2047
  return [
2048
2048
  "[Fix reflex \u2014 friction is fixed at the MOMENT it happens, one chip per unit (grepragOS law; full doctrine: `greprag load os`).]",
2049
- "WHEN friction happens \u2014 repeated yourself, fought a tool, got corrected >=2x on the same thing, rediscovered something already known, or hit a setup/toolchain failure not caused by code you just edited \u2014 spawn its fix chip NOW, then keep working. One unit = one chip; adjacent friction gets its own spawn. Never queue friction for later.",
2049
+ "WHEN friction happens \u2014 repeated yourself, fought a tool, got corrected >=2x on the same thing, rediscovered something already known, or hit a setup/toolchain failure not caused by code you just edited \u2014 spawn its fix chip NOW, then keep working. Ordinary misunderstanding or misreading user intent is not friction unless it repeats or exposes a durable doctrine/harness/injection/env/code failure. One unit = one chip; adjacent friction gets its own spawn. Never queue friction for later.",
2050
2050
  'TYPE = durable repair surface: harness=hooks/watchers/task dispatch; doctrine=greprag load/skills/AGENTS; injection=recap/Capture/doc-pointer/stateful injection; env=bootstrap/deps/scripts/worktree setup; code=product/source behavior. Use: `greprag fix spawn --type <type> "<one unit>"`.',
2051
2051
  "WORKSPACE ROUTING: `fix spawn` detects usable Git history before dispatch \u2014 Git uses an isolated worktree; non-Git, unavailable Git, or no commit uses the project-local task with serialized writes. No fail-then-fallback attempt.",
2052
2052
  "THE CHIP'S CONTRACT (it self-enforces; you just spawn): identify the exact friction \u2192 make the smallest durable root-cause fix \u2192 explain and verify it \u2192 checkpoint \u2192 hand it to the mission delivery owner. With no live parent and a full-goal mission, the chip becomes delivery owner and follows the repo profile. No second lifecycle approval.",
@@ -2230,7 +2230,16 @@ var collisionMatchModule = {
2230
2230
  function buildVersionAnnounce(current, latest) {
2231
2231
  return [
2232
2232
  `[greprag \u2014 a new release is out: v${latest} (you are on v${current}).]`,
2233
- `Upgrade: \`npm i -g greprag@latest\`. New behavior + fixes land on your next session.`
2233
+ `Upgrade: \`npm i -g greprag@latest\`, then \`greprag status\`. New behavior + fixes land once the active shell shim resolves to the new install.`
2234
+ ].join("\n");
2235
+ }
2236
+ function buildActiveCommandDriftAnnounce(drift) {
2237
+ const active = drift.activeVersion ? `v${drift.activeVersion}` : "an unknown version";
2238
+ const missing = drift.missingFiles.length ? ` and is missing ${drift.missingFiles.join(", ")}` : "";
2239
+ return [
2240
+ `[greprag \u2014 active command drift detected.]`,
2241
+ `The startup hook is running greprag v${drift.current}, but \`greprag\` on PATH resolves to ${active} at ${drift.shimPath}${missing}.`,
2242
+ `Run \`greprag doctor --inspect\`; if it reports stale shims, run \`greprag doctor --yes\`. If no current shim exists, run \`npm i -g greprag@latest\`.`
2234
2243
  ].join("\n");
2235
2244
  }
2236
2245
  function buildLoadoutUpdateAnnounce(from, needed, current) {
@@ -2248,6 +2257,8 @@ var versionUpgradeModule = {
2248
2257
  const lo = env.loadoutUpdateRequired;
2249
2258
  if (lo && lo.needed && lo.current)
2250
2259
  return buildLoadoutUpdateAnnounce(lo.from, lo.needed, lo.current);
2260
+ if (env.activeCommandDrift)
2261
+ return buildActiveCommandDriftAnnounce(env.activeCommandDrift);
2251
2262
  const u = env.updateAvailable;
2252
2263
  if (!u || !u.current || !u.latest)
2253
2264
  return null;
@@ -2407,7 +2418,7 @@ var loadoutRegistrarModule = {
2407
2418
  // src/commands/delivery-reminder.ts
2408
2419
  function coordinationLine(platform) {
2409
2420
  if (platform === "codex") {
2410
- return "Codex coordination: discover local peers with list_threads; inspect/message them with native thread tools, and use GrepRAG for cross-harness peers.";
2421
+ return "Codex coordination: call list_threads unfiltered, filter to this repo/worktree, inspect matching tasks, then send_message_to_thread with your branch/commit/status before merge/push/deploy. Use GrepRAG only for cross-harness peers.";
2411
2422
  }
2412
2423
  if (platform === "claude-code") {
2413
2424
  return "Claude Code coordination: discover peers with `greprag inbox watchers --json`, send to the exact session, and keep the Monitor armed for replies.";
@@ -1148,4 +1148,3 @@ module.exports = {
1148
1148
  id: 'greprag-memory',
1149
1149
  server: GrepRAGMemoryPlugin,
1150
1150
  };
1151
- //# sourceMappingURL=opencode-plugin.js.map
package/dist/proc.js CHANGED
@@ -42,4 +42,3 @@ function safeSpawnSync(command, args = [], options) {
42
42
  function safeExecFileSync(file, args = [], options) {
43
43
  return (0, child_process_1.execFileSync)(file, args, { windowsHide: true, ...options });
44
44
  }
45
- //# sourceMappingURL=proc.js.map
@@ -183,4 +183,3 @@ function currentReviewEvidence(run, fingerprint, strategy) {
183
183
  });
184
184
  return found ?? null;
185
185
  }
186
- //# sourceMappingURL=procedure-run.js.map
@@ -147,4 +147,3 @@ function runProcedurePromptCheck(params) {
147
147
  return { mode: 'none' };
148
148
  }
149
149
  }
150
- //# sourceMappingURL=procedure-runtime.js.map
@@ -119,4 +119,3 @@ function recordProcedureShadowOutcome(params) {
119
119
  candidate: params.candidate,
120
120
  });
121
121
  }
122
- //# sourceMappingURL=procedure-shadow.js.map
@@ -352,4 +352,3 @@ function openWatchIfIdle(projectId, verb, phase, shadowRunId) {
352
352
  writeProcedureWatch(projectId, openWatch(verb, phase, undefined, shadowRunId));
353
353
  return true;
354
354
  }
355
- //# sourceMappingURL=procedure-watch.js.map
package/dist/procedure.js CHANGED
@@ -421,4 +421,3 @@ function activeProcedureAnnounces(store) {
421
421
  }
422
422
  return lines;
423
423
  }
424
- //# sourceMappingURL=procedure.js.map
@@ -458,4 +458,3 @@ function setProjectRole(cwd, role) {
458
458
  fs.writeFileSync(targetPath, JSON.stringify(raw, null, 2) + '\n');
459
459
  return { anchor: readAnchor(cwd), anchorPath: targetPath };
460
460
  }
461
- //# sourceMappingURL=project-anchor.js.map
@@ -209,4 +209,3 @@ async function injectReminders(input, cfg, short, platform = 'claude-code') {
209
209
  return null;
210
210
  }
211
211
  }
212
- //# sourceMappingURL=reminder-injector.js.map
@@ -365,4 +365,3 @@ function scrubObject(obj, valueMap) {
365
365
  }
366
366
  return obj;
367
367
  }
368
- //# sourceMappingURL=secret-scrubber.js.map
@@ -210,4 +210,3 @@ function handleSessionIdHook(input) {
210
210
  };
211
211
  process.stdout.write(JSON.stringify(payload) + '\n');
212
212
  }
213
- //# sourceMappingURL=session-id.js.map
@@ -151,4 +151,3 @@ function activationFromApiRows(params) {
151
151
  }));
152
152
  return buildMirroredSkillActivation(entries, readNativeSkillNames(params));
153
153
  }
154
- //# sourceMappingURL=skill-activation-manifest.js.map
@@ -217,4 +217,3 @@ function landPendingGains(pending, cwd, homeDir, projectName) {
217
217
  }
218
218
  return { report, statusUpdates };
219
219
  }
220
- //# sourceMappingURL=skill-landing.js.map
@@ -334,4 +334,3 @@ async function maybeMirrorSkill(params) {
334
334
  return 'skipped';
335
335
  }
336
336
  }
337
- //# sourceMappingURL=skill-mirror-client.js.map
@@ -48,4 +48,3 @@ function isSafeMirroredSkillFile(file) {
48
48
  return true;
49
49
  return /^docs\/(?!.*(?:^|\/)\.\.(?:\/|$))[A-Za-z0-9._\/-]+\.md$/.test(file.path);
50
50
  }
51
- //# sourceMappingURL=skill-mirror-files.js.map
@@ -374,7 +374,8 @@ function formatSkillNoSourceBinding(skillName) {
374
374
  `/${skillName} has no source bindings.`,
375
375
  'Authority: canonical mirrored payload exists in GrepRAG; local Codex/Claude/OpenCode SKILL.md files are generated adapter-only mirrors.',
376
376
  'Do not edit a local native adapter as skill content.',
377
- `Safe edit path: \`greprag skill edit ${skillName}\` (wraps export -> editor -> hash-checked apply). Manual path: \`greprag skill mirror export ${skillName} --to <dir>\`, edit, then apply with the exported hash.`,
377
+ `Agent-safe edit path: \`greprag skill mirror export ${skillName} --to <dir>\`, patch the exported Markdown files non-interactively, then \`greprag skill mirror apply <dir> --skill ${skillName} --expected-hash <exported-hash>\`.`,
378
+ `Human editor shortcut: \`greprag skill edit ${skillName}\`; Codex auto-skips the editor, and agents may pass \`--no-open\` explicitly.`,
378
379
  `After binding a real source repo, stamp it with \`greprag skill source stamp ${skillName} --project <p> --path <rel>\`.`,
379
380
  ].join('\n') + '\n';
380
381
  }
@@ -401,4 +402,3 @@ function stampSourceBinding(params) {
401
402
  const others = parseSkillSourceBindings(params.skillMd).filter(b => b.project !== params.project);
402
403
  return { content: upsertSkillSourceBindings(params.skillMd, [...others, binding]), binding };
403
404
  }
404
- //# sourceMappingURL=skill-staleness.js.map
@@ -53,4 +53,3 @@ function provenanceElisionMarker(p, hint) {
53
53
  const tail = hint ? ` (${hint})` : '';
54
54
  return `[greprag: harness-injected ${label}${tail} elided from episodic capture]`;
55
55
  }
56
- //# sourceMappingURL=turn-provenance.js.map
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
- /** Windows shim audit — detect (and let doctor repair) stale `greprag.cmd` /
3
- * `greprag-hook.cmd` shims that resolve to a DIFFERENT install than the
4
- * current CLI.
2
+ /** Windows shim audit — detect (and let doctor repair) stale PowerShell/CMD
3
+ * `greprag*` shims that resolve to a DIFFERENT install than the current CLI.
5
4
  *
6
5
  * WHY: `npm i -g greprag@latest` upgrades the npm-global shim, but any
7
6
  * hand-rolled `~/bin` shim (or an old bundled-folder copy referenced by a
@@ -52,38 +51,44 @@ var __importStar = (this && this.__importStar) || (function () {
52
51
  Object.defineProperty(exports, "__esModule", { value: true });
53
52
  exports.parseShimTarget = parseShimTarget;
54
53
  exports.shimPackageVersion = shimPackageVersion;
54
+ exports.missingRequiredShimFiles = missingRequiredShimFiles;
55
55
  exports.auditWindowsShims = auditWindowsShims;
56
+ exports.shimNeedsRepair = shimNeedsRepair;
56
57
  exports.planShimRepairs = planShimRepairs;
57
58
  exports.repairStaleShims = repairStaleShims;
58
59
  const fs = __importStar(require("fs"));
59
60
  const path = __importStar(require("path"));
60
61
  const child_process_1 = require("child_process");
61
62
  /** Extract the script a .cmd shim executes. Handles the npm shim shape
62
- * (`"%dp0%\node_modules\greprag\dist\hook.js"`), absolute .js paths, and
63
- * one-line `call "<other>.cmd"` forwarders. Pure. */
63
+ * (`"%dp0%\node_modules\greprag\dist\hook.js"`), the npm PowerShell shim
64
+ * shape (`"$basedir/node_modules/greprag/dist/index.js"`), absolute .js
65
+ * paths, and one-line shim forwarders. Pure. */
64
66
  function parseShimTarget(cmdText, cmdDir) {
65
- // Strip REM comment lines — a forwarder's provenance comment may name paths.
66
- const text = cmdText.split(/\r?\n/).filter(l => !/^\s*(REM|::)\s/i.test(l)).join('\n');
67
- // Quoted or bare tokens ending .js or .cmd that mention greprag.
68
- const tokens = [...text.matchAll(/"([^"]+\.(?:js|cmd))"|(\S+\.(?:js|cmd))\b/gi)]
67
+ // Strip comments — a forwarder's provenance comment may name paths.
68
+ const text = cmdText.split(/\r?\n/).filter(l => !/^\s*(REM|::|#)\s/i.test(l)).join('\n');
69
+ // Quoted or bare tokens ending .js/.cmd/.ps1 that mention greprag.
70
+ const tokens = [...text.matchAll(/"([^"]+\.(?:js|cmd|ps1))"|(\S+\.(?:js|cmd|ps1))\b/gi)]
69
71
  .map(m => (m[1] || m[2] || '').trim())
70
72
  .filter(t => /greprag/i.test(t));
71
73
  if (tokens.length === 0)
72
74
  return null;
73
- // Prefer a .js entrypoint over a forwarded .cmd; first match otherwise.
75
+ // Prefer a .js entrypoint over a forwarded shim; first match otherwise.
74
76
  const pick = tokens.find(t => /\.js$/i.test(t)) || tokens[0];
75
- const expanded = pick.replace(/%~?dp0%?\\?/gi, cmdDir + path.sep);
77
+ const expanded = pick
78
+ .replace(/%~?dp0%?\\?/gi, cmdDir + path.sep)
79
+ .replace(/\$\{?basedir\}?/gi, cmdDir);
76
80
  return path.normalize(expanded);
77
81
  }
78
- /** Version of the greprag package that owns `scriptPath` — nearest
79
- * package.json named `greprag` walking up (max 6 levels). Pure I/O read. */
80
- function shimPackageVersion(scriptPath) {
82
+ /** GrepRAG package that owns `scriptPath` — nearest package.json named
83
+ * `greprag` walking up (max 6 levels). Pure I/O read. */
84
+ function shimPackageInfo(scriptPath) {
81
85
  let dir = path.dirname(scriptPath);
82
86
  for (let i = 0; i < 6; i++) {
83
87
  try {
84
88
  const pkg = JSON.parse(fs.readFileSync(path.join(dir, 'package.json'), 'utf-8'));
85
- if (pkg?.name === 'greprag' && typeof pkg.version === 'string')
86
- return pkg.version;
89
+ if (pkg?.name === 'greprag' && typeof pkg.version === 'string') {
90
+ return { root: dir, version: pkg.version };
91
+ }
87
92
  }
88
93
  catch { /* keep walking */ }
89
94
  const up = path.dirname(dir);
@@ -93,6 +98,19 @@ function shimPackageVersion(scriptPath) {
93
98
  }
94
99
  return null;
95
100
  }
101
+ /** Version of the greprag package that owns `scriptPath`. Pure I/O read. */
102
+ function shimPackageVersion(scriptPath) {
103
+ return shimPackageInfo(scriptPath)?.version ?? null;
104
+ }
105
+ function requiredFilesForShim(name) {
106
+ return name === 'greprag' ? ['dist/commands/delivery.js'] : [];
107
+ }
108
+ function missingRequiredShimFiles(scriptPath, name) {
109
+ const info = shimPackageInfo(scriptPath);
110
+ if (!info)
111
+ return [];
112
+ return requiredFilesForShim(name).filter(file => !fs.existsSync(path.join(info.root, file)));
113
+ }
96
114
  /** Resolve one shim: follow up to 3 .cmd forwarding hops, then read the
97
115
  * owning package version. */
98
116
  function resolveShim(name, shimPath, active, installed) {
@@ -110,59 +128,134 @@ function resolveShim(name, shimPath, active, installed) {
110
128
  if (!t)
111
129
  break;
112
130
  target = t;
113
- if (!/\.cmd$/i.test(t))
131
+ if (!/\.(cmd|ps1)$/i.test(t))
114
132
  break; // reached a .js entrypoint
115
- current = t; // forwarded to another .cmd — follow
133
+ current = t; // forwarded to another shim — follow
116
134
  }
117
- const version = target ? shimPackageVersion(target) : null;
135
+ const info = target ? shimPackageInfo(target) : null;
136
+ const missingFiles = info ? requiredFilesForShim(name).filter(file => !fs.existsSync(path.join(info.root, file))) : [];
118
137
  return {
119
- name, shimPath, active, target, version,
120
- stale: version !== null && version !== installed,
121
- unresolvable: target === null || version === null,
138
+ name,
139
+ extension: path.extname(shimPath).toLowerCase() === '.ps1' ? '.ps1' : '.cmd',
140
+ shimPath,
141
+ active,
142
+ target,
143
+ version: info?.version ?? null,
144
+ stale: info !== null && info.version !== installed,
145
+ incomplete: missingFiles.length > 0,
146
+ missingFiles,
147
+ unresolvable: target === null || info === null,
122
148
  };
123
149
  }
124
- /** Every `greprag` / `greprag-hook` .cmd on PATH, in PATH order, with the
125
- * version each actually executes. Empty off-Windows. */
150
+ const SHIM_NAMES = ['greprag', 'greprag-hook', 'greprag-codex-hook'];
151
+ const SHIM_EXTENSIONS = ['.ps1', '.cmd'];
152
+ function pathDirs() {
153
+ const seen = new Set();
154
+ const out = [];
155
+ for (const raw of (process.env.PATH || '').split(path.delimiter)) {
156
+ const dir = raw.trim().replace(/^"|"$/g, '');
157
+ if (!dir)
158
+ continue;
159
+ const key = dir.toLowerCase();
160
+ if (seen.has(key))
161
+ continue;
162
+ seen.add(key);
163
+ out.push(dir);
164
+ }
165
+ return out;
166
+ }
167
+ function shimHits(name) {
168
+ const out = [];
169
+ for (const dir of pathDirs()) {
170
+ for (const ext of SHIM_EXTENSIONS) {
171
+ const candidate = path.join(dir, `${name}${ext}`);
172
+ try {
173
+ if (fs.existsSync(candidate))
174
+ out.push(candidate);
175
+ }
176
+ catch { /* ignore unreadable PATH entries */ }
177
+ }
178
+ }
179
+ return out;
180
+ }
181
+ /** Every `greprag*` PowerShell/CMD shim on PATH, in PowerShell resolution order,
182
+ * with the version each actually executes. Empty off-Windows. */
126
183
  function auditWindowsShims(installedVersion) {
127
184
  if (process.platform !== 'win32')
128
185
  return [];
129
186
  const out = [];
130
- for (const name of ['greprag', 'greprag-hook']) {
131
- let hits = [];
132
- try {
133
- hits = (0, child_process_1.execFileSync)('where.exe', [`${name}.cmd`], { encoding: 'utf-8' })
134
- .split(/\r?\n/).map(s => s.trim()).filter(Boolean);
187
+ for (const name of SHIM_NAMES) {
188
+ let hits = shimHits(name);
189
+ // Fallback for unusual PATHEXT/path behavior; keeps the old where.exe path.
190
+ if (hits.length === 0) {
191
+ try {
192
+ hits = (0, child_process_1.execFileSync)('where.exe', [`${name}.cmd`], { encoding: 'utf-8' })
193
+ .split(/\r?\n/).map(s => s.trim()).filter(Boolean);
194
+ }
195
+ catch { /* not found on PATH at all — nothing to audit */ }
135
196
  }
136
- catch { /* not found on PATH at all — nothing to audit */ }
137
197
  hits.forEach((p, i) => out.push(resolveShim(name, p, i === 0, installedVersion)));
138
198
  }
139
199
  return out;
140
200
  }
141
- /** Repair plan: each stale shim forwards to the first same-name shim on PATH
201
+ function shimNeedsRepair(shim) {
202
+ return shim.stale || shim.incomplete;
203
+ }
204
+ function canForward(from, to) {
205
+ if (from.extension === '.ps1')
206
+ return to.extension === '.ps1' || to.extension === '.cmd';
207
+ return to.extension === '.cmd';
208
+ }
209
+ /** Repair plan: each stale/incomplete shim forwards to the first same-name shim on PATH
142
210
  * that already resolves to the installed version. Pure over the audit. */
143
211
  function planShimRepairs(audits) {
144
- return audits.filter(a => a.stale).map(shim => {
145
- const healthy = audits.find(a => a.name === shim.name && !a.stale && !a.unresolvable && a.shimPath !== shim.shimPath);
212
+ return audits.filter(shimNeedsRepair).map(shim => {
213
+ const healthy = audits.find(a => a.name === shim.name
214
+ && !shimNeedsRepair(a)
215
+ && !a.unresolvable
216
+ && a.shimPath !== shim.shimPath
217
+ && canForward(shim, a));
146
218
  return { shim, forwardTo: healthy ? healthy.shimPath : null };
147
219
  });
148
220
  }
221
+ function describeProblem(shim) {
222
+ const parts = [];
223
+ if (shim.stale)
224
+ parts.push(`v${shim.version}`);
225
+ if (shim.incomplete)
226
+ parts.push(`missing ${shim.missingFiles.join(', ')}`);
227
+ return parts.length ? parts.join(', ') : 'unhealthy';
228
+ }
229
+ function writeForwarder(shim, forwardTo) {
230
+ if (shim.extension === '.ps1') {
231
+ fs.writeFileSync(shim.shimPath, [
232
+ '#!/usr/bin/env pwsh',
233
+ `# greprag doctor ${new Date().toISOString().slice(0, 10)}: was ${describeProblem(shim)}; forwarded to the current install.`,
234
+ `& "${forwardTo}" @args`,
235
+ 'exit $LASTEXITCODE',
236
+ '',
237
+ ].join('\r\n'));
238
+ return;
239
+ }
240
+ fs.writeFileSync(shim.shimPath, [
241
+ '@ECHO off',
242
+ `REM greprag doctor ${new Date().toISOString().slice(0, 10)}: was ${describeProblem(shim)}; forwarded to the current install.`,
243
+ `call "${forwardTo}" %*`,
244
+ '',
245
+ ].join('\r\n'));
246
+ }
149
247
  /** Rewrite each repairable stale shim as a one-line forwarder to its healthy
150
248
  * sibling. Returns human-readable result lines. */
151
249
  function repairStaleShims(repairs) {
152
250
  const lines = [];
153
251
  for (const r of repairs) {
154
252
  if (!r.forwardTo) {
155
- lines.push(`✗ ${r.shim.shimPath} is stale (v${r.shim.version}) and no current-version ${r.shim.name}.cmd exists on PATH to forward to — run \`npm i -g greprag@latest\`, then re-run doctor.`);
253
+ lines.push(`✗ ${r.shim.shimPath} is unhealthy (${describeProblem(r.shim)}) and no current ${r.shim.name} shim exists on PATH to forward to — run \`npm i -g greprag@latest\`, then re-run doctor.`);
156
254
  continue;
157
255
  }
158
256
  try {
159
- fs.writeFileSync(r.shim.shimPath, [
160
- '@ECHO off',
161
- `REM greprag doctor ${new Date().toISOString().slice(0, 10)}: was a stale v${r.shim.version} shim; forwarded to the current install.`,
162
- `call "${r.forwardTo}" %*`,
163
- '',
164
- ].join('\r\n'));
165
- lines.push(`✓ ${r.shim.shimPath} (was v${r.shim.version}) now forwards to ${r.forwardTo}`);
257
+ writeForwarder(r.shim, r.forwardTo);
258
+ lines.push(`✓ ${r.shim.shimPath} (was ${describeProblem(r.shim)}) now forwards to ${r.forwardTo}`);
166
259
  }
167
260
  catch (e) {
168
261
  lines.push(`✗ could not rewrite ${r.shim.shimPath}: ${e.message}`);
@@ -170,4 +263,3 @@ function repairStaleShims(repairs) {
170
263
  }
171
264
  return lines;
172
265
  }
173
- //# sourceMappingURL=windows-shims.js.map
@@ -58,4 +58,3 @@ function countMergedUnsweptWorktrees(cwd) {
58
58
  return 0; // missing git / non-repo / timeout / parse error — never fire
59
59
  }
60
60
  }
61
- //# sourceMappingURL=worktree-state.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "greprag",
3
- "version": "5.74.3",
3
+ "version": "5.74.5",
4
4
  "description": "GrepRAG — agent memory for Claude Code, Codex, and OpenCode.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -46,7 +46,7 @@ task.
46
46
 
47
47
  The Mechanic keeps the harness healthy. The loop is **friction → fix → repair**:
48
48
 
49
- - **friction** — a rough spot the agent or operator hit: a gotcha, a rediscovery, a repeated correction, churn, rework. Live friction becomes one `greprag fix spawn --type <type> "<unit>"` chip at the moment it happens.
49
+ - **friction** — a rough spot the agent or operator hit: a gotcha, a rediscovery, a repeated correction, churn, rework. Ordinary misunderstanding or misreading user intent is not friction unless it repeats or exposes a durable doctrine/harness/injection/env/code failure. Live friction becomes one `greprag fix spawn --type <type> "<unit>"` chip at the moment it happens.
50
50
  - **fix** — the repair mission or audit note. Live fixes are owned by spawned FIX chips; the queue remains for existing backlog and deliberate design-input notes.
51
51
  - **repair** — the fix wired in so it can't recur: a hook, a code change, or *surfacing it* (a doc line / a fact-seed / an injection). A repaired fix is done.
52
52
 
@@ -17,6 +17,7 @@ This is an internal bundled GrepRAG schema, not tenant-controlled skill content.
17
17
  - Bundled GrepRAG skill: edit `packages/cli/skill/<name>/`, never the installed artifact.
18
18
  - Mirrored/local skill: edit its canonical source, not the generated Codex/Claude/OpenCode adapter.
19
19
  - Unknown source: stop and identify the canonical source before editing.
20
+ - Codex/non-interactive harness: do not launch an editor. Use `greprag skill mirror export <skill> --to <dir>`, patch the exported Markdown files with file edits, then `greprag skill mirror apply <dir> --skill <skill> --expected-hash <exported-hash>`. If using `greprag skill edit` as the export helper, pass `--no-open`.
20
21
 
21
22
  ## Skill-Refresh Chips
22
23
 
@@ -1,22 +0,0 @@
1
- /** 8x8 monochrome bitmap font for the PNG archive renderer — printable
2
- * ASCII 32..126 (95 glyphs), one row byte per pixel row, LSB = leftmost.
3
- *
4
- * Data: font8x8_basic by Daniel Hepper (public domain), itself based on
5
- * Marcel Sondaar / IBM public-domain VGA fonts.
6
- * https://github.com/dhepper/font8x8 — embedded as hex so the renderer
7
- * has ZERO runtime deps (Node's built-in zlib does PNG compression).
8
- *
9
- * All 95 glyph bitmaps are pairwise distinct (verified at generation,
10
- * re-verified by tests/test-governed-compact.cjs), so pixel-level decode
11
- * back to text is unambiguous — the basis of the round-trip self-test.
12
- *
13
- * GENERATED from font8x8_basic.h — regenerate rather than hand-edit.
14
- */
15
- export declare const GLYPH_W = 8;
16
- export declare const GLYPH_H = 8;
17
- export declare const FIRST_CODE = 32;
18
- export declare const LAST_CODE = 126;
19
- /** Glyph rows (8 bytes) for a char code; null when outside 32..126. */
20
- export declare function glyphRows(code: number): number[] | null;
21
- export declare function codeForSignature(sigHex: string): number | null;
22
- export declare function signatureForRows(bytes: number[]): string;