commandmate 0.42.2 → 0.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-build-manifest.json +176 -176
- package/.next/app-path-routes-manifest.json +34 -34
- package/.next/build-manifest.json +2 -2
- package/.next/prerender-manifest.json +15 -15
- package/.next/required-server-files.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/update/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/versions/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/versions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/release-notes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/update/route.js +2 -2
- package/.next/server/app/api/app/update/route.js.nft.json +1 -1
- package/.next/server/app/api/app/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/update-check/route.js +1 -1
- package/.next/server/app/api/app/update-check/route.js.nft.json +1 -1
- package/.next/server/app/api/app/update-check/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/capabilities/route.js +1 -1
- package/.next/server/app/api/capabilities/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/daily-summary/route.js +1 -1
- package/.next/server/app/api/daily-summary/route.js.nft.json +1 -1
- package/.next/server/app/api/daily-summary/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/daily-summary/status/route.js +1 -1
- package/.next/server/app/api/daily-summary/status/route.js.nft.json +1 -1
- package/.next/server/app/api/daily-summary/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/[id]/health/route.js.nft.json +1 -1
- package/.next/server/app/api/external-apps/[id]/health/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/external-apps/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/external-apps/route.js.nft.json +1 -1
- package/.next/server/app/api/external-apps/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/fs/browse/route.js.nft.json +1 -1
- package/.next/server/app/api/fs/browse/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/fs/recent-paths/route.js.nft.json +1 -1
- package/.next/server/app/api/fs/recent-paths/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/agent-event/route.js +103 -1
- package/.next/server/app/api/hooks/agent-event/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/agent-event/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/claude-done/route.js +2 -2
- package/.next/server/app/api/hooks/claude-done/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/claude-done/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/hooks/permission-request/route.js +1 -1
- package/.next/server/app/api/hooks/permission-request/route.js.nft.json +1 -1
- package/.next/server/app/api/hooks/permission-request/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/metrics/vibe/route.js.nft.json +1 -1
- package/.next/server/app/api/metrics/vibe/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/ollama/models/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/escalation/route.js +1 -1
- package/.next/server/app/api/push/escalation/route.js.nft.json +1 -1
- package/.next/server/app/api/push/escalation/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/subscriptions/route.js.nft.json +1 -1
- package/.next/server/app/api/push/subscriptions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/push/vapid/route.js +1 -1
- package/.next/server/app/api/push/vapid/route.js.nft.json +1 -1
- package/.next/server/app/api/push/vapid/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/relays/[relayId]/cancel/route.js +1 -1
- package/.next/server/app/api/relays/[relayId]/cancel/route.js.nft.json +1 -1
- package/.next/server/app/api/relays/[relayId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/relays/route.js +1 -1
- package/.next/server/app/api/relays/route.js.nft.json +1 -1
- package/.next/server/app/api/relays/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/remote/pair/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/[jobId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/clone/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/excluded/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/excluded/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/restore/route.js +1 -1
- package/.next/server/app/api/repositories/restore/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/restore/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/route.js +1 -1
- package/.next/server/app/api/repositories/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/scan/route.js +1 -1
- package/.next/server/app/api/repositories/scan/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/scan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/sync/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/repositories/validate-path/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/validate-path/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/settings/default-agents/route.js +1 -1
- package/.next/server/app/api/settings/default-agents/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/default-agents/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/settings/default-surface-mode/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/default-surface-mode/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/sidebar/group-order/route.js.nft.json +1 -1
- package/.next/server/app/api/sidebar/group-order/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/[id]/route.js +1 -1
- package/.next/server/app/api/skills/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/installations/route.js +1 -1
- package/.next/server/app/api/skills/installations/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/installations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/operations/route.js +2 -2
- package/.next/server/app/api/skills/operations/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/operations/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/reindex/route.js +1 -1
- package/.next/server/app/api/skills/reindex/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/reindex/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/skills/route.js +1 -1
- package/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/slash-commands/route.js +1 -1
- package/.next/server/app/api/slash-commands/route.js.nft.json +1 -1
- package/.next/server/app/api/slash-commands/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/cancel/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/[taskId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/templates/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/templates/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/templates/route.js.nft.json +1 -1
- package/.next/server/app/api/templates/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/verification/runs/[runId]/route.js.nft.json +1 -1
- package/.next/server/app/api/verification/runs/[runId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/verification/runs/route.js.nft.json +1 -1
- package/.next/server/app/api/verification/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/auto-yes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/capture/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/clear-composer/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-reference/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-reference/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-tool/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/cli-tool/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js +3 -1
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/cmate/schedules/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/current-output/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/direct-input/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/direct-input/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/direct-input/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/env/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/env/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +3 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/execution-logs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/create/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/create/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branch/delete/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branches/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/branches/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/checkout/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/checkout/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/commit/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/commit/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/diff/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/fetch/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/fetch/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/log/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/log/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/pull/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/pull/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/push/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/push/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/reset/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/reset/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/revert/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/revert/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/show/[commitHash]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stage/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/staged/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/staged/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/[index]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/apply/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/apply/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/pop/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/pop/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/push/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/push/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/stash/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/status/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/status/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/unstage/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/unstage/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/git/working-diff/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/git/working-diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/notes/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/notes/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/instances/opencode/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/interrupt/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/kill-session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/[filename]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/[filename]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/marp-render/route.js +7 -7
- package/.next/server/app/api/worktrees/[id]/marp-render/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/marp-render/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/messages/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/messages/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/diff/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/diff/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/session/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/session/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/session/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/share/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/share/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/opencode/share/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/prompt-response/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/resolve-target/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/resolve-target/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/respond/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js +1 -103
- package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +3 -1
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route.js +3 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/active/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/route.js +3 -1
- package/.next/server/app/api/worktrees/[id]/schedules/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/search/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js +1 -103
- package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js +103 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/git-workflow/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/install/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/uninstall-plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/[skillId]/update-plan/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/skills/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/special-keys/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tasks/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/tasks/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route.js +103 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/terminal/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/history/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/history/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/timers/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/[todoId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/todos/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/upload/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/upload/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/config/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/config/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/[runId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/verify/runs/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/[id]/viewed/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/viewed/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/apply-default-agents/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/apply-default-agents/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -1
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
- package/.next/server/app/more/page_client-reference-manifest.js +1 -1
- package/.next/server/app/offline/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/proxy/[...path]/route.js.nft.json +1 -1
- package/.next/server/app/proxy/[...path]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/repositories/page_client-reference-manifest.js +1 -1
- package/.next/server/app/review/page_client-reference-manifest.js +1 -1
- package/.next/server/app/sessions/page.js +1 -1
- package/.next/server/app/sessions/page.js.nft.json +1 -1
- package/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/[skillId]/page.js +1 -1
- package/.next/server/app/skills/[skillId]/page.js.nft.json +1 -1
- package/.next/server/app/skills/[skillId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/installed/page_client-reference-manifest.js +1 -1
- package/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page.js +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/files/[...path]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/page.js +9 -9
- package/.next/server/app/worktrees/[id]/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page.js +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page.js.nft.json +1 -1
- package/.next/server/app/worktrees/[id]/terminal/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +34 -34
- package/.next/server/chunks/1068.js +1 -1
- package/.next/server/chunks/1210.js +1 -1
- package/.next/server/chunks/1501.js +3 -3
- package/.next/server/chunks/2119.js +1 -1
- package/.next/server/chunks/22.js +1 -1
- package/.next/server/chunks/2283.js +15 -0
- package/.next/server/chunks/2328.js +1 -1
- package/.next/server/chunks/2404.js +4 -3
- package/.next/server/chunks/2445.js +1 -1
- package/.next/server/chunks/252.js +1 -1
- package/.next/server/chunks/2816.js +1 -1
- package/.next/server/chunks/3543.js +1 -1
- package/.next/server/chunks/3730.js +1 -1
- package/.next/server/chunks/3945.js +1 -1
- package/.next/server/chunks/4207.js +3 -3
- package/.next/server/chunks/4802.js +1 -1
- package/.next/server/chunks/488.js +1 -0
- package/.next/server/chunks/5064.js +1 -1
- package/.next/server/chunks/5326.js +1 -1
- package/.next/server/chunks/5456.js +1 -1
- package/.next/server/chunks/5571.js +1 -1
- package/.next/server/chunks/5775.js +1 -1
- package/.next/server/chunks/611.js +1 -1
- package/.next/server/chunks/6130.js +1 -1
- package/.next/server/chunks/6285.js +1 -1
- package/.next/server/chunks/6401.js +1 -1
- package/.next/server/chunks/6474.js +14 -0
- package/.next/server/chunks/650.js +1 -1
- package/.next/server/chunks/6661.js +1 -1
- package/.next/server/chunks/6781.js +1 -1
- package/.next/server/chunks/6793.js +1 -1
- package/.next/server/chunks/6927.js +1 -0
- package/.next/server/chunks/7491.js +3 -0
- package/.next/server/chunks/7506.js +1 -1
- package/.next/server/chunks/7685.js +1 -1
- package/.next/server/chunks/7905.js +1 -1
- package/.next/server/chunks/8543.js +1 -1
- package/.next/server/chunks/8581.js +2 -2
- package/.next/server/chunks/8728.js +2 -2
- package/.next/server/chunks/8782.js +1 -0
- package/.next/server/chunks/8791.js +1 -1
- package/.next/server/chunks/8800.js +4 -3
- package/.next/server/chunks/8918.js +108 -6
- package/.next/server/chunks/9130.js +3 -3
- package/.next/server/chunks/{8052.js → 9353.js} +4 -2
- package/.next/server/chunks/9390.js +3 -0
- package/.next/server/chunks/9627.js +3 -3
- package/.next/server/chunks/967.js +1 -0
- package/.next/server/chunks/9731.js +3 -3
- package/.next/server/chunks/9882.js +3 -3
- package/.next/server/middleware-manifest.json +5 -5
- package/.next/server/pages/500.html +1 -1
- package/.next/server/pages-manifest.json +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/server/src/middleware.js +2 -2
- package/.next/server/src/middleware.js.map +1 -1
- package/.next/static/chunks/2053-85a974ddfe7498fe.js +1 -0
- package/.next/static/chunks/{2407-6b9e12c099fa598c.js → 2407-340774f1a24f2b45.js} +1 -1
- package/.next/static/chunks/5449-6cb80bab2bd06b79.js +1 -0
- package/.next/static/chunks/5521-c358c31f60e5e689.js +1 -0
- package/.next/static/chunks/591-0a45801e83f26f24.js +1 -0
- package/.next/static/chunks/8165-3853772f6ae1299b.js +1 -0
- package/.next/static/chunks/{8566-a6a7c70558927410.js → 8566-aeda747542072ace.js} +1 -1
- package/.next/static/chunks/8811-29eaa24237f48558.js +1 -0
- package/.next/static/chunks/{9619-22adf5367c4b7080.js → 9619-84aced0846cbe3ac.js} +1 -1
- package/.next/static/chunks/app/{layout-5b95e1236dcd9ef6.js → layout-0fc249fb7de75a27.js} +1 -1
- package/.next/static/chunks/app/review/page-ff9efae3f86eb840.js +1 -0
- package/.next/static/chunks/app/sessions/page-55297155e7bf01b9.js +1 -0
- package/.next/static/chunks/app/skills/[skillId]/page-9ee7a381636e60cb.js +1 -0
- package/.next/static/chunks/app/skills/page-182e16168b2fc098.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/page-d2103e0c25be83c8.js +1 -0
- package/.next/static/css/38070d879efa1371.css +1 -0
- package/.next/trace +13 -13
- package/README.md +58 -620
- package/dist/cli/commands/ask.d.ts.map +1 -1
- package/dist/cli/commands/ask.js +23 -149
- package/dist/cli/commands/capture.d.ts.map +1 -1
- package/dist/cli/commands/capture.js +11 -1
- package/dist/cli/commands/docs.d.ts.map +1 -1
- package/dist/cli/commands/docs.js +5 -0
- package/dist/cli/commands/remote.d.ts +24 -1
- package/dist/cli/commands/remote.d.ts.map +1 -1
- package/dist/cli/commands/remote.js +155 -6
- package/dist/cli/commands/reply.d.ts +40 -0
- package/dist/cli/commands/reply.d.ts.map +1 -0
- package/dist/cli/commands/reply.js +133 -0
- package/dist/cli/commands/respond.d.ts.map +1 -1
- package/dist/cli/commands/respond.js +255 -112
- package/dist/cli/commands/stop.d.ts.map +1 -1
- package/dist/cli/commands/stop.js +53 -1
- package/dist/cli/commands/sync.js +3 -3
- package/dist/cli/commands/wait.d.ts +5 -0
- package/dist/cli/commands/wait.d.ts.map +1 -1
- package/dist/cli/commands/wait.js +10 -1
- package/dist/cli/docs/agent-operations.d.ts +2 -2
- package/dist/cli/docs/agent-operations.d.ts.map +1 -1
- package/dist/cli/docs/agent-operations.js +13 -0
- package/dist/cli/docs/setup-guide.d.ts +14 -0
- package/dist/cli/docs/setup-guide.d.ts.map +1 -0
- package/dist/cli/docs/setup-guide.js +366 -0
- package/dist/cli/program.d.ts.map +1 -1
- package/dist/cli/program.js +4 -0
- package/dist/cli/types/api-responses.d.ts +11 -0
- package/dist/cli/types/api-responses.d.ts.map +1 -1
- package/dist/cli/types/index.d.ts +2 -0
- package/dist/cli/types/index.d.ts.map +1 -1
- package/dist/cli/utils/daemon.d.ts +42 -2
- package/dist/cli/utils/daemon.d.ts.map +1 -1
- package/dist/cli/utils/daemon.js +222 -40
- package/dist/cli/utils/docs-reader.d.ts +6 -0
- package/dist/cli/utils/docs-reader.d.ts.map +1 -1
- package/dist/cli/utils/docs-reader.js +14 -13
- package/dist/cli/utils/npm-runner.d.ts +12 -0
- package/dist/cli/utils/npm-runner.d.ts.map +1 -1
- package/dist/cli/utils/npm-runner.js +36 -0
- package/dist/cli/utils/process-inspect.d.ts +55 -0
- package/dist/cli/utils/process-inspect.d.ts.map +1 -0
- package/dist/cli/utils/process-inspect.js +214 -0
- package/dist/cli/utils/remote-pairing.d.ts +68 -0
- package/dist/cli/utils/remote-pairing.d.ts.map +1 -0
- package/dist/cli/utils/remote-pairing.js +117 -0
- package/dist/cli/utils/reply-ledger.d.ts +95 -0
- package/dist/cli/utils/reply-ledger.d.ts.map +1 -0
- package/dist/cli/utils/reply-ledger.js +187 -0
- package/dist/cli/utils/server-identity.d.ts +50 -0
- package/dist/cli/utils/server-identity.d.ts.map +1 -0
- package/dist/cli/utils/server-identity.js +118 -0
- package/dist/cli/utils/server-ready.d.ts +13 -0
- package/dist/cli/utils/server-ready.d.ts.map +1 -1
- package/dist/cli/utils/server-ready.js +16 -0
- package/dist/lib/cli-tools/copilot-executable.d.ts +9 -0
- package/dist/lib/cli-tools/copilot-executable.d.ts.map +1 -1
- package/dist/lib/cli-tools/copilot-executable.js +21 -5
- package/dist/lib/cli-tools/opencode-executable.d.ts +103 -0
- package/dist/lib/cli-tools/opencode-executable.d.ts.map +1 -0
- package/dist/lib/cli-tools/opencode-executable.js +179 -0
- package/dist/lib/cli-tools/types.d.ts +1 -1
- package/dist/lib/cli-tools/types.d.ts.map +1 -1
- package/dist/lib/cli-tools/types.js +5 -1
- package/dist/lib/detection/tools/verified-against.d.ts +15 -0
- package/dist/lib/detection/tools/verified-against.d.ts.map +1 -1
- package/dist/lib/detection/tools/verified-against.js +17 -1
- package/dist/lib/detection/version-probes.d.ts.map +1 -1
- package/dist/lib/detection/version-probes.js +14 -1
- package/dist/lib/security/pairing-code.d.ts +2 -1
- package/dist/lib/security/pairing-code.d.ts.map +1 -1
- package/dist/lib/session/tmux-session-surface.d.ts.map +1 -1
- package/dist/lib/session/tmux-session-surface.js +1 -1
- package/dist/server/locales/en/worktree.json +72 -20
- package/dist/server/locales/ja/worktree.json +72 -20
- package/dist/server/server.js +23 -0
- package/dist/server/src/config/cli-tool-timing-config.js +19 -1
- package/dist/server/src/config/detection-evidence-config.js +3 -0
- package/dist/server/src/config/image-extensions.js +1 -0
- package/dist/server/src/config/schedule-config.js +55 -1
- package/dist/server/src/lib/auto-yes-poller.js +69 -4
- package/dist/server/src/lib/cli-tools/agent-mode-spec.js +54 -2
- package/dist/server/src/lib/cli-tools/base.js +6 -2
- package/dist/server/src/lib/cli-tools/command-code-plan-review.js +175 -0
- package/dist/server/src/lib/cli-tools/command-code.js +81 -2
- package/dist/server/src/lib/cli-tools/composer-spec.js +10 -0
- package/dist/server/src/lib/cli-tools/copilot-executable.js +21 -5
- package/dist/server/src/lib/cli-tools/graceful-exit.js +15 -1
- package/dist/server/src/lib/cli-tools/index.js +3 -1
- package/dist/server/src/lib/cli-tools/install-hints.js +9 -3
- package/dist/server/src/lib/cli-tools/liveness-spec.js +19 -0
- package/dist/server/src/lib/cli-tools/manager.js +2 -0
- package/dist/server/src/lib/cli-tools/opencode-executable.js +179 -0
- package/dist/server/src/lib/cli-tools/opencode-v2.js +369 -0
- package/dist/server/src/lib/cli-tools/opencode.js +29 -5
- package/dist/server/src/lib/cli-tools/types.js +5 -1
- package/dist/server/src/lib/cmate-cli-tool-parser.js +65 -7
- package/dist/server/src/lib/cmate-parser.js +12 -0
- package/dist/server/src/lib/cmate-validator.js +13 -1
- package/dist/server/src/lib/detection/cli-patterns.js +172 -3
- package/dist/server/src/lib/detection/model-info-extractor.js +79 -7
- package/dist/server/src/lib/detection/status-detector.js +10 -1
- package/dist/server/src/lib/detection/tools/codex/cli-patterns.js +2 -1
- package/dist/server/src/lib/detection/tools/codex/detect.js +26 -0
- package/dist/server/src/lib/detection/tools/command-code/plan-review-state.js +75 -0
- package/dist/server/src/lib/detection/tools/opencode-v2/detect.js +253 -0
- package/dist/server/src/lib/detection/tools/opencode-v2/dialog-title.js +48 -0
- package/dist/server/src/lib/detection/tools/registry.js +2 -0
- package/dist/server/src/lib/detection/tools/run-detection.js +9 -0
- package/dist/server/src/lib/detection/tools/verified-against.js +17 -1
- package/dist/server/src/lib/detection/upstream-faults.js +8 -0
- package/dist/server/src/lib/detection/version-probes.js +14 -1
- package/dist/server/src/lib/hooks/agent-session-telemetry.js +36 -1
- package/dist/server/src/lib/hooks/sources/claude/transcript.js +33 -1
- package/dist/server/src/lib/hooks/sources/opencode/log-diagnosis.js +105 -0
- package/dist/server/src/lib/hooks/sources/opencode/source.js +7 -1
- package/dist/server/src/lib/hooks/sources/opencode-v2/client.js +422 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/decision-labels.js +24 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/history.js +421 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/ingest.js +271 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/mappers.js +165 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/payloads.js +351 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/ports.js +230 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/reattach.js +149 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/runtime.js +180 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/secrets.js +182 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/source.js +295 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/subscription.js +455 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/tool-id.js +18 -0
- package/dist/server/src/lib/hooks/sources/opencode-v2/usage.js +214 -0
- package/dist/server/src/lib/hooks/sources/registry.js +2 -0
- package/dist/server/src/lib/hooks/structured-decision-response.js +14 -5
- package/dist/server/src/lib/job-executor.js +2 -1
- package/dist/server/src/lib/polling/auto-yes-dialog-gate.js +15 -1
- package/dist/server/src/lib/polling/structured-history-gate.js +19 -5
- package/dist/server/src/lib/relay/relay-delivery.js +4 -1
- package/dist/server/src/lib/session/agent-event-state.js +24 -0
- package/dist/server/src/lib/session/claude-executor.js +186 -12
- package/dist/server/src/lib/session/claude-session.js +131 -15
- package/dist/server/src/lib/session/current-output-builder.js +27 -3
- package/dist/server/src/lib/session/send-user-message.js +4 -0
- package/dist/server/src/lib/session/session-start-error.js +20 -0
- package/dist/server/src/lib/session/structured-prompt.js +54 -0
- package/dist/server/src/lib/session/tmux-session-surface.js +1 -1
- package/dist/server/src/lib/skills/agent-state-paths.js +39 -0
- package/dist/server/src/lib/skills/compatibility-matrix.js +65 -0
- package/dist/server/src/lib/skills/receipt-owned-paths.js +118 -0
- package/dist/server/src/lib/tmux/tmux.js +73 -2
- package/dist/server/src/lib/verification/env-clean-gate.js +281 -10
- package/dist/server/src/lib/verification/gate-runner.js +29 -2
- package/dist/server/src/lib/verification/scope-gate.js +58 -4
- package/dist/server/src/types/cli-tool-contracts.js +10 -2
- package/dist/types/cli-tool-contracts.d.ts +16 -5
- package/dist/types/cli-tool-contracts.d.ts.map +1 -1
- package/dist/types/cli-tool-contracts.js +10 -2
- package/docs/en/architecture.md +722 -0
- package/docs/en/user-guide/agents-guide.md +306 -0
- package/docs/en/user-guide/cli-setup-guide.md +676 -0
- package/docs/en/user-guide/cmate-schedules-guide.md +388 -0
- package/docs/en/user-guide/commands-guide.md +467 -0
- package/docs/en/user-guide/quick-start.md +231 -0
- package/docs/en/user-guide/webapp-guide.md +1020 -0
- package/docs/en/user-guide/workflow-examples.md +463 -0
- package/package.json +19 -7
- package/release-notes/0.43.0.json +130 -0
- package/release-notes/0.44.0.json +82 -0
- package/scripts/hooks/cmate-agent-event.sh +14 -0
- package/scripts/opencode-v2/launch.sh +226 -0
- package/.next/server/chunks/1990.js +0 -103
- package/.next/server/chunks/3707.js +0 -15
- package/.next/server/chunks/4443.js +0 -3
- package/.next/server/chunks/5164.js +0 -1
- package/.next/server/chunks/5742.js +0 -1
- package/.next/server/chunks/7004.js +0 -1
- package/.next/server/chunks/8673.js +0 -14
- package/.next/static/chunks/2039-117a361f795ddc4b.js +0 -1
- package/.next/static/chunks/2053-611dd27d42721b79.js +0 -1
- package/.next/static/chunks/3778-56f41fc2cecb8c43.js +0 -1
- package/.next/static/chunks/5449-550bd273dccc3ae4.js +0 -1
- package/.next/static/chunks/7705-2a2936551b0cf9a3.js +0 -1
- package/.next/static/chunks/8165-934ee7ff3b4ddfd4.js +0 -1
- package/.next/static/chunks/app/review/page-30616daa1dc595c2.js +0 -1
- package/.next/static/chunks/app/sessions/page-1a8ba152bbcb9efb.js +0 -1
- package/.next/static/chunks/app/skills/[skillId]/page-ab7e432b69fccb3b.js +0 -1
- package/.next/static/chunks/app/skills/page-56b4fa11223e0cbd.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/page-59f5337e031518c6.js +0 -1
- package/.next/static/css/b3f433d52b8ed5c8.css +0 -1
- /package/.next/static/{MXZXkcFAnpELZnxxHB4iJ → wu7SUiHTirFcrpo5teyZ3}/_buildManifest.js +0 -0
- /package/.next/static/{MXZXkcFAnpELZnxxHB4iJ → wu7SUiHTirFcrpo5teyZ3}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,676 @@
|
|
|
1
|
+
[日本語版](../../user-guide/cli-setup-guide.md)
|
|
2
|
+
|
|
3
|
+
# CommandMate CLI Setup Guide
|
|
4
|
+
|
|
5
|
+
This guide explains how to install and get started with CommandMate via npm.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Table of Contents
|
|
10
|
+
|
|
11
|
+
1. [Prerequisites](#prerequisites)
|
|
12
|
+
2. [Installation](#installation)
|
|
13
|
+
3. [Initial Setup](#initial-setup)
|
|
14
|
+
4. [Starting and Stopping the Server](#starting-and-stopping-the-server)
|
|
15
|
+
5. [CLI Command Reference](#cli-command-reference)
|
|
16
|
+
6. [Troubleshooting](#troubleshooting)
|
|
17
|
+
7. [Upgrading](#upgrading)
|
|
18
|
+
8. [Uninstalling](#uninstalling)
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Prerequisites
|
|
23
|
+
|
|
24
|
+
The following tools are required to use CommandMate.
|
|
25
|
+
|
|
26
|
+
| Tool | Version | Required | Check Command |
|
|
27
|
+
|------|---------|----------|---------------|
|
|
28
|
+
| Node.js | v22+ | Yes | `node -v` |
|
|
29
|
+
| npm | - | Yes | `npm -v` |
|
|
30
|
+
| Git | - | Yes | `git --version` |
|
|
31
|
+
| tmux | - | Yes | `tmux -V` |
|
|
32
|
+
| gh CLI | - | Optional | `gh --version` |
|
|
33
|
+
| Claude Code | - | Optional | `claude --version` |
|
|
34
|
+
| Codex CLI | - | Optional | `codex --version` |
|
|
35
|
+
| Gemini CLI | - | Optional | `gemini --version` |
|
|
36
|
+
| GitHub Copilot CLI | - | Optional | `copilot --version` |
|
|
37
|
+
| OpenCode | - | Optional | `opencode --version` |
|
|
38
|
+
| Antigravity CLI | - | Optional | `agy --version` |
|
|
39
|
+
| Command Code CLI | - | Optional | `commandcode --version` |
|
|
40
|
+
|
|
41
|
+
Every agent CLI is optional. CommandMate starts with none of them installed, but a
|
|
42
|
+
worktree cannot start a session for an agent whose CLI is missing.
|
|
43
|
+
`commandmate init` reports a version (or "not found") for every row above.
|
|
44
|
+
|
|
45
|
+
> **Note**: `vibe-local` is a seat for a local script driving an Ollama model.
|
|
46
|
+
> There is no published artifact to check, so `init` does not check for one.
|
|
47
|
+
|
|
48
|
+
### Checking Prerequisites
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# Check all dependencies
|
|
52
|
+
node -v && npm -v && git --version && tmux -V
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
### Installing Each Tool
|
|
56
|
+
|
|
57
|
+
#### macOS
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
# Using Homebrew
|
|
61
|
+
brew install node git tmux
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
#### Ubuntu/Debian
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
sudo apt update
|
|
68
|
+
sudo apt install nodejs npm git tmux
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
#### Agent CLIs
|
|
72
|
+
|
|
73
|
+
Install only the agents you intend to use — one line per agent.
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
npm install -g @anthropic-ai/claude-code # Claude Code (claude)
|
|
77
|
+
npm install -g @openai/codex # Codex CLI (codex)
|
|
78
|
+
npm install -g @google/gemini-cli # Gemini CLI (gemini)
|
|
79
|
+
npm install -g opencode-ai # OpenCode (opencode)
|
|
80
|
+
npm install -g @opencode/cli # OpenCode V2 (opencode2)
|
|
81
|
+
npm install -g command-code # Command Code CLI (commandcode)
|
|
82
|
+
brew install copilot-cli # GitHub Copilot CLI (copilot)
|
|
83
|
+
# or: npm i -g @github/copilot
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
The Antigravity CLI (`agy`) is not published on npm. See the
|
|
87
|
+
[official documentation](https://antigravity.google/docs/cli/reference) for how to get it.
|
|
88
|
+
|
|
89
|
+
> **Note**: The `command-code` package installs four executables — `cmd`, `cmdc`,
|
|
90
|
+
> `command-code` and `commandcode`. CommandMate launches `commandcode`, because
|
|
91
|
+
> `cmd` collides with the Windows shell.
|
|
92
|
+
|
|
93
|
+
#### OpenCode (1.x) and OpenCode V2 side by side
|
|
94
|
+
|
|
95
|
+
What OpenCode V2 can do, how it differs from 1.x and what it cannot do yet are in the [OpenCode V2 guide](./opencode-v2.md).
|
|
96
|
+
|
|
97
|
+
OpenCode V2 (the `OpenCode V2` agent) is installed with `npm install -g @opencode/cli`. That package
|
|
98
|
+
registers **two** executables, `opencode2` **and `opencode`**. So installing V2 puts a second `opencode`
|
|
99
|
+
on `PATH` next to OpenCode 1.x's (`opencode-ai`, or the `~/.opencode/bin` installer), and which one runs
|
|
100
|
+
is decided by nothing but the order of `PATH`.
|
|
101
|
+
|
|
102
|
+
CommandMate tells them apart by what `--version` prints, not by the name.
|
|
103
|
+
|
|
104
|
+
| Agent | Counted as installed when | Launched with |
|
|
105
|
+
|---|---|---|
|
|
106
|
+
| OpenCode | an `opencode` on `PATH` answers `--version` with `1.x` (e.g. `1.18.33`) | its absolute path |
|
|
107
|
+
| OpenCode V2 | `opencode2`; failing that, an `opencode` that answers `opencode v2.x` | its absolute path |
|
|
108
|
+
|
|
109
|
+
When `opencode` points only at V2, OpenCode counts as not installed, and starting it says why (that
|
|
110
|
+
`opencode` is OpenCode V2). When V2 is installed under the `opencode` name only, OpenCode V2 cannot use
|
|
111
|
+
its wrapper (which starts `opencode2` by name) and launches with `--standalone`, without structured events.
|
|
112
|
+
|
|
113
|
+
**V2 self-update**: in the OpenCode V2 sessions CommandMate starts, V2's own update check is turned off
|
|
114
|
+
(`OPENCODE_DISABLE_AUTOUPDATE=1` and `COREPACK_ENABLE_AUTO_PIN=0`). On start V2 checks for updates by
|
|
115
|
+
running `pnpm` / `yarn` and the like in the directory it was started from, and where those are corepack
|
|
116
|
+
shims they write a `"packageManager"` field into the project's `package.json`. Update V2 with
|
|
117
|
+
`npm install -g @opencode/cli`.
|
|
118
|
+
|
|
119
|
+
**Shared data**: OpenCode 1.x and V2 use the same `~/.local/share/opencode/opencode.db`. V2 rebuilds
|
|
120
|
+
tables in it, so after V2 has run, OpenCode 1.x can fail to start with `no such column: …`. CommandMate
|
|
121
|
+
then reads opencode's log (`~/.local/share/opencode/log/opencode.log`) and shows that cause as the start
|
|
122
|
+
error. When both are installed, the "Default agents for new branches" card on the More screen also shows
|
|
123
|
+
a one-line notice. This is opencode's problem and CommandMate cannot repair the database. Either:
|
|
124
|
+
|
|
125
|
+
- **Use one of them.** For V2 only, uninstall OpenCode 1.x; for 1.x only, remove V2 with
|
|
126
|
+
`npm uninstall -g @opencode/cli`.
|
|
127
|
+
- **Give OpenCode 1.x its own data directory.** OpenCode 1.x keeps its data under `XDG_DATA_HOME`, so put
|
|
128
|
+
a wrapper named `opencode` early on `PATH` that runs the 1.x binary with a different one (1.x's login
|
|
129
|
+
moves with it, so log in again in 1.x):
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
#!/bin/sh
|
|
133
|
+
# e.g. ~/bin/opencode, with ~/bin first on PATH
|
|
134
|
+
XDG_DATA_HOME="$HOME/.local/share/opencode-v1" exec "$HOME/.opencode/bin/opencode" "$@"
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
CommandMate asks the wrapper for `--version` too; it answers `1.x`, so it is launched as OpenCode.
|
|
138
|
+
|
|
139
|
+
Starting an agent that is not installed answers with both facts — that it is
|
|
140
|
+
missing, and **how to install it** — in one sentence. For example:
|
|
141
|
+
|
|
142
|
+
```text
|
|
143
|
+
Command Code CLI (commandcode) is not installed or not in PATH. Install with: npm install -g command-code
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
> **Note**: Native Windows is not supported because CommandMate depends on tmux. On Windows, run CommandMate inside WSL2 — see the [WSL2 Setup Guide](./wsl2-setup.md).
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## Installation
|
|
151
|
+
|
|
152
|
+
Install globally using npm.
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
npm install -g commandmate
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Verify the installation:
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
commandmate --version
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
### Trying it first with `npx`
|
|
165
|
+
|
|
166
|
+
```bash
|
|
167
|
+
npx commandmate@latest
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
Always write `npx commandmate@latest`, not bare `npx commandmate`. If CommandMate is already
|
|
171
|
+
installed globally, bare `npx commandmate` runs that existing binary without ever checking the
|
|
172
|
+
registry, so you silently keep running an old version. `@latest` forces npx to resolve the newest
|
|
173
|
+
release. This only affects `npx` — `npm install -g commandmate` always resolves from the registry.
|
|
174
|
+
|
|
175
|
+
For anything beyond a first look, prefer the global install. `npx` unpacks CommandMate into the npm
|
|
176
|
+
cache, and `commandmate start --daemon` runs the background server out of that cache directory — a
|
|
177
|
+
later `npx` run or a cache clean can delete it out from under the running server.
|
|
178
|
+
|
|
179
|
+
Running `commandmate` with no arguments walks you through the whole first run: it checks
|
|
180
|
+
your dependencies, asks a few setup questions on first use, starts the server in the
|
|
181
|
+
background, waits for it to come up, and opens the UI in your browser.
|
|
182
|
+
Run it again later and it skips straight to opening the UI (or tells you the server is
|
|
183
|
+
already running).
|
|
184
|
+
|
|
185
|
+
- Already have a `.env`? The setup questions are skipped.
|
|
186
|
+
- Don't want the browser to open? Use `commandmate --no-open` (also skipped automatically
|
|
187
|
+
on CI and headless sessions).
|
|
188
|
+
- Windows: CommandMate depends on tmux, so it runs on Windows via WSL2 (native Windows is not
|
|
189
|
+
supported). See the [WSL2 Setup Guide](./wsl2-setup.md).
|
|
190
|
+
|
|
191
|
+
### Developer setup (from source)
|
|
192
|
+
|
|
193
|
+
For contributors or those building a development environment:
|
|
194
|
+
|
|
195
|
+
```bash
|
|
196
|
+
git clone https://github.com/Kewton/CommandMate.git
|
|
197
|
+
cd CommandMate
|
|
198
|
+
./scripts/setup.sh # Auto-runs dependency check, env setup, build, and launch
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
Manual setup (for customization):
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
git clone https://github.com/Kewton/CommandMate.git
|
|
205
|
+
cd CommandMate
|
|
206
|
+
./scripts/preflight-check.sh # Dependency check
|
|
207
|
+
npm install
|
|
208
|
+
./scripts/setup-env.sh # Interactive .env generation
|
|
209
|
+
npm run db:init
|
|
210
|
+
npm run build
|
|
211
|
+
npm start
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
> **Note**: `./scripts/*` scripts are only available in the development environment. For global
|
|
215
|
+
> installs (`npm install -g`), use the `commandmate` CLI.
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Initial Setup
|
|
220
|
+
|
|
221
|
+
### Interactive Mode (recommended)
|
|
222
|
+
|
|
223
|
+
```bash
|
|
224
|
+
commandmate init
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
The interactive setup configures:
|
|
228
|
+
- Worktree root directory
|
|
229
|
+
- Server port (default: 3000)
|
|
230
|
+
- External access permission (for mobile access)
|
|
231
|
+
- Authentication token (auto-generated when external access is enabled)
|
|
232
|
+
|
|
233
|
+
### Non-interactive Mode
|
|
234
|
+
|
|
235
|
+
To set up with default values:
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
commandmate init --defaults
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
### Overwriting Existing Configuration
|
|
242
|
+
|
|
243
|
+
To overwrite existing settings:
|
|
244
|
+
|
|
245
|
+
```bash
|
|
246
|
+
commandmate init --force
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
## Starting and Stopping the Server
|
|
252
|
+
|
|
253
|
+
### Starting the Server
|
|
254
|
+
|
|
255
|
+
#### Background Start (recommended)
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
commandmate start --daemon
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
#### Foreground Start
|
|
262
|
+
|
|
263
|
+
```bash
|
|
264
|
+
commandmate start
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
#### Development Mode
|
|
268
|
+
|
|
269
|
+
```bash
|
|
270
|
+
commandmate start --dev
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
#### Start on a Specific Port
|
|
274
|
+
|
|
275
|
+
```bash
|
|
276
|
+
commandmate start --port 3001
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
### Checking Server Status
|
|
280
|
+
|
|
281
|
+
```bash
|
|
282
|
+
commandmate status # Main server status
|
|
283
|
+
commandmate status --all # All servers (main + worktrees)
|
|
284
|
+
commandmate status --issue 135 # Worktree server for Issue #135
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### Stopping the Server
|
|
288
|
+
|
|
289
|
+
```bash
|
|
290
|
+
commandmate stop # Stop the main server
|
|
291
|
+
commandmate stop --issue 135 # Stop the worktree server for Issue #135
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
#### Force Stop
|
|
295
|
+
|
|
296
|
+
```bash
|
|
297
|
+
commandmate stop --force
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
### Accessing via Browser
|
|
301
|
+
|
|
302
|
+
After starting the server, open your browser at:
|
|
303
|
+
|
|
304
|
+
```
|
|
305
|
+
http://127.0.0.1:3000
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
> **Port change**: Use the port specified with the `--port` option.
|
|
309
|
+
|
|
310
|
+
> **`127.0.0.1`, not `localhost`**: CommandMate binds `127.0.0.1` by default (`CM_BIND`).
|
|
311
|
+
> On macOS and elsewhere `localhost` resolves to `::1` (IPv6) first, which CommandMate does
|
|
312
|
+
> not listen on — if another process holds `::1:3000`, your browser silently talks to it
|
|
313
|
+
> instead. The startup self-check reports this in the server log and in `commandmate status`.
|
|
314
|
+
|
|
315
|
+
---
|
|
316
|
+
|
|
317
|
+
## CLI Command Reference
|
|
318
|
+
|
|
319
|
+
### commandmate --version
|
|
320
|
+
|
|
321
|
+
Display the version.
|
|
322
|
+
|
|
323
|
+
```bash
|
|
324
|
+
commandmate --version
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
### commandmate init
|
|
328
|
+
|
|
329
|
+
Perform initial setup.
|
|
330
|
+
|
|
331
|
+
```bash
|
|
332
|
+
commandmate init [options]
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
| Option | Description |
|
|
336
|
+
|--------|-------------|
|
|
337
|
+
| `--defaults` | Set up non-interactively with default values |
|
|
338
|
+
| `--force` | Overwrite existing settings |
|
|
339
|
+
|
|
340
|
+
### commandmate start
|
|
341
|
+
|
|
342
|
+
Start the server.
|
|
343
|
+
|
|
344
|
+
```bash
|
|
345
|
+
commandmate start [options]
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
| Option | Description |
|
|
349
|
+
|--------|-------------|
|
|
350
|
+
| `--daemon` | Start in background |
|
|
351
|
+
| `--dev` | Start in development mode |
|
|
352
|
+
| `-p, --port <number>` | Specify port (default: 3000) |
|
|
353
|
+
| `-i, --issue <number>` | Start a server for a specific issue worktree (Issue #136) |
|
|
354
|
+
| `--auto-port` | Automatically allocate a port for the worktree server (Issue #136) |
|
|
355
|
+
| `--auth` | Enable token authentication (Issue #331) |
|
|
356
|
+
| `--auth-expire <duration>` | Token expiration (e.g., `24h`, `7d`, `90m`) |
|
|
357
|
+
| `--https` | Enable HTTPS |
|
|
358
|
+
| `--cert <path>` | Path to TLS certificate file |
|
|
359
|
+
| `--key <path>` | Path to TLS private key file |
|
|
360
|
+
| `--allow-http` | Suppress the HTTPS warning when using `--auth` without certificates |
|
|
361
|
+
| `--allowed-ips <cidrs>` | Allowed IP addresses/CIDR ranges (comma-separated, Issue #331) |
|
|
362
|
+
| `--trust-proxy` | Trust the `X-Forwarded-For` header from a reverse proxy |
|
|
363
|
+
|
|
364
|
+
#### Parallel Worktree Development (Issue #136)
|
|
365
|
+
|
|
366
|
+
Run an independent server per worktree.
|
|
367
|
+
|
|
368
|
+
```bash
|
|
369
|
+
commandmate start --issue 135 --auto-port # Start a server for Issue #135 (auto port)
|
|
370
|
+
commandmate start --issue 135 --port 3135 # Start on a specific port
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
#### Authentication / External Access (Issue #331)
|
|
374
|
+
|
|
375
|
+
```bash
|
|
376
|
+
commandmate start --auth --auth-expire 24h # Token auth (24h expiry)
|
|
377
|
+
commandmate start --auth --allowed-ips 192.168.1.0/24 # With IP restriction
|
|
378
|
+
commandmate start --https --cert ./cert.pem --key ./key.pem # HTTPS
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
### commandmate stop
|
|
382
|
+
|
|
383
|
+
Stop the server.
|
|
384
|
+
|
|
385
|
+
```bash
|
|
386
|
+
commandmate stop [options]
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
| Option | Description |
|
|
390
|
+
|--------|-------------|
|
|
391
|
+
| `-f, --force` | Force stop (SIGKILL) |
|
|
392
|
+
| `-i, --issue <number>` | Stop the server for a specific issue worktree (Issue #136) |
|
|
393
|
+
|
|
394
|
+
### commandmate status
|
|
395
|
+
|
|
396
|
+
Display server status.
|
|
397
|
+
|
|
398
|
+
```bash
|
|
399
|
+
commandmate status [options]
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
| Option | Description |
|
|
403
|
+
|--------|-------------|
|
|
404
|
+
| `-i, --issue <number>` | Show status for a specific issue worktree (Issue #136) |
|
|
405
|
+
| `-a, --all` | Show status for all servers (main + worktrees) |
|
|
406
|
+
|
|
407
|
+
### commandmate update
|
|
408
|
+
|
|
409
|
+
Update CommandMate to the latest version (stop -> `npm install -g commandmate@latest` -> restart).
|
|
410
|
+
|
|
411
|
+
```bash
|
|
412
|
+
commandmate update [options]
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
| Option | Description |
|
|
416
|
+
|--------|-------------|
|
|
417
|
+
| `--check` | Only check for updates (no install, stop or restart) |
|
|
418
|
+
| `-y, --yes` | Skip the confirmation prompt (required for non-interactive use) |
|
|
419
|
+
|
|
420
|
+
See [Upgrading](#upgrading) for details and caveats.
|
|
421
|
+
|
|
422
|
+
### commandmate issue
|
|
423
|
+
|
|
424
|
+
GitHub Issue management command (requires gh CLI).
|
|
425
|
+
|
|
426
|
+
```bash
|
|
427
|
+
commandmate issue create [options]
|
|
428
|
+
commandmate issue search <query>
|
|
429
|
+
commandmate issue list
|
|
430
|
+
```
|
|
431
|
+
|
|
432
|
+
| Subcommand | Description |
|
|
433
|
+
|------------|-------------|
|
|
434
|
+
| `create` | Create a new Issue |
|
|
435
|
+
| `search <query>` | Search Issues |
|
|
436
|
+
| `list` | List Issues |
|
|
437
|
+
|
|
438
|
+
#### create options
|
|
439
|
+
|
|
440
|
+
| Option | Description |
|
|
441
|
+
|--------|-------------|
|
|
442
|
+
| `--title <title>` | Issue title |
|
|
443
|
+
| `--body <body>` | Issue body |
|
|
444
|
+
| `--bug` | Use Bug Report template |
|
|
445
|
+
| `--feature` | Use Feature Request template |
|
|
446
|
+
| `--question` | Use Question template |
|
|
447
|
+
| `--labels <labels>` | Labels (comma-separated) |
|
|
448
|
+
|
|
449
|
+
### commandmate docs
|
|
450
|
+
|
|
451
|
+
Display CommandMate documentation.
|
|
452
|
+
|
|
453
|
+
```bash
|
|
454
|
+
commandmate docs [options]
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
| Option | Description |
|
|
458
|
+
|--------|-------------|
|
|
459
|
+
| `--section <name>` | Display specified section content |
|
|
460
|
+
| `--search <query>` | Search within documentation |
|
|
461
|
+
| `--all` | List all available sections |
|
|
462
|
+
|
|
463
|
+
---
|
|
464
|
+
|
|
465
|
+
## Troubleshooting
|
|
466
|
+
|
|
467
|
+
Sessions that look stuck, a bare `tmux attach` that looks empty, phone access and other common
|
|
468
|
+
questions are collected in [Troubleshooting & FAQ](./troubleshooting.md).
|
|
469
|
+
|
|
470
|
+
### command not found Error
|
|
471
|
+
|
|
472
|
+
If you see `commandmate: command not found`:
|
|
473
|
+
|
|
474
|
+
```bash
|
|
475
|
+
# Check npm global bin path
|
|
476
|
+
npm config get prefix
|
|
477
|
+
|
|
478
|
+
# Add to PATH (bash/zsh)
|
|
479
|
+
export PATH="$(npm config get prefix)/bin:$PATH"
|
|
480
|
+
|
|
481
|
+
# Persist (~/.bashrc or ~/.zshrc)
|
|
482
|
+
echo 'export PATH="$(npm config get prefix)/bin:$PATH"' >> ~/.zshrc
|
|
483
|
+
source ~/.zshrc
|
|
484
|
+
```
|
|
485
|
+
|
|
486
|
+
### Permission Error (EACCES)
|
|
487
|
+
|
|
488
|
+
If you get a permission error with `npm install -g`:
|
|
489
|
+
|
|
490
|
+
#### Method 1: Change npm prefix (recommended)
|
|
491
|
+
|
|
492
|
+
```bash
|
|
493
|
+
mkdir -p ~/.npm-global
|
|
494
|
+
npm config set prefix '~/.npm-global'
|
|
495
|
+
export PATH=~/.npm-global/bin:$PATH
|
|
496
|
+
|
|
497
|
+
# Persist
|
|
498
|
+
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.zshrc
|
|
499
|
+
source ~/.zshrc
|
|
500
|
+
|
|
501
|
+
# Reinstall
|
|
502
|
+
npm install -g commandmate
|
|
503
|
+
```
|
|
504
|
+
|
|
505
|
+
#### Method 2: Use sudo (not recommended)
|
|
506
|
+
|
|
507
|
+
```bash
|
|
508
|
+
sudo npm install -g commandmate
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
### Port Conflict
|
|
512
|
+
|
|
513
|
+
If you see `Error: Port 3000 is already in use`:
|
|
514
|
+
|
|
515
|
+
```bash
|
|
516
|
+
# Start on a different port
|
|
517
|
+
commandmate start --port 3001
|
|
518
|
+
|
|
519
|
+
# Or check and stop the process listening on the port
|
|
520
|
+
# (without -sTCP:LISTEN this also stops clients merely connected to it, such as your browser)
|
|
521
|
+
lsof -nP -iTCP:3000 -sTCP:LISTEN
|
|
522
|
+
lsof -nP -iTCP:3000 -sTCP:LISTEN -t | xargs kill -9
|
|
523
|
+
```
|
|
524
|
+
|
|
525
|
+
### Server Won't Start
|
|
526
|
+
|
|
527
|
+
```bash
|
|
528
|
+
# Check status
|
|
529
|
+
commandmate status
|
|
530
|
+
|
|
531
|
+
# Force stop and restart
|
|
532
|
+
commandmate stop --force
|
|
533
|
+
commandmate start --daemon
|
|
534
|
+
|
|
535
|
+
# Check logs (in config directory)
|
|
536
|
+
tail -f ~/.commandmate/logs/server.log
|
|
537
|
+
```
|
|
538
|
+
|
|
539
|
+
### Dependency Errors
|
|
540
|
+
|
|
541
|
+
```bash
|
|
542
|
+
# tmux not found
|
|
543
|
+
brew install tmux # macOS
|
|
544
|
+
sudo apt install tmux # Ubuntu/Debian
|
|
545
|
+
|
|
546
|
+
# Node.js version too old
|
|
547
|
+
node -v # v22+ required
|
|
548
|
+
```
|
|
549
|
+
|
|
550
|
+
### Database Errors
|
|
551
|
+
|
|
552
|
+
```bash
|
|
553
|
+
# Reset database (data will be deleted)
|
|
554
|
+
rm -rf ~/.commandmate/data
|
|
555
|
+
commandmate init --force
|
|
556
|
+
```
|
|
557
|
+
|
|
558
|
+
---
|
|
559
|
+
|
|
560
|
+
## Upgrading
|
|
561
|
+
|
|
562
|
+
If CommandMate is installed globally (`npm install -g commandmate`), a single `commandmate update` upgrades it.
|
|
563
|
+
|
|
564
|
+
```bash
|
|
565
|
+
commandmate update
|
|
566
|
+
```
|
|
567
|
+
|
|
568
|
+
In a global install, it runs the following steps:
|
|
569
|
+
|
|
570
|
+
1. Query the npm registry for the latest version and compare it with the current one
|
|
571
|
+
2. Only when an update exists, print the caveats and ask for confirmation (defaults to no)
|
|
572
|
+
3. Stop the server if it is running
|
|
573
|
+
4. Run `npm install -g commandmate@latest`
|
|
574
|
+
5. Verify that the installed version matches the latest version
|
|
575
|
+
6. Restart the server it stopped and wait for it to respond (up to 30 seconds)
|
|
576
|
+
|
|
577
|
+
If the server was not running beforehand, it is not started for you.
|
|
578
|
+
If you are already up to date, if your local version is newer, or if either version is a prerelease, the update is skipped.
|
|
579
|
+
|
|
580
|
+
### Checking for Updates Only
|
|
581
|
+
|
|
582
|
+
`--check` prints the versions and changes nothing.
|
|
583
|
+
|
|
584
|
+
```bash
|
|
585
|
+
commandmate update --check
|
|
586
|
+
```
|
|
587
|
+
|
|
588
|
+
```
|
|
589
|
+
Current: v0.9.0
|
|
590
|
+
Latest: v0.10.0
|
|
591
|
+
Update available: yes
|
|
592
|
+
```
|
|
593
|
+
|
|
594
|
+
### Non-interactive Use
|
|
595
|
+
|
|
596
|
+
Use `--yes` to skip the confirmation prompt.
|
|
597
|
+
|
|
598
|
+
```bash
|
|
599
|
+
commandmate update --yes
|
|
600
|
+
```
|
|
601
|
+
|
|
602
|
+
Without `--yes` in an environment that has no TTY (CI, scripts), nothing is updated and the command exits with code `2`.
|
|
603
|
+
|
|
604
|
+
### Caveats
|
|
605
|
+
|
|
606
|
+
- **Startup options are not restored**: after the restart the server only uses the settings in `.env`. If you started it with `--auth`, `--auth-expire`, `--cert`, `--key`, `--allow-http`, `--allowed-ips`, `--trust-proxy`, `--port` or `--dev`, start it again manually after the update (`--auth` generates a new token on every start, so existing tokens are invalidated).
|
|
607
|
+
- **Worktree servers (`--issue`) are not stopped or restarted for you**: `npm install -g` replaces the package directory (`dist/`, `.next/`), so a running worktree server may crash. Stop them **before** updating with `commandmate stop --issue <number>` and restart them afterwards with `commandmate start --issue <number>`. The command warns you when it detects running worktree servers.
|
|
608
|
+
- **Permission errors (EACCES)**: do not re-run with `sudo`. Fix the npm global directory permissions as described in [Permission Error (EACCES)](#permission-error-eacces), then run `commandmate update` again.
|
|
609
|
+
- **When authentication is enabled**: the post-restart check degrades to "the server responds" and finishes with a warning instead of a strict readiness check. Set `CM_AUTH_TOKEN` for the strict check (IP restrictions and self-signed certificates degrade it the same way).
|
|
610
|
+
- **If the update fails**: the command prints a rollback command for the version you had before (`npm install -g commandmate@<previous-version>`). If the server cannot be stopped, the update aborts without changing anything.
|
|
611
|
+
|
|
612
|
+
### Upgrading Manually (fallback)
|
|
613
|
+
|
|
614
|
+
If you cannot use `commandmate update`, upgrade manually as before.
|
|
615
|
+
|
|
616
|
+
```bash
|
|
617
|
+
commandmate stop
|
|
618
|
+
npm install -g commandmate@latest
|
|
619
|
+
commandmate start --daemon
|
|
620
|
+
```
|
|
621
|
+
|
|
622
|
+
In a git clone (development) environment, `commandmate update` does not update anything; it prints these steps and exits.
|
|
623
|
+
|
|
624
|
+
```bash
|
|
625
|
+
git pull
|
|
626
|
+
npm install
|
|
627
|
+
npm run build:all
|
|
628
|
+
commandmate stop && commandmate start --daemon # or: npm start
|
|
629
|
+
```
|
|
630
|
+
|
|
631
|
+
> Run `npm run build:all`, not `npm run build`. The latter only builds Next.js and leaves the server (`dist/server`) and the CLI (`dist/cli`) stale.
|
|
632
|
+
|
|
633
|
+
After upgrading, verify the version:
|
|
634
|
+
|
|
635
|
+
```bash
|
|
636
|
+
commandmate --version
|
|
637
|
+
```
|
|
638
|
+
|
|
639
|
+
---
|
|
640
|
+
|
|
641
|
+
## Uninstalling
|
|
642
|
+
|
|
643
|
+
### 1. Stop the Server
|
|
644
|
+
|
|
645
|
+
```bash
|
|
646
|
+
commandmate stop
|
|
647
|
+
```
|
|
648
|
+
|
|
649
|
+
### 2. Uninstall the Package
|
|
650
|
+
|
|
651
|
+
```bash
|
|
652
|
+
npm uninstall -g commandmate
|
|
653
|
+
```
|
|
654
|
+
|
|
655
|
+
### 3. Remove Configuration Files (optional)
|
|
656
|
+
|
|
657
|
+
```bash
|
|
658
|
+
# Completely remove configuration and data
|
|
659
|
+
rm -rf ~/.commandmate
|
|
660
|
+
```
|
|
661
|
+
|
|
662
|
+
---
|
|
663
|
+
|
|
664
|
+
## Next Steps
|
|
665
|
+
|
|
666
|
+
- [Web App Guide](./webapp-guide.md) - Basic browser operations
|
|
667
|
+
- [Quick Start Guide](./quick-start.md) - The minimum contract-and-verify loop, then a five-minute flow
|
|
668
|
+
- [Deployment Guide](../../DEPLOYMENT.md) - Production environment deployment
|
|
669
|
+
|
|
670
|
+
---
|
|
671
|
+
|
|
672
|
+
## Related Documentation
|
|
673
|
+
|
|
674
|
+
- [README](../../../README.md) - Project overview
|
|
675
|
+
- [Architecture](../../architecture.md) - System design
|
|
676
|
+
- [Trust & Safety](../../TRUST_AND_SAFETY.md) - Security and permissions
|