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.
- package/dist/archive/glyph-font.js +0 -1
- package/dist/archive/page-renderer.js +0 -1
- package/dist/archive/png-codec.js +0 -1
- package/dist/archive/transcript-extract.js +0 -1
- package/dist/assistant-doctrine.js +0 -1
- package/dist/capture-manifest.js +0 -1
- package/dist/ccr-store.js +0 -1
- package/dist/claude-lifecycle-cutover.js +0 -1
- package/dist/codex-chip-hooks.js +0 -1
- package/dist/codex-delegation-dedupe.js +0 -1
- package/dist/codex-fast-hook.js +0 -1
- package/dist/codex-hook-events.js +0 -1
- package/dist/codex-notify-hook.js +0 -1
- package/dist/codex-prompt-cache.js +0 -1
- package/dist/codex-steering.js +0 -1
- package/dist/codex-store-background.js +0 -1
- package/dist/commands/agent-doctrine-file.js +0 -1
- package/dist/commands/agents.js +0 -1
- package/dist/commands/archive.js +0 -1
- package/dist/commands/arm-reminder.js +0 -1
- package/dist/commands/assistant-reminder.js +0 -1
- package/dist/commands/assistant.js +0 -1
- package/dist/commands/checkpoint-helpers.js +0 -1
- package/dist/commands/checkpoint.js +0 -1
- package/dist/commands/claude-md-patch.js +0 -1
- package/dist/commands/codex-app-server-client.js +0 -1
- package/dist/commands/codex-app-server.js +0 -1
- package/dist/commands/codex-chip/bootstrap.js +0 -1
- package/dist/commands/codex-chip/breakthrough-ack-command.js +0 -1
- package/dist/commands/codex-chip/breakthrough-command.js +0 -1
- package/dist/commands/codex-chip/breakthrough.js +0 -1
- package/dist/commands/codex-chip/cleanup-command.js +0 -1
- package/dist/commands/codex-chip/command.js +0 -1
- package/dist/commands/codex-chip/git.js +0 -1
- package/dist/commands/codex-chip/goal-command.js +0 -1
- package/dist/commands/codex-chip/goals.js +0 -1
- package/dist/commands/codex-chip/help.js +0 -1
- package/dist/commands/codex-chip/inbox.js +0 -1
- package/dist/commands/codex-chip/lifecycle.js +0 -1
- package/dist/commands/codex-chip/mechanic-lifecycle.js +0 -1
- package/dist/commands/codex-chip/model.js +0 -1
- package/dist/commands/codex-chip/naming.js +0 -1
- package/dist/commands/codex-chip/native.js +0 -1
- package/dist/commands/codex-chip/prompt.js +0 -1
- package/dist/commands/codex-chip/resume-command.js +0 -1
- package/dist/commands/codex-chip/selection.js +0 -1
- package/dist/commands/codex-chip/store.js +0 -1
- package/dist/commands/codex-chip/worker.js +0 -1
- package/dist/commands/codex-delivery.js +0 -1
- package/dist/commands/codex-doctor.js +0 -1
- package/dist/commands/codex-model-policy.js +0 -1
- package/dist/commands/codex-startup.js +0 -1
- package/dist/commands/codex-supervisor.js +0 -1
- package/dist/commands/codex-wake-test.js +0 -1
- package/dist/commands/codex-watch-health.js +0 -1
- package/dist/commands/codex.js +0 -1
- package/dist/commands/collision-check.js +0 -1
- package/dist/commands/collision-reminder.js +0 -1
- package/dist/commands/context-governor.js +0 -1
- package/dist/commands/coordinate-gate.js +0 -1
- package/dist/commands/corpus/client.js +0 -1
- package/dist/commands/corpus/index.js +0 -1
- package/dist/commands/corpus/manage.js +0 -1
- package/dist/commands/corpus/refresh.js +0 -1
- package/dist/commands/corpus/search.js +0 -1
- package/dist/commands/corpus/section.js +0 -1
- package/dist/commands/corpus/source.js +0 -1
- package/dist/commands/corpus/status.js +0 -1
- package/dist/commands/corpus/tags.js +0 -1
- package/dist/commands/corpus/upload.js +0 -1
- package/dist/commands/corpus/walk.js +0 -1
- package/dist/commands/corpus-reminder.js +0 -1
- package/dist/commands/crush-stats.js +0 -1
- package/dist/commands/crush.js +0 -1
- package/dist/commands/delivery-reminder.js +1 -2
- package/dist/commands/delivery.js +0 -1
- package/dist/commands/desk-line.js +0 -1
- package/dist/commands/discord.js +0 -1
- package/dist/commands/discover.js +0 -1
- package/dist/commands/doc-pointer-reminder.js +0 -1
- package/dist/commands/doc.js +0 -1
- package/dist/commands/docptr.js +0 -1
- package/dist/commands/doctor.js +6 -6
- package/dist/commands/email-primer-reminder.js +0 -1
- package/dist/commands/email.js +0 -1
- package/dist/commands/enrichment-health-reminder.js +0 -1
- package/dist/commands/fix.js +0 -1
- package/dist/commands/friction-reminder.js +1 -2
- package/dist/commands/identity.js +0 -1
- package/dist/commands/inbox-drain.js +0 -1
- package/dist/commands/inbox-primer-reminder.js +0 -1
- package/dist/commands/inbox-retract.js +0 -1
- package/dist/commands/inbox-watch-supervisor.js +0 -1
- package/dist/commands/inbox-watch.js +0 -1
- package/dist/commands/ingress-trigger.js +0 -1
- package/dist/commands/init.js +0 -1
- package/dist/commands/load-primer-reminder.js +0 -1
- package/dist/commands/load.js +0 -1
- package/dist/commands/loadout-reminder.js +0 -1
- package/dist/commands/loadout.js +0 -1
- package/dist/commands/mechanic-live.js +0 -1
- package/dist/commands/mechanic-manifest.js +0 -1
- package/dist/commands/mechanic-spawn.js +0 -1
- package/dist/commands/mechanic.js +0 -1
- package/dist/commands/memory-format.js +0 -1
- package/dist/commands/memory-reflex.js +0 -1
- package/dist/commands/memory.js +0 -1
- package/dist/commands/opencode-chip-client.js +0 -1
- package/dist/commands/opencode-chip-lifecycle.js +0 -1
- package/dist/commands/opencode-chip-mission.js +0 -1
- package/dist/commands/opencode-chip-store.js +0 -1
- package/dist/commands/opencode-chip.js +0 -1
- package/dist/commands/opencode-goals.js +0 -1
- package/dist/commands/opencode-interrupt.js +0 -1
- package/dist/commands/opencode-relay.js +0 -1
- package/dist/commands/opencode-watch.js +0 -1
- package/dist/commands/os-primer-reminder.js +0 -1
- package/dist/commands/parity.js +0 -1
- package/dist/commands/pipe-wrap.js +0 -1
- package/dist/commands/poll-registry.js +0 -1
- package/dist/commands/procedure-reminder.js +0 -1
- package/dist/commands/procedure.js +0 -1
- package/dist/commands/project.js +0 -1
- package/dist/commands/reminder-registry.js +0 -1
- package/dist/commands/reminder-types.js +0 -1
- package/dist/commands/search-guard.js +0 -1
- package/dist/commands/session.js +0 -1
- package/dist/commands/setup-reminder.js +0 -1
- package/dist/commands/shell-dialect-guard.js +0 -1
- package/dist/commands/skill-gain-reminder.js +0 -1
- package/dist/commands/skill-mirror-reminder.js +0 -1
- package/dist/commands/skill.js +12 -4
- package/dist/commands/skillgain.js +0 -1
- package/dist/commands/sms.js +0 -1
- package/dist/commands/state-trigger.js +0 -1
- package/dist/commands/status.js +6 -6
- package/dist/commands/version-reminder.js +13 -2
- package/dist/commands/watcher-registry.js +0 -1
- package/dist/crush/adaptive-sizer.js +0 -1
- package/dist/crush/code-compressor.js +0 -1
- package/dist/crush/crush-keywords.js +0 -1
- package/dist/crush/crush-types.js +0 -1
- package/dist/crush/index.js +0 -1
- package/dist/crush/json-crusher.js +0 -1
- package/dist/crush/json-detectors.js +0 -1
- package/dist/crush/log-compressor.js +0 -1
- package/dist/crush/search-compressor.js +0 -1
- package/dist/delivery-config.js +0 -1
- package/dist/delivery-lifecycle.js +0 -1
- package/dist/doc-mirror-client.js +0 -1
- package/dist/docptr-refs.js +0 -1
- package/dist/email-pull.js +0 -1
- package/dist/email-send.js +0 -1
- package/dist/equipped-loadouts-cache.js +0 -1
- package/dist/fix-trigger.js +0 -1
- package/dist/guard.js +0 -1
- package/dist/harness.js +0 -1
- package/dist/hook-runtime.js +0 -1
- package/dist/hook.js +21 -1
- package/dist/inbox-attachments.js +0 -1
- package/dist/index.js +0 -1
- package/dist/inline-atom-background.js +0 -1
- package/dist/inline-atom-episode.js +0 -1
- package/dist/inline-atom-hook.js +0 -1
- package/dist/inline-atom-worker.js +0 -1
- package/dist/inline-atom.js +0 -1
- package/dist/mechanic-friction.js +0 -1
- package/dist/mechanic-role.js +0 -1
- package/dist/native-skill-adoption.js +0 -1
- package/dist/native-skill-mirror.js +54 -17
- package/dist/native-skill-pending.js +0 -1
- package/dist/opencode-plugin-crush.js +0 -1
- package/dist/opencode-plugin-helpers.js +0 -1
- package/dist/opencode-plugin-png.js +0 -1
- package/dist/opencode-plugin.bundle.js +14 -3
- package/dist/opencode-plugin.js +0 -1
- package/dist/proc.js +0 -1
- package/dist/procedure-run.js +0 -1
- package/dist/procedure-runtime.js +0 -1
- package/dist/procedure-shadow.js +0 -1
- package/dist/procedure-watch.js +0 -1
- package/dist/procedure.js +0 -1
- package/dist/project-anchor.js +0 -1
- package/dist/reminder-injector.js +0 -1
- package/dist/secret-scrubber.js +0 -1
- package/dist/session-id.js +0 -1
- package/dist/skill-activation-manifest.js +0 -1
- package/dist/skill-landing.js +0 -1
- package/dist/skill-mirror-client.js +0 -1
- package/dist/skill-mirror-files.js +0 -1
- package/dist/skill-staleness.js +2 -2
- package/dist/turn-provenance.js +0 -1
- package/dist/windows-shims.js +134 -42
- package/dist/worktree-state.js +0 -1
- package/package.json +1 -1
- package/skill/mechanic/SKILL.md +1 -1
- package/skill/templates/skill-change.md +1 -0
- package/dist/archive/glyph-font.d.ts +0 -22
- package/dist/archive/glyph-font.js.map +0 -1
- package/dist/archive/page-renderer.d.ts +0 -67
- package/dist/archive/page-renderer.js.map +0 -1
- package/dist/archive/png-codec.d.ts +0 -21
- package/dist/archive/png-codec.js.map +0 -1
- package/dist/archive/transcript-extract.d.ts +0 -39
- package/dist/archive/transcript-extract.js.map +0 -1
- package/dist/assistant-doctrine.d.ts +0 -23
- package/dist/assistant-doctrine.js.map +0 -1
- package/dist/capture-manifest.d.ts +0 -20
- package/dist/capture-manifest.js.map +0 -1
- package/dist/ccr-store.d.ts +0 -49
- package/dist/ccr-store.js.map +0 -1
- package/dist/claude-lifecycle-cutover.d.ts +0 -23
- package/dist/claude-lifecycle-cutover.js.map +0 -1
- package/dist/codex-chip-hooks.d.ts +0 -16
- package/dist/codex-chip-hooks.js.map +0 -1
- package/dist/codex-delegation-dedupe.d.ts +0 -4
- package/dist/codex-delegation-dedupe.js.map +0 -1
- package/dist/codex-fast-hook.d.ts +0 -2
- package/dist/codex-fast-hook.js.map +0 -1
- package/dist/codex-hook-events.d.ts +0 -20
- package/dist/codex-hook-events.js.map +0 -1
- package/dist/codex-notify-hook.d.ts +0 -2
- package/dist/codex-notify-hook.js.map +0 -1
- package/dist/codex-prompt-cache.d.ts +0 -11
- package/dist/codex-prompt-cache.js.map +0 -1
- package/dist/codex-steering.d.ts +0 -30
- package/dist/codex-steering.js.map +0 -1
- package/dist/codex-store-background.d.ts +0 -2
- package/dist/codex-store-background.js.map +0 -1
- package/dist/commands/agent-doctrine-file.d.ts +0 -53
- package/dist/commands/agent-doctrine-file.js.map +0 -1
- package/dist/commands/agents.d.ts +0 -41
- package/dist/commands/agents.js.map +0 -1
- package/dist/commands/archive.d.ts +0 -81
- package/dist/commands/archive.js.map +0 -1
- package/dist/commands/arm-reminder.d.ts +0 -30
- package/dist/commands/arm-reminder.js.map +0 -1
- package/dist/commands/assistant-reminder.d.ts +0 -9
- package/dist/commands/assistant-reminder.js.map +0 -1
- package/dist/commands/assistant.d.ts +0 -20
- package/dist/commands/assistant.js.map +0 -1
- package/dist/commands/checkpoint-helpers.d.ts +0 -41
- package/dist/commands/checkpoint-helpers.js.map +0 -1
- package/dist/commands/checkpoint.d.ts +0 -16
- package/dist/commands/checkpoint.js.map +0 -1
- package/dist/commands/claude-md-patch.d.ts +0 -56
- package/dist/commands/claude-md-patch.js.map +0 -1
- package/dist/commands/codex-app-server-client.d.ts +0 -46
- package/dist/commands/codex-app-server-client.js.map +0 -1
- package/dist/commands/codex-app-server.d.ts +0 -1
- package/dist/commands/codex-app-server.js.map +0 -1
- package/dist/commands/codex-chip/bootstrap.d.ts +0 -8
- package/dist/commands/codex-chip/bootstrap.js.map +0 -1
- package/dist/commands/codex-chip/breakthrough-ack-command.d.ts +0 -1
- package/dist/commands/codex-chip/breakthrough-ack-command.js.map +0 -1
- package/dist/commands/codex-chip/breakthrough-command.d.ts +0 -5
- package/dist/commands/codex-chip/breakthrough-command.js.map +0 -1
- package/dist/commands/codex-chip/breakthrough.d.ts +0 -15
- package/dist/commands/codex-chip/breakthrough.js.map +0 -1
- package/dist/commands/codex-chip/cleanup-command.d.ts +0 -2
- package/dist/commands/codex-chip/cleanup-command.js.map +0 -1
- package/dist/commands/codex-chip/command.d.ts +0 -3
- package/dist/commands/codex-chip/command.js.map +0 -1
- package/dist/commands/codex-chip/git.d.ts +0 -34
- package/dist/commands/codex-chip/git.js.map +0 -1
- package/dist/commands/codex-chip/goal-command.d.ts +0 -1
- package/dist/commands/codex-chip/goal-command.js.map +0 -1
- package/dist/commands/codex-chip/goals.d.ts +0 -73
- package/dist/commands/codex-chip/goals.js.map +0 -1
- package/dist/commands/codex-chip/help.d.ts +0 -1
- package/dist/commands/codex-chip/help.js.map +0 -1
- package/dist/commands/codex-chip/inbox.d.ts +0 -10
- package/dist/commands/codex-chip/inbox.js.map +0 -1
- package/dist/commands/codex-chip/lifecycle.d.ts +0 -8
- package/dist/commands/codex-chip/lifecycle.js.map +0 -1
- package/dist/commands/codex-chip/mechanic-lifecycle.d.ts +0 -5
- package/dist/commands/codex-chip/mechanic-lifecycle.js.map +0 -1
- package/dist/commands/codex-chip/model.d.ts +0 -155
- package/dist/commands/codex-chip/model.js.map +0 -1
- package/dist/commands/codex-chip/naming.d.ts +0 -8
- package/dist/commands/codex-chip/naming.js.map +0 -1
- package/dist/commands/codex-chip/native.d.ts +0 -70
- package/dist/commands/codex-chip/native.js.map +0 -1
- package/dist/commands/codex-chip/prompt.d.ts +0 -3
- package/dist/commands/codex-chip/prompt.js.map +0 -1
- package/dist/commands/codex-chip/resume-command.d.ts +0 -7
- package/dist/commands/codex-chip/resume-command.js.map +0 -1
- package/dist/commands/codex-chip/selection.d.ts +0 -14
- package/dist/commands/codex-chip/selection.js.map +0 -1
- package/dist/commands/codex-chip/store.d.ts +0 -16
- package/dist/commands/codex-chip/store.js.map +0 -1
- package/dist/commands/codex-chip/worker.d.ts +0 -4
- package/dist/commands/codex-chip/worker.js.map +0 -1
- package/dist/commands/codex-delivery.d.ts +0 -67
- package/dist/commands/codex-delivery.js.map +0 -1
- package/dist/commands/codex-doctor.d.ts +0 -5
- package/dist/commands/codex-doctor.js.map +0 -1
- package/dist/commands/codex-model-policy.d.ts +0 -19
- package/dist/commands/codex-model-policy.js.map +0 -1
- package/dist/commands/codex-startup.d.ts +0 -13
- package/dist/commands/codex-startup.js.map +0 -1
- package/dist/commands/codex-supervisor.d.ts +0 -17
- package/dist/commands/codex-supervisor.js.map +0 -1
- package/dist/commands/codex-wake-test.d.ts +0 -46
- package/dist/commands/codex-wake-test.js.map +0 -1
- package/dist/commands/codex-watch-health.d.ts +0 -68
- package/dist/commands/codex-watch-health.js.map +0 -1
- package/dist/commands/codex.d.ts +0 -28
- package/dist/commands/codex.js.map +0 -1
- package/dist/commands/collision-check.d.ts +0 -112
- package/dist/commands/collision-check.js.map +0 -1
- package/dist/commands/collision-reminder.d.ts +0 -14
- package/dist/commands/collision-reminder.js.map +0 -1
- package/dist/commands/context-governor.d.ts +0 -87
- package/dist/commands/context-governor.js.map +0 -1
- package/dist/commands/coordinate-gate.d.ts +0 -80
- package/dist/commands/coordinate-gate.js.map +0 -1
- package/dist/commands/corpus/client.d.ts +0 -71
- package/dist/commands/corpus/client.js.map +0 -1
- package/dist/commands/corpus/index.d.ts +0 -24
- package/dist/commands/corpus/index.js.map +0 -1
- package/dist/commands/corpus/manage.d.ts +0 -6
- package/dist/commands/corpus/manage.js.map +0 -1
- package/dist/commands/corpus/refresh.d.ts +0 -12
- package/dist/commands/corpus/refresh.js.map +0 -1
- package/dist/commands/corpus/search.d.ts +0 -6
- package/dist/commands/corpus/search.js.map +0 -1
- package/dist/commands/corpus/section.d.ts +0 -5
- package/dist/commands/corpus/section.js.map +0 -1
- package/dist/commands/corpus/source.d.ts +0 -15
- package/dist/commands/corpus/source.js.map +0 -1
- package/dist/commands/corpus/status.d.ts +0 -5
- package/dist/commands/corpus/status.js.map +0 -1
- package/dist/commands/corpus/tags.d.ts +0 -17
- package/dist/commands/corpus/tags.js.map +0 -1
- package/dist/commands/corpus/upload.d.ts +0 -7
- package/dist/commands/corpus/upload.js.map +0 -1
- package/dist/commands/corpus/walk.d.ts +0 -5
- package/dist/commands/corpus/walk.js.map +0 -1
- package/dist/commands/corpus-reminder.d.ts +0 -15
- package/dist/commands/corpus-reminder.js.map +0 -1
- package/dist/commands/crush-stats.d.ts +0 -36
- package/dist/commands/crush-stats.js.map +0 -1
- package/dist/commands/crush.d.ts +0 -33
- package/dist/commands/crush.js.map +0 -1
- package/dist/commands/delivery-reminder.d.ts +0 -10
- package/dist/commands/delivery-reminder.js.map +0 -1
- package/dist/commands/delivery.d.ts +0 -1
- package/dist/commands/delivery.js.map +0 -1
- package/dist/commands/desk-line.d.ts +0 -36
- package/dist/commands/desk-line.js.map +0 -1
- package/dist/commands/discord.d.ts +0 -72
- package/dist/commands/discord.js.map +0 -1
- package/dist/commands/discover.d.ts +0 -45
- package/dist/commands/discover.js.map +0 -1
- package/dist/commands/doc-pointer-reminder.d.ts +0 -20
- package/dist/commands/doc-pointer-reminder.js.map +0 -1
- package/dist/commands/doc.d.ts +0 -6
- package/dist/commands/doc.js.map +0 -1
- package/dist/commands/docptr.d.ts +0 -17
- package/dist/commands/docptr.js.map +0 -1
- package/dist/commands/doctor.d.ts +0 -15
- package/dist/commands/doctor.js.map +0 -1
- package/dist/commands/email-primer-reminder.d.ts +0 -23
- package/dist/commands/email-primer-reminder.js.map +0 -1
- package/dist/commands/email.d.ts +0 -18
- package/dist/commands/email.js.map +0 -1
- package/dist/commands/enrichment-health-reminder.d.ts +0 -23
- package/dist/commands/enrichment-health-reminder.js.map +0 -1
- package/dist/commands/fix.d.ts +0 -50
- package/dist/commands/fix.js.map +0 -1
- package/dist/commands/friction-reminder.d.ts +0 -70
- package/dist/commands/friction-reminder.js.map +0 -1
- package/dist/commands/identity.d.ts +0 -24
- package/dist/commands/identity.js.map +0 -1
- package/dist/commands/inbox-drain.d.ts +0 -48
- package/dist/commands/inbox-drain.js.map +0 -1
- package/dist/commands/inbox-primer-reminder.d.ts +0 -27
- package/dist/commands/inbox-primer-reminder.js.map +0 -1
- package/dist/commands/inbox-retract.d.ts +0 -18
- package/dist/commands/inbox-retract.js.map +0 -1
- package/dist/commands/inbox-watch-supervisor.d.ts +0 -66
- package/dist/commands/inbox-watch-supervisor.js.map +0 -1
- package/dist/commands/inbox-watch.d.ts +0 -127
- package/dist/commands/inbox-watch.js.map +0 -1
- package/dist/commands/ingress-trigger.d.ts +0 -67
- package/dist/commands/ingress-trigger.js.map +0 -1
- package/dist/commands/init.d.ts +0 -48
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/load-primer-reminder.d.ts +0 -38
- package/dist/commands/load-primer-reminder.js.map +0 -1
- package/dist/commands/load.d.ts +0 -20
- package/dist/commands/load.js.map +0 -1
- package/dist/commands/loadout-reminder.d.ts +0 -37
- package/dist/commands/loadout-reminder.js.map +0 -1
- package/dist/commands/loadout.d.ts +0 -15
- package/dist/commands/loadout.js.map +0 -1
- package/dist/commands/mechanic-live.d.ts +0 -12
- package/dist/commands/mechanic-live.js.map +0 -1
- package/dist/commands/mechanic-manifest.d.ts +0 -28
- package/dist/commands/mechanic-manifest.js.map +0 -1
- package/dist/commands/mechanic-spawn.d.ts +0 -39
- package/dist/commands/mechanic-spawn.js.map +0 -1
- package/dist/commands/mechanic.d.ts +0 -101
- package/dist/commands/mechanic.js.map +0 -1
- package/dist/commands/memory-format.d.ts +0 -68
- package/dist/commands/memory-format.js.map +0 -1
- package/dist/commands/memory-reflex.d.ts +0 -20
- package/dist/commands/memory-reflex.js.map +0 -1
- package/dist/commands/memory.d.ts +0 -74
- package/dist/commands/memory.js.map +0 -1
- package/dist/commands/opencode-chip-client.d.ts +0 -8
- package/dist/commands/opencode-chip-client.js.map +0 -1
- package/dist/commands/opencode-chip-lifecycle.d.ts +0 -2
- package/dist/commands/opencode-chip-lifecycle.js.map +0 -1
- package/dist/commands/opencode-chip-mission.d.ts +0 -22
- package/dist/commands/opencode-chip-mission.js.map +0 -1
- package/dist/commands/opencode-chip-store.d.ts +0 -72
- package/dist/commands/opencode-chip-store.js.map +0 -1
- package/dist/commands/opencode-chip.d.ts +0 -3
- package/dist/commands/opencode-chip.js.map +0 -1
- package/dist/commands/opencode-goals.d.ts +0 -5
- package/dist/commands/opencode-goals.js.map +0 -1
- package/dist/commands/opencode-interrupt.d.ts +0 -34
- package/dist/commands/opencode-interrupt.js.map +0 -1
- package/dist/commands/opencode-relay.d.ts +0 -144
- package/dist/commands/opencode-relay.js.map +0 -1
- package/dist/commands/opencode-watch.d.ts +0 -17
- package/dist/commands/opencode-watch.js.map +0 -1
- package/dist/commands/os-primer-reminder.d.ts +0 -14
- package/dist/commands/os-primer-reminder.js.map +0 -1
- package/dist/commands/parity.d.ts +0 -20
- package/dist/commands/parity.js.map +0 -1
- package/dist/commands/pipe-wrap.d.ts +0 -97
- package/dist/commands/pipe-wrap.js.map +0 -1
- package/dist/commands/poll-registry.d.ts +0 -56
- package/dist/commands/poll-registry.js.map +0 -1
- package/dist/commands/procedure-reminder.d.ts +0 -8
- package/dist/commands/procedure-reminder.js.map +0 -1
- package/dist/commands/procedure.d.ts +0 -15
- package/dist/commands/procedure.js.map +0 -1
- package/dist/commands/project.d.ts +0 -16
- package/dist/commands/project.js.map +0 -1
- package/dist/commands/reminder-registry.d.ts +0 -47
- package/dist/commands/reminder-registry.js.map +0 -1
- package/dist/commands/reminder-types.d.ts +0 -208
- package/dist/commands/reminder-types.js.map +0 -1
- package/dist/commands/search-guard.d.ts +0 -18
- package/dist/commands/search-guard.js.map +0 -1
- package/dist/commands/session.d.ts +0 -8
- package/dist/commands/session.js.map +0 -1
- package/dist/commands/setup-reminder.d.ts +0 -9
- package/dist/commands/setup-reminder.js.map +0 -1
- package/dist/commands/shell-dialect-guard.d.ts +0 -25
- package/dist/commands/shell-dialect-guard.js.map +0 -1
- package/dist/commands/skill-gain-reminder.d.ts +0 -17
- package/dist/commands/skill-gain-reminder.js.map +0 -1
- package/dist/commands/skill-mirror-reminder.d.ts +0 -10
- package/dist/commands/skill-mirror-reminder.js.map +0 -1
- package/dist/commands/skill.d.ts +0 -1
- package/dist/commands/skill.js.map +0 -1
- package/dist/commands/skillgain.d.ts +0 -12
- package/dist/commands/skillgain.js.map +0 -1
- package/dist/commands/sms.d.ts +0 -11
- package/dist/commands/sms.js.map +0 -1
- package/dist/commands/state-trigger.d.ts +0 -103
- package/dist/commands/state-trigger.js.map +0 -1
- package/dist/commands/status.d.ts +0 -69
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/version-reminder.d.ts +0 -27
- package/dist/commands/version-reminder.js.map +0 -1
- package/dist/commands/watcher-registry.d.ts +0 -121
- package/dist/commands/watcher-registry.js.map +0 -1
- package/dist/crush/adaptive-sizer.d.ts +0 -40
- package/dist/crush/adaptive-sizer.js.map +0 -1
- package/dist/crush/code-compressor.d.ts +0 -61
- package/dist/crush/code-compressor.js.map +0 -1
- package/dist/crush/crush-keywords.d.ts +0 -40
- package/dist/crush/crush-keywords.js.map +0 -1
- package/dist/crush/crush-types.d.ts +0 -38
- package/dist/crush/crush-types.js.map +0 -1
- package/dist/crush/index.d.ts +0 -17
- package/dist/crush/index.js.map +0 -1
- package/dist/crush/json-crusher.d.ts +0 -38
- package/dist/crush/json-crusher.js.map +0 -1
- package/dist/crush/json-detectors.d.ts +0 -48
- package/dist/crush/json-detectors.js.map +0 -1
- package/dist/crush/log-compressor.d.ts +0 -60
- package/dist/crush/log-compressor.js.map +0 -1
- package/dist/crush/search-compressor.d.ts +0 -60
- package/dist/crush/search-compressor.js.map +0 -1
- package/dist/delivery-config.d.ts +0 -35
- package/dist/delivery-config.js.map +0 -1
- package/dist/delivery-lifecycle.d.ts +0 -3
- package/dist/delivery-lifecycle.js.map +0 -1
- package/dist/doc-mirror-client.d.ts +0 -56
- package/dist/doc-mirror-client.js.map +0 -1
- package/dist/docptr-refs.d.ts +0 -37
- package/dist/docptr-refs.js.map +0 -1
- package/dist/email-pull.d.ts +0 -106
- package/dist/email-pull.js.map +0 -1
- package/dist/email-send.d.ts +0 -75
- package/dist/email-send.js.map +0 -1
- package/dist/equipped-loadouts-cache.d.ts +0 -20
- package/dist/equipped-loadouts-cache.js.map +0 -1
- package/dist/fix-trigger.d.ts +0 -63
- package/dist/fix-trigger.js.map +0 -1
- package/dist/guard.d.ts +0 -129
- package/dist/guard.js.map +0 -1
- package/dist/harness.d.ts +0 -6
- package/dist/harness.js.map +0 -1
- package/dist/hook-runtime.d.ts +0 -22
- package/dist/hook-runtime.js.map +0 -1
- package/dist/hook.d.ts +0 -8
- package/dist/hook.js.map +0 -1
- package/dist/inbox-attachments.d.ts +0 -37
- package/dist/inbox-attachments.js.map +0 -1
- package/dist/index.d.ts +0 -9
- package/dist/index.js.map +0 -1
- package/dist/inline-atom-background.d.ts +0 -9
- package/dist/inline-atom-background.js.map +0 -1
- package/dist/inline-atom-episode.d.ts +0 -85
- package/dist/inline-atom-episode.js.map +0 -1
- package/dist/inline-atom-hook.d.ts +0 -22
- package/dist/inline-atom-hook.js.map +0 -1
- package/dist/inline-atom-worker.d.ts +0 -2
- package/dist/inline-atom-worker.js.map +0 -1
- package/dist/inline-atom.d.ts +0 -52
- package/dist/inline-atom.js.map +0 -1
- package/dist/mechanic-friction.d.ts +0 -82
- package/dist/mechanic-friction.js.map +0 -1
- package/dist/mechanic-role.d.ts +0 -20
- package/dist/mechanic-role.js.map +0 -1
- package/dist/native-skill-adoption.d.ts +0 -45
- package/dist/native-skill-adoption.js.map +0 -1
- package/dist/native-skill-mirror.d.ts +0 -50
- package/dist/native-skill-mirror.js.map +0 -1
- package/dist/native-skill-pending.d.ts +0 -44
- package/dist/native-skill-pending.js.map +0 -1
- package/dist/opencode-plugin-crush.d.ts +0 -137
- package/dist/opencode-plugin-crush.js.map +0 -1
- package/dist/opencode-plugin-helpers.d.ts +0 -200
- package/dist/opencode-plugin-helpers.js.map +0 -1
- package/dist/opencode-plugin-png.d.ts +0 -151
- package/dist/opencode-plugin-png.js.map +0 -1
- package/dist/opencode-plugin.d.ts +0 -93
- package/dist/opencode-plugin.js.map +0 -1
- package/dist/proc.d.ts +0 -35
- package/dist/proc.js.map +0 -1
- package/dist/procedure-run.d.ts +0 -51
- package/dist/procedure-run.js.map +0 -1
- package/dist/procedure-runtime.d.ts +0 -28
- package/dist/procedure-runtime.js.map +0 -1
- package/dist/procedure-shadow.d.ts +0 -31
- package/dist/procedure-shadow.js.map +0 -1
- package/dist/procedure-watch.d.ts +0 -155
- package/dist/procedure-watch.js.map +0 -1
- package/dist/procedure.d.ts +0 -164
- package/dist/procedure.js.map +0 -1
- package/dist/project-anchor.d.ts +0 -110
- package/dist/project-anchor.js.map +0 -1
- package/dist/reminder-injector.d.ts +0 -3
- package/dist/reminder-injector.js.map +0 -1
- package/dist/secret-scrubber.d.ts +0 -48
- package/dist/secret-scrubber.js.map +0 -1
- package/dist/session-id.d.ts +0 -98
- package/dist/session-id.js.map +0 -1
- package/dist/skill-activation-manifest.d.ts +0 -37
- package/dist/skill-activation-manifest.js.map +0 -1
- package/dist/skill-landing.d.ts +0 -88
- package/dist/skill-landing.js.map +0 -1
- package/dist/skill-mirror-client.d.ts +0 -59
- package/dist/skill-mirror-client.js.map +0 -1
- package/dist/skill-mirror-files.d.ts +0 -6
- package/dist/skill-mirror-files.js.map +0 -1
- package/dist/skill-staleness.d.ts +0 -57
- package/dist/skill-staleness.js.map +0 -1
- package/dist/turn-provenance.d.ts +0 -18
- package/dist/turn-provenance.js.map +0 -1
- package/dist/windows-shims.d.ts +0 -46
- package/dist/windows-shims.js.map +0 -1
- package/dist/worktree-state.d.ts +0 -14
- package/dist/worktree-state.js.map +0 -1
package/dist/inline-atom.js
CHANGED
package/dist/mechanic-role.js
CHANGED
|
@@ -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
|
|
341
|
-
|
|
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
|
-
|
|
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
|
|
@@ -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
|
|
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:
|
|
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.";
|
package/dist/opencode-plugin.js
CHANGED
package/dist/proc.js
CHANGED
package/dist/procedure-run.js
CHANGED
package/dist/procedure-shadow.js
CHANGED
package/dist/procedure-watch.js
CHANGED
package/dist/procedure.js
CHANGED
package/dist/project-anchor.js
CHANGED
package/dist/secret-scrubber.js
CHANGED
package/dist/session-id.js
CHANGED
package/dist/skill-landing.js
CHANGED
package/dist/skill-staleness.js
CHANGED
|
@@ -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
|
-
`
|
|
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
|
package/dist/turn-provenance.js
CHANGED
package/dist/windows-shims.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/** Windows shim audit — detect (and let doctor repair) stale
|
|
3
|
-
* `greprag
|
|
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"`),
|
|
63
|
-
*
|
|
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
|
|
66
|
-
const text = cmdText.split(/\r?\n/).filter(l => !/^\s*(REM
|
|
67
|
-
// Quoted or bare tokens ending .js
|
|
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
|
|
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
|
|
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
|
-
/**
|
|
79
|
-
*
|
|
80
|
-
function
|
|
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
|
|
133
|
+
current = t; // forwarded to another shim — follow
|
|
116
134
|
}
|
|
117
|
-
const
|
|
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,
|
|
120
|
-
|
|
121
|
-
|
|
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
|
-
|
|
125
|
-
|
|
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
|
|
131
|
-
let hits =
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
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
|
-
|
|
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(
|
|
145
|
-
const healthy = audits.find(a => a.name === shim.name
|
|
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
|
|
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
|
-
|
|
160
|
-
|
|
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
|
package/dist/worktree-state.js
CHANGED
package/package.json
CHANGED
package/skill/mechanic/SKILL.md
CHANGED
|
@@ -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;
|