@openagt/dashboard 0.8.0 → 0.9.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/README.md +6 -6
- package/dist/agent-view.d.ts +3 -3
- package/dist/bridge-browser.d.ts +4 -4
- package/dist/bridge-browser.d.ts.map +1 -1
- package/dist/bridge-browser.js +8 -8
- package/dist/bridge-browser.js.map +1 -1
- package/dist/built-in.d.ts +13 -4
- package/dist/built-in.d.ts.map +1 -1
- package/dist/built-in.js +45 -4
- package/dist/built-in.js.map +1 -1
- package/dist/chrome-extension/background.js +11 -11
- package/dist/chrome-extension/content.js +37 -37
- package/dist/chrome-extension/driver-plan.js +1 -1
- package/dist/chrome-extension/fingerprint.js +1 -1
- package/dist/chrome-extension/manifest.json +3 -3
- package/dist/chrome-extension/options.html +4 -4
- package/dist/chrome-extension/options.js +4 -4
- package/dist/cli.d.ts +1 -1
- package/dist/cli.js +7 -7
- package/dist/cli.js.map +1 -1
- package/dist/client.d.ts +1 -1
- package/dist/client.js +2 -2
- package/dist/cloud-run-state.d.ts +1 -1
- package/dist/cloud-scratch-refs.js +7 -7
- package/dist/cloud-scratch-refs.js.map +1 -1
- package/dist/cloud-work.js +2 -2
- package/dist/daemon-runtime.d.ts +5 -4
- package/dist/daemon-runtime.d.ts.map +1 -1
- package/dist/daemon-runtime.js +59 -9
- package/dist/daemon-runtime.js.map +1 -1
- package/dist/daemon-services.d.ts +4 -3
- package/dist/daemon-services.d.ts.map +1 -1
- package/dist/daemon-services.js +14 -8
- package/dist/daemon-services.js.map +1 -1
- package/dist/daemon-tick.js +1 -1
- package/dist/daemon.d.ts +1 -12
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +9 -32
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/agent-handoff.d.ts +4 -4
- package/dist/dashboard/agent-handoff.js +7 -7
- package/dist/dashboard/agent-handoff.js.map +1 -1
- package/dist/dashboard/bridge-endpoints.d.ts +3 -3
- package/dist/dashboard/bridge-endpoints.js +3 -3
- package/dist/dashboard/content-type.js +1 -1
- package/dist/dashboard/docs.d.ts +1 -1
- package/dist/dashboard/docs.js +1 -1
- package/dist/dashboard/git-status.d.ts +1 -1
- package/dist/dashboard/index.d.ts +1 -1
- package/dist/dashboard/index.d.ts.map +1 -1
- package/dist/dashboard/interventions.d.ts +2 -2
- package/dist/dashboard/open-in-app.d.ts +3 -3
- package/dist/dashboard/open-in-app.js +4 -4
- package/dist/dashboard/open-questions.d.ts +2 -2
- package/dist/dashboard/projects.d.ts +6 -5
- package/dist/dashboard/projects.d.ts.map +1 -1
- package/dist/dashboard/projects.js.map +1 -1
- package/dist/dashboard/pull-requests.d.ts +5 -5
- package/dist/dashboard/pull-requests.d.ts.map +1 -1
- package/dist/dashboard/pull-requests.js +2 -2
- package/dist/dashboard/pull-requests.js.map +1 -1
- package/dist/dashboard/relay-endpoints.d.ts +3 -3
- package/dist/dashboard/relay-endpoints.js +1 -1
- package/dist/dashboard/remote-run.d.ts +5 -5
- package/dist/dashboard/remote-run.js +3 -3
- package/dist/dashboard/rpc-serve.d.ts +7 -4
- package/dist/dashboard/rpc-serve.d.ts.map +1 -1
- package/dist/dashboard/rpc-serve.js.map +1 -1
- package/dist/dashboard/run-inbox.d.ts +2 -2
- package/dist/dashboard/run-inbox.js +4 -4
- package/dist/dashboard/run-inbox.js.map +1 -1
- package/dist/dashboard/server.d.ts +6 -4
- package/dist/dashboard/server.d.ts.map +1 -1
- package/dist/dashboard/server.js +3 -2
- package/dist/dashboard/server.js.map +1 -1
- package/dist/dashboard/static.js +1 -1
- package/dist/dashboard/types.d.ts +29 -3
- package/dist/dashboard/types.d.ts.map +1 -1
- package/dist/dashboard/web-start-endpoints.d.ts +1 -1
- package/dist/dashboard/web-start-endpoints.d.ts.map +1 -1
- package/dist/dashboard/web-start-endpoints.js +1 -1
- package/dist/dashboard/web-start-endpoints.js.map +1 -1
- package/dist/dashboard-bundle/assets/{main-om0WOAku.js → main-B98UOA3_.js} +48 -48
- package/dist/dashboard-bundle/assets/main-ByRjbCiA.css +2 -0
- package/dist/dashboard-bundle/assets/{module-jASZmfSB.js → module-v213KWfH.js} +4 -4
- package/dist/dashboard-bundle/host/module.js +1 -1
- package/dist/dashboard-bundle/index.html +6 -6
- package/dist/dashboard-rpc/context.d.ts +2 -0
- package/dist/dashboard-rpc/context.d.ts.map +1 -1
- package/dist/dashboard-rpc/context.js +4 -0
- package/dist/dashboard-rpc/context.js.map +1 -1
- package/dist/dashboard-rpc/control.d.ts +1 -1
- package/dist/dashboard-rpc/control.js +3 -3
- package/dist/dashboard-rpc/control.js.map +1 -1
- package/dist/dashboard-rpc/events.d.ts +3 -3
- package/dist/dashboard-rpc/index.d.ts +1 -1
- package/dist/dashboard-rpc/index.d.ts.map +1 -1
- package/dist/dashboard-rpc/index.js +1 -1
- package/dist/dashboard-rpc/index.js.map +1 -1
- package/dist/dashboard-rpc/modules.d.ts +8 -6
- package/dist/dashboard-rpc/modules.d.ts.map +1 -1
- package/dist/dashboard-rpc/modules.js +8 -6
- package/dist/dashboard-rpc/modules.js.map +1 -1
- package/dist/dashboard-rpc/preferences.d.ts +2 -2
- package/dist/dashboard-rpc/preferences.d.ts.map +1 -1
- package/dist/dashboard-rpc/preferences.js +2 -2
- package/dist/dashboard-rpc/preferences.js.map +1 -1
- package/dist/dashboard-rpc/projects.d.ts +29 -3
- package/dist/dashboard-rpc/projects.d.ts.map +1 -1
- package/dist/dashboard-rpc/projects.js +49 -7
- package/dist/dashboard-rpc/projects.js.map +1 -1
- package/dist/dashboard-rpc/reads.d.ts +3 -3
- package/dist/dashboard-rpc/reads.js +1 -1
- package/dist/dashboard-rpc/test-context.d.ts.map +1 -1
- package/dist/dashboard-rpc/test-context.js +4 -3
- package/dist/dashboard-rpc/test-context.js.map +1 -1
- package/dist/event-stream.d.ts +1 -1
- package/dist/event-stream.js +1 -1
- package/dist/events.d.ts +8 -8
- package/dist/events.d.ts.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/install.d.ts +9 -7
- package/dist/install.d.ts.map +1 -1
- package/dist/install.js +28 -14
- package/dist/install.js.map +1 -1
- package/dist/module-server.d.ts +1 -1
- package/dist/module-types/dashboard/lib/route.d.ts +2 -1
- package/dist/module-types/dashboard/lib/use-modules.d.ts +4 -3
- package/dist/module-types/dashboard/module/index.d.ts +5 -5
- package/dist/module-types/src/agent-view.d.ts +3 -3
- package/dist/module-types/src/bridge-browser.d.ts +4 -4
- package/dist/module-types/src/built-in.d.ts +13 -4
- package/dist/module-types/src/client.d.ts +1 -1
- package/dist/module-types/src/cloud-run-state.d.ts +1 -1
- package/dist/module-types/src/dashboard/agent-handoff.d.ts +4 -4
- package/dist/module-types/src/dashboard/bridge-endpoints.d.ts +3 -3
- package/dist/module-types/src/dashboard/docs.d.ts +1 -1
- package/dist/module-types/src/dashboard/git-status.d.ts +1 -1
- package/dist/module-types/src/dashboard/interventions.d.ts +2 -2
- package/dist/module-types/src/dashboard/open-in-app.d.ts +3 -3
- package/dist/module-types/src/dashboard/open-questions.d.ts +2 -2
- package/dist/module-types/src/dashboard/projects.d.ts +6 -5
- package/dist/module-types/src/dashboard/pull-requests.d.ts +5 -5
- package/dist/module-types/src/dashboard/remote-run.d.ts +5 -5
- package/dist/module-types/src/dashboard/rpc-serve.d.ts +7 -4
- package/dist/module-types/src/dashboard/run-inbox.d.ts +2 -2
- package/dist/module-types/src/dashboard/types.d.ts +29 -3
- package/dist/module-types/src/dashboard-rpc/context.d.ts +2 -0
- package/dist/module-types/src/dashboard-rpc/control.d.ts +1 -1
- package/dist/module-types/src/dashboard-rpc/events.d.ts +3 -3
- package/dist/module-types/src/dashboard-rpc/index.d.ts +1 -1
- package/dist/module-types/src/dashboard-rpc/modules.d.ts +8 -6
- package/dist/module-types/src/dashboard-rpc/preferences.d.ts +2 -2
- package/dist/module-types/src/dashboard-rpc/projects.d.ts +29 -3
- package/dist/module-types/src/dashboard-rpc/reads.d.ts +3 -3
- package/dist/module-types/src/event-stream.d.ts +1 -1
- package/dist/module-types/src/events.d.ts +8 -8
- package/dist/module-types/src/index.d.ts +3 -2
- package/dist/module-types/src/open-choices.d.ts +2 -2
- package/dist/module-types/src/{framework-dir.d.ts → openagent-dir.d.ts} +2 -2
- package/dist/module-types/src/openagent-gitignore.d.ts +11 -0
- package/dist/module-types/src/project-commands.d.ts +1 -1
- package/dist/module-types/src/project-errors.d.ts +11 -7
- package/dist/module-types/src/project-hooks.d.ts +4 -4
- package/dist/module-types/src/project-modules.d.ts +5 -5
- package/dist/module-types/src/project-presets.d.ts +4 -4
- package/dist/module-types/src/project.d.ts +6 -6
- package/dist/module-types/src/publish-levels.d.ts +4 -4
- package/dist/module-types/src/quota-boundary.d.ts +2 -2
- package/dist/module-types/src/registry.d.ts +13 -7
- package/dist/module-types/src/store/agent-checkout.d.ts +1 -1
- package/dist/module-types/src/store/agent-store.d.ts +6 -6
- package/dist/module-types/src/store/branches.d.ts +7 -7
- package/dist/module-types/src/store/git-host.d.ts +7 -7
- package/dist/module-types/src/store/provided.d.ts +3 -3
- package/dist/module-types/src/store/queue.d.ts +8 -8
- package/dist/module-types/src/store/repository.d.ts +2 -2
- package/dist/module-types/src/store/run-record.d.ts +10 -10
- package/dist/module-types/src/store/runs.d.ts +6 -6
- package/dist/module-types/src/store/tickets.d.ts +7 -7
- package/dist/module-types/src/terminal.d.ts +3 -3
- package/dist/open-choices.d.ts +2 -2
- package/dist/{framework-dir.js → openagent-dir.d.ts} +3 -3
- package/dist/openagent-dir.d.ts.map +1 -0
- package/dist/{framework-dir.d.ts → openagent-dir.js} +3 -3
- package/dist/openagent-dir.js.map +1 -0
- package/dist/openagent-gitignore.d.ts +12 -0
- package/dist/openagent-gitignore.d.ts.map +1 -0
- package/dist/openagent-gitignore.js +19 -0
- package/dist/openagent-gitignore.js.map +1 -0
- package/dist/pick-directory.js +2 -2
- package/dist/pick-directory.js.map +1 -1
- package/dist/project-commands.d.ts +1 -1
- package/dist/project-commands.js +1 -1
- package/dist/project-errors.d.ts +11 -7
- package/dist/project-errors.d.ts.map +1 -1
- package/dist/project-errors.js +10 -8
- package/dist/project-errors.js.map +1 -1
- package/dist/project-hooks.d.ts +4 -4
- package/dist/project-hooks.d.ts.map +1 -1
- package/dist/project-hooks.js +8 -8
- package/dist/project-hooks.js.map +1 -1
- package/dist/project-modules.d.ts +5 -5
- package/dist/project-modules.js +2 -2
- package/dist/project-presets.d.ts +4 -4
- package/dist/project-presets.d.ts.map +1 -1
- package/dist/project-presets.js +9 -9
- package/dist/project-presets.js.map +1 -1
- package/dist/project.d.ts +6 -6
- package/dist/project.js +6 -6
- package/dist/publish-levels.d.ts +4 -4
- package/dist/publish-levels.d.ts.map +1 -1
- package/dist/publish-levels.js +7 -5
- package/dist/publish-levels.js.map +1 -1
- package/dist/quota-boundary.d.ts +2 -2
- package/dist/quota-boundary.js +2 -2
- package/dist/registry.d.ts +13 -7
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +19 -3
- package/dist/registry.js.map +1 -1
- package/dist/remove-files.d.ts +24 -0
- package/dist/remove-files.d.ts.map +1 -0
- package/dist/remove-files.js +98 -0
- package/dist/remove-files.js.map +1 -0
- package/dist/store/agent-checkout.d.ts +1 -1
- package/dist/store/agent-checkout.js +3 -3
- package/dist/store/agent-checkout.js.map +1 -1
- package/dist/store/agent-store.d.ts +6 -6
- package/dist/store/agent-store.js +8 -8
- package/dist/store/agent-store.js.map +1 -1
- package/dist/store/branches.d.ts +7 -7
- package/dist/store/branches.d.ts.map +1 -1
- package/dist/store/branches.js +1 -1
- package/dist/store/branches.js.map +1 -1
- package/dist/store/git-host.d.ts +7 -7
- package/dist/store/git-host.d.ts.map +1 -1
- package/dist/store/git-host.js +1 -1
- package/dist/store/git-host.js.map +1 -1
- package/dist/store/provided.d.ts +3 -3
- package/dist/store/provided.d.ts.map +1 -1
- package/dist/store/provided.js +3 -3
- package/dist/store/provided.js.map +1 -1
- package/dist/store/queue.d.ts +8 -8
- package/dist/store/queue.d.ts.map +1 -1
- package/dist/store/queue.js +1 -1
- package/dist/store/queue.js.map +1 -1
- package/dist/store/repository.d.ts +2 -2
- package/dist/store/run-record.d.ts +10 -10
- package/dist/store/run-record.d.ts.map +1 -1
- package/dist/store/run-record.js +7 -7
- package/dist/store/run-record.js.map +1 -1
- package/dist/store/runs.d.ts +6 -6
- package/dist/store/runs.d.ts.map +1 -1
- package/dist/store/runs.js +2 -2
- package/dist/store/runs.js.map +1 -1
- package/dist/store/tickets.d.ts +7 -7
- package/dist/store/tickets.d.ts.map +1 -1
- package/dist/store/tickets.js +1 -1
- package/dist/store/tickets.js.map +1 -1
- package/dist/terminal.d.ts +3 -3
- package/dist/terminal.js +3 -3
- package/package.json +19 -19
- package/dist/agent-archive.d.ts +0 -35
- package/dist/agent-archive.d.ts.map +0 -1
- package/dist/agent-archive.js +0 -67
- package/dist/agent-archive.js.map +0 -1
- package/dist/agent-commit.d.ts +0 -140
- package/dist/agent-commit.d.ts.map +0 -1
- package/dist/agent-commit.js +0 -254
- package/dist/agent-commit.js.map +0 -1
- package/dist/agent-driver.d.ts +0 -28
- package/dist/agent-driver.d.ts.map +0 -1
- package/dist/agent-driver.js +0 -18
- package/dist/agent-driver.js.map +0 -1
- package/dist/agent-location.d.ts +0 -11
- package/dist/agent-location.d.ts.map +0 -1
- package/dist/agent-location.js +0 -10
- package/dist/agent-location.js.map +0 -1
- package/dist/agent-messages.d.ts +0 -55
- package/dist/agent-messages.d.ts.map +0 -1
- package/dist/agent-messages.js +0 -73
- package/dist/agent-messages.js.map +0 -1
- package/dist/agent-names.d.ts +0 -24
- package/dist/agent-names.d.ts.map +0 -1
- package/dist/agent-names.js +0 -33
- package/dist/agent-names.js.map +0 -1
- package/dist/agent-options.d.ts +0 -45
- package/dist/agent-options.d.ts.map +0 -1
- package/dist/agent-options.js +0 -83
- package/dist/agent-options.js.map +0 -1
- package/dist/agent-spec.d.ts +0 -56
- package/dist/agent-spec.d.ts.map +0 -1
- package/dist/agent-spec.js +0 -56
- package/dist/agent-spec.js.map +0 -1
- package/dist/agent-telemetry.d.ts +0 -88
- package/dist/agent-telemetry.d.ts.map +0 -1
- package/dist/agent-telemetry.js +0 -97
- package/dist/agent-telemetry.js.map +0 -1
- package/dist/agent.d.ts +0 -113
- package/dist/agent.d.ts.map +0 -1
- package/dist/agent.js +0 -168
- package/dist/agent.js.map +0 -1
- package/dist/archived-agent-patch.d.ts +0 -14
- package/dist/archived-agent-patch.d.ts.map +0 -1
- package/dist/archived-agent-patch.js +0 -22
- package/dist/archived-agent-patch.js.map +0 -1
- package/dist/auto-pm.d.ts +0 -538
- package/dist/auto-pm.d.ts.map +0 -1
- package/dist/auto-pm.js +0 -707
- package/dist/auto-pm.js.map +0 -1
- package/dist/await-gate.d.ts +0 -184
- package/dist/await-gate.d.ts.map +0 -1
- package/dist/await-gate.js +0 -252
- package/dist/await-gate.js.map +0 -1
- package/dist/branch-links-pass.d.ts +0 -15
- package/dist/branch-links-pass.d.ts.map +0 -1
- package/dist/branch-links-pass.js +0 -13
- package/dist/branch-links-pass.js.map +0 -1
- package/dist/branch-links.d.ts +0 -53
- package/dist/branch-links.d.ts.map +0 -1
- package/dist/branch-links.js +0 -94
- package/dist/branch-links.js.map +0 -1
- package/dist/branch-names.d.ts +0 -57
- package/dist/branch-names.d.ts.map +0 -1
- package/dist/branch-names.js +0 -72
- package/dist/branch-names.js.map +0 -1
- package/dist/ci-watch.d.ts +0 -123
- package/dist/ci-watch.d.ts.map +0 -1
- package/dist/ci-watch.js +0 -228
- package/dist/ci-watch.js.map +0 -1
- package/dist/claude-trust.d.ts +0 -16
- package/dist/claude-trust.d.ts.map +0 -1
- package/dist/claude-trust.js +0 -72
- package/dist/claude-trust.js.map +0 -1
- package/dist/cli-exec.d.ts +0 -36
- package/dist/cli-exec.d.ts.map +0 -1
- package/dist/cli-exec.js +0 -44
- package/dist/cli-exec.js.map +0 -1
- package/dist/closing-keywords.d.ts +0 -28
- package/dist/closing-keywords.d.ts.map +0 -1
- package/dist/closing-keywords.js +0 -49
- package/dist/closing-keywords.js.map +0 -1
- package/dist/config-layers.d.ts +0 -62
- package/dist/config-layers.d.ts.map +0 -1
- package/dist/config-layers.js +0 -70
- package/dist/config-layers.js.map +0 -1
- package/dist/config.d.ts +0 -54
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -78
- package/dist/config.js.map +0 -1
- package/dist/consumption-guard.d.ts +0 -53
- package/dist/consumption-guard.d.ts.map +0 -1
- package/dist/consumption-guard.js +0 -69
- package/dist/consumption-guard.js.map +0 -1
- package/dist/control.d.ts +0 -75
- package/dist/control.d.ts.map +0 -1
- package/dist/control.js +0 -68
- package/dist/control.js.map +0 -1
- package/dist/conversation-commit.d.ts +0 -166
- package/dist/conversation-commit.d.ts.map +0 -1
- package/dist/conversation-commit.js +0 -309
- package/dist/conversation-commit.js.map +0 -1
- package/dist/conversations.d.ts +0 -93
- package/dist/conversations.d.ts.map +0 -1
- package/dist/conversations.js +0 -176
- package/dist/conversations.js.map +0 -1
- package/dist/daemon-writes.d.ts +0 -33
- package/dist/daemon-writes.d.ts.map +0 -1
- package/dist/daemon-writes.js +0 -45
- package/dist/daemon-writes.js.map +0 -1
- package/dist/dashboard/agent-tree.d.ts +0 -106
- package/dist/dashboard/agent-tree.d.ts.map +0 -1
- package/dist/dashboard/agent-tree.js +0 -180
- package/dist/dashboard/agent-tree.js.map +0 -1
- package/dist/dashboard/browser-proxy.d.ts +0 -41
- package/dist/dashboard/browser-proxy.d.ts.map +0 -1
- package/dist/dashboard/browser-proxy.js +0 -96
- package/dist/dashboard/browser-proxy.js.map +0 -1
- package/dist/dashboard/discord-webhook.d.ts +0 -17
- package/dist/dashboard/discord-webhook.d.ts.map +0 -1
- package/dist/dashboard/discord-webhook.js +0 -36
- package/dist/dashboard/discord-webhook.js.map +0 -1
- package/dist/dashboard/file-diff.d.ts +0 -67
- package/dist/dashboard/file-diff.d.ts.map +0 -1
- package/dist/dashboard/file-diff.js +0 -132
- package/dist/dashboard/file-diff.js.map +0 -1
- package/dist/dashboard/file-read.d.ts +0 -42
- package/dist/dashboard/file-read.d.ts.map +0 -1
- package/dist/dashboard/file-read.js +0 -69
- package/dist/dashboard/file-read.js.map +0 -1
- package/dist/dashboard/file-status.d.ts +0 -21
- package/dist/dashboard/file-status.d.ts.map +0 -1
- package/dist/dashboard/file-status.js +0 -37
- package/dist/dashboard/file-status.js.map +0 -1
- package/dist/dashboard/gh.d.ts +0 -131
- package/dist/dashboard/gh.d.ts.map +0 -1
- package/dist/dashboard/gh.js +0 -150
- package/dist/dashboard/gh.js.map +0 -1
- package/dist/dashboard/github.d.ts +0 -11
- package/dist/dashboard/github.d.ts.map +0 -1
- package/dist/dashboard/github.js +0 -33
- package/dist/dashboard/github.js.map +0 -1
- package/dist/dashboard/run-handoff.d.ts +0 -311
- package/dist/dashboard/run-handoff.d.ts.map +0 -1
- package/dist/dashboard/run-handoff.js +0 -485
- package/dist/dashboard/run-handoff.js.map +0 -1
- package/dist/dashboard/scheduler-state.d.ts +0 -73
- package/dist/dashboard/scheduler-state.d.ts.map +0 -1
- package/dist/dashboard/scheduler-state.js +0 -120
- package/dist/dashboard/scheduler-state.js.map +0 -1
- package/dist/dashboard/subagent-settings.d.ts +0 -26
- package/dist/dashboard/subagent-settings.d.ts.map +0 -1
- package/dist/dashboard/subagent-settings.js +0 -52
- package/dist/dashboard/subagent-settings.js.map +0 -1
- package/dist/dashboard/telefunc-serve.d.ts +0 -118
- package/dist/dashboard/telefunc-serve.d.ts.map +0 -1
- package/dist/dashboard/telefunc-serve.js +0 -108
- package/dist/dashboard/telefunc-serve.js.map +0 -1
- package/dist/dashboard/tickets.d.ts +0 -29
- package/dist/dashboard/tickets.d.ts.map +0 -1
- package/dist/dashboard/tickets.js +0 -38
- package/dist/dashboard/tickets.js.map +0 -1
- package/dist/dashboard/widget-serve.d.ts +0 -15
- package/dist/dashboard/widget-serve.d.ts.map +0 -1
- package/dist/dashboard/widget-serve.js +0 -45
- package/dist/dashboard/widget-serve.js.map +0 -1
- package/dist/dashboard-bundle/assets/main-B3HghPQy.css +0 -2
- package/dist/dashboard-client/assets/chunks/chunk-BF9pJudf.js +0 -4
- package/dist/dashboard-client/assets/entries/entry-client-routing.CT1e9F0o.js +0 -1
- package/dist/dashboard-client/assets/entries/pages_index.CkW5JQ8X.js +0 -428
- package/dist/dashboard-client/assets/static/layouts_tailwind-00e65532.8OjKGAbA.css +0 -2
- package/dist/dashboard-client/index.html +0 -27
- package/dist/dashboard-client/index.pageContext.json +0 -1
- package/dist/dashboard-client/logo-animated.svg +0 -34
- package/dist/dashboard-client/logo.svg +0 -16
- package/dist/dashboard-rpc/control.telefunc.d.ts +0 -176
- package/dist/dashboard-rpc/control.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/control.telefunc.js +0 -373
- package/dist/dashboard-rpc/control.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/devices.telefunc.d.ts +0 -9
- package/dist/dashboard-rpc/devices.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/devices.telefunc.js +0 -12
- package/dist/dashboard-rpc/devices.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/events.telefunc.d.ts +0 -36
- package/dist/dashboard-rpc/events.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/events.telefunc.js +0 -70
- package/dist/dashboard-rpc/events.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/preferences.telefunc.d.ts +0 -97
- package/dist/dashboard-rpc/preferences.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/preferences.telefunc.js +0 -157
- package/dist/dashboard-rpc/preferences.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/projects.telefunc.d.ts +0 -56
- package/dist/dashboard-rpc/projects.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/projects.telefunc.js +0 -96
- package/dist/dashboard-rpc/projects.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/quota.telefunc.d.ts +0 -40
- package/dist/dashboard-rpc/quota.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/quota.telefunc.js +0 -84
- package/dist/dashboard-rpc/quota.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/reads.telefunc.d.ts +0 -197
- package/dist/dashboard-rpc/reads.telefunc.d.ts.map +0 -1
- package/dist/dashboard-rpc/reads.telefunc.js +0 -403
- package/dist/dashboard-rpc/reads.telefunc.js.map +0 -1
- package/dist/dashboard-rpc/register.d.ts +0 -18
- package/dist/dashboard-rpc/register.d.ts.map +0 -1
- package/dist/dashboard-rpc/register.js +0 -66
- package/dist/dashboard-rpc/register.js.map +0 -1
- package/dist/dashboard-rpc/relay-run.d.ts +0 -9
- package/dist/dashboard-rpc/relay-run.d.ts.map +0 -1
- package/dist/dashboard-rpc/relay-run.js +0 -21
- package/dist/dashboard-rpc/relay-run.js.map +0 -1
- package/dist/dashboard-rpc/stream-channel.d.ts +0 -23
- package/dist/dashboard-rpc/stream-channel.d.ts.map +0 -1
- package/dist/dashboard-rpc/stream-channel.js +0 -52
- package/dist/dashboard-rpc/stream-channel.js.map +0 -1
- package/dist/dashboard-rpc/subagents.d.ts +0 -12
- package/dist/dashboard-rpc/subagents.d.ts.map +0 -1
- package/dist/dashboard-rpc/subagents.js +0 -13
- package/dist/dashboard-rpc/subagents.js.map +0 -1
- package/dist/dashboard-rpc/widgets.d.ts +0 -33
- package/dist/dashboard-rpc/widgets.d.ts.map +0 -1
- package/dist/dashboard-rpc/widgets.js +0 -54
- package/dist/dashboard-rpc/widgets.js.map +0 -1
- package/dist/data-branch.d.ts +0 -120
- package/dist/data-branch.d.ts.map +0 -1
- package/dist/data-branch.js +0 -319
- package/dist/data-branch.js.map +0 -1
- package/dist/discord/bot.d.ts +0 -61
- package/dist/discord/bot.d.ts.map +0 -1
- package/dist/discord/bot.js +0 -94
- package/dist/discord/bot.js.map +0 -1
- package/dist/discord/gateway.d.ts +0 -137
- package/dist/discord/gateway.d.ts.map +0 -1
- package/dist/discord/gateway.js +0 -315
- package/dist/discord/gateway.js.map +0 -1
- package/dist/discord/live-run.d.ts +0 -31
- package/dist/discord/live-run.d.ts.map +0 -1
- package/dist/discord/live-run.js +0 -57
- package/dist/discord/live-run.js.map +0 -1
- package/dist/discord/reply-mirror.d.ts +0 -83
- package/dist/discord/reply-mirror.d.ts.map +0 -1
- package/dist/discord/reply-mirror.js +0 -84
- package/dist/discord/reply-mirror.js.map +0 -1
- package/dist/discord/rest.d.ts +0 -20
- package/dist/discord/rest.d.ts.map +0 -1
- package/dist/discord/rest.js +0 -41
- package/dist/discord/rest.js.map +0 -1
- package/dist/discord/routing.d.ts +0 -81
- package/dist/discord/routing.d.ts.map +0 -1
- package/dist/discord/routing.js +0 -91
- package/dist/discord/routing.js.map +0 -1
- package/dist/discord-credentials-store.d.ts +0 -14
- package/dist/discord-credentials-store.d.ts.map +0 -1
- package/dist/discord-credentials-store.js +0 -53
- package/dist/discord-credentials-store.js.map +0 -1
- package/dist/discord-credentials.d.ts +0 -80
- package/dist/discord-credentials.d.ts.map +0 -1
- package/dist/discord-credentials.js +0 -55
- package/dist/discord-credentials.js.map +0 -1
- package/dist/driver/actions-zip.d.ts +0 -2
- package/dist/driver/actions-zip.d.ts.map +0 -1
- package/dist/driver/actions-zip.js +0 -70
- package/dist/driver/actions-zip.js.map +0 -1
- package/dist/driver/actions.d.ts +0 -130
- package/dist/driver/actions.d.ts.map +0 -1
- package/dist/driver/actions.js +0 -261
- package/dist/driver/actions.js.map +0 -1
- package/dist/driver/agent-cli.d.ts +0 -57
- package/dist/driver/agent-cli.d.ts.map +0 -1
- package/dist/driver/agent-cli.js +0 -134
- package/dist/driver/agent-cli.js.map +0 -1
- package/dist/driver/child-registry.d.ts +0 -25
- package/dist/driver/child-registry.d.ts.map +0 -1
- package/dist/driver/child-registry.js +0 -53
- package/dist/driver/child-registry.js.map +0 -1
- package/dist/driver/claude-code-quota.d.ts +0 -40
- package/dist/driver/claude-code-quota.d.ts.map +0 -1
- package/dist/driver/claude-code-quota.js +0 -144
- package/dist/driver/claude-code-quota.js.map +0 -1
- package/dist/driver/claude-code.d.ts +0 -104
- package/dist/driver/claude-code.d.ts.map +0 -1
- package/dist/driver/claude-code.js +0 -314
- package/dist/driver/claude-code.js.map +0 -1
- package/dist/driver/cli-session.d.ts +0 -57
- package/dist/driver/cli-session.d.ts.map +0 -1
- package/dist/driver/cli-session.js +0 -134
- package/dist/driver/cli-session.js.map +0 -1
- package/dist/driver/cloud.d.ts +0 -109
- package/dist/driver/cloud.d.ts.map +0 -1
- package/dist/driver/cloud.js +0 -232
- package/dist/driver/cloud.js.map +0 -1
- package/dist/driver/codex.d.ts +0 -99
- package/dist/driver/codex.d.ts.map +0 -1
- package/dist/driver/codex.js +0 -190
- package/dist/driver/codex.js.map +0 -1
- package/dist/driver/fake.d.ts +0 -54
- package/dist/driver/fake.d.ts.map +0 -1
- package/dist/driver/fake.js +0 -73
- package/dist/driver/fake.js.map +0 -1
- package/dist/driver/index.d.ts +0 -10
- package/dist/driver/index.d.ts.map +0 -1
- package/dist/driver/index.js +0 -14
- package/dist/driver/index.js.map +0 -1
- package/dist/driver/session-support.d.ts +0 -14
- package/dist/driver/session-support.d.ts.map +0 -1
- package/dist/driver/session-support.js +0 -37
- package/dist/driver/session-support.js.map +0 -1
- package/dist/driver/types.d.ts +0 -310
- package/dist/driver/types.d.ts.map +0 -1
- package/dist/driver/types.js +0 -5
- package/dist/driver/types.js.map +0 -1
- package/dist/driver-cli.d.ts +0 -61
- package/dist/driver-cli.d.ts.map +0 -1
- package/dist/driver-cli.js +0 -66
- package/dist/driver-cli.js.map +0 -1
- package/dist/fake-script.d.ts +0 -15
- package/dist/fake-script.d.ts.map +0 -1
- package/dist/fake-script.js +0 -58
- package/dist/fake-script.js.map +0 -1
- package/dist/framework-dir.d.ts.map +0 -1
- package/dist/framework-dir.js.map +0 -1
- package/dist/framework-gitignore.d.ts +0 -12
- package/dist/framework-gitignore.d.ts.map +0 -1
- package/dist/framework-gitignore.js +0 -19
- package/dist/framework-gitignore.js.map +0 -1
- package/dist/gate-keepalive.d.ts +0 -47
- package/dist/gate-keepalive.d.ts.map +0 -1
- package/dist/gate-keepalive.js +0 -62
- package/dist/gate-keepalive.js.map +0 -1
- package/dist/git-exclude.d.ts +0 -11
- package/dist/git-exclude.d.ts.map +0 -1
- package/dist/git-exclude.js +0 -23
- package/dist/git-exclude.js.map +0 -1
- package/dist/handoff-level.d.ts +0 -56
- package/dist/handoff-level.d.ts.map +0 -1
- package/dist/handoff-level.js +0 -62
- package/dist/handoff-level.js.map +0 -1
- package/dist/host-exec.d.ts +0 -21
- package/dist/host-exec.d.ts.map +0 -1
- package/dist/host-exec.js +0 -30
- package/dist/host-exec.js.map +0 -1
- package/dist/layout.d.ts +0 -41
- package/dist/layout.d.ts.map +0 -1
- package/dist/layout.js +0 -69
- package/dist/layout.js.map +0 -1
- package/dist/logs.d.ts +0 -73
- package/dist/logs.d.ts.map +0 -1
- package/dist/logs.js +0 -218
- package/dist/logs.js.map +0 -1
- package/dist/maintenance.d.ts +0 -90
- package/dist/maintenance.d.ts.map +0 -1
- package/dist/maintenance.js +0 -141
- package/dist/maintenance.js.map +0 -1
- package/dist/merged-worktrees.d.ts +0 -74
- package/dist/merged-worktrees.d.ts.map +0 -1
- package/dist/merged-worktrees.js +0 -84
- package/dist/merged-worktrees.js.map +0 -1
- package/dist/module-types/src/dashboard/agent-tree.d.ts +0 -105
- package/dist/module-types/src/dashboard/file-diff.d.ts +0 -66
- package/dist/module-types/src/dashboard/file-read.d.ts +0 -41
- package/dist/module-types/src/dashboard/file-status.d.ts +0 -20
- package/dist/module-types/src/dashboard/scheduler-state.d.ts +0 -72
- package/dist/module-types/src/dashboard/subagent-settings.d.ts +0 -25
- package/dist/module-types/src/dashboard-rpc/subagents.d.ts +0 -11
- package/dist/module-types/src/framework-gitignore.d.ts +0 -11
- package/dist/module-types/src/subagent-settings.d.ts +0 -26
- package/dist/on-before-mergeable-prompt.d.ts +0 -32
- package/dist/on-before-mergeable-prompt.d.ts.map +0 -1
- package/dist/on-before-mergeable-prompt.js +0 -26
- package/dist/on-before-mergeable-prompt.js.map +0 -1
- package/dist/planned-quick-wins.d.ts +0 -102
- package/dist/planned-quick-wins.d.ts.map +0 -1
- package/dist/planned-quick-wins.js +0 -171
- package/dist/planned-quick-wins.js.map +0 -1
- package/dist/preflight.d.ts +0 -77
- package/dist/preflight.d.ts.map +0 -1
- package/dist/preflight.js +0 -91
- package/dist/preflight.js.map +0 -1
- package/dist/preset-catalog.d.ts +0 -98
- package/dist/preset-catalog.d.ts.map +0 -1
- package/dist/preset-catalog.js +0 -129
- package/dist/preset-catalog.js.map +0 -1
- package/dist/preset-prompt.d.ts +0 -81
- package/dist/preset-prompt.d.ts.map +0 -1
- package/dist/preset-prompt.js +0 -51
- package/dist/preset-prompt.js.map +0 -1
- package/dist/preset-registry.d.ts +0 -32
- package/dist/preset-registry.d.ts.map +0 -1
- package/dist/preset-registry.js +0 -35
- package/dist/preset-registry.js.map +0 -1
- package/dist/presets.d.ts +0 -20
- package/dist/presets.d.ts.map +0 -1
- package/dist/presets.js +0 -33
- package/dist/presets.js.map +0 -1
- package/dist/preview-runtime.d.ts +0 -33
- package/dist/preview-runtime.d.ts.map +0 -1
- package/dist/preview-runtime.js +0 -96
- package/dist/preview-runtime.js.map +0 -1
- package/dist/preview.d.ts +0 -78
- package/dist/preview.d.ts.map +0 -1
- package/dist/preview.js +0 -301
- package/dist/preview.js.map +0 -1
- package/dist/project-widgets.d.ts +0 -46
- package/dist/project-widgets.d.ts.map +0 -1
- package/dist/project-widgets.js +0 -93
- package/dist/project-widgets.js.map +0 -1
- package/dist/prompt-run.d.ts +0 -104
- package/dist/prompt-run.d.ts.map +0 -1
- package/dist/prompt-run.js +0 -112
- package/dist/prompt-run.js.map +0 -1
- package/dist/prompt-template.d.ts +0 -16
- package/dist/prompt-template.d.ts.map +0 -1
- package/dist/prompt-template.js +0 -56
- package/dist/prompt-template.js.map +0 -1
- package/dist/prompts.generated.d.ts +0 -53
- package/dist/prompts.generated.d.ts.map +0 -1
- package/dist/prompts.generated.js +0 -55
- package/dist/prompts.generated.js.map +0 -1
- package/dist/queue-promote.d.ts +0 -70
- package/dist/queue-promote.d.ts.map +0 -1
- package/dist/queue-promote.js +0 -118
- package/dist/queue-promote.js.map +0 -1
- package/dist/relay.d.ts +0 -84
- package/dist/relay.d.ts.map +0 -1
- package/dist/relay.js +0 -199
- package/dist/relay.js.map +0 -1
- package/dist/repos-directory.d.ts +0 -19
- package/dist/repos-directory.d.ts.map +0 -1
- package/dist/repos-directory.js +0 -23
- package/dist/repos-directory.js.map +0 -1
- package/dist/retired-project-settings.d.ts +0 -43
- package/dist/retired-project-settings.d.ts.map +0 -1
- package/dist/retired-project-settings.js +0 -125
- package/dist/retired-project-settings.js.map +0 -1
- package/dist/routine-locks.d.ts +0 -53
- package/dist/routine-locks.d.ts.map +0 -1
- package/dist/routine-locks.js +0 -125
- package/dist/routine-locks.js.map +0 -1
- package/dist/run-driver.d.ts +0 -26
- package/dist/run-driver.d.ts.map +0 -1
- package/dist/run-driver.js +0 -17
- package/dist/run-driver.js.map +0 -1
- package/dist/run-locks.d.ts +0 -3
- package/dist/run-locks.d.ts.map +0 -1
- package/dist/run-locks.js +0 -39
- package/dist/run-locks.js.map +0 -1
- package/dist/run-messages.d.ts +0 -64
- package/dist/run-messages.d.ts.map +0 -1
- package/dist/run-messages.js +0 -76
- package/dist/run-messages.js.map +0 -1
- package/dist/run-options.d.ts +0 -53
- package/dist/run-options.d.ts.map +0 -1
- package/dist/run-options.js +0 -110
- package/dist/run-options.js.map +0 -1
- package/dist/run-telemetry.d.ts +0 -115
- package/dist/run-telemetry.d.ts.map +0 -1
- package/dist/run-telemetry.js +0 -137
- package/dist/run-telemetry.js.map +0 -1
- package/dist/run-view.d.ts +0 -109
- package/dist/run-view.d.ts.map +0 -1
- package/dist/run-view.js +0 -118
- package/dist/run-view.js.map +0 -1
- package/dist/run.d.ts +0 -261
- package/dist/run.d.ts.map +0 -1
- package/dist/run.js +0 -420
- package/dist/run.js.map +0 -1
- package/dist/runtime-keys.d.ts +0 -17
- package/dist/runtime-keys.d.ts.map +0 -1
- package/dist/runtime-keys.js +0 -17
- package/dist/runtime-keys.js.map +0 -1
- package/dist/sandbox.d.ts +0 -27
- package/dist/sandbox.d.ts.map +0 -1
- package/dist/sandbox.js +0 -63
- package/dist/sandbox.js.map +0 -1
- package/dist/session-link.d.ts +0 -19
- package/dist/session-link.d.ts.map +0 -1
- package/dist/session-link.js +0 -26
- package/dist/session-link.js.map +0 -1
- package/dist/sessions.d.ts +0 -77
- package/dist/sessions.d.ts.map +0 -1
- package/dist/sessions.js +0 -146
- package/dist/sessions.js.map +0 -1
- package/dist/spike-locks.d.ts +0 -75
- package/dist/spike-locks.d.ts.map +0 -1
- package/dist/spike-locks.js +0 -208
- package/dist/spike-locks.js.map +0 -1
- package/dist/stale-branch.d.ts +0 -21
- package/dist/stale-branch.d.ts.map +0 -1
- package/dist/stale-branch.js +0 -32
- package/dist/stale-branch.js.map +0 -1
- package/dist/steps.d.ts +0 -9
- package/dist/steps.d.ts.map +0 -1
- package/dist/steps.js +0 -13
- package/dist/steps.js.map +0 -1
- package/dist/store/forge.d.ts +0 -110
- package/dist/store/forge.d.ts.map +0 -1
- package/dist/store/forge.js +0 -97
- package/dist/store/forge.js.map +0 -1
- package/dist/store/run-checkout.d.ts +0 -33
- package/dist/store/run-checkout.d.ts.map +0 -1
- package/dist/store/run-checkout.js +0 -59
- package/dist/store/run-checkout.js.map +0 -1
- package/dist/store/run-store.d.ts +0 -501
- package/dist/store/run-store.d.ts.map +0 -1
- package/dist/store/run-store.js +0 -806
- package/dist/store/run-store.js.map +0 -1
- package/dist/store/suspend.d.ts +0 -38
- package/dist/store/suspend.d.ts.map +0 -1
- package/dist/store/suspend.js +0 -45
- package/dist/store/suspend.js.map +0 -1
- package/dist/store/worktree-deps.d.ts +0 -30
- package/dist/store/worktree-deps.d.ts.map +0 -1
- package/dist/store/worktree-deps.js +0 -115
- package/dist/store/worktree-deps.js.map +0 -1
- package/dist/store/worktree.d.ts +0 -194
- package/dist/store/worktree.d.ts.map +0 -1
- package/dist/store/worktree.js +0 -331
- package/dist/store/worktree.js.map +0 -1
- package/dist/subagent-settings.d.ts +0 -27
- package/dist/subagent-settings.d.ts.map +0 -1
- package/dist/subagent-settings.js +0 -35
- package/dist/subagent-settings.js.map +0 -1
- package/dist/system-prompt-file.d.ts +0 -18
- package/dist/system-prompt-file.d.ts.map +0 -1
- package/dist/system-prompt-file.js +0 -28
- package/dist/system-prompt-file.js.map +0 -1
- package/dist/system-prompt.d.ts +0 -148
- package/dist/system-prompt.d.ts.map +0 -1
- package/dist/system-prompt.js +0 -170
- package/dist/system-prompt.js.map +0 -1
- package/dist/target-driver.d.ts +0 -28
- package/dist/target-driver.d.ts.map +0 -1
- package/dist/target-driver.js +0 -18
- package/dist/target-driver.js.map +0 -1
- package/dist/ticket-locks.d.ts +0 -61
- package/dist/ticket-locks.d.ts.map +0 -1
- package/dist/ticket-locks.js +0 -137
- package/dist/ticket-locks.js.map +0 -1
- package/dist/tickets-file.d.ts +0 -7
- package/dist/tickets-file.d.ts.map +0 -1
- package/dist/tickets-file.js +0 -21
- package/dist/tickets-file.js.map +0 -1
- package/dist/tickets.d.ts +0 -18
- package/dist/tickets.d.ts.map +0 -1
- package/dist/tickets.js +0 -23
- package/dist/tickets.js.map +0 -1
- package/dist/todo-loop.d.ts +0 -110
- package/dist/todo-loop.d.ts.map +0 -1
- package/dist/todo-loop.js +0 -175
- package/dist/todo-loop.js.map +0 -1
- package/dist/turn-gate.d.ts +0 -144
- package/dist/turn-gate.d.ts.map +0 -1
- package/dist/turn-gate.js +0 -217
- package/dist/turn-gate.js.map +0 -1
- package/dist/usage.d.ts +0 -32
- package/dist/usage.d.ts.map +0 -1
- package/dist/usage.js +0 -46
- package/dist/usage.js.map +0 -1
- package/dist/widget-types/dashboard/components/LinkActions.d.ts +0 -26
- package/dist/widget-types/dashboard/components/Markdown.d.ts +0 -4
- package/dist/widget-types/dashboard/components/StartAgentButton.d.ts +0 -39
- package/dist/widget-types/dashboard/components/ui/badge.d.ts +0 -2
- package/dist/widget-types/dashboard/components/ui/button.d.ts +0 -10
- package/dist/widget-types/dashboard/components/ui/card.d.ts +0 -5
- package/dist/widget-types/dashboard/components/ui/checkbox.d.ts +0 -7
- package/dist/widget-types/dashboard/components/ui/dropdown-menu.d.ts +0 -16
- package/dist/widget-types/dashboard/components/ui/input.d.ts +0 -2
- package/dist/widget-types/dashboard/components/ui/option-label.d.ts +0 -4
- package/dist/widget-types/dashboard/components/ui/popover.d.ts +0 -8
- package/dist/widget-types/dashboard/components/ui/scroll-area.d.ts +0 -10
- package/dist/widget-types/dashboard/components/ui/separator.d.ts +0 -3
- package/dist/widget-types/dashboard/components/ui/skeleton.d.ts +0 -2
- package/dist/widget-types/dashboard/components/ui/slider.d.ts +0 -9
- package/dist/widget-types/dashboard/components/ui/tooltip.d.ts +0 -11
- package/dist/widget-types/dashboard/lib/draft-handoff.d.ts +0 -15
- package/dist/widget-types/dashboard/lib/format-date.d.ts +0 -51
- package/dist/widget-types/dashboard/lib/host-services.d.ts +0 -12
- package/dist/widget-types/dashboard/lib/route.d.ts +0 -24
- package/dist/widget-types/dashboard/lib/rpc.d.ts +0 -31
- package/dist/widget-types/dashboard/lib/use-action.d.ts +0 -25
- package/dist/widget-types/dashboard/lib/use-async.d.ts +0 -39
- package/dist/widget-types/dashboard/lib/use-widgets.d.ts +0 -42
- package/dist/widget-types/dashboard/lib/utils.d.ts +0 -3
- package/dist/widget-types/dashboard/rpc/widgets.d.ts +0 -4
- package/dist/widget-types/dashboard/widget/index.d.ts +0 -207
- package/dist/widget-types/src/agent-id.d.ts +0 -12
- package/dist/widget-types/src/agent-locks.d.ts +0 -2
- package/dist/widget-types/src/agent-view.d.ts +0 -38
- package/dist/widget-types/src/bridge-browser.d.ts +0 -216
- package/dist/widget-types/src/browser-stream.d.ts +0 -19
- package/dist/widget-types/src/browser.d.ts +0 -15
- package/dist/widget-types/src/cli-exec.d.ts +0 -35
- package/dist/widget-types/src/cloud-run-state.d.ts +0 -26
- package/dist/widget-types/src/dashboard/activity.d.ts +0 -40
- package/dist/widget-types/src/dashboard/agent-handoff.d.ts +0 -211
- package/dist/widget-types/src/dashboard/agent-tree.d.ts +0 -105
- package/dist/widget-types/src/dashboard/bridge-endpoints.d.ts +0 -157
- package/dist/widget-types/src/dashboard/bridge-question.d.ts +0 -32
- package/dist/widget-types/src/dashboard/bridge-store.d.ts +0 -178
- package/dist/widget-types/src/dashboard/cache.d.ts +0 -46
- package/dist/widget-types/src/dashboard/content-type.d.ts +0 -2
- package/dist/widget-types/src/dashboard/dashboard.d.ts +0 -37
- package/dist/widget-types/src/dashboard/discord-webhook.d.ts +0 -16
- package/dist/widget-types/src/dashboard/docs.d.ts +0 -38
- package/dist/widget-types/src/dashboard/file-diff.d.ts +0 -66
- package/dist/widget-types/src/dashboard/file-read.d.ts +0 -41
- package/dist/widget-types/src/dashboard/file-status.d.ts +0 -20
- package/dist/widget-types/src/dashboard/gh.d.ts +0 -130
- package/dist/widget-types/src/dashboard/git-status.d.ts +0 -32
- package/dist/widget-types/src/dashboard/github.d.ts +0 -10
- package/dist/widget-types/src/dashboard/http.d.ts +0 -28
- package/dist/widget-types/src/dashboard/interventions.d.ts +0 -66
- package/dist/widget-types/src/dashboard/keys.d.ts +0 -30
- package/dist/widget-types/src/dashboard/models.d.ts +0 -24
- package/dist/widget-types/src/dashboard/open-in-app.d.ts +0 -42
- package/dist/widget-types/src/dashboard/open-questions.d.ts +0 -52
- package/dist/widget-types/src/dashboard/overview.d.ts +0 -77
- package/dist/widget-types/src/dashboard/projects.d.ts +0 -89
- package/dist/widget-types/src/dashboard/pull-requests.d.ts +0 -126
- package/dist/widget-types/src/dashboard/queue.d.ts +0 -16
- package/dist/widget-types/src/dashboard/quota.d.ts +0 -59
- package/dist/widget-types/src/dashboard/remote-run.d.ts +0 -94
- package/dist/widget-types/src/dashboard/rpc-serve.d.ts +0 -102
- package/dist/widget-types/src/dashboard/run-inbox.d.ts +0 -30
- package/dist/widget-types/src/dashboard/scheduler-state.d.ts +0 -64
- package/dist/widget-types/src/dashboard/tickets.d.ts +0 -28
- package/dist/widget-types/src/dashboard/types.d.ts +0 -99
- package/dist/widget-types/src/dashboard/widget-serve.d.ts +0 -14
- package/dist/widget-types/src/dashboard-rpc/context.d.ts +0 -53
- package/dist/widget-types/src/dashboard-rpc/control.d.ts +0 -108
- package/dist/widget-types/src/dashboard-rpc/devices.d.ts +0 -8
- package/dist/widget-types/src/dashboard-rpc/events-tail.d.ts +0 -53
- package/dist/widget-types/src/dashboard-rpc/events.d.ts +0 -29
- package/dist/widget-types/src/dashboard-rpc/index.d.ts +0 -28
- package/dist/widget-types/src/dashboard-rpc/models.d.ts +0 -3
- package/dist/widget-types/src/dashboard-rpc/preferences.d.ts +0 -40
- package/dist/widget-types/src/dashboard-rpc/projects.d.ts +0 -54
- package/dist/widget-types/src/dashboard-rpc/quota.d.ts +0 -26
- package/dist/widget-types/src/dashboard-rpc/reads.d.ts +0 -227
- package/dist/widget-types/src/dashboard-rpc/relay-agent.d.ts +0 -8
- package/dist/widget-types/src/dashboard-rpc/stream-forward.d.ts +0 -16
- package/dist/widget-types/src/dashboard-rpc/widgets.d.ts +0 -32
- package/dist/widget-types/src/discord-credentials.d.ts +0 -79
- package/dist/widget-types/src/driver-names.d.ts +0 -21
- package/dist/widget-types/src/error-message.d.ts +0 -7
- package/dist/widget-types/src/event-stream.d.ts +0 -32
- package/dist/widget-types/src/events.d.ts +0 -235
- package/dist/widget-types/src/framework-dir.d.ts +0 -10
- package/dist/widget-types/src/framework-gitignore.d.ts +0 -11
- package/dist/widget-types/src/index.d.ts +0 -42
- package/dist/widget-types/src/jsonl-tail.d.ts +0 -54
- package/dist/widget-types/src/loopback-host.d.ts +0 -19
- package/dist/widget-types/src/node-fs.d.ts +0 -32
- package/dist/widget-types/src/open-choices.d.ts +0 -14
- package/dist/widget-types/src/pick-directory.d.ts +0 -29
- package/dist/widget-types/src/preference-defaults.d.ts +0 -53
- package/dist/widget-types/src/project-commands.d.ts +0 -23
- package/dist/widget-types/src/project-errors.d.ts +0 -43
- package/dist/widget-types/src/project-hooks.d.ts +0 -133
- package/dist/widget-types/src/project-presets.d.ts +0 -29
- package/dist/widget-types/src/project-widgets.d.ts +0 -45
- package/dist/widget-types/src/project.d.ts +0 -28
- package/dist/widget-types/src/quota-boundary.d.ts +0 -115
- package/dist/widget-types/src/quota-poller.d.ts +0 -82
- package/dist/widget-types/src/registry.d.ts +0 -210
- package/dist/widget-types/src/store/agent-checkout.d.ts +0 -46
- package/dist/widget-types/src/store/agent-store.d.ts +0 -237
- package/dist/widget-types/src/store/branches.d.ts +0 -133
- package/dist/widget-types/src/store/forge.d.ts +0 -109
- package/dist/widget-types/src/store/git-host.d.ts +0 -111
- package/dist/widget-types/src/store/index.d.ts +0 -9
- package/dist/widget-types/src/store/provided.d.ts +0 -16
- package/dist/widget-types/src/store/queue.d.ts +0 -45
- package/dist/widget-types/src/store/run-record.d.ts +0 -21
- package/dist/widget-types/src/store/runs.d.ts +0 -101
- package/dist/widget-types/src/store/tickets.d.ts +0 -72
- package/dist/widget-types/src/tickets.d.ts +0 -17
- package/dist/widget-types/src/worktrees.d.ts +0 -89
- package/dist/widget.css +0 -50
package/dist/system-prompt.js
DELETED
|
@@ -1,170 +0,0 @@
|
|
|
1
|
-
import { renderTemplate } from './prompt-template.js';
|
|
2
|
-
import { BRANCH_YOURSELF, LOGS_SKILL, QUEUE_SKILL, SYSTEM_PROMPT, TICKETS_SKILL, TICKETS_YOURSELF } from './prompts.generated.js';
|
|
3
|
-
import { AWAIT_PROTOCOL, BROWSER_PROTOCOL, HANDS_OFF_PROTOCOL, SIGNAL_PROTOCOL } from './turn-gate.js';
|
|
4
|
-
// No Node imports here, deliberately. This module composes the prompt and the
|
|
5
|
-
// dashboard renders it in the browser (#520), so reading the user's SYSTEM.md off
|
|
6
|
-
// disk lives in `system-prompt-file.ts` instead. Keep it that way: one `node:fs`
|
|
7
|
-
// import here puts `node:fs` in the browser bundle.
|
|
8
|
-
/**
|
|
9
|
-
* The system prompt (#326), verbatim, as a template. It supersedes the
|
|
10
|
-
* anti-lazy-pill (#297/#301) it grew out of: the prompt is analyzed first — an
|
|
11
|
-
* ambiguous one becomes a ranked `showChoices()` list, a
|
|
12
|
-
* large scope becomes a PLAN file to approve, a very large one also spins off a TODO
|
|
13
|
-
* backlog (#323), the work moves onto its own
|
|
14
|
-
* `agent-<session>` branch before the first change, and the alternatives flow
|
|
15
|
-
* rates problem "variability" before code is written.
|
|
16
|
-
*
|
|
17
|
-
* Two layers make it executable:
|
|
18
|
-
* - `${{ ... }}` fragments are JS evaluated against a {@link TfContext} (#350).
|
|
19
|
-
* - The trailing `# User prompt` section is the user-prompt slot; use
|
|
20
|
-
* {@link renderSystemPrompt} to render and split the two halves.
|
|
21
|
-
*
|
|
22
|
-
* The `<SHOW_*>` / `<AWAIT>` macros are interpreted by the agent itself (Rom's
|
|
23
|
-
* call on #326); the await protocol (#337/#339) pins how the stop-signal is
|
|
24
|
-
* emitted so the turn-boundary gates can detect it.
|
|
25
|
-
*
|
|
26
|
-
* The text lives in `prompts/system_prompt.md` (#551), not here. It is Rom's living
|
|
27
|
-
* doc: change it on #326 first, then sync the markdown.
|
|
28
|
-
*/
|
|
29
|
-
export const SYSTEM_PROMPT_TEMPLATE = SYSTEM_PROMPT;
|
|
30
|
-
/** The neutral context used when a caller has none: an empty prompt. */
|
|
31
|
-
const DEFAULT_TF = { prompt: '' };
|
|
32
|
-
// The knowledge base lives under `knowledge-base/` (#683): one file per kind rather than a
|
|
33
|
-
// single flat doc, so the agent folds each learning back into the right file.
|
|
34
|
-
const DECISIONS_DOC = { path: 'knowledge-base/DECISIONS.md', comment: 'decisions taken, and why' };
|
|
35
|
-
const FACTS_DOC = { path: 'knowledge-base/FACTS.md', comment: 'non-obvious facts relevant to the project' };
|
|
36
|
-
const INSIGHTS_DOC = { path: 'knowledge-base/INSIGHTS.md', comment: 'insights relevant to the project' };
|
|
37
|
-
/**
|
|
38
|
-
* The business-knowledge docs (#537): what the repo has learned about itself, which the
|
|
39
|
-
* agent both reads at the start of an agent and folds new knowledge back into at merge. The
|
|
40
|
-
* on-before-mergeable prompt's `## Business knowledge` section names this exact set, so the
|
|
41
|
-
* agent is never told to read one set of files and update another (pinned by a test). A
|
|
42
|
-
* subset of {@link CONTEXT_DOCS}.
|
|
43
|
-
*/
|
|
44
|
-
export const BUSINESS_KNOWLEDGE_DOCS = [DECISIONS_DOC, FACTS_DOC, INSIGHTS_DOC];
|
|
45
|
-
/**
|
|
46
|
-
* TEMPORARY (#1748): what an agent outside a checkout the daemon created is told about the
|
|
47
|
-
* tickets, the queue and the logs, since nothing links the `tickets`, `queue` and `logs` skills
|
|
48
|
-
* into its checkout and their commands are not on its PATH — the counterpart of
|
|
49
|
-
* {@link BRANCH_YOURSELF}: how to read and write the branch with git, followed by the three
|
|
50
|
-
* skills' own texts so they exist in one place. Dies when use-npm-skills commits the skills into
|
|
51
|
-
* the repository.
|
|
52
|
-
*/
|
|
53
|
-
const TICKETS_BRIDGE = `${TICKETS_YOURSELF}\n\n${TICKETS_SKILL}\n\n${QUEUE_SKILL}\n\n${LOGS_SKILL}`;
|
|
54
|
-
/**
|
|
55
|
-
* Everything the agent keeps in context when it starts (#683), which
|
|
56
|
-
* {@link systemPromptBlock} renders as the `Context:` bullets. A superset of
|
|
57
|
-
* {@link BUSINESS_KNOWLEDGE_DOCS}: it adds `GOAL.md`, `BUSINESS_LOGIC.md`, and the
|
|
58
|
-
* roadmap/queue pointers the agent reads but does *not* fold knowledge back into — the tickets
|
|
59
|
-
* (the potential work, the `tickets` skill's) and the agent queue (the `queue` skill's) (#1748):
|
|
60
|
-
* they live on the `agent-data` branch, and each skill says how to read and change its own and
|
|
61
|
-
* what the format is.
|
|
62
|
-
* Repo-root paths, because that is the agent's cwd. README is left out: a repo's own `README.md`
|
|
63
|
-
* already covers the overview.
|
|
64
|
-
*/
|
|
65
|
-
export const CONTEXT_DOCS = [
|
|
66
|
-
DECISIONS_DOC,
|
|
67
|
-
{ path: 'GOAL.md', comment: 'the goal of the project (long-term direction, scope, non-scope, ...)' },
|
|
68
|
-
// The codebase's business logic, documented (#683). Root-level beside GOAL.md, per the OP. A
|
|
69
|
-
// pointer the agent reads, not a doc it folds knowledge back into at merge, so it stays out of
|
|
70
|
-
// BUSINESS_KNOWLEDGE_DOCS.
|
|
71
|
-
{ path: 'BUSINESS_LOGIC.md', comment: 'codebase business logic' },
|
|
72
|
-
FACTS_DOC,
|
|
73
|
-
INSIGHTS_DOC,
|
|
74
|
-
// What the market looks like (#694): written by the [Market research] preset and read by the
|
|
75
|
-
// follow-up that turns it into tickets. A pointer the agent reads, not a doc it folds knowledge
|
|
76
|
-
// back into, so it stays out of BUSINESS_KNOWLEDGE_DOCS.
|
|
77
|
-
{ path: 'knowledge-base/MARKET_RESEARCH.md', comment: 'the market the project competes in' },
|
|
78
|
-
// The catch-all (#683): any other file the agent parks under knowledge-base/.
|
|
79
|
-
{ path: 'knowledge-base/**.md', comment: 'more files holding knowledge related to the project' },
|
|
80
|
-
{ path: 'tickets/**.md', comment: 'things to potentially work on; on the `agent-data` branch — read and change them with the `tickets` skill' },
|
|
81
|
-
{ path: 'TODO_AGENTS.md', comment: 'the AI task queue; on the `agent-data` branch — read and change it with the `queue` skill' },
|
|
82
|
-
];
|
|
83
|
-
const USER_PROMPT_HEADING = '\n# User prompt\n';
|
|
84
|
-
/**
|
|
85
|
-
* Render the built-in system prompt against a {@link TfContext} and split it at
|
|
86
|
-
* the `# User prompt` heading. The split happens on the *template*, before
|
|
87
|
-
* rendering, so a user prompt that itself contains the heading can never move
|
|
88
|
-
* the boundary.
|
|
89
|
-
*/
|
|
90
|
-
export function renderSystemPrompt(tf = DEFAULT_TF) {
|
|
91
|
-
const at = SYSTEM_PROMPT_TEMPLATE.indexOf(USER_PROMPT_HEADING);
|
|
92
|
-
const systemHalf = at === -1 ? SYSTEM_PROMPT_TEMPLATE : SYSTEM_PROMPT_TEMPLATE.slice(0, at);
|
|
93
|
-
const userHalf = at === -1 ? '${{tf.prompt}}' : SYSTEM_PROMPT_TEMPLATE.slice(at + USER_PROMPT_HEADING.length);
|
|
94
|
-
return {
|
|
95
|
-
system: renderTemplate(systemHalf, { tf }).trim(),
|
|
96
|
-
user: renderTemplate(userHalf, { tf }).trim(),
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Compose the system-prompt block injected into every prompt: the built-in #326
|
|
101
|
-
* prompt (unless removed) followed by the user's own prompt. Additive, so a repo
|
|
102
|
-
* can keep the built-in *and* add its instructions, remove it and keep only its
|
|
103
|
-
* own, or leave both off. Returns `''` when there is nothing to inject. Only the
|
|
104
|
-
* template's system half lands here; the user-prompt half is the caller's to
|
|
105
|
-
* deliver (see {@link renderSystemPrompt}).
|
|
106
|
-
*/
|
|
107
|
-
export function systemPromptBlock(opts = {}) {
|
|
108
|
-
const parts = [];
|
|
109
|
-
// The #439 context line goes first, so it frames whatever prompt follows (or stands
|
|
110
|
-
// alone under `--vanilla`, where there is no built-in prompt to frame).
|
|
111
|
-
const dirs = opts.context?.map(d => d.trim()).filter(Boolean) ?? [];
|
|
112
|
-
// The context docs ride with the built-in prompt, not with the user's dirs: they are
|
|
113
|
-
// ours, and `--vanilla` means no framework-authored prompt at all (#547 rule 3). They
|
|
114
|
-
// render as commented bullets under the dirs (#559), so the agent sees what each is for.
|
|
115
|
-
// Vanilla drops both the framework's context docs and its built-in prompt; one boolean drives
|
|
116
|
-
// both so they can't fall out of step.
|
|
117
|
-
const includeBuiltin = opts.vanilla !== true;
|
|
118
|
-
const docs = includeBuiltin ? CONTEXT_DOCS : [];
|
|
119
|
-
if (dirs.length || docs.length) {
|
|
120
|
-
const head = `Context:${dirs.length ? ` ${dirs.join(', ')}` : ''}`;
|
|
121
|
-
const bullets = docs.map(d => `- \`${d.path}\` (${d.comment})`);
|
|
122
|
-
parts.push([head, ...bullets].join('\n'));
|
|
123
|
-
}
|
|
124
|
-
// In a checkout The Framework created, the `branches`, `tickets` and `queue` skills are the checkout's
|
|
125
|
-
// (#1739/#1748): the packages link them where the agent's harness looks for skills, and the
|
|
126
|
-
// built-in prompt tells the agent to use them — nothing rides in this channel. Anywhere else
|
|
127
|
-
// the commands are not on the PATH, so the sections that have the agent branch, and read and
|
|
128
|
-
// write the tickets, with git itself follow the prompt. Framework-authored, so `--vanilla`
|
|
129
|
-
// drops them — which is what keeps the on-before-mergeable follow-up from naming a session of
|
|
130
|
-
// its own (#560).
|
|
131
|
-
if (includeBuiltin)
|
|
132
|
-
parts.push(renderSystemPrompt(opts.tf).system, ...(opts.ownedCheckout ? [] : [BRANCH_YOURSELF, TICKETS_BRIDGE]));
|
|
133
|
-
const user = opts.user?.trim();
|
|
134
|
-
if (user)
|
|
135
|
-
parts.push(user);
|
|
136
|
-
return parts.join('\n\n');
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Assemble an agent's full system channel — the single place it is composed (#501), so the
|
|
140
|
-
* build path and the direct-prompt path, before D2 collapsed them into one {@link runAgent}
|
|
141
|
-
* cannot drift. That drift is exactly what dropped the session-action (#326) layer from `--vanilla`
|
|
142
|
-
* builds (#500): the two sites each inlined the composition and one nested the protocols
|
|
143
|
-
* inside the built-in-prompt branch.
|
|
144
|
-
*
|
|
145
|
-
* Order is fixed: the built-in system prompt (#326) block (context / built-in prompt / user SYSTEM.md)
|
|
146
|
-
* first, then the emit protocols. Nothing else is appended — a build agent's system channel
|
|
147
|
-
* is exactly this (#547), which is what lets the dashboard show the whole prompt before an agent
|
|
148
|
-
* starts (#520). The protocols are otherwise unconditional — they are the *emit contract* (how
|
|
149
|
-
* the agent signals an awaited choice and the setReadyForMerge() lifecycle),
|
|
150
|
-
* not prompt content — so the agent needs them even with the built-in prompt off (`--vanilla`).
|
|
151
|
-
*
|
|
152
|
-
* The one exception is transparent mode (#625): there is no framework behavior to signal to, so
|
|
153
|
-
* the whole channel is empty and the agent runs as raw `claude -p`.
|
|
154
|
-
*/
|
|
155
|
-
export function composeAgentSystem(opts = {}) {
|
|
156
|
-
if (opts.transparent)
|
|
157
|
-
return '';
|
|
158
|
-
const promptBlock = systemPromptBlock(opts);
|
|
159
|
-
// The browser section rides with the protocols, not with the built-in prompt: like them it
|
|
160
|
-
// describes what this agent can do, so `--vanilla` (no framework prompt) still gets it — the
|
|
161
|
-
// tools are there either way.
|
|
162
|
-
// Ahead of the protocols, so the signal protocol stays the last thing in the channel (#547).
|
|
163
|
-
const browser = opts.browser ? [BROWSER_PROTOCOL] : [];
|
|
164
|
-
// The hand-off's land-everything rule after the await protocol — a cloud session's gates are
|
|
165
|
-
// the same as a local one's: it parks, and the answer reaches it through the browser bridge or
|
|
166
|
-
// on claude.ai itself (#1554). The signal protocol stays last (#547).
|
|
167
|
-
const handsOff = opts.handsOff ? [HANDS_OFF_PROTOCOL] : [];
|
|
168
|
-
return [...(promptBlock ? [promptBlock] : []), ...browser, AWAIT_PROTOCOL, ...handsOff, SIGNAL_PROTOCOL].join('\n\n');
|
|
169
|
-
}
|
|
170
|
-
//# sourceMappingURL=system-prompt.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
|
package/dist/target-driver.d.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { AgentLocation } from './agent-location.js';
|
|
2
|
-
import { type CreateDriverOptions } from './driver-cli.js';
|
|
3
|
-
import { type ActionsDriverOptions, type Driver } from 'agent-driver';
|
|
4
|
-
import { type CloudDriverOptions } from './driver/cloud.js';
|
|
5
|
-
/**
|
|
6
|
-
* Build the {@link Driver} for an agent's *target* (#1050): where the turn runs, on top of the CLI
|
|
7
|
-
* axis {@link createDriver} owns. `actions` returns an {@link ActionsDriver} (#934) built from the
|
|
8
|
-
* resolved owner/repo/token; `web` returns a {@link CloudDriver} (#610), which hands the task to a
|
|
9
|
-
* Claude Code cloud session; anything else falls through to the driver for the chosen CLI —
|
|
10
|
-
* byte-identical to today.
|
|
11
|
-
*
|
|
12
|
-
* Kept off {@link createDriver} on purpose: ActionsDriver's owner/repo/token do not fit
|
|
13
|
-
* {@link CreateDriverOptions}, and folding them in would push GitHub config onto every local agent.
|
|
14
|
-
*/
|
|
15
|
-
export interface CreateTargetDriverOptions extends CreateDriverOptions {
|
|
16
|
-
/**
|
|
17
|
-
* Where the agent executes: `local` (this device, the default), `actions` (a GitHub Actions
|
|
18
|
-
* runner, #1050) or `web` (a Claude Code cloud session, #610).
|
|
19
|
-
*/
|
|
20
|
-
target?: AgentLocation;
|
|
21
|
-
/** The Actions runner config, required when {@link target} is `actions`. */
|
|
22
|
-
actionsConfig?: ActionsDriverOptions;
|
|
23
|
-
/** The cloud-session config used when {@link target} is `web`. Every field has a default. */
|
|
24
|
-
cloudConfig?: CloudDriverOptions;
|
|
25
|
-
}
|
|
26
|
-
/** The one place an agent path turns `--run-on` into a real driver. */
|
|
27
|
-
export declare function createTargetDriver(opts: CreateTargetDriverOptions): Driver;
|
|
28
|
-
//# sourceMappingURL=target-driver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"target-driver.d.ts","sourceRoot":"","sources":["../src/target-driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AACxE,OAAO,EAAiB,KAAK,oBAAoB,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAA;AACpF,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAExE;;;;;;;;;GASG;AACH,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IACpE;;;OAGG;IACH,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,oBAAoB,CAAA;IACpC,6FAA6F;IAC7F,WAAW,CAAC,EAAE,kBAAkB,CAAA;CACjC;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,yBAAyB,GAAG,MAAM,CAW1E"}
|
package/dist/target-driver.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { createDriver } from './driver-cli.js';
|
|
2
|
-
import { ActionsDriver } from 'agent-driver';
|
|
3
|
-
import { CloudDriver } from './driver/cloud.js';
|
|
4
|
-
/** The one place an agent path turns `--run-on` into a real driver. */
|
|
5
|
-
export function createTargetDriver(opts) {
|
|
6
|
-
if (opts.target === 'actions') {
|
|
7
|
-
if (!opts.actionsConfig) {
|
|
8
|
-
throw new Error('run target "actions" needs the repo owner/repo and a GitHub token; set a GitHub origin remote and GH_TOKEN');
|
|
9
|
-
}
|
|
10
|
-
return new ActionsDriver(opts.actionsConfig);
|
|
11
|
-
}
|
|
12
|
-
// `web` needs no configuration of ours: the CLI already holds the account it signs the
|
|
13
|
-
// cloud session in with, the same auth the local driver runs on.
|
|
14
|
-
if (opts.target === 'web')
|
|
15
|
-
return new CloudDriver(opts.cloudConfig ?? {});
|
|
16
|
-
return createDriver(opts);
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=target-driver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"target-driver.js","sourceRoot":"","sources":["../src/target-driver.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAA4B,MAAM,iBAAiB,CAAA;AACxE,OAAO,EAAE,aAAa,EAA0C,MAAM,cAAc,CAAA;AACpF,OAAO,EAAE,WAAW,EAA2B,MAAM,mBAAmB,CAAA;AAwBxE,uEAAuE;AACvE,MAAM,UAAU,kBAAkB,CAAC,IAA+B;IAChE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,4GAA4G,CAAC,CAAA;QAC/H,CAAC;QACD,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IAC9C,CAAC;IACD,uFAAuF;IACvF,iEAAiE;IACjE,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;QAAE,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAA;IACzE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC"}
|
package/dist/ticket-locks.d.ts
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { type DataFileDeps } from './data-branch.js';
|
|
2
|
-
import type { PlanAssignment } from './auto-pm.js';
|
|
3
|
-
/** A ticket filename's lock sibling, e.g. `a.md` → `a.lock.md`, without the directory. */
|
|
4
|
-
export declare function ticketLockName(ticket: string): string;
|
|
5
|
-
/** What a lock file holds: the claim line and nothing else, matching the ticketing format. */
|
|
6
|
-
export declare function ticketLockContent(agentId: string): string;
|
|
7
|
-
/** The agent a lock file names, or undefined for content that is not a claim line. */
|
|
8
|
-
export declare function ticketLockHolder(md: string): string | undefined;
|
|
9
|
-
/** The commit a batch of locks lands as. Names the count so the history reads as what happened. */
|
|
10
|
-
export declare function lockMessage(count: number): string;
|
|
11
|
-
/** The commit a manual release lands as, naming the ticket freed. */
|
|
12
|
-
export declare function releaseMessage(ticket: string): string;
|
|
13
|
-
/** The commit an abandoned claim's release lands as (#1583), naming why the daemon freed it. */
|
|
14
|
-
export declare function abandonedReleaseMessage(ticket: string): string;
|
|
15
|
-
/** Injectable seams so every operation is unit-testable off disk and git. */
|
|
16
|
-
export type TicketLockDeps = DataFileDeps;
|
|
17
|
-
/**
|
|
18
|
-
* Which side of a ticket's life a batch claims for (#1420). A `plan` batch is about to *write*
|
|
19
|
-
* plans, so an existing `.plan.md` means the work it came for is already done and the ticket is
|
|
20
|
-
* skipped. A `drain` batch is about to *implement* a plan — the `.plan.md` is its input, not a
|
|
21
|
-
* competing claim — so only an existing `.lock.md` stands in its way.
|
|
22
|
-
*/
|
|
23
|
-
export type TicketLockPhase = 'plan' | 'drain';
|
|
24
|
-
/**
|
|
25
|
-
* Claim `assignments`' tickets for their agents: one `.lock.md` per ticket, written on the data
|
|
26
|
-
* branch in one funneled cycle (#1582) — the funnel commits the batch and pushes the branch. The
|
|
27
|
-
* cycle re-runs the checks against origin's state when a push loses a race, so a ticket whose
|
|
28
|
-
* lock (or, for a `plan` batch, whose plan — see {@link TicketLockPhase}) appeared meanwhile is
|
|
29
|
-
* skipped, not overwritten: an existing file is someone's claim or someone's work, and either
|
|
30
|
-
* outranks this batch.
|
|
31
|
-
*
|
|
32
|
-
* Resolves the subset actually locked. A batch that could not land at all resolves `[]`; a batch
|
|
33
|
-
* that committed but could not *push* is kept and resolved as locked — the commit still guards
|
|
34
|
-
* every agent forked from this machine, which is the common case, and the sweep should not stand
|
|
35
|
-
* a healthy local fan-out down over a network blip. The push is what closes the cross-machine
|
|
36
|
-
* window (#1320), so its failure is logged rather than swallowed.
|
|
37
|
-
*
|
|
38
|
-
* Never throws: this runs on a background tick with nothing to catch it.
|
|
39
|
-
*/
|
|
40
|
-
export declare function acquireTicketLocks(cwd: string, assignments: readonly PlanAssignment[], deps?: TicketLockDeps, phase?: TicketLockPhase): Promise<PlanAssignment[]>;
|
|
41
|
-
/**
|
|
42
|
-
* What a release did: freed the ticket, found nothing to free, found someone else's claim
|
|
43
|
-
* (`heldBy` releases only, #1583), or could not commit.
|
|
44
|
-
*/
|
|
45
|
-
export type ReleaseTicketLockResult = 'released' | 'no-lock' | 'not-holder' | 'error';
|
|
46
|
-
/**
|
|
47
|
-
* Free one ticket's `.lock.md` by hand (#1420): the dashboard's answer to a dead agent, now that
|
|
48
|
-
* no timer releases locks. One funneled data-branch cycle (#1582); a release that cannot land
|
|
49
|
-
* reports `error` and changes nothing — the funnel restores the checkout, so the committed state
|
|
50
|
-
* keeps telling the truth about the claim.
|
|
51
|
-
*/
|
|
52
|
-
export declare function releaseTicketLock(cwd: string, ticket: string, deps?: TicketLockDeps, opts?: {
|
|
53
|
-
/**
|
|
54
|
-
* Free the lock only while it still names this exact agent (#1583): the daemon releasing a
|
|
55
|
-
* claim it minted for an agent that ended with nothing to hand off. A lock naming anyone
|
|
56
|
-
* else is someone's live claim — re-locked after a manual release, say — and outranks the
|
|
57
|
-
* cleanup. Absent (the dashboard button), whoever holds the lock is released.
|
|
58
|
-
*/
|
|
59
|
-
heldBy?: string;
|
|
60
|
-
}): Promise<ReleaseTicketLockResult>;
|
|
61
|
-
//# sourceMappingURL=ticket-locks.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ticket-locks.d.ts","sourceRoot":"","sources":["../src/ticket-locks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAA;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AA6BlD,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,8FAA8F;AAC9F,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,sFAAsF;AACtF,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAK/D;AAED,mGAAmG;AACnG,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,qEAAqE;AACrE,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,gGAAgG;AAChG,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,6EAA6E;AAC7E,MAAM,MAAM,cAAc,GAAG,YAAY,CAAA;AAEzC;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,CAAA;AAE9C;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,SAAS,cAAc,EAAE,EACtC,IAAI,GAAE,cAAmB,EACzB,KAAK,GAAE,eAAwB,GAC9B,OAAO,CAAC,cAAc,EAAE,CAAC,CAsC3B;AAED;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG,UAAU,GAAG,SAAS,GAAG,YAAY,GAAG,OAAO,CAAA;AAErF;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,cAAmB,EACzB,IAAI,GAAE;IACJ;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CACX,GACL,OAAO,CAAC,uBAAuB,CAAC,CA0BlC"}
|
package/dist/ticket-locks.js
DELETED
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
import { join } from 'node:path';
|
|
2
|
-
import { TICKETS_DIR } from './tickets.js';
|
|
3
|
-
import { resolveDataFileDeps } from './data-branch.js';
|
|
4
|
-
// The `.lock.md` claim on a ticket (#1420, replacing #1327's PENDING placeholders).
|
|
5
|
-
//
|
|
6
|
-
// A ticket is assigned to a single agent — for planning today, and in Rom's design for its whole
|
|
7
|
-
// life, implementation included — and the guard cannot be the daemon's memory: a hands-off web
|
|
8
|
-
// run's local process ends at the hand-off (#1253), another machine's daemon never shared this
|
|
9
|
-
// one's memory at all, and the #1313 PR-diff claims only start once a PR exists. So the claim is
|
|
10
|
-
// made where every agent already looks — a `tickets/<STEM>.lock.md` sibling holding
|
|
11
|
-
// `CLAIMED: <AGENT_ID>`, the file the ticketing format defines (#1420), so the stock prompts skip
|
|
12
|
-
// a locked ticket with no cooperation from anyone who has not heard of this module.
|
|
13
|
-
//
|
|
14
|
-
// Since #1582 the tickets live on the data branch, and a lock is one more data write through the
|
|
15
|
-
// same funnel: `withDataBranch` syncs, commits the batch, and pushes the branch itself. That
|
|
16
|
-
// retires this module's own commit/push machinery — locks reach every machine the way all data
|
|
17
|
-
// does, and the old "the checkout must be on the default branch" dance is gone with the reason
|
|
18
|
-
// for it.
|
|
19
|
-
//
|
|
20
|
-
// There is no timed release (#1420 dropped #1327's 6-hour staleness rule): a coordinator agent
|
|
21
|
-
// can legitimately hold a ticket for days, and a lock released under a live agent re-opens the
|
|
22
|
-
// exact double-work window it exists to close. The lock lifts when the ticket's work lands and
|
|
23
|
-
// the tickets sync retires the files, when a human releases it ({@link releaseTicketLock}), or
|
|
24
|
-
// when the daemon frees a claim it minted for an agent that settled with nothing to hand off
|
|
25
|
-
// (the `heldBy` release, #1583) — every other dead agent is still the user's to notice, with the
|
|
26
|
-
// dashboard button as the tool.
|
|
27
|
-
/** The first line of a lock file: the claim, naming the agent that holds it. */
|
|
28
|
-
const TICKET_LOCK_PREFIX = 'CLAIMED:';
|
|
29
|
-
/** A ticket filename's lock sibling, e.g. `a.md` → `a.lock.md`, without the directory. */
|
|
30
|
-
export function ticketLockName(ticket) {
|
|
31
|
-
return `${ticket.replace(/\.md$/, '')}.lock.md`;
|
|
32
|
-
}
|
|
33
|
-
/** What a lock file holds: the claim line and nothing else, matching the ticketing format. */
|
|
34
|
-
export function ticketLockContent(agentId) {
|
|
35
|
-
return `${TICKET_LOCK_PREFIX} ${agentId}\n`;
|
|
36
|
-
}
|
|
37
|
-
/** The agent a lock file names, or undefined for content that is not a claim line. */
|
|
38
|
-
export function ticketLockHolder(md) {
|
|
39
|
-
const line = md.trimStart();
|
|
40
|
-
if (!line.startsWith(TICKET_LOCK_PREFIX))
|
|
41
|
-
return undefined;
|
|
42
|
-
const holder = line.slice(TICKET_LOCK_PREFIX.length).split('\n', 1)[0].trim();
|
|
43
|
-
return holder || undefined;
|
|
44
|
-
}
|
|
45
|
-
/** The commit a batch of locks lands as. Names the count so the history reads as what happened. */
|
|
46
|
-
export function lockMessage(count) {
|
|
47
|
-
return `[The Framework] lock ${count} ticket${count === 1 ? '' : 's'} for concurrent agents`;
|
|
48
|
-
}
|
|
49
|
-
/** The commit a manual release lands as, naming the ticket freed. */
|
|
50
|
-
export function releaseMessage(ticket) {
|
|
51
|
-
return `[The Framework] release the lock on ${ticket}`;
|
|
52
|
-
}
|
|
53
|
-
/** The commit an abandoned claim's release lands as (#1583), naming why the daemon freed it. */
|
|
54
|
-
export function abandonedReleaseMessage(ticket) {
|
|
55
|
-
return `${releaseMessage(ticket)} — its agent ended with nothing to hand off`;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Claim `assignments`' tickets for their agents: one `.lock.md` per ticket, written on the data
|
|
59
|
-
* branch in one funneled cycle (#1582) — the funnel commits the batch and pushes the branch. The
|
|
60
|
-
* cycle re-runs the checks against origin's state when a push loses a race, so a ticket whose
|
|
61
|
-
* lock (or, for a `plan` batch, whose plan — see {@link TicketLockPhase}) appeared meanwhile is
|
|
62
|
-
* skipped, not overwritten: an existing file is someone's claim or someone's work, and either
|
|
63
|
-
* outranks this batch.
|
|
64
|
-
*
|
|
65
|
-
* Resolves the subset actually locked. A batch that could not land at all resolves `[]`; a batch
|
|
66
|
-
* that committed but could not *push* is kept and resolved as locked — the commit still guards
|
|
67
|
-
* every agent forked from this machine, which is the common case, and the sweep should not stand
|
|
68
|
-
* a healthy local fan-out down over a network blip. The push is what closes the cross-machine
|
|
69
|
-
* window (#1320), so its failure is logged rather than swallowed.
|
|
70
|
-
*
|
|
71
|
-
* Never throws: this runs on a background tick with nothing to catch it.
|
|
72
|
-
*/
|
|
73
|
-
export async function acquireTicketLocks(cwd, assignments, deps = {}, phase = 'plan') {
|
|
74
|
-
const { read, write, funnel, log } = resolveDataFileDeps(deps);
|
|
75
|
-
let locked = [];
|
|
76
|
-
const result = await funnel(cwd, () => lockMessage(locked.length), async (dataDir) => {
|
|
77
|
-
locked = [];
|
|
78
|
-
for (const assignment of assignments) {
|
|
79
|
-
const stem = assignment.ticket.replace(/\.md$/, '');
|
|
80
|
-
const lock = `${TICKETS_DIR}/${stem}.lock.md`;
|
|
81
|
-
const plan = `${TICKETS_DIR}/${stem}.plan.md`;
|
|
82
|
-
// Any existing lock file outranks this batch — except one naming THIS agent, which is
|
|
83
|
-
// the batch's own claim seen again on a re-run (the funnel re-runs the op when a push
|
|
84
|
-
// loses a race, and the first attempt's commit survives the re-sync): still locked.
|
|
85
|
-
const existing = await read(join(dataDir, lock)).then(md => ({ md }), () => undefined);
|
|
86
|
-
if (existing) {
|
|
87
|
-
if (ticketLockHolder(existing.md) === assignment.agentId)
|
|
88
|
-
locked.push(assignment);
|
|
89
|
-
continue;
|
|
90
|
-
}
|
|
91
|
-
if (phase === 'plan' && (await read(join(dataDir, plan)).then(() => true, () => false)))
|
|
92
|
-
continue;
|
|
93
|
-
await write(join(dataDir, lock), ticketLockContent(assignment.agentId));
|
|
94
|
-
locked.push(assignment);
|
|
95
|
-
}
|
|
96
|
-
}, { log });
|
|
97
|
-
if (!result.ok && !result.committed) {
|
|
98
|
-
// Said even for an empty batch: a cycle that failed before any lock landed is the sweep's
|
|
99
|
-
// real stand-down reason, and swallowing it left "no claims" indistinguishable from "lost
|
|
100
|
-
// every race".
|
|
101
|
-
log(`[framework] ticket locks: the batch could not be committed (${result.error})`);
|
|
102
|
-
return [];
|
|
103
|
-
}
|
|
104
|
-
if (!result.ok)
|
|
105
|
-
log(`[framework] ticket locks: the lock commit could not be pushed, so agents on other machines cannot see these ${locked.length} claim(s)`);
|
|
106
|
-
return locked;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Free one ticket's `.lock.md` by hand (#1420): the dashboard's answer to a dead agent, now that
|
|
110
|
-
* no timer releases locks. One funneled data-branch cycle (#1582); a release that cannot land
|
|
111
|
-
* reports `error` and changes nothing — the funnel restores the checkout, so the committed state
|
|
112
|
-
* keeps telling the truth about the claim.
|
|
113
|
-
*/
|
|
114
|
-
export async function releaseTicketLock(cwd, ticket, deps = {}, opts = {}) {
|
|
115
|
-
const { read, remove, funnel, log } = resolveDataFileDeps(deps);
|
|
116
|
-
const lock = `${TICKETS_DIR}/${ticketLockName(ticket)}`;
|
|
117
|
-
let outcome = 'released';
|
|
118
|
-
const result = await funnel(cwd, () => (opts.heldBy !== undefined ? abandonedReleaseMessage(ticket) : releaseMessage(ticket)), async (dataDir) => {
|
|
119
|
-
outcome = 'released';
|
|
120
|
-
const md = await read(join(dataDir, lock)).catch(() => undefined);
|
|
121
|
-
if (md === undefined) {
|
|
122
|
-
outcome = 'no-lock';
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
if (opts.heldBy !== undefined && ticketLockHolder(md) !== opts.heldBy) {
|
|
126
|
-
outcome = 'not-holder';
|
|
127
|
-
return;
|
|
128
|
-
}
|
|
129
|
-
await remove(join(dataDir, lock));
|
|
130
|
-
}, { log });
|
|
131
|
-
if (!result.ok && !result.committed)
|
|
132
|
-
return 'error';
|
|
133
|
-
if (!result.ok)
|
|
134
|
-
log(`[framework] ticket locks: the release of ${ticket} could not be pushed`);
|
|
135
|
-
return outcome;
|
|
136
|
-
}
|
|
137
|
-
//# sourceMappingURL=ticket-locks.js.map
|
package/dist/ticket-locks.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ticket-locks.js","sourceRoot":"","sources":["../src/ticket-locks.ts"],"names":[],"mappings":"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"}
|
package/dist/tickets-file.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The workspace's flat backlog file: the root `TODO_AGENTS.md`, or `undefined` when it does not
|
|
3
|
-
* exist. The pre-#682 spellings (`TODO-DRIVERS.md`, `tickets/TODO.md`, root `TODO.md`) are no
|
|
4
|
-
* longer read — one convention, one location.
|
|
5
|
-
*/
|
|
6
|
-
export declare function findFlatTodo(cwd: string): Promise<string | undefined>;
|
|
7
|
-
//# sourceMappingURL=tickets-file.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tickets-file.d.ts","sourceRoot":"","sources":["../src/tickets-file.ts"],"names":[],"mappings":"AAeA;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAE3E"}
|
package/dist/tickets-file.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { stat } from 'node:fs/promises';
|
|
2
|
-
import { join } from 'node:path';
|
|
3
|
-
import { FLAT_TODO_FILE } from './tickets.js';
|
|
4
|
-
// The disk half of `tickets.ts`, split out the way `system-prompt-file.ts` is from
|
|
5
|
-
// `system-prompt.ts`: the client barrel reaches the ticket path/entry helpers through
|
|
6
|
-
// `auto-pm.ts`, so nothing in `tickets.ts` may import `node:*` (#431).
|
|
7
|
-
/** Whether a workspace-relative path is an existing file. Never throws. */
|
|
8
|
-
async function isFile(cwd, rel) {
|
|
9
|
-
return stat(join(cwd, rel))
|
|
10
|
-
.then(s => s.isFile())
|
|
11
|
-
.catch(() => false);
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* The workspace's flat backlog file: the root `TODO_AGENTS.md`, or `undefined` when it does not
|
|
15
|
-
* exist. The pre-#682 spellings (`TODO-DRIVERS.md`, `tickets/TODO.md`, root `TODO.md`) are no
|
|
16
|
-
* longer read — one convention, one location.
|
|
17
|
-
*/
|
|
18
|
-
export async function findFlatTodo(cwd) {
|
|
19
|
-
return (await isFile(cwd, FLAT_TODO_FILE)) ? FLAT_TODO_FILE : undefined;
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=tickets-file.js.map
|
package/dist/tickets-file.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tickets-file.js","sourceRoot":"","sources":["../src/tickets-file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAE7C,mFAAmF;AACnF,sFAAsF;AACtF,uEAAuE;AAEvE,2EAA2E;AAC3E,KAAK,UAAU,MAAM,CAAC,GAAW,EAAE,GAAW;IAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;SACxB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACrB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;AACvB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAW;IAC5C,OAAO,CAAC,MAAM,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAA;AACzE,CAAC"}
|
package/dist/tickets.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { AgentMeta } from './store/index.js';
|
|
2
|
-
/**
|
|
3
|
-
* The ask for one ticket's plan (#685): `Create tickets/<stem>.plan.md`, the `.md` swapped for the
|
|
4
|
-
* sibling `.plan.md` the plan views read. The one wording for plan work wherever the dashboard
|
|
5
|
-
* asks for it — the sentence the plan column starts an attended agent with, and the queue-add
|
|
6
|
-
* writes as entries — so the surfaces cannot drift apart
|
|
7
|
-
* (#1187) and a queued copy is recognizable by exact text.
|
|
8
|
-
*/
|
|
9
|
-
export declare function planTicketPrompt(file: string): string;
|
|
10
|
-
/**
|
|
11
|
-
* The agent that wrote a ticket's plan (#1511): the newest agent whose ask names that plan — the
|
|
12
|
-
* {@link planTicketPrompt} sentence, as the plan column starts it and as a pinned queue drain
|
|
13
|
-
* carries it. There is no marker in the plan file itself, so the link is made from the
|
|
14
|
-
* framework's own records instead. A plan written by a run whose ask never named it (a single
|
|
15
|
-
* unpinned drain reading "the first open entry") is not attributed.
|
|
16
|
-
*/
|
|
17
|
-
export declare function planAgentFor(agents: AgentMeta[], file: string): AgentMeta | undefined;
|
|
18
|
-
//# sourceMappingURL=tickets.d.ts.map
|
package/dist/tickets.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tickets.d.ts","sourceRoot":"","sources":["../src/tickets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAGrF"}
|
package/dist/tickets.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { TICKETS_DIR } from '@gemstack/skill-tickets/names';
|
|
2
|
-
/**
|
|
3
|
-
* The ask for one ticket's plan (#685): `Create tickets/<stem>.plan.md`, the `.md` swapped for the
|
|
4
|
-
* sibling `.plan.md` the plan views read. The one wording for plan work wherever the dashboard
|
|
5
|
-
* asks for it — the sentence the plan column starts an attended agent with, and the queue-add
|
|
6
|
-
* writes as entries — so the surfaces cannot drift apart
|
|
7
|
-
* (#1187) and a queued copy is recognizable by exact text.
|
|
8
|
-
*/
|
|
9
|
-
export function planTicketPrompt(file) {
|
|
10
|
-
return `Create ${TICKETS_DIR}/${file.replace(/\.md$/, '')}.plan.md`;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* The agent that wrote a ticket's plan (#1511): the newest agent whose ask names that plan — the
|
|
14
|
-
* {@link planTicketPrompt} sentence, as the plan column starts it and as a pinned queue drain
|
|
15
|
-
* carries it. There is no marker in the plan file itself, so the link is made from the
|
|
16
|
-
* framework's own records instead. A plan written by a run whose ask never named it (a single
|
|
17
|
-
* unpinned drain reading "the first open entry") is not attributed.
|
|
18
|
-
*/
|
|
19
|
-
export function planAgentFor(agents, file) {
|
|
20
|
-
const ask = planTicketPrompt(file);
|
|
21
|
-
return agents.filter(agent => agent.intent?.includes(ask)).sort((a, b) => b.startedAt.localeCompare(a.startedAt))[0];
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=tickets.js.map
|
package/dist/tickets.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tickets.js","sourceRoot":"","sources":["../src/tickets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAG3D;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,UAAU,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAA;AACrE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,MAAmB,EAAE,IAAY;IAC5D,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAClC,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACtH,CAAC"}
|