@creativeintelligence/abbie 0.1.4 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/commands/start.js +2 -1
- package/oclif.manifest.json +1 -1
- package/package.json +9 -5
- package/dist/cli/base-command.d.ts.map +0 -1
- package/dist/cli/commands/agent/list.d.ts.map +0 -1
- package/dist/cli/commands/annotation/ack.d.ts.map +0 -1
- package/dist/cli/commands/annotation/create.d.ts.map +0 -1
- package/dist/cli/commands/annotation/events.d.ts.map +0 -1
- package/dist/cli/commands/annotation/export.d.ts.map +0 -1
- package/dist/cli/commands/annotation/import.d.ts.map +0 -1
- package/dist/cli/commands/annotation/ingest.d.ts.map +0 -1
- package/dist/cli/commands/annotation/list.d.ts.map +0 -1
- package/dist/cli/commands/annotation/reply.d.ts.map +0 -1
- package/dist/cli/commands/annotation/resolve.d.ts.map +0 -1
- package/dist/cli/commands/auto/index.d.ts.map +0 -1
- package/dist/cli/commands/backlog/add.d.ts.map +0 -1
- package/dist/cli/commands/backlog/claim.d.ts.map +0 -1
- package/dist/cli/commands/backlog/complete.d.ts.map +0 -1
- package/dist/cli/commands/backlog/list.d.ts.map +0 -1
- package/dist/cli/commands/backlog/pick.d.ts.map +0 -1
- package/dist/cli/commands/backlog/sync.d.ts.map +0 -1
- package/dist/cli/commands/bootstrap.d.ts.map +0 -1
- package/dist/cli/commands/bridge.d.ts.map +0 -1
- package/dist/cli/commands/context/inject.d.ts.map +0 -1
- package/dist/cli/commands/context/list.d.ts.map +0 -1
- package/dist/cli/commands/context/publish.d.ts.map +0 -1
- package/dist/cli/commands/context/read.d.ts.map +0 -1
- package/dist/cli/commands/daemon.d.ts.map +0 -1
- package/dist/cli/commands/digest/index.d.ts.map +0 -1
- package/dist/cli/commands/docs/lint.d.ts.map +0 -1
- package/dist/cli/commands/docs/sync.d.ts.map +0 -1
- package/dist/cli/commands/doctor.d.ts.map +0 -1
- package/dist/cli/commands/find/index.d.ts.map +0 -1
- package/dist/cli/commands/gc.d.ts.map +0 -1
- package/dist/cli/commands/history/index.d.ts.map +0 -1
- package/dist/cli/commands/hooks/guard.d.ts.map +0 -1
- package/dist/cli/commands/hooks/list.d.ts.map +0 -1
- package/dist/cli/commands/hooks/lock.d.ts.map +0 -1
- package/dist/cli/commands/hooks/status.d.ts.map +0 -1
- package/dist/cli/commands/hooks/test.d.ts.map +0 -1
- package/dist/cli/commands/hooks/unlock.d.ts.map +0 -1
- package/dist/cli/commands/index.d.ts.map +0 -1
- package/dist/cli/commands/list.d.ts.map +0 -1
- package/dist/cli/commands/list.e2e.test.d.ts +0 -1
- package/dist/cli/commands/list.e2e.test.js +0 -47
- package/dist/cli/commands/login.d.ts.map +0 -1
- package/dist/cli/commands/logout.d.ts.map +0 -1
- package/dist/cli/commands/panes/broker.d.ts.map +0 -1
- package/dist/cli/commands/panes/pipe-sink.d.ts.map +0 -1
- package/dist/cli/commands/panes/snapshot.d.ts.map +0 -1
- package/dist/cli/commands/plan.d.ts.map +0 -1
- package/dist/cli/commands/plan.e2e.test.d.ts +0 -1
- package/dist/cli/commands/plan.e2e.test.js +0 -74
- package/dist/cli/commands/preview/index.d.ts.map +0 -1
- package/dist/cli/commands/preview/init.d.ts.map +0 -1
- package/dist/cli/commands/preview/list.d.ts.map +0 -1
- package/dist/cli/commands/preview/status.d.ts.map +0 -1
- package/dist/cli/commands/preview/stop.d.ts.map +0 -1
- package/dist/cli/commands/preview/sync.d.ts.map +0 -1
- package/dist/cli/commands/preview/watch.d.ts.map +0 -1
- package/dist/cli/commands/project/add.d.ts.map +0 -1
- package/dist/cli/commands/project/list.d.ts.map +0 -1
- package/dist/cli/commands/project/remove.d.ts.map +0 -1
- package/dist/cli/commands/push.d.ts.map +0 -1
- package/dist/cli/commands/reference/add.d.ts.map +0 -1
- package/dist/cli/commands/reference/delete.d.ts.map +0 -1
- package/dist/cli/commands/reference/extract.d.ts.map +0 -1
- package/dist/cli/commands/reference/list.d.ts.map +0 -1
- package/dist/cli/commands/reference/normalize.d.ts.map +0 -1
- package/dist/cli/commands/reference/open.d.ts.map +0 -1
- package/dist/cli/commands/reference/save.d.ts.map +0 -1
- package/dist/cli/commands/reference/search.d.ts.map +0 -1
- package/dist/cli/commands/reference/show.d.ts.map +0 -1
- package/dist/cli/commands/reference/update-index.d.ts.map +0 -1
- package/dist/cli/commands/reference/update.d.ts.map +0 -1
- package/dist/cli/commands/report/blocked.d.ts.map +0 -1
- package/dist/cli/commands/report/complete.d.ts.map +0 -1
- package/dist/cli/commands/report/progress.d.ts.map +0 -1
- package/dist/cli/commands/report/start.d.ts.map +0 -1
- package/dist/cli/commands/resource/acquire.d.ts.map +0 -1
- package/dist/cli/commands/resource/list.d.ts.map +0 -1
- package/dist/cli/commands/resource/release.d.ts.map +0 -1
- package/dist/cli/commands/resource/wait.d.ts.map +0 -1
- package/dist/cli/commands/review.d.ts.map +0 -1
- package/dist/cli/commands/session/attach.d.ts.map +0 -1
- package/dist/cli/commands/session/await.d.ts.map +0 -1
- package/dist/cli/commands/session/complete.d.ts.map +0 -1
- package/dist/cli/commands/session/create.d.ts.map +0 -1
- package/dist/cli/commands/session/heartbeat.d.ts.map +0 -1
- package/dist/cli/commands/session/list.d.ts.map +0 -1
- package/dist/cli/commands/session/mark-done.d.ts.map +0 -1
- package/dist/cli/commands/session/mine.d.ts.map +0 -1
- package/dist/cli/commands/session/replay.d.ts.map +0 -1
- package/dist/cli/commands/session/run.d.ts.map +0 -1
- package/dist/cli/commands/session/show.d.ts.map +0 -1
- package/dist/cli/commands/session/start.d.ts.map +0 -1
- package/dist/cli/commands/session/state/cleanup.d.ts.map +0 -1
- package/dist/cli/commands/session/state/end.d.ts.map +0 -1
- package/dist/cli/commands/session/state/get.d.ts.map +0 -1
- package/dist/cli/commands/session/state/init.d.ts.map +0 -1
- package/dist/cli/commands/session/state/list.d.ts.map +0 -1
- package/dist/cli/commands/session/state/update.d.ts.map +0 -1
- package/dist/cli/commands/session/stop.d.ts.map +0 -1
- package/dist/cli/commands/session/view.d.ts.map +0 -1
- package/dist/cli/commands/start.d.ts.map +0 -1
- package/dist/cli/commands/state/dump.d.ts.map +0 -1
- package/dist/cli/commands/status.d.ts.map +0 -1
- package/dist/cli/commands/sync.d.ts.map +0 -1
- package/dist/cli/commands/trace/export.d.ts.map +0 -1
- package/dist/cli/commands/triage/claim.d.ts.map +0 -1
- package/dist/cli/commands/triage/list.d.ts.map +0 -1
- package/dist/cli/commands/triage/next.d.ts.map +0 -1
- package/dist/cli/commands/triage/pull.d.ts.map +0 -1
- package/dist/cli/commands/triage/stats.d.ts.map +0 -1
- package/dist/cli/commands/tunnel/list.d.ts.map +0 -1
- package/dist/cli/commands/tunnel/start.d.ts.map +0 -1
- package/dist/cli/commands/tunnel/stop.d.ts.map +0 -1
- package/dist/cli/commands/tunnel/url.d.ts.map +0 -1
- package/dist/cli/commands/web/start.d.ts.map +0 -1
- package/dist/cli/commands/windows/context.d.ts.map +0 -1
- package/dist/cli/commands/windows/focus.d.ts.map +0 -1
- package/dist/cli/commands/windows/list.d.ts.map +0 -1
- package/dist/cli/commands/windows/map.d.ts.map +0 -1
- package/dist/cli/commands/windows/read.d.ts.map +0 -1
- package/dist/cli/commands/windows/search.d.ts.map +0 -1
- package/dist/cli/commands/windows/show.d.ts.map +0 -1
- package/dist/cli/commands/windows/watch.d.ts.map +0 -1
- package/dist/lib/active-sessions.d.ts.map +0 -1
- package/dist/lib/agent-adapters.d.ts.map +0 -1
- package/dist/lib/agent-sessions.d.ts.map +0 -1
- package/dist/lib/agent-trace.d.ts.map +0 -1
- package/dist/lib/analytics.d.ts.map +0 -1
- package/dist/lib/annotations-convex.d.ts.map +0 -1
- package/dist/lib/annotations.d.ts.map +0 -1
- package/dist/lib/auto/discover.d.ts.map +0 -1
- package/dist/lib/auto/ideate.d.ts.map +0 -1
- package/dist/lib/auto/spawn.d.ts.map +0 -1
- package/dist/lib/auto/workspace.d.ts.map +0 -1
- package/dist/lib/backlog.d.ts.map +0 -1
- package/dist/lib/backlog.test.d.ts +0 -1
- package/dist/lib/backlog.test.js +0 -162
- package/dist/lib/config-loader.d.ts.map +0 -1
- package/dist/lib/config-sync/adapters/claude.d.ts.map +0 -1
- package/dist/lib/config-sync/adapters/codex.d.ts.map +0 -1
- package/dist/lib/config-sync/adapters/copilot.d.ts.map +0 -1
- package/dist/lib/config-sync/adapters/gemini.d.ts.map +0 -1
- package/dist/lib/config-sync/adapters/index.d.ts.map +0 -1
- package/dist/lib/config-sync/adapters/opencode.d.ts.map +0 -1
- package/dist/lib/config-sync/index.d.ts.map +0 -1
- package/dist/lib/config-sync/types.d.ts.map +0 -1
- package/dist/lib/config-sync/writer.d.ts.map +0 -1
- package/dist/lib/content-sync/index.d.ts.map +0 -1
- package/dist/lib/content-sync/types.d.ts.map +0 -1
- package/dist/lib/contracts.d.ts.map +0 -1
- package/dist/lib/convex.d.ts.map +0 -1
- package/dist/lib/device.d.ts.map +0 -1
- package/dist/lib/digest/index.d.ts.map +0 -1
- package/dist/lib/docs/lint.d.ts.map +0 -1
- package/dist/lib/docs/lint.test.d.ts +0 -1
- package/dist/lib/docs/lint.test.js +0 -120
- package/dist/lib/docs/sync.d.ts.map +0 -1
- package/dist/lib/doctor/index.d.ts.map +0 -1
- package/dist/lib/doctor/repos.d.ts.map +0 -1
- package/dist/lib/doctor/templates.d.ts.map +0 -1
- package/dist/lib/errors.d.ts.map +0 -1
- package/dist/lib/events.d.ts.map +0 -1
- package/dist/lib/heartbeat.d.ts.map +0 -1
- package/dist/lib/heartbeat.test.d.ts +0 -1
- package/dist/lib/heartbeat.test.js +0 -124
- package/dist/lib/hooks/adapters/claude.d.ts.map +0 -1
- package/dist/lib/hooks/adapters/codex.d.ts.map +0 -1
- package/dist/lib/hooks/adapters/copilot.d.ts.map +0 -1
- package/dist/lib/hooks/context.d.ts.map +0 -1
- package/dist/lib/hooks/index.d.ts.map +0 -1
- package/dist/lib/hooks/registry.d.ts.map +0 -1
- package/dist/lib/hooks/runner.d.ts.map +0 -1
- package/dist/lib/hooks/types.d.ts.map +0 -1
- package/dist/lib/index.test.d.ts +0 -1
- package/dist/lib/index.test.js +0 -334
- package/dist/lib/managed-session.d.ts.map +0 -1
- package/dist/lib/math.d.ts.map +0 -1
- package/dist/lib/math.test.d.ts +0 -1
- package/dist/lib/math.test.js +0 -238
- package/dist/lib/ngrok.d.ts.map +0 -1
- package/dist/lib/nvim/discovery.d.ts.map +0 -1
- package/dist/lib/nvim/discovery.test.d.ts +0 -1
- package/dist/lib/nvim/discovery.test.js +0 -131
- package/dist/lib/nvim/index.d.ts.map +0 -1
- package/dist/lib/nvim/remote.d.ts.map +0 -1
- package/dist/lib/nvim/remote.test.d.ts +0 -1
- package/dist/lib/nvim/remote.test.js +0 -18
- package/dist/lib/panes/broker.d.ts.map +0 -1
- package/dist/lib/panes/index.d.ts.map +0 -1
- package/dist/lib/panes/server.d.ts.map +0 -1
- package/dist/lib/preview/detect.d.ts.map +0 -1
- package/dist/lib/preview/index.d.ts.map +0 -1
- package/dist/lib/preview/manager.d.ts.map +0 -1
- package/dist/lib/preview/schema.d.ts.map +0 -1
- package/dist/lib/preview/sprite.d.ts.map +0 -1
- package/dist/lib/preview/watcher.d.ts.map +0 -1
- package/dist/lib/process/index.d.ts.map +0 -1
- package/dist/lib/process/snapshot.d.ts.map +0 -1
- package/dist/lib/process/snapshot.test.d.ts +0 -1
- package/dist/lib/process/snapshot.test.js +0 -127
- package/dist/lib/project-identity.d.ts.map +0 -1
- package/dist/lib/provider-auth.d.ts.map +0 -1
- package/dist/lib/references.d.ts.map +0 -1
- package/dist/lib/report.d.ts.map +0 -1
- package/dist/lib/resources.d.ts.map +0 -1
- package/dist/lib/resources.test.d.ts +0 -1
- package/dist/lib/resources.test.js +0 -94
- package/dist/lib/runner.d.ts.map +0 -1
- package/dist/lib/runner.test.d.ts +0 -1
- package/dist/lib/runner.test.js +0 -234
- package/dist/lib/session-artifacts.d.ts.map +0 -1
- package/dist/lib/session-manager.d.ts.map +0 -1
- package/dist/lib/session-manager.test.d.ts +0 -1
- package/dist/lib/session-manager.test.js +0 -310
- package/dist/lib/session-result.d.ts.map +0 -1
- package/dist/lib/session-state.d.ts.map +0 -1
- package/dist/lib/slack-workspace.d.ts.map +0 -1
- package/dist/lib/tmux/bridge.d.ts.map +0 -1
- package/dist/lib/tmux/context.d.ts.map +0 -1
- package/dist/lib/tmux/context.test.d.ts +0 -1
- package/dist/lib/tmux/context.test.js +0 -215
- package/dist/lib/tmux/index.d.ts.map +0 -1
- package/dist/lib/tmux/map.d.ts.map +0 -1
- package/dist/lib/tmux/map.test.d.ts +0 -1
- package/dist/lib/tmux/map.test.js +0 -80
- package/dist/lib/tmux/panes.d.ts.map +0 -1
- package/dist/lib/tmux/redaction.d.ts.map +0 -1
- package/dist/lib/tmux/redaction.test.d.ts +0 -1
- package/dist/lib/tmux/redaction.test.js +0 -183
- package/dist/lib/triage-llm.d.ts.map +0 -1
- package/dist/lib/triage-tracker.d.ts.map +0 -1
- package/dist/lib/triage.d.ts.map +0 -1
- package/dist/lib/types.d.ts.map +0 -1
- package/dist/lib/windows/index.d.ts.map +0 -1
- package/dist/lib/windows/inventory.d.ts.map +0 -1
- package/dist/lib/windows/inventory.test.d.ts +0 -1
- package/dist/lib/windows/inventory.test.js +0 -292
- package/dist/lib/windows/types.d.ts.map +0 -1
- package/dist/lib.d.ts.map +0 -1
- package/dist/web/app/@overlay/default.d.ts +0 -1
- package/dist/web/app/@overlay/default.js +0 -3
- package/dist/web/app/about/page.d.ts +0 -1
- package/dist/web/app/about/page.js +0 -6
- package/dist/web/app/layout.d.ts +0 -7
- package/dist/web/app/layout.js +0 -19
- package/dist/web/app/page.d.ts +0 -1
- package/dist/web/app/page.js +0 -38
- package/dist/web/app/settings/page.d.ts +0 -1
- package/dist/web/app/settings/page.js +0 -6
- package/dist/web/app/shortcuts/page.d.ts +0 -1
- package/dist/web/app/shortcuts/page.js +0 -6
- package/dist/web/atoms/sidebar.d.ts +0 -16
- package/dist/web/atoms/sidebar.js +0 -58
- package/dist/web/atoms/state.d.ts +0 -24
- package/dist/web/atoms/state.js +0 -43
- package/dist/web/components/command-palette.d.ts +0 -6
- package/dist/web/components/command-palette.js +0 -297
- package/dist/web/components/main-view.d.ts +0 -1
- package/dist/web/components/main-view.js +0 -93
- package/dist/web/components/overlay/page-overlay.d.ts +0 -16
- package/dist/web/components/overlay/page-overlay.js +0 -84
- package/dist/web/components/pane-view.d.ts +0 -5
- package/dist/web/components/pane-view.js +0 -168
- package/dist/web/components/project-files-view.d.ts +0 -6
- package/dist/web/components/project-files-view.js +0 -205
- package/dist/web/components/project-planning-view.d.ts +0 -6
- package/dist/web/components/project-planning-view.js +0 -146
- package/dist/web/components/session-view.d.ts +0 -6
- package/dist/web/components/session-view.js +0 -211
- package/dist/web/components/sessions-list-view.d.ts +0 -1
- package/dist/web/components/sessions-list-view.js +0 -118
- package/dist/web/components/sidebar/index.d.ts +0 -9
- package/dist/web/components/sidebar/index.js +0 -29
- package/dist/web/components/sidebar/kbd.d.ts +0 -17
- package/dist/web/components/sidebar/kbd.js +0 -47
- package/dist/web/components/sidebar/nav-group.d.ts +0 -22
- package/dist/web/components/sidebar/nav-group.js +0 -43
- package/dist/web/components/sidebar/nav-item.d.ts +0 -17
- package/dist/web/components/sidebar/nav-item.js +0 -38
- package/dist/web/components/sidebar/sidebar-header.d.ts +0 -9
- package/dist/web/components/sidebar/sidebar-header.js +0 -18
- package/dist/web/components/sidebar/sidebar-nav.d.ts +0 -7
- package/dist/web/components/sidebar/sidebar-nav.js +0 -505
- package/dist/web/components/sidebar/sidebar-search.d.ts +0 -7
- package/dist/web/components/sidebar/sidebar-search.js +0 -18
- package/dist/web/components/sidebar/sidebar-settings.d.ts +0 -4
- package/dist/web/components/sidebar/sidebar-settings.js +0 -28
- package/dist/web/components/sidebar/sidebar-transition.d.ts +0 -12
- package/dist/web/components/sidebar/sidebar-transition.js +0 -58
- package/dist/web/components/status-bar.d.ts +0 -1
- package/dist/web/components/status-bar.js +0 -53
- package/dist/web/components/terminal.d.ts +0 -4
- package/dist/web/components/terminal.js +0 -324
- package/dist/web/components/toast.d.ts +0 -7
- package/dist/web/components/toast.js +0 -72
- package/dist/web/hooks/use-keybindings.d.ts +0 -30
- package/dist/web/hooks/use-keybindings.js +0 -322
- package/dist/web/hooks/use-state.d.ts +0 -11
- package/dist/web/hooks/use-state.js +0 -84
- package/dist/web/lib/api.d.ts +0 -179
- package/dist/web/lib/api.js +0 -79
- package/dist/web/lib/paths.d.ts +0 -2
- package/dist/web/lib/paths.js +0 -26
- package/dist/web/lib/utils.d.ts +0 -2
- package/dist/web/lib/utils.js +0 -5
- package/dist/web/lib/ws.d.ts +0 -18
- package/dist/web/lib/ws.js +0 -138
- package/dist/web/next.config.d.ts +0 -3
- package/dist/web/next.config.js +0 -9
- package/scripts/generate-manifest.ts +0 -44
- package/src/cli/base-command.ts +0 -233
- package/src/cli/commands/__tests__/annotations.test.ts +0 -704
- package/src/cli/commands/__tests__/bridge.test.ts +0 -101
- package/src/cli/commands/__tests__/daemon.test.ts +0 -79
- package/src/cli/commands/agent/list.ts +0 -75
- package/src/cli/commands/annotation/ack.ts +0 -37
- package/src/cli/commands/annotation/create.ts +0 -67
- package/src/cli/commands/annotation/events.ts +0 -63
- package/src/cli/commands/annotation/export.ts +0 -67
- package/src/cli/commands/annotation/import.ts +0 -98
- package/src/cli/commands/annotation/ingest.ts +0 -112
- package/src/cli/commands/annotation/list.ts +0 -57
- package/src/cli/commands/annotation/reply.ts +0 -46
- package/src/cli/commands/annotation/resolve.ts +0 -37
- package/src/cli/commands/auto/index.ts +0 -755
- package/src/cli/commands/backlog/add.ts +0 -74
- package/src/cli/commands/backlog/claim.ts +0 -53
- package/src/cli/commands/backlog/complete.ts +0 -51
- package/src/cli/commands/backlog/list.ts +0 -107
- package/src/cli/commands/backlog/pick.ts +0 -50
- package/src/cli/commands/backlog/sync.ts +0 -131
- package/src/cli/commands/bootstrap.ts +0 -205
- package/src/cli/commands/bridge.ts +0 -233
- package/src/cli/commands/context/inject.ts +0 -103
- package/src/cli/commands/context/list.ts +0 -112
- package/src/cli/commands/context/publish.ts +0 -83
- package/src/cli/commands/context/read.ts +0 -85
- package/src/cli/commands/daemon.ts +0 -1809
- package/src/cli/commands/digest/index.ts +0 -245
- package/src/cli/commands/docs/lint.ts +0 -93
- package/src/cli/commands/docs/sync.ts +0 -90
- package/src/cli/commands/doctor.ts +0 -267
- package/src/cli/commands/find/index.ts +0 -313
- package/src/cli/commands/history/index.ts +0 -269
- package/src/cli/commands/hooks/guard.ts +0 -71
- package/src/cli/commands/hooks/list.ts +0 -139
- package/src/cli/commands/hooks/lock.ts +0 -47
- package/src/cli/commands/hooks/status.ts +0 -56
- package/src/cli/commands/hooks/test.ts +0 -190
- package/src/cli/commands/hooks/unlock.ts +0 -56
- package/src/cli/commands/list.e2e.test.ts +0 -58
- package/src/cli/commands/list.ts +0 -96
- package/src/cli/commands/login.ts +0 -236
- package/src/cli/commands/logout.ts +0 -45
- package/src/cli/commands/panes/broker.ts +0 -68
- package/src/cli/commands/panes/pipe-sink.ts +0 -101
- package/src/cli/commands/panes/snapshot.ts +0 -156
- package/src/cli/commands/plan.e2e.test.ts +0 -90
- package/src/cli/commands/plan.ts +0 -68
- package/src/cli/commands/preview/index.ts +0 -282
- package/src/cli/commands/preview/list.ts +0 -116
- package/src/cli/commands/preview/status.ts +0 -137
- package/src/cli/commands/preview/stop.ts +0 -165
- package/src/cli/commands/project/add.ts +0 -110
- package/src/cli/commands/project/list.ts +0 -136
- package/src/cli/commands/project/remove.ts +0 -60
- package/src/cli/commands/push.ts +0 -115
- package/src/cli/commands/reference/add.ts +0 -266
- package/src/cli/commands/reference/delete.ts +0 -67
- package/src/cli/commands/reference/extract.ts +0 -389
- package/src/cli/commands/reference/list.ts +0 -117
- package/src/cli/commands/reference/normalize.ts +0 -90
- package/src/cli/commands/reference/open.ts +0 -92
- package/src/cli/commands/reference/save.ts +0 -103
- package/src/cli/commands/reference/search.ts +0 -85
- package/src/cli/commands/reference/show.ts +0 -174
- package/src/cli/commands/reference/update-index.ts +0 -103
- package/src/cli/commands/reference/update.ts +0 -136
- package/src/cli/commands/report/blocked.ts +0 -165
- package/src/cli/commands/report/complete.ts +0 -179
- package/src/cli/commands/report/progress.ts +0 -142
- package/src/cli/commands/report/start.ts +0 -140
- package/src/cli/commands/resource/acquire.ts +0 -116
- package/src/cli/commands/resource/list.ts +0 -77
- package/src/cli/commands/resource/release.ts +0 -64
- package/src/cli/commands/resource/wait.ts +0 -93
- package/src/cli/commands/review.ts +0 -105
- package/src/cli/commands/session/attach.ts +0 -200
- package/src/cli/commands/session/await.ts +0 -83
- package/src/cli/commands/session/complete.ts +0 -100
- package/src/cli/commands/session/create.ts +0 -92
- package/src/cli/commands/session/heartbeat.ts +0 -63
- package/src/cli/commands/session/list.ts +0 -281
- package/src/cli/commands/session/mark-done.ts +0 -132
- package/src/cli/commands/session/mine.ts +0 -189
- package/src/cli/commands/session/replay.ts +0 -659
- package/src/cli/commands/session/run.ts +0 -44
- package/src/cli/commands/session/show.ts +0 -177
- package/src/cli/commands/session/start.ts +0 -580
- package/src/cli/commands/session/state/cleanup.ts +0 -61
- package/src/cli/commands/session/state/end.ts +0 -47
- package/src/cli/commands/session/state/get.ts +0 -65
- package/src/cli/commands/session/state/init.ts +0 -50
- package/src/cli/commands/session/state/list.ts +0 -68
- package/src/cli/commands/session/state/update.ts +0 -108
- package/src/cli/commands/session/stop.ts +0 -134
- package/src/cli/commands/session/view.ts +0 -186
- package/src/cli/commands/start.ts +0 -256
- package/src/cli/commands/state/dump.ts +0 -449
- package/src/cli/commands/status.ts +0 -244
- package/src/cli/commands/sync.ts +0 -174
- package/src/cli/commands/trace/export.ts +0 -255
- package/src/cli/commands/triage/claim.ts +0 -203
- package/src/cli/commands/triage/list.ts +0 -137
- package/src/cli/commands/triage/next.ts +0 -73
- package/src/cli/commands/triage/pull.ts +0 -97
- package/src/cli/commands/triage/stats.ts +0 -82
- package/src/cli/commands/tunnel/list.ts +0 -113
- package/src/cli/commands/tunnel/start.ts +0 -122
- package/src/cli/commands/tunnel/stop.ts +0 -108
- package/src/cli/commands/tunnel/url.ts +0 -82
- package/src/cli/commands/web/start.ts +0 -125
- package/src/cli/commands/windows/context.ts +0 -439
- package/src/cli/commands/windows/focus.ts +0 -130
- package/src/cli/commands/windows/list.ts +0 -213
- package/src/cli/commands/windows/map.ts +0 -223
- package/src/cli/commands/windows/read.ts +0 -279
- package/src/cli/commands/windows/search.ts +0 -219
- package/src/cli/commands/windows/show.ts +0 -188
- package/src/cli/commands/windows/watch.ts +0 -262
- package/src/lib/__tests__/annotations-convex.test.ts +0 -104
- package/src/lib/active-sessions.ts +0 -1486
- package/src/lib/agent-adapters.ts +0 -412
- package/src/lib/agent-sessions.ts +0 -671
- package/src/lib/agent-trace.test.ts +0 -296
- package/src/lib/agent-trace.ts +0 -513
- package/src/lib/analytics.ts +0 -178
- package/src/lib/annotations-convex.ts +0 -296
- package/src/lib/annotations.test.ts +0 -274
- package/src/lib/annotations.ts +0 -836
- package/src/lib/auto/discover.ts +0 -545
- package/src/lib/auto/ideate.ts +0 -412
- package/src/lib/auto/spawn.ts +0 -549
- package/src/lib/auto/workspace.ts +0 -282
- package/src/lib/backlog.test.ts +0 -194
- package/src/lib/backlog.ts +0 -428
- package/src/lib/config-loader.ts +0 -391
- package/src/lib/config-sync/adapters/claude.ts +0 -91
- package/src/lib/config-sync/adapters/codex.ts +0 -135
- package/src/lib/config-sync/adapters/copilot.ts +0 -98
- package/src/lib/config-sync/adapters/gemini.ts +0 -86
- package/src/lib/config-sync/adapters/index.ts +0 -39
- package/src/lib/config-sync/adapters/opencode.ts +0 -94
- package/src/lib/config-sync/index.ts +0 -399
- package/src/lib/config-sync/types.ts +0 -92
- package/src/lib/config-sync/writer.ts +0 -188
- package/src/lib/content-sync/index.ts +0 -882
- package/src/lib/content-sync/types.ts +0 -104
- package/src/lib/contracts.test.ts +0 -186
- package/src/lib/contracts.ts +0 -195
- package/src/lib/convex.ts +0 -54
- package/src/lib/device.ts +0 -41
- package/src/lib/digest/index.ts +0 -529
- package/src/lib/docs/lint.test.ts +0 -135
- package/src/lib/docs/lint.ts +0 -310
- package/src/lib/docs/sync.ts +0 -184
- package/src/lib/doctor/index.ts +0 -647
- package/src/lib/doctor/repos.ts +0 -381
- package/src/lib/doctor/templates.ts +0 -191
- package/src/lib/errors.ts +0 -111
- package/src/lib/events.ts +0 -479
- package/src/lib/heartbeat.test.ts +0 -164
- package/src/lib/heartbeat.ts +0 -326
- package/src/lib/hooks/adapters/claude.ts +0 -115
- package/src/lib/hooks/adapters/codex.ts +0 -92
- package/src/lib/hooks/adapters/copilot.ts +0 -141
- package/src/lib/hooks/context.ts +0 -174
- package/src/lib/hooks/index.ts +0 -39
- package/src/lib/hooks/registry.ts +0 -101
- package/src/lib/hooks/runner.ts +0 -208
- package/src/lib/hooks/types.ts +0 -89
- package/src/lib/index.test.ts +0 -426
- package/src/lib/managed-session.ts +0 -117
- package/src/lib/math.test.ts +0 -299
- package/src/lib/math.ts +0 -120
- package/src/lib/ngrok.ts +0 -441
- package/src/lib/nvim/discovery.test.ts +0 -157
- package/src/lib/nvim/discovery.ts +0 -181
- package/src/lib/nvim/index.ts +0 -28
- package/src/lib/nvim/remote.test.ts +0 -21
- package/src/lib/nvim/remote.ts +0 -184
- package/src/lib/panes/README.md +0 -20
- package/src/lib/panes/broker.ts +0 -261
- package/src/lib/panes/index.ts +0 -1
- package/src/lib/panes/server.ts +0 -379
- package/src/lib/preview/detect.ts +0 -184
- package/src/lib/preview/index.ts +0 -1
- package/src/lib/process/index.ts +0 -16
- package/src/lib/process/snapshot.test.ts +0 -188
- package/src/lib/process/snapshot.ts +0 -257
- package/src/lib/provider-auth.ts +0 -258
- package/src/lib/references.ts +0 -481
- package/src/lib/report.ts +0 -973
- package/src/lib/resources.test.ts +0 -132
- package/src/lib/resources.ts +0 -429
- package/src/lib/runner.test.ts +0 -288
- package/src/lib/runner.ts +0 -1223
- package/src/lib/session-artifacts.test.ts +0 -107
- package/src/lib/session-artifacts.ts +0 -193
- package/src/lib/session-manager.test.ts +0 -402
- package/src/lib/session-manager.ts +0 -150
- package/src/lib/session-result.test.ts +0 -98
- package/src/lib/session-result.ts +0 -262
- package/src/lib/session-state.ts +0 -470
- package/src/lib/slack-workspace.ts +0 -25
- package/src/lib/tmux/bridge.ts +0 -439
- package/src/lib/tmux/context.test.ts +0 -242
- package/src/lib/tmux/context.ts +0 -380
- package/src/lib/tmux/index.ts +0 -46
- package/src/lib/tmux/map.test.ts +0 -99
- package/src/lib/tmux/map.ts +0 -252
- package/src/lib/tmux/panes.ts +0 -170
- package/src/lib/tmux/redaction.test.ts +0 -231
- package/src/lib/tmux/redaction.ts +0 -201
- package/src/lib/triage-llm.ts +0 -312
- package/src/lib/triage-tracker.ts +0 -400
- package/src/lib/triage.ts +0 -655
- package/src/lib/types.ts +0 -61
- package/src/lib/windows/index.ts +0 -2
- package/src/lib/windows/inventory.test.ts +0 -370
- package/src/lib/windows/inventory.ts +0 -352
- package/src/lib/windows/types.ts +0 -46
- package/src/lib.ts +0 -260
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import { Args, Flags } from "@oclif/core";
|
|
2
|
-
import { detectProject, telemetry } from "../../../lib/analytics.js";
|
|
3
|
-
import {
|
|
4
|
-
type AgentIdentity,
|
|
5
|
-
type BlockerType,
|
|
6
|
-
type ReportResult,
|
|
7
|
-
reportBlocked,
|
|
8
|
-
} from "../../../lib/report.js";
|
|
9
|
-
import { getDefaultSlackWorkspace } from "../../../lib/slack-workspace.js";
|
|
10
|
-
import { AGENTS } from "../../../lib/types.js";
|
|
11
|
-
import { BaseCommand } from "../../base-command.js";
|
|
12
|
-
|
|
13
|
-
const DEFAULT_SLACK_WORKSPACE = getDefaultSlackWorkspace();
|
|
14
|
-
|
|
15
|
-
export default class ReportBlockedCommand extends BaseCommand {
|
|
16
|
-
static override summary = "Report a blocker";
|
|
17
|
-
static override description = `Reports a blocker with escalation to DM by default.
|
|
18
|
-
|
|
19
|
-
Inherits trace ID from AGENTS_TRACE_ID environment variable, or uses --trace-id flag.
|
|
20
|
-
If neither is set, generates a new trace ID (with warning).
|
|
21
|
-
|
|
22
|
-
DM is enabled by default for blocked (human attention needed). Use --no-dm to suppress.
|
|
23
|
-
|
|
24
|
-
Error handling:
|
|
25
|
-
- convex reports: CRITICAL (fails hard if persistence fails)
|
|
26
|
-
- slack: WARN (continues if slack fails)
|
|
27
|
-
- messages: WARN (continues if DM fails)`;
|
|
28
|
-
|
|
29
|
-
static override examples = [
|
|
30
|
-
'$ abbie report blocked "need API key for external service"',
|
|
31
|
-
'$ abbie report blocked "tests failing unexpectedly" --blocker-type error',
|
|
32
|
-
'$ abbie report blocked "waiting on upstream PR" --blocker-type dependency',
|
|
33
|
-
'$ abbie report blocked "DB locked" --blocker-type resource --no-dm',
|
|
34
|
-
'$ echo "test failures: auth module timing out" | abbie report blocked --stdin',
|
|
35
|
-
"$ verify --json --failures-only | abbie report blocked --stdin --blocker-type error",
|
|
36
|
-
];
|
|
37
|
-
|
|
38
|
-
static override args = {
|
|
39
|
-
message: Args.string({
|
|
40
|
-
description: "Blocker description (can also be provided via stdin)",
|
|
41
|
-
required: false,
|
|
42
|
-
}),
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
static override flags = {
|
|
46
|
-
...BaseCommand.baseFlags,
|
|
47
|
-
agent: Flags.string({
|
|
48
|
-
char: "a",
|
|
49
|
-
description: "Agent identity (auto-detected if not provided)",
|
|
50
|
-
options: [...AGENTS, "custom"],
|
|
51
|
-
}),
|
|
52
|
-
"trace-id": Flags.string({
|
|
53
|
-
char: "t",
|
|
54
|
-
description: "Trace ID (inherits from AGENTS_TRACE_ID if not provided)",
|
|
55
|
-
}),
|
|
56
|
-
workspace: Flags.string({
|
|
57
|
-
char: "w",
|
|
58
|
-
description: "Slack workspace",
|
|
59
|
-
default: DEFAULT_SLACK_WORKSPACE,
|
|
60
|
-
}),
|
|
61
|
-
channel: Flags.string({
|
|
62
|
-
char: "c",
|
|
63
|
-
description: "Slack channel",
|
|
64
|
-
default: "agents",
|
|
65
|
-
}),
|
|
66
|
-
"blocker-type": Flags.string({
|
|
67
|
-
char: "b",
|
|
68
|
-
description: "Type of blocker",
|
|
69
|
-
options: ["hil", "error", "dependency", "resource"],
|
|
70
|
-
default: "hil",
|
|
71
|
-
}),
|
|
72
|
-
confidence: Flags.integer({
|
|
73
|
-
description: "Confidence score (1-10)",
|
|
74
|
-
min: 1,
|
|
75
|
-
max: 10,
|
|
76
|
-
}),
|
|
77
|
-
"no-dm": Flags.boolean({
|
|
78
|
-
description: "Suppress DM (blocked DMs by default)",
|
|
79
|
-
default: false,
|
|
80
|
-
}),
|
|
81
|
-
"dry-run": Flags.boolean({
|
|
82
|
-
description: "Preview without executing",
|
|
83
|
-
default: false,
|
|
84
|
-
}),
|
|
85
|
-
stdin: Flags.boolean({
|
|
86
|
-
description: "Read message from stdin",
|
|
87
|
-
default: false,
|
|
88
|
-
}),
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
async execute(): Promise<ReportResult> {
|
|
92
|
-
const { args, flags } = await this.parse(ReportBlockedCommand);
|
|
93
|
-
this.parsedFlags = flags;
|
|
94
|
-
|
|
95
|
-
// Resolve message from args or stdin
|
|
96
|
-
let message = args.message;
|
|
97
|
-
if (flags.stdin || !message) {
|
|
98
|
-
const stdinContent = await this.readStdin();
|
|
99
|
-
if (stdinContent) {
|
|
100
|
-
message = stdinContent;
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
// Validate that we have a message
|
|
105
|
-
if (!message) {
|
|
106
|
-
this.error("Message required: provide as argument or via --stdin", { exit: 2 });
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
// Warn if no trace ID is set
|
|
110
|
-
if (!flags["trace-id"] && !process.env.AGENTS_TRACE_ID) {
|
|
111
|
-
this.warn("No trace ID set - generating new one. Consider using AGENTS_TRACE_ID env var.");
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
const result = await reportBlocked(message, {
|
|
115
|
-
agent: flags.agent as AgentIdentity | undefined,
|
|
116
|
-
traceId: flags["trace-id"],
|
|
117
|
-
workspace: flags.workspace,
|
|
118
|
-
channel: flags.channel,
|
|
119
|
-
confidence: flags.confidence,
|
|
120
|
-
blockerType: flags["blocker-type"] as BlockerType,
|
|
121
|
-
noDm: flags["no-dm"],
|
|
122
|
-
dryRun: flags["dry-run"],
|
|
123
|
-
});
|
|
124
|
-
|
|
125
|
-
// Track blocker in PostHog
|
|
126
|
-
telemetry.setProperties({ trace_id: result.traceId });
|
|
127
|
-
telemetry.trackSession("blocked", {
|
|
128
|
-
agent: result.agent,
|
|
129
|
-
blocker_type: flags["blocker-type"],
|
|
130
|
-
confidence: flags.confidence,
|
|
131
|
-
project: detectProject(),
|
|
132
|
-
});
|
|
133
|
-
|
|
134
|
-
if (!this.jsonEnabled?.()) {
|
|
135
|
-
this.renderTextOutput(result);
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
// Exit with error if report persistence failed (critical)
|
|
139
|
-
if (!result.convex.success) {
|
|
140
|
-
this.error(`convex record failed: ${result.convex.error}`, { exit: 1 });
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
return result;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
private renderTextOutput(result: ReportResult): void {
|
|
147
|
-
if (result.success) {
|
|
148
|
-
this.log(`blocked reported: ${result.traceId}`);
|
|
149
|
-
this.log(`agent: ${result.agent}`);
|
|
150
|
-
if (!result.messages) {
|
|
151
|
-
this.logInfo("DM suppressed via --no-dm");
|
|
152
|
-
}
|
|
153
|
-
} else {
|
|
154
|
-
this.log(`failed: ${result.convex.error || result.slack.error}`);
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
// Show warnings for non-critical failures
|
|
158
|
-
if (!result.slack.success) {
|
|
159
|
-
this.warn(`slack: ${result.slack.error}`);
|
|
160
|
-
}
|
|
161
|
-
if (result.messages && !result.messages.success) {
|
|
162
|
-
this.warn(`messages: ${result.messages.error}`);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
}
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
import { Args, Flags } from "@oclif/core";
|
|
2
|
-
import { detectProject, telemetry } from "../../../lib/analytics.js";
|
|
3
|
-
import { type AgentIdentity, type ReportResult, reportComplete } from "../../../lib/report.js";
|
|
4
|
-
import { getDefaultSlackWorkspace } from "../../../lib/slack-workspace.js";
|
|
5
|
-
import { AGENTS } from "../../../lib/types.js";
|
|
6
|
-
import { BaseCommand } from "../../base-command.js";
|
|
7
|
-
|
|
8
|
-
const DEFAULT_SLACK_WORKSPACE = getDefaultSlackWorkspace();
|
|
9
|
-
|
|
10
|
-
export default class ReportCompleteCommand extends BaseCommand {
|
|
11
|
-
static override summary = "Report task completion";
|
|
12
|
-
static override description = `Finalizes a trace with completion status.
|
|
13
|
-
|
|
14
|
-
Inherits trace ID from AGENTS_TRACE_ID environment variable, or uses --trace-id flag.
|
|
15
|
-
If neither is set, generates a new trace ID (with warning).
|
|
16
|
-
|
|
17
|
-
Error handling:
|
|
18
|
-
- convex reports: CRITICAL (fails hard if persistence fails)
|
|
19
|
-
- slack: WARN (continues if slack fails)
|
|
20
|
-
- messages: WARN (continues if DM fails)`;
|
|
21
|
-
|
|
22
|
-
static override examples = [
|
|
23
|
-
'$ abbie report complete "feature implemented"',
|
|
24
|
-
'$ abbie report complete "ARBOR-123 done" --confidence 9',
|
|
25
|
-
'$ abbie report complete "tests passing" --dm',
|
|
26
|
-
'$ abbie report complete "shipped" --artifacts "src/feature.ts,src/feature.test.ts"',
|
|
27
|
-
'$ echo "all tests passing, feature ready" | abbie report complete --stdin',
|
|
28
|
-
"$ verify --format=summary | abbie report complete --stdin --confidence 9",
|
|
29
|
-
];
|
|
30
|
-
|
|
31
|
-
static override args = {
|
|
32
|
-
message: Args.string({
|
|
33
|
-
description: "Completion summary (can also be provided via stdin)",
|
|
34
|
-
required: false,
|
|
35
|
-
}),
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
static override flags = {
|
|
39
|
-
...BaseCommand.baseFlags,
|
|
40
|
-
agent: Flags.string({
|
|
41
|
-
char: "a",
|
|
42
|
-
description: "Agent identity (auto-detected if not provided)",
|
|
43
|
-
options: [...AGENTS, "custom"],
|
|
44
|
-
}),
|
|
45
|
-
"trace-id": Flags.string({
|
|
46
|
-
char: "t",
|
|
47
|
-
description: "Trace ID (inherits from AGENTS_TRACE_ID if not provided)",
|
|
48
|
-
}),
|
|
49
|
-
workspace: Flags.string({
|
|
50
|
-
char: "w",
|
|
51
|
-
description: "Slack workspace",
|
|
52
|
-
default: DEFAULT_SLACK_WORKSPACE,
|
|
53
|
-
}),
|
|
54
|
-
channel: Flags.string({
|
|
55
|
-
char: "c",
|
|
56
|
-
description: "Slack channel",
|
|
57
|
-
default: "agents",
|
|
58
|
-
}),
|
|
59
|
-
confidence: Flags.integer({
|
|
60
|
-
description: "Confidence score (1-10)",
|
|
61
|
-
min: 1,
|
|
62
|
-
max: 10,
|
|
63
|
-
}),
|
|
64
|
-
dm: Flags.boolean({
|
|
65
|
-
description: "Also send DM to luke",
|
|
66
|
-
default: false,
|
|
67
|
-
}),
|
|
68
|
-
"no-dm": Flags.boolean({
|
|
69
|
-
description: "Suppress DM (overrides --dm)",
|
|
70
|
-
default: false,
|
|
71
|
-
}),
|
|
72
|
-
artifacts: Flags.string({
|
|
73
|
-
description: "Comma-separated list of artifact paths",
|
|
74
|
-
}),
|
|
75
|
-
"dry-run": Flags.boolean({
|
|
76
|
-
description: "Preview without executing",
|
|
77
|
-
default: false,
|
|
78
|
-
}),
|
|
79
|
-
stdin: Flags.boolean({
|
|
80
|
-
description: "Read message from stdin",
|
|
81
|
-
default: false,
|
|
82
|
-
}),
|
|
83
|
-
gist: Flags.boolean({
|
|
84
|
-
char: "g",
|
|
85
|
-
description: "Create GitHub gist from completion event (for orchestration handoffs)",
|
|
86
|
-
default: false,
|
|
87
|
-
}),
|
|
88
|
-
"gist-description": Flags.string({
|
|
89
|
-
description: "Gist description (defaults to message)",
|
|
90
|
-
dependsOn: ["gist"],
|
|
91
|
-
}),
|
|
92
|
-
"gist-public": Flags.boolean({
|
|
93
|
-
description: "Make gist public (default: secret)",
|
|
94
|
-
default: false,
|
|
95
|
-
dependsOn: ["gist"],
|
|
96
|
-
}),
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
async execute(): Promise<ReportResult> {
|
|
100
|
-
const { args, flags } = await this.parse(ReportCompleteCommand);
|
|
101
|
-
this.parsedFlags = flags;
|
|
102
|
-
|
|
103
|
-
// Resolve message from args or stdin
|
|
104
|
-
let message = args.message;
|
|
105
|
-
if (flags.stdin || !message) {
|
|
106
|
-
const stdinContent = await this.readStdin();
|
|
107
|
-
if (stdinContent) {
|
|
108
|
-
message = stdinContent;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
// Validate that we have a message
|
|
113
|
-
if (!message) {
|
|
114
|
-
this.error("Message required: provide as argument or via --stdin", { exit: 2 });
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
// Warn if no trace ID is set
|
|
118
|
-
if (!flags["trace-id"] && !process.env.AGENTS_TRACE_ID) {
|
|
119
|
-
this.warn("No trace ID set - generating new one. Consider using AGENTS_TRACE_ID env var.");
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
const artifacts = flags.artifacts?.split(",").map((s) => s.trim());
|
|
123
|
-
|
|
124
|
-
const result = await reportComplete(message, {
|
|
125
|
-
agent: flags.agent as AgentIdentity | undefined,
|
|
126
|
-
traceId: flags["trace-id"],
|
|
127
|
-
workspace: flags.workspace,
|
|
128
|
-
channel: flags.channel,
|
|
129
|
-
confidence: flags.confidence,
|
|
130
|
-
dm: flags.dm,
|
|
131
|
-
noDm: flags["no-dm"],
|
|
132
|
-
artifacts,
|
|
133
|
-
dryRun: flags["dry-run"],
|
|
134
|
-
gist: flags.gist,
|
|
135
|
-
gistDescription: flags["gist-description"],
|
|
136
|
-
gistPublic: flags["gist-public"],
|
|
137
|
-
});
|
|
138
|
-
|
|
139
|
-
// Track session completion in PostHog
|
|
140
|
-
telemetry.setProperties({ trace_id: result.traceId });
|
|
141
|
-
telemetry.trackSession("completed", {
|
|
142
|
-
agent: result.agent,
|
|
143
|
-
confidence: flags.confidence,
|
|
144
|
-
project: detectProject(),
|
|
145
|
-
duration_ms: result.durationMs,
|
|
146
|
-
});
|
|
147
|
-
|
|
148
|
-
if (!this.jsonEnabled?.()) {
|
|
149
|
-
this.renderTextOutput(result);
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
// Exit with error if report persistence failed (critical)
|
|
153
|
-
if (!result.convex.success) {
|
|
154
|
-
this.error(`convex record failed: ${result.convex.error}`, { exit: 1 });
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
return result;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
private renderTextOutput(result: ReportResult): void {
|
|
161
|
-
if (result.success) {
|
|
162
|
-
this.log(`completed: ${result.traceId}`);
|
|
163
|
-
this.log(`agent: ${result.agent}`);
|
|
164
|
-
if (result.gistUrl) {
|
|
165
|
-
this.log(`gist: ${result.gistUrl}`);
|
|
166
|
-
}
|
|
167
|
-
} else {
|
|
168
|
-
this.log(`failed: ${result.convex.error || result.slack.error}`);
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
// Show warnings for non-critical failures
|
|
172
|
-
if (!result.slack.success) {
|
|
173
|
-
this.warn(`slack: ${result.slack.error}`);
|
|
174
|
-
}
|
|
175
|
-
if (result.messages && !result.messages.success) {
|
|
176
|
-
this.warn(`messages: ${result.messages.error}`);
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
}
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import { Args, Flags } from "@oclif/core";
|
|
2
|
-
import { type AgentIdentity, type ReportResult, reportProgress } from "../../../lib/report.js";
|
|
3
|
-
import { getDefaultSlackWorkspace } from "../../../lib/slack-workspace.js";
|
|
4
|
-
import { AGENTS } from "../../../lib/types.js";
|
|
5
|
-
import { BaseCommand } from "../../base-command.js";
|
|
6
|
-
|
|
7
|
-
const DEFAULT_SLACK_WORKSPACE = getDefaultSlackWorkspace();
|
|
8
|
-
|
|
9
|
-
export default class ReportProgressCommand extends BaseCommand {
|
|
10
|
-
static override summary = "Report progress on current task";
|
|
11
|
-
static override description = `Updates progress on an existing trace.
|
|
12
|
-
|
|
13
|
-
Inherits trace ID from AGENTS_TRACE_ID environment variable, or uses --trace-id flag.
|
|
14
|
-
If neither is set, generates a new trace ID (with warning).
|
|
15
|
-
|
|
16
|
-
Error handling:
|
|
17
|
-
- convex reports: CRITICAL (fails hard if persistence fails)
|
|
18
|
-
- slack: WARN (continues if slack fails)
|
|
19
|
-
- messages: WARN (continues if DM fails)`;
|
|
20
|
-
|
|
21
|
-
static override examples = [
|
|
22
|
-
'$ abbie report progress "phase 2/3 complete"',
|
|
23
|
-
'$ abbie report progress "implementing tests" --confidence 7',
|
|
24
|
-
'$ abbie report progress "50% done" --trace-id tr_abc123',
|
|
25
|
-
'$ AGENTS_TRACE_ID=tr_abc123 abbie report progress "checkpoint"',
|
|
26
|
-
'$ echo "tests passing, moving to implementation" | abbie report progress --stdin',
|
|
27
|
-
"$ verify --format=summary | abbie report progress --stdin --confidence 8",
|
|
28
|
-
];
|
|
29
|
-
|
|
30
|
-
static override args = {
|
|
31
|
-
message: Args.string({
|
|
32
|
-
description: "Progress update message (can also be provided via stdin)",
|
|
33
|
-
required: false,
|
|
34
|
-
}),
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
static override flags = {
|
|
38
|
-
...BaseCommand.baseFlags,
|
|
39
|
-
agent: Flags.string({
|
|
40
|
-
char: "a",
|
|
41
|
-
description: "Agent identity (auto-detected if not provided)",
|
|
42
|
-
options: [...AGENTS, "custom"],
|
|
43
|
-
}),
|
|
44
|
-
"trace-id": Flags.string({
|
|
45
|
-
char: "t",
|
|
46
|
-
description: "Trace ID (inherits from AGENTS_TRACE_ID if not provided)",
|
|
47
|
-
}),
|
|
48
|
-
workspace: Flags.string({
|
|
49
|
-
char: "w",
|
|
50
|
-
description: "Slack workspace",
|
|
51
|
-
default: DEFAULT_SLACK_WORKSPACE,
|
|
52
|
-
}),
|
|
53
|
-
channel: Flags.string({
|
|
54
|
-
char: "c",
|
|
55
|
-
description: "Slack channel",
|
|
56
|
-
default: "agents",
|
|
57
|
-
}),
|
|
58
|
-
confidence: Flags.integer({
|
|
59
|
-
description: "Confidence score (1-10)",
|
|
60
|
-
min: 1,
|
|
61
|
-
max: 10,
|
|
62
|
-
}),
|
|
63
|
-
dm: Flags.boolean({
|
|
64
|
-
description: "Also send DM to luke",
|
|
65
|
-
default: false,
|
|
66
|
-
}),
|
|
67
|
-
"no-dm": Flags.boolean({
|
|
68
|
-
description: "Suppress DM (overrides --dm)",
|
|
69
|
-
default: false,
|
|
70
|
-
}),
|
|
71
|
-
"dry-run": Flags.boolean({
|
|
72
|
-
description: "Preview without executing",
|
|
73
|
-
default: false,
|
|
74
|
-
}),
|
|
75
|
-
stdin: Flags.boolean({
|
|
76
|
-
description: "Read message from stdin",
|
|
77
|
-
default: false,
|
|
78
|
-
}),
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
async execute(): Promise<ReportResult> {
|
|
82
|
-
const { args, flags } = await this.parse(ReportProgressCommand);
|
|
83
|
-
this.parsedFlags = flags;
|
|
84
|
-
|
|
85
|
-
// Resolve message from args or stdin
|
|
86
|
-
let message = args.message;
|
|
87
|
-
if (flags.stdin || !message) {
|
|
88
|
-
const stdinContent = await this.readStdin();
|
|
89
|
-
if (stdinContent) {
|
|
90
|
-
message = stdinContent;
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
// Validate that we have a message
|
|
95
|
-
if (!message) {
|
|
96
|
-
this.error("Message required: provide as argument or via --stdin", { exit: 2 });
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
// Warn if no trace ID is set
|
|
100
|
-
if (!flags["trace-id"] && !process.env.AGENTS_TRACE_ID) {
|
|
101
|
-
this.warn("No trace ID set - generating new one. Consider using AGENTS_TRACE_ID env var.");
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
const result = await reportProgress(message, {
|
|
105
|
-
agent: flags.agent as AgentIdentity | undefined,
|
|
106
|
-
traceId: flags["trace-id"],
|
|
107
|
-
workspace: flags.workspace,
|
|
108
|
-
channel: flags.channel,
|
|
109
|
-
confidence: flags.confidence,
|
|
110
|
-
dm: flags.dm,
|
|
111
|
-
noDm: flags["no-dm"],
|
|
112
|
-
dryRun: flags["dry-run"],
|
|
113
|
-
});
|
|
114
|
-
|
|
115
|
-
if (!this.jsonEnabled?.()) {
|
|
116
|
-
this.renderTextOutput(result);
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
// Exit with error if report persistence failed (critical)
|
|
120
|
-
if (!result.convex.success) {
|
|
121
|
-
this.error(`convex record failed: ${result.convex.error}`, { exit: 1 });
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
return result;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
private renderTextOutput(result: ReportResult): void {
|
|
128
|
-
if (result.success) {
|
|
129
|
-
this.log(`progress recorded: ${result.traceId}`);
|
|
130
|
-
} else {
|
|
131
|
-
this.log(`failed: ${result.convex.error || result.slack.error}`);
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
// Show warnings for non-critical failures
|
|
135
|
-
if (!result.slack.success) {
|
|
136
|
-
this.warn(`slack: ${result.slack.error}`);
|
|
137
|
-
}
|
|
138
|
-
if (result.messages && !result.messages.success) {
|
|
139
|
-
this.warn(`messages: ${result.messages.error}`);
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
}
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
import { Args, Flags } from "@oclif/core";
|
|
2
|
-
import { detectProject, hashForTelemetry, telemetry } from "../../../lib/analytics.js";
|
|
3
|
-
import { type AgentIdentity, type ReportResult, reportStart } from "../../../lib/report.js";
|
|
4
|
-
import { getDefaultSlackWorkspace } from "../../../lib/slack-workspace.js";
|
|
5
|
-
import { AGENTS } from "../../../lib/types.js";
|
|
6
|
-
import { BaseCommand } from "../../base-command.js";
|
|
7
|
-
|
|
8
|
-
const DEFAULT_SLACK_WORKSPACE = getDefaultSlackWorkspace();
|
|
9
|
-
|
|
10
|
-
export default class ReportStartCommand extends BaseCommand {
|
|
11
|
-
static override summary = "Report start of a new task/trace";
|
|
12
|
-
static override description = `Begins a new trace and persists to Convex reports + Slack.
|
|
13
|
-
|
|
14
|
-
Always generates a new trace ID. Exports AGENTS_TRACE_ID for subsequent commands.
|
|
15
|
-
|
|
16
|
-
Error handling:
|
|
17
|
-
- convex reports: CRITICAL (fails hard if persistence fails)
|
|
18
|
-
- slack: WARN (continues if slack fails)
|
|
19
|
-
- messages: WARN (continues if DM fails)`;
|
|
20
|
-
|
|
21
|
-
static override examples = [
|
|
22
|
-
'$ abbie report start "beginning loop on arbor"',
|
|
23
|
-
'$ abbie report start "implementing ARBOR-123" --confidence 8',
|
|
24
|
-
'$ abbie report start "overnight work" --dm',
|
|
25
|
-
'$ abbie report start "test run" --dry-run',
|
|
26
|
-
'$ export AGENTS_TRACE_ID=$(abbie report start "task" --json -q | jq -r .traceId)',
|
|
27
|
-
'$ echo "starting feature work" | abbie report start --stdin',
|
|
28
|
-
"$ verify --json | jq -r .summary | abbie report start --stdin",
|
|
29
|
-
];
|
|
30
|
-
|
|
31
|
-
static override args = {
|
|
32
|
-
message: Args.string({
|
|
33
|
-
description: "Task description (can also be provided via stdin)",
|
|
34
|
-
required: false,
|
|
35
|
-
}),
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
static override flags = {
|
|
39
|
-
...BaseCommand.baseFlags,
|
|
40
|
-
agent: Flags.string({
|
|
41
|
-
char: "a",
|
|
42
|
-
description: "Agent identity (auto-detected if not provided)",
|
|
43
|
-
options: [...AGENTS, "custom"],
|
|
44
|
-
}),
|
|
45
|
-
workspace: Flags.string({
|
|
46
|
-
char: "w",
|
|
47
|
-
description: "Slack workspace",
|
|
48
|
-
default: DEFAULT_SLACK_WORKSPACE,
|
|
49
|
-
}),
|
|
50
|
-
channel: Flags.string({
|
|
51
|
-
char: "c",
|
|
52
|
-
description: "Slack channel",
|
|
53
|
-
default: "agents",
|
|
54
|
-
}),
|
|
55
|
-
confidence: Flags.integer({
|
|
56
|
-
description: "Confidence score (1-10)",
|
|
57
|
-
min: 1,
|
|
58
|
-
max: 10,
|
|
59
|
-
}),
|
|
60
|
-
dm: Flags.boolean({
|
|
61
|
-
description: "Also send DM to luke",
|
|
62
|
-
default: false,
|
|
63
|
-
}),
|
|
64
|
-
"dry-run": Flags.boolean({
|
|
65
|
-
description: "Preview without executing",
|
|
66
|
-
default: false,
|
|
67
|
-
}),
|
|
68
|
-
stdin: Flags.boolean({
|
|
69
|
-
description: "Read message from stdin",
|
|
70
|
-
default: false,
|
|
71
|
-
}),
|
|
72
|
-
};
|
|
73
|
-
|
|
74
|
-
async execute(): Promise<ReportResult> {
|
|
75
|
-
const { args, flags } = await this.parse(ReportStartCommand);
|
|
76
|
-
this.parsedFlags = flags;
|
|
77
|
-
|
|
78
|
-
// Resolve message from args or stdin
|
|
79
|
-
let message = args.message;
|
|
80
|
-
if (flags.stdin || !message) {
|
|
81
|
-
const stdinContent = await this.readStdin();
|
|
82
|
-
if (stdinContent) {
|
|
83
|
-
message = stdinContent;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
// Validate that we have a message
|
|
88
|
-
if (!message) {
|
|
89
|
-
this.error("Message required: provide as argument or via --stdin", { exit: 2 });
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
const result = await reportStart(message, {
|
|
93
|
-
agent: flags.agent as AgentIdentity | undefined,
|
|
94
|
-
workspace: flags.workspace,
|
|
95
|
-
channel: flags.channel,
|
|
96
|
-
confidence: flags.confidence,
|
|
97
|
-
dm: flags.dm,
|
|
98
|
-
dryRun: flags["dry-run"],
|
|
99
|
-
});
|
|
100
|
-
|
|
101
|
-
// Ensure emitted events correlate to the newly-created trace.
|
|
102
|
-
telemetry.setProperties({ trace_id: result.traceId });
|
|
103
|
-
telemetry.trackSession("started", {
|
|
104
|
-
agent: result.agent,
|
|
105
|
-
confidence: flags.confidence,
|
|
106
|
-
project: detectProject(),
|
|
107
|
-
goal_hash: hashForTelemetry(message),
|
|
108
|
-
});
|
|
109
|
-
|
|
110
|
-
if (!this.jsonEnabled?.()) {
|
|
111
|
-
this.renderTextOutput(result);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
// Exit with error if report persistence failed (critical)
|
|
115
|
-
if (!result.convex.success) {
|
|
116
|
-
this.error(`convex record failed: ${result.convex.error}`, { exit: 1 });
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
return result;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
private renderTextOutput(result: ReportResult): void {
|
|
123
|
-
if (result.success) {
|
|
124
|
-
this.log(`started trace: ${result.traceId}`);
|
|
125
|
-
this.log(`agent: ${result.agent}`);
|
|
126
|
-
this.logInfo("export AGENTS_TRACE_ID for subsequent commands:");
|
|
127
|
-
this.log(`export AGENTS_TRACE_ID="${result.traceId}"`);
|
|
128
|
-
} else {
|
|
129
|
-
this.log(`failed: ${result.convex.error || result.slack.error}`);
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
// Show warnings for non-critical failures
|
|
133
|
-
if (!result.slack.success) {
|
|
134
|
-
this.warn(`slack: ${result.slack.error}`);
|
|
135
|
-
}
|
|
136
|
-
if (result.messages && !result.messages.success) {
|
|
137
|
-
this.warn(`messages: ${result.messages.error}`);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
}
|