nomoreide 0.2.0 → 0.3.2
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 +12 -9
- package/bin/nomoreide.js +82 -0
- package/package.json +24 -132
- package/dist/cli/agents.d.ts +0 -2
- package/dist/cli/agents.js +0 -43
- package/dist/cli/agents.js.map +0 -1
- package/dist/cli/commands.d.ts +0 -11
- package/dist/cli/commands.js +0 -235
- package/dist/cli/commands.js.map +0 -1
- package/dist/cli/daemon.d.ts +0 -15
- package/dist/cli/daemon.js +0 -139
- package/dist/cli/daemon.js.map +0 -1
- package/dist/cli/database.d.ts +0 -2
- package/dist/cli/database.js +0 -145
- package/dist/cli/database.js.map +0 -1
- package/dist/cli/errors.d.ts +0 -2
- package/dist/cli/errors.js +0 -3
- package/dist/cli/errors.js.map +0 -1
- package/dist/cli/flags.d.ts +0 -1
- package/dist/cli/flags.js +0 -19
- package/dist/cli/flags.js.map +0 -1
- package/dist/cli/git.d.ts +0 -2
- package/dist/cli/git.js +0 -113
- package/dist/cli/git.js.map +0 -1
- package/dist/cli/profile.d.ts +0 -2
- package/dist/cli/profile.js +0 -171
- package/dist/cli/profile.js.map +0 -1
- package/dist/core/agent-context.d.ts +0 -9
- package/dist/core/agent-context.js +0 -43
- package/dist/core/agent-context.js.map +0 -1
- package/dist/core/agent-env/antigravity-reader.d.ts +0 -7
- package/dist/core/agent-env/antigravity-reader.js +0 -86
- package/dist/core/agent-env/antigravity-reader.js.map +0 -1
- package/dist/core/agent-env/availability.d.ts +0 -6
- package/dist/core/agent-env/availability.js +0 -79
- package/dist/core/agent-env/availability.js.map +0 -1
- package/dist/core/agent-env/claude-reader.d.ts +0 -7
- package/dist/core/agent-env/claude-reader.js +0 -101
- package/dist/core/agent-env/claude-reader.js.map +0 -1
- package/dist/core/agent-env/codex-reader.d.ts +0 -11
- package/dist/core/agent-env/codex-reader.js +0 -164
- package/dist/core/agent-env/codex-reader.js.map +0 -1
- package/dist/core/agent-env/index.d.ts +0 -9
- package/dist/core/agent-env/index.js +0 -29
- package/dist/core/agent-env/index.js.map +0 -1
- package/dist/core/agent-env/managed-plugins.d.ts +0 -18
- package/dist/core/agent-env/managed-plugins.js +0 -68
- package/dist/core/agent-env/managed-plugins.js.map +0 -1
- package/dist/core/agent-env/plugin-reader.d.ts +0 -9
- package/dist/core/agent-env/plugin-reader.js +0 -174
- package/dist/core/agent-env/plugin-reader.js.map +0 -1
- package/dist/core/agent-env/shared.d.ts +0 -26
- package/dist/core/agent-env/shared.js +0 -116
- package/dist/core/agent-env/shared.js.map +0 -1
- package/dist/core/agent-env/types.d.ts +0 -66
- package/dist/core/agent-env/types.js +0 -7
- package/dist/core/agent-env/types.js.map +0 -1
- package/dist/core/agent-env-actions.d.ts +0 -117
- package/dist/core/agent-env-actions.js +0 -273
- package/dist/core/agent-env-actions.js.map +0 -1
- package/dist/core/agent-env-plugin-uninstall.d.ts +0 -11
- package/dist/core/agent-env-plugin-uninstall.js +0 -189
- package/dist/core/agent-env-plugin-uninstall.js.map +0 -1
- package/dist/core/agent-env-writers.d.ts +0 -71
- package/dist/core/agent-env-writers.js +0 -632
- package/dist/core/agent-env-writers.js.map +0 -1
- package/dist/core/agent-profiles/apply.d.ts +0 -57
- package/dist/core/agent-profiles/apply.js +0 -209
- package/dist/core/agent-profiles/apply.js.map +0 -1
- package/dist/core/agent-profiles/builtin.d.ts +0 -8
- package/dist/core/agent-profiles/builtin.js +0 -33
- package/dist/core/agent-profiles/builtin.js.map +0 -1
- package/dist/core/agent-profiles/credentials.d.ts +0 -26
- package/dist/core/agent-profiles/credentials.js +0 -151
- package/dist/core/agent-profiles/credentials.js.map +0 -1
- package/dist/core/agent-profiles/debug-setup.d.ts +0 -18
- package/dist/core/agent-profiles/debug-setup.js +0 -237
- package/dist/core/agent-profiles/debug-setup.js.map +0 -1
- package/dist/core/agent-profiles/index.d.ts +0 -18
- package/dist/core/agent-profiles/index.js +0 -19
- package/dist/core/agent-profiles/index.js.map +0 -1
- package/dist/core/agent-profiles/plugin-apply.d.ts +0 -16
- package/dist/core/agent-profiles/plugin-apply.js +0 -383
- package/dist/core/agent-profiles/plugin-apply.js.map +0 -1
- package/dist/core/agent-profiles/plugin-bundle.d.ts +0 -6
- package/dist/core/agent-profiles/plugin-bundle.js +0 -32
- package/dist/core/agent-profiles/plugin-bundle.js.map +0 -1
- package/dist/core/agent-profiles/publication.d.ts +0 -105
- package/dist/core/agent-profiles/publication.js +0 -126
- package/dist/core/agent-profiles/publication.js.map +0 -1
- package/dist/core/agent-profiles/registry-auth.d.ts +0 -25
- package/dist/core/agent-profiles/registry-auth.js +0 -78
- package/dist/core/agent-profiles/registry-auth.js.map +0 -1
- package/dist/core/agent-profiles/registry-client.d.ts +0 -98
- package/dist/core/agent-profiles/registry-client.js +0 -109
- package/dist/core/agent-profiles/registry-client.js.map +0 -1
- package/dist/core/agent-profiles/registry-config.d.ts +0 -62
- package/dist/core/agent-profiles/registry-config.js +0 -221
- package/dist/core/agent-profiles/registry-config.js.map +0 -1
- package/dist/core/agent-profiles/registry-transfer.d.ts +0 -42
- package/dist/core/agent-profiles/registry-transfer.js +0 -133
- package/dist/core/agent-profiles/registry-transfer.js.map +0 -1
- package/dist/core/agent-profiles/store.d.ts +0 -62
- package/dist/core/agent-profiles/store.js +0 -479
- package/dist/core/agent-profiles/store.js.map +0 -1
- package/dist/core/agent-profiles/transfer.d.ts +0 -27
- package/dist/core/agent-profiles/transfer.js +0 -359
- package/dist/core/agent-profiles/transfer.js.map +0 -1
- package/dist/core/agent-profiles/types.d.ts +0 -364
- package/dist/core/agent-profiles/types.js +0 -79
- package/dist/core/agent-profiles/types.js.map +0 -1
- package/dist/core/agent-runtime.d.ts +0 -114
- package/dist/core/agent-runtime.js +0 -494
- package/dist/core/agent-runtime.js.map +0 -1
- package/dist/core/agent-sessions.d.ts +0 -46
- package/dist/core/agent-sessions.js +0 -109
- package/dist/core/agent-sessions.js.map +0 -1
- package/dist/core/agent-settings.d.ts +0 -31
- package/dist/core/agent-settings.js +0 -129
- package/dist/core/agent-settings.js.map +0 -1
- package/dist/core/agent-terminal.d.ts +0 -22
- package/dist/core/agent-terminal.js +0 -62
- package/dist/core/agent-terminal.js.map +0 -1
- package/dist/core/agent-transcripts.d.ts +0 -29
- package/dist/core/agent-transcripts.js +0 -281
- package/dist/core/agent-transcripts.js.map +0 -1
- package/dist/core/app-settings.d.ts +0 -74
- package/dist/core/app-settings.js +0 -118
- package/dist/core/app-settings.js.map +0 -1
- package/dist/core/app-version.d.ts +0 -2
- package/dist/core/app-version.js +0 -16
- package/dist/core/app-version.js.map +0 -1
- package/dist/core/approval-broker.d.ts +0 -29
- package/dist/core/approval-broker.js +0 -48
- package/dist/core/approval-broker.js.map +0 -1
- package/dist/core/claude-settings.d.ts +0 -18
- package/dist/core/claude-settings.js +0 -48
- package/dist/core/claude-settings.js.map +0 -1
- package/dist/core/cloudflare-actions.d.ts +0 -90
- package/dist/core/cloudflare-actions.js +0 -178
- package/dist/core/cloudflare-actions.js.map +0 -1
- package/dist/core/cloudflare-auth.d.ts +0 -61
- package/dist/core/cloudflare-auth.js +0 -149
- package/dist/core/cloudflare-auth.js.map +0 -1
- package/dist/core/cloudflare-context.d.ts +0 -2
- package/dist/core/cloudflare-context.js +0 -106
- package/dist/core/cloudflare-context.js.map +0 -1
- package/dist/core/cloudflare-manager.d.ts +0 -258
- package/dist/core/cloudflare-manager.js +0 -414
- package/dist/core/cloudflare-manager.js.map +0 -1
- package/dist/core/cloudflare-provider.d.ts +0 -64
- package/dist/core/cloudflare-provider.js +0 -348
- package/dist/core/cloudflare-provider.js.map +0 -1
- package/dist/core/config-files.d.ts +0 -27
- package/dist/core/config-files.js +0 -154
- package/dist/core/config-files.js.map +0 -1
- package/dist/core/config-store.d.ts +0 -181
- package/dist/core/config-store.js +0 -1026
- package/dist/core/config-store.js.map +0 -1
- package/dist/core/context-library.d.ts +0 -53
- package/dist/core/context-library.js +0 -605
- package/dist/core/context-library.js.map +0 -1
- package/dist/core/context-types.d.ts +0 -83
- package/dist/core/context-types.js +0 -9
- package/dist/core/context-types.js.map +0 -1
- package/dist/core/daemon-client.d.ts +0 -84
- package/dist/core/daemon-client.js +0 -156
- package/dist/core/daemon-client.js.map +0 -1
- package/dist/core/daemon-lifecycle.d.ts +0 -59
- package/dist/core/daemon-lifecycle.js +0 -147
- package/dist/core/daemon-lifecycle.js.map +0 -1
- package/dist/core/db/catalog.d.ts +0 -57
- package/dist/core/db/catalog.js +0 -38
- package/dist/core/db/catalog.js.map +0 -1
- package/dist/core/db/data-masking.d.ts +0 -3
- package/dist/core/db/data-masking.js +0 -14
- package/dist/core/db/data-masking.js.map +0 -1
- package/dist/core/db/driver.d.ts +0 -151
- package/dist/core/db/driver.js +0 -209
- package/dist/core/db/driver.js.map +0 -1
- package/dist/core/db/export.d.ts +0 -17
- package/dist/core/db/export.js +0 -67
- package/dist/core/db/export.js.map +0 -1
- package/dist/core/db/mysql-driver.d.ts +0 -33
- package/dist/core/db/mysql-driver.js +0 -364
- package/dist/core/db/mysql-driver.js.map +0 -1
- package/dist/core/db/postgres-driver.d.ts +0 -34
- package/dist/core/db/postgres-driver.js +0 -430
- package/dist/core/db/postgres-driver.js.map +0 -1
- package/dist/core/db/sqlite-driver.d.ts +0 -30
- package/dist/core/db/sqlite-driver.js +0 -301
- package/dist/core/db/sqlite-driver.js.map +0 -1
- package/dist/core/db-peek.d.ts +0 -99
- package/dist/core/db-peek.js +0 -322
- package/dist/core/db-peek.js.map +0 -1
- package/dist/core/db-write.d.ts +0 -45
- package/dist/core/db-write.js +0 -190
- package/dist/core/db-write.js.map +0 -1
- package/dist/core/docker-inspect.d.ts +0 -34
- package/dist/core/docker-inspect.js +0 -108
- package/dist/core/docker-inspect.js.map +0 -1
- package/dist/core/docker-resources.d.ts +0 -28
- package/dist/core/docker-resources.js +0 -59
- package/dist/core/docker-resources.js.map +0 -1
- package/dist/core/docker-service-runner.d.ts +0 -21
- package/dist/core/docker-service-runner.js +0 -80
- package/dist/core/docker-service-runner.js.map +0 -1
- package/dist/core/docker-stats.d.ts +0 -24
- package/dist/core/docker-stats.js +0 -76
- package/dist/core/docker-stats.js.map +0 -1
- package/dist/core/docker.d.ts +0 -75
- package/dist/core/docker.js +0 -219
- package/dist/core/docker.js.map +0 -1
- package/dist/core/env-file.d.ts +0 -24
- package/dist/core/env-file.js +0 -123
- package/dist/core/env-file.js.map +0 -1
- package/dist/core/env-runtime.d.ts +0 -32
- package/dist/core/env-runtime.js +0 -42
- package/dist/core/env-runtime.js.map +0 -1
- package/dist/core/error-inbox.d.ts +0 -91
- package/dist/core/error-inbox.js +0 -292
- package/dist/core/error-inbox.js.map +0 -1
- package/dist/core/extensions.d.ts +0 -78
- package/dist/core/extensions.js +0 -41
- package/dist/core/extensions.js.map +0 -1
- package/dist/core/external-terminal.d.ts +0 -60
- package/dist/core/external-terminal.js +0 -429
- package/dist/core/external-terminal.js.map +0 -1
- package/dist/core/fix-loop.d.ts +0 -55
- package/dist/core/fix-loop.js +0 -73
- package/dist/core/fix-loop.js.map +0 -1
- package/dist/core/git-actions.d.ts +0 -69
- package/dist/core/git-actions.js +0 -161
- package/dist/core/git-actions.js.map +0 -1
- package/dist/core/git-graph-layout.d.ts +0 -34
- package/dist/core/git-graph-layout.js +0 -94
- package/dist/core/git-graph-layout.js.map +0 -1
- package/dist/core/git-identity.d.ts +0 -78
- package/dist/core/git-identity.js +0 -178
- package/dist/core/git-identity.js.map +0 -1
- package/dist/core/git-manager.d.ts +0 -129
- package/dist/core/git-manager.js +0 -509
- package/dist/core/git-manager.js.map +0 -1
- package/dist/core/git-worktrees.d.ts +0 -35
- package/dist/core/git-worktrees.js +0 -142
- package/dist/core/git-worktrees.js.map +0 -1
- package/dist/core/github-auth.d.ts +0 -28
- package/dist/core/github-auth.js +0 -134
- package/dist/core/github-auth.js.map +0 -1
- package/dist/core/github-context.d.ts +0 -12
- package/dist/core/github-context.js +0 -36
- package/dist/core/github-context.js.map +0 -1
- package/dist/core/github-manager.d.ts +0 -230
- package/dist/core/github-manager.js +0 -324
- package/dist/core/github-manager.js.map +0 -1
- package/dist/core/host-metrics.d.ts +0 -41
- package/dist/core/host-metrics.js +0 -93
- package/dist/core/host-metrics.js.map +0 -1
- package/dist/core/http-inspector.d.ts +0 -20
- package/dist/core/http-inspector.js +0 -106
- package/dist/core/http-inspector.js.map +0 -1
- package/dist/core/jetbrains-import.d.ts +0 -85
- package/dist/core/jetbrains-import.js +0 -599
- package/dist/core/jetbrains-import.js.map +0 -1
- package/dist/core/log-sources.d.ts +0 -21
- package/dist/core/log-sources.js +0 -219
- package/dist/core/log-sources.js.map +0 -1
- package/dist/core/log-store.d.ts +0 -33
- package/dist/core/log-store.js +0 -94
- package/dist/core/log-store.js.map +0 -1
- package/dist/core/log-volume.d.ts +0 -41
- package/dist/core/log-volume.js +0 -81
- package/dist/core/log-volume.js.map +0 -1
- package/dist/core/mcp-auth.d.ts +0 -27
- package/dist/core/mcp-auth.js +0 -90
- package/dist/core/mcp-auth.js.map +0 -1
- package/dist/core/metrics-store.d.ts +0 -74
- package/dist/core/metrics-store.js +0 -187
- package/dist/core/metrics-store.js.map +0 -1
- package/dist/core/one-time-skills.d.ts +0 -27
- package/dist/core/one-time-skills.js +0 -185
- package/dist/core/one-time-skills.js.map +0 -1
- package/dist/core/port-utils.d.ts +0 -23
- package/dist/core/port-utils.js +0 -83
- package/dist/core/port-utils.js.map +0 -1
- package/dist/core/process-manager.d.ts +0 -99
- package/dist/core/process-manager.js +0 -738
- package/dist/core/process-manager.js.map +0 -1
- package/dist/core/process-tree.d.ts +0 -17
- package/dist/core/process-tree.js +0 -64
- package/dist/core/process-tree.js.map +0 -1
- package/dist/core/project-overview.d.ts +0 -52
- package/dist/core/project-overview.js +0 -122
- package/dist/core/project-overview.js.map +0 -1
- package/dist/core/providers/api-base.d.ts +0 -24
- package/dist/core/providers/api-base.js +0 -44
- package/dist/core/providers/api-base.js.map +0 -1
- package/dist/core/providers/credentials.d.ts +0 -93
- package/dist/core/providers/credentials.js +0 -88
- package/dist/core/providers/credentials.js.map +0 -1
- package/dist/core/providers/deploy-provider.d.ts +0 -327
- package/dist/core/providers/deploy-provider.js +0 -25
- package/dist/core/providers/deploy-provider.js.map +0 -1
- package/dist/core/providers/egress.d.ts +0 -58
- package/dist/core/providers/egress.js +0 -124
- package/dist/core/providers/egress.js.map +0 -1
- package/dist/core/providers/host-bridge.d.ts +0 -20
- package/dist/core/providers/host-bridge.js +0 -57
- package/dist/core/providers/host-bridge.js.map +0 -1
- package/dist/core/providers/host-provider.d.ts +0 -160
- package/dist/core/providers/host-provider.js +0 -2
- package/dist/core/providers/host-provider.js.map +0 -1
- package/dist/core/providers/oauth.d.ts +0 -97
- package/dist/core/providers/oauth.js +0 -238
- package/dist/core/providers/oauth.js.map +0 -1
- package/dist/core/providers/project-resolution.d.ts +0 -81
- package/dist/core/providers/project-resolution.js +0 -101
- package/dist/core/providers/project-resolution.js.map +0 -1
- package/dist/core/providers/registry.d.ts +0 -73
- package/dist/core/providers/registry.js +0 -53
- package/dist/core/providers/registry.js.map +0 -1
- package/dist/core/providers/strings.d.ts +0 -95
- package/dist/core/providers/strings.js +0 -59
- package/dist/core/providers/strings.js.map +0 -1
- package/dist/core/public-config.d.ts +0 -18
- package/dist/core/public-config.js +0 -76
- package/dist/core/public-config.js.map +0 -1
- package/dist/core/read-only-files.d.ts +0 -28
- package/dist/core/read-only-files.js +0 -93
- package/dist/core/read-only-files.js.map +0 -1
- package/dist/core/repo-create.d.ts +0 -11
- package/dist/core/repo-create.js +0 -54
- package/dist/core/repo-create.js.map +0 -1
- package/dist/core/repo-match.d.ts +0 -12
- package/dist/core/repo-match.js +0 -40
- package/dist/core/repo-match.js.map +0 -1
- package/dist/core/repo-onboard.d.ts +0 -297
- package/dist/core/repo-onboard.js +0 -667
- package/dist/core/repo-onboard.js.map +0 -1
- package/dist/core/repro-bundle.d.ts +0 -30
- package/dist/core/repro-bundle.js +0 -116
- package/dist/core/repro-bundle.js.map +0 -1
- package/dist/core/service-graph.d.ts +0 -50
- package/dist/core/service-graph.js +0 -143
- package/dist/core/service-graph.js.map +0 -1
- package/dist/core/service-health.d.ts +0 -10
- package/dist/core/service-health.js +0 -46
- package/dist/core/service-health.js.map +0 -1
- package/dist/core/service-log-source.d.ts +0 -9
- package/dist/core/service-log-source.js +0 -49
- package/dist/core/service-log-source.js.map +0 -1
- package/dist/core/service-registry.d.ts +0 -52
- package/dist/core/service-registry.js +0 -101
- package/dist/core/service-registry.js.map +0 -1
- package/dist/core/snapshot-manager.d.ts +0 -62
- package/dist/core/snapshot-manager.js +0 -219
- package/dist/core/snapshot-manager.js.map +0 -1
- package/dist/core/ssh-servers.d.ts +0 -89
- package/dist/core/ssh-servers.js +0 -251
- package/dist/core/ssh-servers.js.map +0 -1
- package/dist/core/ssh-service-runner.d.ts +0 -7
- package/dist/core/ssh-service-runner.js +0 -36
- package/dist/core/ssh-service-runner.js.map +0 -1
- package/dist/core/ssh-setup.d.ts +0 -11
- package/dist/core/ssh-setup.js +0 -49
- package/dist/core/ssh-setup.js.map +0 -1
- package/dist/core/system-processes.d.ts +0 -29
- package/dist/core/system-processes.js +0 -119
- package/dist/core/system-processes.js.map +0 -1
- package/dist/core/terminal-manager.d.ts +0 -123
- package/dist/core/terminal-manager.js +0 -470
- package/dist/core/terminal-manager.js.map +0 -1
- package/dist/core/terminal-session.d.ts +0 -122
- package/dist/core/terminal-session.js +0 -242
- package/dist/core/terminal-session.js.map +0 -1
- package/dist/core/terminal-spawn.d.ts +0 -26
- package/dist/core/terminal-spawn.js +0 -63
- package/dist/core/terminal-spawn.js.map +0 -1
- package/dist/core/test-runner.d.ts +0 -69
- package/dist/core/test-runner.js +0 -199
- package/dist/core/test-runner.js.map +0 -1
- package/dist/core/timeline-store.d.ts +0 -20
- package/dist/core/timeline-store.js +0 -36
- package/dist/core/timeline-store.js.map +0 -1
- package/dist/core/tool-call-store.d.ts +0 -25
- package/dist/core/tool-call-store.js +0 -62
- package/dist/core/tool-call-store.js.map +0 -1
- package/dist/core/types.d.ts +0 -312
- package/dist/core/types.js +0 -2
- package/dist/core/types.js.map +0 -1
- package/dist/core/usage-history.d.ts +0 -81
- package/dist/core/usage-history.js +0 -149
- package/dist/core/usage-history.js.map +0 -1
- package/dist/core/vercel-actions.d.ts +0 -71
- package/dist/core/vercel-actions.js +0 -109
- package/dist/core/vercel-actions.js.map +0 -1
- package/dist/core/vercel-auth.d.ts +0 -40
- package/dist/core/vercel-auth.js +0 -88
- package/dist/core/vercel-auth.js.map +0 -1
- package/dist/core/vercel-context.d.ts +0 -2
- package/dist/core/vercel-context.js +0 -97
- package/dist/core/vercel-context.js.map +0 -1
- package/dist/core/vercel-manager.d.ts +0 -268
- package/dist/core/vercel-manager.js +0 -401
- package/dist/core/vercel-manager.js.map +0 -1
- package/dist/core/vercel-oauth.d.ts +0 -37
- package/dist/core/vercel-oauth.js +0 -57
- package/dist/core/vercel-oauth.js.map +0 -1
- package/dist/core/vercel-provider.d.ts +0 -23
- package/dist/core/vercel-provider.js +0 -276
- package/dist/core/vercel-provider.js.map +0 -1
- package/dist/core/vultr-actions.d.ts +0 -52
- package/dist/core/vultr-actions.js +0 -62
- package/dist/core/vultr-actions.js.map +0 -1
- package/dist/core/vultr-auth.d.ts +0 -32
- package/dist/core/vultr-auth.js +0 -54
- package/dist/core/vultr-auth.js.map +0 -1
- package/dist/core/vultr-context.d.ts +0 -2
- package/dist/core/vultr-context.js +0 -55
- package/dist/core/vultr-context.js.map +0 -1
- package/dist/core/vultr-manager.d.ts +0 -113
- package/dist/core/vultr-manager.js +0 -170
- package/dist/core/vultr-manager.js.map +0 -1
- package/dist/core/vultr-provider.d.ts +0 -69
- package/dist/core/vultr-provider.js +0 -226
- package/dist/core/vultr-provider.js.map +0 -1
- package/dist/core/workflow-triggers.d.ts +0 -139
- package/dist/core/workflow-triggers.js +0 -208
- package/dist/core/workflow-triggers.js.map +0 -1
- package/dist/core/workflows.d.ts +0 -290
- package/dist/core/workflows.js +0 -190
- package/dist/core/workflows.js.map +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +0 -66
- package/dist/index.js.map +0 -1
- package/dist/mcp/server.d.ts +0 -37
- package/dist/mcp/server.js +0 -84
- package/dist/mcp/server.js.map +0 -1
- package/dist/mcp/tools/agent-env.d.ts +0 -9
- package/dist/mcp/tools/agent-env.js +0 -160
- package/dist/mcp/tools/agent-env.js.map +0 -1
- package/dist/mcp/tools/agent-profiles.d.ts +0 -9
- package/dist/mcp/tools/agent-profiles.js +0 -197
- package/dist/mcp/tools/agent-profiles.js.map +0 -1
- package/dist/mcp/tools/agent-registry.d.ts +0 -9
- package/dist/mcp/tools/agent-registry.js +0 -81
- package/dist/mcp/tools/agent-registry.js.map +0 -1
- package/dist/mcp/tools/agent.d.ts +0 -4
- package/dist/mcp/tools/agent.js +0 -29
- package/dist/mcp/tools/agent.js.map +0 -1
- package/dist/mcp/tools/context.d.ts +0 -36
- package/dist/mcp/tools/context.js +0 -69
- package/dist/mcp/tools/context.js.map +0 -1
- package/dist/mcp/tools/database.d.ts +0 -9
- package/dist/mcp/tools/database.js +0 -166
- package/dist/mcp/tools/database.js.map +0 -1
- package/dist/mcp/tools/docs.d.ts +0 -29
- package/dist/mcp/tools/docs.js +0 -134
- package/dist/mcp/tools/docs.js.map +0 -1
- package/dist/mcp/tools/errors.d.ts +0 -12
- package/dist/mcp/tools/errors.js +0 -47
- package/dist/mcp/tools/errors.js.map +0 -1
- package/dist/mcp/tools/git.d.ts +0 -4
- package/dist/mcp/tools/git.js +0 -209
- package/dist/mcp/tools/git.js.map +0 -1
- package/dist/mcp/tools/github.d.ts +0 -4
- package/dist/mcp/tools/github.js +0 -196
- package/dist/mcp/tools/github.js.map +0 -1
- package/dist/mcp/tools/index.d.ts +0 -36
- package/dist/mcp/tools/index.js +0 -61
- package/dist/mcp/tools/index.js.map +0 -1
- package/dist/mcp/tools/onboard.d.ts +0 -10
- package/dist/mcp/tools/onboard.js +0 -30
- package/dist/mcp/tools/onboard.js.map +0 -1
- package/dist/mcp/tools/provider.d.ts +0 -16
- package/dist/mcp/tools/provider.js +0 -110
- package/dist/mcp/tools/provider.js.map +0 -1
- package/dist/mcp/tools/services.d.ts +0 -13
- package/dist/mcp/tools/services.js +0 -204
- package/dist/mcp/tools/services.js.map +0 -1
- package/dist/mcp/tools/snapshots.d.ts +0 -8
- package/dist/mcp/tools/snapshots.js +0 -37
- package/dist/mcp/tools/snapshots.js.map +0 -1
- package/dist/mcp/tools/terminal.d.ts +0 -4
- package/dist/mcp/tools/terminal.js +0 -38
- package/dist/mcp/tools/terminal.js.map +0 -1
- package/dist/tui/app.d.ts +0 -22
- package/dist/tui/app.js +0 -138
- package/dist/tui/app.js.map +0 -1
- package/dist/web/agent-info.d.ts +0 -82
- package/dist/web/agent-info.js +0 -775
- package/dist/web/agent-info.js.map +0 -1
- package/dist/web/client/assets/SymbolsNerdFontMono-Regular-DDncdh2F.ttf +0 -0
- package/dist/web/client/assets/code-editor-TE0sjFGO.js +0 -30
- package/dist/web/client/assets/context-graph-B9MnBpp6.js +0 -7
- package/dist/web/client/assets/core-DhEqZVGG.js +0 -1
- package/dist/web/client/assets/event-BK_86lmQ.js +0 -1
- package/dist/web/client/assets/index-BhDAhmA1.js +0 -1
- package/dist/web/client/assets/index-CSo__8A6.css +0 -1
- package/dist/web/client/assets/index-DAJvBqn9.js +0 -352
- package/dist/web/client/assets/nomoreide-favicon-Ds7Tgj9p.svg +0 -24
- package/dist/web/client/assets/system-process-table-DetWu0Gj.js +0 -1
- package/dist/web/client/assets/window-DlR023_X.js +0 -1
- package/dist/web/client/index.html +0 -44
- package/dist/web/dashboard.d.ts +0 -61
- package/dist/web/dashboard.js +0 -221
- package/dist/web/dashboard.js.map +0 -1
- package/dist/web/directories.d.ts +0 -27
- package/dist/web/directories.js +0 -81
- package/dist/web/directories.js.map +0 -1
- package/dist/web/http-utils.d.ts +0 -13
- package/dist/web/http-utils.js +0 -72
- package/dist/web/http-utils.js.map +0 -1
- package/dist/web/routes/agent-chat-routes.d.ts +0 -3
- package/dist/web/routes/agent-chat-routes.js +0 -186
- package/dist/web/routes/agent-chat-routes.js.map +0 -1
- package/dist/web/routes/agent-env-routes.d.ts +0 -9
- package/dist/web/routes/agent-env-routes.js +0 -86
- package/dist/web/routes/agent-env-routes.js.map +0 -1
- package/dist/web/routes/agent-profile-routes.d.ts +0 -8
- package/dist/web/routes/agent-profile-routes.js +0 -211
- package/dist/web/routes/agent-profile-routes.js.map +0 -1
- package/dist/web/routes/agent-registry-routes.d.ts +0 -2
- package/dist/web/routes/agent-registry-routes.js +0 -375
- package/dist/web/routes/agent-registry-routes.js.map +0 -1
- package/dist/web/routes/agent-routes.d.ts +0 -3
- package/dist/web/routes/agent-routes.js +0 -73
- package/dist/web/routes/agent-routes.js.map +0 -1
- package/dist/web/routes/agent-settings-routes.d.ts +0 -8
- package/dist/web/routes/agent-settings-routes.js +0 -67
- package/dist/web/routes/agent-settings-routes.js.map +0 -1
- package/dist/web/routes/context-library-routes.d.ts +0 -2
- package/dist/web/routes/context-library-routes.js +0 -139
- package/dist/web/routes/context-library-routes.js.map +0 -1
- package/dist/web/routes/context.d.ts +0 -73
- package/dist/web/routes/context.js +0 -48
- package/dist/web/routes/context.js.map +0 -1
- package/dist/web/routes/dashboard-routes.d.ts +0 -3
- package/dist/web/routes/dashboard-routes.js +0 -47
- package/dist/web/routes/dashboard-routes.js.map +0 -1
- package/dist/web/routes/database-routes.d.ts +0 -3
- package/dist/web/routes/database-routes.js +0 -341
- package/dist/web/routes/database-routes.js.map +0 -1
- package/dist/web/routes/docker-routes.d.ts +0 -7
- package/dist/web/routes/docker-routes.js +0 -122
- package/dist/web/routes/docker-routes.js.map +0 -1
- package/dist/web/routes/errors-routes.d.ts +0 -3
- package/dist/web/routes/errors-routes.js +0 -77
- package/dist/web/routes/errors-routes.js.map +0 -1
- package/dist/web/routes/extensions-routes.d.ts +0 -14
- package/dist/web/routes/extensions-routes.js +0 -21
- package/dist/web/routes/extensions-routes.js.map +0 -1
- package/dist/web/routes/git-routes.d.ts +0 -3
- package/dist/web/routes/git-routes.js +0 -598
- package/dist/web/routes/git-routes.js.map +0 -1
- package/dist/web/routes/github-context.d.ts +0 -11
- package/dist/web/routes/github-context.js +0 -34
- package/dist/web/routes/github-context.js.map +0 -1
- package/dist/web/routes/github-routes.d.ts +0 -2
- package/dist/web/routes/github-routes.js +0 -699
- package/dist/web/routes/github-routes.js.map +0 -1
- package/dist/web/routes/host-routes.d.ts +0 -2
- package/dist/web/routes/host-routes.js +0 -188
- package/dist/web/routes/host-routes.js.map +0 -1
- package/dist/web/routes/index.d.ts +0 -10
- package/dist/web/routes/index.js +0 -72
- package/dist/web/routes/index.js.map +0 -1
- package/dist/web/routes/jetbrains-import-routes.d.ts +0 -2
- package/dist/web/routes/jetbrains-import-routes.js +0 -121
- package/dist/web/routes/jetbrains-import-routes.js.map +0 -1
- package/dist/web/routes/log-sources-routes.d.ts +0 -6
- package/dist/web/routes/log-sources-routes.js +0 -102
- package/dist/web/routes/log-sources-routes.js.map +0 -1
- package/dist/web/routes/metrics-routes.d.ts +0 -3
- package/dist/web/routes/metrics-routes.js +0 -60
- package/dist/web/routes/metrics-routes.js.map +0 -1
- package/dist/web/routes/onboard-routes.d.ts +0 -9
- package/dist/web/routes/onboard-routes.js +0 -146
- package/dist/web/routes/onboard-routes.js.map +0 -1
- package/dist/web/routes/overview-routes.d.ts +0 -2
- package/dist/web/routes/overview-routes.js +0 -36
- package/dist/web/routes/overview-routes.js.map +0 -1
- package/dist/web/routes/provider-routes.d.ts +0 -2
- package/dist/web/routes/provider-routes.js +0 -558
- package/dist/web/routes/provider-routes.js.map +0 -1
- package/dist/web/routes/service-routes.d.ts +0 -3
- package/dist/web/routes/service-routes.js +0 -511
- package/dist/web/routes/service-routes.js.map +0 -1
- package/dist/web/routes/settings-routes.d.ts +0 -2
- package/dist/web/routes/settings-routes.js +0 -151
- package/dist/web/routes/settings-routes.js.map +0 -1
- package/dist/web/routes/shell-routes.d.ts +0 -22
- package/dist/web/routes/shell-routes.js +0 -75
- package/dist/web/routes/shell-routes.js.map +0 -1
- package/dist/web/routes/skills-routes.d.ts +0 -2
- package/dist/web/routes/skills-routes.js +0 -49
- package/dist/web/routes/skills-routes.js.map +0 -1
- package/dist/web/routes/snapshot-routes.d.ts +0 -8
- package/dist/web/routes/snapshot-routes.js +0 -194
- package/dist/web/routes/snapshot-routes.js.map +0 -1
- package/dist/web/routes/ssh-server-routes.d.ts +0 -10
- package/dist/web/routes/ssh-server-routes.js +0 -163
- package/dist/web/routes/ssh-server-routes.js.map +0 -1
- package/dist/web/routes/terminal-routes.d.ts +0 -7
- package/dist/web/routes/terminal-routes.js +0 -313
- package/dist/web/routes/terminal-routes.js.map +0 -1
- package/dist/web/routes/workflow-routes.d.ts +0 -8
- package/dist/web/routes/workflow-routes.js +0 -45
- package/dist/web/routes/workflow-routes.js.map +0 -1
- package/dist/web/routes/workflow-trigger-routes.d.ts +0 -9
- package/dist/web/routes/workflow-trigger-routes.js +0 -78
- package/dist/web/routes/workflow-trigger-routes.js.map +0 -1
- package/dist/web/server.d.ts +0 -31
- package/dist/web/server.js +0 -325
- package/dist/web/server.js.map +0 -1
- package/dist/web/service-tester.d.ts +0 -16
- package/dist/web/service-tester.js +0 -107
- package/dist/web/service-tester.js.map +0 -1
- package/dist/web/static-assets.d.ts +0 -9
- package/dist/web/static-assets.js +0 -77
- package/dist/web/static-assets.js.map +0 -1
- package/dist/web/usage-info.d.ts +0 -56
- package/dist/web/usage-info.js +0 -265
- package/dist/web/usage-info.js.map +0 -1
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
import type { ConfigStore } from "./config-store.js";
|
|
3
|
-
import type { ErrorInbox } from "./error-inbox.js";
|
|
4
|
-
import type { TimelineStore } from "./timeline-store.js";
|
|
5
|
-
/**
|
|
6
|
-
* Event-driven workflow triggers (IDEAS #16). Workflows are user-run today; a
|
|
7
|
-
* trigger binds an app-detected event to a workflow so it fires automatically.
|
|
8
|
-
*
|
|
9
|
-
* The workflow runner lives client-side (agent steps run through the dock), so a
|
|
10
|
-
* trigger can't run a workflow on the server. Instead a fired trigger enqueues a
|
|
11
|
-
* **pending run** here; the open dashboard drains the queue and drives the
|
|
12
|
-
* existing client runner. Pending runs survive until a browser claims them, so
|
|
13
|
-
* an event detected while no tab is open isn't lost.
|
|
14
|
-
*
|
|
15
|
-
* Event sources:
|
|
16
|
-
* - `error-incident` — {@link ErrorInbox} surfaces a new/repeated incident (push).
|
|
17
|
-
* - `service-crash` — {@link TimelineStore} records a `service.lifecycle`
|
|
18
|
-
* event with `severity: "error"` (non-zero exit not initiated by the user) (push).
|
|
19
|
-
* - `ci-failure` — the only **polled** source: an optional `ciSource`
|
|
20
|
-
* reports the current branch's failing CI on an interval. It fires at most
|
|
21
|
-
* once per commit sha (a failing run isn't re-enqueued every poll).
|
|
22
|
-
*/
|
|
23
|
-
export declare const triggerEventSchema: z.ZodEnum<["error-incident", "service-crash", "ci-failure"]>;
|
|
24
|
-
export type TriggerEvent = z.infer<typeof triggerEventSchema>;
|
|
25
|
-
/**
|
|
26
|
-
* A non-null result means the current branch's CI is failing on `sha`. The
|
|
27
|
-
* source returns `null` whenever CI is green, still running, or GitHub is
|
|
28
|
-
* unavailable (no token / remote) — i.e. "nothing to fire".
|
|
29
|
-
*/
|
|
30
|
-
export interface CiFailureSnapshot {
|
|
31
|
-
sha: string;
|
|
32
|
-
branch: string;
|
|
33
|
-
/** Names of the checks / workflow runs that failed. */
|
|
34
|
-
failingChecks: string[];
|
|
35
|
-
}
|
|
36
|
-
export declare const workflowTriggerSchema: z.ZodObject<{
|
|
37
|
-
id: z.ZodString;
|
|
38
|
-
/** The workflow (built-in or user-saved) to run when this fires. */
|
|
39
|
-
workflowId: z.ZodString;
|
|
40
|
-
event: z.ZodEnum<["error-incident", "service-crash", "ci-failure"]>;
|
|
41
|
-
/** Disabled triggers stay configured but never fire. */
|
|
42
|
-
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
43
|
-
/**
|
|
44
|
-
* Optional case-insensitive substring matched against the event's service
|
|
45
|
-
* name (and, for incidents, the incident title). Empty/absent = match all.
|
|
46
|
-
*/
|
|
47
|
-
filter: z.ZodOptional<z.ZodString>;
|
|
48
|
-
/**
|
|
49
|
-
* When true the dashboard starts the run automatically; otherwise the pending
|
|
50
|
-
* run is surfaced for the user to start with one click.
|
|
51
|
-
*/
|
|
52
|
-
autoRun: z.ZodDefault<z.ZodBoolean>;
|
|
53
|
-
}, "strip", z.ZodTypeAny, {
|
|
54
|
-
id: string;
|
|
55
|
-
workflowId: string;
|
|
56
|
-
event: "error-incident" | "service-crash" | "ci-failure";
|
|
57
|
-
enabled: boolean;
|
|
58
|
-
autoRun: boolean;
|
|
59
|
-
filter?: string | undefined;
|
|
60
|
-
}, {
|
|
61
|
-
id: string;
|
|
62
|
-
workflowId: string;
|
|
63
|
-
event: "error-incident" | "service-crash" | "ci-failure";
|
|
64
|
-
filter?: string | undefined;
|
|
65
|
-
enabled?: boolean | undefined;
|
|
66
|
-
autoRun?: boolean | undefined;
|
|
67
|
-
}>;
|
|
68
|
-
export type WorkflowTrigger = z.infer<typeof workflowTriggerSchema>;
|
|
69
|
-
export interface PendingRun {
|
|
70
|
-
id: string;
|
|
71
|
-
triggerId: string;
|
|
72
|
-
workflowId: string;
|
|
73
|
-
event: TriggerEvent;
|
|
74
|
-
/** Human-readable reason this fired, shown in the dashboard. */
|
|
75
|
-
summary: string;
|
|
76
|
-
/** `triggerId:cause` dedupe key, collapsing a burst into one pending run. */
|
|
77
|
-
signature: string;
|
|
78
|
-
autoRun: boolean;
|
|
79
|
-
createdAt: string;
|
|
80
|
-
}
|
|
81
|
-
type PendingListener = (pending: PendingRun) => void;
|
|
82
|
-
interface WorkflowTriggerManagerOptions {
|
|
83
|
-
configStore: ConfigStore;
|
|
84
|
-
errorInbox: ErrorInbox;
|
|
85
|
-
timelineStore: TimelineStore;
|
|
86
|
-
/**
|
|
87
|
-
* Polled CI source for `ci-failure` triggers. Omit to disable the source
|
|
88
|
-
* (e.g. tests that don't exercise CI, or when GitHub is never configured).
|
|
89
|
-
*/
|
|
90
|
-
ciSource?: () => Promise<CiFailureSnapshot | null>;
|
|
91
|
-
/**
|
|
92
|
-
* How often {@link ciSource} is polled. `0` disables the internal timer —
|
|
93
|
-
* tests drive {@link WorkflowTriggerManager.pollCiOnce} by hand instead.
|
|
94
|
-
*/
|
|
95
|
-
ciPollIntervalMs?: number;
|
|
96
|
-
/** Max pending runs kept; older ones drop off the front. */
|
|
97
|
-
capacity?: number;
|
|
98
|
-
/** A repeat of the same signature within this window is ignored. */
|
|
99
|
-
dedupeWindowMs?: number;
|
|
100
|
-
/** Injectable clock for tests. */
|
|
101
|
-
now?: () => number;
|
|
102
|
-
}
|
|
103
|
-
export declare class WorkflowTriggerManager {
|
|
104
|
-
private readonly configStore;
|
|
105
|
-
private readonly errorInbox;
|
|
106
|
-
private readonly timelineStore;
|
|
107
|
-
private readonly ciSource?;
|
|
108
|
-
private readonly ciPollIntervalMs;
|
|
109
|
-
private readonly capacity;
|
|
110
|
-
private readonly dedupeWindowMs;
|
|
111
|
-
private readonly now;
|
|
112
|
-
private readonly pending;
|
|
113
|
-
private readonly lastFiredAt;
|
|
114
|
-
private readonly listeners;
|
|
115
|
-
private readonly unsubscribers;
|
|
116
|
-
private ciTimer?;
|
|
117
|
-
private started;
|
|
118
|
-
constructor(options: WorkflowTriggerManagerOptions);
|
|
119
|
-
/** Subscribe to the live event sources. Idempotent. */
|
|
120
|
-
start(): void;
|
|
121
|
-
stop(): void;
|
|
122
|
-
subscribe(listener: PendingListener): () => void;
|
|
123
|
-
/** Pending runs, newest first. */
|
|
124
|
-
listPending(): PendingRun[];
|
|
125
|
-
/** Drop a pending run once the dashboard has started (or dismissed) it. */
|
|
126
|
-
ackPending(id: string): boolean;
|
|
127
|
-
private onIncident;
|
|
128
|
-
private onTimelineEvent;
|
|
129
|
-
/**
|
|
130
|
-
* Poll the CI source once and enqueue a run per matching `ci-failure`
|
|
131
|
-
* trigger. Public so tests can drive it without timers; a no-op when no CI
|
|
132
|
-
* source is wired or no `ci-failure` trigger is enabled (skips the network
|
|
133
|
-
* call entirely in that case).
|
|
134
|
-
*/
|
|
135
|
-
pollCiOnce(): Promise<void>;
|
|
136
|
-
private triggersFor;
|
|
137
|
-
private enqueue;
|
|
138
|
-
}
|
|
139
|
-
export {};
|
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
import { randomUUID } from "node:crypto";
|
|
2
|
-
import { z } from "zod";
|
|
3
|
-
/**
|
|
4
|
-
* Event-driven workflow triggers (IDEAS #16). Workflows are user-run today; a
|
|
5
|
-
* trigger binds an app-detected event to a workflow so it fires automatically.
|
|
6
|
-
*
|
|
7
|
-
* The workflow runner lives client-side (agent steps run through the dock), so a
|
|
8
|
-
* trigger can't run a workflow on the server. Instead a fired trigger enqueues a
|
|
9
|
-
* **pending run** here; the open dashboard drains the queue and drives the
|
|
10
|
-
* existing client runner. Pending runs survive until a browser claims them, so
|
|
11
|
-
* an event detected while no tab is open isn't lost.
|
|
12
|
-
*
|
|
13
|
-
* Event sources:
|
|
14
|
-
* - `error-incident` — {@link ErrorInbox} surfaces a new/repeated incident (push).
|
|
15
|
-
* - `service-crash` — {@link TimelineStore} records a `service.lifecycle`
|
|
16
|
-
* event with `severity: "error"` (non-zero exit not initiated by the user) (push).
|
|
17
|
-
* - `ci-failure` — the only **polled** source: an optional `ciSource`
|
|
18
|
-
* reports the current branch's failing CI on an interval. It fires at most
|
|
19
|
-
* once per commit sha (a failing run isn't re-enqueued every poll).
|
|
20
|
-
*/
|
|
21
|
-
export const triggerEventSchema = z.enum([
|
|
22
|
-
"error-incident",
|
|
23
|
-
"service-crash",
|
|
24
|
-
"ci-failure",
|
|
25
|
-
]);
|
|
26
|
-
export const workflowTriggerSchema = z.object({
|
|
27
|
-
id: z.string().min(1),
|
|
28
|
-
/** The workflow (built-in or user-saved) to run when this fires. */
|
|
29
|
-
workflowId: z.string().min(1),
|
|
30
|
-
event: triggerEventSchema,
|
|
31
|
-
/** Disabled triggers stay configured but never fire. */
|
|
32
|
-
enabled: z.boolean().default(true),
|
|
33
|
-
/**
|
|
34
|
-
* Optional case-insensitive substring matched against the event's service
|
|
35
|
-
* name (and, for incidents, the incident title). Empty/absent = match all.
|
|
36
|
-
*/
|
|
37
|
-
filter: z.string().optional(),
|
|
38
|
-
/**
|
|
39
|
-
* When true the dashboard starts the run automatically; otherwise the pending
|
|
40
|
-
* run is surfaced for the user to start with one click.
|
|
41
|
-
*/
|
|
42
|
-
autoRun: z.boolean().default(false),
|
|
43
|
-
});
|
|
44
|
-
export class WorkflowTriggerManager {
|
|
45
|
-
configStore;
|
|
46
|
-
errorInbox;
|
|
47
|
-
timelineStore;
|
|
48
|
-
ciSource;
|
|
49
|
-
ciPollIntervalMs;
|
|
50
|
-
capacity;
|
|
51
|
-
dedupeWindowMs;
|
|
52
|
-
now;
|
|
53
|
-
pending = [];
|
|
54
|
-
lastFiredAt = new Map();
|
|
55
|
-
listeners = new Set();
|
|
56
|
-
unsubscribers = [];
|
|
57
|
-
ciTimer;
|
|
58
|
-
started = false;
|
|
59
|
-
constructor(options) {
|
|
60
|
-
this.configStore = options.configStore;
|
|
61
|
-
this.errorInbox = options.errorInbox;
|
|
62
|
-
this.timelineStore = options.timelineStore;
|
|
63
|
-
this.ciSource = options.ciSource;
|
|
64
|
-
this.ciPollIntervalMs = options.ciPollIntervalMs ?? 60_000;
|
|
65
|
-
this.capacity = options.capacity ?? 50;
|
|
66
|
-
this.dedupeWindowMs = options.dedupeWindowMs ?? 30_000;
|
|
67
|
-
this.now = options.now ?? Date.now;
|
|
68
|
-
}
|
|
69
|
-
/** Subscribe to the live event sources. Idempotent. */
|
|
70
|
-
start() {
|
|
71
|
-
if (this.started)
|
|
72
|
-
return;
|
|
73
|
-
this.started = true;
|
|
74
|
-
this.unsubscribers.push(this.errorInbox.subscribe((incident) => {
|
|
75
|
-
void this.onIncident(incident);
|
|
76
|
-
}));
|
|
77
|
-
this.unsubscribers.push(this.timelineStore.subscribe((event) => {
|
|
78
|
-
void this.onTimelineEvent(event);
|
|
79
|
-
}));
|
|
80
|
-
if (this.ciSource && this.ciPollIntervalMs > 0) {
|
|
81
|
-
this.ciTimer = setInterval(() => {
|
|
82
|
-
void this.pollCiOnce();
|
|
83
|
-
}, this.ciPollIntervalMs);
|
|
84
|
-
// Don't keep the process alive just for CI polling.
|
|
85
|
-
this.ciTimer.unref?.();
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
stop() {
|
|
89
|
-
for (const off of this.unsubscribers.splice(0))
|
|
90
|
-
off();
|
|
91
|
-
if (this.ciTimer) {
|
|
92
|
-
clearInterval(this.ciTimer);
|
|
93
|
-
this.ciTimer = undefined;
|
|
94
|
-
}
|
|
95
|
-
this.started = false;
|
|
96
|
-
}
|
|
97
|
-
subscribe(listener) {
|
|
98
|
-
this.listeners.add(listener);
|
|
99
|
-
return () => this.listeners.delete(listener);
|
|
100
|
-
}
|
|
101
|
-
/** Pending runs, newest first. */
|
|
102
|
-
listPending() {
|
|
103
|
-
return [...this.pending].reverse();
|
|
104
|
-
}
|
|
105
|
-
/** Drop a pending run once the dashboard has started (or dismissed) it. */
|
|
106
|
-
ackPending(id) {
|
|
107
|
-
const index = this.pending.findIndex((run) => run.id === id);
|
|
108
|
-
if (index === -1)
|
|
109
|
-
return false;
|
|
110
|
-
this.pending.splice(index, 1);
|
|
111
|
-
return true;
|
|
112
|
-
}
|
|
113
|
-
async onIncident(incident) {
|
|
114
|
-
const triggers = await this.triggersFor("error-incident");
|
|
115
|
-
const haystack = `${incident.service} ${incident.title}`;
|
|
116
|
-
for (const trigger of triggers) {
|
|
117
|
-
if (!matchesFilter(trigger.filter, haystack))
|
|
118
|
-
continue;
|
|
119
|
-
this.enqueue(trigger, {
|
|
120
|
-
signatureCause: `incident:${incident.signature}`,
|
|
121
|
-
summary: `${incident.service}: ${incident.title}`,
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
async onTimelineEvent(event) {
|
|
126
|
-
if (event.kind !== "service.lifecycle" || event.severity !== "error")
|
|
127
|
-
return;
|
|
128
|
-
const service = event.service ?? "";
|
|
129
|
-
const triggers = await this.triggersFor("service-crash");
|
|
130
|
-
for (const trigger of triggers) {
|
|
131
|
-
if (!matchesFilter(trigger.filter, service))
|
|
132
|
-
continue;
|
|
133
|
-
this.enqueue(trigger, {
|
|
134
|
-
signatureCause: `crash:${service}`,
|
|
135
|
-
summary: event.title || `${service} crashed`,
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Poll the CI source once and enqueue a run per matching `ci-failure`
|
|
141
|
-
* trigger. Public so tests can drive it without timers; a no-op when no CI
|
|
142
|
-
* source is wired or no `ci-failure` trigger is enabled (skips the network
|
|
143
|
-
* call entirely in that case).
|
|
144
|
-
*/
|
|
145
|
-
async pollCiOnce() {
|
|
146
|
-
if (!this.ciSource)
|
|
147
|
-
return;
|
|
148
|
-
const triggers = await this.triggersFor("ci-failure");
|
|
149
|
-
if (triggers.length === 0)
|
|
150
|
-
return;
|
|
151
|
-
const snapshot = await this.ciSource().catch(() => null);
|
|
152
|
-
if (!snapshot)
|
|
153
|
-
return;
|
|
154
|
-
const haystack = `${snapshot.branch} ${snapshot.failingChecks.join(" ")}`;
|
|
155
|
-
for (const trigger of triggers) {
|
|
156
|
-
if (!matchesFilter(trigger.filter, haystack))
|
|
157
|
-
continue;
|
|
158
|
-
const checks = snapshot.failingChecks.length
|
|
159
|
-
? `: ${snapshot.failingChecks.join(", ")}`
|
|
160
|
-
: "";
|
|
161
|
-
this.enqueue(trigger, {
|
|
162
|
-
// Fire at most once per failing commit, not every poll.
|
|
163
|
-
signatureCause: `ci:${snapshot.sha}`,
|
|
164
|
-
summary: `CI failed on ${snapshot.branch}${checks}`,
|
|
165
|
-
once: true,
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
async triggersFor(event) {
|
|
170
|
-
const config = await this.configStore.load();
|
|
171
|
-
return config.workflowTriggers.filter((trigger) => trigger.enabled && trigger.event === event);
|
|
172
|
-
}
|
|
173
|
-
enqueue(trigger, cause) {
|
|
174
|
-
const signature = `${trigger.id}:${cause.signatureCause}`;
|
|
175
|
-
const at = this.now();
|
|
176
|
-
const previous = this.lastFiredAt.get(signature);
|
|
177
|
-
if (previous !== undefined) {
|
|
178
|
-
// `once` signatures (e.g. a CI failure on a given sha) never re-fire;
|
|
179
|
-
// the rest are debounced by the dedupe window.
|
|
180
|
-
if (cause.once)
|
|
181
|
-
return;
|
|
182
|
-
if (at - previous < this.dedupeWindowMs)
|
|
183
|
-
return;
|
|
184
|
-
}
|
|
185
|
-
this.lastFiredAt.set(signature, at);
|
|
186
|
-
const run = {
|
|
187
|
-
id: randomUUID(),
|
|
188
|
-
triggerId: trigger.id,
|
|
189
|
-
workflowId: trigger.workflowId,
|
|
190
|
-
event: trigger.event,
|
|
191
|
-
summary: cause.summary,
|
|
192
|
-
signature,
|
|
193
|
-
autoRun: trigger.autoRun,
|
|
194
|
-
createdAt: new Date(at).toISOString(),
|
|
195
|
-
};
|
|
196
|
-
this.pending.push(run);
|
|
197
|
-
this.pending.splice(0, Math.max(0, this.pending.length - this.capacity));
|
|
198
|
-
for (const listener of this.listeners)
|
|
199
|
-
listener(run);
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
function matchesFilter(filter, haystack) {
|
|
203
|
-
const needle = filter?.trim().toLowerCase();
|
|
204
|
-
if (!needle)
|
|
205
|
-
return true;
|
|
206
|
-
return haystack.toLowerCase().includes(needle);
|
|
207
|
-
}
|
|
208
|
-
//# sourceMappingURL=workflow-triggers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-triggers.js","sourceRoot":"","sources":["../../src/core/workflow-triggers.ts"],"names":[],"mappings":"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"}
|
package/dist/core/workflows.d.ts
DELETED
|
@@ -1,290 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
/**
|
|
3
|
-
* User-owned git/GitHub workflows — the AI-native answer to fixed IDE buttons.
|
|
4
|
-
*
|
|
5
|
-
* A workflow is an ordered list of steps the runner walks one at a time. A step
|
|
6
|
-
* is one of three kinds:
|
|
7
|
-
*
|
|
8
|
-
* - **action** — deterministic, no inputs needed (e.g. `push`). Runs via the
|
|
9
|
-
* REST API and its result tells us pass/fail. Predictable, no tokens spent.
|
|
10
|
-
* - **agent** — a scoped natural-language task run in a fresh headless agent
|
|
11
|
-
* session, which
|
|
12
|
-
* does the fuzzy work (review a diff, group commits, draft + file a PR/issue)
|
|
13
|
-
* using its own git/GitHub tools. Optionally `verify`-d against real git state.
|
|
14
|
-
* - **gate** — a hard stop that waits for the human (Approve / Skip / Stop).
|
|
15
|
-
*
|
|
16
|
-
* The runner itself lives client-side; this module owns the *shape* and the built-in templates, and is
|
|
17
|
-
* persisted through {@link ConfigStore} so a user can fork/edit them later.
|
|
18
|
-
*/
|
|
19
|
-
export declare const workflowStepSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
|
|
20
|
-
kind: z.ZodLiteral<"action">;
|
|
21
|
-
id: z.ZodString;
|
|
22
|
-
title: z.ZodString;
|
|
23
|
-
/**
|
|
24
|
-
* Deterministic op with no inputs — runs straight through the REST API with
|
|
25
|
-
* zero agent tokens. `assert-pr-branch` blocks on default branches before PR
|
|
26
|
-
* workflows can commit; `commit` stages everything and commits with a
|
|
27
|
-
* generated message (no diff reading, no quality analysis); `push` pushes
|
|
28
|
-
* the branch; `checkout-default-and-pull` returns to the default branch after
|
|
29
|
-
* a PR workflow and fast-forward pulls it.
|
|
30
|
-
*/
|
|
31
|
-
op: z.ZodEnum<["push", "commit", "assert-pr-branch", "checkout-default-and-pull"]>;
|
|
32
|
-
}, "strip", z.ZodTypeAny, {
|
|
33
|
-
kind: "action";
|
|
34
|
-
id: string;
|
|
35
|
-
title: string;
|
|
36
|
-
op: "push" | "commit" | "assert-pr-branch" | "checkout-default-and-pull";
|
|
37
|
-
}, {
|
|
38
|
-
kind: "action";
|
|
39
|
-
id: string;
|
|
40
|
-
title: string;
|
|
41
|
-
op: "push" | "commit" | "assert-pr-branch" | "checkout-default-and-pull";
|
|
42
|
-
}>, z.ZodObject<{
|
|
43
|
-
kind: z.ZodLiteral<"agent">;
|
|
44
|
-
id: z.ZodString;
|
|
45
|
-
title: z.ZodString;
|
|
46
|
-
/** The instruction handed to a fresh headless agent session. */
|
|
47
|
-
prompt: z.ZodString;
|
|
48
|
-
/** Optional user-selected capabilities the runner adds as prompt guidance. */
|
|
49
|
-
capabilities: z.ZodOptional<z.ZodObject<{
|
|
50
|
-
skills: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
51
|
-
mcpServers: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
52
|
-
plugins: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
53
|
-
hooks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
54
|
-
}, "strip", z.ZodTypeAny, {
|
|
55
|
-
skills?: string[] | undefined;
|
|
56
|
-
mcpServers?: string[] | undefined;
|
|
57
|
-
plugins?: string[] | undefined;
|
|
58
|
-
hooks?: string[] | undefined;
|
|
59
|
-
}, {
|
|
60
|
-
skills?: string[] | undefined;
|
|
61
|
-
mcpServers?: string[] | undefined;
|
|
62
|
-
plugins?: string[] | undefined;
|
|
63
|
-
hooks?: string[] | undefined;
|
|
64
|
-
}>>;
|
|
65
|
-
/** @deprecated Retained only so older saved workflows still parse; ignored by the runner. */
|
|
66
|
-
isolated: z.ZodOptional<z.ZodBoolean>;
|
|
67
|
-
/**
|
|
68
|
-
* Real-state check run after the agent's turn before advancing:
|
|
69
|
-
* - `committed` — the working tree is clean (changes were committed).
|
|
70
|
-
* - `pushed` — the branch is no longer ahead of its upstream.
|
|
71
|
-
*/
|
|
72
|
-
verify: z.ZodOptional<z.ZodEnum<["committed", "pushed"]>>;
|
|
73
|
-
}, "strip", z.ZodTypeAny, {
|
|
74
|
-
kind: "agent";
|
|
75
|
-
id: string;
|
|
76
|
-
title: string;
|
|
77
|
-
prompt: string;
|
|
78
|
-
capabilities?: {
|
|
79
|
-
skills?: string[] | undefined;
|
|
80
|
-
mcpServers?: string[] | undefined;
|
|
81
|
-
plugins?: string[] | undefined;
|
|
82
|
-
hooks?: string[] | undefined;
|
|
83
|
-
} | undefined;
|
|
84
|
-
isolated?: boolean | undefined;
|
|
85
|
-
verify?: "committed" | "pushed" | undefined;
|
|
86
|
-
}, {
|
|
87
|
-
kind: "agent";
|
|
88
|
-
id: string;
|
|
89
|
-
title: string;
|
|
90
|
-
prompt: string;
|
|
91
|
-
capabilities?: {
|
|
92
|
-
skills?: string[] | undefined;
|
|
93
|
-
mcpServers?: string[] | undefined;
|
|
94
|
-
plugins?: string[] | undefined;
|
|
95
|
-
hooks?: string[] | undefined;
|
|
96
|
-
} | undefined;
|
|
97
|
-
isolated?: boolean | undefined;
|
|
98
|
-
verify?: "committed" | "pushed" | undefined;
|
|
99
|
-
}>, z.ZodObject<{
|
|
100
|
-
kind: z.ZodLiteral<"gate">;
|
|
101
|
-
id: z.ZodString;
|
|
102
|
-
title: z.ZodString;
|
|
103
|
-
/** Shown at the pause so the user knows what they're approving. */
|
|
104
|
-
message: z.ZodString;
|
|
105
|
-
}, "strip", z.ZodTypeAny, {
|
|
106
|
-
message: string;
|
|
107
|
-
kind: "gate";
|
|
108
|
-
id: string;
|
|
109
|
-
title: string;
|
|
110
|
-
}, {
|
|
111
|
-
message: string;
|
|
112
|
-
kind: "gate";
|
|
113
|
-
id: string;
|
|
114
|
-
title: string;
|
|
115
|
-
}>]>;
|
|
116
|
-
export declare const workflowSchema: z.ZodObject<{
|
|
117
|
-
id: z.ZodString;
|
|
118
|
-
name: z.ZodString;
|
|
119
|
-
description: z.ZodOptional<z.ZodString>;
|
|
120
|
-
/** True for the shipped templates; false/absent for user-saved workflows. */
|
|
121
|
-
builtin: z.ZodOptional<z.ZodBoolean>;
|
|
122
|
-
steps: z.ZodArray<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
|
|
123
|
-
kind: z.ZodLiteral<"action">;
|
|
124
|
-
id: z.ZodString;
|
|
125
|
-
title: z.ZodString;
|
|
126
|
-
/**
|
|
127
|
-
* Deterministic op with no inputs — runs straight through the REST API with
|
|
128
|
-
* zero agent tokens. `assert-pr-branch` blocks on default branches before PR
|
|
129
|
-
* workflows can commit; `commit` stages everything and commits with a
|
|
130
|
-
* generated message (no diff reading, no quality analysis); `push` pushes
|
|
131
|
-
* the branch; `checkout-default-and-pull` returns to the default branch after
|
|
132
|
-
* a PR workflow and fast-forward pulls it.
|
|
133
|
-
*/
|
|
134
|
-
op: z.ZodEnum<["push", "commit", "assert-pr-branch", "checkout-default-and-pull"]>;
|
|
135
|
-
}, "strip", z.ZodTypeAny, {
|
|
136
|
-
kind: "action";
|
|
137
|
-
id: string;
|
|
138
|
-
title: string;
|
|
139
|
-
op: "push" | "commit" | "assert-pr-branch" | "checkout-default-and-pull";
|
|
140
|
-
}, {
|
|
141
|
-
kind: "action";
|
|
142
|
-
id: string;
|
|
143
|
-
title: string;
|
|
144
|
-
op: "push" | "commit" | "assert-pr-branch" | "checkout-default-and-pull";
|
|
145
|
-
}>, z.ZodObject<{
|
|
146
|
-
kind: z.ZodLiteral<"agent">;
|
|
147
|
-
id: z.ZodString;
|
|
148
|
-
title: z.ZodString;
|
|
149
|
-
/** The instruction handed to a fresh headless agent session. */
|
|
150
|
-
prompt: z.ZodString;
|
|
151
|
-
/** Optional user-selected capabilities the runner adds as prompt guidance. */
|
|
152
|
-
capabilities: z.ZodOptional<z.ZodObject<{
|
|
153
|
-
skills: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
154
|
-
mcpServers: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
155
|
-
plugins: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
156
|
-
hooks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
157
|
-
}, "strip", z.ZodTypeAny, {
|
|
158
|
-
skills?: string[] | undefined;
|
|
159
|
-
mcpServers?: string[] | undefined;
|
|
160
|
-
plugins?: string[] | undefined;
|
|
161
|
-
hooks?: string[] | undefined;
|
|
162
|
-
}, {
|
|
163
|
-
skills?: string[] | undefined;
|
|
164
|
-
mcpServers?: string[] | undefined;
|
|
165
|
-
plugins?: string[] | undefined;
|
|
166
|
-
hooks?: string[] | undefined;
|
|
167
|
-
}>>;
|
|
168
|
-
/** @deprecated Retained only so older saved workflows still parse; ignored by the runner. */
|
|
169
|
-
isolated: z.ZodOptional<z.ZodBoolean>;
|
|
170
|
-
/**
|
|
171
|
-
* Real-state check run after the agent's turn before advancing:
|
|
172
|
-
* - `committed` — the working tree is clean (changes were committed).
|
|
173
|
-
* - `pushed` — the branch is no longer ahead of its upstream.
|
|
174
|
-
*/
|
|
175
|
-
verify: z.ZodOptional<z.ZodEnum<["committed", "pushed"]>>;
|
|
176
|
-
}, "strip", z.ZodTypeAny, {
|
|
177
|
-
kind: "agent";
|
|
178
|
-
id: string;
|
|
179
|
-
title: string;
|
|
180
|
-
prompt: string;
|
|
181
|
-
capabilities?: {
|
|
182
|
-
skills?: string[] | undefined;
|
|
183
|
-
mcpServers?: string[] | undefined;
|
|
184
|
-
plugins?: string[] | undefined;
|
|
185
|
-
hooks?: string[] | undefined;
|
|
186
|
-
} | undefined;
|
|
187
|
-
isolated?: boolean | undefined;
|
|
188
|
-
verify?: "committed" | "pushed" | undefined;
|
|
189
|
-
}, {
|
|
190
|
-
kind: "agent";
|
|
191
|
-
id: string;
|
|
192
|
-
title: string;
|
|
193
|
-
prompt: string;
|
|
194
|
-
capabilities?: {
|
|
195
|
-
skills?: string[] | undefined;
|
|
196
|
-
mcpServers?: string[] | undefined;
|
|
197
|
-
plugins?: string[] | undefined;
|
|
198
|
-
hooks?: string[] | undefined;
|
|
199
|
-
} | undefined;
|
|
200
|
-
isolated?: boolean | undefined;
|
|
201
|
-
verify?: "committed" | "pushed" | undefined;
|
|
202
|
-
}>, z.ZodObject<{
|
|
203
|
-
kind: z.ZodLiteral<"gate">;
|
|
204
|
-
id: z.ZodString;
|
|
205
|
-
title: z.ZodString;
|
|
206
|
-
/** Shown at the pause so the user knows what they're approving. */
|
|
207
|
-
message: z.ZodString;
|
|
208
|
-
}, "strip", z.ZodTypeAny, {
|
|
209
|
-
message: string;
|
|
210
|
-
kind: "gate";
|
|
211
|
-
id: string;
|
|
212
|
-
title: string;
|
|
213
|
-
}, {
|
|
214
|
-
message: string;
|
|
215
|
-
kind: "gate";
|
|
216
|
-
id: string;
|
|
217
|
-
title: string;
|
|
218
|
-
}>]>, "many">;
|
|
219
|
-
}, "strip", z.ZodTypeAny, {
|
|
220
|
-
id: string;
|
|
221
|
-
name: string;
|
|
222
|
-
steps: ({
|
|
223
|
-
kind: "action";
|
|
224
|
-
id: string;
|
|
225
|
-
title: string;
|
|
226
|
-
op: "push" | "commit" | "assert-pr-branch" | "checkout-default-and-pull";
|
|
227
|
-
} | {
|
|
228
|
-
kind: "agent";
|
|
229
|
-
id: string;
|
|
230
|
-
title: string;
|
|
231
|
-
prompt: string;
|
|
232
|
-
capabilities?: {
|
|
233
|
-
skills?: string[] | undefined;
|
|
234
|
-
mcpServers?: string[] | undefined;
|
|
235
|
-
plugins?: string[] | undefined;
|
|
236
|
-
hooks?: string[] | undefined;
|
|
237
|
-
} | undefined;
|
|
238
|
-
isolated?: boolean | undefined;
|
|
239
|
-
verify?: "committed" | "pushed" | undefined;
|
|
240
|
-
} | {
|
|
241
|
-
message: string;
|
|
242
|
-
kind: "gate";
|
|
243
|
-
id: string;
|
|
244
|
-
title: string;
|
|
245
|
-
})[];
|
|
246
|
-
description?: string | undefined;
|
|
247
|
-
builtin?: boolean | undefined;
|
|
248
|
-
}, {
|
|
249
|
-
id: string;
|
|
250
|
-
name: string;
|
|
251
|
-
steps: ({
|
|
252
|
-
kind: "action";
|
|
253
|
-
id: string;
|
|
254
|
-
title: string;
|
|
255
|
-
op: "push" | "commit" | "assert-pr-branch" | "checkout-default-and-pull";
|
|
256
|
-
} | {
|
|
257
|
-
kind: "agent";
|
|
258
|
-
id: string;
|
|
259
|
-
title: string;
|
|
260
|
-
prompt: string;
|
|
261
|
-
capabilities?: {
|
|
262
|
-
skills?: string[] | undefined;
|
|
263
|
-
mcpServers?: string[] | undefined;
|
|
264
|
-
plugins?: string[] | undefined;
|
|
265
|
-
hooks?: string[] | undefined;
|
|
266
|
-
} | undefined;
|
|
267
|
-
isolated?: boolean | undefined;
|
|
268
|
-
verify?: "committed" | "pushed" | undefined;
|
|
269
|
-
} | {
|
|
270
|
-
message: string;
|
|
271
|
-
kind: "gate";
|
|
272
|
-
id: string;
|
|
273
|
-
title: string;
|
|
274
|
-
})[];
|
|
275
|
-
description?: string | undefined;
|
|
276
|
-
builtin?: boolean | undefined;
|
|
277
|
-
}>;
|
|
278
|
-
export type WorkflowStep = z.infer<typeof workflowStepSchema>;
|
|
279
|
-
export type Workflow = z.infer<typeof workflowSchema>;
|
|
280
|
-
/**
|
|
281
|
-
* The Phase-1 starter set. These are plain data (not hardcoded UI), so the same
|
|
282
|
-
* structure a user authors later can be forked from one of these.
|
|
283
|
-
*/
|
|
284
|
-
export declare const BUILTIN_WORKFLOWS: Workflow[];
|
|
285
|
-
/**
|
|
286
|
-
* Merge the built-in templates with the user's saved workflows. A stored
|
|
287
|
-
* workflow whose id matches a built-in *replaces* it (that's a fork/edit);
|
|
288
|
-
* everything else is appended. Built-ins come first.
|
|
289
|
-
*/
|
|
290
|
-
export declare function listWorkflows(stored: Workflow[]): Workflow[];
|