@ironbee-ai/cli 0.6.1 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +167 -39
- package/dist/analysis/code-changes.js +3 -3
- package/dist/analysis/code-changes.js.map +1 -1
- package/dist/analysis/cross-session.js.map +1 -1
- package/dist/analysis/fix-effectiveness.js.map +1 -1
- package/dist/analysis/time-analysis.js.map +1 -1
- package/dist/analysis/verdict-details.js.map +1 -1
- package/dist/analysis/verification-quality.js.map +1 -1
- package/dist/analytics/classifier.d.ts +99 -0
- package/dist/analytics/classifier.d.ts.map +1 -0
- package/dist/analytics/classifier.js +380 -0
- package/dist/analytics/classifier.js.map +1 -0
- package/dist/analytics/emit.d.ts +67 -0
- package/dist/analytics/emit.d.ts.map +1 -0
- package/dist/analytics/emit.js +901 -0
- package/dist/analytics/emit.js.map +1 -0
- package/dist/analytics/errors.d.ts +33 -0
- package/dist/analytics/errors.d.ts.map +1 -0
- package/dist/analytics/errors.js +93 -0
- package/dist/analytics/errors.js.map +1 -0
- package/dist/analytics/hook-trigger.d.ts +39 -0
- package/dist/analytics/hook-trigger.d.ts.map +1 -0
- package/dist/analytics/hook-trigger.js +127 -0
- package/dist/analytics/hook-trigger.js.map +1 -0
- package/dist/analytics/log.d.ts +44 -0
- package/dist/analytics/log.d.ts.map +1 -0
- package/dist/analytics/log.js +158 -0
- package/dist/analytics/log.js.map +1 -0
- package/dist/analytics/merge.d.ts +40 -0
- package/dist/analytics/merge.d.ts.map +1 -0
- package/dist/analytics/merge.js +527 -0
- package/dist/analytics/merge.js.map +1 -0
- package/dist/analytics/pricing.d.ts +149 -0
- package/dist/analytics/pricing.d.ts.map +1 -0
- package/dist/analytics/pricing.js +179 -0
- package/dist/analytics/pricing.js.map +1 -0
- package/dist/analytics/projection.d.ts +356 -0
- package/dist/analytics/projection.d.ts.map +1 -0
- package/dist/analytics/projection.js +2281 -0
- package/dist/analytics/projection.js.map +1 -0
- package/dist/analytics/spawn.d.ts +28 -0
- package/dist/analytics/spawn.d.ts.map +1 -0
- package/dist/analytics/spawn.js +57 -0
- package/dist/analytics/spawn.js.map +1 -0
- package/dist/analytics/state.d.ts +58 -0
- package/dist/analytics/state.d.ts.map +1 -0
- package/dist/analytics/state.js +329 -0
- package/dist/analytics/state.js.map +1 -0
- package/dist/analytics/transcript.d.ts +150 -0
- package/dist/analytics/transcript.d.ts.map +1 -0
- package/dist/analytics/transcript.js +276 -0
- package/dist/analytics/transcript.js.map +1 -0
- package/dist/analytics/types.d.ts +875 -0
- package/dist/analytics/types.d.ts.map +1 -0
- package/dist/analytics/types.js +31 -0
- package/dist/analytics/types.js.map +1 -0
- package/dist/clients/base.d.ts +21 -2
- package/dist/clients/base.d.ts.map +1 -1
- package/dist/clients/claude/commands/ironbee-verify.md +15 -7
- package/dist/clients/claude/fragments/command-verify.node.md +33 -0
- package/dist/clients/claude/fragments/rule.node.md +29 -0
- package/dist/clients/claude/fragments/skill.node.md +77 -0
- package/dist/clients/claude/hooks/activity-end.d.ts +13 -0
- package/dist/clients/claude/hooks/activity-end.d.ts.map +1 -0
- package/dist/clients/claude/hooks/activity-end.js +42 -0
- package/dist/clients/claude/hooks/activity-end.js.map +1 -0
- package/dist/clients/claude/hooks/clear-verdict.d.ts +9 -4
- package/dist/clients/claude/hooks/clear-verdict.d.ts.map +1 -1
- package/dist/clients/claude/hooks/clear-verdict.js +50 -12
- package/dist/clients/claude/hooks/clear-verdict.js.map +1 -1
- package/dist/clients/claude/hooks/require-verdict.d.ts +8 -3
- package/dist/clients/claude/hooks/require-verdict.d.ts.map +1 -1
- package/dist/clients/claude/hooks/require-verdict.js +17 -6
- package/dist/clients/claude/hooks/require-verdict.js.map +1 -1
- package/dist/clients/claude/hooks/require-verification.d.ts +7 -4
- package/dist/clients/claude/hooks/require-verification.d.ts.map +1 -1
- package/dist/clients/claude/hooks/require-verification.js +44 -22
- package/dist/clients/claude/hooks/require-verification.js.map +1 -1
- package/dist/clients/claude/hooks/session-end.d.ts.map +1 -1
- package/dist/clients/claude/hooks/session-end.js +17 -2
- package/dist/clients/claude/hooks/session-end.js.map +1 -1
- package/dist/clients/claude/hooks/session-start.d.ts.map +1 -1
- package/dist/clients/claude/hooks/session-start.js +2 -1
- package/dist/clients/claude/hooks/session-start.js.map +1 -1
- package/dist/clients/claude/hooks/track-action-monitor.d.ts +27 -0
- package/dist/clients/claude/hooks/track-action-monitor.d.ts.map +1 -0
- package/dist/clients/claude/hooks/track-action-monitor.js +126 -0
- package/dist/clients/claude/hooks/track-action-monitor.js.map +1 -0
- package/dist/clients/claude/hooks/track-action.d.ts.map +1 -1
- package/dist/clients/claude/hooks/track-action.js +29 -20
- package/dist/clients/claude/hooks/track-action.js.map +1 -1
- package/dist/clients/claude/hooks/verify-gate.d.ts.map +1 -1
- package/dist/clients/claude/hooks/verify-gate.js +18 -1
- package/dist/clients/claude/hooks/verify-gate.js.map +1 -1
- package/dist/clients/claude/index.d.ts +4 -1
- package/dist/clients/claude/index.d.ts.map +1 -1
- package/dist/clients/claude/index.js +185 -94
- package/dist/clients/claude/index.js.map +1 -1
- package/dist/clients/claude/rules/ironbee-verification.md +41 -33
- package/dist/clients/claude/skills/ironbee-verification.md +93 -76
- package/dist/clients/cursor/commands/ironbee-verify/SKILL.md +18 -10
- package/dist/clients/cursor/fragments/command-verify.node.md +33 -0
- package/dist/clients/cursor/fragments/rule.node.md +29 -0
- package/dist/clients/cursor/fragments/skill.node.md +77 -0
- package/dist/clients/cursor/hooks/activity-end.d.ts +14 -0
- package/dist/clients/cursor/hooks/activity-end.d.ts.map +1 -0
- package/dist/clients/cursor/hooks/activity-end.js +45 -0
- package/dist/clients/cursor/hooks/activity-end.js.map +1 -0
- package/dist/clients/cursor/hooks/clear-verdict.d.ts +13 -4
- package/dist/clients/cursor/hooks/clear-verdict.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/clear-verdict.js +59 -14
- package/dist/clients/cursor/hooks/clear-verdict.js.map +1 -1
- package/dist/clients/cursor/hooks/require-verdict.d.ts +8 -3
- package/dist/clients/cursor/hooks/require-verdict.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/require-verdict.js +17 -6
- package/dist/clients/cursor/hooks/require-verdict.js.map +1 -1
- package/dist/clients/cursor/hooks/require-verification.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/require-verification.js +42 -16
- package/dist/clients/cursor/hooks/require-verification.js.map +1 -1
- package/dist/clients/cursor/hooks/session-end.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/session-end.js +18 -2
- package/dist/clients/cursor/hooks/session-end.js.map +1 -1
- package/dist/clients/cursor/hooks/session-start.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/session-start.js +2 -1
- package/dist/clients/cursor/hooks/session-start.js.map +1 -1
- package/dist/clients/cursor/hooks/track-action-monitor.d.ts +27 -0
- package/dist/clients/cursor/hooks/track-action-monitor.d.ts.map +1 -0
- package/dist/clients/cursor/hooks/track-action-monitor.js +133 -0
- package/dist/clients/cursor/hooks/track-action-monitor.js.map +1 -0
- package/dist/clients/cursor/hooks/track-action.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/track-action.js +51 -23
- package/dist/clients/cursor/hooks/track-action.js.map +1 -1
- package/dist/clients/cursor/hooks/verify-gate.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/verify-gate.js +14 -1
- package/dist/clients/cursor/hooks/verify-gate.js.map +1 -1
- package/dist/clients/cursor/index.d.ts +4 -1
- package/dist/clients/cursor/index.d.ts.map +1 -1
- package/dist/clients/cursor/index.js +131 -65
- package/dist/clients/cursor/index.js.map +1 -1
- package/dist/clients/cursor/rules/ironbee-verification.mdc +37 -29
- package/dist/clients/cursor/skills/ironbee-verification.md +93 -76
- package/dist/clients/registry.d.ts +14 -0
- package/dist/clients/registry.d.ts.map +1 -1
- package/dist/clients/registry.js +34 -0
- package/dist/clients/registry.js.map +1 -1
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +40 -0
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/backend-toggle.d.ts +45 -0
- package/dist/commands/backend-toggle.d.ts.map +1 -0
- package/dist/commands/backend-toggle.js +192 -0
- package/dist/commands/backend-toggle.js.map +1 -0
- package/dist/commands/disable-backend.d.ts +14 -0
- package/dist/commands/disable-backend.d.ts.map +1 -0
- package/dist/commands/disable-backend.js +34 -0
- package/dist/commands/disable-backend.js.map +1 -0
- package/dist/commands/disable-verification.d.ts +16 -0
- package/dist/commands/disable-verification.d.ts.map +1 -0
- package/dist/commands/disable-verification.js +36 -0
- package/dist/commands/disable-verification.js.map +1 -0
- package/dist/commands/enable-backend.d.ts +15 -0
- package/dist/commands/enable-backend.d.ts.map +1 -0
- package/dist/commands/enable-backend.js +35 -0
- package/dist/commands/enable-backend.js.map +1 -0
- package/dist/commands/enable-verification.d.ts +14 -0
- package/dist/commands/enable-verification.d.ts.map +1 -0
- package/dist/commands/enable-verification.js +34 -0
- package/dist/commands/enable-verification.js.map +1 -0
- package/dist/commands/hook.d.ts.map +1 -1
- package/dist/commands/hook.js +60 -0
- package/dist/commands/hook.js.map +1 -1
- package/dist/commands/import.d.ts +39 -0
- package/dist/commands/import.d.ts.map +1 -0
- package/dist/commands/import.js +369 -0
- package/dist/commands/import.js.map +1 -0
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +15 -20
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/process-analytics.d.ts +18 -0
- package/dist/commands/process-analytics.d.ts.map +1 -0
- package/dist/commands/process-analytics.js +57 -0
- package/dist/commands/process-analytics.js.map +1 -0
- package/dist/commands/queue.d.ts +2 -3
- package/dist/commands/queue.d.ts.map +1 -1
- package/dist/commands/queue.js +2 -3
- package/dist/commands/queue.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +29 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/verification-toggle.d.ts +47 -0
- package/dist/commands/verification-toggle.d.ts.map +1 -0
- package/dist/commands/verification-toggle.js +113 -0
- package/dist/commands/verification-toggle.js.map +1 -0
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +28 -0
- package/dist/commands/verify.js.map +1 -1
- package/dist/hooks/core/actions.d.ts +77 -70
- package/dist/hooks/core/actions.d.ts.map +1 -1
- package/dist/hooks/core/actions.js +45 -30
- package/dist/hooks/core/actions.js.map +1 -1
- package/dist/hooks/core/activity-end.d.ts +20 -0
- package/dist/hooks/core/activity-end.d.ts.map +1 -0
- package/dist/hooks/core/activity-end.js +23 -0
- package/dist/hooks/core/activity-end.js.map +1 -0
- package/dist/hooks/core/file-diff.d.ts +19 -0
- package/dist/hooks/core/file-diff.d.ts.map +1 -0
- package/dist/hooks/core/file-diff.js +39 -0
- package/dist/hooks/core/file-diff.js.map +1 -0
- package/dist/hooks/core/required-tools.d.ts +30 -0
- package/dist/hooks/core/required-tools.d.ts.map +1 -0
- package/dist/hooks/core/required-tools.js +70 -0
- package/dist/hooks/core/required-tools.js.map +1 -0
- package/dist/hooks/core/session-state.d.ts +12 -3
- package/dist/hooks/core/session-state.d.ts.map +1 -1
- package/dist/hooks/core/session-state.js +59 -0
- package/dist/hooks/core/session-state.js.map +1 -1
- package/dist/hooks/core/submit-verdict.d.ts.map +1 -1
- package/dist/hooks/core/submit-verdict.js +16 -12
- package/dist/hooks/core/submit-verdict.js.map +1 -1
- package/dist/hooks/core/tool-use-stash.d.ts +41 -0
- package/dist/hooks/core/tool-use-stash.d.ts.map +1 -0
- package/dist/hooks/core/tool-use-stash.js +82 -0
- package/dist/hooks/core/tool-use-stash.js.map +1 -0
- package/dist/hooks/core/verify-gate.d.ts +17 -3
- package/dist/hooks/core/verify-gate.d.ts.map +1 -1
- package/dist/hooks/core/verify-gate.js +315 -119
- package/dist/hooks/core/verify-gate.js.map +1 -1
- package/dist/import/claude/analytics-runner.d.ts +42 -0
- package/dist/import/claude/analytics-runner.d.ts.map +1 -0
- package/dist/import/claude/analytics-runner.js +213 -0
- package/dist/import/claude/analytics-runner.js.map +1 -0
- package/dist/import/claude/discovery.d.ts +22 -0
- package/dist/import/claude/discovery.d.ts.map +1 -0
- package/dist/import/claude/discovery.js +197 -0
- package/dist/import/claude/discovery.js.map +1 -0
- package/dist/import/claude/encoding.d.ts +50 -0
- package/dist/import/claude/encoding.d.ts.map +1 -0
- package/dist/import/claude/encoding.js +110 -0
- package/dist/import/claude/encoding.js.map +1 -0
- package/dist/import/claude/events/file-change.d.ts +28 -0
- package/dist/import/claude/events/file-change.d.ts.map +1 -0
- package/dist/import/claude/events/file-change.js +112 -0
- package/dist/import/claude/events/file-change.js.map +1 -0
- package/dist/import/claude/events/tool-call.d.ts +61 -0
- package/dist/import/claude/events/tool-call.d.ts.map +1 -0
- package/dist/import/claude/events/tool-call.js +119 -0
- package/dist/import/claude/events/tool-call.js.map +1 -0
- package/dist/import/claude/runner.d.ts +31 -0
- package/dist/import/claude/runner.d.ts.map +1 -0
- package/dist/import/claude/runner.js +280 -0
- package/dist/import/claude/runner.js.map +1 -0
- package/dist/import/claude/summary.d.ts +23 -0
- package/dist/import/claude/summary.d.ts.map +1 -0
- package/dist/import/claude/summary.js +186 -0
- package/dist/import/claude/summary.js.map +1 -0
- package/dist/import/claude/transcript-walk.d.ts +52 -0
- package/dist/import/claude/transcript-walk.d.ts.map +1 -0
- package/dist/import/claude/transcript-walk.js +187 -0
- package/dist/import/claude/transcript-walk.js.map +1 -0
- package/dist/import/concurrent-pool.d.ts +45 -0
- package/dist/import/concurrent-pool.d.ts.map +1 -0
- package/dist/import/concurrent-pool.js +95 -0
- package/dist/import/concurrent-pool.js.map +1 -0
- package/dist/import/emitter.d.ts +29 -0
- package/dist/import/emitter.d.ts.map +1 -0
- package/dist/import/emitter.js +66 -0
- package/dist/import/emitter.js.map +1 -0
- package/dist/import/events/activity.d.ts +23 -0
- package/dist/import/events/activity.d.ts.map +1 -0
- package/dist/import/events/activity.js +45 -0
- package/dist/import/events/activity.js.map +1 -0
- package/dist/import/events/session.d.ts +24 -0
- package/dist/import/events/session.d.ts.map +1 -0
- package/dist/import/events/session.js +47 -0
- package/dist/import/events/session.js.map +1 -0
- package/dist/import/filter.d.ts +47 -0
- package/dist/import/filter.d.ts.map +1 -0
- package/dist/import/filter.js +90 -0
- package/dist/import/filter.js.map +1 -0
- package/dist/import/ids.d.ts +56 -0
- package/dist/import/ids.d.ts.map +1 -0
- package/dist/import/ids.js +87 -0
- package/dist/import/ids.js.map +1 -0
- package/dist/import/index.d.ts +29 -0
- package/dist/import/index.d.ts.map +1 -0
- package/dist/import/index.js +52 -0
- package/dist/import/index.js.map +1 -0
- package/dist/import/marker.d.ts +20 -0
- package/dist/import/marker.d.ts.map +1 -0
- package/dist/import/marker.js +71 -0
- package/dist/import/marker.js.map +1 -0
- package/dist/import/pipeline.d.ts +41 -0
- package/dist/import/pipeline.d.ts.map +1 -0
- package/dist/import/pipeline.js +47 -0
- package/dist/import/pipeline.js.map +1 -0
- package/dist/import/progress.d.ts +20 -0
- package/dist/import/progress.d.ts.map +1 -0
- package/dist/import/progress.js +69 -0
- package/dist/import/progress.js.map +1 -0
- package/dist/import/skip.d.ts +13 -0
- package/dist/import/skip.d.ts.map +1 -0
- package/dist/import/skip.js +24 -0
- package/dist/import/skip.js.map +1 -0
- package/dist/import/types.d.ts +125 -0
- package/dist/import/types.d.ts.map +1 -0
- package/dist/import/types.js +28 -0
- package/dist/import/types.js.map +1 -0
- package/dist/index.js +21 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/collector.d.ts +29 -3
- package/dist/lib/collector.d.ts.map +1 -1
- package/dist/lib/collector.js +118 -8
- package/dist/lib/collector.js.map +1 -1
- package/dist/lib/config.d.ts +240 -83
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +482 -89
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/event.d.ts +72 -0
- package/dist/lib/event.d.ts.map +1 -0
- package/dist/lib/event.js +42 -0
- package/dist/lib/event.js.map +1 -0
- package/dist/lib/gitignore.d.ts +21 -0
- package/dist/lib/gitignore.d.ts.map +1 -0
- package/dist/lib/gitignore.js +54 -0
- package/dist/lib/gitignore.js.map +1 -0
- package/dist/lib/runtime-section.d.ts +118 -0
- package/dist/lib/runtime-section.d.ts.map +1 -0
- package/dist/lib/runtime-section.js +256 -0
- package/dist/lib/runtime-section.js.map +1 -0
- package/dist/lib/telemetry.d.ts +1 -1
- package/dist/lib/telemetry.d.ts.map +1 -1
- package/dist/lib/telemetry.js +4 -1
- package/dist/lib/telemetry.js.map +1 -1
- package/dist/queue/dead-letter.d.ts +5 -1
- package/dist/queue/dead-letter.d.ts.map +1 -1
- package/dist/queue/dead-letter.js +5 -1
- package/dist/queue/dead-letter.js.map +1 -1
- package/dist/queue/drain.d.ts +3 -2
- package/dist/queue/drain.d.ts.map +1 -1
- package/dist/queue/drain.js +3 -2
- package/dist/queue/drain.js.map +1 -1
- package/dist/queue/flush.d.ts +28 -12
- package/dist/queue/flush.d.ts.map +1 -1
- package/dist/queue/flush.js +43 -18
- package/dist/queue/flush.js.map +1 -1
- package/dist/queue/handlers/send-event.d.ts.map +1 -1
- package/dist/queue/handlers/send-event.js.map +1 -1
- package/dist/queue/index.d.ts +1 -2
- package/dist/queue/index.d.ts.map +1 -1
- package/dist/queue/index.js +2 -2
- package/dist/queue/index.js.map +1 -1
- package/dist/queue/paths.d.ts +4 -2
- package/dist/queue/paths.d.ts.map +1 -1
- package/dist/queue/paths.js +4 -2
- package/dist/queue/paths.js.map +1 -1
- package/dist/queue/process-file.d.ts +5 -1
- package/dist/queue/process-file.d.ts.map +1 -1
- package/dist/queue/process-file.js +5 -1
- package/dist/queue/process-file.js.map +1 -1
- package/dist/queue/snapshot.d.ts +4 -1
- package/dist/queue/snapshot.d.ts.map +1 -1
- package/dist/queue/snapshot.js +4 -1
- package/dist/queue/snapshot.js.map +1 -1
- package/dist/queue/spawn.d.ts +1 -3
- package/dist/queue/spawn.d.ts.map +1 -1
- package/dist/queue/spawn.js +1 -3
- package/dist/queue/spawn.js.map +1 -1
- package/dist/queue/submit.d.ts +6 -1
- package/dist/queue/submit.d.ts.map +1 -1
- package/dist/queue/submit.js +6 -1
- package/dist/queue/submit.js.map +1 -1
- package/dist/queue/types.d.ts +5 -1
- package/dist/queue/types.d.ts.map +1 -1
- package/dist/queue/types.js +5 -1
- package/dist/queue/types.js.map +1 -1
- package/dist/queue/worker-log.d.ts +3 -1
- package/dist/queue/worker-log.d.ts.map +1 -1
- package/dist/queue/worker-log.js +3 -1
- package/dist/queue/worker-log.js.map +1 -1
- package/package.json +3 -1
package/dist/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* IronBee — Event Base Types
|
|
3
|
+
*
|
|
4
|
+
* The generic event interface every IronBee event extends. Concrete
|
|
5
|
+
* events (e.g. `ToolCallAction`, `VerificationRequestedAction`,
|
|
6
|
+
* `SessionAnalyticsEvent`) live alongside the code that produces them
|
|
7
|
+
* but always extend this `Event` (or one of its hierarchical variants:
|
|
8
|
+
* `ActivityAwareEvent`, `VerificationAwareEvent`, `FixAwareEvent`).
|
|
9
|
+
*
|
|
10
|
+
* The collector contract is a flat array of `Event` objects — see
|
|
11
|
+
* `src/lib/collector.ts:postEventsBatch`. Both the on-disk
|
|
12
|
+
* `actions.jsonl` log and the queue's `send_event` jobs carry the same
|
|
13
|
+
* `Event` shape, keeping the wire format uniform.
|
|
14
|
+
*
|
|
15
|
+
* `id`, `session_id`, `project_name`, and `user_email` are populated by
|
|
16
|
+
* `baseFields()` in `src/hooks/core/actions.ts`; concrete event
|
|
17
|
+
* constructors spread that helper's output to satisfy the contract
|
|
18
|
+
* without duplicating derivation logic.
|
|
19
|
+
*/
|
|
20
|
+
/** Event type catalog — mirrors the Java `EventType` enum. */
|
|
21
|
+
export declare const EventType: {
|
|
22
|
+
readonly SESSION_START: "session_start";
|
|
23
|
+
readonly SESSION_END: "session_end";
|
|
24
|
+
readonly ACTIVITY_START: "activity_start";
|
|
25
|
+
readonly ACTIVITY_END: "activity_end";
|
|
26
|
+
readonly VERIFICATION_START: "verification_start";
|
|
27
|
+
readonly VERIFICATION_END: "verification_end";
|
|
28
|
+
readonly VERIFICATION_REQUESTED: "verification_requested";
|
|
29
|
+
readonly VERDICT_WRITE: "verdict_write";
|
|
30
|
+
readonly FIX_START: "fix_start";
|
|
31
|
+
readonly FIX_END: "fix_end";
|
|
32
|
+
readonly FILE_CHANGE: "file_change";
|
|
33
|
+
readonly TOOL_CALL: "tool_call";
|
|
34
|
+
readonly SESSION_ANALYTICS: "session_analytics";
|
|
35
|
+
readonly SESSION_TURN: "session_turn_analytics";
|
|
36
|
+
readonly SESSION_TURN_STEP: "session_turn_step_analytics";
|
|
37
|
+
readonly API_REQUEST: "api_request";
|
|
38
|
+
};
|
|
39
|
+
export type EventTypeValue = typeof EventType[keyof typeof EventType];
|
|
40
|
+
/**
|
|
41
|
+
* The base shape every IronBee event carries on the wire and on disk.
|
|
42
|
+
*
|
|
43
|
+
* Concrete events extend this with a discriminator (`type`) and
|
|
44
|
+
* type-specific fields (e.g. `tool_name`, `analytics`).
|
|
45
|
+
*/
|
|
46
|
+
export interface Event {
|
|
47
|
+
id: string;
|
|
48
|
+
type: EventTypeValue;
|
|
49
|
+
timestamp: number;
|
|
50
|
+
session_id: string;
|
|
51
|
+
project_name: string;
|
|
52
|
+
user_email?: string;
|
|
53
|
+
[key: string]: unknown;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Marker interfaces for hierarchical parent IDs.
|
|
57
|
+
*
|
|
58
|
+
* Hierarchy: session > activity > verification + fix.
|
|
59
|
+
*
|
|
60
|
+
* `VerificationAwareEvent` and `FixAwareEvent` extend `ActivityAwareEvent`
|
|
61
|
+
* — a verification or fix cycle is always part of an activity turn.
|
|
62
|
+
*/
|
|
63
|
+
export interface ActivityAwareEvent extends Event {
|
|
64
|
+
activity_id: string;
|
|
65
|
+
}
|
|
66
|
+
export interface VerificationAwareEvent extends ActivityAwareEvent {
|
|
67
|
+
verification_id: string;
|
|
68
|
+
}
|
|
69
|
+
export interface FixAwareEvent extends ActivityAwareEvent {
|
|
70
|
+
fix_id: string;
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=event.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event.d.ts","sourceRoot":"","sources":["../../src/lib/event.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,8DAA8D;AAC9D,eAAO,MAAM,SAAS,EAAE;IACpB,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;IACpC,QAAQ,CAAC,cAAc,EAAE,gBAAgB,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC;IACtC,QAAQ,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;IAClD,QAAQ,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;IAC9C,QAAQ,CAAC,sBAAsB,EAAE,wBAAwB,CAAC;IAC1D,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;IACpC,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;IAChC,QAAQ,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;IAChD,QAAQ,CAAC,YAAY,EAAE,wBAAwB,CAAC;IAChD,QAAQ,CAAC,iBAAiB,EAAE,6BAA6B,CAAC;IAC1D,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;CAkB9B,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,OAAO,SAAS,CAAC,MAAM,OAAO,SAAS,CAAC,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,WAAW,KAAK;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,cAAc,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAmB,SAAQ,KAAK;IAC7C,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAuB,SAAQ,kBAAkB;IAC9D,eAAe,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IACrD,MAAM,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* IronBee — Event Base Types
|
|
4
|
+
*
|
|
5
|
+
* The generic event interface every IronBee event extends. Concrete
|
|
6
|
+
* events (e.g. `ToolCallAction`, `VerificationRequestedAction`,
|
|
7
|
+
* `SessionAnalyticsEvent`) live alongside the code that produces them
|
|
8
|
+
* but always extend this `Event` (or one of its hierarchical variants:
|
|
9
|
+
* `ActivityAwareEvent`, `VerificationAwareEvent`, `FixAwareEvent`).
|
|
10
|
+
*
|
|
11
|
+
* The collector contract is a flat array of `Event` objects — see
|
|
12
|
+
* `src/lib/collector.ts:postEventsBatch`. Both the on-disk
|
|
13
|
+
* `actions.jsonl` log and the queue's `send_event` jobs carry the same
|
|
14
|
+
* `Event` shape, keeping the wire format uniform.
|
|
15
|
+
*
|
|
16
|
+
* `id`, `session_id`, `project_name`, and `user_email` are populated by
|
|
17
|
+
* `baseFields()` in `src/hooks/core/actions.ts`; concrete event
|
|
18
|
+
* constructors spread that helper's output to satisfy the contract
|
|
19
|
+
* without duplicating derivation logic.
|
|
20
|
+
*/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.EventType = void 0;
|
|
23
|
+
/** Event type catalog — mirrors the Java `EventType` enum. */
|
|
24
|
+
exports.EventType = {
|
|
25
|
+
SESSION_START: "session_start",
|
|
26
|
+
SESSION_END: "session_end",
|
|
27
|
+
ACTIVITY_START: "activity_start",
|
|
28
|
+
ACTIVITY_END: "activity_end",
|
|
29
|
+
VERIFICATION_START: "verification_start",
|
|
30
|
+
VERIFICATION_END: "verification_end",
|
|
31
|
+
VERIFICATION_REQUESTED: "verification_requested",
|
|
32
|
+
VERDICT_WRITE: "verdict_write",
|
|
33
|
+
FIX_START: "fix_start",
|
|
34
|
+
FIX_END: "fix_end",
|
|
35
|
+
FILE_CHANGE: "file_change",
|
|
36
|
+
TOOL_CALL: "tool_call",
|
|
37
|
+
SESSION_ANALYTICS: "session_analytics",
|
|
38
|
+
SESSION_TURN: "session_turn_analytics",
|
|
39
|
+
SESSION_TURN_STEP: "session_turn_step_analytics",
|
|
40
|
+
API_REQUEST: "api_request",
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/lib/event.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;AAEH,8DAA8D;AACjD,QAAA,SAAS,GAiBlB;IACA,aAAa,EAAE,eAAe;IAC9B,WAAW,EAAE,aAAa;IAC1B,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,kBAAkB,EAAE,oBAAoB;IACxC,gBAAgB,EAAE,kBAAkB;IACpC,sBAAsB,EAAE,wBAAwB;IAChD,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;IAClB,WAAW,EAAE,aAAa;IAC1B,SAAS,EAAE,WAAW;IACtB,iBAAiB,EAAE,mBAAmB;IACtC,YAAY,EAAE,wBAAwB;IACtC,iBAAiB,EAAE,6BAA6B;IAChD,WAAW,EAAE,aAAa;CACpB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project `.gitignore` helper. Idempotently ensures `.ironbee/sessions/`
|
|
3
|
+
* is gitignored so per-session runtime artifacts (marker files, session
|
|
4
|
+
* state, action logs, queue files, …) don't accidentally get committed.
|
|
5
|
+
*
|
|
6
|
+
* Called from two places:
|
|
7
|
+
* - `ironbee install` — once per project, alongside `.ironbee/` mkdir.
|
|
8
|
+
* - `ironbee import` — before writing each session marker, so import-only
|
|
9
|
+
* usage (skipping install) still leaves the gitignore in a clean state.
|
|
10
|
+
*
|
|
11
|
+
* No-op when the line already exists, or when `projectDir` itself doesn't
|
|
12
|
+
* exist on disk (synthetic projectDir from undecoded `--all-projects`
|
|
13
|
+
* folder names).
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Append `.ironbee/sessions/` to `<projectDir>/.gitignore`, creating the
|
|
17
|
+
* file if needed. No-op when the line is already present or when
|
|
18
|
+
* `projectDir` doesn't exist.
|
|
19
|
+
*/
|
|
20
|
+
export declare function ensureIronBeeGitignored(projectDir: string): void;
|
|
21
|
+
//# sourceMappingURL=gitignore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitignore.d.ts","sourceRoot":"","sources":["../../src/lib/gitignore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAeH;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAmBhE"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Project `.gitignore` helper. Idempotently ensures `.ironbee/sessions/`
|
|
4
|
+
* is gitignored so per-session runtime artifacts (marker files, session
|
|
5
|
+
* state, action logs, queue files, …) don't accidentally get committed.
|
|
6
|
+
*
|
|
7
|
+
* Called from two places:
|
|
8
|
+
* - `ironbee install` — once per project, alongside `.ironbee/` mkdir.
|
|
9
|
+
* - `ironbee import` — before writing each session marker, so import-only
|
|
10
|
+
* usage (skipping install) still leaves the gitignore in a clean state.
|
|
11
|
+
*
|
|
12
|
+
* No-op when the line already exists, or when `projectDir` itself doesn't
|
|
13
|
+
* exist on disk (synthetic projectDir from undecoded `--all-projects`
|
|
14
|
+
* folder names).
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.ensureIronBeeGitignored = ensureIronBeeGitignored;
|
|
18
|
+
const fs_1 = require("fs");
|
|
19
|
+
const path_1 = require("path");
|
|
20
|
+
const logger_1 = require("./logger");
|
|
21
|
+
const IGNORE_BLOCK = [
|
|
22
|
+
"",
|
|
23
|
+
"# IronBee runtime artifacts",
|
|
24
|
+
".ironbee/sessions/",
|
|
25
|
+
];
|
|
26
|
+
/** Pattern used to detect "already ignored" — substring match on this exact line. */
|
|
27
|
+
const IGNORE_MARKER = ".ironbee/sessions/";
|
|
28
|
+
/**
|
|
29
|
+
* Append `.ironbee/sessions/` to `<projectDir>/.gitignore`, creating the
|
|
30
|
+
* file if needed. No-op when the line is already present or when
|
|
31
|
+
* `projectDir` doesn't exist.
|
|
32
|
+
*/
|
|
33
|
+
function ensureIronBeeGitignored(projectDir) {
|
|
34
|
+
if (!(0, fs_1.existsSync)(projectDir)) {
|
|
35
|
+
logger_1.logger.debug(`gitignore: projectDir ${projectDir} does not exist — skipping`);
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const gitignorePath = (0, path_1.join)(projectDir, ".gitignore");
|
|
39
|
+
try {
|
|
40
|
+
if (!(0, fs_1.existsSync)(gitignorePath)) {
|
|
41
|
+
(0, fs_1.writeFileSync)(gitignorePath, IGNORE_BLOCK.join("\n") + "\n");
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
const existing = (0, fs_1.readFileSync)(gitignorePath, "utf-8");
|
|
45
|
+
if (existing.includes(IGNORE_MARKER)) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
(0, fs_1.writeFileSync)(gitignorePath, existing + IGNORE_BLOCK.join("\n") + "\n");
|
|
49
|
+
}
|
|
50
|
+
catch (e) {
|
|
51
|
+
logger_1.logger.debug(`gitignore: write ${gitignorePath} failed: ${e instanceof Error ? e.message : e}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=gitignore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitignore.js","sourceRoot":"","sources":["../../src/lib/gitignore.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;AAoBH,0DAmBC;AArCD,2BAA6D;AAC7D,+BAA4B;AAC5B,qCAAkC;AAElC,MAAM,YAAY,GAAa;IAC3B,EAAE;IACF,6BAA6B;IAC7B,oBAAoB;CACvB,CAAC;AAEF,qFAAqF;AACrF,MAAM,aAAa,GAAW,oBAAoB,CAAC;AAEnD;;;;GAIG;AACH,SAAgB,uBAAuB,CAAC,UAAkB;IACtD,IAAI,CAAC,IAAA,eAAU,EAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,eAAM,CAAC,KAAK,CAAC,yBAAyB,UAAU,4BAA4B,CAAC,CAAC;QAC9E,OAAO;IACX,CAAC;IACD,MAAM,aAAa,GAAW,IAAA,WAAI,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC7D,IAAI,CAAC;QACD,IAAI,CAAC,IAAA,eAAU,EAAC,aAAa,CAAC,EAAE,CAAC;YAC7B,IAAA,kBAAa,EAAC,aAAa,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YAC7D,OAAO;QACX,CAAC;QACD,MAAM,QAAQ,GAAW,IAAA,iBAAY,EAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC9D,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACnC,OAAO;QACX,CAAC;QACD,IAAA,kBAAa,EAAC,aAAa,EAAE,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAC5E,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,eAAM,CAAC,KAAK,CAAC,oBAAoB,aAAa,YAAY,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACpG,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime-section toggling for skill / rule / command markdown files.
|
|
3
|
+
*
|
|
4
|
+
* Each agent-facing markdown file (skill, rule, slash command) carries one
|
|
5
|
+
* or more marker blocks per backend runtime. Two marker syntaxes are
|
|
6
|
+
* supported:
|
|
7
|
+
*
|
|
8
|
+
* <!--IRONBEE:RUNTIME:node-->
|
|
9
|
+
* ...content here...
|
|
10
|
+
* <!--/IRONBEE:RUNTIME:node-->
|
|
11
|
+
*
|
|
12
|
+
* (the unkeyed form — handy when a file only needs a single block per
|
|
13
|
+
* runtime), and:
|
|
14
|
+
*
|
|
15
|
+
* <!--IRONBEE:RUNTIME:node:tldr-->
|
|
16
|
+
* ...short heads-up content...
|
|
17
|
+
* <!--/IRONBEE:RUNTIME:node:tldr-->
|
|
18
|
+
* ...
|
|
19
|
+
* <!--IRONBEE:RUNTIME:node:full-->
|
|
20
|
+
* ...detailed flow...
|
|
21
|
+
* <!--/IRONBEE:RUNTIME:node:full-->
|
|
22
|
+
*
|
|
23
|
+
* (the keyed form — handy when the same runtime needs different content at
|
|
24
|
+
* different positions in the same file: short summary up top, full flow at
|
|
25
|
+
* the bottom, etc.). Keys are alphanumeric + hyphen.
|
|
26
|
+
*
|
|
27
|
+
* Two states per block:
|
|
28
|
+
* - **disabled** — replaced with a short placeholder telling the agent
|
|
29
|
+
* the runtime is off and reminding them not to invoke runtime tools
|
|
30
|
+
* when the backend isn't actually that runtime.
|
|
31
|
+
* - **enabled** — replaced with the full guidance fragment for that
|
|
32
|
+
* runtime + key.
|
|
33
|
+
*
|
|
34
|
+
* `ironbee install` writes one or the other based on config state at
|
|
35
|
+
* install time. `ironbee enable-backend <runtime>` /
|
|
36
|
+
* `disable-backend <runtime>` flip already-installed files in place — no
|
|
37
|
+
* re-install needed. The marker block (and its key) is preserved on every
|
|
38
|
+
* flip so the toggle is always reversible.
|
|
39
|
+
*/
|
|
40
|
+
/** Type accepted as the `replacement` argument to `applyRuntimeSection`.
|
|
41
|
+
*
|
|
42
|
+
* - `string` → used verbatim for every block (every key) of this runtime.
|
|
43
|
+
* - `null` → placeholder used for every block.
|
|
44
|
+
* - `(key: string) => string | null` → resolved per block; returning null
|
|
45
|
+
* uses the placeholder for that block.
|
|
46
|
+
*/
|
|
47
|
+
export type RuntimeReplacement = string | null | ((key: string) => string | null);
|
|
48
|
+
/**
|
|
49
|
+
* Replace the contents of every runtime-section marker block for `runtime`
|
|
50
|
+
* in `fileContent`. Returns the new content (or the original content if no
|
|
51
|
+
* markers are found).
|
|
52
|
+
*
|
|
53
|
+
* Each block in the file is independently resolved. The same runtime can
|
|
54
|
+
* have multiple blocks distinguished by their key — see file header for
|
|
55
|
+
* the syntax. Blocks that share a key are still treated as a structural
|
|
56
|
+
* bug: only the first is updated and a warning is emitted.
|
|
57
|
+
*
|
|
58
|
+
* The markers themselves are preserved so the operation is reversible.
|
|
59
|
+
*/
|
|
60
|
+
export declare function applyRuntimeSection(fileContent: string, runtime: string, replacement: RuntimeReplacement, fileLabel?: string): string;
|
|
61
|
+
/**
|
|
62
|
+
* Build the on-disk fragment filename for `(fragmentBase, runtime, key)`:
|
|
63
|
+
* - keyless block (`key === ""`) → `<base>.<runtime>.md`
|
|
64
|
+
* - keyed block → `<base>.<runtime>.<key>.md`
|
|
65
|
+
*/
|
|
66
|
+
export declare function fragmentFilename(fragmentBase: string, runtime: string, key: string): string;
|
|
67
|
+
/** Read a fragment file from `${baseDir}/${name}`. Throws when missing. */
|
|
68
|
+
export declare function readFragment(baseDir: string, name: string): string;
|
|
69
|
+
/**
|
|
70
|
+
* Read the file at `targetPath`, apply the runtime section toggle, and
|
|
71
|
+
* write back if the content actually changed. No-op when the marker is
|
|
72
|
+
* missing.
|
|
73
|
+
*/
|
|
74
|
+
export declare function toggleRuntimeSectionInFile(targetPath: string, runtime: string, replacement: RuntimeReplacement): boolean;
|
|
75
|
+
/**
|
|
76
|
+
* One md file in a project that carries runtime markers, paired with the
|
|
77
|
+
* fragment base name to use when the runtime is enabled. Fragments live in
|
|
78
|
+
* the compiled `dist/clients/<client>/fragments/` directory at runtime.
|
|
79
|
+
*
|
|
80
|
+
* The same `fragmentBase` is reused for every key in the file — keyed
|
|
81
|
+
* fragments add `.<key>` before the `.md` extension (see
|
|
82
|
+
* `fragmentFilename`). E.g. fragmentBase `"skill"` + runtime `"node"`
|
|
83
|
+
* resolves to `skill.node.md` for the keyless block, `skill.node.tldr.md`
|
|
84
|
+
* for the `tldr` keyed block, etc.
|
|
85
|
+
*/
|
|
86
|
+
export interface RuntimeTarget {
|
|
87
|
+
/** Project-relative path to the installed md file (e.g. `.claude/skills/...`). */
|
|
88
|
+
projectRelativePath: string;
|
|
89
|
+
/** Fragment file base — see `fragmentFilename` for the full naming rule. */
|
|
90
|
+
fragmentBase: string;
|
|
91
|
+
}
|
|
92
|
+
/** Project files that carry runtime markers, per client. */
|
|
93
|
+
export declare const RUNTIME_TARGETS: Record<string, RuntimeTarget[]>;
|
|
94
|
+
/**
|
|
95
|
+
* Toggle every runtime-section block (across every key) in every installed
|
|
96
|
+
* md file across all known clients in `projectDir`. Files that don't exist
|
|
97
|
+
* are silently skipped (the client may not be installed for this project).
|
|
98
|
+
*
|
|
99
|
+
* When `enabled === true`, fragments for each block's key are loaded from
|
|
100
|
+
* `fragmentsDirFor(client)`. Missing fragment files for a key fall back to
|
|
101
|
+
* the placeholder rather than crashing — the source md is the source of
|
|
102
|
+
* truth for which keys exist; missing fragments are an authoring gap.
|
|
103
|
+
*
|
|
104
|
+
* Returns the list of project-relative paths that were updated.
|
|
105
|
+
*/
|
|
106
|
+
export declare function applyRuntimeToProjectFiles(projectDir: string, runtime: string, enabled: boolean, fragmentsDirFor: (client: string) => string, clientFilter?: string[]): string[];
|
|
107
|
+
/**
|
|
108
|
+
* Sync every registered runtime's section in the project's installed md
|
|
109
|
+
* files to match the current config state — ON when the runtime has
|
|
110
|
+
* non-empty `backend.<runtime>.verifyPatterns`, OFF otherwise.
|
|
111
|
+
*
|
|
112
|
+
* Called by `ironbee install` right after the source md files are written
|
|
113
|
+
* so that re-installing a project that already enabled a runtime preserves
|
|
114
|
+
* the enabled fragment in the freshly-written files (instead of leaving
|
|
115
|
+
* the source's empty marker block visible).
|
|
116
|
+
*/
|
|
117
|
+
export declare function syncRuntimeSectionsToConfig(projectDir: string, fragmentsDirFor: (client: string) => string): void;
|
|
118
|
+
//# sourceMappingURL=runtime-section.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-section.d.ts","sourceRoot":"","sources":["../../src/lib/runtime-section.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAoFH;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC;AAElF;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,kBAAkB,EAC/B,SAAS,CAAC,EAAE,MAAM,GACnB,MAAM,CA0BR;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAI3F;AAED,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMlE;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACtC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,kBAAkB,GAChC,OAAO,CAWT;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC1B,kFAAkF;IAClF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,4DAA4D;AAC5D,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,CAW3D,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CACtC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,EAC3C,YAAY,CAAC,EAAE,MAAM,EAAE,GACxB,MAAM,EAAE,CAiCV;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CACvC,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GAC5C,IAAI,CAON"}
|
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Runtime-section toggling for skill / rule / command markdown files.
|
|
4
|
+
*
|
|
5
|
+
* Each agent-facing markdown file (skill, rule, slash command) carries one
|
|
6
|
+
* or more marker blocks per backend runtime. Two marker syntaxes are
|
|
7
|
+
* supported:
|
|
8
|
+
*
|
|
9
|
+
* <!--IRONBEE:RUNTIME:node-->
|
|
10
|
+
* ...content here...
|
|
11
|
+
* <!--/IRONBEE:RUNTIME:node-->
|
|
12
|
+
*
|
|
13
|
+
* (the unkeyed form — handy when a file only needs a single block per
|
|
14
|
+
* runtime), and:
|
|
15
|
+
*
|
|
16
|
+
* <!--IRONBEE:RUNTIME:node:tldr-->
|
|
17
|
+
* ...short heads-up content...
|
|
18
|
+
* <!--/IRONBEE:RUNTIME:node:tldr-->
|
|
19
|
+
* ...
|
|
20
|
+
* <!--IRONBEE:RUNTIME:node:full-->
|
|
21
|
+
* ...detailed flow...
|
|
22
|
+
* <!--/IRONBEE:RUNTIME:node:full-->
|
|
23
|
+
*
|
|
24
|
+
* (the keyed form — handy when the same runtime needs different content at
|
|
25
|
+
* different positions in the same file: short summary up top, full flow at
|
|
26
|
+
* the bottom, etc.). Keys are alphanumeric + hyphen.
|
|
27
|
+
*
|
|
28
|
+
* Two states per block:
|
|
29
|
+
* - **disabled** — replaced with a short placeholder telling the agent
|
|
30
|
+
* the runtime is off and reminding them not to invoke runtime tools
|
|
31
|
+
* when the backend isn't actually that runtime.
|
|
32
|
+
* - **enabled** — replaced with the full guidance fragment for that
|
|
33
|
+
* runtime + key.
|
|
34
|
+
*
|
|
35
|
+
* `ironbee install` writes one or the other based on config state at
|
|
36
|
+
* install time. `ironbee enable-backend <runtime>` /
|
|
37
|
+
* `disable-backend <runtime>` flip already-installed files in place — no
|
|
38
|
+
* re-install needed. The marker block (and its key) is preserved on every
|
|
39
|
+
* flip so the toggle is always reversible.
|
|
40
|
+
*/
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.RUNTIME_TARGETS = void 0;
|
|
43
|
+
exports.applyRuntimeSection = applyRuntimeSection;
|
|
44
|
+
exports.fragmentFilename = fragmentFilename;
|
|
45
|
+
exports.readFragment = readFragment;
|
|
46
|
+
exports.toggleRuntimeSectionInFile = toggleRuntimeSectionInFile;
|
|
47
|
+
exports.applyRuntimeToProjectFiles = applyRuntimeToProjectFiles;
|
|
48
|
+
exports.syncRuntimeSectionsToConfig = syncRuntimeSectionsToConfig;
|
|
49
|
+
const fs_1 = require("fs");
|
|
50
|
+
const logger_1 = require("./logger");
|
|
51
|
+
const config_1 = require("./config");
|
|
52
|
+
/** Per-runtime placeholder content (shown when runtime is disabled). */
|
|
53
|
+
const PLACEHOLDERS = {
|
|
54
|
+
node: [
|
|
55
|
+
"<!-- Node backend verification is OFF for this project.",
|
|
56
|
+
" - If your backend is Node.js: run `ironbee enable-backend node` to enable.",
|
|
57
|
+
" This file will be auto-updated with the node-cycle guidance.",
|
|
58
|
+
" - If your backend is Java / Python / Go / Rust / .NET / Ruby / PHP / Elixir / etc.:",
|
|
59
|
+
" leave this OFF — `ndt_*` tools only attach to V8/Node processes and will fail elsewhere.",
|
|
60
|
+
" - When OFF, do NOT invoke any `ndt_*` tools voluntarily. -->",
|
|
61
|
+
].join("\n"),
|
|
62
|
+
};
|
|
63
|
+
/** Escape a runtime name for use inside a regex. Runtime names are short
|
|
64
|
+
* ASCII identifiers but be defensive anyway. */
|
|
65
|
+
function escapeRegex(s) {
|
|
66
|
+
return s.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
67
|
+
}
|
|
68
|
+
/** Build the start-marker regex for a runtime. The captured group is the
|
|
69
|
+
* optional key (empty when the keyless form is used). */
|
|
70
|
+
function startMarkerRegex(runtime) {
|
|
71
|
+
return new RegExp(`<!--IRONBEE:RUNTIME:${escapeRegex(runtime)}(?::([\\w-]+))?-->`, "g");
|
|
72
|
+
}
|
|
73
|
+
/** Build the end marker for a runtime + key. Key may be empty for keyless. */
|
|
74
|
+
function endMarkerFor(runtime, key) {
|
|
75
|
+
return key.length > 0
|
|
76
|
+
? `<!--/IRONBEE:RUNTIME:${runtime}:${key}-->`
|
|
77
|
+
: `<!--/IRONBEE:RUNTIME:${runtime}-->`;
|
|
78
|
+
}
|
|
79
|
+
function findMarkerBlocks(content, runtime, fileLabel) {
|
|
80
|
+
const re = startMarkerRegex(runtime);
|
|
81
|
+
const blocks = [];
|
|
82
|
+
const keysSeen = new Set();
|
|
83
|
+
let m = re.exec(content);
|
|
84
|
+
while (m !== null) {
|
|
85
|
+
const key = m[1] ?? "";
|
|
86
|
+
const startEnd = m.index + m[0].length;
|
|
87
|
+
const endMarker = endMarkerFor(runtime, key);
|
|
88
|
+
const endIdx = content.indexOf(endMarker, startEnd);
|
|
89
|
+
if (endIdx === -1) {
|
|
90
|
+
const labelSuffix = fileLabel ? ` in ${fileLabel}` : "";
|
|
91
|
+
const keyDisplay = key.length > 0 ? `${runtime}:${key}` : runtime;
|
|
92
|
+
logger_1.logger.debug(`runtime-section ${keyDisplay}: start marker found without matching end marker${labelSuffix}`);
|
|
93
|
+
m = re.exec(content);
|
|
94
|
+
continue;
|
|
95
|
+
}
|
|
96
|
+
if (keysSeen.has(key)) {
|
|
97
|
+
const labelSuffix = fileLabel ? ` in ${fileLabel}` : "";
|
|
98
|
+
const keyDisplay = key.length > 0 ? `${runtime}:${key}` : runtime;
|
|
99
|
+
logger_1.logger.warn(`runtime-section ${keyDisplay}: multiple marker blocks with the same key${labelSuffix} — only the first will be updated. ` +
|
|
100
|
+
`Either consolidate the blocks or use distinct keys (\`IRONBEE:RUNTIME:${runtime}:<key>\`) per position.`);
|
|
101
|
+
m = re.exec(content);
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
keysSeen.add(key);
|
|
105
|
+
blocks.push({ key, startEnd, endIdx });
|
|
106
|
+
m = re.exec(content);
|
|
107
|
+
}
|
|
108
|
+
return blocks;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Replace the contents of every runtime-section marker block for `runtime`
|
|
112
|
+
* in `fileContent`. Returns the new content (or the original content if no
|
|
113
|
+
* markers are found).
|
|
114
|
+
*
|
|
115
|
+
* Each block in the file is independently resolved. The same runtime can
|
|
116
|
+
* have multiple blocks distinguished by their key — see file header for
|
|
117
|
+
* the syntax. Blocks that share a key are still treated as a structural
|
|
118
|
+
* bug: only the first is updated and a warning is emitted.
|
|
119
|
+
*
|
|
120
|
+
* The markers themselves are preserved so the operation is reversible.
|
|
121
|
+
*/
|
|
122
|
+
function applyRuntimeSection(fileContent, runtime, replacement, fileLabel) {
|
|
123
|
+
const getRepl = typeof replacement === "function"
|
|
124
|
+
? replacement
|
|
125
|
+
: () => replacement;
|
|
126
|
+
const blocks = findMarkerBlocks(fileContent, runtime, fileLabel);
|
|
127
|
+
if (blocks.length === 0) {
|
|
128
|
+
return fileContent;
|
|
129
|
+
}
|
|
130
|
+
const placeholder = PLACEHOLDERS[runtime];
|
|
131
|
+
if (placeholder === undefined) {
|
|
132
|
+
throw new Error(`No placeholder registered for runtime '${runtime}'.`);
|
|
133
|
+
}
|
|
134
|
+
// Apply replacements in REVERSE so earlier indices stay valid as we
|
|
135
|
+
// splice. Keep each marker pair intact; only the inner content moves.
|
|
136
|
+
let result = fileContent;
|
|
137
|
+
for (let i = blocks.length - 1; i >= 0; i--) {
|
|
138
|
+
const b = blocks[i];
|
|
139
|
+
const inner = getRepl(b.key) ?? placeholder;
|
|
140
|
+
const before = result.substring(0, b.startEnd);
|
|
141
|
+
const after = result.substring(b.endIdx);
|
|
142
|
+
result = `${before}\n${inner}\n${after}`;
|
|
143
|
+
}
|
|
144
|
+
return result;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Build the on-disk fragment filename for `(fragmentBase, runtime, key)`:
|
|
148
|
+
* - keyless block (`key === ""`) → `<base>.<runtime>.md`
|
|
149
|
+
* - keyed block → `<base>.<runtime>.<key>.md`
|
|
150
|
+
*/
|
|
151
|
+
function fragmentFilename(fragmentBase, runtime, key) {
|
|
152
|
+
return key.length > 0
|
|
153
|
+
? `${fragmentBase}.${runtime}.${key}.md`
|
|
154
|
+
: `${fragmentBase}.${runtime}.md`;
|
|
155
|
+
}
|
|
156
|
+
/** Read a fragment file from `${baseDir}/${name}`. Throws when missing. */
|
|
157
|
+
function readFragment(baseDir, name) {
|
|
158
|
+
const path = `${baseDir}/${name}`;
|
|
159
|
+
if (!(0, fs_1.existsSync)(path)) {
|
|
160
|
+
throw new Error(`Runtime fragment not found: ${path}`);
|
|
161
|
+
}
|
|
162
|
+
return (0, fs_1.readFileSync)(path, "utf-8").trimEnd();
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Read the file at `targetPath`, apply the runtime section toggle, and
|
|
166
|
+
* write back if the content actually changed. No-op when the marker is
|
|
167
|
+
* missing.
|
|
168
|
+
*/
|
|
169
|
+
function toggleRuntimeSectionInFile(targetPath, runtime, replacement) {
|
|
170
|
+
if (!(0, fs_1.existsSync)(targetPath)) {
|
|
171
|
+
return false;
|
|
172
|
+
}
|
|
173
|
+
const original = (0, fs_1.readFileSync)(targetPath, "utf-8");
|
|
174
|
+
const updated = applyRuntimeSection(original, runtime, replacement, targetPath);
|
|
175
|
+
if (updated === original) {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
(0, fs_1.writeFileSync)(targetPath, updated);
|
|
179
|
+
return true;
|
|
180
|
+
}
|
|
181
|
+
/** Project files that carry runtime markers, per client. */
|
|
182
|
+
exports.RUNTIME_TARGETS = {
|
|
183
|
+
claude: [
|
|
184
|
+
{ projectRelativePath: ".claude/skills/ironbee-verification.md", fragmentBase: "skill" },
|
|
185
|
+
{ projectRelativePath: ".claude/rules/ironbee-verification.md", fragmentBase: "rule" },
|
|
186
|
+
{ projectRelativePath: ".claude/commands/ironbee-verify.md", fragmentBase: "command-verify" },
|
|
187
|
+
],
|
|
188
|
+
cursor: [
|
|
189
|
+
{ projectRelativePath: ".cursor/skills/ironbee-verification.md", fragmentBase: "skill" },
|
|
190
|
+
{ projectRelativePath: ".cursor/rules/ironbee-verification.mdc", fragmentBase: "rule" },
|
|
191
|
+
{ projectRelativePath: ".cursor/commands/ironbee-verify/SKILL.md", fragmentBase: "command-verify" },
|
|
192
|
+
],
|
|
193
|
+
};
|
|
194
|
+
/**
|
|
195
|
+
* Toggle every runtime-section block (across every key) in every installed
|
|
196
|
+
* md file across all known clients in `projectDir`. Files that don't exist
|
|
197
|
+
* are silently skipped (the client may not be installed for this project).
|
|
198
|
+
*
|
|
199
|
+
* When `enabled === true`, fragments for each block's key are loaded from
|
|
200
|
+
* `fragmentsDirFor(client)`. Missing fragment files for a key fall back to
|
|
201
|
+
* the placeholder rather than crashing — the source md is the source of
|
|
202
|
+
* truth for which keys exist; missing fragments are an authoring gap.
|
|
203
|
+
*
|
|
204
|
+
* Returns the list of project-relative paths that were updated.
|
|
205
|
+
*/
|
|
206
|
+
function applyRuntimeToProjectFiles(projectDir, runtime, enabled, fragmentsDirFor, clientFilter) {
|
|
207
|
+
const updated = [];
|
|
208
|
+
const allClients = Object.keys(exports.RUNTIME_TARGETS);
|
|
209
|
+
const clientsToApply = clientFilter === undefined
|
|
210
|
+
? allClients
|
|
211
|
+
: allClients.filter((c) => clientFilter.includes(c));
|
|
212
|
+
for (const client of clientsToApply) {
|
|
213
|
+
const targets = exports.RUNTIME_TARGETS[client];
|
|
214
|
+
const fragmentsDir = fragmentsDirFor(client);
|
|
215
|
+
for (const t of targets) {
|
|
216
|
+
const target = `${projectDir}/${t.projectRelativePath}`;
|
|
217
|
+
if (!(0, fs_1.existsSync)(target)) {
|
|
218
|
+
continue;
|
|
219
|
+
}
|
|
220
|
+
const resolver = enabled
|
|
221
|
+
? (key) => {
|
|
222
|
+
const path = `${fragmentsDir}/${fragmentFilename(t.fragmentBase, runtime, key)}`;
|
|
223
|
+
if (!(0, fs_1.existsSync)(path)) {
|
|
224
|
+
const keyDisplay = key.length > 0 ? `${runtime}:${key}` : runtime;
|
|
225
|
+
logger_1.logger.warn(`runtime-section ${keyDisplay}: missing fragment ${path} for ${t.projectRelativePath} — falling back to placeholder.`);
|
|
226
|
+
return null;
|
|
227
|
+
}
|
|
228
|
+
return (0, fs_1.readFileSync)(path, "utf-8").trimEnd();
|
|
229
|
+
}
|
|
230
|
+
: null;
|
|
231
|
+
if (toggleRuntimeSectionInFile(target, runtime, resolver)) {
|
|
232
|
+
updated.push(t.projectRelativePath);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
return updated;
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Sync every registered runtime's section in the project's installed md
|
|
240
|
+
* files to match the current config state — ON when the runtime has
|
|
241
|
+
* non-empty `backend.<runtime>.verifyPatterns`, OFF otherwise.
|
|
242
|
+
*
|
|
243
|
+
* Called by `ironbee install` right after the source md files are written
|
|
244
|
+
* so that re-installing a project that already enabled a runtime preserves
|
|
245
|
+
* the enabled fragment in the freshly-written files (instead of leaving
|
|
246
|
+
* the source's empty marker block visible).
|
|
247
|
+
*/
|
|
248
|
+
function syncRuntimeSectionsToConfig(projectDir, fragmentsDirFor) {
|
|
249
|
+
const config = (0, config_1.loadConfig)(projectDir);
|
|
250
|
+
for (const runtime of Object.keys(config_1.RUNTIME_TO_SERVER)) {
|
|
251
|
+
const patterns = config.backend?.[runtime]?.verifyPatterns;
|
|
252
|
+
const enabled = Array.isArray(patterns) && patterns.length > 0;
|
|
253
|
+
applyRuntimeToProjectFiles(projectDir, runtime, enabled, fragmentsDirFor);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
//# sourceMappingURL=runtime-section.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-section.js","sourceRoot":"","sources":["../../src/lib/runtime-section.ts"],"names":[],"mappings":"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"}
|