@agentuity/cli 2.0.0-beta.0 → 2.0.0-beta.1
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/bin/cli.ts +5 -0
- package/dist/auth.d.ts +1 -1
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +12 -1
- package/dist/auth.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +29 -1
- package/dist/cli.js.map +1 -1
- package/dist/cmd/auth/ssh/delete.js +1 -1
- package/dist/cmd/auth/ssh/delete.js.map +1 -1
- package/dist/cmd/build/app-config-extractor.d.ts +27 -0
- package/dist/cmd/build/app-config-extractor.d.ts.map +1 -0
- package/dist/cmd/build/app-config-extractor.js +152 -0
- package/dist/cmd/build/app-config-extractor.js.map +1 -0
- package/dist/cmd/build/ci.d.ts +18 -0
- package/dist/cmd/build/ci.d.ts.map +1 -0
- package/dist/cmd/build/ci.js +181 -0
- package/dist/cmd/build/ci.js.map +1 -0
- package/dist/cmd/build/index.d.ts.map +1 -1
- package/dist/cmd/build/index.js +53 -14
- package/dist/cmd/build/index.js.map +1 -1
- package/dist/cmd/build/vite/bun-dev-server.d.ts +35 -0
- package/dist/cmd/build/vite/bun-dev-server.d.ts.map +1 -1
- package/dist/cmd/build/vite/bun-dev-server.js +232 -4
- package/dist/cmd/build/vite/bun-dev-server.js.map +1 -1
- package/dist/cmd/build/vite/config-loader.d.ts +15 -20
- package/dist/cmd/build/vite/config-loader.d.ts.map +1 -1
- package/dist/cmd/build/vite/config-loader.js +41 -74
- package/dist/cmd/build/vite/config-loader.js.map +1 -1
- package/dist/cmd/build/vite/static-renderer.d.ts +0 -2
- package/dist/cmd/build/vite/static-renderer.d.ts.map +1 -1
- package/dist/cmd/build/vite/static-renderer.js +28 -14
- package/dist/cmd/build/vite/static-renderer.js.map +1 -1
- package/dist/cmd/build/vite/tailwind-source-plugin.d.ts +15 -0
- package/dist/cmd/build/vite/tailwind-source-plugin.d.ts.map +1 -0
- package/dist/cmd/build/vite/tailwind-source-plugin.js +61 -0
- package/dist/cmd/build/vite/tailwind-source-plugin.js.map +1 -0
- package/dist/cmd/build/vite/vite-asset-server-config.d.ts.map +1 -1
- package/dist/cmd/build/vite/vite-asset-server-config.js +4 -48
- package/dist/cmd/build/vite/vite-asset-server-config.js.map +1 -1
- package/dist/cmd/build/vite/vite-builder.d.ts.map +1 -1
- package/dist/cmd/build/vite/vite-builder.js +38 -156
- package/dist/cmd/build/vite/vite-builder.js.map +1 -1
- package/dist/cmd/cloud/agent/get.d.ts.map +1 -1
- package/dist/cmd/cloud/agent/get.js +1 -0
- package/dist/cmd/cloud/agent/get.js.map +1 -1
- package/dist/cmd/cloud/apikey/delete.js +1 -1
- package/dist/cmd/cloud/apikey/delete.js.map +1 -1
- package/dist/cmd/cloud/apikey/get.d.ts.map +1 -1
- package/dist/cmd/cloud/apikey/get.js +1 -0
- package/dist/cmd/cloud/apikey/get.js.map +1 -1
- package/dist/cmd/cloud/apikey/index.d.ts.map +1 -1
- package/dist/cmd/cloud/apikey/index.js +1 -0
- package/dist/cmd/cloud/apikey/index.js.map +1 -1
- package/dist/cmd/cloud/db/delete.js +1 -1
- package/dist/cmd/cloud/db/delete.js.map +1 -1
- package/dist/cmd/cloud/deploy.js +1 -1
- package/dist/cmd/cloud/deploy.js.map +1 -1
- package/dist/cmd/cloud/deployment/remove.js +17 -17
- package/dist/cmd/cloud/deployment/remove.js.map +1 -1
- package/dist/cmd/cloud/deployment/show.js +1 -1
- package/dist/cmd/cloud/deployment/show.js.map +1 -1
- package/dist/cmd/cloud/email/create.js +1 -1
- package/dist/cmd/cloud/email/create.js.map +1 -1
- package/dist/cmd/cloud/email/delete.js +1 -1
- package/dist/cmd/cloud/email/delete.js.map +1 -1
- package/dist/cmd/cloud/email/destination/delete.js +1 -1
- package/dist/cmd/cloud/email/destination/delete.js.map +1 -1
- package/dist/cmd/cloud/email/get.d.ts.map +1 -1
- package/dist/cmd/cloud/email/get.js +1 -0
- package/dist/cmd/cloud/email/get.js.map +1 -1
- package/dist/cmd/cloud/email/inbound/get.d.ts.map +1 -1
- package/dist/cmd/cloud/email/inbound/get.js +1 -0
- package/dist/cmd/cloud/email/inbound/get.js.map +1 -1
- package/dist/cmd/cloud/email/outbound/get.d.ts.map +1 -1
- package/dist/cmd/cloud/email/outbound/get.js +1 -0
- package/dist/cmd/cloud/email/outbound/get.js.map +1 -1
- package/dist/cmd/cloud/env/delete.js +1 -1
- package/dist/cmd/cloud/env/delete.js.map +1 -1
- package/dist/cmd/cloud/env/get.d.ts.map +1 -1
- package/dist/cmd/cloud/env/get.js +1 -0
- package/dist/cmd/cloud/env/get.js.map +1 -1
- package/dist/cmd/cloud/eval/get.d.ts.map +1 -1
- package/dist/cmd/cloud/eval/get.js +1 -0
- package/dist/cmd/cloud/eval/get.js.map +1 -1
- package/dist/cmd/cloud/eval/index.d.ts.map +1 -1
- package/dist/cmd/cloud/eval/index.js +1 -0
- package/dist/cmd/cloud/eval/index.js.map +1 -1
- package/dist/cmd/cloud/eval/list.js +1 -1
- package/dist/cmd/cloud/eval/list.js.map +1 -1
- package/dist/cmd/cloud/eval-run/get.d.ts.map +1 -1
- package/dist/cmd/cloud/eval-run/get.js +1 -0
- package/dist/cmd/cloud/eval-run/get.js.map +1 -1
- package/dist/cmd/cloud/eval-run/index.d.ts.map +1 -1
- package/dist/cmd/cloud/eval-run/index.js +1 -0
- package/dist/cmd/cloud/eval-run/index.js.map +1 -1
- package/dist/cmd/cloud/eval-run/list.js +1 -1
- package/dist/cmd/cloud/eval-run/list.js.map +1 -1
- package/dist/cmd/cloud/keyvalue/delete-namespace.js +1 -1
- package/dist/cmd/cloud/keyvalue/delete-namespace.js.map +1 -1
- package/dist/cmd/cloud/keyvalue/delete.js +1 -1
- package/dist/cmd/cloud/keyvalue/delete.js.map +1 -1
- package/dist/cmd/cloud/keyvalue/get.d.ts.map +1 -1
- package/dist/cmd/cloud/keyvalue/get.js +1 -0
- package/dist/cmd/cloud/keyvalue/get.js.map +1 -1
- package/dist/cmd/cloud/keyvalue/index.js +1 -1
- package/dist/cmd/cloud/keyvalue/index.js.map +1 -1
- package/dist/cmd/cloud/machine/delete.js +1 -1
- package/dist/cmd/cloud/machine/delete.js.map +1 -1
- package/dist/cmd/cloud/oidc/delete.js +1 -1
- package/dist/cmd/cloud/oidc/delete.js.map +1 -1
- package/dist/cmd/cloud/oidc/get.d.ts.map +1 -1
- package/dist/cmd/cloud/oidc/get.js +1 -0
- package/dist/cmd/cloud/oidc/get.js.map +1 -1
- package/dist/cmd/cloud/queue/create.d.ts.map +1 -1
- package/dist/cmd/cloud/queue/create.js +1 -0
- package/dist/cmd/cloud/queue/create.js.map +1 -1
- package/dist/cmd/cloud/queue/delete.js +1 -1
- package/dist/cmd/cloud/queue/delete.js.map +1 -1
- package/dist/cmd/cloud/queue/get.d.ts.map +1 -1
- package/dist/cmd/cloud/queue/get.js +1 -0
- package/dist/cmd/cloud/queue/get.js.map +1 -1
- package/dist/cmd/cloud/redis/get.js +1 -1
- package/dist/cmd/cloud/redis/get.js.map +1 -1
- package/dist/cmd/cloud/sandbox/checkpoint/create.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/checkpoint/create.js +1 -0
- package/dist/cmd/cloud/sandbox/checkpoint/create.js.map +1 -1
- package/dist/cmd/cloud/sandbox/checkpoint/delete.js +1 -1
- package/dist/cmd/cloud/sandbox/checkpoint/delete.js.map +1 -1
- package/dist/cmd/cloud/sandbox/checkpoint/index.js +1 -1
- package/dist/cmd/cloud/sandbox/checkpoint/index.js.map +1 -1
- package/dist/cmd/cloud/sandbox/create.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/create.js +9 -0
- package/dist/cmd/cloud/sandbox/create.js.map +1 -1
- package/dist/cmd/cloud/sandbox/delete.js +1 -1
- package/dist/cmd/cloud/sandbox/delete.js.map +1 -1
- package/dist/cmd/cloud/sandbox/execution/index.js +1 -1
- package/dist/cmd/cloud/sandbox/execution/index.js.map +1 -1
- package/dist/cmd/cloud/sandbox/execution/list.js +2 -2
- package/dist/cmd/cloud/sandbox/execution/list.js.map +1 -1
- package/dist/cmd/cloud/sandbox/fs/cp.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/fs/cp.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/{cp.js → fs/cp.js} +13 -13
- package/dist/cmd/cloud/sandbox/fs/cp.js.map +1 -0
- package/dist/cmd/cloud/sandbox/fs/download.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/fs/download.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/{download.js → fs/download.js} +7 -7
- package/dist/cmd/cloud/sandbox/fs/download.js.map +1 -0
- package/dist/cmd/cloud/sandbox/fs/index.d.ts +2 -0
- package/dist/cmd/cloud/sandbox/fs/index.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/fs/index.js +36 -0
- package/dist/cmd/cloud/sandbox/fs/index.js.map +1 -0
- package/dist/cmd/cloud/sandbox/fs/ls.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/fs/ls.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/{ls.js → fs/ls.js} +10 -10
- package/dist/cmd/cloud/sandbox/fs/ls.js.map +1 -0
- package/dist/cmd/cloud/sandbox/fs/mkdir.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/fs/mkdir.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/{mkdir.js → fs/mkdir.js} +6 -6
- package/dist/cmd/cloud/sandbox/fs/mkdir.js.map +1 -0
- package/dist/cmd/cloud/sandbox/fs/rm.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/fs/rm.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/{rm.js → fs/rm.js} +6 -5
- package/dist/cmd/cloud/sandbox/fs/rm.js.map +1 -0
- package/dist/cmd/cloud/sandbox/fs/rmdir.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/fs/rmdir.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/{rmdir.js → fs/rmdir.js} +6 -6
- package/dist/cmd/cloud/sandbox/fs/rmdir.js.map +1 -0
- package/dist/cmd/cloud/sandbox/fs/upload.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/fs/upload.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/{upload.js → fs/upload.js} +7 -7
- package/dist/cmd/cloud/sandbox/fs/upload.js.map +1 -0
- package/dist/cmd/cloud/sandbox/index.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/index.js +4 -14
- package/dist/cmd/cloud/sandbox/index.js.map +1 -1
- package/dist/cmd/cloud/sandbox/job/create.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/job/create.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/job/create.js +52 -0
- package/dist/cmd/cloud/sandbox/job/create.js.map +1 -0
- package/dist/cmd/cloud/sandbox/job/destroy.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/job/destroy.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/job/destroy.js +59 -0
- package/dist/cmd/cloud/sandbox/job/destroy.js.map +1 -0
- package/dist/cmd/cloud/sandbox/job/get.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/job/get.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/job/get.js +66 -0
- package/dist/cmd/cloud/sandbox/job/get.js.map +1 -0
- package/dist/cmd/cloud/sandbox/job/index.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/job/index.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/job/index.js +30 -0
- package/dist/cmd/cloud/sandbox/job/index.js.map +1 -0
- package/dist/cmd/cloud/sandbox/job/list.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/job/list.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/job/list.js +67 -0
- package/dist/cmd/cloud/sandbox/job/list.js.map +1 -0
- package/dist/cmd/cloud/sandbox/runtime/index.js +1 -1
- package/dist/cmd/cloud/sandbox/runtime/index.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/create.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/create.js +1 -0
- package/dist/cmd/cloud/sandbox/snapshot/create.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/delete.js +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/delete.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/index.js +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/index.js.map +1 -1
- package/dist/cmd/cloud/schedule/create.d.ts.map +1 -1
- package/dist/cmd/cloud/schedule/create.js +1 -0
- package/dist/cmd/cloud/schedule/create.js.map +1 -1
- package/dist/cmd/cloud/schedule/delete.js +1 -1
- package/dist/cmd/cloud/schedule/delete.js.map +1 -1
- package/dist/cmd/cloud/schedule/delivery/get.d.ts.map +1 -1
- package/dist/cmd/cloud/schedule/delivery/get.js +1 -0
- package/dist/cmd/cloud/schedule/delivery/get.js.map +1 -1
- package/dist/cmd/cloud/schedule/destination/create.d.ts.map +1 -1
- package/dist/cmd/cloud/schedule/destination/create.js +1 -0
- package/dist/cmd/cloud/schedule/destination/create.js.map +1 -1
- package/dist/cmd/cloud/schedule/destination/delete.js +1 -1
- package/dist/cmd/cloud/schedule/destination/delete.js.map +1 -1
- package/dist/cmd/cloud/schedule/destination/get.d.ts.map +1 -1
- package/dist/cmd/cloud/schedule/destination/get.js +1 -0
- package/dist/cmd/cloud/schedule/destination/get.js.map +1 -1
- package/dist/cmd/cloud/schedule/get.d.ts.map +1 -1
- package/dist/cmd/cloud/schedule/get.js +1 -0
- package/dist/cmd/cloud/schedule/get.js.map +1 -1
- package/dist/cmd/cloud/session/get.d.ts.map +1 -1
- package/dist/cmd/cloud/session/get.js +1 -0
- package/dist/cmd/cloud/session/get.js.map +1 -1
- package/dist/cmd/cloud/session/index.d.ts.map +1 -1
- package/dist/cmd/cloud/session/index.js +1 -0
- package/dist/cmd/cloud/session/index.js.map +1 -1
- package/dist/cmd/cloud/session/list.js +1 -1
- package/dist/cmd/cloud/session/list.js.map +1 -1
- package/dist/cmd/cloud/storage/delete.js +1 -1
- package/dist/cmd/cloud/storage/delete.js.map +1 -1
- package/dist/cmd/cloud/stream/delete.js +1 -1
- package/dist/cmd/cloud/stream/delete.js.map +1 -1
- package/dist/cmd/cloud/stream/get.d.ts.map +1 -1
- package/dist/cmd/cloud/stream/get.js +1 -0
- package/dist/cmd/cloud/stream/get.js.map +1 -1
- package/dist/cmd/cloud/task/delete.js +1 -1
- package/dist/cmd/cloud/task/delete.js.map +1 -1
- package/dist/cmd/cloud/task/index.d.ts.map +1 -1
- package/dist/cmd/cloud/task/index.js +1 -0
- package/dist/cmd/cloud/task/index.js.map +1 -1
- package/dist/cmd/cloud/thread/delete.js +1 -1
- package/dist/cmd/cloud/thread/delete.js.map +1 -1
- package/dist/cmd/cloud/thread/get.d.ts.map +1 -1
- package/dist/cmd/cloud/thread/get.js +1 -0
- package/dist/cmd/cloud/thread/get.js.map +1 -1
- package/dist/cmd/cloud/thread/index.d.ts.map +1 -1
- package/dist/cmd/cloud/thread/index.js +1 -0
- package/dist/cmd/cloud/thread/index.js.map +1 -1
- package/dist/cmd/cloud/thread/list.js +1 -1
- package/dist/cmd/cloud/thread/list.js.map +1 -1
- package/dist/cmd/cloud/vector/delete-namespace.js +1 -1
- package/dist/cmd/cloud/vector/delete-namespace.js.map +1 -1
- package/dist/cmd/cloud/vector/delete.js +1 -1
- package/dist/cmd/cloud/vector/delete.js.map +1 -1
- package/dist/cmd/cloud/vector/get.d.ts.map +1 -1
- package/dist/cmd/cloud/vector/get.js +1 -0
- package/dist/cmd/cloud/vector/get.js.map +1 -1
- package/dist/cmd/cloud/vector/index.js +1 -1
- package/dist/cmd/cloud/vector/index.js.map +1 -1
- package/dist/cmd/cloud/webhook/create.d.ts.map +1 -1
- package/dist/cmd/cloud/webhook/create.js +1 -0
- package/dist/cmd/cloud/webhook/create.js.map +1 -1
- package/dist/cmd/cloud/webhook/delete.js +1 -1
- package/dist/cmd/cloud/webhook/delete.js.map +1 -1
- package/dist/cmd/cloud/webhook/get.d.ts.map +1 -1
- package/dist/cmd/cloud/webhook/get.js +1 -0
- package/dist/cmd/cloud/webhook/get.js.map +1 -1
- package/dist/cmd/dev/index.d.ts.map +1 -1
- package/dist/cmd/dev/index.js +161 -130
- package/dist/cmd/dev/index.js.map +1 -1
- package/dist/cmd/dev/process-manager.d.ts +104 -0
- package/dist/cmd/dev/process-manager.d.ts.map +1 -0
- package/dist/cmd/dev/process-manager.js +204 -0
- package/dist/cmd/dev/process-manager.js.map +1 -0
- package/dist/cmd/git/account/remove.d.ts.map +1 -1
- package/dist/cmd/git/account/remove.js +1 -0
- package/dist/cmd/git/account/remove.js.map +1 -1
- package/dist/cmd/profile/delete.js +1 -1
- package/dist/cmd/profile/delete.js.map +1 -1
- package/dist/cmd/project/delete.js +1 -1
- package/dist/cmd/project/delete.js.map +1 -1
- package/dist/cmd/project/hostname/get.d.ts.map +1 -1
- package/dist/cmd/project/hostname/get.js +1 -0
- package/dist/cmd/project/hostname/get.js.map +1 -1
- package/dist/cmd/upgrade/index.d.ts.map +1 -1
- package/dist/cmd/upgrade/index.js +3 -16
- package/dist/cmd/upgrade/index.js.map +1 -1
- package/dist/schema-generator.js +1 -1
- package/dist/schema-generator.js.map +1 -1
- package/dist/schema-parser.d.ts.map +1 -1
- package/dist/schema-parser.js +8 -0
- package/dist/schema-parser.js.map +1 -1
- package/dist/utils/version-mismatch.d.ts +39 -0
- package/dist/utils/version-mismatch.d.ts.map +1 -0
- package/dist/utils/version-mismatch.js +161 -0
- package/dist/utils/version-mismatch.js.map +1 -0
- package/package.json +8 -6
- package/src/auth.ts +12 -2
- package/src/cli.ts +33 -1
- package/src/cmd/auth/ssh/delete.ts +1 -1
- package/src/cmd/build/app-config-extractor.ts +186 -0
- package/src/cmd/build/ci.ts +223 -0
- package/src/cmd/build/index.ts +65 -14
- package/src/cmd/build/vite/bun-dev-server.ts +319 -6
- package/src/cmd/build/vite/config-loader.ts +45 -77
- package/src/cmd/build/vite/static-renderer.ts +34 -16
- package/src/cmd/build/vite/tailwind-source-plugin.ts +73 -0
- package/src/cmd/build/vite/vite-asset-server-config.ts +4 -47
- package/src/cmd/build/vite/vite-builder.ts +45 -169
- package/src/cmd/cloud/agent/get.ts +1 -0
- package/src/cmd/cloud/apikey/delete.ts +1 -1
- package/src/cmd/cloud/apikey/get.ts +1 -0
- package/src/cmd/cloud/apikey/index.ts +1 -0
- package/src/cmd/cloud/db/delete.ts +1 -1
- package/src/cmd/cloud/deploy.ts +1 -1
- package/src/cmd/cloud/deployment/remove.ts +17 -17
- package/src/cmd/cloud/deployment/show.ts +1 -1
- package/src/cmd/cloud/email/create.ts +1 -1
- package/src/cmd/cloud/email/delete.ts +1 -1
- package/src/cmd/cloud/email/destination/delete.ts +1 -1
- package/src/cmd/cloud/email/get.ts +1 -0
- package/src/cmd/cloud/email/inbound/get.ts +1 -0
- package/src/cmd/cloud/email/outbound/get.ts +1 -0
- package/src/cmd/cloud/env/delete.ts +1 -1
- package/src/cmd/cloud/env/get.ts +1 -0
- package/src/cmd/cloud/eval/get.ts +1 -0
- package/src/cmd/cloud/eval/index.ts +1 -0
- package/src/cmd/cloud/eval/list.ts +1 -1
- package/src/cmd/cloud/eval-run/get.ts +1 -0
- package/src/cmd/cloud/eval-run/index.ts +1 -0
- package/src/cmd/cloud/eval-run/list.ts +1 -1
- package/src/cmd/cloud/keyvalue/delete-namespace.ts +1 -1
- package/src/cmd/cloud/keyvalue/delete.ts +1 -1
- package/src/cmd/cloud/keyvalue/get.ts +1 -0
- package/src/cmd/cloud/keyvalue/index.ts +1 -1
- package/src/cmd/cloud/machine/delete.ts +1 -1
- package/src/cmd/cloud/oidc/delete.ts +1 -1
- package/src/cmd/cloud/oidc/get.ts +1 -0
- package/src/cmd/cloud/queue/create.ts +1 -0
- package/src/cmd/cloud/queue/delete.ts +1 -1
- package/src/cmd/cloud/queue/get.ts +1 -0
- package/src/cmd/cloud/redis/get.ts +1 -1
- package/src/cmd/cloud/sandbox/checkpoint/create.ts +1 -0
- package/src/cmd/cloud/sandbox/checkpoint/delete.ts +1 -1
- package/src/cmd/cloud/sandbox/checkpoint/index.ts +1 -1
- package/src/cmd/cloud/sandbox/create.ts +9 -0
- package/src/cmd/cloud/sandbox/delete.ts +1 -1
- package/src/cmd/cloud/sandbox/execution/index.ts +1 -1
- package/src/cmd/cloud/sandbox/execution/list.ts +2 -2
- package/src/cmd/cloud/sandbox/{cp.ts → fs/cp.ts} +13 -13
- package/src/cmd/cloud/sandbox/{download.ts → fs/download.ts} +7 -7
- package/src/cmd/cloud/sandbox/fs/index.ts +36 -0
- package/src/cmd/cloud/sandbox/{ls.ts → fs/ls.ts} +10 -10
- package/src/cmd/cloud/sandbox/{mkdir.ts → fs/mkdir.ts} +6 -6
- package/src/cmd/cloud/sandbox/{rm.ts → fs/rm.ts} +6 -5
- package/src/cmd/cloud/sandbox/{rmdir.ts → fs/rmdir.ts} +6 -6
- package/src/cmd/cloud/sandbox/{upload.ts → fs/upload.ts} +7 -7
- package/src/cmd/cloud/sandbox/index.ts +4 -14
- package/src/cmd/cloud/sandbox/job/create.ts +63 -0
- package/src/cmd/cloud/sandbox/job/destroy.ts +67 -0
- package/src/cmd/cloud/sandbox/job/get.ts +78 -0
- package/src/cmd/cloud/sandbox/job/index.ts +31 -0
- package/src/cmd/cloud/sandbox/job/list.ts +81 -0
- package/src/cmd/cloud/sandbox/runtime/index.ts +1 -1
- package/src/cmd/cloud/sandbox/snapshot/create.ts +1 -0
- package/src/cmd/cloud/sandbox/snapshot/delete.ts +1 -1
- package/src/cmd/cloud/sandbox/snapshot/index.ts +1 -1
- package/src/cmd/cloud/schedule/create.ts +1 -0
- package/src/cmd/cloud/schedule/delete.ts +1 -1
- package/src/cmd/cloud/schedule/delivery/get.ts +1 -0
- package/src/cmd/cloud/schedule/destination/create.ts +1 -0
- package/src/cmd/cloud/schedule/destination/delete.ts +1 -1
- package/src/cmd/cloud/schedule/destination/get.ts +1 -0
- package/src/cmd/cloud/schedule/get.ts +1 -0
- package/src/cmd/cloud/session/get.ts +1 -0
- package/src/cmd/cloud/session/index.ts +1 -0
- package/src/cmd/cloud/session/list.ts +1 -1
- package/src/cmd/cloud/storage/delete.ts +1 -1
- package/src/cmd/cloud/stream/delete.ts +1 -1
- package/src/cmd/cloud/stream/get.ts +1 -0
- package/src/cmd/cloud/task/delete.ts +1 -1
- package/src/cmd/cloud/task/index.ts +1 -0
- package/src/cmd/cloud/thread/delete.ts +1 -1
- package/src/cmd/cloud/thread/get.ts +1 -0
- package/src/cmd/cloud/thread/index.ts +1 -0
- package/src/cmd/cloud/thread/list.ts +1 -1
- package/src/cmd/cloud/vector/delete-namespace.ts +1 -1
- package/src/cmd/cloud/vector/delete.ts +1 -1
- package/src/cmd/cloud/vector/get.ts +1 -0
- package/src/cmd/cloud/vector/index.ts +1 -1
- package/src/cmd/cloud/webhook/create.ts +1 -0
- package/src/cmd/cloud/webhook/delete.ts +1 -1
- package/src/cmd/cloud/webhook/get.ts +1 -0
- package/src/cmd/dev/index.ts +171 -131
- package/src/cmd/dev/process-manager.ts +261 -0
- package/src/cmd/git/account/remove.ts +1 -0
- package/src/cmd/profile/delete.ts +1 -1
- package/src/cmd/project/delete.ts +1 -1
- package/src/cmd/project/hostname/get.ts +1 -0
- package/src/cmd/upgrade/index.ts +3 -18
- package/src/schema-generator.ts +1 -1
- package/src/schema-parser.ts +11 -0
- package/src/utils/version-mismatch.ts +204 -0
- package/dist/cmd/cloud/sandbox/cp.d.ts +0 -3
- package/dist/cmd/cloud/sandbox/cp.d.ts.map +0 -1
- package/dist/cmd/cloud/sandbox/cp.js.map +0 -1
- package/dist/cmd/cloud/sandbox/download.d.ts +0 -3
- package/dist/cmd/cloud/sandbox/download.d.ts.map +0 -1
- package/dist/cmd/cloud/sandbox/download.js.map +0 -1
- package/dist/cmd/cloud/sandbox/ls.d.ts +0 -3
- package/dist/cmd/cloud/sandbox/ls.d.ts.map +0 -1
- package/dist/cmd/cloud/sandbox/ls.js.map +0 -1
- package/dist/cmd/cloud/sandbox/mkdir.d.ts +0 -3
- package/dist/cmd/cloud/sandbox/mkdir.d.ts.map +0 -1
- package/dist/cmd/cloud/sandbox/mkdir.js.map +0 -1
- package/dist/cmd/cloud/sandbox/rm.d.ts +0 -3
- package/dist/cmd/cloud/sandbox/rm.d.ts.map +0 -1
- package/dist/cmd/cloud/sandbox/rm.js.map +0 -1
- package/dist/cmd/cloud/sandbox/rmdir.d.ts +0 -3
- package/dist/cmd/cloud/sandbox/rmdir.d.ts.map +0 -1
- package/dist/cmd/cloud/sandbox/rmdir.js.map +0 -1
- package/dist/cmd/cloud/sandbox/upload.d.ts +0 -3
- package/dist/cmd/cloud/sandbox/upload.d.ts.map +0 -1
- package/dist/cmd/cloud/sandbox/upload.js.map +0 -1
|
@@ -7,8 +7,194 @@
|
|
|
7
7
|
*
|
|
8
8
|
* The user's app.ts exports the result of createApp() which includes `fetch`
|
|
9
9
|
* and `port` properties that Bun uses to manage the server lifecycle.
|
|
10
|
+
*
|
|
11
|
+
* Key requirements for bun --hot:
|
|
12
|
+
* - app.ts MUST have `export default` with { fetch, port } properties
|
|
13
|
+
* - Without export default, Bun runs the code but never starts an HTTP server
|
|
10
14
|
*/
|
|
11
15
|
import { getAgentEnv } from '../../../agent-detection';
|
|
16
|
+
import { createServer as createNetServer } from 'node:net';
|
|
17
|
+
/**
|
|
18
|
+
* Check if a port is available for binding.
|
|
19
|
+
* Returns true if the port is free, false if in use.
|
|
20
|
+
*/
|
|
21
|
+
function isPortAvailable(port, host = '127.0.0.1') {
|
|
22
|
+
return new Promise((resolve) => {
|
|
23
|
+
const server = createNetServer();
|
|
24
|
+
server.once('error', () => {
|
|
25
|
+
resolve(false);
|
|
26
|
+
});
|
|
27
|
+
server.listen(port, host, () => {
|
|
28
|
+
server.close(() => {
|
|
29
|
+
resolve(true);
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Kill any process listening on the specified port.
|
|
36
|
+
* Uses lsof on Unix systems to find and kill the process.
|
|
37
|
+
*/
|
|
38
|
+
async function killProcessOnPort(port, logger) {
|
|
39
|
+
if (process.platform === 'win32') {
|
|
40
|
+
// Windows: use netstat to find PID, then taskkill
|
|
41
|
+
// This is more complex and less reliable, skip for now
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
try {
|
|
45
|
+
// Find PIDs listening on the port
|
|
46
|
+
const result = Bun.spawnSync(['lsof', '-t', '-i', `:${port}`], {
|
|
47
|
+
stdout: 'pipe',
|
|
48
|
+
stderr: 'ignore',
|
|
49
|
+
});
|
|
50
|
+
if (result.exitCode !== 0 || !result.stdout) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
const pids = new TextDecoder()
|
|
54
|
+
.decode(result.stdout)
|
|
55
|
+
.trim()
|
|
56
|
+
.split('\n')
|
|
57
|
+
.filter((line) => line && /^\d+$/.test(line));
|
|
58
|
+
if (pids.length === 0) {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
// Kill each process
|
|
62
|
+
for (const pid of pids) {
|
|
63
|
+
try {
|
|
64
|
+
// Use SIGKILL to ensure cleanup
|
|
65
|
+
const killResult = Bun.spawnSync(['kill', '-9', pid], {
|
|
66
|
+
stdout: 'ignore',
|
|
67
|
+
stderr: 'ignore',
|
|
68
|
+
});
|
|
69
|
+
if (killResult.exitCode === 0) {
|
|
70
|
+
logger.debug('Killed orphan process %s on port %d', pid, port);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
// Ignore kill errors
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
// Brief pause to let the port be released
|
|
78
|
+
await new Promise((resolve) => setTimeout(resolve, 100));
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Ensure the port is available, cleaning up any orphan processes if needed.
|
|
87
|
+
*/
|
|
88
|
+
async function ensurePortAvailable(port, logger) {
|
|
89
|
+
const available = await isPortAvailable(port);
|
|
90
|
+
if (available) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
logger.debug('Port %d is in use, attempting to clean up orphan process...', port);
|
|
94
|
+
const killed = await killProcessOnPort(port, logger);
|
|
95
|
+
if (killed) {
|
|
96
|
+
// Verify the port is now free
|
|
97
|
+
const nowAvailable = await isPortAvailable(port);
|
|
98
|
+
if (!nowAvailable) {
|
|
99
|
+
throw new Error(`Port ${port} is still in use after cleanup. Another process may be holding it.\n` +
|
|
100
|
+
`Run 'lsof -i :${port}' to identify the process.`);
|
|
101
|
+
}
|
|
102
|
+
logger.debug('Port %d is now available', port);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
throw new Error(`Port ${port} is already in use.\n` +
|
|
106
|
+
`Run 'lsof -i :${port}' to identify the process, or kill it manually.`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Validate app.ts for common issues that prevent Bun --hot from starting.
|
|
111
|
+
*
|
|
112
|
+
* Bun --hot requires `export default { fetch, port }` to start a server.
|
|
113
|
+
* Common mistakes:
|
|
114
|
+
* - No `export default` (v1 pattern: destructuring result without exporting)
|
|
115
|
+
* - Calling createApp() but not exporting it
|
|
116
|
+
*
|
|
117
|
+
* @internal Exported for testing only
|
|
118
|
+
*/
|
|
119
|
+
export async function validateAppTs(appPath) {
|
|
120
|
+
const result = {
|
|
121
|
+
hasDefaultExport: false,
|
|
122
|
+
hasCreateApp: false,
|
|
123
|
+
isV1Pattern: false,
|
|
124
|
+
hints: [],
|
|
125
|
+
};
|
|
126
|
+
const file = Bun.file(appPath);
|
|
127
|
+
if (!(await file.exists())) {
|
|
128
|
+
return result;
|
|
129
|
+
}
|
|
130
|
+
const content = await file.text();
|
|
131
|
+
// Strip comments to avoid false positives from commented-out code
|
|
132
|
+
// Simple approach: remove single-line and multi-line comments
|
|
133
|
+
const codeWithoutComments = content
|
|
134
|
+
.replace(/\/\/.*$/gm, '') // Single-line comments
|
|
135
|
+
.replace(/\/\*[\s\S]*?\*\//g, ''); // Multi-line comments
|
|
136
|
+
// Check for default export patterns (only in actual code, not comments)
|
|
137
|
+
// Matches: export default createApp(...), export default await createApp(...),
|
|
138
|
+
// export default { fetch, port }, const { ... } = await createApp(...) then export default result
|
|
139
|
+
result.hasDefaultExport = /\bexport\s+default\b/.test(codeWithoutComments);
|
|
140
|
+
// Check for createApp call
|
|
141
|
+
result.hasCreateApp = /\bcreateApp\s*\(/.test(content);
|
|
142
|
+
// Detect v1 pattern: destructuring createApp result without export default
|
|
143
|
+
// e.g., const { server, logger } = await createApp({...});
|
|
144
|
+
const hasDestructuring = /const\s*\{[^}]*\}\s*=\s*(?:await\s+)?createApp/.test(content);
|
|
145
|
+
if (hasDestructuring && !result.hasDefaultExport) {
|
|
146
|
+
result.isV1Pattern = true;
|
|
147
|
+
result.hints.push('app.ts calls createApp() but does not export it. Bun --hot requires `export default` to start a server.', '', 'Fix: Change your app.ts to export the createApp() result:', '', ' import { createApp } from "@agentuity/runtime";', ' import agents from "@agent/index";', '', ' export default createApp({', ' agents,', ' router: { path: "/api", router: api },', ' });', '', 'Or if you need the logger:', '', ' const app = await createApp({ agents });', ' app.logger.debug("Running %s", app.server.url);', ' export default app;');
|
|
148
|
+
}
|
|
149
|
+
// Check for missing createApp entirely
|
|
150
|
+
if (!result.hasCreateApp && !content.includes('Bun.serve')) {
|
|
151
|
+
result.hints.push('app.ts does not call createApp(). This is required for Agentuity apps.', '', 'Example:', '', ' import { createApp } from "@agentuity/runtime";', ' export default createApp({ agents });');
|
|
152
|
+
}
|
|
153
|
+
return result;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Build a detailed error message with validation hints and captured output.
|
|
157
|
+
*
|
|
158
|
+
* @internal Exported for testing only
|
|
159
|
+
*/
|
|
160
|
+
export function buildStartupErrorMessage(port, timeoutMs, stderr, validation) {
|
|
161
|
+
const lines = [];
|
|
162
|
+
lines.push(`Bun server failed to start on port ${port} after ${timeoutMs}ms`);
|
|
163
|
+
lines.push('');
|
|
164
|
+
// Show captured stderr if any
|
|
165
|
+
if (stderr.trim()) {
|
|
166
|
+
lines.push('Bun output:');
|
|
167
|
+
lines.push('');
|
|
168
|
+
// Indent stderr lines for readability
|
|
169
|
+
for (const line of stderr.trim().split('\n').slice(0, 20)) {
|
|
170
|
+
lines.push(` ${line}`);
|
|
171
|
+
}
|
|
172
|
+
if (stderr.split('\n').length > 20) {
|
|
173
|
+
lines.push(' ... (truncated)');
|
|
174
|
+
}
|
|
175
|
+
lines.push('');
|
|
176
|
+
}
|
|
177
|
+
// Show validation hints
|
|
178
|
+
if (validation.hints.length > 0) {
|
|
179
|
+
lines.push('Possible issue:');
|
|
180
|
+
lines.push('');
|
|
181
|
+
for (const hint of validation.hints) {
|
|
182
|
+
lines.push(` ${hint}`);
|
|
183
|
+
}
|
|
184
|
+
lines.push('');
|
|
185
|
+
}
|
|
186
|
+
// Generic troubleshooting if no specific hints
|
|
187
|
+
if (validation.hints.length === 0) {
|
|
188
|
+
lines.push('Troubleshooting:');
|
|
189
|
+
lines.push('');
|
|
190
|
+
lines.push(' 1. Check app.ts exports `export default createApp({...})`');
|
|
191
|
+
lines.push(' 2. Check for TypeScript/syntax errors in your code');
|
|
192
|
+
lines.push(` 3. Check if port ${port} is already in use: lsof -i :${port}`);
|
|
193
|
+
lines.push(' 4. Try running manually: bun run --hot app.ts');
|
|
194
|
+
lines.push('');
|
|
195
|
+
}
|
|
196
|
+
return lines.join('\n');
|
|
197
|
+
}
|
|
12
198
|
/**
|
|
13
199
|
* Start Bun dev server with --hot (Vite asset server must already be running).
|
|
14
200
|
*
|
|
@@ -24,6 +210,18 @@ export async function startBunDevServer(options) {
|
|
|
24
210
|
if (!(await appFile.exists())) {
|
|
25
211
|
throw new Error(`App entry not found at ${appPath}.`);
|
|
26
212
|
}
|
|
213
|
+
// Pre-validate app.ts for common issues
|
|
214
|
+
const validation = await validateAppTs(appPath);
|
|
215
|
+
if (validation.isV1Pattern) {
|
|
216
|
+
logger.warn('');
|
|
217
|
+
logger.warn('⚠️ app.ts may have a v1-style pattern that prevents Bun --hot from starting.');
|
|
218
|
+
for (const hint of validation.hints) {
|
|
219
|
+
logger.warn(' %s', hint);
|
|
220
|
+
}
|
|
221
|
+
logger.warn('');
|
|
222
|
+
}
|
|
223
|
+
// Ensure the port is available, cleaning up any orphan processes
|
|
224
|
+
await ensurePortAvailable(port, logger);
|
|
27
225
|
process.env.PORT = String(port);
|
|
28
226
|
const args = ['bun'];
|
|
29
227
|
// --hot: in-process hot reload — re-evaluates changed modules and swaps
|
|
@@ -41,25 +239,54 @@ export async function startBunDevServer(options) {
|
|
|
41
239
|
}
|
|
42
240
|
args.push('run', appPath);
|
|
43
241
|
logger.debug('Spawning bun subprocess: %s', args.join(' '));
|
|
242
|
+
// Capture stderr for error reporting while still showing it in real-time
|
|
243
|
+
const stderrChunks = [];
|
|
244
|
+
const stdoutChunks = [];
|
|
245
|
+
// Helper to read a stream, capture output, and forward to parent
|
|
246
|
+
const captureStream = async (stream, chunks, output) => {
|
|
247
|
+
const reader = stream.getReader();
|
|
248
|
+
try {
|
|
249
|
+
while (true) {
|
|
250
|
+
const { done, value } = await reader.read();
|
|
251
|
+
if (done)
|
|
252
|
+
break;
|
|
253
|
+
const str = new TextDecoder().decode(value);
|
|
254
|
+
chunks.push(str);
|
|
255
|
+
output.write(value); // Forward to parent for real-time visibility
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
catch {
|
|
259
|
+
// Stream may be closed unexpectedly when process exits
|
|
260
|
+
}
|
|
261
|
+
};
|
|
44
262
|
const bunProcess = Bun.spawn(args, {
|
|
45
263
|
cwd: rootDir,
|
|
46
|
-
stdout: '
|
|
47
|
-
stderr: '
|
|
264
|
+
stdout: 'pipe',
|
|
265
|
+
stderr: 'pipe',
|
|
48
266
|
env: {
|
|
49
267
|
...process.env,
|
|
50
268
|
...getAgentEnv(),
|
|
51
269
|
PORT: String(port),
|
|
52
270
|
},
|
|
53
271
|
});
|
|
272
|
+
// Start capturing streams in the background (don't await, we need to check server readiness)
|
|
273
|
+
if (bunProcess.stdout) {
|
|
274
|
+
captureStream(bunProcess.stdout, stdoutChunks, process.stdout).catch(() => { });
|
|
275
|
+
}
|
|
276
|
+
if (bunProcess.stderr) {
|
|
277
|
+
captureStream(bunProcess.stderr, stderrChunks, process.stderr).catch(() => { });
|
|
278
|
+
}
|
|
54
279
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
55
280
|
globalThis.__AGENTUITY_BUN_SUBPROCESS__ = bunProcess;
|
|
56
281
|
// Wait for server to start listening
|
|
57
282
|
const maxRetries = 50;
|
|
58
283
|
const retryDelay = 100;
|
|
284
|
+
const timeoutMs = maxRetries * retryDelay;
|
|
59
285
|
let serverReady = false;
|
|
60
286
|
for (let i = 0; i < maxRetries; i++) {
|
|
61
287
|
if (bunProcess.exitCode !== null) {
|
|
62
|
-
|
|
288
|
+
const stderr = stderrChunks.join('');
|
|
289
|
+
throw new Error(`Bun subprocess exited with code ${bunProcess.exitCode} during startup\n\n${stderr}`);
|
|
63
290
|
}
|
|
64
291
|
try {
|
|
65
292
|
await fetch(`http://127.0.0.1:${port}/`, {
|
|
@@ -83,7 +310,8 @@ export async function startBunDevServer(options) {
|
|
|
83
310
|
}
|
|
84
311
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
85
312
|
globalThis.__AGENTUITY_BUN_SUBPROCESS__ = undefined;
|
|
86
|
-
|
|
313
|
+
const stderr = stderrChunks.join('');
|
|
314
|
+
throw new Error(buildStartupErrorMessage(port, timeoutMs, stderr, validation));
|
|
87
315
|
}
|
|
88
316
|
logger.debug(`Bun dev server started on http://127.0.0.1:${port} (--hot mode)`);
|
|
89
317
|
logger.debug(`Proxied to Vite:${vitePort}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bun-dev-server.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/bun-dev-server.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"bun-dev-server.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/bun-dev-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,34 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Config loader for
|
|
2
|
+
* Config loader for v2
|
|
3
|
+
*
|
|
4
|
+
* In v2, all runtime config (analytics, workbench) goes in createApp().
|
|
5
|
+
* Vite-specific config (plugins, define, render, bundle) goes in vite.config.ts.
|
|
6
|
+
*
|
|
7
|
+
* Runtime config values are extracted from app.ts via app-config-extractor.
|
|
3
8
|
*/
|
|
4
9
|
import type { Logger } from '../../../types';
|
|
5
|
-
import type
|
|
10
|
+
import { type ExtractedAppConfig } from '../app-config-extractor';
|
|
6
11
|
/**
|
|
7
|
-
* Load
|
|
8
|
-
*
|
|
12
|
+
* Load runtime config from createApp() in app.ts (v2 approach).
|
|
13
|
+
*
|
|
14
|
+
* This is the only way to get analytics/workbench config in v2.
|
|
15
|
+
* The CLI reads these values directly from the user's createApp() call.
|
|
9
16
|
*/
|
|
10
|
-
export declare function
|
|
17
|
+
export declare function loadRuntimeConfig(rootDir: string, logger: Logger): Promise<ExtractedAppConfig>;
|
|
11
18
|
/**
|
|
12
|
-
* Get workbench configuration with defaults
|
|
13
|
-
* NOTE: Workbench is only enabled at runtime in dev mode, but we need to know
|
|
14
|
-
* if it's configured at build time so we can generate the correct code.
|
|
19
|
+
* Get workbench configuration with defaults.
|
|
15
20
|
*
|
|
16
|
-
*
|
|
17
|
-
* Missing workbench config implicitly disables it
|
|
21
|
+
* In v2, workbench config is extracted from createApp() in app.ts.
|
|
18
22
|
*/
|
|
19
|
-
export declare function getWorkbenchConfig(
|
|
23
|
+
export declare function getWorkbenchConfig(dev: boolean, runtimeConfig?: ExtractedAppConfig): {
|
|
20
24
|
configured: boolean;
|
|
21
25
|
enabled: boolean;
|
|
22
26
|
route: string;
|
|
23
27
|
headers: Record<string, string>;
|
|
24
28
|
};
|
|
25
|
-
/**
|
|
26
|
-
* Check if the user's plugins include any known UI-framework Vite plugin
|
|
27
|
-
* (React, Svelte, Vue, Solid, Preact, …).
|
|
28
|
-
*
|
|
29
|
-
* Detection is name-based: Vite plugins expose a `name` property and every
|
|
30
|
-
* major framework plugin uses a predictable prefix. This avoids dynamically
|
|
31
|
-
* importing every possible framework just to compare names.
|
|
32
|
-
*/
|
|
33
|
-
export declare function hasFrameworkPlugin(userPlugins: import('vite').PluginOption[]): boolean;
|
|
34
29
|
//# sourceMappingURL=config-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/config-loader.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/config-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAEpF;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACtC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,kBAAkB,CAAC,CAE7B;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CACjC,GAAG,EAAE,OAAO,EACZ,aAAa,CAAC,EAAE,kBAAkB,GAChC;IACF,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC,CAqCA"}
|
|
@@ -1,90 +1,57 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Config loader for
|
|
2
|
+
* Config loader for v2
|
|
3
|
+
*
|
|
4
|
+
* In v2, all runtime config (analytics, workbench) goes in createApp().
|
|
5
|
+
* Vite-specific config (plugins, define, render, bundle) goes in vite.config.ts.
|
|
6
|
+
*
|
|
7
|
+
* Runtime config values are extracted from app.ts via app-config-extractor.
|
|
3
8
|
*/
|
|
4
|
-
|
|
5
|
-
if (typeof path === "string" && /^\.\.?\//.test(path)) {
|
|
6
|
-
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
|
|
7
|
-
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
|
|
8
|
-
});
|
|
9
|
-
}
|
|
10
|
-
return path;
|
|
11
|
-
};
|
|
12
|
-
import { join } from 'node:path';
|
|
9
|
+
import { extractAppConfig } from '../app-config-extractor';
|
|
13
10
|
/**
|
|
14
|
-
* Load
|
|
15
|
-
*
|
|
11
|
+
* Load runtime config from createApp() in app.ts (v2 approach).
|
|
12
|
+
*
|
|
13
|
+
* This is the only way to get analytics/workbench config in v2.
|
|
14
|
+
* The CLI reads these values directly from the user's createApp() call.
|
|
16
15
|
*/
|
|
17
|
-
export async function
|
|
18
|
-
|
|
19
|
-
if (!(await Bun.file(configPath).exists())) {
|
|
20
|
-
logger.trace('No agentuity.config.ts found');
|
|
21
|
-
return null;
|
|
22
|
-
}
|
|
23
|
-
try {
|
|
24
|
-
const config = await import(__rewriteRelativeImportExtension(configPath));
|
|
25
|
-
const userConfig = config.default;
|
|
26
|
-
if (!userConfig) {
|
|
27
|
-
logger.warn('agentuity.config.ts does not export a default configuration');
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
logger.trace('Loaded agentuity.config.ts');
|
|
31
|
-
return userConfig;
|
|
32
|
-
}
|
|
33
|
-
catch (error) {
|
|
34
|
-
logger.warn('Failed to load agentuity.config.ts:', error);
|
|
35
|
-
return null;
|
|
36
|
-
}
|
|
16
|
+
export async function loadRuntimeConfig(rootDir, logger) {
|
|
17
|
+
return extractAppConfig(rootDir, logger);
|
|
37
18
|
}
|
|
38
19
|
/**
|
|
39
|
-
* Get workbench configuration with defaults
|
|
40
|
-
* NOTE: Workbench is only enabled at runtime in dev mode, but we need to know
|
|
41
|
-
* if it's configured at build time so we can generate the correct code.
|
|
20
|
+
* Get workbench configuration with defaults.
|
|
42
21
|
*
|
|
43
|
-
*
|
|
44
|
-
* Missing workbench config implicitly disables it
|
|
22
|
+
* In v2, workbench config is extracted from createApp() in app.ts.
|
|
45
23
|
*/
|
|
46
|
-
export function getWorkbenchConfig(
|
|
47
|
-
const
|
|
24
|
+
export function getWorkbenchConfig(dev, runtimeConfig) {
|
|
25
|
+
const workbenchFromRuntime = runtimeConfig?.workbench;
|
|
48
26
|
// Workbench is enabled if:
|
|
49
27
|
// 1. In dev mode (never in production)
|
|
50
|
-
// 2.
|
|
51
|
-
const
|
|
52
|
-
const
|
|
28
|
+
// 2. Workbench is configured in createApp()
|
|
29
|
+
const hasWorkbench = workbenchFromRuntime !== undefined;
|
|
30
|
+
const configured = hasWorkbench;
|
|
31
|
+
const enabled = dev && hasWorkbench;
|
|
32
|
+
// Extract values from createApp()
|
|
33
|
+
let route = '/workbench';
|
|
34
|
+
let headers = {};
|
|
35
|
+
if (workbenchFromRuntime !== undefined) {
|
|
36
|
+
if (typeof workbenchFromRuntime === 'string') {
|
|
37
|
+
route = workbenchFromRuntime;
|
|
38
|
+
}
|
|
39
|
+
else if (typeof workbenchFromRuntime === 'object' && workbenchFromRuntime !== null) {
|
|
40
|
+
if ('route' in workbenchFromRuntime && typeof workbenchFromRuntime.route === 'string') {
|
|
41
|
+
route = workbenchFromRuntime.route;
|
|
42
|
+
}
|
|
43
|
+
if ('headers' in workbenchFromRuntime &&
|
|
44
|
+
typeof workbenchFromRuntime.headers === 'object') {
|
|
45
|
+
headers = workbenchFromRuntime.headers;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
// boolean true uses defaults
|
|
49
|
+
}
|
|
53
50
|
return {
|
|
54
51
|
configured,
|
|
55
52
|
enabled,
|
|
56
|
-
route
|
|
57
|
-
headers
|
|
53
|
+
route,
|
|
54
|
+
headers,
|
|
58
55
|
};
|
|
59
56
|
}
|
|
60
|
-
/**
|
|
61
|
-
* Known Vite framework plugin name prefixes.
|
|
62
|
-
* Each framework's Vite plugin registers one or more plugins whose names
|
|
63
|
-
* start with these prefixes. We match against these to detect whether the
|
|
64
|
-
* user has already configured a framework plugin in their agentuity.config.ts.
|
|
65
|
-
*/
|
|
66
|
-
const FRAMEWORK_PLUGIN_PREFIXES = [
|
|
67
|
-
'vite:react', // @vitejs/plugin-react (vite:react-babel, vite:react-refresh, …)
|
|
68
|
-
'vite:preact', // @preact/preset-vite
|
|
69
|
-
'vite-plugin-svelte', // @sveltejs/vite-plugin-svelte
|
|
70
|
-
'vite:vue', // @vitejs/plugin-vue (vite:vue, vite:vue-jsx)
|
|
71
|
-
'vite-plugin-solid', // vite-plugin-solid
|
|
72
|
-
'solid', // vite-plugin-solid also uses plain "solid"
|
|
73
|
-
];
|
|
74
|
-
/**
|
|
75
|
-
* Check if the user's plugins include any known UI-framework Vite plugin
|
|
76
|
-
* (React, Svelte, Vue, Solid, Preact, …).
|
|
77
|
-
*
|
|
78
|
-
* Detection is name-based: Vite plugins expose a `name` property and every
|
|
79
|
-
* major framework plugin uses a predictable prefix. This avoids dynamically
|
|
80
|
-
* importing every possible framework just to compare names.
|
|
81
|
-
*/
|
|
82
|
-
export function hasFrameworkPlugin(userPlugins) {
|
|
83
|
-
const flat = userPlugins.flat(Infinity).filter(Boolean);
|
|
84
|
-
return flat.some((p) => p &&
|
|
85
|
-
typeof p === 'object' &&
|
|
86
|
-
'name' in p &&
|
|
87
|
-
typeof p.name === 'string' &&
|
|
88
|
-
FRAMEWORK_PLUGIN_PREFIXES.some((prefix) => p.name.startsWith(prefix)));
|
|
89
|
-
}
|
|
90
57
|
//# sourceMappingURL=config-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/config-loader.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/config-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,gBAAgB,EAA2B,MAAM,yBAAyB,CAAC;AAEpF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACtC,OAAe,EACf,MAAc;IAEd,OAAO,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CACjC,GAAY,EACZ,aAAkC;IAOlC,MAAM,oBAAoB,GAAG,aAAa,EAAE,SAAS,CAAC;IAEtD,2BAA2B;IAC3B,uCAAuC;IACvC,4CAA4C;IAC5C,MAAM,YAAY,GAAG,oBAAoB,KAAK,SAAS,CAAC;IACxD,MAAM,UAAU,GAAG,YAAY,CAAC;IAChC,MAAM,OAAO,GAAG,GAAG,IAAI,YAAY,CAAC;IAEpC,kCAAkC;IAClC,IAAI,KAAK,GAAG,YAAY,CAAC;IACzB,IAAI,OAAO,GAA2B,EAAE,CAAC;IAEzC,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACxC,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE,CAAC;YAC9C,KAAK,GAAG,oBAAoB,CAAC;QAC9B,CAAC;aAAM,IAAI,OAAO,oBAAoB,KAAK,QAAQ,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;YACtF,IAAI,OAAO,IAAI,oBAAoB,IAAI,OAAO,oBAAoB,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvF,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC;YACpC,CAAC;YACD,IACC,SAAS,IAAI,oBAAoB;gBACjC,OAAO,oBAAoB,CAAC,OAAO,KAAK,QAAQ,EAC/C,CAAC;gBACF,OAAO,GAAG,oBAAoB,CAAC,OAAiC,CAAC;YAClE,CAAC;QACF,CAAC;QACD,6BAA6B;IAC9B,CAAC;IAED,OAAO;QACN,UAAU;QACV,OAAO;QACP,KAAK;QACL,OAAO;KACP,CAAC;AACH,CAAC"}
|
|
@@ -16,8 +16,6 @@ import type { Logger } from '../../../types';
|
|
|
16
16
|
export interface StaticRenderOptions {
|
|
17
17
|
rootDir: string;
|
|
18
18
|
logger: Logger;
|
|
19
|
-
/** User plugins from agentuity.config.ts */
|
|
20
|
-
userPlugins: import('vite').PluginOption[];
|
|
21
19
|
}
|
|
22
20
|
export interface StaticRenderResult {
|
|
23
21
|
routes: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static-renderer.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/static-renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"static-renderer.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/static-renderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAuD7C,MAAM,WAAW,mBAAmB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA0L/F"}
|
|
@@ -23,7 +23,6 @@ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExte
|
|
|
23
23
|
import { join } from 'node:path';
|
|
24
24
|
import { createRequire } from 'node:module';
|
|
25
25
|
import { mkdirSync, writeFileSync, readFileSync, existsSync, rmSync } from 'node:fs';
|
|
26
|
-
import { hasFrameworkPlugin } from './config-loader';
|
|
27
26
|
/**
|
|
28
27
|
* Walks a TanStack Router route tree and extracts all non-parameterized paths.
|
|
29
28
|
* Skips layout routes (no path) and parameterized routes (containing $).
|
|
@@ -66,7 +65,7 @@ function extractRoutePaths(node) {
|
|
|
66
65
|
return [...paths].sort();
|
|
67
66
|
}
|
|
68
67
|
export async function runStaticRender(options) {
|
|
69
|
-
const { rootDir, logger
|
|
68
|
+
const { rootDir, logger } = options;
|
|
70
69
|
const started = Date.now();
|
|
71
70
|
const clientDir = join(rootDir, '.agentuity/client');
|
|
72
71
|
const ssrOutDir = join(rootDir, '.agentuity/ssr');
|
|
@@ -82,30 +81,44 @@ export async function runStaticRender(options) {
|
|
|
82
81
|
throw new Error('Client build must complete before static rendering. ' +
|
|
83
82
|
'No index.html found in .agentuity/client/');
|
|
84
83
|
}
|
|
84
|
+
const isViteDebug = process.env.AGENTUITY_VITE_DEBUG === '1' || process.env.AGENTUITY_VITE_DEBUG === 'true';
|
|
85
|
+
if (isViteDebug) {
|
|
86
|
+
logger.debug('Vite debug logging enabled via AGENTUITY_VITE_DEBUG');
|
|
87
|
+
const existing = process.env.DEBUG || '';
|
|
88
|
+
if (!existing.includes('vite:')) {
|
|
89
|
+
process.env.DEBUG = existing ? `${existing},vite:*` : 'vite:*';
|
|
90
|
+
}
|
|
91
|
+
}
|
|
85
92
|
// Step 1: Vite SSR build
|
|
86
93
|
// This resolves import.meta.glob, MDX imports, and other Vite-specific APIs
|
|
87
94
|
logger.debug('Running Vite SSR build for static rendering...');
|
|
88
95
|
const projectRequire = createRequire(join(rootDir, 'package.json'));
|
|
89
96
|
let vitePath = 'vite';
|
|
90
|
-
let reactPluginPath = '@vitejs/plugin-react';
|
|
91
97
|
try {
|
|
92
98
|
vitePath = projectRequire.resolve('vite');
|
|
93
|
-
reactPluginPath = projectRequire.resolve('@vitejs/plugin-react');
|
|
94
99
|
}
|
|
95
100
|
catch {
|
|
96
101
|
// Use CLI's bundled version
|
|
97
102
|
}
|
|
98
|
-
const { build: viteBuild } = await import(__rewriteRelativeImportExtension(vitePath));
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
103
|
+
const { build: viteBuild, loadConfigFromFile, mergeConfig } = await import(__rewriteRelativeImportExtension(vitePath));
|
|
104
|
+
// Load vite.config.ts if it exists (v2 approach)
|
|
105
|
+
let userConfig = {};
|
|
106
|
+
const viteConfigPath = join(rootDir, 'vite.config.ts');
|
|
107
|
+
if (await Bun.file(viteConfigPath).exists()) {
|
|
108
|
+
try {
|
|
109
|
+
const loaded = await loadConfigFromFile({ command: 'build', mode: 'production' }, viteConfigPath);
|
|
110
|
+
if (loaded?.config) {
|
|
111
|
+
userConfig = loaded.config;
|
|
112
|
+
logger.debug('Loaded vite.config.ts for SSR build');
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
logger.warn('Failed to load vite.config.ts: %s', error);
|
|
117
|
+
}
|
|
105
118
|
}
|
|
106
|
-
|
|
119
|
+
// Merge user config with SSR build settings
|
|
120
|
+
const ssrConfig = mergeConfig(userConfig, {
|
|
107
121
|
root: rootDir,
|
|
108
|
-
plugins,
|
|
109
122
|
build: {
|
|
110
123
|
ssr: entryServerPath,
|
|
111
124
|
outDir: ssrOutDir,
|
|
@@ -120,8 +133,9 @@ export async function runStaticRender(options) {
|
|
|
120
133
|
// resolved at build time. Node built-ins are still externalized.
|
|
121
134
|
noExternal: true,
|
|
122
135
|
},
|
|
123
|
-
logLevel: 'warn',
|
|
136
|
+
logLevel: isViteDebug ? 'info' : 'warn',
|
|
124
137
|
});
|
|
138
|
+
await viteBuild(ssrConfig);
|
|
125
139
|
// Steps 2–4: wrapped in try-finally so SSR artifacts are always cleaned up,
|
|
126
140
|
// even if an exception is thrown during module import, validation, or rendering.
|
|
127
141
|
let routeCount = 0;
|