@proletariat/cli 0.3.94 → 0.3.96
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/commands/agent/cleanup.d.ts +3 -4
- package/dist/commands/agent/cleanup.js +5 -4
- package/dist/commands/agent/cleanup.js.map +1 -1
- package/dist/commands/agent/gc.d.ts +3 -4
- package/dist/commands/agent/gc.js +5 -4
- package/dist/commands/agent/gc.js.map +1 -1
- package/dist/commands/agent/index.d.ts +3 -4
- package/dist/commands/agent/index.js +5 -4
- package/dist/commands/agent/index.js.map +1 -1
- package/dist/commands/agent/list.d.ts +3 -4
- package/dist/commands/agent/list.js +5 -4
- package/dist/commands/agent/list.js.map +1 -1
- package/dist/commands/agent/remove.d.ts +3 -4
- package/dist/commands/agent/remove.js +5 -4
- package/dist/commands/agent/remove.js.map +1 -1
- package/dist/commands/agent/staff/index.d.ts +3 -4
- package/dist/commands/agent/staff/index.js +5 -4
- package/dist/commands/agent/staff/index.js.map +1 -1
- package/dist/commands/agent/staff/remove.d.ts +3 -4
- package/dist/commands/agent/staff/remove.js +5 -4
- package/dist/commands/agent/staff/remove.js.map +1 -1
- package/dist/commands/agent/status.d.ts +3 -4
- package/dist/commands/agent/status.js +5 -4
- package/dist/commands/agent/status.js.map +1 -1
- package/dist/commands/agent/visit.d.ts +3 -4
- package/dist/commands/agent/visit.js +5 -4
- package/dist/commands/agent/visit.js.map +1 -1
- package/dist/commands/branch/create.js +1 -12
- package/dist/commands/branch/create.js.map +1 -1
- package/dist/commands/branch/list.d.ts +3 -4
- package/dist/commands/branch/list.js +5 -4
- package/dist/commands/branch/list.js.map +1 -1
- package/dist/commands/branch/validate.d.ts +3 -4
- package/dist/commands/branch/validate.js +6 -5
- package/dist/commands/branch/validate.js.map +1 -1
- package/dist/commands/branch/where.d.ts +3 -4
- package/dist/commands/branch/where.js +5 -4
- package/dist/commands/branch/where.js.map +1 -1
- package/dist/commands/commit.js +1 -1
- package/dist/commands/commit.js.map +1 -1
- package/dist/commands/config/index.js +1 -1
- package/dist/commands/config/index.js.map +1 -1
- package/dist/commands/db/backup.d.ts +16 -0
- package/dist/commands/db/backup.js +125 -0
- package/dist/commands/db/backup.js.map +1 -0
- package/dist/commands/db/repair.js +167 -45
- package/dist/commands/db/repair.js.map +1 -1
- package/dist/commands/execution/config.d.ts +3 -4
- package/dist/commands/execution/config.js +5 -4
- package/dist/commands/execution/config.js.map +1 -1
- package/dist/commands/execution/index.d.ts +3 -4
- package/dist/commands/execution/index.js +5 -4
- package/dist/commands/execution/index.js.map +1 -1
- package/dist/commands/execution/list.d.ts +3 -4
- package/dist/commands/execution/list.js +5 -4
- package/dist/commands/execution/list.js.map +1 -1
- package/dist/commands/execution/logs.d.ts +3 -4
- package/dist/commands/execution/logs.js +5 -4
- package/dist/commands/execution/logs.js.map +1 -1
- package/dist/commands/execution/stop.d.ts +3 -4
- package/dist/commands/execution/stop.js +5 -4
- package/dist/commands/execution/stop.js.map +1 -1
- package/dist/commands/execution/view.d.ts +3 -4
- package/dist/commands/execution/view.js +5 -4
- package/dist/commands/execution/view.js.map +1 -1
- package/dist/commands/gc.d.ts +13 -0
- package/dist/commands/gc.js +178 -0
- package/dist/commands/gc.js.map +1 -0
- package/dist/commands/hook/export.d.ts +3 -4
- package/dist/commands/hook/export.js +5 -4
- package/dist/commands/hook/export.js.map +1 -1
- package/dist/commands/hook/fire.d.ts +3 -4
- package/dist/commands/hook/fire.js +5 -4
- package/dist/commands/hook/fire.js.map +1 -1
- package/dist/commands/hook/list.d.ts +3 -4
- package/dist/commands/hook/list.js +5 -4
- package/dist/commands/hook/list.js.map +1 -1
- package/dist/commands/hook/preset.d.ts +3 -4
- package/dist/commands/hook/preset.js +5 -4
- package/dist/commands/hook/preset.js.map +1 -1
- package/dist/commands/orchestrate/index.d.ts +3 -4
- package/dist/commands/orchestrate/index.js +5 -4
- package/dist/commands/orchestrate/index.js.map +1 -1
- package/dist/commands/orchestrator/index.d.ts +3 -4
- package/dist/commands/orchestrator/index.js +5 -4
- package/dist/commands/orchestrator/index.js.map +1 -1
- package/dist/commands/pr/checks.d.ts +3 -4
- package/dist/commands/pr/checks.js +5 -4
- package/dist/commands/pr/checks.js.map +1 -1
- package/dist/commands/pr/merge.js +1 -1
- package/dist/commands/pr/merge.js.map +1 -1
- package/dist/commands/repo/add.d.ts +3 -4
- package/dist/commands/repo/add.js +5 -4
- package/dist/commands/repo/add.js.map +1 -1
- package/dist/commands/repo/create.d.ts +3 -4
- package/dist/commands/repo/create.js +5 -4
- package/dist/commands/repo/create.js.map +1 -1
- package/dist/commands/repo/fix-remotes.d.ts +3 -4
- package/dist/commands/repo/fix-remotes.js +5 -4
- package/dist/commands/repo/fix-remotes.js.map +1 -1
- package/dist/commands/repo/index.d.ts +3 -4
- package/dist/commands/repo/index.js +5 -4
- package/dist/commands/repo/index.js.map +1 -1
- package/dist/commands/repo/list.d.ts +3 -4
- package/dist/commands/repo/list.js +5 -4
- package/dist/commands/repo/list.js.map +1 -1
- package/dist/commands/session/attach.d.ts +3 -3
- package/dist/commands/session/attach.js +37 -79
- package/dist/commands/session/attach.js.map +1 -1
- package/dist/commands/session/cleanup.d.ts +3 -4
- package/dist/commands/session/cleanup.js +5 -4
- package/dist/commands/session/cleanup.js.map +1 -1
- package/dist/commands/session/create.d.ts +3 -4
- package/dist/commands/session/create.js +5 -4
- package/dist/commands/session/create.js.map +1 -1
- package/dist/commands/session/exec.d.ts +3 -4
- package/dist/commands/session/exec.js +6 -5
- package/dist/commands/session/exec.js.map +1 -1
- package/dist/commands/session/health.js +19 -1
- package/dist/commands/session/health.js.map +1 -1
- package/dist/commands/session/index.d.ts +3 -4
- package/dist/commands/session/index.js +9 -4
- package/dist/commands/session/index.js.map +1 -1
- package/dist/commands/session/inspect.d.ts +3 -4
- package/dist/commands/session/inspect.js +6 -5
- package/dist/commands/session/inspect.js.map +1 -1
- package/dist/commands/session/list.d.ts +4 -4
- package/dist/commands/session/list.js +129 -82
- package/dist/commands/session/list.js.map +1 -1
- package/dist/commands/session/peek.js +1 -1
- package/dist/commands/session/peek.js.map +1 -1
- package/dist/commands/session/poke.js +1 -1
- package/dist/commands/session/poke.js.map +1 -1
- package/dist/commands/session/prune.d.ts +3 -4
- package/dist/commands/session/prune.js +55 -15
- package/dist/commands/session/prune.js.map +1 -1
- package/dist/commands/session/report.d.ts +25 -5
- package/dist/commands/session/report.js +201 -5
- package/dist/commands/session/report.js.map +1 -1
- package/dist/commands/session/restart.d.ts +3 -4
- package/dist/commands/session/restart.js +6 -5
- package/dist/commands/session/restart.js.map +1 -1
- package/dist/commands/session/watch.d.ts +17 -0
- package/dist/commands/session/watch.js +139 -0
- package/dist/commands/session/watch.js.map +1 -0
- package/dist/commands/{action → sync}/index.d.ts +2 -6
- package/dist/commands/sync/index.js +68 -0
- package/dist/commands/sync/index.js.map +1 -0
- package/dist/commands/sync/pause.d.ts +10 -0
- package/dist/commands/sync/pause.js +35 -0
- package/dist/commands/sync/pause.js.map +1 -0
- package/dist/commands/sync/queue.d.ts +10 -0
- package/dist/commands/sync/queue.js +106 -0
- package/dist/commands/sync/queue.js.map +1 -0
- package/dist/commands/sync/resume.d.ts +10 -0
- package/dist/commands/sync/resume.js +34 -0
- package/dist/commands/sync/resume.js.map +1 -0
- package/dist/commands/sync/start.d.ts +11 -0
- package/dist/commands/sync/start.js +73 -0
- package/dist/commands/sync/start.js.map +1 -0
- package/dist/commands/sync/status.d.ts +10 -0
- package/dist/commands/sync/status.js +40 -0
- package/dist/commands/sync/status.js.map +1 -0
- package/dist/commands/sync/stop.d.ts +10 -0
- package/dist/commands/sync/stop.js +39 -0
- package/dist/commands/sync/stop.js.map +1 -0
- package/dist/commands/ticket/create.js +1 -1
- package/dist/commands/ticket/create.js.map +1 -1
- package/dist/commands/ticket/edit.js +1 -1
- package/dist/commands/ticket/edit.js.map +1 -1
- package/dist/commands/ticket/index.d.ts +3 -4
- package/dist/commands/ticket/index.js +5 -4
- package/dist/commands/ticket/index.js.map +1 -1
- package/dist/commands/ticket/list.js +1 -1
- package/dist/commands/ticket/list.js.map +1 -1
- package/dist/commands/ticket/update.js +1 -1
- package/dist/commands/ticket/update.js.map +1 -1
- package/dist/commands/web.d.ts +20 -0
- package/dist/commands/web.js +82 -0
- package/dist/commands/web.js.map +1 -0
- package/dist/commands/work/complete.js +1 -1
- package/dist/commands/work/complete.js.map +1 -1
- package/dist/commands/work/hooks/add.d.ts +3 -4
- package/dist/commands/work/hooks/add.js +5 -4
- package/dist/commands/work/hooks/add.js.map +1 -1
- package/dist/commands/work/hooks/list.d.ts +3 -4
- package/dist/commands/work/hooks/list.js +5 -4
- package/dist/commands/work/hooks/list.js.map +1 -1
- package/dist/commands/work/hooks/toggle.d.ts +3 -4
- package/dist/commands/work/hooks/toggle.js +5 -4
- package/dist/commands/work/hooks/toggle.js.map +1 -1
- package/dist/commands/work/peek.d.ts +3 -4
- package/dist/commands/work/peek.js +5 -4
- package/dist/commands/work/peek.js.map +1 -1
- package/dist/commands/work/propose.d.ts +23 -0
- package/dist/commands/work/propose.js +57 -0
- package/dist/commands/work/propose.js.map +1 -0
- package/dist/commands/work/ready.js +3 -3
- package/dist/commands/work/ready.js.map +1 -1
- package/dist/commands/work/rebase.d.ts +1 -1
- package/dist/commands/work/rebase.js +52 -49
- package/dist/commands/work/rebase.js.map +1 -1
- package/dist/commands/work/resolve.js +1 -1
- package/dist/commands/work/resolve.js.map +1 -1
- package/dist/commands/work/ship.d.ts +6 -0
- package/dist/commands/work/ship.js +218 -49
- package/dist/commands/work/ship.js.map +1 -1
- package/dist/commands/work/start.js +16 -90
- package/dist/commands/work/start.js.map +1 -1
- package/dist/commands/work/stop.d.ts +3 -4
- package/dist/commands/work/stop.js +5 -4
- package/dist/commands/work/stop.js.map +1 -1
- package/dist/hooks/init.js +11 -1
- package/dist/hooks/init.js.map +1 -1
- package/dist/lib/branch/index.d.ts +6 -5
- package/dist/lib/branch/index.js +8 -13
- package/dist/lib/branch/index.js.map +1 -1
- package/dist/lib/dashboard/data.js +1 -1
- package/dist/lib/dashboard/data.js.map +1 -1
- package/dist/lib/dashboard/html.d.ts +2 -1
- package/dist/lib/dashboard/html.js +150 -522
- package/dist/lib/dashboard/html.js.map +1 -1
- package/dist/lib/database/db-safety.d.ts +70 -9
- package/dist/lib/database/db-safety.js +395 -43
- package/dist/lib/database/db-safety.js.map +1 -1
- package/dist/lib/database/index.d.ts +1 -1
- package/dist/lib/database/index.js +1 -1
- package/dist/lib/database/index.js.map +1 -1
- package/dist/lib/database/migrations/0017_drop_agent_work_fk.d.ts +13 -0
- package/dist/lib/database/migrations/0017_drop_agent_work_fk.js +85 -0
- package/dist/lib/database/migrations/0017_drop_agent_work_fk.js.map +1 -0
- package/dist/lib/database/migrations/0018_create_ticket_refs.d.ts +11 -0
- package/dist/lib/database/migrations/0018_create_ticket_refs.js +40 -0
- package/dist/lib/database/migrations/0018_create_ticket_refs.js.map +1 -0
- package/dist/lib/database/migrations/index.js +4 -0
- package/dist/lib/database/migrations/index.js.map +1 -1
- package/dist/lib/database/workspace.js +3 -1
- package/dist/lib/database/workspace.js.map +1 -1
- package/dist/lib/execution/devcontainer.js +1 -1
- package/dist/lib/execution/devcontainer.js.map +1 -1
- package/dist/lib/execution/runners/docker-management.d.ts +9 -0
- package/dist/lib/execution/runners/docker-management.js +14 -3
- package/dist/lib/execution/runners/docker-management.js.map +1 -1
- package/dist/lib/execution/runners/docker.js +8 -0
- package/dist/lib/execution/runners/docker.js.map +1 -1
- package/dist/lib/execution/runners/prompt-builder.js +24 -9
- package/dist/lib/execution/runners/prompt-builder.js.map +1 -1
- package/dist/lib/execution/runners/shared.d.ts +1 -1
- package/dist/lib/execution/runners/shared.js +1 -1
- package/dist/lib/execution/runners/shared.js.map +1 -1
- package/dist/lib/execution/session-utils.d.ts +16 -0
- package/dist/lib/execution/session-utils.js +42 -0
- package/dist/lib/execution/session-utils.js.map +1 -1
- package/dist/lib/execution/spawner.js +4 -5
- package/dist/lib/execution/spawner.js.map +1 -1
- package/dist/lib/execution/storage.d.ts +29 -1
- package/dist/lib/execution/storage.js +79 -1
- package/dist/lib/execution/storage.js.map +1 -1
- package/dist/lib/execution/types.d.ts +17 -6
- package/dist/lib/execution/types.js +10 -7
- package/dist/lib/execution/types.js.map +1 -1
- package/dist/lib/external-issues/utils.d.ts +25 -0
- package/dist/lib/external-issues/utils.js +32 -0
- package/dist/lib/external-issues/utils.js.map +1 -0
- package/dist/lib/gc/index.d.ts +126 -0
- package/dist/lib/gc/index.js +410 -0
- package/dist/lib/gc/index.js.map +1 -0
- package/dist/lib/machine-config.d.ts +8 -0
- package/dist/lib/machine-config.js +37 -0
- package/dist/lib/machine-config.js.map +1 -1
- package/dist/lib/mcp/tools/action.js +1 -1
- package/dist/lib/mcp/tools/action.js.map +1 -1
- package/dist/lib/mcp/tools/ticket.js +1 -1
- package/dist/lib/mcp/tools/ticket.js.map +1 -1
- package/dist/lib/orchestrate/actions.js +30 -0
- package/dist/lib/orchestrate/actions.js.map +1 -1
- package/dist/lib/orchestrate/poller.d.ts +1 -1
- package/dist/lib/orchestrate/poller.js +4 -4
- package/dist/lib/orchestrate/poller.js.map +1 -1
- package/dist/lib/orchestrate/presets.js +2 -1
- package/dist/lib/orchestrate/presets.js.map +1 -1
- package/dist/lib/orchestrate/types.d.ts +1 -1
- package/dist/lib/orchestrate/types.js +1 -0
- package/dist/lib/orchestrate/types.js.map +1 -1
- package/dist/lib/pmo/index.js +1 -1
- package/dist/lib/pmo/index.js.map +1 -1
- package/dist/lib/pmo/markdown.js +1 -1
- package/dist/lib/pmo/markdown.js.map +1 -1
- package/dist/lib/pmo/schema.d.ts +3 -1
- package/dist/lib/pmo/schema.js +26 -2
- package/dist/lib/pmo/schema.js.map +1 -1
- package/dist/lib/pmo/storage/actions.js +1 -1
- package/dist/lib/pmo/storage/actions.js.map +1 -1
- package/dist/lib/pmo/storage/base.js +42 -18
- package/dist/lib/pmo/storage/base.js.map +1 -1
- package/dist/lib/pmo/storage/projects.js +2 -1
- package/dist/lib/pmo/storage/projects.js.map +1 -1
- package/dist/lib/pmo/storage/statuses.js +1 -1
- package/dist/lib/pmo/storage/statuses.js.map +1 -1
- package/dist/lib/pmo/storage/subtasks.js +1 -1
- package/dist/lib/pmo/storage/subtasks.js.map +1 -1
- package/dist/lib/pmo/storage/templates.js +1 -1
- package/dist/lib/pmo/storage/templates.js.map +1 -1
- package/dist/lib/pmo/storage/tickets.js +2 -1
- package/dist/lib/pmo/storage/tickets.js.map +1 -1
- package/dist/lib/pmo/storage/workflow-rules.js +1 -1
- package/dist/lib/pmo/storage/workflow-rules.js.map +1 -1
- package/dist/lib/pmo/utils.d.ts +6 -189
- package/dist/lib/pmo/utils.js +6 -306
- package/dist/lib/pmo/utils.js.map +1 -1
- package/dist/lib/providers/index.d.ts +1 -0
- package/dist/lib/providers/index.js +1 -0
- package/dist/lib/providers/index.js.map +1 -1
- package/dist/lib/providers/resolver.js +16 -0
- package/dist/lib/providers/resolver.js.map +1 -1
- package/dist/lib/providers/trello-provider.d.ts +28 -0
- package/dist/lib/providers/trello-provider.js +381 -0
- package/dist/lib/providers/trello-provider.js.map +1 -0
- package/dist/lib/session/heartbeat.d.ts +45 -0
- package/dist/lib/session/heartbeat.js +150 -0
- package/dist/lib/session/heartbeat.js.map +1 -0
- package/dist/lib/session/index.d.ts +7 -0
- package/dist/lib/session/index.js +8 -0
- package/dist/lib/session/index.js.map +1 -0
- package/dist/lib/session/watcher.d.ts +79 -0
- package/dist/lib/session/watcher.js +142 -0
- package/dist/lib/session/watcher.js.map +1 -0
- package/dist/lib/shipping/auto-merge.d.ts +57 -0
- package/dist/lib/shipping/auto-merge.js +311 -0
- package/dist/lib/shipping/auto-merge.js.map +1 -0
- package/dist/lib/shipping/github.d.ts +68 -0
- package/dist/lib/shipping/github.js +217 -0
- package/dist/lib/shipping/github.js.map +1 -0
- package/dist/lib/shipping/index.d.ts +13 -0
- package/dist/lib/shipping/index.js +11 -0
- package/dist/lib/shipping/index.js.map +1 -0
- package/dist/lib/shipping/rebase.d.ts +35 -0
- package/dist/lib/shipping/rebase.js +107 -0
- package/dist/lib/shipping/rebase.js.map +1 -0
- package/dist/lib/shipping/types.d.ts +181 -0
- package/dist/lib/shipping/types.js +9 -0
- package/dist/lib/shipping/types.js.map +1 -0
- package/dist/lib/sync/daemon-process.d.ts +9 -0
- package/dist/lib/sync/daemon-process.js +184 -0
- package/dist/lib/sync/daemon-process.js.map +1 -0
- package/dist/lib/sync/daemon.d.ts +39 -0
- package/dist/lib/sync/daemon.js +91 -0
- package/dist/lib/sync/daemon.js.map +1 -0
- package/dist/lib/sync/engine.d.ts +38 -0
- package/dist/lib/sync/engine.js +145 -0
- package/dist/lib/sync/engine.js.map +1 -0
- package/dist/lib/sync/merge-queue.d.ts +116 -0
- package/dist/lib/sync/merge-queue.js +321 -0
- package/dist/lib/sync/merge-queue.js.map +1 -0
- package/dist/lib/sync/reconciler.d.ts +44 -0
- package/dist/lib/sync/reconciler.js +88 -0
- package/dist/lib/sync/reconciler.js.map +1 -0
- package/dist/lib/trello/client.d.ts +1 -0
- package/dist/lib/trello/client.js +6 -0
- package/dist/lib/trello/client.js.map +1 -1
- package/dist/lib/utils/text.d.ts +44 -0
- package/dist/lib/utils/text.js +72 -0
- package/dist/lib/utils/text.js.map +1 -0
- package/dist/lib/work-lifecycle/post-execution.js +1 -1
- package/dist/lib/work-lifecycle/post-execution.js.map +1 -1
- package/dist/lib/work-lifecycle/settings.d.ts +138 -0
- package/dist/lib/work-lifecycle/settings.js +213 -0
- package/dist/lib/work-lifecycle/settings.js.map +1 -0
- package/oclif.manifest.json +2549 -2901
- package/package.json +8 -8
- package/dist/commands/action/create.d.ts +0 -26
- package/dist/commands/action/create.js +0 -245
- package/dist/commands/action/create.js.map +0 -1
- package/dist/commands/action/delete.d.ts +0 -18
- package/dist/commands/action/delete.js +0 -78
- package/dist/commands/action/delete.js.map +0 -1
- package/dist/commands/action/index.js +0 -103
- package/dist/commands/action/index.js.map +0 -1
- package/dist/commands/action/list.d.ts +0 -15
- package/dist/commands/action/list.js +0 -90
- package/dist/commands/action/list.js.map +0 -1
- package/dist/commands/action/run.d.ts +0 -20
- package/dist/commands/action/run.js +0 -188
- package/dist/commands/action/run.js.map +0 -1
- package/dist/commands/action/show.d.ts +0 -17
- package/dist/commands/action/show.js +0 -78
- package/dist/commands/action/show.js.map +0 -1
- package/dist/commands/action/update.d.ts +0 -27
- package/dist/commands/action/update.js +0 -288
- package/dist/commands/action/update.js.map +0 -1
|
@@ -9,14 +9,15 @@ import { enrichAgentSession } from '../../lib/telemetry/telemetry-bridge.js';
|
|
|
9
9
|
import { registerAgent } from '../../lib/registry/index.js';
|
|
10
10
|
import { shouldOutputJson, outputErrorAsJson, createMetadata, outputConfirmationNeededAsJson, outputExecutionResultAsJson, } from '../../lib/prompt-json.js';
|
|
11
11
|
import { FlagResolver } from '../../lib/flags/index.js';
|
|
12
|
-
import { getWorkColumnSetting, findColumnByName,
|
|
12
|
+
import { getWorkColumnSetting, findColumnByName, resolveReviewGate } from '../../lib/work-lifecycle/settings.js';
|
|
13
|
+
import { getTicketExternalMetadata, resolveExternalTicketId } from '../../lib/external-issues/utils.js';
|
|
13
14
|
import { styles } from '../../lib/styles.js';
|
|
14
15
|
import { getWorkspaceInfo, createEphemeralAgent, getTicketTmuxSession, killTmuxSession, findWorktreeForBranch, resolveAgentDir, } from '../../lib/agents/commands.js';
|
|
15
16
|
import { openWorkspaceDatabase } from '../../lib/database/index.js';
|
|
16
17
|
import { generateBranchName, DEFAULT_EXECUTION_CONFIG, } from '../../lib/execution/types.js';
|
|
17
18
|
import { runExecution, isDockerRunning, isGitHubTokenAvailable, isDevcontainerCliInstalled, dockerCredentialsExist, getDockerCredentialInfo, isClaudeExecutor, getExecutorDisplayName } from '../../lib/execution/runners.js';
|
|
18
19
|
import { ExecutionStorage, ContainerStorage } from '../../lib/execution/storage.js';
|
|
19
|
-
import { loadExecutionConfig, getTerminalApp, promptTerminalPreference, getShell, promptShellPreference, hasTerminalPreference, hasShellPreference,
|
|
20
|
+
import { loadExecutionConfig, getTerminalApp, promptTerminalPreference, getShell, promptShellPreference, hasTerminalPreference, hasShellPreference, getAuthMethod, saveAuthMethod, getCreatePrDefault, getMirrorToPmoDefault, getCleanupPolicy } from '../../lib/execution/config.js';
|
|
20
21
|
import { hasDevcontainerConfig } from '../../lib/execution/devcontainer.js';
|
|
21
22
|
import { detectRepoWorktrees, resolveWorktreePath, buildWorkspaceRepos } from '../../lib/execution/context.js';
|
|
22
23
|
import { isGHInstalled, isGHAuthenticated } from '../../lib/pr/index.js';
|
|
@@ -158,7 +159,7 @@ export default class WorkStart extends PMOCommand {
|
|
|
158
159
|
'<%= config.bin %> <%= command.id %> --from-issue # Uses workspace default source',
|
|
159
160
|
'<%= config.bin %> <%= command.id %> TKT-001 --review-gate auto # Ship directly, no approval needed',
|
|
160
161
|
'<%= config.bin %> <%= command.id %> TKT-001 --review-gate post # Ship then human reviews after',
|
|
161
|
-
'<%= config.bin %> <%= command.id %> PRLT-1085 PRLT-1086 PRLT-1087 --
|
|
162
|
+
'<%= config.bin %> <%= command.id %> PRLT-1085 PRLT-1086 PRLT-1087 --create-pr # Batch spawn in parallel',
|
|
162
163
|
'<%= config.bin %> <%= command.id %> TKT-001 TKT-002 TKT-003 --max-parallel 2 # Limit concurrent spawns',
|
|
163
164
|
];
|
|
164
165
|
static args = {
|
|
@@ -180,8 +181,8 @@ export default class WorkStart extends PMOCommand {
|
|
|
180
181
|
options: ['claude-code', 'codex', 'custom'],
|
|
181
182
|
}),
|
|
182
183
|
action: Flags.string({
|
|
183
|
-
|
|
184
|
-
|
|
184
|
+
description: 'Action to perform (internal — use work groom/implement/review/resolve instead)',
|
|
185
|
+
hidden: true,
|
|
185
186
|
}),
|
|
186
187
|
prompt: Flags.string({
|
|
187
188
|
char: 'p',
|
|
@@ -732,7 +733,7 @@ export default class WorkStart extends PMOCommand {
|
|
|
732
733
|
title: ticket.title,
|
|
733
734
|
status: ticket.statusName,
|
|
734
735
|
},
|
|
735
|
-
action: flags.action || '
|
|
736
|
+
action: flags.action || 'implement',
|
|
736
737
|
display: flags.display || (flags['run-on-host'] ? 'host' : 'devcontainer'),
|
|
737
738
|
permissions: (flags['permission-mode'] || (flags['skip-permissions'] ? 'danger' : 'safe')),
|
|
738
739
|
agent: flags.agent || 'ephemeral',
|
|
@@ -1111,14 +1112,12 @@ export default class WorkStart extends PMOCommand {
|
|
|
1111
1112
|
else if (repoWorktrees.length === 0) {
|
|
1112
1113
|
this.log(styles.muted(` No git worktree found for agent, using current directory`));
|
|
1113
1114
|
}
|
|
1114
|
-
// Get coder name for branch naming (prompts on first use)
|
|
1115
|
-
const coderName = await getOrPromptCoderName(db);
|
|
1116
1115
|
// Use ticket's existing branch or generate a new one
|
|
1117
1116
|
// When ticket was imported from an external source, use the external key
|
|
1118
1117
|
// (e.g. PRLT-962) instead of the internal PMO ID (e.g. TKT-134) for branch naming
|
|
1119
1118
|
const externalMeta = getTicketExternalMetadata(ticket);
|
|
1120
1119
|
const branchTicketId = externalMeta.key || ticket.id;
|
|
1121
|
-
const branch = ticket.branch || generateBranchName(branchTicketId, ticket.title,
|
|
1120
|
+
const branch = ticket.branch || generateBranchName(branchTicketId, ticket.title, ticket.category);
|
|
1122
1121
|
const isExistingBranch = !!ticket.branch;
|
|
1123
1122
|
// Get epic info if linked
|
|
1124
1123
|
let epicTitle;
|
|
@@ -1127,93 +1126,21 @@ export default class WorkStart extends PMOCommand {
|
|
|
1127
1126
|
epicTitle = epic?.title;
|
|
1128
1127
|
}
|
|
1129
1128
|
// Determine action for this work session
|
|
1129
|
+
// The --action flag is hidden/internal — used by dedicated commands (work groom, work review, etc.)
|
|
1130
|
+
// When called directly, work start always uses 'implement'
|
|
1130
1131
|
let selectedAction = null;
|
|
1131
1132
|
let customPrompt;
|
|
1132
1133
|
if (flags.prompt) {
|
|
1133
1134
|
// Custom prompt overrides everything
|
|
1134
1135
|
customPrompt = flags.prompt;
|
|
1135
1136
|
}
|
|
1136
|
-
else
|
|
1137
|
-
//
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
return handleError('CUSTOM_ACTION_REQUIRES_PROMPT', '--action custom requires --prompt flag. Usage: prlt work start TKT-001 --action custom --prompt "your custom instructions"');
|
|
1141
|
-
}
|
|
1142
|
-
// Specific action requested
|
|
1143
|
-
selectedAction = await this.storage.getAction(flags.action);
|
|
1137
|
+
else {
|
|
1138
|
+
// Use specified action (internal routing) or default to 'implement'
|
|
1139
|
+
const actionId = flags.action || 'implement';
|
|
1140
|
+
selectedAction = await this.storage.getAction(actionId);
|
|
1144
1141
|
if (!selectedAction) {
|
|
1145
1142
|
db.close();
|
|
1146
|
-
return handleError('ACTION_NOT_FOUND', `Action not found: ${
|
|
1147
|
-
}
|
|
1148
|
-
}
|
|
1149
|
-
else {
|
|
1150
|
-
// Interactive action selection
|
|
1151
|
-
// Get ticket's current status to determine suggested action
|
|
1152
|
-
const ticketStatus = await this.storage.getStatus(ticket.statusId || '');
|
|
1153
|
-
const currentStateName = ticketStatus?.name || ticket.statusName || 'Todo';
|
|
1154
|
-
// Get suggested action for this state
|
|
1155
|
-
const suggestedAction = await this.storage.getSuggestedAction(currentStateName);
|
|
1156
|
-
// Get all actions for selection
|
|
1157
|
-
const allActions = await this.storage.listActions();
|
|
1158
|
-
// Build choices with suggested action at top
|
|
1159
|
-
const actionChoiceList = [];
|
|
1160
|
-
if (suggestedAction) {
|
|
1161
|
-
actionChoiceList.push({
|
|
1162
|
-
name: `${suggestedAction.name} - ${suggestedAction.description || 'Suggested for ' + currentStateName} (Recommended)`,
|
|
1163
|
-
value: suggestedAction.id,
|
|
1164
|
-
});
|
|
1165
|
-
}
|
|
1166
|
-
for (const action of allActions) {
|
|
1167
|
-
if (suggestedAction && action.id === suggestedAction.id)
|
|
1168
|
-
continue;
|
|
1169
|
-
actionChoiceList.push({
|
|
1170
|
-
name: `${action.name}${action.description ? ' - ' + action.description : ''}`,
|
|
1171
|
-
value: action.id,
|
|
1172
|
-
});
|
|
1173
|
-
}
|
|
1174
|
-
actionChoiceList.push({ name: 'Custom prompt...', value: '__custom__' });
|
|
1175
|
-
actionChoiceList.push({ name: 'Ad-hoc session - unstructured exploration/debugging', value: '__adhoc__' });
|
|
1176
|
-
// Use FlagResolver for action selection
|
|
1177
|
-
const actionResolver = new FlagResolver({
|
|
1178
|
-
commandName: 'work start',
|
|
1179
|
-
baseCommand: `prlt work start ${ticketId}`,
|
|
1180
|
-
jsonMode,
|
|
1181
|
-
flags: {},
|
|
1182
|
-
});
|
|
1183
|
-
actionResolver.addPrompt({
|
|
1184
|
-
flagName: 'selectedActionId',
|
|
1185
|
-
type: 'list',
|
|
1186
|
-
message: `What should the agent do with ${ticket.id}?`,
|
|
1187
|
-
default: suggestedAction?.id,
|
|
1188
|
-
choices: () => actionChoiceList,
|
|
1189
|
-
});
|
|
1190
|
-
actionResolver.addPrompt({
|
|
1191
|
-
flagName: 'customInput',
|
|
1192
|
-
type: 'input',
|
|
1193
|
-
message: 'Enter custom prompt:',
|
|
1194
|
-
when: (ctx) => ctx.flags.selectedActionId === '__custom__',
|
|
1195
|
-
validate: (value) => value.trim() ? true : 'Prompt cannot be empty',
|
|
1196
|
-
});
|
|
1197
|
-
const actionResult = await actionResolver.resolve();
|
|
1198
|
-
const selectedActionId = actionResult.selectedActionId;
|
|
1199
|
-
if (selectedActionId === '__custom__') {
|
|
1200
|
-
customPrompt = actionResult.customInput.trim();
|
|
1201
|
-
}
|
|
1202
|
-
else if (selectedActionId === '__adhoc__') {
|
|
1203
|
-
// Ad-hoc session - no specific action, just launch Claude for exploration
|
|
1204
|
-
selectedAction = {
|
|
1205
|
-
id: 'adhoc',
|
|
1206
|
-
name: 'Ad-hoc',
|
|
1207
|
-
description: 'Unstructured exploration and debugging',
|
|
1208
|
-
prompt: 'You are working on an ad-hoc session for exploration and debugging. Help the user with whatever they need.',
|
|
1209
|
-
modifiesCode: false,
|
|
1210
|
-
toState: 'In Progress',
|
|
1211
|
-
isBuiltin: false,
|
|
1212
|
-
createdAt: new Date(),
|
|
1213
|
-
};
|
|
1214
|
-
}
|
|
1215
|
-
else if (selectedActionId) {
|
|
1216
|
-
selectedAction = await this.storage.getAction(selectedActionId);
|
|
1143
|
+
return handleError('ACTION_NOT_FOUND', `Action not found: ${actionId}`);
|
|
1217
1144
|
}
|
|
1218
1145
|
}
|
|
1219
1146
|
// Build execution context with full ticket details
|
|
@@ -2764,11 +2691,10 @@ export default class WorkStart extends PMOCommand {
|
|
|
2764
2691
|
const repoWorktrees = detectRepoWorktrees(agentDir);
|
|
2765
2692
|
const worktreePath = resolveWorktreePath(agentDir, repoWorktrees);
|
|
2766
2693
|
// Get coder name for branch naming (prompts on first use)
|
|
2767
|
-
const coderName = await getOrPromptCoderName(db);
|
|
2768
2694
|
// Use ticket's existing branch or generate a new one
|
|
2769
2695
|
// Prefer external provider key (e.g. PRLT-1065) over internal TKT ID for branch naming
|
|
2770
2696
|
const branchTicketId = resolveExternalTicketId(ticket);
|
|
2771
|
-
const branch = ticket.branch || generateBranchName(branchTicketId, ticket.title,
|
|
2697
|
+
const branch = ticket.branch || generateBranchName(branchTicketId, ticket.title, ticket.category);
|
|
2772
2698
|
const isExistingBranch = !!ticket.branch;
|
|
2773
2699
|
// Get epic info
|
|
2774
2700
|
let epicTitle;
|