commandmate 0.3.1 → 0.3.3
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 +11 -11
- package/.next/app-path-routes-manifest.json +1 -1
- package/.next/build-manifest.json +4 -4
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/1.pack +0 -0
- package/.next/cache/webpack/client-production/2.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack.old +0 -0
- package/.next/cache/webpack/edge-server-production/0.pack +0 -0
- package/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +1 -1
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/app/update-check/route.js +1 -1
- package/.next/server/app/api/external-apps/[id]/health/route.js +1 -1
- package/.next/server/app/api/external-apps/[id]/route.js +1 -1
- package/.next/server/app/api/external-apps/route.js +1 -1
- package/.next/server/app/api/hooks/claude-done/route.js +1 -1
- package/.next/server/app/api/ollama/models/route.js +1 -0
- package/.next/server/app/api/ollama/models/route.js.nft.json +1 -0
- package/.next/server/app/api/ollama/models.body +1 -0
- package/.next/server/app/api/ollama/models.meta +1 -0
- package/.next/server/app/api/repositories/clone/[jobId]/route.js +1 -1
- package/.next/server/app/api/repositories/clone/route.js +1 -1
- package/.next/server/app/api/repositories/excluded/route.js +7 -7
- package/.next/server/app/api/repositories/restore/route.js +3 -3
- package/.next/server/app/api/repositories/route.js +13 -11
- package/.next/server/app/api/repositories/route.js.nft.json +1 -1
- package/.next/server/app/api/repositories/scan/route.js +1 -1
- package/.next/server/app/api/repositories/sync/route.js +3 -3
- 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]/cli-tool/route.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]/execution-logs/[logId]/route.js +1 -0
- package/.next/server/app/api/worktrees/[id]/execution-logs/[logId]/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/[id]/execution-logs/route.js +9 -0
- package/.next/server/app/api/worktrees/[id]/execution-logs/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/[id]/files/[...path]/route.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]/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]/logs/[filename]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/logs/route.js +2 -2
- package/.next/server/app/api/worktrees/[id]/memos/[memoId]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/memos/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/messages/route.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]/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]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js +1 -0
- package/.next/server/app/api/worktrees/[id]/schedules/[scheduleId]/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/[id]/schedules/route.js +4 -0
- package/.next/server/app/api/worktrees/[id]/schedules/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/[id]/search/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/send/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/slash-commands/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/start-polling/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/start-polling/route.js.nft.json +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/[...path]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/tree/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/upload/[...path]/route.js +1 -1
- package/.next/server/app/api/worktrees/[id]/viewed/route.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/login/page.js.nft.json +1 -1
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/page.js +1 -1
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/proxy/[...path]/route.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 +8 -3
- 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.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 +10 -5
- package/.next/server/chunks/2314.js +1 -0
- package/.next/server/chunks/3860.js +1 -1
- package/.next/server/chunks/4559.js +1 -1
- package/.next/server/chunks/539.js +10 -10
- package/.next/server/chunks/5853.js +1 -1
- package/.next/server/chunks/6228.js +1 -0
- package/.next/server/chunks/7425.js +112 -37
- package/.next/server/chunks/7566.js +1 -1
- package/.next/server/chunks/8693.js +1 -1
- package/.next/server/chunks/9446.js +1 -0
- package/.next/server/functions-config-manifest.json +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-manifest.json +5 -5
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/8091-274bc0716106e7fc.js +1 -0
- package/.next/static/chunks/app/page-060057e02b841125.js +1 -0
- package/.next/static/chunks/app/worktrees/[id]/page-78580947c201d698.js +1 -0
- package/.next/static/chunks/{main-db79434ee4a6c931.js → main-2feda12a4d321111.js} +1 -1
- package/.next/static/css/e85de230ef5ddc40.css +3 -0
- package/.next/trace +5 -5
- package/.next/types/app/api/ollama/models/route.ts +343 -0
- package/.next/types/app/api/worktrees/[id]/execution-logs/[logId]/route.ts +343 -0
- package/.next/types/app/api/worktrees/[id]/execution-logs/route.ts +343 -0
- package/.next/types/app/api/worktrees/[id]/schedules/[scheduleId]/route.ts +343 -0
- package/.next/types/app/api/worktrees/[id]/schedules/route.ts +343 -0
- package/README.md +74 -76
- package/dist/cli/utils/docs-reader.d.ts.map +1 -1
- package/dist/cli/utils/docs-reader.js +1 -0
- package/dist/server/server.js +5 -0
- package/dist/server/src/config/cmate-constants.js +79 -0
- package/dist/server/src/config/schedule-config.js +60 -0
- package/dist/server/src/lib/auto-yes-manager.js +2 -2
- package/dist/server/src/lib/claude-executor.js +158 -0
- package/dist/server/src/lib/cli-patterns.js +73 -9
- package/dist/server/src/lib/cli-tools/gemini.js +81 -22
- package/dist/server/src/lib/cli-tools/manager.js +4 -2
- package/dist/server/src/lib/cli-tools/types.js +64 -2
- package/dist/server/src/lib/cli-tools/vibe-local.js +163 -0
- package/dist/server/src/lib/cmate-parser.js +262 -0
- package/dist/server/src/lib/db-instance.js +3 -0
- package/dist/server/src/lib/db-migrations.js +145 -2
- package/dist/server/src/lib/db.js +51 -1
- package/dist/server/src/lib/env-sanitizer.js +57 -0
- package/dist/server/src/lib/prompt-detector.js +4 -3
- package/dist/server/src/lib/response-poller.js +22 -11
- package/dist/server/src/lib/schedule-manager.js +401 -0
- package/dist/server/src/lib/selected-agents-validator.js +99 -0
- package/dist/server/src/types/cmate.js +6 -0
- package/dist/server/src/types/sidebar.js +9 -4
- package/package.json +2 -1
- package/.next/server/chunks/7536.js +0 -1
- package/.next/static/chunks/8091-925542bdfc843dce.js +0 -1
- package/.next/static/chunks/app/page-238b5a70d8c101e9.js +0 -1
- package/.next/static/chunks/app/worktrees/[id]/page-a556551ce5c69dec.js +0 -1
- package/.next/static/css/b9ea6a4fad17dc32.css +0 -3
- /package/.next/static/{hmAjbCPjxX_C0Os7rphI1 → O7EDFfAYQNe_HRbORxQAC}/_buildManifest.js +0 -0
- /package/.next/static/{hmAjbCPjxX_C0Os7rphI1 → O7EDFfAYQNe_HRbORxQAC}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/worktrees/[id]/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"80":{"*":{"id":"41868","name":"*","chunks":[],"async":false}},"4707":{"*":{"id":"79671","name":"*","chunks":[],"async":false}},"12846":{"*":{"id":"12994","name":"*","chunks":[],"async":false}},"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/worktrees/[id]/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"80":{"*":{"id":"41868","name":"*","chunks":[],"async":false}},"4707":{"*":{"id":"79671","name":"*","chunks":[],"async":false}},"12846":{"*":{"id":"12994","name":"*","chunks":[],"async":false}},"18828":{"*":{"id":"2108","name":"*","chunks":[],"async":false}},"19107":{"*":{"id":"96114","name":"*","chunks":[],"async":false}},"36423":{"*":{"id":"84759","name":"*","chunks":[],"async":false}},"38991":{"*":{"id":"24146","name":"*","chunks":[],"async":false}},"40991":{"*":{"id":"27247","name":"*","chunks":[],"async":false}},"41845":{"*":{"id":"37398","name":"*","chunks":[],"async":false}},"50653":{"*":{"id":"84442","name":"*","chunks":[],"async":false}},"61060":{"*":{"id":"9727","name":"*","chunks":[],"async":false}},"66677":{"*":{"id":"42106","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/app-router.js":{"id":12846,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/app-router.js":{"id":12846,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/client-page.js":{"id":19107,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/client-page.js":{"id":19107,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/error-boundary.js":{"id":61060,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":61060,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/layout-router.js":{"id":4707,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/layout-router.js":{"id":4707,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/not-found-boundary.js":{"id":80,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/not-found-boundary.js":{"id":80,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/render-from-template-context.js":{"id":36423,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":36423,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/globals.css":{"id":2778,"name":"*","chunks":["9234","static/chunks/9234-b0304101384ca079.js","8528","static/chunks/8528-4d554d3b94d4cf9b.js","3185","static/chunks/app/layout-9110f9a5e41c6bf4.js"],"async":false},"/home/runner/work/CommandMate/CommandMate/src/components/providers/AppProviders.tsx":{"id":18828,"name":"*","chunks":["9234","static/chunks/9234-b0304101384ca079.js","8528","static/chunks/8528-4d554d3b94d4cf9b.js","3185","static/chunks/app/layout-9110f9a5e41c6bf4.js"],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/login/page.tsx":{"id":38991,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/page.tsx":{"id":66677,"name":"*","chunks":["9234","static/chunks/9234-b0304101384ca079.js","216","static/chunks/216-f18f4a9d8b04a91e.js","2335","static/chunks/2335-98a211e00b94c7ac.js","8528","static/chunks/8528-4d554d3b94d4cf9b.js","8091","static/chunks/8091-274bc0716106e7fc.js","1931","static/chunks/app/page-060057e02b841125.js"],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/files/[...path]/page.tsx":{"id":50653,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/page.tsx":{"id":40991,"name":"*","chunks":["9234","static/chunks/9234-b0304101384ca079.js","216","static/chunks/216-f18f4a9d8b04a91e.js","1038","static/chunks/1038-3509435b68c0967e.js","2335","static/chunks/2335-98a211e00b94c7ac.js","9178","static/chunks/9178-88850a7c48deea07.js","8528","static/chunks/8528-4d554d3b94d4cf9b.js","8091","static/chunks/8091-274bc0716106e7fc.js","130","static/chunks/app/worktrees/%5Bid%5D/page-78580947c201d698.js"],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/terminal/page.tsx":{"id":41845,"name":"*","chunks":[],"async":false}},"entryCSSFiles":{"/home/runner/work/CommandMate/CommandMate/src/":[],"/home/runner/work/CommandMate/CommandMate/src/app/layout":["static/css/e85de230ef5ddc40.css"],"/home/runner/work/CommandMate/CommandMate/src/app/page":[],"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/page":["static/css/5eacd01f773eed7f.css"]}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/2683.js","../../../../chunks/3074.js","../../../../chunks/3294.js","../../../../chunks/3348.js","../../../../chunks/369.js","../../../../chunks/3860.js","../../../../chunks/4559.js","../../../../chunks/5795.js","../../../../chunks/5823.js","../../../../chunks/5853.js","../../../../chunks/6621.js","../../../../chunks/6837.js","../../../../chunks/7266.js","../../../../chunks/8705.js","../../../../chunks/8744.js","../../../../chunks/8948.js","../../../../chunks/9582.js","../../../../webpack-runtime.js","page_client-reference-manifest.js"]}
|
|
1
|
+
{"version":1,"files":["../../../../../../node_modules/next/dist/client/components/action-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/action-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/async-local-storage.js","../../../../../../node_modules/next/dist/client/components/request-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/request-async-storage.external.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage-instance.js","../../../../../../node_modules/next/dist/client/components/static-generation-async-storage.external.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/2314.js","../../../../chunks/2683.js","../../../../chunks/3074.js","../../../../chunks/3294.js","../../../../chunks/3348.js","../../../../chunks/369.js","../../../../chunks/3860.js","../../../../chunks/4559.js","../../../../chunks/5795.js","../../../../chunks/5823.js","../../../../chunks/5853.js","../../../../chunks/6228.js","../../../../chunks/6621.js","../../../../chunks/6837.js","../../../../chunks/7266.js","../../../../chunks/8705.js","../../../../chunks/8744.js","../../../../chunks/8948.js","../../../../chunks/9582.js","../../../../webpack-runtime.js","page_client-reference-manifest.js"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/worktrees/[id]/terminal/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"80":{"*":{"id":"41868","name":"*","chunks":[],"async":false}},"4707":{"*":{"id":"79671","name":"*","chunks":[],"async":false}},"12846":{"*":{"id":"12994","name":"*","chunks":[],"async":false}},"
|
|
1
|
+
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/worktrees/[id]/terminal/page"]={"moduleLoading":{"prefix":"/_next/","crossOrigin":null},"ssrModuleMapping":{"80":{"*":{"id":"41868","name":"*","chunks":[],"async":false}},"4707":{"*":{"id":"79671","name":"*","chunks":[],"async":false}},"12846":{"*":{"id":"12994","name":"*","chunks":[],"async":false}},"18828":{"*":{"id":"2108","name":"*","chunks":[],"async":false}},"19107":{"*":{"id":"96114","name":"*","chunks":[],"async":false}},"36423":{"*":{"id":"84759","name":"*","chunks":[],"async":false}},"38991":{"*":{"id":"24146","name":"*","chunks":[],"async":false}},"40991":{"*":{"id":"27247","name":"*","chunks":[],"async":false}},"41845":{"*":{"id":"37398","name":"*","chunks":[],"async":false}},"50653":{"*":{"id":"84442","name":"*","chunks":[],"async":false}},"61060":{"*":{"id":"9727","name":"*","chunks":[],"async":false}},"66677":{"*":{"id":"42106","name":"*","chunks":[],"async":false}}},"edgeSSRModuleMapping":{},"clientModules":{"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/app-router.js":{"id":12846,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/app-router.js":{"id":12846,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/client-page.js":{"id":19107,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/client-page.js":{"id":19107,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/error-boundary.js":{"id":61060,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/error-boundary.js":{"id":61060,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/layout-router.js":{"id":4707,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/layout-router.js":{"id":4707,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/not-found-boundary.js":{"id":80,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/not-found-boundary.js":{"id":80,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/client/components/render-from-template-context.js":{"id":36423,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":36423,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/globals.css":{"id":2778,"name":"*","chunks":["9234","static/chunks/9234-b0304101384ca079.js","8528","static/chunks/8528-4d554d3b94d4cf9b.js","3185","static/chunks/app/layout-9110f9a5e41c6bf4.js"],"async":false},"/home/runner/work/CommandMate/CommandMate/src/components/providers/AppProviders.tsx":{"id":18828,"name":"*","chunks":["9234","static/chunks/9234-b0304101384ca079.js","8528","static/chunks/8528-4d554d3b94d4cf9b.js","3185","static/chunks/app/layout-9110f9a5e41c6bf4.js"],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/login/page.tsx":{"id":38991,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/page.tsx":{"id":66677,"name":"*","chunks":["9234","static/chunks/9234-b0304101384ca079.js","216","static/chunks/216-f18f4a9d8b04a91e.js","2335","static/chunks/2335-98a211e00b94c7ac.js","8528","static/chunks/8528-4d554d3b94d4cf9b.js","8091","static/chunks/8091-274bc0716106e7fc.js","1931","static/chunks/app/page-060057e02b841125.js"],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/files/[...path]/page.tsx":{"id":50653,"name":"*","chunks":[],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/page.tsx":{"id":40991,"name":"*","chunks":["9234","static/chunks/9234-b0304101384ca079.js","216","static/chunks/216-f18f4a9d8b04a91e.js","1038","static/chunks/1038-3509435b68c0967e.js","2335","static/chunks/2335-98a211e00b94c7ac.js","9178","static/chunks/9178-88850a7c48deea07.js","8528","static/chunks/8528-4d554d3b94d4cf9b.js","8091","static/chunks/8091-274bc0716106e7fc.js","130","static/chunks/app/worktrees/%5Bid%5D/page-78580947c201d698.js"],"async":false},"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/terminal/page.tsx":{"id":41845,"name":"*","chunks":["9838","static/chunks/30d07d85-393352a92199f695.js","216","static/chunks/216-f18f4a9d8b04a91e.js","1224","static/chunks/app/worktrees/%5Bid%5D/terminal/page-5d85a7e508ce36d3.js"],"async":false}},"entryCSSFiles":{"/home/runner/work/CommandMate/CommandMate/src/":[],"/home/runner/work/CommandMate/CommandMate/src/app/layout":["static/css/e85de230ef5ddc40.css"],"/home/runner/work/CommandMate/CommandMate/src/app/page":[],"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/page":["static/css/5eacd01f773eed7f.css"],"/home/runner/work/CommandMate/CommandMate/src/app/worktrees/[id]/terminal/page":["static/css/85fa6dafca566008.css"]}}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
"/api/auth/login/route": "app/api/auth/login/route.js",
|
|
4
4
|
"/api/auth/logout/route": "app/api/auth/logout/route.js",
|
|
5
5
|
"/api/hooks/claude-done/route": "app/api/hooks/claude-done/route.js",
|
|
6
|
+
"/api/ollama/models/route": "app/api/ollama/models/route.js",
|
|
6
7
|
"/api/repositories/clone/[jobId]/route": "app/api/repositories/clone/[jobId]/route.js",
|
|
7
8
|
"/api/repositories/clone/route": "app/api/repositories/clone/route.js",
|
|
8
9
|
"/api/repositories/excluded/route": "app/api/repositories/excluded/route.js",
|
|
@@ -13,38 +14,42 @@
|
|
|
13
14
|
"/api/slash-commands/route": "app/api/slash-commands/route.js",
|
|
14
15
|
"/api/worktrees/[id]/capture/route": "app/api/worktrees/[id]/capture/route.js",
|
|
15
16
|
"/api/worktrees/[id]/cli-tool/route": "app/api/worktrees/[id]/cli-tool/route.js",
|
|
16
|
-
"/api/worktrees/[id]/auto-yes/route": "app/api/worktrees/[id]/auto-yes/route.js",
|
|
17
17
|
"/api/worktrees/[id]/current-output/route": "app/api/worktrees/[id]/current-output/route.js",
|
|
18
|
+
"/api/worktrees/[id]/execution-logs/[logId]/route": "app/api/worktrees/[id]/execution-logs/[logId]/route.js",
|
|
19
|
+
"/api/worktrees/[id]/auto-yes/route": "app/api/worktrees/[id]/auto-yes/route.js",
|
|
20
|
+
"/api/worktrees/[id]/execution-logs/route": "app/api/worktrees/[id]/execution-logs/route.js",
|
|
18
21
|
"/api/worktrees/[id]/files/[...path]/route": "app/api/worktrees/[id]/files/[...path]/route.js",
|
|
19
22
|
"/api/worktrees/[id]/interrupt/route": "app/api/worktrees/[id]/interrupt/route.js",
|
|
20
23
|
"/api/worktrees/[id]/kill-session/route": "app/api/worktrees/[id]/kill-session/route.js",
|
|
21
24
|
"/api/worktrees/[id]/memos/[memoId]/route": "app/api/worktrees/[id]/memos/[memoId]/route.js",
|
|
22
|
-
"/api/worktrees/[id]/messages/route": "app/api/worktrees/[id]/messages/route.js",
|
|
23
25
|
"/api/worktrees/[id]/memos/route": "app/api/worktrees/[id]/memos/route.js",
|
|
26
|
+
"/api/worktrees/[id]/messages/route": "app/api/worktrees/[id]/messages/route.js",
|
|
24
27
|
"/api/worktrees/[id]/prompt-response/route": "app/api/worktrees/[id]/prompt-response/route.js",
|
|
25
28
|
"/api/worktrees/[id]/respond/route": "app/api/worktrees/[id]/respond/route.js",
|
|
26
29
|
"/api/worktrees/[id]/route": "app/api/worktrees/[id]/route.js",
|
|
30
|
+
"/api/worktrees/[id]/schedules/[scheduleId]/route": "app/api/worktrees/[id]/schedules/[scheduleId]/route.js",
|
|
31
|
+
"/api/worktrees/[id]/schedules/route": "app/api/worktrees/[id]/schedules/route.js",
|
|
27
32
|
"/api/worktrees/[id]/search/route": "app/api/worktrees/[id]/search/route.js",
|
|
28
33
|
"/api/worktrees/[id]/send/route": "app/api/worktrees/[id]/send/route.js",
|
|
29
34
|
"/api/worktrees/[id]/start-polling/route": "app/api/worktrees/[id]/start-polling/route.js",
|
|
30
35
|
"/api/worktrees/[id]/slash-commands/route": "app/api/worktrees/[id]/slash-commands/route.js",
|
|
31
36
|
"/api/worktrees/[id]/terminal/route": "app/api/worktrees/[id]/terminal/route.js",
|
|
32
|
-
"/api/worktrees/[id]/tree/route": "app/api/worktrees/[id]/tree/route.js",
|
|
33
37
|
"/api/worktrees/[id]/tree/[...path]/route": "app/api/worktrees/[id]/tree/[...path]/route.js",
|
|
38
|
+
"/api/worktrees/[id]/tree/route": "app/api/worktrees/[id]/tree/route.js",
|
|
34
39
|
"/api/worktrees/[id]/upload/[...path]/route": "app/api/worktrees/[id]/upload/[...path]/route.js",
|
|
35
40
|
"/api/worktrees/[id]/viewed/route": "app/api/worktrees/[id]/viewed/route.js",
|
|
36
41
|
"/apple-icon.png/route": "app/apple-icon.png/route.js",
|
|
37
42
|
"/icon.png/route": "app/icon.png/route.js",
|
|
38
|
-
"/page": "app/page.js",
|
|
39
43
|
"/login/page": "app/login/page.js",
|
|
44
|
+
"/page": "app/page.js",
|
|
40
45
|
"/worktrees/[id]/files/[...path]/page": "app/worktrees/[id]/files/[...path]/page.js",
|
|
41
46
|
"/worktrees/[id]/page": "app/worktrees/[id]/page.js",
|
|
42
47
|
"/worktrees/[id]/terminal/page": "app/worktrees/[id]/terminal/page.js",
|
|
43
48
|
"/api/auth/status/route": "app/api/auth/status/route.js",
|
|
44
49
|
"/api/app/update-check/route": "app/api/app/update-check/route.js",
|
|
45
50
|
"/api/external-apps/[id]/health/route": "app/api/external-apps/[id]/health/route.js",
|
|
46
|
-
"/api/external-apps/[id]/route": "app/api/external-apps/[id]/route.js",
|
|
47
51
|
"/api/external-apps/route": "app/api/external-apps/route.js",
|
|
52
|
+
"/api/external-apps/[id]/route": "app/api/external-apps/[id]/route.js",
|
|
48
53
|
"/api/worktrees/[id]/logs/route": "app/api/worktrees/[id]/logs/route.js",
|
|
49
54
|
"/api/worktrees/[id]/logs/[filename]/route": "app/api/worktrees/[id]/logs/[filename]/route.js",
|
|
50
55
|
"/api/worktrees/route": "app/api/worktrees/route.js",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=2314,exports.ids=[2314],exports.modules={82314:e=>{e.exports=JSON.parse('{"title":"スケジュール","executionLogs":"実行ログ","noSchedules":"スケジュールが設定されていません。CMATE.mdにSchedulesセクションを追加してください。","noSchedulesTitle":"スケジュールが設定されていません","noSchedulesStep1":"Files タブに切り替えてください","noSchedulesStep2":"ツールバーの CMATE ボタンをクリックして CMATE.md を作成","noSchedulesStep3":"Schedules テーブルを編集(Name, Cron, Message, CLI Tool, Enabled, Permission)","noSchedulesStep4":"再度 CMATE をクリックしてバリデーション","noLogs":"実行ログはまだありません。","status":{"running":"実行中","completed":"完了","failed":"失敗","timeout":"タイムアウト","cancelled":"キャンセル"},"enabled":"有効","disabled":"無効","lastRun":"最終実行","cron":"Cron式","exitCode":"終了コード","noOutput":"(出力なし)","message":"メッセージ","response":"レスポンス","unknownSchedule":"(削除済みスケジュール)","retry":"再試行","loading":"読み込み中...","notes":"メモ","logs":"Schedules","notesAndLogs":"CMATE","agentTab":"Agent","agentSettings":"エージェント設定","selectAgents":"ターミナルヘッダーのタブに表示するエージェントを2つ選択してください。","agentSaveSuccess":"エージェント設定を保存しました。","agentSaveError":"エージェント設定の保存に失敗しました。","vibeLocalModel":"Ollamaモデル","vibeLocalModelDefault":"デフォルト","ollamaNotAvailable":"Ollamaが起動していません。モデルを選択するにはOllamaを起動してください。","cmateCreated":"CMATE.mdをテンプレートで作成しました。スケジュールを設定してください。","cmateValidation":{"noSchedulesSection":"CMATE.mdにSchedulesセクションがありません。","valid":"{count}件のスケジュールが正常に検証されました。","errors":"{errorCount}件の検証エラー: {details}","failed":"CMATE.mdの処理に失敗しました。"}}')}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
exports.id=3860,exports.ids=[3860],exports.modules={4703:(e,r,t)=>{var o={"./en/auth.json":[5795,5795],"./ja/auth.json":[73074,3074]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=4703,e.exports=s},34519:(e,r,t)=>{var o={"./en/autoYes.json":[58744,8744],"./ja/autoYes.json":[80369,369]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=34519,e.exports=s},41440:(e,r,t)=>{var o={"./en/common.json":[39582,9582],"./ja/common.json":[93348,3348]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=41440,e.exports=s},87269:(e,r,t)=>{var o={"./en/error.json":[17266,7266],"./ja/error.json":[16837,6837]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=87269,e.exports=s},35268:(e,r,t)=>{var o={"./en/prompt.json":[94559,4559],"./ja/prompt.json":[45853,5853]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=35268,e.exports=s},31985:(e,r,t)=>{var o={"./en/worktree.json":[32683,2683],"./ja/worktree.json":[95823,5823]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=31985,e.exports=s},20319:(e,r,t)=>{Promise.resolve().then(t.t.bind(t,12994,23)),Promise.resolve().then(t.t.bind(t,96114,23)),Promise.resolve().then(t.t.bind(t,9727,23)),Promise.resolve().then(t.t.bind(t,79671,23)),Promise.resolve().then(t.t.bind(t,41868,23)),Promise.resolve().then(t.t.bind(t,84759,23))},47864:(e,r,t)=>{Promise.resolve().then(t.bind(t,2108))},2108:(e,r,t)=>{"use strict";t.d(r,{AppProviders:()=>c});var o=t(10326),s=t(5269),n=t(87403),i=t(3885),a=t(94001);function c({children:e,locale:r,messages:t,timeZone:c,authEnabled:d=!1}){return o.jsx(s.Z,{locale:r,messages:t,timeZone:c,children:o.jsx(a.H,{authEnabled:d,children:o.jsx(n.Hn,{children:o.jsx(i._I,{children:e})})})})}},94001:(e,r,t)=>{"use strict";t.d(r,{H:()=>i,m:()=>a});var o=t(10326),s=t(17577);let n=(0,s.createContext)(!1);function i({children:e,authEnabled:r}){return o.jsx(n.Provider,{value:r,children:e})}function a(){return(0,s.useContext)(n)}},87403:(e,r,t)=>{"use strict";t.d(r,{Hn:()=>a,Sz:()=>c});var o=t(10326),s=t(17577);let n=(0,s.createContext)(null);function i(e,r){switch(r.type){case"TOGGLE":return{...e,isOpen:!e.isOpen};case"SET_WIDTH":return{...e,width:r.width};case"OPEN_MOBILE_DRAWER":return{...e,isMobileDrawerOpen:!0};case"CLOSE_MOBILE_DRAWER":return{...e,isMobileDrawerOpen:!1};case"SET_SORT_KEY":return{...e,sortKey:r.sortKey};case"SET_SORT_DIRECTION":return{...e,sortDirection:r.sortDirection};case"LOAD_SORT_SETTINGS":return{...e,sortKey:r.sortKey,sortDirection:r.sortDirection};default:return e}}function a({children:e,initialOpen:r=!0,initialWidth:t=288}){let[a,c]=(0,s.useReducer)(i,{isOpen:r,width:t,isMobileDrawerOpen:!1,sortKey:"updatedAt",sortDirection:"desc"}),d=(0,s.useCallback)(()=>{c({type:"TOGGLE"})},[]),l=(0,s.useCallback)(e=>{c({type:"SET_WIDTH",width:e})},[]),u=(0,s.useCallback)(()=>{c({type:"OPEN_MOBILE_DRAWER"})},[]),p=(0,s.useCallback)(()=>{c({type:"CLOSE_MOBILE_DRAWER"})},[]),y=(0,s.useCallback)(e=>{c({type:"SET_SORT_KEY",sortKey:e})},[]),m=(0,s.useCallback)(e=>{c({type:"SET_SORT_DIRECTION",sortDirection:e})},[]),E={isOpen:a.isOpen,width:a.width,isMobileDrawerOpen:a.isMobileDrawerOpen,sortKey:a.sortKey,sortDirection:a.sortDirection,toggle:d,setWidth:l,openMobileDrawer:u,closeMobileDrawer:p,setSortKey:y,setSortDirection:m};return o.jsx(n.Provider,{value:E,children:e})}function c(){let e=(0,s.useContext)(n);if(!e)throw Error("useSidebarContext must be used within a SidebarProvider");return e}},3885:(e,r,t)=>{"use strict";t.d(r,{Mu:()=>l,_I:()=>d});var o=t(10326),s=t(17577),n=t(73002);let i=(0,s.createContext)(null),a={selectedWorktreeId:null,worktrees:[],selectedWorktreeDetail:null,isLoading:!0,isLoadingDetail:!1,error:null};function c(e,r){switch(r.type){case"SET_WORKTREES":return{...e,worktrees:r.worktrees,isLoading:!1};case"SELECT_WORKTREE":return{...e,selectedWorktreeId:r.id};case"SET_WORKTREE_DETAIL":return{...e,selectedWorktreeDetail:r.detail};case"SET_LOADING":return{...e,isLoading:r.isLoading};case"SET_LOADING_DETAIL":return{...e,isLoadingDetail:r.isLoadingDetail};case"SET_ERROR":return{...e,error:r.error,isLoading:!1};default:return e}}function d({children:e}){let[r,t]=(0,s.useReducer)(c,a),d=(0,s.useCallback)(async()=>{t({type:"SET_LOADING",isLoading:!0}),t({type:"SET_ERROR",error:null});try{let e=await n.Iv.getAll();t({type:"SET_WORKTREES",worktrees:e.worktrees})}catch(e){t({type:"SET_ERROR",error:e instanceof Error?e.message:"Failed to fetch worktrees"})}},[]),l=(0,s.useCallback)(async e=>{t({type:"SELECT_WORKTREE",id:e}),t({type:"SET_LOADING_DETAIL",isLoadingDetail:!0}),t({type:"SET_ERROR",error:null});try{n.Iv.markAsViewed(e).catch(e=>{console.warn("[WorktreeSelectionContext] Failed to mark as viewed:",e)});let r=await n.Iv.getById(e);t({type:"SET_WORKTREE_DETAIL",detail:r})}catch(e){t({type:"SET_ERROR",error:e instanceof Error?e.message:"Failed to fetch worktree detail"})}finally{t({type:"SET_LOADING_DETAIL",isLoadingDetail:!1})}},[]),u=(0,s.useCallback)(async()=>{await d()},[d]),p={selectedWorktreeId:r.selectedWorktreeId,worktrees:r.worktrees,selectedWorktreeDetail:r.selectedWorktreeDetail,isLoadingDetail:r.isLoadingDetail,error:r.error,selectWorktree:l,refreshWorktrees:u};return o.jsx(i.Provider,{value:p,children:e})}function l(){let e=(0,s.useContext)(i);if(!e)throw Error("useWorktreeSelection must be used within a WorktreeSelectionProvider");return e}},73002:(e,r,t)=>{"use strict";t.d(r,{Iv:()=>n,J1:()=>i,nE:()=>a,zG:()=>c});class o extends Error{constructor(e,r,t){super(e),this.status=r,this.data=t,this.name="ApiError"}}async function s(e,r){try{let t=new Headers(r?.headers);t.set("Content-Type","application/json");let s=await fetch(e,{...r,headers:t}),n=s.headers.get("content-type")||"";if(s.redirected&&s.url.includes("/login"))throw new o("Authentication required",401);if(!s.ok){let e=n.includes("application/json")?await s.json().catch(()=>({})):{};throw new o(e.error||`HTTP error ${s.status}`,s.status,e)}if(!n.includes("application/json"))throw new o("Unexpected response format",s.status);return s.json()}catch(e){if(e instanceof o)throw e;throw new o(e instanceof Error?e.message:"Unknown error",0,e)}}let n={getAll:async()=>s("/api/worktrees"),getById:async e=>s(`/api/worktrees/${e}`),updateDescription:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({description:r})}),updateLink:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({link:r})}),toggleFavorite:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({favorite:r})}),updateStatus:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({status:r})}),updateCliTool:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({cliToolId:r})}),markAsViewed:async e=>s(`/api/worktrees/${e}/viewed`,{method:"PATCH"}),async getMessages(e,r){let t=new URLSearchParams;return r&&t.append("cliTool",r),s(`/api/worktrees/${e}/messages${t.toString()?`?${t.toString()}`:""}`)},async sendMessage(e,r,t){let o={content:r};return t&&(o.cliToolId=t),s(`/api/worktrees/${e}/send`,{method:"POST",body:JSON.stringify(o)})},getLogs:async e=>s(`/api/worktrees/${e}/logs`),async getLogFile(e,r,t){let o=t?.sanitize?"?sanitize=true":"";return s(`/api/worktrees/${e}/logs/${r}${o}`)},killSession:async(e,r)=>s(`/api/worktrees/${e}/kill-session`,{method:"POST",body:r?JSON.stringify({cliToolId:r}):void 0})},i={scan:async e=>s("/api/repositories/scan",{method:"POST",body:JSON.stringify({repositoryPath:e})}),sync:async()=>s("/api/repositories/sync",{method:"POST"}),delete:async e=>s("/api/repositories",{method:"DELETE",body:JSON.stringify({repositoryPath:e})}),clone:async e=>s("/api/repositories/clone",{method:"POST",body:JSON.stringify({cloneUrl:e})}),getCloneStatus:async e=>s(`/api/repositories/clone/${e}`),getExcluded:async()=>s("/api/repositories/excluded"),restore:async e=>s("/api/repositories/restore",{method:"PUT",body:JSON.stringify({repositoryPath:e})})},a={getAll:async e=>(await s(`/api/worktrees/${e}/memos`)).memos,create:async(e,r)=>(await s(`/api/worktrees/${e}/memos`,{method:"POST",body:JSON.stringify(r||{})})).memo,update:async(e,r,t)=>(await s(`/api/worktrees/${e}/memos/${r}`,{method:"PUT",body:JSON.stringify(t)})).memo,delete:async(e,r)=>s(`/api/worktrees/${e}/memos/${r}`,{method:"DELETE"})};function c(e){return e instanceof o||e instanceof Error?e.message:"An unknown error occurred"}},25086:(e,r,t)=>{"use strict";t.r(r),t.d(r,{default:()=>d,metadata:()=>c});var o=t(19510),s=t(2126),n=t(89907),i=t(57735);let a=(0,t(68570).createProxy)(String.raw`/home/runner/work/CommandMate/CommandMate/src/components/providers/AppProviders.tsx#AppProviders`);t(5023);let c={title:"CommandMate",description:"Git worktree management with Claude CLI and tmux sessions"};async function d({children:e}){let r=await (0,s.Z)(),t=await (0,n.Z)(),c=await (0,i.Z)();return o.jsx("html",{lang:r,children:o.jsx("body",{className:"min-h-screen bg-gray-50",children:o.jsx(a,{locale:r,messages:t,timeZone:c,authEnabled:!!process.env.CM_AUTH_TOKEN_HASH,children:e})})})}},72901:(e,r,t)=>{"use strict";t.d(r,{Z:()=>i});var o=t(10442),s=t(71615);let n=["en","ja"],i=(0,o.Z)(async({requestLocale:e})=>{let r=await e;if(!r||!n.includes(r)){let e=await (0,s.cookies)(),t=e.get("locale")?.value;if(t&&n.includes(t))r=t;else{let e=(await (0,s.headers)()).get("accept-language")??"";r=n.find(r=>e.includes(r))??"en"}}let[o,i,a,c,d,l]=await Promise.all([t(41440)(`./${r}/common.json`),t(31985)(`./${r}/worktree.json`),t(34519)(`./${r}/autoYes.json`),t(87269)(`./${r}/error.json`),t(35268)(`./${r}/prompt.json`),t(4703)(`./${r}/auth.json`)]);return{locale:r,timeZone:"UTC",messages:{common:o.default,worktree:i.default,autoYes:a.default,error:c.default,prompt:d.default,auth:l.default}}})},5023:()=>{}};
|
|
1
|
+
exports.id=3860,exports.ids=[3860],exports.modules={4703:(e,r,t)=>{var o={"./en/auth.json":[5795,5795],"./ja/auth.json":[73074,3074]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=4703,e.exports=s},34519:(e,r,t)=>{var o={"./en/autoYes.json":[58744,8744],"./ja/autoYes.json":[80369,369]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=34519,e.exports=s},41440:(e,r,t)=>{var o={"./en/common.json":[39582,9582],"./ja/common.json":[93348,3348]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=41440,e.exports=s},87269:(e,r,t)=>{var o={"./en/error.json":[17266,7266],"./ja/error.json":[16837,6837]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=87269,e.exports=s},35268:(e,r,t)=>{var o={"./en/prompt.json":[94559,4559],"./ja/prompt.json":[45853,5853]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=35268,e.exports=s},16114:(e,r,t)=>{var o={"./en/schedule.json":[86228,6228],"./ja/schedule.json":[82314,2314]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=16114,e.exports=s},31985:(e,r,t)=>{var o={"./en/worktree.json":[32683,2683],"./ja/worktree.json":[95823,5823]};function s(e){if(!t.o(o,e))return Promise.resolve().then(()=>{var r=Error("Cannot find module '"+e+"'");throw r.code="MODULE_NOT_FOUND",r});var r=o[e],s=r[0];return t.e(r[1]).then(()=>t.t(s,19))}s.keys=()=>Object.keys(o),s.id=31985,e.exports=s},20319:(e,r,t)=>{Promise.resolve().then(t.t.bind(t,12994,23)),Promise.resolve().then(t.t.bind(t,96114,23)),Promise.resolve().then(t.t.bind(t,9727,23)),Promise.resolve().then(t.t.bind(t,79671,23)),Promise.resolve().then(t.t.bind(t,41868,23)),Promise.resolve().then(t.t.bind(t,84759,23))},47864:(e,r,t)=>{Promise.resolve().then(t.bind(t,2108))},2108:(e,r,t)=>{"use strict";t.d(r,{AppProviders:()=>d});var o=t(10326),s=t(5269),n=t(87403),i=t(3885),a=t(94001);function d({children:e,locale:r,messages:t,timeZone:d,authEnabled:c=!1}){return o.jsx(s.Z,{locale:r,messages:t,timeZone:d,children:o.jsx(a.H,{authEnabled:c,children:o.jsx(n.Hn,{children:o.jsx(i._I,{children:e})})})})}},94001:(e,r,t)=>{"use strict";t.d(r,{H:()=>i,m:()=>a});var o=t(10326),s=t(17577);let n=(0,s.createContext)(!1);function i({children:e,authEnabled:r}){return o.jsx(n.Provider,{value:r,children:e})}function a(){return(0,s.useContext)(n)}},87403:(e,r,t)=>{"use strict";t.d(r,{Hn:()=>a,Sz:()=>d});var o=t(10326),s=t(17577);let n=(0,s.createContext)(null);function i(e,r){switch(r.type){case"TOGGLE":return{...e,isOpen:!e.isOpen};case"SET_WIDTH":return{...e,width:r.width};case"OPEN_MOBILE_DRAWER":return{...e,isMobileDrawerOpen:!0};case"CLOSE_MOBILE_DRAWER":return{...e,isMobileDrawerOpen:!1};case"SET_SORT_KEY":return{...e,sortKey:r.sortKey};case"SET_SORT_DIRECTION":return{...e,sortDirection:r.sortDirection};case"LOAD_SORT_SETTINGS":return{...e,sortKey:r.sortKey,sortDirection:r.sortDirection};default:return e}}function a({children:e,initialOpen:r=!0,initialWidth:t=288}){let[a,d]=(0,s.useReducer)(i,{isOpen:r,width:t,isMobileDrawerOpen:!1,sortKey:"updatedAt",sortDirection:"desc"}),c=(0,s.useCallback)(()=>{d({type:"TOGGLE"})},[]),l=(0,s.useCallback)(e=>{d({type:"SET_WIDTH",width:e})},[]),u=(0,s.useCallback)(()=>{d({type:"OPEN_MOBILE_DRAWER"})},[]),p=(0,s.useCallback)(()=>{d({type:"CLOSE_MOBILE_DRAWER"})},[]),y=(0,s.useCallback)(e=>{d({type:"SET_SORT_KEY",sortKey:e})},[]),h=(0,s.useCallback)(e=>{d({type:"SET_SORT_DIRECTION",sortDirection:e})},[]),m={isOpen:a.isOpen,width:a.width,isMobileDrawerOpen:a.isMobileDrawerOpen,sortKey:a.sortKey,sortDirection:a.sortDirection,toggle:c,setWidth:l,openMobileDrawer:u,closeMobileDrawer:p,setSortKey:y,setSortDirection:h};return o.jsx(n.Provider,{value:m,children:e})}function d(){let e=(0,s.useContext)(n);if(!e)throw Error("useSidebarContext must be used within a SidebarProvider");return e}},3885:(e,r,t)=>{"use strict";t.d(r,{Mu:()=>l,_I:()=>c});var o=t(10326),s=t(17577),n=t(73002);let i=(0,s.createContext)(null),a={selectedWorktreeId:null,worktrees:[],selectedWorktreeDetail:null,isLoading:!0,isLoadingDetail:!1,error:null};function d(e,r){switch(r.type){case"SET_WORKTREES":return{...e,worktrees:r.worktrees,isLoading:!1};case"SELECT_WORKTREE":return{...e,selectedWorktreeId:r.id};case"SET_WORKTREE_DETAIL":return{...e,selectedWorktreeDetail:r.detail};case"SET_LOADING":return{...e,isLoading:r.isLoading};case"SET_LOADING_DETAIL":return{...e,isLoadingDetail:r.isLoadingDetail};case"SET_ERROR":return{...e,error:r.error,isLoading:!1};default:return e}}function c({children:e}){let[r,t]=(0,s.useReducer)(d,a),c=(0,s.useCallback)(async()=>{t({type:"SET_LOADING",isLoading:!0}),t({type:"SET_ERROR",error:null});try{let e=await n.Iv.getAll();t({type:"SET_WORKTREES",worktrees:e.worktrees})}catch(e){t({type:"SET_ERROR",error:e instanceof Error?e.message:"Failed to fetch worktrees"})}},[]),l=(0,s.useCallback)(async e=>{t({type:"SELECT_WORKTREE",id:e}),t({type:"SET_LOADING_DETAIL",isLoadingDetail:!0}),t({type:"SET_ERROR",error:null});try{n.Iv.markAsViewed(e).catch(e=>{console.warn("[WorktreeSelectionContext] Failed to mark as viewed:",e)});let r=await n.Iv.getById(e);t({type:"SET_WORKTREE_DETAIL",detail:r})}catch(e){t({type:"SET_ERROR",error:e instanceof Error?e.message:"Failed to fetch worktree detail"})}finally{t({type:"SET_LOADING_DETAIL",isLoadingDetail:!1})}},[]),u=(0,s.useCallback)(async()=>{await c()},[c]),p={selectedWorktreeId:r.selectedWorktreeId,worktrees:r.worktrees,selectedWorktreeDetail:r.selectedWorktreeDetail,isLoadingDetail:r.isLoadingDetail,error:r.error,selectWorktree:l,refreshWorktrees:u};return o.jsx(i.Provider,{value:p,children:e})}function l(){let e=(0,s.useContext)(i);if(!e)throw Error("useWorktreeSelection must be used within a WorktreeSelectionProvider");return e}},73002:(e,r,t)=>{"use strict";t.d(r,{Iv:()=>n,J1:()=>i,nE:()=>a,zG:()=>d});class o extends Error{constructor(e,r,t){super(e),this.status=r,this.data=t,this.name="ApiError"}}async function s(e,r){try{let t=new Headers(r?.headers);t.set("Content-Type","application/json");let s=await fetch(e,{...r,headers:t}),n=s.headers.get("content-type")||"";if(s.redirected&&s.url.includes("/login"))throw new o("Authentication required",401);if(!s.ok){let e=n.includes("application/json")?await s.json().catch(()=>({})):{};throw new o(e.error||`HTTP error ${s.status}`,s.status,e)}if(!n.includes("application/json"))throw new o("Unexpected response format",s.status);return s.json()}catch(e){if(e instanceof o)throw e;throw new o(e instanceof Error?e.message:"Unknown error",0,e)}}let n={getAll:async()=>s("/api/worktrees"),getById:async e=>s(`/api/worktrees/${e}`),updateDescription:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({description:r})}),updateLink:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({link:r})}),toggleFavorite:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({favorite:r})}),updateStatus:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({status:r})}),updateCliTool:async(e,r)=>s(`/api/worktrees/${e}`,{method:"PATCH",body:JSON.stringify({cliToolId:r})}),markAsViewed:async e=>s(`/api/worktrees/${e}/viewed`,{method:"PATCH"}),async getMessages(e,r){let t=new URLSearchParams;return r&&t.append("cliTool",r),s(`/api/worktrees/${e}/messages${t.toString()?`?${t.toString()}`:""}`)},async sendMessage(e,r,t){let o={content:r};return t&&(o.cliToolId=t),s(`/api/worktrees/${e}/send`,{method:"POST",body:JSON.stringify(o)})},getLogs:async e=>s(`/api/worktrees/${e}/logs`),async getLogFile(e,r,t){let o=t?.sanitize?"?sanitize=true":"";return s(`/api/worktrees/${e}/logs/${r}${o}`)},killSession:async(e,r)=>s(`/api/worktrees/${e}/kill-session`,{method:"POST",body:r?JSON.stringify({cliToolId:r}):void 0})},i={scan:async e=>s("/api/repositories/scan",{method:"POST",body:JSON.stringify({repositoryPath:e})}),sync:async()=>s("/api/repositories/sync",{method:"POST"}),delete:async e=>s("/api/repositories",{method:"DELETE",body:JSON.stringify({repositoryPath:e})}),clone:async e=>s("/api/repositories/clone",{method:"POST",body:JSON.stringify({cloneUrl:e})}),getCloneStatus:async e=>s(`/api/repositories/clone/${e}`),getExcluded:async()=>s("/api/repositories/excluded"),restore:async e=>s("/api/repositories/restore",{method:"PUT",body:JSON.stringify({repositoryPath:e})})},a={getAll:async e=>(await s(`/api/worktrees/${e}/memos`)).memos,create:async(e,r)=>(await s(`/api/worktrees/${e}/memos`,{method:"POST",body:JSON.stringify(r||{})})).memo,update:async(e,r,t)=>(await s(`/api/worktrees/${e}/memos/${r}`,{method:"PUT",body:JSON.stringify(t)})).memo,delete:async(e,r)=>s(`/api/worktrees/${e}/memos/${r}`,{method:"DELETE"})};function d(e){return e instanceof o||e instanceof Error?e.message:"An unknown error occurred"}},25086:(e,r,t)=>{"use strict";t.r(r),t.d(r,{default:()=>c,metadata:()=>d});var o=t(19510),s=t(2126),n=t(89907),i=t(57735);let a=(0,t(68570).createProxy)(String.raw`/home/runner/work/CommandMate/CommandMate/src/components/providers/AppProviders.tsx#AppProviders`);t(5023);let d={title:"CommandMate",description:"Git worktree management with Claude CLI and tmux sessions"};async function c({children:e}){let r=await (0,s.Z)(),t=await (0,n.Z)(),d=await (0,i.Z)();return o.jsx("html",{lang:r,children:o.jsx("body",{className:"min-h-screen bg-gray-50",children:o.jsx(a,{locale:r,messages:t,timeZone:d,authEnabled:!!process.env.CM_AUTH_TOKEN_HASH,children:e})})})}},72901:(e,r,t)=>{"use strict";t.d(r,{Z:()=>i});var o=t(10442),s=t(71615);let n=["en","ja"],i=(0,o.Z)(async({requestLocale:e})=>{let r=await e;if(!r||!n.includes(r)){let e=await (0,s.cookies)(),t=e.get("locale")?.value;if(t&&n.includes(t))r=t;else{let e=(await (0,s.headers)()).get("accept-language")??"";r=n.find(r=>e.includes(r))??"en"}}let[o,i,a,d,c,l,u]=await Promise.all([t(41440)(`./${r}/common.json`),t(31985)(`./${r}/worktree.json`),t(34519)(`./${r}/autoYes.json`),t(87269)(`./${r}/error.json`),t(35268)(`./${r}/prompt.json`),t(4703)(`./${r}/auth.json`),t(16114)(`./${r}/schedule.json`)]);return{locale:r,timeZone:"UTC",messages:{common:o.default,worktree:i.default,autoYes:a.default,error:d.default,prompt:c.default,auth:l.default,schedule:u.default}}})},5023:()=>{}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=4559,exports.ids=[4559],exports.modules={94559:e=>{e.exports=JSON.parse('{"confirmationFromClaude":"Confirmation from Claude","sending":"Sending...","failedToRespond":"Failed to send response. Please try again.","default":"Default","answered":"Answered","awaitingSelection":"Awaiting selection","yes":"Yes","no":"No","enterCustomMessage":"Enter custom message","enterMessageHere":"Enter message here...","enterValuePlaceholder":"Enter a value...","submit":"Submit"}')}};
|
|
1
|
+
"use strict";exports.id=4559,exports.ids=[4559],exports.modules={94559:e=>{e.exports=JSON.parse('{"confirmationFromClaude":"Confirmation from Claude","confirmationFrom":"Confirmation from {toolName}","sending":"Sending...","failedToRespond":"Failed to send response. Please try again.","default":"Default","answered":"Answered","awaitingSelection":"Awaiting selection","yes":"Yes","no":"No","enterCustomMessage":"Enter custom message","enterMessageHere":"Enter message here...","enterValuePlaceholder":"Enter a value...","submit":"Submit"}')}};
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
"use strict";exports.id=539,exports.ids=[539],exports.modules={11865:(e,t,a)=>{a.d(t,{Ix:()=>m,pm:()=>h});var
|
|
1
|
+
"use strict";exports.id=539,exports.ids=[539],exports.modules={11865:(e,t,a)=>{a.d(t,{Ix:()=>m,pm:()=>h});var r=a(10326),s=a(17577),l=a(28567),n=a(69669),o=a(18019),i=a(94019),c=a(22202);let d=3e3;function u({type:e,iconColor:t}){let a=`h-5 w-5 ${t}`;switch(e){case"success":return r.jsx(l.Z,{className:a,"data-testid":"toast-icon-success"});case"error":return r.jsx(n.Z,{className:a,"data-testid":"toast-icon-error"});default:return r.jsx(o.Z,{className:a,"data-testid":"toast-icon-info"})}}function x({id:e,message:t,type:a,onClose:l,duration:n=d}){let o=(0,s.useRef)(null),c=function(e){switch(e){case"success":return{bgColor:"bg-green-50",borderColor:"border-green-200",textColor:"text-green-800",iconColor:"text-green-500"};case"error":return{bgColor:"bg-red-50",borderColor:"border-red-200",textColor:"text-red-800",iconColor:"text-red-500"};default:return{bgColor:"bg-blue-50",borderColor:"border-blue-200",textColor:"text-blue-800",iconColor:"text-blue-500"}}}(a),x=(0,s.useCallback)(()=>{o.current&&clearTimeout(o.current),l(e)},[e,l]);return(0,r.jsxs)("div",{"data-testid":`toast-${e}`,role:"alert",className:`
|
|
2
2
|
${c.bgColor}
|
|
3
3
|
${c.borderColor}
|
|
4
4
|
${c.textColor}
|
|
5
5
|
border rounded-lg shadow-lg p-4 min-w-[300px] max-w-[400px]
|
|
6
6
|
flex items-start gap-3
|
|
7
7
|
animate-slide-in
|
|
8
|
-
`,children:[
|
|
8
|
+
`,children:[r.jsx(u,{type:a,iconColor:c.iconColor}),r.jsx("p",{className:"flex-1 text-sm font-medium",children:t}),r.jsx("button",{"data-testid":"toast-close-button",onClick:x,"aria-label":"Close notification",className:`
|
|
9
9
|
${c.textColor}
|
|
10
10
|
hover:opacity-70
|
|
11
11
|
focus:outline-none focus:ring-2 focus:ring-offset-2
|
|
12
12
|
transition-opacity
|
|
13
|
-
`,children:
|
|
13
|
+
`,children:r.jsx(i.Z,{className:"h-4 w-4"})})]})}function m({toasts:e,onClose:t}){return r.jsx("div",{"data-testid":"toast-container","aria-live":"polite",className:"fixed bottom-4 right-4 flex flex-col gap-2",style:{zIndex:c.k.TOAST},children:e.map(e=>r.jsx(x,{id:e.id,message:e.message,type:e.type,onClose:t,duration:e.duration},e.id))})}function h(){let[e,t]=(0,s.useState)([]),a=(0,s.useRef)(0);return{toasts:e,showToast:(0,s.useCallback)((e,r="info",s=d)=>{let l=`toast-${++a.current}-${Date.now()}`,n={id:l,message:e,type:r,duration:s};return t(e=>[...e,n]),l},[]),removeToast:(0,s.useCallback)(e=>{t(t=>t.filter(t=>t.id!==e))},[]),clearToasts:(0,s.useCallback)(()=>{t([])},[])}}},79906:(e,t,a)=>{a.d(t,{Vw:()=>M});var r=a(10326),s=a(17577);a(90434);var l=a(87403),n=a(2982),o=a(35047),i=a(3885),c=a(61421),d=a(2491);function u({status:e,label:t}){let a=c.F4[e],s=`${t}: ${a.label}`;return"spinner"===a.type?r.jsx("span",{className:`w-2 h-2 rounded-full flex-shrink-0 border-2 border-t-transparent animate-spin ${a.className}`,title:s,"aria-label":s}):r.jsx("span",{className:`w-2 h-2 rounded-full flex-shrink-0 ${a.className}`,title:s,"aria-label":s})}let x=(0,s.memo)(function({branch:e,isSelected:t,onClick:a}){return(0,r.jsxs)("button",{"data-testid":"branch-list-item",onClick:a,"aria-current":t?"true":void 0,className:`
|
|
14
14
|
w-full px-4 py-3 flex flex-col gap-1
|
|
15
15
|
hover:bg-gray-800 transition-colors
|
|
16
16
|
focus:outline-none focus:ring-2 focus:ring-inset focus:ring-blue-500
|
|
17
17
|
${t?"bg-gray-700 border-l-2 border-blue-500":"border-l-2 border-transparent"}
|
|
18
|
-
`,children:[(0,
|
|
18
|
+
`,children:[(0,r.jsxs)("div",{className:"flex items-center gap-3 w-full",children:[e.cliStatus&&Object.keys(e.cliStatus).length>0&&r.jsx("div",{className:"flex items-center gap-1 flex-shrink-0","aria-label":"CLI tool status",children:Object.entries(e.cliStatus).map(([e,t])=>r.jsx(u,{status:t??"idle",label:(0,d.Ds)(e)},e))}),(0,r.jsxs)("div",{className:"flex-1 min-w-0 text-left",children:[r.jsx("p",{className:"text-sm font-medium text-white truncate",children:e.name}),r.jsx("p",{className:"text-xs text-gray-400 truncate",children:e.repositoryName})]}),e.hasUnread&&r.jsx("span",{"data-testid":"unread-indicator",className:"w-2 h-2 rounded-full bg-blue-500 flex-shrink-0","aria-label":"Has unread messages"})]}),e.description&&r.jsx("div",{"data-testid":"branch-description",className:"pl-6 pr-2 mt-1 text-left",children:r.jsx("p",{className:"text-xs text-gray-400 line-clamp-2",children:e.description})})]})}),m=[{key:"updatedAt",label:"Updated"},{key:"repositoryName",label:"Repository"},{key:"branchName",label:"Branch"},{key:"status",label:"Status"}],h=(0,s.memo)(function(){let{sortKey:e,sortDirection:t,setSortKey:a,setSortDirection:n}=(0,l.Sz)(),[o,i]=(0,s.useState)(!1),c=(0,s.useRef)(null);(0,s.useEffect)(()=>{function e(e){c.current&&!c.current.contains(e.target)&&i(!1)}if(o)return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)},[o]),(0,s.useEffect)(()=>{function e(e){"Escape"===e.key&&i(!1)}if(o)return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[o]);let d=(0,s.useCallback)(()=>{i(e=>!e)},[]),u=(0,s.useCallback)(r=>{r===e?n("asc"===t?"desc":"asc"):(a(r),n("updatedAt"===r?"desc":"asc")),i(!1)},[e,t,a,n]),x=(0,s.useCallback)(()=>{n("asc"===t?"desc":"asc")},[t,n]),h=m.find(t=>t.key===e)?.label||"Sort";return(0,r.jsxs)("div",{ref:c,className:"relative","data-testid":"sort-selector",children:[(0,r.jsxs)("div",{className:"flex items-center gap-1",children:[(0,r.jsxs)("button",{type:"button",onClick:d,"aria-expanded":o,"aria-haspopup":"listbox","aria-label":`Sort by ${h}`,className:" flex items-center gap-1 px-2 py-1 rounded text-xs text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-blue-500 transition-colors ",children:[r.jsx(g,{className:"w-3 h-3"}),r.jsx("span",{className:"hidden sm:inline",children:h})]}),r.jsx("button",{type:"button",onClick:x,"aria-label":"asc"===t?"Sort ascending":"Sort descending",className:" p-1 rounded text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-blue-500 transition-colors ",children:"asc"===t?r.jsx(p,{className:"w-3 h-3"}):r.jsx(f,{className:"w-3 h-3"})})]}),o&&r.jsx("div",{role:"listbox","aria-label":"Sort options",className:" absolute right-0 top-full mt-1 z-50 min-w-[140px] py-1 rounded-md shadow-lg bg-gray-800 border border-gray-600 ",children:m.map(a=>(0,r.jsxs)("button",{type:"button",role:"option","aria-selected":e===a.key,onClick:()=>u(a.key),className:`
|
|
19
19
|
w-full px-3 py-2 text-left text-sm
|
|
20
20
|
flex items-center justify-between
|
|
21
21
|
hover:bg-gray-700 transition-colors
|
|
22
22
|
${e===a.key?"text-blue-400":"text-gray-300"}
|
|
23
|
-
`,children:[
|
|
23
|
+
`,children:[r.jsx("span",{children:a.label}),e===a.key&&r.jsx("span",{className:"text-xs",children:"asc"===t?"ASC":"DESC"})]},a.key))})]})});function g({className:e}){return r.jsx("svg",{className:e,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M3 4h13M3 8h9m-9 4h6m4 0l4-4m0 0l4 4m-4-4v12"})})}function p({className:e}){return r.jsx("svg",{className:e,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M5 15l7-7 7 7"})})}function f({className:e}){return r.jsx("svg",{className:e,fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 9l-7 7-7-7"})})}var b=a(34643);let y=["en","ja"],v={en:"English",ja:"日本語"};function j(){let{currentLocale:e,switchLocale:t}={currentLocale:(0,b.bU)(),switchLocale:e=>{y.includes(e)&&(function(e){let t="https:"===window.location.protocol;document.cookie=`locale=${e};path=/;max-age=31536000;SameSite=Lax${t?";Secure":""}`}(e),localStorage.setItem("locale",e),window.location.reload())}};return r.jsx("select",{value:e,onChange:e=>t(e.target.value),"aria-label":"Language",className:" w-full px-3 py-2 rounded-md bg-gray-800 text-white border border-gray-600 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent text-sm ",children:y.map(e=>r.jsx("option",{value:e,children:v[e]},e))})}var w=a(6162),N=a(94001);function k(){let e=(0,w.T)("auth"),t=(0,N.m)(),[a,l]=(0,s.useState)(!1);if(!t)return null;async function n(){l(!0);try{await fetch("/api/auth/logout",{method:"POST"}),window.location.href="/login"}catch{window.location.href="/login"}}return r.jsx("button",{type:"button",onClick:n,disabled:a,"data-testid":"logout-button",className:" w-full px-3 py-2 text-sm text-left rounded-md text-gray-300 hover:text-white hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-blue-500 disabled:opacity-50 transition-colors ",children:a?"...":e("logout.button")})}var C=a(18421);let S={waiting:0,ready:1,running:2,generating:3,idle:4},L=(0,s.memo)(function(){let e=(0,o.useRouter)(),{worktrees:t,selectedWorktreeId:a,selectWorktree:n}=(0,i.Mu)(),{closeMobileDrawer:c,sortKey:d,sortDirection:u}=(0,l.Sz)(),[m,g]=(0,s.useState)(""),p=(0,s.useMemo)(()=>{let e=t.map(C.I_),a=e;if(m.trim()){let t=m.toLowerCase();a=e.filter(e=>e.name.toLowerCase().includes(t)||e.repositoryName.toLowerCase().includes(t))}return function(e,t,a){let r=[...e];return r.sort((e,r)=>{let s=0;switch(t){case"updatedAt":{let t=e=>e?e instanceof Date?e.getTime():new Date(e).getTime():0,a=t(e.lastActivity);s=t(r.lastActivity)-a;break}case"repositoryName":{let t=e.repositoryName.toLowerCase(),a=r.repositoryName.toLowerCase();s=t.localeCompare(a);break}case"branchName":{let t=e.name.toLowerCase(),a=r.name.toLowerCase();s=t.localeCompare(a);break}case"status":s=S[e.status]-S[r.status]}return("updatedAt"===t?"desc"===a:"asc"===a)?s:-s}),r}(a,d,u)},[t,m,d,u]),f=t=>{n(t),e.push(`/worktrees/${t}`),c()};return(0,r.jsxs)("nav",{"data-testid":"sidebar","aria-label":"Branch navigation",className:"h-full flex flex-col bg-gray-900 text-white",role:"navigation",children:[r.jsx("div",{"data-testid":"sidebar-header",className:"flex-shrink-0 px-4 py-4 border-b border-gray-700",children:(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[r.jsx("h2",{className:"text-lg font-semibold text-white",children:"Branches"}),r.jsx(h,{})]})}),r.jsx("div",{className:"flex-shrink-0 px-4 py-3 border-b border-gray-700",children:r.jsx("input",{type:"text",placeholder:"Search branches...",value:m,onChange:e=>g(e.target.value),className:" w-full px-3 py-2 rounded-md bg-gray-800 text-white placeholder-gray-400 border border-gray-600 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent "})}),r.jsx("div",{"data-testid":"branch-list",className:"flex-1 overflow-y-auto",children:0===p.length?r.jsx("div",{className:"px-4 py-8 text-center text-gray-400",children:m?"No branches found":"No branches available"}):p.map(e=>r.jsx(x,{branch:e,isSelected:e.id===a,onClick:()=>f(e.id)},e.id))}),(0,r.jsxs)("div",{className:"flex-shrink-0 px-4 py-3 border-t border-gray-700 space-y-2",children:[r.jsx(j,{}),r.jsx(k,{})]})]})});var z=a(22202);let $="transform transition-transform duration-300 ease-out",M=(0,s.memo)(function({children:e}){let{isOpen:t,isMobileDrawerOpen:a,closeMobileDrawer:s}=(0,l.Sz)();return(0,n.d)()?(0,r.jsxs)("div",{"data-testid":"app-shell",className:"h-screen flex flex-col",children:[a&&r.jsx("div",{"data-testid":"drawer-overlay",className:"fixed inset-0 bg-black/50 z-40",onClick:s,"aria-hidden":"true"}),r.jsx("aside",{"data-testid":"sidebar-container",className:`
|
|
24
24
|
fixed left-0 top-0 h-full w-72 z-50
|
|
25
|
-
${
|
|
25
|
+
${$}
|
|
26
26
|
${a?"translate-x-0":"-translate-x-full"}
|
|
27
|
-
`,role:"complementary",children:
|
|
27
|
+
`,role:"complementary",children:r.jsx(L,{})}),r.jsx("main",{className:"flex-1 min-h-0 overflow-hidden",role:"main",children:e})]}):(0,r.jsxs)("div",{"data-testid":"app-shell",className:"h-screen flex",children:[r.jsx("aside",{"data-testid":"sidebar-container",className:`
|
|
28
28
|
fixed left-0 top-0 h-full w-72
|
|
29
|
-
${
|
|
29
|
+
${$}
|
|
30
30
|
${t?"translate-x-0":"-translate-x-full"}
|
|
31
|
-
`,style:{zIndex:
|
|
31
|
+
`,style:{zIndex:z.k.SIDEBAR},role:"complementary","aria-hidden":!t,children:r.jsx(L,{})}),r.jsx("main",{className:`
|
|
32
32
|
flex-1 min-w-0 h-full overflow-hidden
|
|
33
33
|
transition-[padding] duration-300 ease-out
|
|
34
34
|
${t?"md:pl-72":"md:pl-0"}
|
|
35
|
-
`,role:"main",children:e})]})})},28676:(e,t,a)=>{a.d(t,{u:()=>o});var s=a(10326),r=a(17577),l=a(60962),n=a(22202);function o({isOpen:e,onClose:t,title:a,children:o,size:i="lg",showCloseButton:c=!0,disableClose:d=!1}){let u=(0,r.useRef)(null);return e?(0,l.createPortal)((0,s.jsxs)("div",{className:"fixed inset-0 overflow-y-auto",style:{zIndex:n.k.MODAL},children:[s.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 transition-opacity",onClick:d?void 0:t}),s.jsx("div",{className:"relative flex min-h-full items-center justify-center p-2 sm:p-4",children:(0,s.jsxs)("div",{ref:u,className:`relative w-full ${{sm:"max-w-[calc(100vw-2rem)] sm:max-w-md",md:"max-w-[calc(100vw-2rem)] sm:max-w-2xl",lg:"max-w-[calc(100vw-2rem)] sm:max-w-4xl",xl:"max-w-[calc(100vw-2rem)] sm:max-w-6xl",full:"max-w-[calc(100vw-2rem)] sm:max-w-[95vw]"}[i]} max-h-[calc(100vh-1rem)] sm:max-h-[calc(100vh-2rem)] flex flex-col bg-white rounded-lg shadow-xl transform transition-all`,children:[(a||c)&&(0,s.jsxs)("div",{className:"flex items-center justify-between px-4 sm:px-6 py-3 sm:py-4 border-b border-gray-200 flex-shrink-0",children:[s.jsx("h3",{className:"text-base sm:text-lg font-semibold text-gray-900 truncate pr-2",children:a}),c&&s.jsx("button",{onClick:t,className:"text-gray-400 hover:text-gray-600 transition-colors flex-shrink-0",children:s.jsx("svg",{className:"w-5 h-5 sm:w-6 sm:h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),s.jsx("div",{className:"px-4 sm:px-6 py-3 sm:py-4 overflow-y-auto flex-1 min-h-0",children:o})]})})]}),document.body):null}},77758:(e,t,a)=>{a.d(t,{Ct:()=>c,zx:()=>r,Zb:()=>l,aY:()=>i,Ol:()=>n,ll:()=>o,u_:()=>d.u});var s=a(10326);function r({variant:e="primary",size:t="md",fullWidth:a=!1,loading:r=!1,disabled:l,className:n="",children:o,...i}){let c=["btn",{primary:"btn-primary",secondary:"btn-secondary",danger:"btn-danger",ghost:"bg-transparent text-gray-700 hover:bg-gray-100 focus:ring-gray-500"}[e],{sm:"btn-sm",md:"",lg:"btn-lg"}[t],a?"w-full":"",l||r?"opacity-50 cursor-not-allowed":"",n].filter(Boolean).join(" ");return(0,s.jsxs)("button",{className:c,disabled:l||r,...i,children:[r&&(0,s.jsxs)("svg",{className:"animate-spin -ml-1 mr-2 h-4 w-4",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[s.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),s.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),o]})}function l({hover:e=!1,padding:t="md",className:a="",children:r,...l}){let n=["card",e?"card-hover":"",{none:"",sm:"p-3",md:"p-4",lg:"p-6"}[t],a].filter(Boolean).join(" ");return s.jsx("div",{className:n,...l,children:r})}function n({className:e="",children:t,...a}){return s.jsx("div",{className:`mb-3 ${e}`,...a,children:t})}function o({className:e="",children:t,...a}){return s.jsx("h3",{className:`text-lg font-semibold text-gray-900 ${e}`,...a,children:t})}function i({className:e="",children:t,...a}){return s.jsx("div",{className:e,...a,children:t})}function c({variant:e="gray",dot:t=!1,className:a="",children:r,...l}){let n=["badge",{success:"badge-success",warning:"badge-warning",error:"badge-error",info:"badge-info",gray:"badge-gray"}[e],a].filter(Boolean).join(" ");return(0,s.jsxs)("span",{className:n,...l,children:[t&&s.jsx("span",{className:`mr-1.5 inline-block h-2 w-2 rounded-full ${{success:"bg-green-600",warning:"bg-yellow-600",error:"bg-red-600",info:"bg-blue-600",gray:"bg-gray-600"}[e]}`,"aria-hidden":"true"}),r]})}a(17577);var d=a(28676)},11867:(e,t,a)=>{a.d(t,{n:()=>d});var s=a(10326),r=a(17577),l=a(77758),n=a(11865),o=a(73002),i=a(91515),c=a(51223);function d({worktreeId:e}){let[t,a]=(0,r.useState)([]),[d,u]=(0,r.useState)(null),[x,m]=(0,r.useState)(null),[h,p]=(0,r.useState)(!0),[g,f]=(0,r.useState)(null),[b,y]=(0,r.useState)(""),[v,j]=(0,r.useState)(0),[w,N]=(0,r.useState)("all"),[k,C]=(0,r.useState)(!1),{toasts:S,showToast:L,removeToast:z}=(0,n.pm)(),$=(0,r.useMemo)(()=>"all"===w?t:t.filter(e=>e.toLowerCase().includes(w)),[t,w]),M=async t=>{try{p(!0),f(null);let a=await o.Iv.getLogFile(e,t);m(a.content),u(t),y(""),j(0)}catch(e){f((0,o.zG)(e))}finally{p(!1)}},E=(0,r.useCallback)(async()=>{if(d)try{C(!0);let t=await o.Iv.getLogFile(e,d,{sanitize:!0});await (0,i.v)(t.content),L("Log copied to clipboard (sanitized)","success")}catch(e){L(`Failed to export log: ${(0,o.zG)(e)}`,"error")}finally{C(!1)}},[e,d,L]),T=(0,r.useMemo)(()=>{let e;if(!b||!x)return[];let t=RegExp((0,c.hr)(b),"gi"),a=[];for(;null!==(e=t.exec(x));)a.push({index:e.index,length:e[0].length});return a},[b,x]),A=()=>{T.length>0&&j(e=>(e+1)%T.length)},I=()=>{T.length>0&&j(e=>(e-1+T.length)%T.length)},D=(0,r.useMemo)(()=>{if(!x||!b||0===T.length)return x;let e="",t=0;return T.forEach((a,s)=>{e+=(0,c.Xv)(x.substring(t,a.index));let r=x.substring(a.index,a.index+a.length),l=s===v;e+=`<mark class="${l?"bg-yellow-400 text-black":"bg-yellow-200 text-black"}" data-match-index="${s}">${(0,c.Xv)(r)}</mark>`,t=a.index+a.length}),e+=(0,c.Xv)(x.substring(t))},[x,b,T,v]);return(0,s.jsxs)("div",{className:"space-y-4",children:[(0,s.jsxs)(l.Zb,{padding:"md",children:[s.jsx(l.Ol,{children:(0,s.jsxs)("div",{className:"space-y-3",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[s.jsx(l.ll,{children:"Log Files"}),s.jsx(l.Ct,{variant:"gray",children:$.length})]}),(0,s.jsxs)("div",{className:"flex gap-2 flex-wrap",children:[(0,s.jsxs)(l.zx,{variant:"all"===w?"primary":"ghost",size:"sm",onClick:()=>N("all"),children:["All (",t.length,")"]}),(0,s.jsxs)(l.zx,{variant:"claude"===w?"primary":"ghost",size:"sm",onClick:()=>N("claude"),children:["Claude (",t.filter(e=>e.toLowerCase().includes("claude")).length,")"]}),(0,s.jsxs)(l.zx,{variant:"codex"===w?"primary":"ghost",size:"sm",onClick:()=>N("codex"),children:["Codex (",t.filter(e=>e.toLowerCase().includes("codex")).length,")"]}),(0,s.jsxs)(l.zx,{variant:"gemini"===w?"primary":"ghost",size:"sm",onClick:()=>N("gemini"),children:["Gemini (",t.filter(e=>e.toLowerCase().includes("gemini")).length,")"]})]})]})}),(0,s.jsxs)(l.aY,{children:[h&&0===t.length&&s.jsx("div",{className:"text-center py-4",children:s.jsx("div",{className:"inline-block animate-spin rounded-full h-6 w-6 border-4 border-gray-300 border-t-blue-600"})}),g&&s.jsx("div",{className:"p-3 bg-red-50 border border-red-200 rounded text-sm text-red-800",children:g}),!h&&0===$.length&&!g&&s.jsx("p",{className:"text-sm text-gray-600 text-center py-4",children:"all"===w?"No log files found":`No ${w} log files found`}),$.length>0&&s.jsx("div",{className:"space-y-2",children:$.map(e=>s.jsx("button",{onClick:()=>M(e),className:`w-full text-left px-3 py-2 rounded text-sm font-mono transition-colors ${d===e?"bg-blue-50 text-blue-700 border border-blue-200":"hover:bg-gray-50 border border-transparent"}`,children:e},e))})]})]}),d&&(0,s.jsxs)(l.Zb,{padding:"md",children:[s.jsx(l.Ol,{children:(0,s.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between",children:[s.jsx(l.ll,{className:"font-mono text-base",children:d}),(0,s.jsxs)("div",{className:"flex gap-2",children:[s.jsx(l.zx,{variant:"ghost",size:"sm",onClick:E,disabled:!d||k,title:"Copy sanitized log to clipboard",children:k?"Exporting...":"Export"}),s.jsx(l.zx,{variant:"ghost",size:"sm",onClick:()=>{u(null),m(null),y(""),j(0)},children:"Close"})]})]}),(0,s.jsxs)("div",{className:"flex items-center gap-2",children:[(0,s.jsxs)("div",{className:"relative flex-1",children:[s.jsx("input",{type:"text",value:b,onChange:e=>y(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),e.shiftKey?I():A())},placeholder:"Search in log file...",className:"input w-full pr-20"}),T.length>0&&(0,s.jsxs)("div",{className:"absolute right-2 top-1/2 -translate-y-1/2 text-xs text-gray-500",children:[v+1," / ",T.length]})]}),T.length>0&&(0,s.jsxs)("div",{className:"flex gap-1",children:[s.jsx(l.zx,{variant:"ghost",size:"sm",onClick:I,disabled:0===T.length,title:"Previous match (Shift+Enter)",children:"↑"}),s.jsx(l.zx,{variant:"ghost",size:"sm",onClick:A,disabled:0===T.length,title:"Next match (Enter)",children:"↓"})]})]})]})}),(0,s.jsxs)(l.aY,{children:[h&&s.jsx("div",{className:"text-center py-8",children:s.jsx("div",{className:"inline-block animate-spin rounded-full h-8 w-8 border-4 border-gray-300 border-t-blue-600"})}),!h&&x&&s.jsx("div",{className:"bg-gray-900 text-gray-100 rounded p-4 overflow-x-auto max-h-[500px] scrollbar-thin",children:b&&T.length>0?s.jsx("pre",{className:"text-xs font-mono whitespace-pre-wrap",dangerouslySetInnerHTML:{__html:D||""}}):s.jsx("pre",{className:"text-xs font-mono whitespace-pre-wrap",children:x})}),!h&&b&&0===T.length&&x&&(0,s.jsxs)("div",{className:"text-center py-4 text-sm text-gray-500",children:['No matches found for "',b,'"']})]})]}),s.jsx(n.Ix,{toasts:S,onClose:z})]})}},15470:(e,t,a)=>{a.d(t,{R:()=>x});var s=a(10326),r=a(17577),l=a(73002);function n(e,t){if(!t.trim())return e;let a=t.toLowerCase();return e.map(e=>({...e,commands:e.commands.filter(e=>{let t=e.name.toLowerCase().includes(a),s=e.description.toLowerCase().includes(a);return t||s})})).filter(e=>e.commands.length>0)}function o({groups:e,onSelect:t,highlightedIndex:a=-1,className:r=""}){let l=0;return 0===e.length?s.jsx("div",{className:`text-sm text-gray-500 p-4 text-center ${r}`,children:"No commands available"}):s.jsx("div",{className:`overflow-y-auto ${r}`,children:e.map(e=>(0,s.jsxs)("div",{className:"mb-2",children:[s.jsx("div",{className:"px-3 py-1.5 text-xs font-semibold text-gray-500 uppercase tracking-wider bg-gray-50",children:e.label}),s.jsx("div",{children:e.commands.map(e=>{let r=l;l++;let n=r===a;return(0,s.jsxs)("button",{type:"button","data-command-item":!0,"data-highlighted":n,onClick:()=>t(e),className:`w-full px-3 py-2 text-left flex items-start gap-2 hover:bg-blue-50 transition-colors ${n?"bg-blue-100":""}`,children:[(0,s.jsxs)("span",{className:"text-blue-600 font-mono text-sm flex-shrink-0",children:["/",e.name]}),s.jsx("span",{className:"text-gray-600 text-sm truncate",children:e.description})]},e.name)})})]},e.category))})}function i({isOpen:e,groups:t,onSelect:a,onClose:l,isMobile:i=!1,position:c,onFreeInput:d}){let[u,x]=(0,r.useState)(""),[m,h]=(0,r.useState)(0),p=(0,r.useRef)(null),g=(0,r.useMemo)(()=>n(t,u),[t,u]),f=(0,r.useMemo)(()=>g.flatMap(e=>e.commands),[g]),b=(0,r.useCallback)(e=>{a(e),l()},[a,l]);return((0,r.useCallback)(t=>{if(e)switch(t.key){case"Escape":t.preventDefault(),l();break;case"ArrowDown":t.preventDefault(),h(e=>Math.min(e+1,f.length-1));break;case"ArrowUp":t.preventDefault(),h(e=>Math.max(e-1,0));break;case"Enter":t.preventDefault(),f[m]&&b(f[m])}},[e,f,m,l,b]),e)?i?(0,s.jsxs)(s.Fragment,{children:[s.jsx("div",{className:"fixed inset-0 bg-black/50 z-40",onClick:l,"aria-hidden":"true"}),(0,s.jsxs)("div",{"data-testid":"slash-command-bottom-sheet",className:"fixed bottom-0 left-0 right-0 bg-white rounded-t-xl z-50 max-h-[70vh] flex flex-col shadow-xl",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-200",children:[s.jsx("h2",{className:"text-lg font-semibold",children:"Commands"}),s.jsx("button",{type:"button",onClick:l,"aria-label":"Close",className:"p-2 rounded-full hover:bg-gray-100",children:s.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),s.jsx("div",{className:"px-4 py-2 border-b border-gray-100",children:s.jsx("input",{ref:p,type:"text",value:u,onChange:e=>x(e.target.value),placeholder:"Search commands...",className:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500"})}),d&&(0,s.jsxs)("button",{type:"button","data-testid":"free-input-button",onClick:()=>d(u),className:"w-full px-4 py-3 text-left border-b border-gray-100 flex items-center gap-2 hover:bg-blue-50 transition-colors",children:[s.jsx("span",{className:"text-blue-600",children:s.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"})})}),s.jsx("span",{className:"text-gray-600",children:"Enter custom command..."})]}),s.jsx(o,{groups:g,onSelect:b,highlightedIndex:m,className:"flex-1 overflow-y-auto pb-20"})]})]}):(0,s.jsxs)("div",{role:"listbox",className:"absolute bg-white border border-gray-200 rounded-lg shadow-lg z-50 w-80 max-h-96 flex flex-col",style:c?{top:c.top,left:c.left}:{bottom:"100%",left:0,marginBottom:"4px"},children:[s.jsx("div",{className:"px-3 py-2 border-b border-gray-100",children:s.jsx("input",{ref:p,type:"text",value:u,onChange:e=>x(e.target.value),placeholder:"Search commands...",className:"w-full px-3 py-1.5 text-sm border border-gray-300 rounded focus:outline-none focus:ring-1 focus:ring-blue-500"})}),d&&(0,s.jsxs)("button",{type:"button","data-testid":"free-input-button",onClick:()=>d(u),className:"w-full px-3 py-2 text-left border-b border-gray-100 flex items-center gap-2 hover:bg-blue-50 transition-colors text-sm",children:[s.jsx("span",{className:"text-blue-600",children:s.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"})})}),s.jsx("span",{className:"text-gray-600",children:"Enter custom command..."})]}),s.jsx(o,{groups:g,onSelect:b,highlightedIndex:m,className:"flex-1 overflow-y-auto"}),(0,s.jsxs)("div",{className:"px-3 py-1.5 border-t border-gray-100 text-xs text-gray-400 flex gap-3",children:[(0,s.jsxs)("span",{children:[s.jsx("kbd",{className:"px-1 py-0.5 bg-gray-100 rounded",children:"Enter"})," select"]}),(0,s.jsxs)("span",{children:[s.jsx("kbd",{className:"px-1 py-0.5 bg-gray-100 rounded",children:"Esc"})," close"]})]})]}):null}function c({worktreeId:e,cliToolId:t,disabled:a=!1,onInterrupt:l}){let[n,o]=(0,r.useState)(!1),i=(0,r.useRef)(0),c=(0,r.useCallback)(async()=>{let a=Date.now();if(!(a-i.current<1e3)){i.current=a,o(!0);try{let a=await fetch(`/api/worktrees/${e}/interrupt`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cliToolId:t})});if(a.ok)l?.();else{let e=await a.json().catch(()=>({}));console.error("[InterruptButton] Failed to send interrupt:",e.error||a.statusText)}}catch(e){console.error("[InterruptButton] Error sending interrupt:",e)}finally{o(!1)}}},[e,t,l]);return s.jsx("button",{type:"button",onClick:c,disabled:a||n,className:"flex-shrink-0 p-2 text-orange-600 hover:bg-orange-50 rounded-full transition-colors disabled:text-gray-300 disabled:hover:bg-transparent","aria-label":"Stop processing","data-testid":"interrupt-button",children:n?(0,s.jsxs)("svg",{className:"animate-spin h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[s.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),s.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}):s.jsx(d,{})})}function d(){return s.jsx("svg",{className:"h-5 w-5",fill:"currentColor",viewBox:"0 0 24 24",children:s.jsx("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})})}var u=a(2982);function x({worktreeId:e,onMessageSent:t,cliToolId:a,isSessionRunning:o=!1}){let[d,x]=(0,r.useState)(""),[m,h]=(0,r.useState)(!1),[p,g]=(0,r.useState)(null),[f,b]=(0,r.useState)(!1),[y,v]=(0,r.useState)(!1),[j,w]=(0,r.useState)(!1),N=(0,r.useRef)(null),k=(0,r.useRef)(null),C=(0,r.useRef)(!1),S=(0,r.useRef)(null),L=(0,u.d)(),{groups:z}=function(e,t){let[a,s]=(0,r.useState)([]),[o,i]=(0,r.useState)(!0),[c,d]=(0,r.useState)(null),[u,x]=(0,r.useState)(""),[m,h]=(0,r.useState)(t||"claude"),p=(0,r.useCallback)(async()=>{try{i(!0),d(null);let a=e?`/api/worktrees/${e}/slash-commands`:"/api/slash-commands";t&&(a+=`?cliTool=${t}`);let r=await fetch(a);if(!r.ok)throw Error(`HTTP error ${r.status}`);let l=await r.json();s(l.groups),h(l.cliTool||t||"claude")}catch(e){d((0,l.zG)(e)),s([])}finally{i(!1)}},[e,t]),g=(0,r.useMemo)(()=>a.flatMap(e=>e.commands),[a]),f=(0,r.useMemo)(()=>n(a,u),[a,u]);return{groups:a,filteredGroups:f,allCommands:g,loading:o,error:c,filter:u,setFilter:x,refresh:(0,r.useCallback)(()=>{p()},[p]),cliTool:m}}(e,a),$=async()=>{if(!f&&d.trim()&&!m)try{h(!0),g(null);let s=a||"claude";await l.Iv.sendMessage(e,d.trim(),s),x(""),w(!1),t?.(s)}catch(e){g((0,l.zG)(e))}finally{h(!1)}},M=async e=>{e.preventDefault(),await $()},E=()=>{v(!1),w(!1),N.current?.focus()};return(0,s.jsxs)("div",{ref:S,className:"space-y-2 relative",children:[p&&s.jsx("div",{className:"p-2 bg-red-50 border border-red-200 rounded text-sm text-red-800",children:p}),(0,s.jsxs)("form",{onSubmit:M,className:"flex items-end gap-2 bg-white border border-gray-300 rounded-lg px-4 py-2 focus-within:border-blue-500 focus-within:ring-1 focus-within:ring-blue-500",children:[L&&s.jsx("button",{type:"button",onClick:()=>{j&&w(!1),v(!0)},className:"flex-shrink-0 p-2 text-gray-500 hover:text-blue-600 hover:bg-blue-50 rounded-full transition-colors","aria-label":"Show slash commands","data-testid":"mobile-command-button",children:s.jsx("svg",{className:"h-5 w-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 20l4-16m2 16l4-16M6 9h14M4 15h14"})})}),s.jsx("textarea",{ref:N,value:d,onChange:e=>{let t=e.target.value;if(x(t),""===t){w(!1),v(!1);return}j||("/"===t||t.startsWith("/")&&!t.includes(" ")?v(!0):v(!1))},onKeyDown:e=>{let{keyCode:t}=e.nativeEvent;if(229!==t){if("Escape"===e.key&&y){e.preventDefault(),E();return}if(C.current&&"Enter"===e.key){C.current=!1;return}if("Enter"===e.key&&!f&&(!y||j)){if(L)return;e.shiftKey||(e.preventDefault(),$())}}},onCompositionStart:()=>{b(!0),C.current=!1,k.current&&clearTimeout(k.current)},onCompositionEnd:()=>{b(!1),C.current=!0,k.current&&clearTimeout(k.current),k.current=setTimeout(()=>{C.current=!1},300)},placeholder:L?"Type your message...":"Type your message... (/ for commands, Shift+Enter for line break)",disabled:m,rows:1,className:"flex-1 outline-none bg-transparent resize-none py-1 overflow-y-auto scrollbar-thin",style:{minHeight:"24px",maxHeight:"160px"}}),s.jsx(c,{worktreeId:e,cliToolId:a||"claude",disabled:!o}),s.jsx("button",{type:"submit",disabled:!d.trim()||m,className:"flex-shrink-0 p-2 text-blue-600 hover:bg-blue-50 rounded-full transition-colors disabled:text-gray-300 disabled:hover:bg-transparent","aria-label":"Send message",children:m?(0,s.jsxs)("svg",{className:"animate-spin h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[s.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),s.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}):s.jsx("svg",{className:"h-5 w-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 19l9 2-9-18-9 18 9-2zm0 0v-8"})})})]}),s.jsx(i,{isOpen:y,groups:z,onSelect:e=>{x(`/${e.name} `),v(!1),N.current?.focus()},onClose:E,isMobile:L,onFreeInput:e=>{v(!1),w(!0),x(e?`/${e}`:"/"),setTimeout(()=>{N.current?.focus()},50)}})]})}},61421:(e,t,a)=>{a.d(t,{F4:()=>r,Ie:()=>n,xh:()=>l});let s={idle:"bg-gray-500",ready:"bg-green-500",spinner:"border-blue-500",waiting:"bg-yellow-500",error:"bg-red-500"},r={idle:{className:s.idle,label:"Idle",type:"dot"},ready:{className:s.ready,label:"Ready",type:"dot"},running:{className:s.spinner,label:"Running",type:"spinner"},waiting:{className:s.waiting,label:"Waiting for response",type:"dot"},generating:{className:s.spinner,label:"Generating",type:"spinner"}},l={idle:{className:s.idle,label:"Idle",type:"dot"},ready:{className:s.ready,label:"Ready",type:"dot"},running:{className:s.spinner,label:"Running",type:"spinner"},waiting:{className:s.waiting,label:"Waiting for response",type:"dot"},error:{className:s.error,label:"Error",type:"dot"}},n={idle:{className:s.idle,label:"Idle - No active session",type:"dot"},ready:{className:s.ready,label:"Ready - Waiting for input",type:"dot"},running:{className:s.spinner,label:"Running - Processing",type:"spinner"},waiting:{className:s.waiting,label:"Waiting - User input required",type:"dot"},error:{className:s.error,label:"Error",type:"dot"}}},22202:(e,t,a)=>{a.d(t,{k:()=>s});let s={DROPDOWN:10,SIDEBAR:30,MODAL:50,MAXIMIZED_EDITOR:55,TOAST:60,CONTEXT_MENU:70}},2982:(e,t,a)=>{a.d(t,{G:()=>r,d:()=>l});var s=a(17577);let r=768;function l(e={}){let{breakpoint:t=r}=e,[a,l]=(0,s.useState)(!1);return a}},91515:(e,t,a)=>{a.d(t,{v:()=>r});let s=/\x1b\[[0-9;]*[a-zA-Z]|\x1b\][^\x07]*\x07|\[[0-9;]*m/g;async function r(e){if(!e||0===e.trim().length)return;let t=e.replace(s,"");await navigator.clipboard.writeText(t)}},41593:(e,t,a)=>{a.d(t,{G:()=>n});var s=a(27808),r=a(18811);let l={en:r._,ja:s.ja};function n(e){return l[e]??r._}},51223:(e,t,a)=>{function s(e,t){let a=null;return(...s)=>{a&&clearTimeout(a),a=setTimeout(()=>{e(...s),a=null},t)}}function r(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function l(e){let t=new Set;for(let a of e){t.add(a);let e=a.split("/"),s="";for(let a=0;a<e.length-1;a++)s=s?`${s}/${e[a]}`:e[a],t.add(s)}return t}function n(e,t=30){return e.length<=t?e:`${e.substring(0,t-3)}...`}function o(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}a.d(t,{Ds:()=>s,Ps:()=>l,Xv:()=>o,aS:()=>n,hr:()=>r})},18421:(e,t,a)=>{function s(e){return e?e.isWaitingForResponse?"waiting":e.isProcessing?"running":e.isRunning?"ready":"idle":"idle"}function r(e){let t=!!e.lastAssistantMessageAt&&(!e.lastViewedAt||new Date(e.lastAssistantMessageAt)>new Date(e.lastViewedAt));return{id:e.id,name:e.name,repositoryName:e.repositoryName,status:"idle",hasUnread:t,lastActivity:e.updatedAt,description:e.description,cliStatus:{claude:s(e.sessionStatusByCli?.claude),codex:s(e.sessionStatusByCli?.codex)}}}a.d(t,{He:()=>s,I_:()=>r})},63601:(e,t,a)=>{a.r(t),a.d(t,{default:()=>r});var s=a(66621);let r=e=>[{type:"image/png",sizes:"180x180",url:(0,s.fillMetadataSegment)(".",e.params,"apple-icon.png")+"?31a89e65aa4ac65b"}]},71150:(e,t,a)=>{a.r(t),a.d(t,{default:()=>r});var s=a(66621);let r=e=>[{type:"image/png",sizes:"32x32",url:(0,s.fillMetadataSegment)(".",e.params,"icon.png")+"?32d9127ba30ee286"}]}};
|
|
35
|
+
`,role:"main",children:e})]})})},28676:(e,t,a)=>{a.d(t,{u:()=>o});var r=a(10326),s=a(17577),l=a(60962),n=a(22202);function o({isOpen:e,onClose:t,title:a,children:o,size:i="lg",showCloseButton:c=!0,disableClose:d=!1}){let u=(0,s.useRef)(null);return e?(0,l.createPortal)((0,r.jsxs)("div",{className:"fixed inset-0 overflow-y-auto",style:{zIndex:n.k.MODAL},children:[r.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 transition-opacity",onClick:d?void 0:t}),r.jsx("div",{className:"relative flex min-h-full items-center justify-center p-2 sm:p-4",children:(0,r.jsxs)("div",{ref:u,className:`relative w-full ${{sm:"max-w-[calc(100vw-2rem)] sm:max-w-md",md:"max-w-[calc(100vw-2rem)] sm:max-w-2xl",lg:"max-w-[calc(100vw-2rem)] sm:max-w-4xl",xl:"max-w-[calc(100vw-2rem)] sm:max-w-6xl",full:"max-w-[calc(100vw-2rem)] sm:max-w-[95vw]"}[i]} max-h-[calc(100vh-1rem)] sm:max-h-[calc(100vh-2rem)] flex flex-col bg-white rounded-lg shadow-xl transform transition-all`,children:[(a||c)&&(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 sm:px-6 py-3 sm:py-4 border-b border-gray-200 flex-shrink-0",children:[r.jsx("h3",{className:"text-base sm:text-lg font-semibold text-gray-900 truncate pr-2",children:a}),c&&r.jsx("button",{onClick:t,className:"text-gray-400 hover:text-gray-600 transition-colors flex-shrink-0",children:r.jsx("svg",{className:"w-5 h-5 sm:w-6 sm:h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),r.jsx("div",{className:"px-4 sm:px-6 py-3 sm:py-4 overflow-y-auto flex-1 min-h-0",children:o})]})})]}),document.body):null}},77758:(e,t,a)=>{a.d(t,{Ct:()=>c,zx:()=>s,Zb:()=>l,aY:()=>i,Ol:()=>n,ll:()=>o,u_:()=>d.u});var r=a(10326);function s({variant:e="primary",size:t="md",fullWidth:a=!1,loading:s=!1,disabled:l,className:n="",children:o,...i}){let c=["btn",{primary:"btn-primary",secondary:"btn-secondary",danger:"btn-danger",ghost:"bg-transparent text-gray-700 hover:bg-gray-100 focus:ring-gray-500"}[e],{sm:"btn-sm",md:"",lg:"btn-lg"}[t],a?"w-full":"",l||s?"opacity-50 cursor-not-allowed":"",n].filter(Boolean).join(" ");return(0,r.jsxs)("button",{className:c,disabled:l||s,...i,children:[s&&(0,r.jsxs)("svg",{className:"animate-spin -ml-1 mr-2 h-4 w-4",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[r.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),r.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}),o]})}function l({hover:e=!1,padding:t="md",className:a="",children:s,...l}){let n=["card",e?"card-hover":"",{none:"",sm:"p-3",md:"p-4",lg:"p-6"}[t],a].filter(Boolean).join(" ");return r.jsx("div",{className:n,...l,children:s})}function n({className:e="",children:t,...a}){return r.jsx("div",{className:`mb-3 ${e}`,...a,children:t})}function o({className:e="",children:t,...a}){return r.jsx("h3",{className:`text-lg font-semibold text-gray-900 ${e}`,...a,children:t})}function i({className:e="",children:t,...a}){return r.jsx("div",{className:e,...a,children:t})}function c({variant:e="gray",dot:t=!1,className:a="",children:s,...l}){let n=["badge",{success:"badge-success",warning:"badge-warning",error:"badge-error",info:"badge-info",gray:"badge-gray"}[e],a].filter(Boolean).join(" ");return(0,r.jsxs)("span",{className:n,...l,children:[t&&r.jsx("span",{className:`mr-1.5 inline-block h-2 w-2 rounded-full ${{success:"bg-green-600",warning:"bg-yellow-600",error:"bg-red-600",info:"bg-blue-600",gray:"bg-gray-600"}[e]}`,"aria-hidden":"true"}),s]})}a(17577);var d=a(28676)},11867:(e,t,a)=>{a.d(t,{n:()=>d});var r=a(10326),s=a(17577),l=a(77758),n=a(11865),o=a(73002),i=a(91515),c=a(51223);function d({worktreeId:e}){let[t,a]=(0,s.useState)([]),[d,u]=(0,s.useState)(null),[x,m]=(0,s.useState)(null),[h,g]=(0,s.useState)(!0),[p,f]=(0,s.useState)(null),[b,y]=(0,s.useState)(""),[v,j]=(0,s.useState)(0),[w,N]=(0,s.useState)("all"),[k,C]=(0,s.useState)(!1),{toasts:S,showToast:L,removeToast:z}=(0,n.pm)(),$=(0,s.useMemo)(()=>"all"===w?t:t.filter(e=>e.toLowerCase().includes(w)),[t,w]),M=async t=>{try{g(!0),f(null);let a=await o.Iv.getLogFile(e,t);m(a.content),u(t),y(""),j(0)}catch(e){f((0,o.zG)(e))}finally{g(!1)}},E=(0,s.useCallback)(async()=>{if(d)try{C(!0);let t=await o.Iv.getLogFile(e,d,{sanitize:!0});await (0,i.v)(t.content),L("Log copied to clipboard (sanitized)","success")}catch(e){L(`Failed to export log: ${(0,o.zG)(e)}`,"error")}finally{C(!1)}},[e,d,L]),T=(0,s.useMemo)(()=>{let e;if(!b||!x)return[];let t=RegExp((0,c.hr)(b),"gi"),a=[];for(;null!==(e=t.exec(x));)a.push({index:e.index,length:e[0].length});return a},[b,x]),A=()=>{T.length>0&&j(e=>(e+1)%T.length)},D=()=>{T.length>0&&j(e=>(e-1+T.length)%T.length)},I=(0,s.useMemo)(()=>{if(!x||!b||0===T.length)return x;let e="",t=0;return T.forEach((a,r)=>{e+=(0,c.Xv)(x.substring(t,a.index));let s=x.substring(a.index,a.index+a.length),l=r===v;e+=`<mark class="${l?"bg-yellow-400 text-black":"bg-yellow-200 text-black"}" data-match-index="${r}">${(0,c.Xv)(s)}</mark>`,t=a.index+a.length}),e+=(0,c.Xv)(x.substring(t))},[x,b,T,v]);return(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsxs)(l.Zb,{padding:"md",children:[r.jsx(l.Ol,{children:(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[r.jsx(l.ll,{children:"Log Files"}),r.jsx(l.Ct,{variant:"gray",children:$.length})]}),(0,r.jsxs)("div",{className:"flex gap-2 flex-wrap",children:[(0,r.jsxs)(l.zx,{variant:"all"===w?"primary":"ghost",size:"sm",onClick:()=>N("all"),children:["All (",t.length,")"]}),(0,r.jsxs)(l.zx,{variant:"claude"===w?"primary":"ghost",size:"sm",onClick:()=>N("claude"),children:["Claude (",t.filter(e=>e.toLowerCase().includes("claude")).length,")"]}),(0,r.jsxs)(l.zx,{variant:"codex"===w?"primary":"ghost",size:"sm",onClick:()=>N("codex"),children:["Codex (",t.filter(e=>e.toLowerCase().includes("codex")).length,")"]}),(0,r.jsxs)(l.zx,{variant:"gemini"===w?"primary":"ghost",size:"sm",onClick:()=>N("gemini"),children:["Gemini (",t.filter(e=>e.toLowerCase().includes("gemini")).length,")"]})]})]})}),(0,r.jsxs)(l.aY,{children:[h&&0===t.length&&r.jsx("div",{className:"text-center py-4",children:r.jsx("div",{className:"inline-block animate-spin rounded-full h-6 w-6 border-4 border-gray-300 border-t-blue-600"})}),p&&r.jsx("div",{className:"p-3 bg-red-50 border border-red-200 rounded text-sm text-red-800",children:p}),!h&&0===$.length&&!p&&r.jsx("p",{className:"text-sm text-gray-600 text-center py-4",children:"all"===w?"No log files found":`No ${w} log files found`}),$.length>0&&r.jsx("div",{className:"space-y-2",children:$.map(e=>r.jsx("button",{onClick:()=>M(e),className:`w-full text-left px-3 py-2 rounded text-sm font-mono transition-colors ${d===e?"bg-blue-50 text-blue-700 border border-blue-200":"hover:bg-gray-50 border border-transparent"}`,children:e},e))})]})]}),d&&(0,r.jsxs)(l.Zb,{padding:"md",children:[r.jsx(l.Ol,{children:(0,r.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[r.jsx(l.ll,{className:"font-mono text-base",children:d}),(0,r.jsxs)("div",{className:"flex gap-2",children:[r.jsx(l.zx,{variant:"ghost",size:"sm",onClick:E,disabled:!d||k,title:"Copy sanitized log to clipboard",children:k?"Exporting...":"Export"}),r.jsx(l.zx,{variant:"ghost",size:"sm",onClick:()=>{u(null),m(null),y(""),j(0)},children:"Close"})]})]}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsxs)("div",{className:"relative flex-1",children:[r.jsx("input",{type:"text",value:b,onChange:e=>y(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),e.shiftKey?D():A())},placeholder:"Search in log file...",className:"input w-full pr-20"}),T.length>0&&(0,r.jsxs)("div",{className:"absolute right-2 top-1/2 -translate-y-1/2 text-xs text-gray-500",children:[v+1," / ",T.length]})]}),T.length>0&&(0,r.jsxs)("div",{className:"flex gap-1",children:[r.jsx(l.zx,{variant:"ghost",size:"sm",onClick:D,disabled:0===T.length,title:"Previous match (Shift+Enter)",children:"↑"}),r.jsx(l.zx,{variant:"ghost",size:"sm",onClick:A,disabled:0===T.length,title:"Next match (Enter)",children:"↓"})]})]})]})}),(0,r.jsxs)(l.aY,{children:[h&&r.jsx("div",{className:"text-center py-8",children:r.jsx("div",{className:"inline-block animate-spin rounded-full h-8 w-8 border-4 border-gray-300 border-t-blue-600"})}),!h&&x&&r.jsx("div",{className:"bg-gray-900 text-gray-100 rounded p-4 overflow-x-auto max-h-[500px] scrollbar-thin",children:b&&T.length>0?r.jsx("pre",{className:"text-xs font-mono whitespace-pre-wrap",dangerouslySetInnerHTML:{__html:I||""}}):r.jsx("pre",{className:"text-xs font-mono whitespace-pre-wrap",children:x})}),!h&&b&&0===T.length&&x&&(0,r.jsxs)("div",{className:"text-center py-4 text-sm text-gray-500",children:['No matches found for "',b,'"']})]})]}),r.jsx(n.Ix,{toasts:S,onClose:z})]})}},15470:(e,t,a)=>{a.d(t,{R:()=>x});var r=a(10326),s=a(17577),l=a(73002);function n(e,t){if(!t.trim())return e;let a=t.toLowerCase();return e.map(e=>({...e,commands:e.commands.filter(e=>{let t=e.name.toLowerCase().includes(a),r=e.description.toLowerCase().includes(a);return t||r})})).filter(e=>e.commands.length>0)}function o({groups:e,onSelect:t,highlightedIndex:a=-1,className:s=""}){let l=0;return 0===e.length?r.jsx("div",{className:`text-sm text-gray-500 p-4 text-center ${s}`,children:"No commands available"}):r.jsx("div",{className:`overflow-y-auto ${s}`,children:e.map(e=>(0,r.jsxs)("div",{className:"mb-2",children:[r.jsx("div",{className:"px-3 py-1.5 text-xs font-semibold text-gray-500 uppercase tracking-wider bg-gray-50",children:e.label}),r.jsx("div",{children:e.commands.map(e=>{let s=l;l++;let n=s===a;return(0,r.jsxs)("button",{type:"button","data-command-item":!0,"data-highlighted":n,onClick:()=>t(e),className:`w-full px-3 py-2 text-left flex items-start gap-2 hover:bg-blue-50 transition-colors ${n?"bg-blue-100":""}`,children:[(0,r.jsxs)("span",{className:"text-blue-600 font-mono text-sm flex-shrink-0",children:["/",e.name]}),r.jsx("span",{className:"text-gray-600 text-sm truncate",children:e.description})]},e.name)})})]},e.category))})}function i({isOpen:e,groups:t,onSelect:a,onClose:l,isMobile:i=!1,position:c,onFreeInput:d}){let[u,x]=(0,s.useState)(""),[m,h]=(0,s.useState)(0),g=(0,s.useRef)(null),p=(0,s.useMemo)(()=>n(t,u),[t,u]),f=(0,s.useMemo)(()=>p.flatMap(e=>e.commands),[p]),b=(0,s.useCallback)(e=>{a(e),l()},[a,l]);return((0,s.useCallback)(t=>{if(e)switch(t.key){case"Escape":t.preventDefault(),l();break;case"ArrowDown":t.preventDefault(),h(e=>Math.min(e+1,f.length-1));break;case"ArrowUp":t.preventDefault(),h(e=>Math.max(e-1,0));break;case"Enter":t.preventDefault(),f[m]&&b(f[m])}},[e,f,m,l,b]),e)?i?(0,r.jsxs)(r.Fragment,{children:[r.jsx("div",{className:"fixed inset-0 bg-black/50 z-40",onClick:l,"aria-hidden":"true"}),(0,r.jsxs)("div",{"data-testid":"slash-command-bottom-sheet",className:"fixed bottom-0 left-0 right-0 bg-white rounded-t-xl z-50 max-h-[70vh] flex flex-col shadow-xl",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-gray-200",children:[r.jsx("h2",{className:"text-lg font-semibold",children:"Commands"}),r.jsx("button",{type:"button",onClick:l,"aria-label":"Close",className:"p-2 rounded-full hover:bg-gray-100",children:r.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),r.jsx("div",{className:"px-4 py-2 border-b border-gray-100",children:r.jsx("input",{ref:g,type:"text",value:u,onChange:e=>x(e.target.value),placeholder:"Search commands...",className:"w-full px-3 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500"})}),d&&(0,r.jsxs)("button",{type:"button","data-testid":"free-input-button",onClick:()=>d(u),className:"w-full px-4 py-3 text-left border-b border-gray-100 flex items-center gap-2 hover:bg-blue-50 transition-colors",children:[r.jsx("span",{className:"text-blue-600",children:r.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"})})}),r.jsx("span",{className:"text-gray-600",children:"Enter custom command..."})]}),r.jsx(o,{groups:p,onSelect:b,highlightedIndex:m,className:"flex-1 overflow-y-auto pb-20"})]})]}):(0,r.jsxs)("div",{role:"listbox",className:"absolute bg-white border border-gray-200 rounded-lg shadow-lg z-50 w-80 max-h-96 flex flex-col",style:c?{top:c.top,left:c.left}:{bottom:"100%",left:0,marginBottom:"4px"},children:[r.jsx("div",{className:"px-3 py-2 border-b border-gray-100",children:r.jsx("input",{ref:g,type:"text",value:u,onChange:e=>x(e.target.value),placeholder:"Search commands...",className:"w-full px-3 py-1.5 text-sm border border-gray-300 rounded focus:outline-none focus:ring-1 focus:ring-blue-500"})}),d&&(0,r.jsxs)("button",{type:"button","data-testid":"free-input-button",onClick:()=>d(u),className:"w-full px-3 py-2 text-left border-b border-gray-100 flex items-center gap-2 hover:bg-blue-50 transition-colors text-sm",children:[r.jsx("span",{className:"text-blue-600",children:r.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M11 5H6a2 2 0 00-2 2v11a2 2 0 002 2h11a2 2 0 002-2v-5m-1.414-9.414a2 2 0 112.828 2.828L11.828 15H9v-2.828l8.586-8.586z"})})}),r.jsx("span",{className:"text-gray-600",children:"Enter custom command..."})]}),r.jsx(o,{groups:p,onSelect:b,highlightedIndex:m,className:"flex-1 overflow-y-auto"}),(0,r.jsxs)("div",{className:"px-3 py-1.5 border-t border-gray-100 text-xs text-gray-400 flex gap-3",children:[(0,r.jsxs)("span",{children:[r.jsx("kbd",{className:"px-1 py-0.5 bg-gray-100 rounded",children:"Enter"})," select"]}),(0,r.jsxs)("span",{children:[r.jsx("kbd",{className:"px-1 py-0.5 bg-gray-100 rounded",children:"Esc"})," close"]})]})]}):null}function c({worktreeId:e,cliToolId:t,disabled:a=!1,onInterrupt:l}){let[n,o]=(0,s.useState)(!1),i=(0,s.useRef)(0),c=(0,s.useCallback)(async()=>{let a=Date.now();if(!(a-i.current<1e3)){i.current=a,o(!0);try{let a=await fetch(`/api/worktrees/${e}/interrupt`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cliToolId:t})});if(a.ok)l?.();else{let e=await a.json().catch(()=>({}));console.error("[InterruptButton] Failed to send interrupt:",e.error||a.statusText)}}catch(e){console.error("[InterruptButton] Error sending interrupt:",e)}finally{o(!1)}}},[e,t,l]);return r.jsx("button",{type:"button",onClick:c,disabled:a||n,className:"flex-shrink-0 p-2 text-orange-600 hover:bg-orange-50 rounded-full transition-colors disabled:text-gray-300 disabled:hover:bg-transparent","aria-label":"Stop processing","data-testid":"interrupt-button",children:n?(0,r.jsxs)("svg",{className:"animate-spin h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[r.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),r.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}):r.jsx(d,{})})}function d(){return r.jsx("svg",{className:"h-5 w-5",fill:"currentColor",viewBox:"0 0 24 24",children:r.jsx("rect",{x:"6",y:"6",width:"12",height:"12",rx:"2"})})}var u=a(2982);function x({worktreeId:e,onMessageSent:t,cliToolId:a,isSessionRunning:o=!1}){let[d,x]=(0,s.useState)(""),[m,h]=(0,s.useState)(!1),[g,p]=(0,s.useState)(null),[f,b]=(0,s.useState)(!1),[y,v]=(0,s.useState)(!1),[j,w]=(0,s.useState)(!1),N=(0,s.useRef)(null),k=(0,s.useRef)(null),C=(0,s.useRef)(!1),S=(0,s.useRef)(null),L=(0,u.d)(),{groups:z}=function(e,t){let[a,r]=(0,s.useState)([]),[o,i]=(0,s.useState)(!0),[c,d]=(0,s.useState)(null),[u,x]=(0,s.useState)(""),[m,h]=(0,s.useState)(t||"claude"),g=(0,s.useCallback)(async()=>{try{i(!0),d(null);let a=e?`/api/worktrees/${e}/slash-commands`:"/api/slash-commands";t&&(a+=`?cliTool=${t}`);let s=await fetch(a);if(!s.ok)throw Error(`HTTP error ${s.status}`);let l=await s.json();r(l.groups),h(l.cliTool||t||"claude")}catch(e){d((0,l.zG)(e)),r([])}finally{i(!1)}},[e,t]),p=(0,s.useMemo)(()=>a.flatMap(e=>e.commands),[a]),f=(0,s.useMemo)(()=>n(a,u),[a,u]);return{groups:a,filteredGroups:f,allCommands:p,loading:o,error:c,filter:u,setFilter:x,refresh:(0,s.useCallback)(()=>{g()},[g]),cliTool:m}}(e,a),$=async()=>{if(!f&&d.trim()&&!m)try{h(!0),p(null);let r=a||"claude";await l.Iv.sendMessage(e,d.trim(),r),x(""),w(!1),t?.(r)}catch(e){p((0,l.zG)(e))}finally{h(!1)}},M=async e=>{e.preventDefault(),await $()},E=()=>{v(!1),w(!1),N.current?.focus()};return(0,r.jsxs)("div",{ref:S,className:"space-y-2 relative",children:[g&&r.jsx("div",{className:"p-2 bg-red-50 border border-red-200 rounded text-sm text-red-800",children:g}),(0,r.jsxs)("form",{onSubmit:M,className:"flex items-end gap-2 bg-white border border-gray-300 rounded-lg px-4 py-2 focus-within:border-blue-500 focus-within:ring-1 focus-within:ring-blue-500",children:[L&&r.jsx("button",{type:"button",onClick:()=>{j&&w(!1),v(!0)},className:"flex-shrink-0 p-2 text-gray-500 hover:text-blue-600 hover:bg-blue-50 rounded-full transition-colors","aria-label":"Show slash commands","data-testid":"mobile-command-button",children:r.jsx("svg",{className:"h-5 w-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M7 20l4-16m2 16l4-16M6 9h14M4 15h14"})})}),r.jsx("textarea",{ref:N,value:d,onChange:e=>{let t=e.target.value;if(x(t),""===t){w(!1),v(!1);return}j||("/"===t||t.startsWith("/")&&!t.includes(" ")?v(!0):v(!1))},onKeyDown:e=>{let{keyCode:t}=e.nativeEvent;if(229!==t){if("Escape"===e.key&&y){e.preventDefault(),E();return}if(C.current&&"Enter"===e.key){C.current=!1;return}if("Enter"===e.key&&!f&&(!y||j)){if(L)return;e.shiftKey||(e.preventDefault(),$())}}},onCompositionStart:()=>{b(!0),C.current=!1,k.current&&clearTimeout(k.current)},onCompositionEnd:()=>{b(!1),C.current=!0,k.current&&clearTimeout(k.current),k.current=setTimeout(()=>{C.current=!1},300)},placeholder:L?"Type your message...":"Type your message... (/ for commands, Shift+Enter for line break)",disabled:m,rows:1,className:"flex-1 outline-none bg-transparent resize-none py-1 overflow-y-auto scrollbar-thin",style:{minHeight:"24px",maxHeight:"160px"}}),r.jsx(c,{worktreeId:e,cliToolId:a||"claude",disabled:!o}),r.jsx("button",{type:"submit",disabled:!d.trim()||m,className:"flex-shrink-0 p-2 text-blue-600 hover:bg-blue-50 rounded-full transition-colors disabled:text-gray-300 disabled:hover:bg-transparent","aria-label":"Send message",children:m?(0,r.jsxs)("svg",{className:"animate-spin h-5 w-5",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[r.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),r.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})]}):r.jsx("svg",{className:"h-5 w-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:r.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 19l9 2-9-18-9 18 9-2zm0 0v-8"})})})]}),r.jsx(i,{isOpen:y,groups:z,onSelect:e=>{x(`/${e.name} `),v(!1),N.current?.focus()},onClose:E,isMobile:L,onFreeInput:e=>{v(!1),w(!0),x(e?`/${e}`:"/"),setTimeout(()=>{N.current?.focus()},50)}})]})}},61421:(e,t,a)=>{a.d(t,{F4:()=>s,Ie:()=>n,xh:()=>l});let r={idle:"bg-gray-500",ready:"bg-green-500",spinner:"border-blue-500",waiting:"bg-yellow-500",error:"bg-red-500"},s={idle:{className:r.idle,label:"Idle",type:"dot"},ready:{className:r.ready,label:"Ready",type:"dot"},running:{className:r.spinner,label:"Running",type:"spinner"},waiting:{className:r.waiting,label:"Waiting for response",type:"dot"},generating:{className:r.spinner,label:"Generating",type:"spinner"}},l={idle:{className:r.idle,label:"Idle",type:"dot"},ready:{className:r.ready,label:"Ready",type:"dot"},running:{className:r.spinner,label:"Running",type:"spinner"},waiting:{className:r.waiting,label:"Waiting for response",type:"dot"},error:{className:r.error,label:"Error",type:"dot"}},n={idle:{className:r.idle,label:"Idle - No active session",type:"dot"},ready:{className:r.ready,label:"Ready - Waiting for input",type:"dot"},running:{className:r.spinner,label:"Running - Processing",type:"spinner"},waiting:{className:r.waiting,label:"Waiting - User input required",type:"dot"},error:{className:r.error,label:"Error",type:"dot"}}},22202:(e,t,a)=>{a.d(t,{k:()=>r});let r={DROPDOWN:10,SIDEBAR:30,MODAL:50,MAXIMIZED_EDITOR:55,TOAST:60,CONTEXT_MENU:70}},2982:(e,t,a)=>{a.d(t,{G:()=>s,d:()=>l});var r=a(17577);let s=768;function l(e={}){let{breakpoint:t=s}=e,[a,l]=(0,r.useState)(!1);return a}},2491:(e,t,a)=>{a.d(t,{Ds:()=>l,tK:()=>r,ts:()=>n});let r=["claude","codex","gemini","vibe-local"],s={claude:"Claude",codex:"Codex",gemini:"Gemini","vibe-local":"Vibe Local"};function l(e){return s[e]??e}function n(e,t="Assistant"){return e&&r.includes(e)?l(e):t}},91515:(e,t,a)=>{a.d(t,{v:()=>s});let r=/\x1b\[[0-9;]*[a-zA-Z]|\x1b\][^\x07]*\x07|\[[0-9;]*m/g;async function s(e){if(!e||0===e.trim().length)return;let t=e.replace(r,"");await navigator.clipboard.writeText(t)}},41593:(e,t,a)=>{a.d(t,{G:()=>n});var r=a(27808),s=a(18811);let l={en:s._,ja:r.ja};function n(e){return l[e]??s._}},77465:(e,t,a)=>{a.d(t,{Fq:()=>r}),a(2491);let r=["claude","codex"]},51223:(e,t,a)=>{function r(e,t){let a=null;return(...r)=>{a&&clearTimeout(a),a=setTimeout(()=>{e(...r),a=null},t)}}function s(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function l(e){let t=new Set;for(let a of e){t.add(a);let e=a.split("/"),r="";for(let a=0;a<e.length-1;a++)r=r?`${r}/${e[a]}`:e[a],t.add(r)}return t}function n(e,t=30){return e.length<=t?e:`${e.substring(0,t-3)}...`}function o(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}a.d(t,{Ds:()=>r,Ps:()=>l,Xv:()=>o,aS:()=>n,hr:()=>s})},18421:(e,t,a)=>{a.d(t,{He:()=>s,I_:()=>l});var r=a(77465);function s(e){return e?e.isWaitingForResponse?"waiting":e.isProcessing?"running":e.isRunning?"ready":"idle":"idle"}function l(e){let t=!!e.lastAssistantMessageAt&&(!e.lastViewedAt||new Date(e.lastAssistantMessageAt)>new Date(e.lastViewedAt)),a=e.selectedAgents??r.Fq,l={};for(let t of a)l[t]=s(e.sessionStatusByCli?.[t]);return{id:e.id,name:e.name,repositoryName:e.repositoryName,status:"idle",hasUnread:t,lastActivity:e.updatedAt,description:e.description,cliStatus:l}}},63601:(e,t,a)=>{a.r(t),a.d(t,{default:()=>s});var r=a(66621);let s=e=>[{type:"image/png",sizes:"180x180",url:(0,r.fillMetadataSegment)(".",e.params,"apple-icon.png")+"?31a89e65aa4ac65b"}]},71150:(e,t,a)=>{a.r(t),a.d(t,{default:()=>s});var r=a(66621);let s=e=>[{type:"image/png",sizes:"32x32",url:(0,r.fillMetadataSegment)(".",e.params,"icon.png")+"?32d9127ba30ee286"}]}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=5853,exports.ids=[5853],exports.modules={45853:e=>{e.exports=JSON.parse('{"confirmationFromClaude":"Claudeからの確認","sending":"送信中...","failedToRespond":"応答の送信に失敗しました。もう一度お試しください。","default":"デフォルト","answered":"回答済み","awaitingSelection":"選択待ち","yes":"はい / Yes","no":"いいえ / No","enterCustomMessage":"カスタムメッセージを入力してください","enterMessageHere":"ここにメッセージを入力...","enterValuePlaceholder":"値を入力してください...","submit":"送信"}')}};
|
|
1
|
+
"use strict";exports.id=5853,exports.ids=[5853],exports.modules={45853:e=>{e.exports=JSON.parse('{"confirmationFromClaude":"Claudeからの確認","confirmationFrom":"{toolName}からの確認","sending":"送信中...","failedToRespond":"応答の送信に失敗しました。もう一度お試しください。","default":"デフォルト","answered":"回答済み","awaitingSelection":"選択待ち","yes":"はい / Yes","no":"いいえ / No","enterCustomMessage":"カスタムメッセージを入力してください","enterMessageHere":"ここにメッセージを入力...","enterValuePlaceholder":"値を入力してください...","submit":"送信"}')}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=6228,exports.ids=[6228],exports.modules={86228:e=>{e.exports=JSON.parse('{"title":"Schedules","executionLogs":"Execution Logs","noSchedules":"No schedules configured. Add a CMATE.md with a Schedules section.","noSchedulesTitle":"No schedules configured","noSchedulesStep1":"Switch to the Files tab","noSchedulesStep2":"Click the CMATE button in the toolbar to create CMATE.md","noSchedulesStep3":"Edit the Schedules table (Name, Cron, Message, CLI Tool, Enabled, Permission)","noSchedulesStep4":"Click CMATE again to validate","noLogs":"No execution logs yet.","status":{"running":"Running","completed":"Completed","failed":"Failed","timeout":"Timeout","cancelled":"Cancelled"},"enabled":"Enabled","disabled":"Disabled","lastRun":"Last run","cron":"Cron","exitCode":"Exit","noOutput":"(no output)","message":"Message","response":"Response","unknownSchedule":"(deleted schedule)","retry":"Retry","loading":"Loading...","notes":"Notes","logs":"Schedules","notesAndLogs":"CMATE","agentTab":"Agent","agentSettings":"Agent Settings","selectAgents":"Select 2 agents to display in the terminal header tabs.","agentSaveSuccess":"Agent settings saved.","agentSaveError":"Failed to save agent settings.","vibeLocalModel":"Ollama Model","vibeLocalModelDefault":"Default","ollamaNotAvailable":"Ollama is not running. Start Ollama to select a model.","cmateCreated":"CMATE.md created with template. Edit it to configure schedules.","cmateValidation":{"noSchedulesSection":"CMATE.md has no Schedules section.","valid":"{count} schedule(s) validated successfully.","errors":"{errorCount} validation error(s) found: {details}","failed":"Failed to process CMATE.md."}}')}};
|