@jlongo78/agent-spaces 0.9.7 → 0.9.9
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/standalone/.claude/settings.local.json +17 -4
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +4 -0
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/routes-manifest.json +29 -0
- package/.next/standalone/.next/server/app/(desktop)/admin/analytics/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(desktop)/admin/analytics/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/admin/users/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/analytics/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/cortex/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/network/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/sessions/[id]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(desktop)/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/sessions/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/terminal/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/(desktop)/terminal/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/terminal/pane/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/terminal/remote/[nodeId]/[workspaceId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/(desktop)/workspaces/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +2 -2
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/analytics.html +1 -1
- package/.next/standalone/.next/server/app/admin/analytics.rsc +3 -3
- package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin/analytics/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin/analytics.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap/admin.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/analytics.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/analytics.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/admin/analytics.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/analytics.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/analytics.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/users.html +1 -1
- package/.next/standalone/.next/server/app/admin/users.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin/users/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin/users.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap/admin.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/users.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/users.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/users.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/admin/users.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/admin/users.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/analytics.html +1 -1
- package/.next/standalone/.next/server/app/analytics.rsc +2 -2
- package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap/analytics/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap/analytics.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/analytics.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/analytics.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/analytics.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/analytics.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/analytics.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/api/analytics/overview/route.js +1 -1
- package/.next/standalone/.next/server/app/api/analytics/overview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/lobes/route.js +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/lobes/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/run/route.js +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/run/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/runs/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/runs/route.js +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/runs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/status/route.js +1 -1
- package/.next/standalone/.next/server/app/api/benchmark/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/bulk/route.js +1 -1
- package/.next/standalone/.next/server/app/api/bulk/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/claude/usage/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/claude/usage/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/claude/usage/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/claude/usage/route.js +8 -0
- package/.next/standalone/.next/server/app/api/claude/usage/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/claude/usage/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/claude/usage/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/config/route.js +1 -1
- package/.next/standalone/.next/server/app/api/config/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/context/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/context/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/assess/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/assess/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/publish/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/publish/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/refine/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/refine/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/review/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/review/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/seed/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/curation/seed/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/export/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/export/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/federation/pending/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/federation/pending/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/federation/resolve/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/federation/resolve/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/federation/search/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/federation/search/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/federation/teach/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/federation/teach/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/graph/edges/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/graph/edges/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/graph/entities/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/graph/entities/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/graph/entities/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/graph/entities/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/graph/populate/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/graph/populate/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/import/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/import/status/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/import/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/ingest/bootstrap/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/ingest/bootstrap/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/ingest/status/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/ingest/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/knowledge/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/knowledge/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/knowledge/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/knowledge/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/lobes/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/lobes/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/lobes/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/lobes/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/lobes/share/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/lobes/share/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/marketplace/browse/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/marketplace/preview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/mcp/call/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/mcp/call/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/mcp/tools/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/mcp/tools/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/search/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/search/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/settings/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/settings/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/status/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/timeline/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/timeline/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/usage/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/usage/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/cortex/workspace/[id]/context/route.js +1 -1
- package/.next/standalone/.next/server/app/api/cortex/workspace/[id]/context/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/events/route.js +1 -1
- package/.next/standalone/.next/server/app/api/events/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/files/route.js +1 -1
- package/.next/standalone/.next/server/app/api/files/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/folders/route.js +1 -1
- package/.next/standalone/.next/server/app/api/folders/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/handshake/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/handshake/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/panes/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/panes/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/panes/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/panes/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/projects/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/projects/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/search/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/search/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/sessions/[id]/messages/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/sessions/[id]/messages/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/sessions/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/sessions/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/workspaces/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/workspaces/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/network/workspaces/route.js +1 -1
- package/.next/standalone/.next/server/app/api/network/workspaces/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/panes/[id]/diff/route.js +1 -1
- package/.next/standalone/.next/server/app/api/panes/[id]/diff/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/panes/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/panes/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/panes/route.js +1 -1
- package/.next/standalone/.next/server/app/api/panes/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/projects/route.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/proxy/models/[modelId]/[...path]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/proxy/models/[modelId]/[...path]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/proxy/models/[modelId]/status/route.js +1 -1
- package/.next/standalone/.next/server/app/api/proxy/models/[modelId]/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/search/route.js +2 -2
- package/.next/standalone/.next/server/app/api/search/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/chat/route.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/chat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/messages/route.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/messages/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/route.js +2 -2
- package/.next/standalone/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sync/route.js +1 -1
- package/.next/standalone/.next/server/app/api/sync/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tags/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tags/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tier/route.js +1 -1
- package/.next/standalone/.next/server/app/api/tier/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/whisper/config/route.js +1 -1
- package/.next/standalone/.next/server/app/api/whisper/config/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/whisper/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/wizard/chart/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/wizard/chart/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/wizard/chart/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/wizard/chart/route.js +7 -0
- package/.next/standalone/.next/server/app/api/wizard/chart/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/wizard/chart/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/wizard/chart/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/wizard/chat/route.js +1 -1
- package/.next/standalone/.next/server/app/api/wizard/chat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/context/[key]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/context/[key]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/context/route.js +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/context/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/[msgId]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/[msgId]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/route.js +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/messages/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route.js +8 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/[todoId]/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route.js +8 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/workspaces/[id]/todos/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/workspaces/route.js +2 -2
- package/.next/standalone/.next/server/app/api/workspaces/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/cortex.html +1 -1
- package/.next/standalone/.next/server/app/cortex.rsc +3 -3
- package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap/cortex/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap/cortex.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/cortex.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/cortex.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/cortex.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/cortex.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/cortex.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/login.html +1 -1
- package/.next/standalone/.next/server/app/login.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/m/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/m/projects.html +1 -1
- package/.next/standalone/.next/server/app/m/projects.rsc +2 -2
- package/.next/standalone/.next/server/app/m/projects.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/projects.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/projects.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/projects.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/projects.segments/m/projects/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/projects.segments/m/projects.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/projects.segments/m.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/sessions/[id]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/m/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/m/sessions/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/m/sessions.html +1 -1
- package/.next/standalone/.next/server/app/m/sessions.rsc +2 -2
- package/.next/standalone/.next/server/app/m/sessions.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/sessions.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/sessions.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/sessions.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/sessions.segments/m/sessions/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/sessions.segments/m/sessions.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/sessions.segments/m.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/m/settings.html +1 -1
- package/.next/standalone/.next/server/app/m/settings.rsc +2 -2
- package/.next/standalone/.next/server/app/m/settings.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/settings.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/settings.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/settings.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/settings.segments/m/settings/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/settings.segments/m/settings.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/settings.segments/m.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/terminal/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/m/terminal.html +1 -1
- package/.next/standalone/.next/server/app/m/terminal.rsc +3 -3
- package/.next/standalone/.next/server/app/m/terminal.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/m/terminal.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/terminal.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/terminal.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/terminal.segments/m/terminal/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m/terminal.segments/m/terminal.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m/terminal.segments/m.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m.html +1 -1
- package/.next/standalone/.next/server/app/m.rsc +2 -2
- package/.next/standalone/.next/server/app/m.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/m.segments/m/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/m.segments/m.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/network.html +1 -1
- package/.next/standalone/.next/server/app/network.rsc +2 -2
- package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap/network/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap/network.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/network.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/network.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/network.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/network.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/network.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/projects.html +1 -1
- package/.next/standalone/.next/server/app/projects.rsc +2 -2
- package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap/projects/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap/projects.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/projects.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/projects.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/sessions.html +1 -1
- package/.next/standalone/.next/server/app/sessions.rsc +2 -2
- package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap/sessions/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap/sessions.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/sessions.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/sessions.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/sessions.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/sessions.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/sessions.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/settings.html +1 -1
- package/.next/standalone/.next/server/app/settings.rsc +3 -3
- package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap/settings/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap/settings.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/settings.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/terminal.html +1 -1
- package/.next/standalone/.next/server/app/terminal.rsc +3 -3
- package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap/terminal/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap/terminal.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/terminal.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/terminal.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/terminal.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/terminal.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/terminal.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/vr/page/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/server/app/vr/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/vr.html +1 -1
- package/.next/standalone/.next/server/app/vr.rsc +3 -3
- package/.next/standalone/.next/server/app/vr.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/vr.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/vr.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/vr.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/vr.segments/vr/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/vr.segments/vr.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/workspaces.html +1 -1
- package/.next/standalone/.next/server/app/workspaces.rsc +2 -2
- package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap/workspaces/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap/workspaces.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/workspaces.segments/!KGRlc2t0b3Ap.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/workspaces.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/workspaces.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/workspaces.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/workspaces.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app-paths-manifest.json +4 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00e90fc6._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__01ab8675._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__03974f05._.js +111 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__bb331da9._.js → [root-of-the-server]__046c9b91._.js} +16 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04ae6bf0._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__056fa416._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ac4ea3f._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0b8e64cb._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0facd39e._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__10bc76a3._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__115f3934._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11f155f1._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__160e7c73._.js +50 -33
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__17a3b966._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__17d3a2b2._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1a86c055._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__20b5e9c4._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__28d6fbd8._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2a3f866b._.js +119 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__a95bb38b._.js → [root-of-the-server]__316617e7._.js} +3 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__32ad8f71._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__35457394._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__35de78e6._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__3685ffcb._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__38954988._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__3a32b624._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__426ad936._.js +119 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__4985c034._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__5c6ce9ed._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__5cebe58a._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__5d5e4789._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__65676930._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__67cab326._.js +58 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__698c6f01._.js +111 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__7ebc4280._.js → [root-of-the-server]__6c64af29._.js} +22 -9
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__73aed9f5._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__79b6a9bb._.js +111 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__e56abacf._.js → [root-of-the-server]__7db704c6._.js} +18 -5
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__812ca02b._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__821f50fa._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8716b86e._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__884ef754._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__88cdbd68._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__89d9aba9._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8c2e1260._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8d536cb5._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8df8c5d1._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8f2ccc41._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__95c9d682._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__9e5d7774._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__9edcff87._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__a049dfc2._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__a5b4bb9a._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__a83262a1._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__a9cd1240._.js +111 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__efb8251e._.js → [root-of-the-server]__a9d7f822._.js} +16 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ad08c221._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ad585f2f._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__afcb8f7d._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__bc250d43._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__bce2a6e7._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c011bf91._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c0ac2895._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c37d6380._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__cae392eb._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__cc2616bb._.js +16 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d501fa9b._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d59c6c15._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d5c1db32._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__dba60c86._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__de14b9ae._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e10643d1._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e2a996e5._.js +127 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e3477417._.js +111 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__32dc5513._.js → [root-of-the-server]__e4db362e._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e4e70b86._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e54925af._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e8cbeaca._.js +111 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__cabaac2b._.js → [root-of-the-server]__e8edc5b0._.js} +16 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__eab4d83b._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ead29015._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__f056fd83._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__f0e99572._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__fe1e16d0._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ff9cd277._.js +111 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ffaea2ce._.js +111 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_claude_usage_route_actions_fe002ec1.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_wizard_chart_route_actions_888e2ec1.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_workspaces_[id]_todos_route_actions_0d4ffac5.js +3 -0
- package/.next/standalone/.next/server/chunks/ce889_server_app_api_workspaces_[id]_todos_[todoId]_route_actions_754fe6b9.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__2cffc362._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__f1050870._.js → [root-of-the-server]__47c97637._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__66aca5d4._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_20c2cf3a._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_2a1d79e7._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_5c3c4cfa._.js +7 -5
- package/.next/standalone/.next/server/chunks/ssr/_5f55bf8f._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_ba432382._.js +7 -5
- package/.next/standalone/.next/server/chunks/ssr/src_app_(desktop)_cortex_page_tsx_0f33d8b3._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_(desktop)_settings_page_tsx_f74824b3._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_(desktop)_terminal_page_tsx_de5e8d85._.js +4 -4
- package/.next/standalone/.next/server/edge/chunks/[root-of-the-server]__90eeddae._.js +1 -1
- package/.next/standalone/.next/server/middleware-manifest.json +5 -5
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +2 -2
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/{74d0ac0b1d0a1b79.js → 10b00b4f66102dcf.js} +1 -1
- package/.next/standalone/.next/static/chunks/14216197f9dcbe5b.css +3 -0
- package/.next/standalone/.next/static/chunks/{16eb77953dee9ea3.js → 19c71a8376c23c58.js} +1 -1
- package/.next/standalone/.next/static/chunks/{3e91fc608659c524.js → 350271fe79509caf.js} +1 -1
- package/.next/standalone/.next/static/chunks/4c9fb0a38f041a3d.js +85 -0
- package/.next/standalone/.next/static/chunks/{70423c7afd8abf5f.js → 597847c22200c212.js} +1 -1
- package/.next/standalone/.next/static/chunks/8f6f93ab45a5ff5b.js +1 -0
- package/.next/standalone/.next/static/chunks/{7ecd9bbb0ce4d68a.js → b7c8fe9b7275a84f.js} +1 -1
- package/.next/standalone/.next/static/chunks/{6245135a7afb8c7b.js → c9b10fc55516d142.js} +8 -6
- package/.next/standalone/.next/static/chunks/d0065f48eab94944.js +1 -0
- package/.next/standalone/.next/static/chunks/{e62bb488d02db247.js → d2566c2dcf53fef3.js} +1 -1
- package/.next/standalone/.next/static/chunks/{180c1b9ff31b979f.js → f7b34c807badf95d.js} +8 -6
- package/.next/standalone/.next/static/chunks/{fb0abd1933b2b2e1.js → ff7d85dade44d1f3.js} +1 -1
- package/.next/standalone/.spaces/cortex-context.md +35 -129
- package/.next/standalone/bin/spaces.js +7 -4
- package/.next/standalone/bin/terminal-server.js +48 -10
- package/.next/standalone/cortex-hook-debug.log +118 -23
- package/.next/standalone/docs/features/claude-usage.md +105 -0
- package/.next/standalone/docs/features/workspace-todos.md +127 -0
- package/.next/standalone/docs/superpowers/plans/2026-04-21-workspace-todos.md +1097 -0
- package/.next/standalone/docs/superpowers/plans/2026-04-22-claude-usage-display.md +749 -0
- package/.next/standalone/docs/superpowers/specs/2026-04-21-workspace-todos-design.md +180 -0
- package/.next/standalone/docs/superpowers/specs/2026-04-22-claude-usage-display-design.md +183 -0
- package/.next/standalone/package-lock.json +2 -2
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/src/app/(desktop)/settings/page.tsx +40 -1
- package/.next/standalone/src/app/(desktop)/terminal/page.tsx +98 -7
- package/.next/standalone/src/app/api/benchmark/run/route.ts +24 -3
- package/.next/standalone/src/app/api/claude/usage/route.ts +33 -0
- package/.next/standalone/src/app/api/config/route.ts +3 -0
- package/.next/standalone/src/app/api/cortex/context/route.ts +1 -1
- package/.next/standalone/src/app/api/cortex/knowledge/route.ts +1 -1
- package/.next/standalone/src/app/api/cortex/search/route.ts +14 -2
- package/.next/standalone/src/app/api/folders/route.ts +16 -6
- package/.next/standalone/src/app/api/network/panes/[id]/route.ts +27 -11
- package/.next/standalone/src/app/api/network/panes/route.ts +25 -14
- package/.next/standalone/src/app/api/network/projects/route.ts +11 -4
- package/.next/standalone/src/app/api/network/search/route.ts +21 -14
- package/.next/standalone/src/app/api/network/sessions/[id]/messages/route.ts +18 -11
- package/.next/standalone/src/app/api/network/sessions/[id]/route.ts +16 -9
- package/.next/standalone/src/app/api/network/sessions/route.ts +25 -18
- package/.next/standalone/src/app/api/network/workspaces/[id]/route.ts +21 -12
- package/.next/standalone/src/app/api/network/workspaces/route.ts +16 -14
- package/.next/standalone/src/app/api/whisper/config/route.ts +16 -8
- package/.next/standalone/src/app/api/wizard/chart/route.ts +129 -0
- package/.next/standalone/src/app/api/workspaces/[id]/todos/[todoId]/route.ts +55 -0
- package/.next/standalone/src/app/api/workspaces/[id]/todos/route.ts +43 -0
- package/.next/standalone/src/components/claude/claude-usage-strip.tsx +175 -0
- package/.next/standalone/src/components/cortex/benchmark-tab.tsx +14 -0
- package/.next/standalone/src/components/terminal/terminal-pane.tsx +78 -12
- package/.next/standalone/src/components/wizard/chart-wizard.tsx +405 -0
- package/.next/standalone/src/components/workspace/workspace-todos.tsx +265 -0
- package/.next/standalone/src/hooks/use-benchmark.ts +1 -0
- package/.next/standalone/src/hooks/use-claude-usage.ts +66 -0
- package/.next/standalone/src/hooks/use-speech-recognition.ts +2 -1
- package/.next/standalone/src/lib/claude/credentials.ts +36 -0
- package/.next/standalone/src/lib/claude/usage.ts +69 -0
- package/.next/standalone/src/lib/config.ts +3 -0
- package/.next/standalone/src/lib/cortex/benchmark.ts +17 -1
- package/.next/standalone/src/lib/cortex/index.ts +54 -1
- package/.next/standalone/src/lib/db/queries.ts +105 -90
- package/.next/standalone/src/lib/db/schema.ts +18 -0
- package/.next/standalone/src/lib/shell-user.ts +101 -0
- package/.next/standalone/src/types/claude.ts +39 -0
- package/.next/standalone/tests/db/workspace-todos.test.ts +156 -0
- package/bin/spaces.js +7 -4
- package/bin/terminal-server.js +48 -10
- package/package.json +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00fdfbda._.js +0 -114
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04f04898._.js +0 -106
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0903a426._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__09e8ccc9._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11c684b1._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1572d4ef._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__186cd0bb._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__194955d4._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__1f054c65._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__212760e6._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__228595ec._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2384f98e._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__277d9445._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__283c890f._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2a2c5fc5._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2d7a454e._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2f300a68._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2f452778._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__35f8e77e._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__379fc2e9._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__3b40d79f._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__3d3dca2b._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__49e42a3a._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__4d5b78d2._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__4d903941._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__54163e52._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__563c0817._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__5812f90a._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__5c5e87f5._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__60d15b16._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__614458b7._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__69d315e5._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__6fe5e6c8._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__71f29038._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__74084e07._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__7921aa80._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__7e077dd8._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__857c60bb._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__874fe565._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8e2171f7._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__91e23c96._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__929ea03a._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__95659b2d._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__9679b91e._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__9d68157b._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__a90729a1._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ac39ecc7._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ac84b704._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ad4346fa._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__b0862d69._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__b43306ee._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__b689ff5e._.js +0 -106
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__ba87daaa._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c0461005._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c1deb5f3._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c8a62f42._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__cb027619._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__cc6e2885._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__cf608218._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__cfc1290d._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d0109b9b._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d0125483._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d048ee6b._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d12644e7._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d95165f0._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e3cc946c._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__e6fd27f8._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__eafd040b._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__f44c6882._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__f85283de._.js +0 -98
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__feceb3e4._.js +0 -98
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__843070a6._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_3ba93bdd._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_e84a0c06._.js +0 -3
- package/.next/standalone/.next/static/chunks/074df89a63b6a854.js +0 -1
- package/.next/standalone/.next/static/chunks/9d4164833c2c1fd6.js +0 -85
- package/.next/standalone/.next/static/chunks/bffaf378f7745d59.css +0 -3
- package/.next/standalone/.next/static/chunks/f091f4bf8d80fd07.js +0 -1
- /package/.next/standalone/.next/static/{0KefPNmR9NsrZHWWt9Xr7 → bAQs2gDlFrq3e8w9ni9tr}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{0KefPNmR9NsrZHWWt9Xr7 → bAQs2gDlFrq3e8w9ni9tr}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/.next/static/{0KefPNmR9NsrZHWWt9Xr7 → bAQs2gDlFrq3e8w9ni9tr}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},821728,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),d=e.i(487718),p=e.i(995169),u=e.i(47587),c=e.i(666012),h=e.i(570101),x=e.i(626937),f=e.i(10372),R=e.i(193695);e.i(52474);var v=e.i(600220),g=e.i(89171),E=e.i(522734),w=e.i(814747),m=e.i(446786);async function y(){let e="",t="";try{let r=w.default.join(m.default.homedir(),".spaces","config.json");if(E.default.existsSync(r)){let a=JSON.parse(E.default.readFileSync(r,"utf-8")).cortex||{};e=a.groq_api_key||"",t=a.openai_api_key||""}}catch{}let r=e||process.env.GROQ_API_KEY,a=t||process.env.OPENAI_API_KEY;return(console.log(`[Whisper Config] configGroq=${e?e.slice(0,8)+"...":"EMPTY"} configOpenai=${t?t.slice(0,8)+"...":"EMPTY"} envGroq=${process.env.GROQ_API_KEY?"SET":"UNSET"} envOpenai=${process.env.OPENAI_API_KEY?"SET":"UNSET"} → returning ${r?"GROQ":a?"OPENAI":"NONE"}`),r)?g.NextResponse.json({apiKey:r,apiUrl:"https://api.groq.com/openai/v1/audio/transcriptions",model:"whisper-large-v3-turbo",backend:"groq"}):a?g.NextResponse.json({apiKey:a,apiUrl:"https://api.openai.com/v1/audio/transcriptions",model:"whisper-1",backend:"openai"}):g.NextResponse.json({error:"No API key configured"},{status:500})}e.s(["GET",()=>y,"dynamic",0,"force-dynamic"],658758);var A=e.i(658758);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/whisper/config/route",pathname:"/api/whisper/config",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/whisper/config/route.ts",nextConfigOutput:"standalone",userland:A}),{workAsyncStorage:N,workUnitAsyncStorage:P,serverHooks:_}=C;function O(){return(0,a.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:P})}async function T(e,t,a){C.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/whisper/config/route";g=g.replace(/\/index$/,"")||"/";let E=await C.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:w,params:m,nextConfig:y,parsedUrl:A,isDraftMode:N,prerenderManifest:P,routerServerContext:_,isOnDemandRevalidate:O,revalidateOnlyGenerated:T,resolvedPathname:b,clientReferenceManifest:q,serverActionsManifest:k}=E,S=(0,i.normalizeAppPath)(g),I=!!(P.dynamicRoutes[S]||P.routes[b]),j=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(I&&!N){let e=!!P.routes[b],t=P.dynamicRoutes[S];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await j();throw new R.NoFallbackError}}let U=null;!I||C.isDev||N||(U="/index"===(U=b)?"/":U);let H=!0===C.isDev||!I,K=I&&!H;k&&q&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:q,serverActionsManifest:k});let M=e.method||"GET",$=(0,s.getTracer)(),D=$.getActiveScopeSpan(),F={params:m,prerenderManifest:P,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:H,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>C.onRequestError(e,t,a,n,_)},sharedContext:{buildId:w}},G=new l.NodeNextRequest(e),Y=new l.NodeNextResponse(t),B=d.NextRequestAdapter.fromNodeNextRequest(G,(0,d.signalFromNodeResponse)(t));try{let o=async e=>C.handle(B,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${g}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let d=async({previousCacheEntry:r})=>{try{if(!i&&O&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=F.renderOpts.collectedTags;if(!I)return await (0,c.sendResponse)(G,Y,s,F.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,a=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:O})},!1,_),t}},p=await C.handleResponse({req:e,nextConfig:y,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:T,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:i});if(!I)return null;if((null==p||null==(s=p.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(l=p.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",O?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),N&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let R=(0,h.fromNodeOutgoingHttpHeaders)(p.value.headers);return i&&I||R.delete(f.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||R.get("Cache-Control")||R.set("Cache-Control",(0,x.getCacheControlHeader)(p.cacheControl)),await (0,c.sendResponse)(G,Y,new Response(p.value.body,{headers:R,status:p.value.status||200})),null};D?await l(D):await $.withPropagatedContext(e.headers,()=>$.trace(p.BaseServerSpan.handleRequest,{spanName:`${M} ${g}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof R.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:O})},!1,_),I)throw t;return await (0,c.sendResponse)(G,Y,new Response(null,{status:500})),null}}e.s(["handler",()=>T,"patchFetch",()=>O,"routeModule",()=>C,"serverHooks",()=>_,"workAsyncStorage",()=>N,"workUnitAsyncStorage",()=>P],821728)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__c0ac2895._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},362562,(e,t,r)=>{t.exports=e.x("module",()=>require("module"))},599944,e=>{"use strict";var t=e.i(362562),r=e.i(814747);let s=null,a=!1;function n(){if(!a){for(let e of function(){let e=[r.default.join(process.cwd(),"package.json")];for(let t of(process.env.NODE_PATH||"").split(r.default.delimiter))t&&e.push(r.default.join(t,"_anchor.js"));return e}())try{s=(0,t.createRequire)(e)("@spaces/teams");break}catch{}a=!0}return s}function i(){return null!==n()}e.s(["getTeams",()=>n,"hasTeams",()=>i])},798003,e=>{"use strict";var t=e.i(814747),r=e.i(522734),s=e.i(446786),a=e.i(254799),n=e.i(717516),i=e.i(599944);let o={port:parseInt(process.env.SPACES_PORT||"3457",10),costRates:{"claude-opus-4-5-20251101":{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},"claude-opus-4-6":{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},"claude-sonnet-4-5-20250929":{input:3,output:15,cacheRead:.3,cacheWrite:3.75},"claude-haiku-4-5-20251001":{input:.8,output:4,cacheRead:.08,cacheWrite:1}}};function l(e){let a,o=e;if(n.HAS_MULTIUSER)try{let t=(0,i.getTeams)();t&&(o=t.admin.resolveShellUser(e))}catch{}if(o===s.default.userInfo().username)a=s.default.homedir();else if(1){let e=t.default.dirname(s.default.homedir()),n=t.default.join(e,o);a=r.default.existsSync(n)?n:s.default.homedir()}else a=`/home/${o}`;let l=o===s.default.userInfo().username?t.default.join(s.default.homedir(),".spaces"):t.default.join(s.default.homedir(),".spaces","users",e);return{claudeDir:t.default.join(a,".claude"),claudeProjectsDir:t.default.join(a,".claude","projects"),statsPath:t.default.join(a,".claude","stats-cache.json"),codexDir:t.default.join(a,".codex"),codexSessionsDir:t.default.join(a,".codex","sessions"),geminiDir:t.default.join(a,".gemini"),geminiChatsBaseDir:t.default.join(a,".gemini","tmp"),geminiProjectsRegistry:t.default.join(a,".gemini","projects.json"),forgeDir:t.default.join(a,".forge"),forgeConversationsDir:t.default.join(a,".forge","conversations"),spacesDir:l,dbPath:t.default.join(l,"spaces.db"),configPath:t.default.join(l,"config.json")}}function u(e){let{spacesDir:t}=l(e);r.default.existsSync(t)||r.default.mkdirSync(t,{recursive:!0})}function c(e){let{configPath:t,spacesDir:s}=l(e);try{if(r.default.existsSync(t)){let e=JSON.parse(r.default.readFileSync(t,"utf-8"));return{installId:e.installId||a.default.randomUUID(),telemetryOptOut:!!e.telemetryOptOut,devDirectories:Array.isArray(e.devDirectories)?e.devDirectories.filter(e=>"string"==typeof e):[],todosEnabled:!!e.todosEnabled,...e.cortex&&"object"==typeof e.cortex?{cortex:e.cortex}:{},customModels:Array.isArray(e.customModels)?e.customModels:[]}}}catch{}r.default.existsSync(s)||r.default.mkdirSync(s,{recursive:!0});let n={installId:a.default.randomUUID(),telemetryOptOut:!1,devDirectories:[],todosEnabled:!1,customModels:[]};return r.default.writeFileSync(t,JSON.stringify(n,null,2)),n}function d(e,t){let s={...c(e),...t},{configPath:a}=l(e);return r.default.writeFileSync(a,JSON.stringify(s,null,2)),s}e.s(["config",0,o,"ensureUserSpacesDir",()=>u,"getUserPaths",()=>l,"readConfig",()=>c,"writeConfig",()=>d])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},804730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.9.9",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js"},files:["bin/",".next/standalone/"],engines:{node:">=20.9.0"},repository:{type:"git",url:"git+https://github.com/jlongo78/spaces.git"},keywords:["ai","agent","workspace","terminal","claude","codex","gemini"],homepage:"http://www.agentspaces.co",license:"AGPL-3.0-only",scripts:{start:"node bin/spaces.js",dev:"node bin/spaces-dev.js",build:"cross-env STANDALONE=1 next build && node -e \"const fs=require('fs');fs.cpSync('.next/static','.next/standalone/.next/static',{recursive:true});fs.cpSync('public','.next/standalone/public',{recursive:true})\" && node bin/fix-standalone-externals.js",postinstall:"node bin/spaces-postinstall.js || true",prepublishOnly:"npm run build",setup:"node bin/spaces-setup.js","setup-admin":"node bin/setup-admin.js","server:build":"next build","server:start":"next start --port 3457",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage",lint:"eslint"},dependencies:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@google-cloud/compute":"^6.9.0","@huggingface/transformers":"^3.8.1","@lancedb/lancedb":"^0.26.2","@modelcontextprotocol/sdk":"^1.27.1","@react-three/drei":"^10.7.7","@react-three/fiber":"^9.5.0","@react-three/postprocessing":"^3.0.4","@react-three/xr":"^6.6.29","@xterm/addon-canvas":"^0.7.0","better-sqlite3":"^12.6.2","bonjour-service":"^1.3.0","dockview-react":"^5.2.0","force-graph":"^1.51.2","node-pty":"^1.1.0","react-resizable-panels":"^4.7.6",three:"^0.183.2",ws:"^8.19.0"},devDependencies:{"@tailwindcss/postcss":"^4","@tanstack/react-query":"^5.90.21","@types/better-sqlite3":"^7.6.13","@types/node":"^20","@types/qrcode":"^1.5.6","@types/react":"^19","@types/react-dom":"^19","@types/three":"^0.183.1","@types/ws":"^8.18.1","@vitest/coverage-v8":"^4.0.18","@xterm/addon-fit":"^0.11.0","@xterm/addon-web-links":"^0.12.0",chokidar:"^5.0.0","class-variance-authority":"^0.7.1",clsx:"^2.1.1","cross-env":"^10.1.0","date-fns":"^4.1.0",eslint:"^9","eslint-config-next":"16.1.6",geist:"^1.4.1","lucide-react":"^0.575.0",next:"16.1.6",otpauth:"^9.5.0","posthog-js":"^1.352.0","posthog-node":"^5.21.2",qrcode:"^1.5.4",react:"19.2.3","react-dom":"19.2.3","react-markdown":"^10.1.0",recharts:"^3.7.0","rehype-highlight":"^7.0.2","remark-gfm":"^4.0.1","tailwind-merge":"^3.5.0",tailwindcss:"^4",typescript:"^5",vitest:"^4.0.18",xterm:"^5.3.0"},optionalDependencies:{"@types/qrcode":"^1.5.6",otpauth:"^9.5.0",qrcode:"^1.5.4"}})},717516,e=>{"use strict";let t=process.env.SPACES_TIER||process.env.NEXT_PUBLIC_TIER||("server"===process.env.NEXT_PUBLIC_EDITION?"federation":"community"),r="team"===t||"federation"===t,s="federation"===t,a=r||"1"===process.env.SPACES_HAS_CORTEX,n=!r;function i(){let i="0.0.0";try{i=e.r(804730).version}catch{}return{tier:t,version:i,hasAuth:r,hasAdmin:r,hasCollaboration:r,hasNetwork:s,hasMultiuser:r,hasCortex:a,isDesktop:n,basePath:""}}e.s(["HAS_ADMIN",0,r,"HAS_AUTH",0,r,"HAS_COLLABORATION",0,r,"HAS_CORTEX",0,a,"HAS_MULTIUSER",0,r,"HAS_NETWORK",0,s,"IS_DESKTOP",0,n,"IS_FEDERATION",0,s,"IS_TEAM",0,r,"TIER",0,t,"getTierFlags",()=>i])},410430,(e,t,r)=>{t.exports=e.x("async_hooks",()=>require("async_hooks"))},79832,e=>{"use strict";var t=e.i(410430),r=e.i(446786),s=e.i(717516);let a=new t.AsyncLocalStorage;function n(e){return s.HAS_AUTH&&e.headers.get("x-auth-user")||r.default.userInfo().username}function i(e,t){return a.run(e,t)}function o(e){return s.HAS_AUTH?e.headers.get("x-auth-role")||"user":"admin"}function l(){let e=a.getStore();return e||r.default.userInfo().username}e.s(["getAuthRole",()=>o,"getAuthUser",()=>n,"getCurrentUser",()=>l,"withUser",()=>i])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},154286,e=>{"use strict";var t=e.i(747909),r=e.i(174017),s=e.i(996250),a=e.i(759756),n=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),u=e.i(487718),c=e.i(995169),d=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),m=e.i(193695);e.i(52474);var g=e.i(600220),v=e.i(89171),y=e.i(79832),R=e.i(798003),w=e.i(522734),A=e.i(814747),E=e.i(233405);async function b(e){let t=(0,y.getAuthUser)(e);return(0,y.withUser)(t,async()=>{let r=new URL(e.url).searchParams.get("file");if(!r)return v.NextResponse.json({error:"file parameter required"},{status:400});let s=A.default.basename(r);if(!s.endsWith(".cortexpack"))return v.NextResponse.json({error:"Invalid file"},{status:400});let{spacesDir:a}=(0,R.getUserPaths)(t),n=A.default.join(a,"cortex","marketplace",s);if(!w.default.existsSync(n))return v.NextResponse.json({error:"Pack not found"},{status:404});try{let e=(0,E.execSync)(`tar -xzf "${n}" -O knowledge.jsonl 2>/dev/null | head -5`,{encoding:"utf-8",timeout:1e4}).trim().split("\n").filter(Boolean).map(e=>{try{let t=JSON.parse(e);return{text:t.text?.slice(0,200),type:t.type}}catch{return null}}).filter(Boolean);return v.NextResponse.json({samples:e})}catch{return v.NextResponse.json({samples:[]})}})}e.s(["GET",()=>b],226903);var S=e.i(226903);let j=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/cortex/marketplace/preview/route",pathname:"/api/cortex/marketplace/preview",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cortex/marketplace/preview/route.ts",nextConfigOutput:"standalone",userland:S}),{workAsyncStorage:C,workUnitAsyncStorage:k,serverHooks:T}=j;function _(){return(0,s.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:k})}async function O(e,t,s){j.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/cortex/marketplace/preview/route";v=v.replace(/\/index$/,"")||"/";let y=await j.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:R,params:w,nextConfig:A,parsedUrl:E,isDraftMode:b,prerenderManifest:S,routerServerContext:C,isOnDemandRevalidate:k,revalidateOnlyGenerated:T,resolvedPathname:_,clientReferenceManifest:O,serverActionsManifest:N}=y,P=(0,o.normalizeAppPath)(v),I=!!(S.dynamicRoutes[P]||S.routes[_]),U=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,E,!1):t.end("This page could not be found"),null);if(I&&!b){let e=!!S.routes[_],t=S.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(A.experimental.adapterPath)return await U();throw new m.NoFallbackError}}let D=null;!I||j.isDev||b||(D="/index"===(D=_)?"/":D);let q=!0===j.isDev||!I,H=I&&!q;N&&O&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:O,serverActionsManifest:N});let M=e.method||"GET",L=(0,n.getTracer)(),F=L.getActiveScopeSpan(),B={params:w,prerenderManifest:S,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:A.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>j.onRequestError(e,t,s,a,C)},sharedContext:{buildId:R}},$=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),W=u.NextRequestAdapter.fromNodeNextRequest($,(0,u.signalFromNodeResponse)(t));try{let i=async e=>j.handle(W,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=L.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let t=`${M} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${v}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!o&&k&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(a);e.fetchMetrics=B.renderOpts.fetchMetrics;let l=B.renderOpts.pendingWaitUntil;l&&s.waitUntil&&(s.waitUntil(l),l=void 0);let u=B.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)($,K,n,B.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,s=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await j.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:k})},!1,C),t}},c=await j.handleResponse({req:e,nextConfig:A,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:T,responseGenerator:u,waitUntil:s.waitUntil,isMinimalMode:o});if(!I)return null;if((null==c||null==(n=c.value)?void 0:n.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",k?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return o&&I||m.delete(x.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,h.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)($,K,new Response(c.value.body,{headers:m,status:c.value.status||200})),null};F?await l(F):await L.withPropagatedContext(e.headers,()=>L.trace(c.BaseServerSpan.handleRequest,{spanName:`${M} ${v}`,kind:n.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await j.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:k})},!1,C),I)throw t;return await (0,p.sendResponse)($,K,new Response(null,{status:500})),null}}e.s(["handler",()=>O,"patchFetch",()=>_,"routeModule",()=>j,"serverHooks",()=>T,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>k],154286)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__c37d6380._.js.map
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
module.exports=[324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},362562,(e,t,r)=>{t.exports=e.x("module",()=>require("module"))},599944,e=>{"use strict";var t=e.i(362562),r=e.i(814747);let s=null,a=!1;function n(){if(!a){for(let e of function(){let e=[r.default.join(process.cwd(),"package.json")];for(let t of(process.env.NODE_PATH||"").split(r.default.delimiter))t&&e.push(r.default.join(t,"_anchor.js"));return e}())try{s=(0,t.createRequire)(e)("@spaces/teams");break}catch{}a=!0}return s}function i(){return null!==n()}e.s(["getTeams",()=>n,"hasTeams",()=>i])},798003,e=>{"use strict";var t=e.i(814747),r=e.i(522734),s=e.i(446786),a=e.i(254799),n=e.i(717516),i=e.i(599944);let o={port:parseInt(process.env.SPACES_PORT||"3457",10),costRates:{"claude-opus-4-5-20251101":{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},"claude-opus-4-6":{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},"claude-sonnet-4-5-20250929":{input:3,output:15,cacheRead:.3,cacheWrite:3.75},"claude-haiku-4-5-20251001":{input:.8,output:4,cacheRead:.08,cacheWrite:1}}};function c(e){let a,o=e;if(n.HAS_MULTIUSER)try{let t=(0,i.getTeams)();t&&(o=t.admin.resolveShellUser(e))}catch{}if(o===s.default.userInfo().username)a=s.default.homedir();else if(1){let e=t.default.dirname(s.default.homedir()),n=t.default.join(e,o);a=r.default.existsSync(n)?n:s.default.homedir()}else a=`/home/${o}`;let c=o===s.default.userInfo().username?t.default.join(s.default.homedir(),".spaces"):t.default.join(s.default.homedir(),".spaces","users",e);return{claudeDir:t.default.join(a,".claude"),claudeProjectsDir:t.default.join(a,".claude","projects"),statsPath:t.default.join(a,".claude","stats-cache.json"),codexDir:t.default.join(a,".codex"),codexSessionsDir:t.default.join(a,".codex","sessions"),geminiDir:t.default.join(a,".gemini"),geminiChatsBaseDir:t.default.join(a,".gemini","tmp"),geminiProjectsRegistry:t.default.join(a,".gemini","projects.json"),forgeDir:t.default.join(a,".forge"),forgeConversationsDir:t.default.join(a,".forge","conversations"),spacesDir:c,dbPath:t.default.join(c,"spaces.db"),configPath:t.default.join(c,"config.json")}}function l(e){let{spacesDir:t}=c(e);r.default.existsSync(t)||r.default.mkdirSync(t,{recursive:!0})}function d(e){let{configPath:t,spacesDir:s}=c(e);try{if(r.default.existsSync(t)){let e=JSON.parse(r.default.readFileSync(t,"utf-8"));return{installId:e.installId||a.default.randomUUID(),telemetryOptOut:!!e.telemetryOptOut,devDirectories:Array.isArray(e.devDirectories)?e.devDirectories.filter(e=>"string"==typeof e):[],todosEnabled:!!e.todosEnabled,...e.cortex&&"object"==typeof e.cortex?{cortex:e.cortex}:{},customModels:Array.isArray(e.customModels)?e.customModels:[]}}}catch{}r.default.existsSync(s)||r.default.mkdirSync(s,{recursive:!0});let n={installId:a.default.randomUUID(),telemetryOptOut:!1,devDirectories:[],todosEnabled:!1,customModels:[]};return r.default.writeFileSync(t,JSON.stringify(n,null,2)),n}function u(e,t){let s={...d(e),...t},{configPath:a}=c(e);return r.default.writeFileSync(a,JSON.stringify(s,null,2)),s}e.s(["config",0,o,"ensureUserSpacesDir",()=>l,"getUserPaths",()=>c,"readConfig",()=>d,"writeConfig",()=>u])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},804730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.9.9",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js"},files:["bin/",".next/standalone/"],engines:{node:">=20.9.0"},repository:{type:"git",url:"git+https://github.com/jlongo78/spaces.git"},keywords:["ai","agent","workspace","terminal","claude","codex","gemini"],homepage:"http://www.agentspaces.co",license:"AGPL-3.0-only",scripts:{start:"node bin/spaces.js",dev:"node bin/spaces-dev.js",build:"cross-env STANDALONE=1 next build && node -e \"const fs=require('fs');fs.cpSync('.next/static','.next/standalone/.next/static',{recursive:true});fs.cpSync('public','.next/standalone/public',{recursive:true})\" && node bin/fix-standalone-externals.js",postinstall:"node bin/spaces-postinstall.js || true",prepublishOnly:"npm run build",setup:"node bin/spaces-setup.js","setup-admin":"node bin/setup-admin.js","server:build":"next build","server:start":"next start --port 3457",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage",lint:"eslint"},dependencies:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@google-cloud/compute":"^6.9.0","@huggingface/transformers":"^3.8.1","@lancedb/lancedb":"^0.26.2","@modelcontextprotocol/sdk":"^1.27.1","@react-three/drei":"^10.7.7","@react-three/fiber":"^9.5.0","@react-three/postprocessing":"^3.0.4","@react-three/xr":"^6.6.29","@xterm/addon-canvas":"^0.7.0","better-sqlite3":"^12.6.2","bonjour-service":"^1.3.0","dockview-react":"^5.2.0","force-graph":"^1.51.2","node-pty":"^1.1.0","react-resizable-panels":"^4.7.6",three:"^0.183.2",ws:"^8.19.0"},devDependencies:{"@tailwindcss/postcss":"^4","@tanstack/react-query":"^5.90.21","@types/better-sqlite3":"^7.6.13","@types/node":"^20","@types/qrcode":"^1.5.6","@types/react":"^19","@types/react-dom":"^19","@types/three":"^0.183.1","@types/ws":"^8.18.1","@vitest/coverage-v8":"^4.0.18","@xterm/addon-fit":"^0.11.0","@xterm/addon-web-links":"^0.12.0",chokidar:"^5.0.0","class-variance-authority":"^0.7.1",clsx:"^2.1.1","cross-env":"^10.1.0","date-fns":"^4.1.0",eslint:"^9","eslint-config-next":"16.1.6",geist:"^1.4.1","lucide-react":"^0.575.0",next:"16.1.6",otpauth:"^9.5.0","posthog-js":"^1.352.0","posthog-node":"^5.21.2",qrcode:"^1.5.4",react:"19.2.3","react-dom":"19.2.3","react-markdown":"^10.1.0",recharts:"^3.7.0","rehype-highlight":"^7.0.2","remark-gfm":"^4.0.1","tailwind-merge":"^3.5.0",tailwindcss:"^4",typescript:"^5",vitest:"^4.0.18",xterm:"^5.3.0"},optionalDependencies:{"@types/qrcode":"^1.5.6",otpauth:"^9.5.0",qrcode:"^1.5.4"}})},717516,e=>{"use strict";let t=process.env.SPACES_TIER||process.env.NEXT_PUBLIC_TIER||("server"===process.env.NEXT_PUBLIC_EDITION?"federation":"community"),r="team"===t||"federation"===t,s="federation"===t,a=r||"1"===process.env.SPACES_HAS_CORTEX,n=!r;function i(){let i="0.0.0";try{i=e.r(804730).version}catch{}return{tier:t,version:i,hasAuth:r,hasAdmin:r,hasCollaboration:r,hasNetwork:s,hasMultiuser:r,hasCortex:a,isDesktop:n,basePath:""}}e.s(["HAS_ADMIN",0,r,"HAS_AUTH",0,r,"HAS_COLLABORATION",0,r,"HAS_CORTEX",0,a,"HAS_MULTIUSER",0,r,"HAS_NETWORK",0,s,"IS_DESKTOP",0,n,"IS_FEDERATION",0,s,"IS_TEAM",0,r,"TIER",0,t,"getTierFlags",()=>i])},410430,(e,t,r)=>{t.exports=e.x("async_hooks",()=>require("async_hooks"))},79832,e=>{"use strict";var t=e.i(410430),r=e.i(446786),s=e.i(717516);let a=new t.AsyncLocalStorage;function n(e){return s.HAS_AUTH&&e.headers.get("x-auth-user")||r.default.userInfo().username}function i(e,t){return a.run(e,t)}function o(e){return s.HAS_AUTH?e.headers.get("x-auth-role")||"user":"admin"}function c(){let e=a.getStore();return e||r.default.userInfo().username}e.s(["getAuthRole",()=>o,"getAuthUser",()=>n,"getCurrentUser",()=>c,"withUser",()=>i])},785148,(e,t,r)=>{t.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},507304,e=>{"use strict";var t=e.i(785148),r=e.i(798003),s=e.i(79832);let a=new Map;function n(){let n=(0,s.getCurrentUser)(),i=a.get(n);if(i)return i;(0,r.ensureUserSpacesDir)(n);let{dbPath:o}=(0,r.getUserPaths)(n),c=new t.default(o);return c.pragma("journal_mode = WAL"),c.pragma("synchronous = NORMAL"),c.pragma("foreign_keys = ON"),function(t){let r;t.exec(`
|
|
2
|
+
CREATE TABLE IF NOT EXISTS projects (
|
|
3
|
+
id TEXT PRIMARY KEY,
|
|
4
|
+
name TEXT NOT NULL,
|
|
5
|
+
path TEXT NOT NULL,
|
|
6
|
+
claude_path TEXT NOT NULL,
|
|
7
|
+
session_count INTEGER DEFAULT 0,
|
|
8
|
+
last_activity TEXT
|
|
9
|
+
);
|
|
10
|
+
|
|
11
|
+
CREATE TABLE IF NOT EXISTS sessions (
|
|
12
|
+
id TEXT PRIMARY KEY,
|
|
13
|
+
session_id TEXT NOT NULL,
|
|
14
|
+
project_id TEXT NOT NULL,
|
|
15
|
+
first_prompt TEXT,
|
|
16
|
+
summary TEXT,
|
|
17
|
+
message_count INTEGER DEFAULT 0,
|
|
18
|
+
created TEXT,
|
|
19
|
+
modified TEXT,
|
|
20
|
+
git_branch TEXT,
|
|
21
|
+
project_path TEXT,
|
|
22
|
+
full_path TEXT NOT NULL,
|
|
23
|
+
starred INTEGER DEFAULT 0,
|
|
24
|
+
custom_name TEXT,
|
|
25
|
+
notes TEXT,
|
|
26
|
+
FOREIGN KEY (project_id) REFERENCES projects(id)
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_project ON sessions(project_id);
|
|
30
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_created ON sessions(created);
|
|
31
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_modified ON sessions(modified);
|
|
32
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_starred ON sessions(starred);
|
|
33
|
+
|
|
34
|
+
CREATE TABLE IF NOT EXISTS workspaces (
|
|
35
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
36
|
+
name TEXT NOT NULL,
|
|
37
|
+
description TEXT DEFAULT '',
|
|
38
|
+
color TEXT DEFAULT '#6366f1',
|
|
39
|
+
created TEXT DEFAULT (datetime('now'))
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
CREATE TABLE IF NOT EXISTS workspace_sessions (
|
|
43
|
+
workspace_id INTEGER NOT NULL,
|
|
44
|
+
session_id TEXT NOT NULL,
|
|
45
|
+
PRIMARY KEY (workspace_id, session_id),
|
|
46
|
+
FOREIGN KEY (workspace_id) REFERENCES workspaces(id) ON DELETE CASCADE,
|
|
47
|
+
FOREIGN KEY (session_id) REFERENCES sessions(id) ON DELETE CASCADE
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
CREATE TABLE IF NOT EXISTS tags (
|
|
51
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
52
|
+
name TEXT NOT NULL UNIQUE,
|
|
53
|
+
color TEXT DEFAULT '#8b5cf6'
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
CREATE TABLE IF NOT EXISTS session_tags (
|
|
57
|
+
session_id TEXT NOT NULL,
|
|
58
|
+
tag_id INTEGER NOT NULL,
|
|
59
|
+
PRIMARY KEY (session_id, tag_id),
|
|
60
|
+
FOREIGN KEY (session_id) REFERENCES sessions(id) ON DELETE CASCADE,
|
|
61
|
+
FOREIGN KEY (tag_id) REFERENCES tags(id) ON DELETE CASCADE
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
CREATE TABLE IF NOT EXISTS sync_state (
|
|
65
|
+
file_path TEXT PRIMARY KEY,
|
|
66
|
+
mtime INTEGER,
|
|
67
|
+
byte_offset INTEGER DEFAULT 0,
|
|
68
|
+
last_synced TEXT DEFAULT (datetime('now'))
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
CREATE TABLE IF NOT EXISTS panes (
|
|
72
|
+
id TEXT PRIMARY KEY,
|
|
73
|
+
title TEXT NOT NULL DEFAULT 'Terminal',
|
|
74
|
+
color TEXT NOT NULL DEFAULT '#6366f1',
|
|
75
|
+
cwd TEXT NOT NULL,
|
|
76
|
+
claude_session_id TEXT,
|
|
77
|
+
grid_col INTEGER NOT NULL DEFAULT 0,
|
|
78
|
+
grid_row INTEGER NOT NULL DEFAULT 0,
|
|
79
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
80
|
+
shell TEXT,
|
|
81
|
+
created TEXT DEFAULT (datetime('now'))
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
CREATE TABLE IF NOT EXISTS totp (
|
|
85
|
+
username TEXT PRIMARY KEY,
|
|
86
|
+
secret TEXT NOT NULL,
|
|
87
|
+
enabled INTEGER DEFAULT 0,
|
|
88
|
+
created TEXT DEFAULT (datetime('now'))
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
CREATE TABLE IF NOT EXISTS workspace_todos (
|
|
92
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
93
|
+
workspace_id INTEGER NOT NULL REFERENCES workspaces(id) ON DELETE CASCADE,
|
|
94
|
+
text TEXT NOT NULL,
|
|
95
|
+
completed INTEGER NOT NULL DEFAULT 0,
|
|
96
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
97
|
+
created TEXT NOT NULL DEFAULT (datetime('now')),
|
|
98
|
+
completed_at TEXT
|
|
99
|
+
);
|
|
100
|
+
|
|
101
|
+
CREATE INDEX IF NOT EXISTS idx_workspace_todos_workspace
|
|
102
|
+
ON workspace_todos(workspace_id);
|
|
103
|
+
`);let s=(e,r,s)=>{try{t.exec(`ALTER TABLE ${e} ADD COLUMN ${r} ${s}`)}catch{}};s("workspaces","is_active","INTEGER DEFAULT 0"),s("workspaces","updated","TEXT"),s("workspaces","lobe_config","TEXT DEFAULT '{}'"),s("panes","workspace_id","INTEGER"),s("panes","is_popout","INTEGER DEFAULT 0"),s("panes","win_x","INTEGER"),s("panes","win_y","INTEGER"),s("panes","win_width","INTEGER DEFAULT 800"),s("panes","win_height","INTEGER DEFAULT 600"),s("panes","agent_type","TEXT DEFAULT 'shell'"),s("panes","custom_command","TEXT"),s("panes","node_id","TEXT"),s("sessions","agent_type","TEXT DEFAULT 'claude'"),s("projects","agent_type","TEXT DEFAULT 'claude'"),s("projects","agent_path","TEXT");try{t.exec("UPDATE projects SET agent_path = claude_path WHERE agent_path IS NULL AND claude_path IS NOT NULL")}catch{}s("workspaces","collaboration","INTEGER DEFAULT 0"),s("panes","is_collaborating","INTEGER DEFAULT 0"),s("panes","diff_baseline_sha","TEXT"),s("panes","custom_model_id","TEXT");try{t.exec("CREATE INDEX IF NOT EXISTS idx_sessions_agent_type ON sessions(agent_type)")}catch{}try{t.exec("CREATE INDEX IF NOT EXISTS idx_projects_agent_type ON projects(agent_type)")}catch{}let a=t.prepare("SELECT id FROM workspaces WHERE name = 'Default'").get();a?(r=a.id,t.prepare("SELECT id FROM workspaces WHERE is_active = 1").get()||t.prepare("UPDATE workspaces SET is_active = 1 WHERE id = ?").run(r)):r=Number(t.prepare("INSERT INTO workspaces (name, description, color, is_active) VALUES ('Default', 'Default workspace', '#6366f1', 1)").run().lastInsertRowid);let n=t.prepare("SELECT id FROM workspaces WHERE is_active = 1").get();n&&t.prepare("UPDATE panes SET workspace_id = ? WHERE workspace_id IS NULL").run(n.id);try{t.exec(`
|
|
104
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS sessions_fts USING fts5(
|
|
105
|
+
session_id,
|
|
106
|
+
content,
|
|
107
|
+
content_rowid='rowid'
|
|
108
|
+
);
|
|
109
|
+
`)}catch{}try{let{getTeams:r}=e.r(599944),s=r();s&&s.db.runMigrations(t)}catch{}}(c),a.set(n,c),c}function i(){for(let e of a.values())e.close();a.clear()}e.s(["__testing",0,{dbs:a},"closeDb",()=>i,"getDb",()=>n])},792687,e=>{"use strict";var t=e.i(362562),r=e.i(814747);let s=null,a=!1;function n(){if(!a){let n=[r.default.join(process.cwd(),"package.json")];for(let e of(process.env.NODE_PATH||"").split(r.default.delimiter))e&&n.push(r.default.join(e,"_anchor.js"));for(let e of n)try{s=(0,t.createRequire)(e)("@spaces/cortex");break}catch{}if(a=!0,s&&!s.hasHostAdapter())try{let t=e.r(79832),r=e.r(798003),a=e.r(507304),n=e.r(717516);s.setHostAdapter({getAuthUser:e=>t.getAuthUser(e),withUser:(e,r)=>t.withUser(e,r),getCurrentUser:()=>t.getCurrentUser(),getUserPaths:e=>r.getUserPaths(e),getDb:()=>a.getDb(),hasCortex:()=>n.HAS_CORTEX,isFederation:()=>n.IS_FEDERATION})}catch{}}return s}function i(){return n()}async function o(){return n()?.getCortex()??null}function c(){return n()?.isCortexAvailable()??!1}function l(){d=null,n()?.resetCortex()}let d=null;async function u(){if(d)return d;let e=n();if(!e)return null;let t=await e.getCortex();if(!t)return null;try{let{createClient:r,EmbeddedConnection:s,RemoteConnection:a,loadConfig:n}=e,i=[new s({name:"local",domains:t.domainRegistry.list(),writable:!0,default:!0,primary:!0,engine:t})];try{for(let e of n().connections)"remote"===e.type&&i.push(new a(e))}catch{}return d=r({connections:i})}catch(e){return console.warn("[cortex] Client library not available, multi-server disabled:",e),null}}e.s(["getCortex",()=>o,"getCortexAddon",()=>i,"getCortexClient",()=>u,"isCortexAvailable",()=>c,"resetCortex",()=>l])},650030,e=>{"use strict";var t=e.i(747909),r=e.i(174017),s=e.i(996250),a=e.i(759756),n=e.i(561916),i=e.i(174677),o=e.i(869741),c=e.i(316795),l=e.i(487718),d=e.i(995169),u=e.i(47587),E=e.i(666012),p=e.i(570101),T=e.i(626937),f=e.i(10372),h=e.i(193695);e.i(52474);var N=e.i(600220),R=e.i(89171),A=e.i(79832),g=e.i(792687);async function m(e){let t=(0,A.getAuthUser)(e);return(0,A.withUser)(t,async()=>{if(!(0,g.isCortexAvailable)())return R.NextResponse.json({error:"Cortex unavailable"},{status:403});let t=await (0,g.getCortex)();if(!t)return R.NextResponse.json({error:"Cortex disabled"},{status:503});let r=new URL(e.url),s=r.searchParams.get("workspace_id"),a=r.searchParams.get("project_path"),n=parseInt(r.searchParams.get("limit")||"20",10),i=s?`workspace/${s}`:"personal",o=Array(t.embedding.dimensions).fill(0),c=await t.store.search(i,o,2*n);return c=c.filter(e=>["decision","pattern","error_fix","summary"].includes(e.type)),a&&(c=c.filter(e=>e.project_path===a)),c.sort((e,t)=>new Date(t.source_timestamp).getTime()-new Date(e.source_timestamp).getTime()),R.NextResponse.json({timeline:c.slice(0,n),count:c.length})})}e.s(["GET",()=>m],345841);var _=e.i(345841);let x=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/cortex/timeline/route",pathname:"/api/cortex/timeline",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cortex/timeline/route.ts",nextConfigOutput:"standalone",userland:_}),{workAsyncStorage:I,workUnitAsyncStorage:L,serverHooks:S}=x;function w(){return(0,s.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:L})}async function y(e,t,s){x.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/cortex/timeline/route";R=R.replace(/\/index$/,"")||"/";let A=await x.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!A)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:g,params:m,nextConfig:_,parsedUrl:I,isDraftMode:L,prerenderManifest:S,routerServerContext:w,isOnDemandRevalidate:y,revalidateOnlyGenerated:U,resolvedPathname:O,clientReferenceManifest:v,serverActionsManifest:C}=A,D=(0,o.normalizeAppPath)(R),b=!!(S.dynamicRoutes[D]||S.routes[O]),X=async()=>((null==w?void 0:w.render404)?await w.render404(e,t,I,!1):t.end("This page could not be found"),null);if(b&&!L){let e=!!S.routes[O],t=S.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(_.experimental.adapterPath)return await X();throw new h.NoFallbackError}}let j=null;!b||x.isDev||L||(j="/index"===(j=O)?"/":j);let F=!0===x.isDev||!b,k=b&&!F;C&&v&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:v,serverActionsManifest:C});let P=e.method||"GET",H=(0,n.getTracer)(),M=H.getActiveScopeSpan(),q={params:m,prerenderManifest:S,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:F,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:_.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>x.onRequestError(e,t,s,a,w)},sharedContext:{buildId:g}},G=new c.NodeNextRequest(e),K=new c.NodeNextResponse(t),Y=l.NextRequestAdapter.fromNodeNextRequest(G,(0,l.signalFromNodeResponse)(t));try{let i=async e=>x.handle(Y,q).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let t=`${P} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${R}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),c=async a=>{var n,c;let l=async({previousCacheEntry:r})=>{try{if(!o&&y&&U&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(a);e.fetchMetrics=q.renderOpts.fetchMetrics;let c=q.renderOpts.pendingWaitUntil;c&&s.waitUntil&&(s.waitUntil(c),c=void 0);let l=q.renderOpts.collectedTags;if(!b)return await (0,E.sendResponse)(G,K,n,q.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(n.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==q.renderOpts.collectedRevalidate&&!(q.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&q.renderOpts.collectedRevalidate,s=void 0===q.renderOpts.collectedExpire||q.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:q.renderOpts.collectedExpire;return{value:{kind:N.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await x.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:k,isOnDemandRevalidate:y})},!1,w),t}},d=await x.handleResponse({req:e,nextConfig:_,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:y,revalidateOnlyGenerated:U,responseGenerator:l,waitUntil:s.waitUntil,isMinimalMode:o});if(!b)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==N.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(c=d.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",y?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),L&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&b||h.delete(f.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,T.getCacheControlHeader)(d.cacheControl)),await (0,E.sendResponse)(G,K,new Response(d.value.body,{headers:h,status:d.value.status||200})),null};M?await c(M):await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${R}`,kind:n.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},c))}catch(t){if(t instanceof h.NoFallbackError||await x.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:k,isOnDemandRevalidate:y})},!1,w),b)throw t;return await (0,E.sendResponse)(G,K,new Response(null,{status:500})),null}}e.s(["handler",()=>y,"patchFetch",()=>w,"routeModule",()=>x,"serverHooks",()=>S,"workAsyncStorage",()=>I,"workUnitAsyncStorage",()=>L],650030)}];
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__cae392eb._.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[785148,(e,E,
|
|
1
|
+
module.exports=[785148,(e,E,t)=>{E.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},507304,e=>{"use strict";var E=e.i(785148),t=e.i(798003),s=e.i(79832);let T=new Map;function r(){let r=(0,s.getCurrentUser)(),i=T.get(r);if(i)return i;(0,t.ensureUserSpacesDir)(r);let{dbPath:a}=(0,t.getUserPaths)(r),o=new E.default(a);return o.pragma("journal_mode = WAL"),o.pragma("synchronous = NORMAL"),o.pragma("foreign_keys = ON"),function(E){let t;E.exec(`
|
|
2
2
|
CREATE TABLE IF NOT EXISTS projects (
|
|
3
3
|
id TEXT PRIMARY KEY,
|
|
4
4
|
name TEXT NOT NULL,
|
|
@@ -87,12 +87,25 @@ module.exports=[785148,(e,E,s)=>{E.exports=e.x("better-sqlite3-90e2652d1716b047"
|
|
|
87
87
|
enabled INTEGER DEFAULT 0,
|
|
88
88
|
created TEXT DEFAULT (datetime('now'))
|
|
89
89
|
);
|
|
90
|
-
|
|
90
|
+
|
|
91
|
+
CREATE TABLE IF NOT EXISTS workspace_todos (
|
|
92
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
93
|
+
workspace_id INTEGER NOT NULL REFERENCES workspaces(id) ON DELETE CASCADE,
|
|
94
|
+
text TEXT NOT NULL,
|
|
95
|
+
completed INTEGER NOT NULL DEFAULT 0,
|
|
96
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
97
|
+
created TEXT NOT NULL DEFAULT (datetime('now')),
|
|
98
|
+
completed_at TEXT
|
|
99
|
+
);
|
|
100
|
+
|
|
101
|
+
CREATE INDEX IF NOT EXISTS idx_workspace_todos_workspace
|
|
102
|
+
ON workspace_todos(workspace_id);
|
|
103
|
+
`);let s=(e,t,s)=>{try{E.exec(`ALTER TABLE ${e} ADD COLUMN ${t} ${s}`)}catch{}};s("workspaces","is_active","INTEGER DEFAULT 0"),s("workspaces","updated","TEXT"),s("workspaces","lobe_config","TEXT DEFAULT '{}'"),s("panes","workspace_id","INTEGER"),s("panes","is_popout","INTEGER DEFAULT 0"),s("panes","win_x","INTEGER"),s("panes","win_y","INTEGER"),s("panes","win_width","INTEGER DEFAULT 800"),s("panes","win_height","INTEGER DEFAULT 600"),s("panes","agent_type","TEXT DEFAULT 'shell'"),s("panes","custom_command","TEXT"),s("panes","node_id","TEXT"),s("sessions","agent_type","TEXT DEFAULT 'claude'"),s("projects","agent_type","TEXT DEFAULT 'claude'"),s("projects","agent_path","TEXT");try{E.exec("UPDATE projects SET agent_path = claude_path WHERE agent_path IS NULL AND claude_path IS NOT NULL")}catch{}s("workspaces","collaboration","INTEGER DEFAULT 0"),s("panes","is_collaborating","INTEGER DEFAULT 0"),s("panes","diff_baseline_sha","TEXT"),s("panes","custom_model_id","TEXT");try{E.exec("CREATE INDEX IF NOT EXISTS idx_sessions_agent_type ON sessions(agent_type)")}catch{}try{E.exec("CREATE INDEX IF NOT EXISTS idx_projects_agent_type ON projects(agent_type)")}catch{}let T=E.prepare("SELECT id FROM workspaces WHERE name = 'Default'").get();T?(t=T.id,E.prepare("SELECT id FROM workspaces WHERE is_active = 1").get()||E.prepare("UPDATE workspaces SET is_active = 1 WHERE id = ?").run(t)):t=Number(E.prepare("INSERT INTO workspaces (name, description, color, is_active) VALUES ('Default', 'Default workspace', '#6366f1', 1)").run().lastInsertRowid);let r=E.prepare("SELECT id FROM workspaces WHERE is_active = 1").get();r&&E.prepare("UPDATE panes SET workspace_id = ? WHERE workspace_id IS NULL").run(r.id);try{E.exec(`
|
|
91
104
|
CREATE VIRTUAL TABLE IF NOT EXISTS sessions_fts USING fts5(
|
|
92
105
|
session_id,
|
|
93
106
|
content,
|
|
94
107
|
content_rowid='rowid'
|
|
95
108
|
);
|
|
96
|
-
`)}catch{}try{let{getTeams:
|
|
109
|
+
`)}catch{}try{let{getTeams:t}=e.r(599944),s=t();s&&s.db.runMigrations(E)}catch{}}(o),T.set(r,o),o}function i(){for(let e of T.values())e.close();T.clear()}e.s(["__testing",0,{dbs:T},"closeDb",()=>i,"getDb",()=>r])},792687,e=>{"use strict";var E=e.i(362562),t=e.i(814747);let s=null,T=!1;function r(){if(!T){let r=[t.default.join(process.cwd(),"package.json")];for(let e of(process.env.NODE_PATH||"").split(t.default.delimiter))e&&r.push(t.default.join(e,"_anchor.js"));for(let e of r)try{s=(0,E.createRequire)(e)("@spaces/cortex");break}catch{}if(T=!0,s&&!s.hasHostAdapter())try{let E=e.r(79832),t=e.r(798003),T=e.r(507304),r=e.r(717516);s.setHostAdapter({getAuthUser:e=>E.getAuthUser(e),withUser:(e,t)=>E.withUser(e,t),getCurrentUser:()=>E.getCurrentUser(),getUserPaths:e=>t.getUserPaths(e),getDb:()=>T.getDb(),hasCortex:()=>r.HAS_CORTEX,isFederation:()=>r.IS_FEDERATION})}catch{}}return s}function i(){return r()}async function a(){return r()?.getCortex()??null}function o(){return r()?.isCortexAvailable()??!1}function n(){c=null,r()?.resetCortex()}let c=null;async function d(){if(c)return c;let e=r();if(!e)return null;let E=await e.getCortex();if(!E)return null;try{let{createClient:t,EmbeddedConnection:s,RemoteConnection:T,loadConfig:r}=e,i=[new s({name:"local",domains:E.domainRegistry.list(),writable:!0,default:!0,primary:!0,engine:E})];try{for(let e of r().connections)"remote"===e.type&&i.push(new T(e))}catch{}return c=t({connections:i})}catch(e){return console.warn("[cortex] Client library not available, multi-server disabled:",e),null}}e.s(["getCortex",()=>a,"getCortexAddon",()=>i,"getCortexClient",()=>d,"isCortexAvailable",()=>o,"resetCortex",()=>n])},176050,e=>{"use strict";var E=e.i(792687);let t={enabled:!1,debug:!1,anthropic_api_key:"",openai_api_key:"",embedding:{provider:"voyage",dimensions:512},injection:{enabled:!0,max_tokens:5e3,max_results:10,min_confidence:.3},ingestion:{auto_ingest:!0,distillation:!0,distillation_model:"auto"},layers:{personal:!0,workspace:!0,team:!0},staleness:{decision_halflife_days:180,pattern_halflife_days:90,context_halflife_days:30,conversation_halflife_days:14},federation:{sync_mode:"query-only",sync_interval_minutes:5,query_timeout_ms:500},storage:{max_size_mb:2048,warning_threshold_mb:500},policies:[]};function s(e){return(0,E.getCortexAddon)()?.readCortexConfig(e)??{...t}}function T(e,t){(0,E.getCortexAddon)()?.writeCortexConfig(e,t)}e.s(["DEFAULT_CORTEX_CONFIG",0,t,"readCortexConfig",()=>s,"writeCortexConfig",()=>T])}];
|
|
97
110
|
|
|
98
111
|
//# sourceMappingURL=%5Broot-of-the-server%5D__cc2616bb._.js.map
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
module.exports=[324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},362562,(e,t,r)=>{t.exports=e.x("module",()=>require("module"))},599944,e=>{"use strict";var t=e.i(362562),r=e.i(814747);let s=null,a=!1;function n(){if(!a){for(let e of function(){let e=[r.default.join(process.cwd(),"package.json")];for(let t of(process.env.NODE_PATH||"").split(r.default.delimiter))t&&e.push(r.default.join(t,"_anchor.js"));return e}())try{s=(0,t.createRequire)(e)("@spaces/teams");break}catch{}a=!0}return s}function i(){return null!==n()}e.s(["getTeams",()=>n,"hasTeams",()=>i])},798003,e=>{"use strict";var t=e.i(814747),r=e.i(522734),s=e.i(446786),a=e.i(254799),n=e.i(717516),i=e.i(599944);let o={port:parseInt(process.env.SPACES_PORT||"3457",10),costRates:{"claude-opus-4-5-20251101":{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},"claude-opus-4-6":{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},"claude-sonnet-4-5-20250929":{input:3,output:15,cacheRead:.3,cacheWrite:3.75},"claude-haiku-4-5-20251001":{input:.8,output:4,cacheRead:.08,cacheWrite:1}}};function d(e){let a,o=e;if(n.HAS_MULTIUSER)try{let t=(0,i.getTeams)();t&&(o=t.admin.resolveShellUser(e))}catch{}if(o===s.default.userInfo().username)a=s.default.homedir();else if(1){let e=t.default.dirname(s.default.homedir()),n=t.default.join(e,o);a=r.default.existsSync(n)?n:s.default.homedir()}else a=`/home/${o}`;let d=o===s.default.userInfo().username?t.default.join(s.default.homedir(),".spaces"):t.default.join(s.default.homedir(),".spaces","users",e);return{claudeDir:t.default.join(a,".claude"),claudeProjectsDir:t.default.join(a,".claude","projects"),statsPath:t.default.join(a,".claude","stats-cache.json"),codexDir:t.default.join(a,".codex"),codexSessionsDir:t.default.join(a,".codex","sessions"),geminiDir:t.default.join(a,".gemini"),geminiChatsBaseDir:t.default.join(a,".gemini","tmp"),geminiProjectsRegistry:t.default.join(a,".gemini","projects.json"),forgeDir:t.default.join(a,".forge"),forgeConversationsDir:t.default.join(a,".forge","conversations"),spacesDir:d,dbPath:t.default.join(d,"spaces.db"),configPath:t.default.join(d,"config.json")}}function c(e){let{spacesDir:t}=d(e);r.default.existsSync(t)||r.default.mkdirSync(t,{recursive:!0})}function l(e){let{configPath:t,spacesDir:s}=d(e);try{if(r.default.existsSync(t)){let e=JSON.parse(r.default.readFileSync(t,"utf-8"));return{installId:e.installId||a.default.randomUUID(),telemetryOptOut:!!e.telemetryOptOut,devDirectories:Array.isArray(e.devDirectories)?e.devDirectories.filter(e=>"string"==typeof e):[],todosEnabled:!!e.todosEnabled,...e.cortex&&"object"==typeof e.cortex?{cortex:e.cortex}:{},customModels:Array.isArray(e.customModels)?e.customModels:[]}}}catch{}r.default.existsSync(s)||r.default.mkdirSync(s,{recursive:!0});let n={installId:a.default.randomUUID(),telemetryOptOut:!1,devDirectories:[],todosEnabled:!1,customModels:[]};return r.default.writeFileSync(t,JSON.stringify(n,null,2)),n}function u(e,t){let s={...l(e),...t},{configPath:a}=d(e);return r.default.writeFileSync(a,JSON.stringify(s,null,2)),s}e.s(["config",0,o,"ensureUserSpacesDir",()=>c,"getUserPaths",()=>d,"readConfig",()=>l,"writeConfig",()=>u])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},804730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.9.9",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js"},files:["bin/",".next/standalone/"],engines:{node:">=20.9.0"},repository:{type:"git",url:"git+https://github.com/jlongo78/spaces.git"},keywords:["ai","agent","workspace","terminal","claude","codex","gemini"],homepage:"http://www.agentspaces.co",license:"AGPL-3.0-only",scripts:{start:"node bin/spaces.js",dev:"node bin/spaces-dev.js",build:"cross-env STANDALONE=1 next build && node -e \"const fs=require('fs');fs.cpSync('.next/static','.next/standalone/.next/static',{recursive:true});fs.cpSync('public','.next/standalone/public',{recursive:true})\" && node bin/fix-standalone-externals.js",postinstall:"node bin/spaces-postinstall.js || true",prepublishOnly:"npm run build",setup:"node bin/spaces-setup.js","setup-admin":"node bin/setup-admin.js","server:build":"next build","server:start":"next start --port 3457",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage",lint:"eslint"},dependencies:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@google-cloud/compute":"^6.9.0","@huggingface/transformers":"^3.8.1","@lancedb/lancedb":"^0.26.2","@modelcontextprotocol/sdk":"^1.27.1","@react-three/drei":"^10.7.7","@react-three/fiber":"^9.5.0","@react-three/postprocessing":"^3.0.4","@react-three/xr":"^6.6.29","@xterm/addon-canvas":"^0.7.0","better-sqlite3":"^12.6.2","bonjour-service":"^1.3.0","dockview-react":"^5.2.0","force-graph":"^1.51.2","node-pty":"^1.1.0","react-resizable-panels":"^4.7.6",three:"^0.183.2",ws:"^8.19.0"},devDependencies:{"@tailwindcss/postcss":"^4","@tanstack/react-query":"^5.90.21","@types/better-sqlite3":"^7.6.13","@types/node":"^20","@types/qrcode":"^1.5.6","@types/react":"^19","@types/react-dom":"^19","@types/three":"^0.183.1","@types/ws":"^8.18.1","@vitest/coverage-v8":"^4.0.18","@xterm/addon-fit":"^0.11.0","@xterm/addon-web-links":"^0.12.0",chokidar:"^5.0.0","class-variance-authority":"^0.7.1",clsx:"^2.1.1","cross-env":"^10.1.0","date-fns":"^4.1.0",eslint:"^9","eslint-config-next":"16.1.6",geist:"^1.4.1","lucide-react":"^0.575.0",next:"16.1.6",otpauth:"^9.5.0","posthog-js":"^1.352.0","posthog-node":"^5.21.2",qrcode:"^1.5.4",react:"19.2.3","react-dom":"19.2.3","react-markdown":"^10.1.0",recharts:"^3.7.0","rehype-highlight":"^7.0.2","remark-gfm":"^4.0.1","tailwind-merge":"^3.5.0",tailwindcss:"^4",typescript:"^5",vitest:"^4.0.18",xterm:"^5.3.0"},optionalDependencies:{"@types/qrcode":"^1.5.6",otpauth:"^9.5.0",qrcode:"^1.5.4"}})},717516,e=>{"use strict";let t=process.env.SPACES_TIER||process.env.NEXT_PUBLIC_TIER||("server"===process.env.NEXT_PUBLIC_EDITION?"federation":"community"),r="team"===t||"federation"===t,s="federation"===t,a=r||"1"===process.env.SPACES_HAS_CORTEX,n=!r;function i(){let i="0.0.0";try{i=e.r(804730).version}catch{}return{tier:t,version:i,hasAuth:r,hasAdmin:r,hasCollaboration:r,hasNetwork:s,hasMultiuser:r,hasCortex:a,isDesktop:n,basePath:""}}e.s(["HAS_ADMIN",0,r,"HAS_AUTH",0,r,"HAS_COLLABORATION",0,r,"HAS_CORTEX",0,a,"HAS_MULTIUSER",0,r,"HAS_NETWORK",0,s,"IS_DESKTOP",0,n,"IS_FEDERATION",0,s,"IS_TEAM",0,r,"TIER",0,t,"getTierFlags",()=>i])},410430,(e,t,r)=>{t.exports=e.x("async_hooks",()=>require("async_hooks"))},79832,e=>{"use strict";var t=e.i(410430),r=e.i(446786),s=e.i(717516);let a=new t.AsyncLocalStorage;function n(e){return s.HAS_AUTH&&e.headers.get("x-auth-user")||r.default.userInfo().username}function i(e,t){return a.run(e,t)}function o(e){return s.HAS_AUTH?e.headers.get("x-auth-role")||"user":"admin"}function d(){let e=a.getStore();return e||r.default.userInfo().username}e.s(["getAuthRole",()=>o,"getAuthUser",()=>n,"getCurrentUser",()=>d,"withUser",()=>i])},785148,(e,t,r)=>{t.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},507304,e=>{"use strict";var t=e.i(785148),r=e.i(798003),s=e.i(79832);let a=new Map;function n(){let n=(0,s.getCurrentUser)(),i=a.get(n);if(i)return i;(0,r.ensureUserSpacesDir)(n);let{dbPath:o}=(0,r.getUserPaths)(n),d=new t.default(o);return d.pragma("journal_mode = WAL"),d.pragma("synchronous = NORMAL"),d.pragma("foreign_keys = ON"),function(t){let r;t.exec(`
|
|
2
|
+
CREATE TABLE IF NOT EXISTS projects (
|
|
3
|
+
id TEXT PRIMARY KEY,
|
|
4
|
+
name TEXT NOT NULL,
|
|
5
|
+
path TEXT NOT NULL,
|
|
6
|
+
claude_path TEXT NOT NULL,
|
|
7
|
+
session_count INTEGER DEFAULT 0,
|
|
8
|
+
last_activity TEXT
|
|
9
|
+
);
|
|
10
|
+
|
|
11
|
+
CREATE TABLE IF NOT EXISTS sessions (
|
|
12
|
+
id TEXT PRIMARY KEY,
|
|
13
|
+
session_id TEXT NOT NULL,
|
|
14
|
+
project_id TEXT NOT NULL,
|
|
15
|
+
first_prompt TEXT,
|
|
16
|
+
summary TEXT,
|
|
17
|
+
message_count INTEGER DEFAULT 0,
|
|
18
|
+
created TEXT,
|
|
19
|
+
modified TEXT,
|
|
20
|
+
git_branch TEXT,
|
|
21
|
+
project_path TEXT,
|
|
22
|
+
full_path TEXT NOT NULL,
|
|
23
|
+
starred INTEGER DEFAULT 0,
|
|
24
|
+
custom_name TEXT,
|
|
25
|
+
notes TEXT,
|
|
26
|
+
FOREIGN KEY (project_id) REFERENCES projects(id)
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_project ON sessions(project_id);
|
|
30
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_created ON sessions(created);
|
|
31
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_modified ON sessions(modified);
|
|
32
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_starred ON sessions(starred);
|
|
33
|
+
|
|
34
|
+
CREATE TABLE IF NOT EXISTS workspaces (
|
|
35
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
36
|
+
name TEXT NOT NULL,
|
|
37
|
+
description TEXT DEFAULT '',
|
|
38
|
+
color TEXT DEFAULT '#6366f1',
|
|
39
|
+
created TEXT DEFAULT (datetime('now'))
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
CREATE TABLE IF NOT EXISTS workspace_sessions (
|
|
43
|
+
workspace_id INTEGER NOT NULL,
|
|
44
|
+
session_id TEXT NOT NULL,
|
|
45
|
+
PRIMARY KEY (workspace_id, session_id),
|
|
46
|
+
FOREIGN KEY (workspace_id) REFERENCES workspaces(id) ON DELETE CASCADE,
|
|
47
|
+
FOREIGN KEY (session_id) REFERENCES sessions(id) ON DELETE CASCADE
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
CREATE TABLE IF NOT EXISTS tags (
|
|
51
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
52
|
+
name TEXT NOT NULL UNIQUE,
|
|
53
|
+
color TEXT DEFAULT '#8b5cf6'
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
CREATE TABLE IF NOT EXISTS session_tags (
|
|
57
|
+
session_id TEXT NOT NULL,
|
|
58
|
+
tag_id INTEGER NOT NULL,
|
|
59
|
+
PRIMARY KEY (session_id, tag_id),
|
|
60
|
+
FOREIGN KEY (session_id) REFERENCES sessions(id) ON DELETE CASCADE,
|
|
61
|
+
FOREIGN KEY (tag_id) REFERENCES tags(id) ON DELETE CASCADE
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
CREATE TABLE IF NOT EXISTS sync_state (
|
|
65
|
+
file_path TEXT PRIMARY KEY,
|
|
66
|
+
mtime INTEGER,
|
|
67
|
+
byte_offset INTEGER DEFAULT 0,
|
|
68
|
+
last_synced TEXT DEFAULT (datetime('now'))
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
CREATE TABLE IF NOT EXISTS panes (
|
|
72
|
+
id TEXT PRIMARY KEY,
|
|
73
|
+
title TEXT NOT NULL DEFAULT 'Terminal',
|
|
74
|
+
color TEXT NOT NULL DEFAULT '#6366f1',
|
|
75
|
+
cwd TEXT NOT NULL,
|
|
76
|
+
claude_session_id TEXT,
|
|
77
|
+
grid_col INTEGER NOT NULL DEFAULT 0,
|
|
78
|
+
grid_row INTEGER NOT NULL DEFAULT 0,
|
|
79
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
80
|
+
shell TEXT,
|
|
81
|
+
created TEXT DEFAULT (datetime('now'))
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
CREATE TABLE IF NOT EXISTS totp (
|
|
85
|
+
username TEXT PRIMARY KEY,
|
|
86
|
+
secret TEXT NOT NULL,
|
|
87
|
+
enabled INTEGER DEFAULT 0,
|
|
88
|
+
created TEXT DEFAULT (datetime('now'))
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
CREATE TABLE IF NOT EXISTS workspace_todos (
|
|
92
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
93
|
+
workspace_id INTEGER NOT NULL REFERENCES workspaces(id) ON DELETE CASCADE,
|
|
94
|
+
text TEXT NOT NULL,
|
|
95
|
+
completed INTEGER NOT NULL DEFAULT 0,
|
|
96
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
97
|
+
created TEXT NOT NULL DEFAULT (datetime('now')),
|
|
98
|
+
completed_at TEXT
|
|
99
|
+
);
|
|
100
|
+
|
|
101
|
+
CREATE INDEX IF NOT EXISTS idx_workspace_todos_workspace
|
|
102
|
+
ON workspace_todos(workspace_id);
|
|
103
|
+
`);let s=(e,r,s)=>{try{t.exec(`ALTER TABLE ${e} ADD COLUMN ${r} ${s}`)}catch{}};s("workspaces","is_active","INTEGER DEFAULT 0"),s("workspaces","updated","TEXT"),s("workspaces","lobe_config","TEXT DEFAULT '{}'"),s("panes","workspace_id","INTEGER"),s("panes","is_popout","INTEGER DEFAULT 0"),s("panes","win_x","INTEGER"),s("panes","win_y","INTEGER"),s("panes","win_width","INTEGER DEFAULT 800"),s("panes","win_height","INTEGER DEFAULT 600"),s("panes","agent_type","TEXT DEFAULT 'shell'"),s("panes","custom_command","TEXT"),s("panes","node_id","TEXT"),s("sessions","agent_type","TEXT DEFAULT 'claude'"),s("projects","agent_type","TEXT DEFAULT 'claude'"),s("projects","agent_path","TEXT");try{t.exec("UPDATE projects SET agent_path = claude_path WHERE agent_path IS NULL AND claude_path IS NOT NULL")}catch{}s("workspaces","collaboration","INTEGER DEFAULT 0"),s("panes","is_collaborating","INTEGER DEFAULT 0"),s("panes","diff_baseline_sha","TEXT"),s("panes","custom_model_id","TEXT");try{t.exec("CREATE INDEX IF NOT EXISTS idx_sessions_agent_type ON sessions(agent_type)")}catch{}try{t.exec("CREATE INDEX IF NOT EXISTS idx_projects_agent_type ON projects(agent_type)")}catch{}let a=t.prepare("SELECT id FROM workspaces WHERE name = 'Default'").get();a?(r=a.id,t.prepare("SELECT id FROM workspaces WHERE is_active = 1").get()||t.prepare("UPDATE workspaces SET is_active = 1 WHERE id = ?").run(r)):r=Number(t.prepare("INSERT INTO workspaces (name, description, color, is_active) VALUES ('Default', 'Default workspace', '#6366f1', 1)").run().lastInsertRowid);let n=t.prepare("SELECT id FROM workspaces WHERE is_active = 1").get();n&&t.prepare("UPDATE panes SET workspace_id = ? WHERE workspace_id IS NULL").run(n.id);try{t.exec(`
|
|
104
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS sessions_fts USING fts5(
|
|
105
|
+
session_id,
|
|
106
|
+
content,
|
|
107
|
+
content_rowid='rowid'
|
|
108
|
+
);
|
|
109
|
+
`)}catch{}try{let{getTeams:r}=e.r(599944),s=r();s&&s.db.runMigrations(t)}catch{}}(d),a.set(n,d),d}function i(){for(let e of a.values())e.close();a.clear()}e.s(["__testing",0,{dbs:a},"closeDb",()=>i,"getDb",()=>n])},792687,e=>{"use strict";var t=e.i(362562),r=e.i(814747);let s=null,a=!1;function n(){if(!a){let n=[r.default.join(process.cwd(),"package.json")];for(let e of(process.env.NODE_PATH||"").split(r.default.delimiter))e&&n.push(r.default.join(e,"_anchor.js"));for(let e of n)try{s=(0,t.createRequire)(e)("@spaces/cortex");break}catch{}if(a=!0,s&&!s.hasHostAdapter())try{let t=e.r(79832),r=e.r(798003),a=e.r(507304),n=e.r(717516);s.setHostAdapter({getAuthUser:e=>t.getAuthUser(e),withUser:(e,r)=>t.withUser(e,r),getCurrentUser:()=>t.getCurrentUser(),getUserPaths:e=>r.getUserPaths(e),getDb:()=>a.getDb(),hasCortex:()=>n.HAS_CORTEX,isFederation:()=>n.IS_FEDERATION})}catch{}}return s}function i(){return n()}async function o(){return n()?.getCortex()??null}function d(){return n()?.isCortexAvailable()??!1}function c(){l=null,n()?.resetCortex()}let l=null;async function u(){if(l)return l;let e=n();if(!e)return null;let t=await e.getCortex();if(!t)return null;try{let{createClient:r,EmbeddedConnection:s,RemoteConnection:a,loadConfig:n}=e,i=[new s({name:"local",domains:t.domainRegistry.list(),writable:!0,default:!0,primary:!0,engine:t})];try{for(let e of n().connections)"remote"===e.type&&i.push(new a(e))}catch{}return l=r({connections:i})}catch(e){return console.warn("[cortex] Client library not available, multi-server disabled:",e),null}}e.s(["getCortex",()=>o,"getCortexAddon",()=>i,"getCortexClient",()=>u,"isCortexAvailable",()=>d,"resetCortex",()=>c])},837664,e=>{"use strict";var t=e.i(747909),r=e.i(174017),s=e.i(996250),a=e.i(759756),n=e.i(561916),i=e.i(174677),o=e.i(869741),d=e.i(316795),c=e.i(487718),l=e.i(995169),u=e.i(47587),E=e.i(666012),p=e.i(570101),T=e.i(626937),f=e.i(10372),h=e.i(193695);e.i(52474);var N=e.i(600220),R=e.i(89171),g=e.i(254799),A=e.i(79832),m=e.i(792687);async function x(e){let t=(0,A.getAuthUser)(e);return(0,A.withUser)(t,async()=>{let t=await (0,m.getCortex)();if(!t)return R.NextResponse.json({error:"Cortex disabled"},{status:503});let{knowledge:r,provenance:s}=await e.json();if(!r?.text||!s)return R.NextResponse.json({error:"knowledge and provenance required"},{status:400});if(s.hops&&s.hops.length>=3)return R.NextResponse.json({status:"rejected",reason:"max_hops_exceeded"});let[a]=await t.embedding.embed([r.text]),n=await t.store.search("team",a,5);if(n.some(e=>{var t;return t=e.vector,((0,m.getCortexAddon)()?.cosineSimilarity?.(a,t)??0)>.95}))return R.NextResponse.json({status:"skipped",reason:"duplicate"});let i=(s.hops?.length||0)+1,o=r.confidence*Math.pow(.8,i),d=function(...e){return(0,m.getCortexAddon)()?.detectContradictions?.(...e)??[]}({...r,vector:a,id:"incoming"},n,.85);return d.length>0?(await t.store.add("team",{...r,id:g.default.randomUUID(),vector:a,layer:"team",confidence:o,metadata:{...r.metadata,provenance:s,status:"pending_review",contradicts:d.map(e=>e.existingId)}}),R.NextResponse.json({status:"pending_review",contradictions:d.length})):(await t.store.add("team",{...r,id:g.default.randomUUID(),vector:a,layer:"team",confidence:o,metadata:{...r.metadata,provenance:s,source:"federation_teach"}}),R.NextResponse.json({status:"accepted"}))})}e.s(["POST",()=>x],362984);var _=e.i(362984);let I=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/cortex/federation/teach/route",pathname:"/api/cortex/federation/teach",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/cortex/federation/teach/route.ts",nextConfigOutput:"standalone",userland:_}),{workAsyncStorage:S,workUnitAsyncStorage:w,serverHooks:L}=I;function U(){return(0,s.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:w})}async function y(e,t,s){I.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/cortex/federation/teach/route";R=R.replace(/\/index$/,"")||"/";let g=await I.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:A,params:m,nextConfig:x,parsedUrl:_,isDraftMode:S,prerenderManifest:w,routerServerContext:L,isOnDemandRevalidate:U,revalidateOnlyGenerated:y,resolvedPathname:O,clientReferenceManifest:v,serverActionsManifest:C}=g,D=(0,o.normalizeAppPath)(R),b=!!(w.dynamicRoutes[D]||w.routes[O]),X=async()=>((null==L?void 0:L.render404)?await L.render404(e,t,_,!1):t.end("This page could not be found"),null);if(b&&!S){let e=!!w.routes[O],t=w.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(x.experimental.adapterPath)return await X();throw new h.NoFallbackError}}let j=null;!b||I.isDev||S||(j="/index"===(j=O)?"/":j);let F=!0===I.isDev||!b,k=b&&!F;C&&v&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:v,serverActionsManifest:C});let P=e.method||"GET",M=(0,n.getTracer)(),H=M.getActiveScopeSpan(),q={params:m,prerenderManifest:w,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:F,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:x.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>I.onRequestError(e,t,s,a,L)},sharedContext:{buildId:A}},G=new d.NodeNextRequest(e),K=new d.NodeNextResponse(t),Y=c.NextRequestAdapter.fromNodeNextRequest(G,(0,c.signalFromNodeResponse)(t));try{let i=async e=>I.handle(Y,q).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==l.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let t=`${P} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${R}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),d=async a=>{var n,d;let c=async({previousCacheEntry:r})=>{try{if(!o&&U&&y&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(a);e.fetchMetrics=q.renderOpts.fetchMetrics;let d=q.renderOpts.pendingWaitUntil;d&&s.waitUntil&&(s.waitUntil(d),d=void 0);let c=q.renderOpts.collectedTags;if(!b)return await (0,E.sendResponse)(G,K,n,q.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(n.headers);c&&(t[f.NEXT_CACHE_TAGS_HEADER]=c),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==q.renderOpts.collectedRevalidate&&!(q.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&q.renderOpts.collectedRevalidate,s=void 0===q.renderOpts.collectedExpire||q.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:q.renderOpts.collectedExpire;return{value:{kind:N.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:k,isOnDemandRevalidate:U})},!1,L),t}},l=await I.handleResponse({req:e,nextConfig:x,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:w,isRoutePPREnabled:!1,isOnDemandRevalidate:U,revalidateOnlyGenerated:y,responseGenerator:c,waitUntil:s.waitUntil,isMinimalMode:o});if(!b)return null;if((null==l||null==(n=l.value)?void 0:n.kind)!==N.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(d=l.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",U?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(l.value.headers);return o&&b||h.delete(f.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,T.getCacheControlHeader)(l.cacheControl)),await (0,E.sendResponse)(G,K,new Response(l.value.body,{headers:h,status:l.value.status||200})),null};H?await d(H):await M.withPropagatedContext(e.headers,()=>M.trace(l.BaseServerSpan.handleRequest,{spanName:`${P} ${R}`,kind:n.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},d))}catch(t){if(t instanceof h.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:k,isOnDemandRevalidate:U})},!1,L),b)throw t;return await (0,E.sendResponse)(G,K,new Response(null,{status:500})),null}}e.s(["handler",()=>y,"patchFetch",()=>U,"routeModule",()=>I,"serverHooks",()=>L,"workAsyncStorage",()=>S,"workUnitAsyncStorage",()=>w],837664)}];
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__d501fa9b._.js.map
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
module.exports=[193695,(e,t,s)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,s)=>{t.exports=e.x("path",()=>require("path"))},362562,(e,t,s)=>{t.exports=e.x("module",()=>require("module"))},599944,e=>{"use strict";var t=e.i(362562),s=e.i(814747);let r=null,a=!1;function n(){if(!a){for(let e of function(){let e=[s.default.join(process.cwd(),"package.json")];for(let t of(process.env.NODE_PATH||"").split(s.default.delimiter))t&&e.push(s.default.join(t,"_anchor.js"));return e}())try{r=(0,t.createRequire)(e)("@spaces/teams");break}catch{}a=!0}return r}function i(){return null!==n()}e.s(["getTeams",()=>n,"hasTeams",()=>i])},798003,e=>{"use strict";var t=e.i(814747),s=e.i(522734),r=e.i(446786),a=e.i(254799),n=e.i(717516),i=e.i(599944);let o={port:parseInt(process.env.SPACES_PORT||"3457",10),costRates:{"claude-opus-4-5-20251101":{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},"claude-opus-4-6":{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},"claude-sonnet-4-5-20250929":{input:3,output:15,cacheRead:.3,cacheWrite:3.75},"claude-haiku-4-5-20251001":{input:.8,output:4,cacheRead:.08,cacheWrite:1}}};function c(e){let a,o=e;if(n.HAS_MULTIUSER)try{let t=(0,i.getTeams)();t&&(o=t.admin.resolveShellUser(e))}catch{}if(o===r.default.userInfo().username)a=r.default.homedir();else if(1){let e=t.default.dirname(r.default.homedir()),n=t.default.join(e,o);a=s.default.existsSync(n)?n:r.default.homedir()}else a=`/home/${o}`;let c=o===r.default.userInfo().username?t.default.join(r.default.homedir(),".spaces"):t.default.join(r.default.homedir(),".spaces","users",e);return{claudeDir:t.default.join(a,".claude"),claudeProjectsDir:t.default.join(a,".claude","projects"),statsPath:t.default.join(a,".claude","stats-cache.json"),codexDir:t.default.join(a,".codex"),codexSessionsDir:t.default.join(a,".codex","sessions"),geminiDir:t.default.join(a,".gemini"),geminiChatsBaseDir:t.default.join(a,".gemini","tmp"),geminiProjectsRegistry:t.default.join(a,".gemini","projects.json"),forgeDir:t.default.join(a,".forge"),forgeConversationsDir:t.default.join(a,".forge","conversations"),spacesDir:c,dbPath:t.default.join(c,"spaces.db"),configPath:t.default.join(c,"config.json")}}function d(e){let{spacesDir:t}=c(e);s.default.existsSync(t)||s.default.mkdirSync(t,{recursive:!0})}function l(e){let{configPath:t,spacesDir:r}=c(e);try{if(s.default.existsSync(t)){let e=JSON.parse(s.default.readFileSync(t,"utf-8"));return{installId:e.installId||a.default.randomUUID(),telemetryOptOut:!!e.telemetryOptOut,devDirectories:Array.isArray(e.devDirectories)?e.devDirectories.filter(e=>"string"==typeof e):[],todosEnabled:!!e.todosEnabled,...e.cortex&&"object"==typeof e.cortex?{cortex:e.cortex}:{},customModels:Array.isArray(e.customModels)?e.customModels:[]}}}catch{}s.default.existsSync(r)||s.default.mkdirSync(r,{recursive:!0});let n={installId:a.default.randomUUID(),telemetryOptOut:!1,devDirectories:[],todosEnabled:!1,customModels:[]};return s.default.writeFileSync(t,JSON.stringify(n,null,2)),n}function u(e,t){let r={...l(e),...t},{configPath:a}=c(e);return s.default.writeFileSync(a,JSON.stringify(r,null,2)),r}e.s(["config",0,o,"ensureUserSpacesDir",()=>d,"getUserPaths",()=>c,"readConfig",()=>l,"writeConfig",()=>u])},254799,(e,t,s)=>{t.exports=e.x("crypto",()=>require("crypto"))},446786,(e,t,s)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,s)=>{t.exports=e.x("fs",()=>require("fs"))},804730,e=>{e.v({name:"@jlongo78/agent-spaces",version:"0.9.9",description:"Agent workspace manager for Claude, Codex, Gemini, and more",bin:{spaces:"./bin/spaces.js"},files:["bin/",".next/standalone/"],engines:{node:">=20.9.0"},repository:{type:"git",url:"git+https://github.com/jlongo78/spaces.git"},keywords:["ai","agent","workspace","terminal","claude","codex","gemini"],homepage:"http://www.agentspaces.co",license:"AGPL-3.0-only",scripts:{start:"node bin/spaces.js",dev:"node bin/spaces-dev.js",build:"cross-env STANDALONE=1 next build && node -e \"const fs=require('fs');fs.cpSync('.next/static','.next/standalone/.next/static',{recursive:true});fs.cpSync('public','.next/standalone/public',{recursive:true})\" && node bin/fix-standalone-externals.js",postinstall:"node bin/spaces-postinstall.js || true",prepublishOnly:"npm run build",setup:"node bin/spaces-setup.js","setup-admin":"node bin/setup-admin.js","server:build":"next build","server:start":"next start --port 3457",test:"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage",lint:"eslint"},dependencies:{"@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@google-cloud/compute":"^6.9.0","@huggingface/transformers":"^3.8.1","@lancedb/lancedb":"^0.26.2","@modelcontextprotocol/sdk":"^1.27.1","@react-three/drei":"^10.7.7","@react-three/fiber":"^9.5.0","@react-three/postprocessing":"^3.0.4","@react-three/xr":"^6.6.29","@xterm/addon-canvas":"^0.7.0","better-sqlite3":"^12.6.2","bonjour-service":"^1.3.0","dockview-react":"^5.2.0","force-graph":"^1.51.2","node-pty":"^1.1.0","react-resizable-panels":"^4.7.6",three:"^0.183.2",ws:"^8.19.0"},devDependencies:{"@tailwindcss/postcss":"^4","@tanstack/react-query":"^5.90.21","@types/better-sqlite3":"^7.6.13","@types/node":"^20","@types/qrcode":"^1.5.6","@types/react":"^19","@types/react-dom":"^19","@types/three":"^0.183.1","@types/ws":"^8.18.1","@vitest/coverage-v8":"^4.0.18","@xterm/addon-fit":"^0.11.0","@xterm/addon-web-links":"^0.12.0",chokidar:"^5.0.0","class-variance-authority":"^0.7.1",clsx:"^2.1.1","cross-env":"^10.1.0","date-fns":"^4.1.0",eslint:"^9","eslint-config-next":"16.1.6",geist:"^1.4.1","lucide-react":"^0.575.0",next:"16.1.6",otpauth:"^9.5.0","posthog-js":"^1.352.0","posthog-node":"^5.21.2",qrcode:"^1.5.4",react:"19.2.3","react-dom":"19.2.3","react-markdown":"^10.1.0",recharts:"^3.7.0","rehype-highlight":"^7.0.2","remark-gfm":"^4.0.1","tailwind-merge":"^3.5.0",tailwindcss:"^4",typescript:"^5",vitest:"^4.0.18",xterm:"^5.3.0"},optionalDependencies:{"@types/qrcode":"^1.5.6",otpauth:"^9.5.0",qrcode:"^1.5.4"}})},717516,e=>{"use strict";let t=process.env.SPACES_TIER||process.env.NEXT_PUBLIC_TIER||("server"===process.env.NEXT_PUBLIC_EDITION?"federation":"community"),s="team"===t||"federation"===t,r="federation"===t,a=s||"1"===process.env.SPACES_HAS_CORTEX,n=!s;function i(){let i="0.0.0";try{i=e.r(804730).version}catch{}return{tier:t,version:i,hasAuth:s,hasAdmin:s,hasCollaboration:s,hasNetwork:r,hasMultiuser:s,hasCortex:a,isDesktop:n,basePath:""}}e.s(["HAS_ADMIN",0,s,"HAS_AUTH",0,s,"HAS_COLLABORATION",0,s,"HAS_CORTEX",0,a,"HAS_MULTIUSER",0,s,"HAS_NETWORK",0,r,"IS_DESKTOP",0,n,"IS_FEDERATION",0,r,"IS_TEAM",0,s,"TIER",0,t,"getTierFlags",()=>i])},410430,(e,t,s)=>{t.exports=e.x("async_hooks",()=>require("async_hooks"))},79832,e=>{"use strict";var t=e.i(410430),s=e.i(446786),r=e.i(717516);let a=new t.AsyncLocalStorage;function n(e){return r.HAS_AUTH&&e.headers.get("x-auth-user")||s.default.userInfo().username}function i(e,t){return a.run(e,t)}function o(e){return r.HAS_AUTH?e.headers.get("x-auth-role")||"user":"admin"}function c(){let e=a.getStore();return e||s.default.userInfo().username}e.s(["getAuthRole",()=>o,"getAuthUser",()=>n,"getCurrentUser",()=>c,"withUser",()=>i])},785148,(e,t,s)=>{t.exports=e.x("better-sqlite3-90e2652d1716b047",()=>require("better-sqlite3-90e2652d1716b047"))},507304,e=>{"use strict";var t=e.i(785148),s=e.i(798003),r=e.i(79832);let a=new Map;function n(){let n=(0,r.getCurrentUser)(),i=a.get(n);if(i)return i;(0,s.ensureUserSpacesDir)(n);let{dbPath:o}=(0,s.getUserPaths)(n),c=new t.default(o);return c.pragma("journal_mode = WAL"),c.pragma("synchronous = NORMAL"),c.pragma("foreign_keys = ON"),function(t){let s;t.exec(`
|
|
2
|
+
CREATE TABLE IF NOT EXISTS projects (
|
|
3
|
+
id TEXT PRIMARY KEY,
|
|
4
|
+
name TEXT NOT NULL,
|
|
5
|
+
path TEXT NOT NULL,
|
|
6
|
+
claude_path TEXT NOT NULL,
|
|
7
|
+
session_count INTEGER DEFAULT 0,
|
|
8
|
+
last_activity TEXT
|
|
9
|
+
);
|
|
10
|
+
|
|
11
|
+
CREATE TABLE IF NOT EXISTS sessions (
|
|
12
|
+
id TEXT PRIMARY KEY,
|
|
13
|
+
session_id TEXT NOT NULL,
|
|
14
|
+
project_id TEXT NOT NULL,
|
|
15
|
+
first_prompt TEXT,
|
|
16
|
+
summary TEXT,
|
|
17
|
+
message_count INTEGER DEFAULT 0,
|
|
18
|
+
created TEXT,
|
|
19
|
+
modified TEXT,
|
|
20
|
+
git_branch TEXT,
|
|
21
|
+
project_path TEXT,
|
|
22
|
+
full_path TEXT NOT NULL,
|
|
23
|
+
starred INTEGER DEFAULT 0,
|
|
24
|
+
custom_name TEXT,
|
|
25
|
+
notes TEXT,
|
|
26
|
+
FOREIGN KEY (project_id) REFERENCES projects(id)
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_project ON sessions(project_id);
|
|
30
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_created ON sessions(created);
|
|
31
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_modified ON sessions(modified);
|
|
32
|
+
CREATE INDEX IF NOT EXISTS idx_sessions_starred ON sessions(starred);
|
|
33
|
+
|
|
34
|
+
CREATE TABLE IF NOT EXISTS workspaces (
|
|
35
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
36
|
+
name TEXT NOT NULL,
|
|
37
|
+
description TEXT DEFAULT '',
|
|
38
|
+
color TEXT DEFAULT '#6366f1',
|
|
39
|
+
created TEXT DEFAULT (datetime('now'))
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
CREATE TABLE IF NOT EXISTS workspace_sessions (
|
|
43
|
+
workspace_id INTEGER NOT NULL,
|
|
44
|
+
session_id TEXT NOT NULL,
|
|
45
|
+
PRIMARY KEY (workspace_id, session_id),
|
|
46
|
+
FOREIGN KEY (workspace_id) REFERENCES workspaces(id) ON DELETE CASCADE,
|
|
47
|
+
FOREIGN KEY (session_id) REFERENCES sessions(id) ON DELETE CASCADE
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
CREATE TABLE IF NOT EXISTS tags (
|
|
51
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
52
|
+
name TEXT NOT NULL UNIQUE,
|
|
53
|
+
color TEXT DEFAULT '#8b5cf6'
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
CREATE TABLE IF NOT EXISTS session_tags (
|
|
57
|
+
session_id TEXT NOT NULL,
|
|
58
|
+
tag_id INTEGER NOT NULL,
|
|
59
|
+
PRIMARY KEY (session_id, tag_id),
|
|
60
|
+
FOREIGN KEY (session_id) REFERENCES sessions(id) ON DELETE CASCADE,
|
|
61
|
+
FOREIGN KEY (tag_id) REFERENCES tags(id) ON DELETE CASCADE
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
CREATE TABLE IF NOT EXISTS sync_state (
|
|
65
|
+
file_path TEXT PRIMARY KEY,
|
|
66
|
+
mtime INTEGER,
|
|
67
|
+
byte_offset INTEGER DEFAULT 0,
|
|
68
|
+
last_synced TEXT DEFAULT (datetime('now'))
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
CREATE TABLE IF NOT EXISTS panes (
|
|
72
|
+
id TEXT PRIMARY KEY,
|
|
73
|
+
title TEXT NOT NULL DEFAULT 'Terminal',
|
|
74
|
+
color TEXT NOT NULL DEFAULT '#6366f1',
|
|
75
|
+
cwd TEXT NOT NULL,
|
|
76
|
+
claude_session_id TEXT,
|
|
77
|
+
grid_col INTEGER NOT NULL DEFAULT 0,
|
|
78
|
+
grid_row INTEGER NOT NULL DEFAULT 0,
|
|
79
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
80
|
+
shell TEXT,
|
|
81
|
+
created TEXT DEFAULT (datetime('now'))
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
CREATE TABLE IF NOT EXISTS totp (
|
|
85
|
+
username TEXT PRIMARY KEY,
|
|
86
|
+
secret TEXT NOT NULL,
|
|
87
|
+
enabled INTEGER DEFAULT 0,
|
|
88
|
+
created TEXT DEFAULT (datetime('now'))
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
CREATE TABLE IF NOT EXISTS workspace_todos (
|
|
92
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
93
|
+
workspace_id INTEGER NOT NULL REFERENCES workspaces(id) ON DELETE CASCADE,
|
|
94
|
+
text TEXT NOT NULL,
|
|
95
|
+
completed INTEGER NOT NULL DEFAULT 0,
|
|
96
|
+
sort_order INTEGER NOT NULL DEFAULT 0,
|
|
97
|
+
created TEXT NOT NULL DEFAULT (datetime('now')),
|
|
98
|
+
completed_at TEXT
|
|
99
|
+
);
|
|
100
|
+
|
|
101
|
+
CREATE INDEX IF NOT EXISTS idx_workspace_todos_workspace
|
|
102
|
+
ON workspace_todos(workspace_id);
|
|
103
|
+
`);let r=(e,s,r)=>{try{t.exec(`ALTER TABLE ${e} ADD COLUMN ${s} ${r}`)}catch{}};r("workspaces","is_active","INTEGER DEFAULT 0"),r("workspaces","updated","TEXT"),r("workspaces","lobe_config","TEXT DEFAULT '{}'"),r("panes","workspace_id","INTEGER"),r("panes","is_popout","INTEGER DEFAULT 0"),r("panes","win_x","INTEGER"),r("panes","win_y","INTEGER"),r("panes","win_width","INTEGER DEFAULT 800"),r("panes","win_height","INTEGER DEFAULT 600"),r("panes","agent_type","TEXT DEFAULT 'shell'"),r("panes","custom_command","TEXT"),r("panes","node_id","TEXT"),r("sessions","agent_type","TEXT DEFAULT 'claude'"),r("projects","agent_type","TEXT DEFAULT 'claude'"),r("projects","agent_path","TEXT");try{t.exec("UPDATE projects SET agent_path = claude_path WHERE agent_path IS NULL AND claude_path IS NOT NULL")}catch{}r("workspaces","collaboration","INTEGER DEFAULT 0"),r("panes","is_collaborating","INTEGER DEFAULT 0"),r("panes","diff_baseline_sha","TEXT"),r("panes","custom_model_id","TEXT");try{t.exec("CREATE INDEX IF NOT EXISTS idx_sessions_agent_type ON sessions(agent_type)")}catch{}try{t.exec("CREATE INDEX IF NOT EXISTS idx_projects_agent_type ON projects(agent_type)")}catch{}let a=t.prepare("SELECT id FROM workspaces WHERE name = 'Default'").get();a?(s=a.id,t.prepare("SELECT id FROM workspaces WHERE is_active = 1").get()||t.prepare("UPDATE workspaces SET is_active = 1 WHERE id = ?").run(s)):s=Number(t.prepare("INSERT INTO workspaces (name, description, color, is_active) VALUES ('Default', 'Default workspace', '#6366f1', 1)").run().lastInsertRowid);let n=t.prepare("SELECT id FROM workspaces WHERE is_active = 1").get();n&&t.prepare("UPDATE panes SET workspace_id = ? WHERE workspace_id IS NULL").run(n.id);try{t.exec(`
|
|
104
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS sessions_fts USING fts5(
|
|
105
|
+
session_id,
|
|
106
|
+
content,
|
|
107
|
+
content_rowid='rowid'
|
|
108
|
+
);
|
|
109
|
+
`)}catch{}try{let{getTeams:s}=e.r(599944),r=s();r&&r.db.runMigrations(t)}catch{}}(c),a.set(n,c),c}function i(){for(let e of a.values())e.close();a.clear()}e.s(["__testing",0,{dbs:a},"closeDb",()=>i,"getDb",()=>n])},233405,(e,t,s)=>{t.exports=e.x("child_process",()=>require("child_process"))},365836,e=>{"use strict";var t=e.i(507304),s=e.i(460569),r=e.i(79832),a=e.i(599944);let n=new Set,i=new Set,o=!1,c=0;async function d(){let d=(0,r.getCurrentUser)();if(n.has(d)){let e=Date.now();e-c>3e5&&(c=e,(0,s.buildFtsIndex)().catch(()=>{}));return}if((0,t.getDb)(),n.add(d),!o){o=!0;let s=(0,a.getTeams)();if(s){let{sseManager:r}=await e.A(972354);s.init({getDb:t.getDb,sseManager:r})}}if(!i.has(d)){i.add(d);try{let e=await (0,s.fullSync)();console.log(`[spaces:${d}] Synced ${e.projects} projects, ${e.sessions} sessions`);let t=await (0,s.enrichMissingSessions)();t>0&&console.log(`[spaces:${d}] Enriched ${t} sessions from JSONL`),c=Date.now(),(0,s.buildFtsIndex)((e,t)=>{e>0&&e%10==0&&console.log(`[spaces:${d}] FTS indexing: ${e}/${t}`)}).then(e=>{e>0&&console.log(`[spaces:${d}] FTS indexed ${e} sessions`)}).catch(e=>{console.error(`[spaces:${d}] FTS indexing error:`,e)})}catch(e){console.error(`[spaces:${d}] Sync error:`,e)}finally{i.delete(d)}}}e.s(["ensureInitialized",()=>d])},118167,e=>{"use strict";var t=e.i(362562),s=e.i(814747);let r=null,a=!1;function n(){if(!a){for(let e of function(){let e=[s.default.join(process.cwd(),"package.json")];for(let t of(process.env.NODE_PATH||"").split(s.default.delimiter))t&&e.push(s.default.join(t,"_anchor.js"));return e}())try{r=(0,t.createRequire)(e)("@spaces/pro");break}catch{}a=!0}return r}e.s(["getPro",()=>n])},392399,e=>{"use strict";var t=e.i(747909),s=e.i(174017),r=e.i(996250),a=e.i(759756),n=e.i(561916),i=e.i(174677),o=e.i(869741),c=e.i(316795),d=e.i(487718),l=e.i(995169),u=e.i(47587),E=e.i(666012),p=e.i(570101),T=e.i(626937),f=e.i(10372),h=e.i(193695);e.i(52474);var N=e.i(600220),R=e.i(118167),g=e.i(365836),A=e.i(550837),_=e.i(79832);async function m(e,{params:t}){let s,r=(0,R.getPro)();if(!r)return Response.json({error:"Requires @spaces/pro"},{status:404});try{s=r.network.requireNetworkAuth(e)}catch(e){if("NetworkAuthError"===e.name)return Response.json({error:e.message},{status:401});throw e}let a=s?.username;if(!a)return Response.json({error:"API key missing user binding"},{status:401});let{id:n}=await t;return(0,_.withUser)(a,async()=>{await (0,g.ensureInitialized)();let e=(0,A.getSessionById)(n);if(!e)return Response.json({error:"Session not found"},{status:404});let t=(0,A.getSessionTags)(e.id),s=(0,A.getSessionWorkspaces)(e.id);return Response.json({...e,tagObjects:t,workspaces:s})})}e.s(["GET",()=>m],411729);var I=e.i(411729);let S=new t.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/network/sessions/[id]/route",pathname:"/api/network/sessions/[id]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/network/sessions/[id]/route.ts",nextConfigOutput:"standalone",userland:I}),{workAsyncStorage:x,workUnitAsyncStorage:L,serverHooks:w}=S;function O(){return(0,r.patchFetch)({workAsyncStorage:x,workUnitAsyncStorage:L})}async function y(e,t,r){S.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/network/sessions/[id]/route";R=R.replace(/\/index$/,"")||"/";let g=await S.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:A,params:_,nextConfig:m,parsedUrl:I,isDraftMode:x,prerenderManifest:L,routerServerContext:w,isOnDemandRevalidate:O,revalidateOnlyGenerated:y,resolvedPathname:v,clientReferenceManifest:U,serverActionsManifest:D}=g,C=(0,o.normalizeAppPath)(R),b=!!(L.dynamicRoutes[C]||L.routes[v]),X=async()=>((null==w?void 0:w.render404)?await w.render404(e,t,I,!1):t.end("This page could not be found"),null);if(b&&!x){let e=!!L.routes[v],t=L.dynamicRoutes[C];if(t&&!1===t.fallback&&!e){if(m.experimental.adapterPath)return await X();throw new h.NoFallbackError}}let k=null;!b||S.isDev||x||(k="/index"===(k=v)?"/":k);let F=!0===S.isDev||!b,j=b&&!F;D&&U&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:U,serverActionsManifest:D});let P=e.method||"GET",M=(0,n.getTracer)(),q=M.getActiveScopeSpan(),G={params:_,prerenderManifest:L,renderOpts:{experimental:{authInterrupts:!!m.experimental.authInterrupts},cacheComponents:!!m.cacheComponents,supportsDynamicResponse:F,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:m.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,s,r,a)=>S.onRequestError(e,t,r,a,w)},sharedContext:{buildId:A}},H=new c.NodeNextRequest(e),K=new c.NodeNextResponse(t),Y=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let i=async e=>S.handle(Y,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=M.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==l.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=s.get("next.route");if(r){let t=`${P} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${R}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),c=async a=>{var n,c;let d=async({previousCacheEntry:s})=>{try{if(!o&&O&&y&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(a);e.fetchMetrics=G.renderOpts.fetchMetrics;let c=G.renderOpts.pendingWaitUntil;c&&r.waitUntil&&(r.waitUntil(c),c=void 0);let d=G.renderOpts.collectedTags;if(!b)return await (0,E.sendResponse)(H,K,n,G.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(n.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let s=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,r=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:N.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:s,expire:r}}}}catch(t){throw(null==s?void 0:s.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:O})},!1,w),t}},l=await S.handleResponse({req:e,nextConfig:m,cacheKey:k,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:L,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:y,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:o});if(!b)return null;if((null==l||null==(n=l.value)?void 0:n.kind)!==N.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(c=l.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",O?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(l.value.headers);return o&&b||h.delete(f.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,T.getCacheControlHeader)(l.cacheControl)),await (0,E.sendResponse)(H,K,new Response(l.value.body,{headers:h,status:l.value.status||200})),null};q?await c(q):await M.withPropagatedContext(e.headers,()=>M.trace(l.BaseServerSpan.handleRequest,{spanName:`${P} ${R}`,kind:n.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},c))}catch(t){if(t instanceof h.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:C,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:O})},!1,w),b)throw t;return await (0,E.sendResponse)(H,K,new Response(null,{status:500})),null}}e.s(["handler",()=>y,"patchFetch",()=>O,"routeModule",()=>S,"serverHooks",()=>w,"workAsyncStorage",()=>x,"workUnitAsyncStorage",()=>L],392399)},972354,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_events_sse_ts_1ad73980._.js"].map(t=>e.l(t))).then(()=>t(920776)))}];
|
|
110
|
+
|
|
111
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__d59c6c15._.js.map
|