cuelo 0.9.6 โ 0.9.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +11 -10
- package/.next/build-manifest.json +3 -3
- package/.next/prerender-manifest.json +3 -3
- package/.next/required-server-files.js +2 -2
- package/.next/required-server-files.json +2 -2
- package/.next/routes-manifest.json +6 -0
- package/.next/server/app/_global-error/page.js +3 -3
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -2
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/api/agent/[id]/account/route.js +1 -1
- package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
- package/.next/server/app/api/agent/[id]/events/route.js +2 -2
- package/.next/server/app/api/agent/[id]/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js +1 -1
- package/.next/server/app/api/agent/running/route.js +1 -1
- package/.next/server/app/api/attachment-settings/route.js +1 -1
- package/.next/server/app/api/attachments/[id]/transcription/route.js +2 -2
- package/.next/server/app/api/attachments/draft/route.js +1 -1
- package/.next/server/app/api/attachments/route.js +3 -3
- package/.next/server/app/api/auth/all-providers/route.js +1 -1
- package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
- package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/providers/route.js +1 -1
- package/.next/server/app/api/cwd/browse/route.js +1 -1
- package/.next/server/app/api/cwd/validate/route.js +1 -1
- package/.next/server/app/api/default-cwd/route.js +1 -1
- package/.next/server/app/api/display-settings/route.js +1 -1
- package/.next/server/app/api/document-text/route.js +2 -2
- package/.next/server/app/api/experiments/route.js +1 -1
- package/.next/server/app/api/file-index/route.js +1 -1
- package/.next/server/app/api/files/[...path]/route.js +3 -3
- package/.next/server/app/api/git/diff/route.js +1 -1
- package/.next/server/app/api/git/status/route.js +1 -1
- package/.next/server/app/api/github/projects/route.js +1 -0
- package/.next/server/app/api/github/projects/route.js.nft.json +1 -0
- package/.next/server/app/api/github/projects/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/gpt6/handles/route.js +1 -1
- package/.next/server/app/api/gpt6/reply/route.js +1 -1
- package/.next/server/app/api/gpt6/token/route.js +1 -1
- package/.next/server/app/api/gpt6/web6-session/route.js +1 -1
- package/.next/server/app/api/home/route.js +1 -1
- package/.next/server/app/api/live/call/[callId]/route.js +1 -1
- package/.next/server/app/api/live/character-voice/route.js +1 -1
- package/.next/server/app/api/live/events/route.js +2 -2
- package/.next/server/app/api/live/offer/route.js +1 -1
- package/.next/server/app/api/live/voices/route.js +1 -1
- package/.next/server/app/api/lounge/events/route.js +2 -2
- package/.next/server/app/api/lounge/route.js +1 -1
- package/.next/server/app/api/mcp/route.js +2 -2
- package/.next/server/app/api/model-roles/route.js +1 -1
- package/.next/server/app/api/models/route.js +1 -1
- package/.next/server/app/api/models-config/catalog/route.js +1 -1
- package/.next/server/app/api/models-config/discover/route.js +1 -1
- package/.next/server/app/api/models-config/route.js +3 -3
- package/.next/server/app/api/models-config/test/route.js +1 -1
- package/.next/server/app/api/office-avatars/[id]/route.js +1 -1
- package/.next/server/app/api/office-avatars/route.js +1 -1
- package/.next/server/app/api/plugins/route.js +1 -1
- package/.next/server/app/api/project-trust/route.js +1 -1
- package/.next/server/app/api/projects/route.js +1 -1
- package/.next/server/app/api/runs/[runId]/route.js +1 -1
- package/.next/server/app/api/runs/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/sessions/search/route.js +1 -1
- package/.next/server/app/api/settings/route.js +1 -1
- package/.next/server/app/api/sidecars/[service]/[...path]/route.js +1 -1
- package/.next/server/app/api/skills/check/route.js +1 -1
- package/.next/server/app/api/skills/install/route.js +2 -2
- package/.next/server/app/api/skills/route.js +2 -2
- package/.next/server/app/api/skills/search/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js +1 -1
- package/.next/server/app/api/theme/route.js +1 -1
- package/.next/server/app/api/tool-image/route.js +1 -1
- package/.next/server/app/api/update-maintenance/route.js +8 -4
- package/.next/server/app/api/updates/route.js +1 -1
- package/.next/server/app/api/web-access/recovery/route.js +1 -1
- package/.next/server/app/api/web-access/route.js +1 -1
- package/.next/server/app/api/web6/consults/route.js +1 -1
- package/.next/server/app/api/worktrees/route.js +1 -1
- package/.next/server/app/favicon.ico/route.js +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +5 -5
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/index.segments/_full.segment.rsc +5 -5
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/manifest.webmanifest/route.js +2 -2
- package/.next/server/app/office/page.js +2 -2
- package/.next/server/app/office/page_client-reference-manifest.js +1 -1
- package/.next/server/app/office-preview/page.js +2 -2
- package/.next/server/app/office-preview/page_client-reference-manifest.js +1 -1
- package/.next/server/app/office-preview.html +1 -1
- package/.next/server/app/office-preview.rsc +2 -2
- package/.next/server/app/office-preview.segments/_full.segment.rsc +2 -2
- package/.next/server/app/office-preview.segments/_head.segment.rsc +1 -1
- package/.next/server/app/office-preview.segments/_index.segment.rsc +2 -2
- package/.next/server/app/office-preview.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/office-preview.segments/office-preview/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/office-preview.segments/office-preview.segment.rsc +1 -1
- package/.next/server/app/office.html +1 -1
- package/.next/server/app/office.rsc +5 -5
- package/.next/server/app/office.segments/_full.segment.rsc +5 -5
- package/.next/server/app/office.segments/_head.segment.rsc +1 -1
- package/.next/server/app/office.segments/_index.segment.rsc +2 -2
- package/.next/server/app/office.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/office.segments/office/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/office.segments/office.segment.rsc +1 -1
- package/.next/server/app/page.js +2 -2
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/recover/page.js +2 -2
- package/.next/server/app/recover/page_client-reference-manifest.js +1 -1
- package/.next/server/app/recover.html +1 -1
- package/.next/server/app/recover.rsc +2 -2
- package/.next/server/app/recover.segments/_full.segment.rsc +2 -2
- package/.next/server/app/recover.segments/_head.segment.rsc +1 -1
- package/.next/server/app/recover.segments/_index.segment.rsc +2 -2
- package/.next/server/app/recover.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/recover.segments/recover/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/recover.segments/recover.segment.rsc +1 -1
- package/.next/server/app-paths-manifest.json +11 -10
- package/.next/server/chunks/1008.js +2 -2
- package/.next/server/chunks/2651.js +1 -1
- package/.next/server/chunks/3379.js +1 -1
- package/.next/server/chunks/5489.js +12 -12
- package/.next/server/chunks/6429.js +6 -6
- package/.next/server/chunks/7362.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware.js +2 -2
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/6110-9f1e951aafcdd72e.js +1 -0
- package/.next/static/chunks/9575-a48cda671c8b915d.js +22 -0
- package/.next/static/chunks/app/{api/agent/[id]/bash-output/route-6b1496af498bb4fd.js โ _global-error/page-318ea6a550b5034e.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/{events/route-6b1496af498bb4fd.js โ account/route-318ea6a550b5034e.js} +1 -1
- package/.next/static/chunks/app/{_global-error/page-6b1496af498bb4fd.js โ api/agent/[id]/bash-output/route-318ea6a550b5034e.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/{account/route-6b1496af498bb4fd.js โ events/route-318ea6a550b5034e.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/agent/new/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/attachment-settings/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/attachments/[id]/transcription/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/attachments/draft/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/attachments/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/cwd/browse/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/cwd/validate/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/display-settings/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/document-text/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/experiments/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/file-index/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/git/diff/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/git/status/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/github/projects/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/gpt6/handles/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/gpt6/reply/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/gpt6/token/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/gpt6/web6-session/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/home/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/live/call/[callId]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/live/character-voice/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/live/events/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/live/offer/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/live/voices/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/lounge/events/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/lounge/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/mcp/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/model-roles/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/models/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/models-config/catalog/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/models-config/discover/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/office-avatars/[id]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/office-avatars/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/project-trust/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/projects/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/runs/[runId]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/runs/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/export/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/state/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sessions/search/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/settings/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/skills/check/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/skills/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/skills/update/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/theme/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/tool-image/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/update-maintenance/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/updates/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/web-access/recovery/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/web-access/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/web6/consults/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/api/worktrees/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/{layout-15c56b62f49b1c1d.js โ layout-489bc5b73326436e.js} +1 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/app/office/page-8dc604f9b5e6f220.js +1 -0
- package/.next/static/chunks/app/page-952b1ef4df5ac896.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-318ea6a550b5034e.js +1 -0
- package/.next/static/chunks/{webpack-fe8f1f81562a2b61.js โ webpack-68986b211ad38cf1.js} +1 -1
- package/.next/static/css/4fae42750604bc1a.css +1 -0
- package/.next/static/pzZcPiD8nl6i7i_Ne9Ko-/_buildManifest.js +1 -0
- package/.next/trace +108 -108
- package/.next/trace-build +1 -1
- package/.next/types/app/api/github/projects/route.ts +351 -0
- package/.next/types/routes.d.ts +2 -1
- package/.next/types/validator.ts +9 -0
- package/README.md +8 -3
- package/Tools/CUELO_Setup/files/native-runtime-patch.js +3 -3
- package/Tools/OMP_Global_Config/agent/RULES.md +3 -1
- package/Tools/OMP_Global_Config/agent/TITLE_SYSTEM.md +17 -0
- package/Tools/OMP_Global_Config/agent/extensions/jev-runtime.ts +11 -4
- package/Tools/OMP_Global_Config/agent/prompt-copies/RULES.en.md +4 -2
- package/Tools/OMP_Global_Config/agent/tools/git-finalizer/finalizer.ps1 +68 -31
- package/Tools/OMP_Global_Config/agent/tools/git-finalizer/index.ts +8 -6
- package/Tools/OMP_Global_Config/patches/apply-core-patch.mjs +1119 -129
- package/bin/docker-entrypoint.mjs +19 -0
- package/install.mjs +11 -7
- package/package.json +8 -7
- package/.next/static/chunks/6110-004be57c825af4d9.js +0 -1
- package/.next/static/chunks/9575-4a84cf066c2f1257.js +0 -22
- package/.next/static/chunks/app/api/agent/[id]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/agent/new/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/agent/running/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/attachment-settings/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/attachments/[id]/transcription/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/attachments/draft/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/attachments/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/auth/all-providers/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/auth/login/[provider]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/auth/providers/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/cwd/browse/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/cwd/validate/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/default-cwd/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/display-settings/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/document-text/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/experiments/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/file-index/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/files/[...path]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/git/diff/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/git/status/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/gpt6/handles/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/gpt6/reply/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/gpt6/token/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/gpt6/web6-session/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/home/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/live/call/[callId]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/live/character-voice/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/live/events/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/live/offer/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/live/voices/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/lounge/events/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/lounge/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/mcp/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/model-roles/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/models/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/models-config/catalog/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/models-config/discover/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/models-config/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/models-config/test/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/office-avatars/[id]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/office-avatars/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/plugins/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/project-trust/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/projects/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/runs/[runId]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/runs/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/export/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/state/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sessions/search/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/settings/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/skills/check/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/skills/install/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/skills/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/skills/search/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/skills/update/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/theme/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/tool-image/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/update-maintenance/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/updates/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/web-access/recovery/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/web-access/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/web6/consults/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/api/worktrees/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/manifest.webmanifest/route-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/app/office/page-424e244f1c7fcdc6.js +0 -1
- package/.next/static/chunks/app/page-b43b2b8679ed66e2.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-6b1496af498bb4fd.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6b1496af498bb4fd.js +0 -1
- package/.next/static/css/00f20b26266e86ed.css +0 -1
- package/.next/static/kRJ4zgHxJf680foSBrfpf/_buildManifest.js +0 -1
- /package/.next/static/{kRJ4zgHxJf680foSBrfpf โ pzZcPiD8nl6i7i_Ne9Ko-}/_ssgManifest.js +0 -0
package/.next/trace-build
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"run-webpack","duration":
|
|
1
|
+
[{"name":"run-webpack","duration":112611536,"timestamp":824924,"id":14,"parentId":1,"tags":{},"startTime":1791330800160,"traceId":"27aa824042cf1edc"},{"name":"run-typescript","duration":20640951,"timestamp":113829309,"id":11084,"parentId":1,"tags":{},"startTime":1791330913165,"traceId":"27aa824042cf1edc"},{"name":"static-check","duration":5188517,"timestamp":134597595,"id":11087,"parentId":1,"tags":{},"startTime":1791330933933,"traceId":"27aa824042cf1edc"},{"name":"static-generation","duration":14788004,"timestamp":139961849,"id":11259,"parentId":1,"tags":{},"startTime":1791330939297,"traceId":"27aa824042cf1edc"},{"name":"collect-build-traces","duration":24109398,"timestamp":139862010,"id":11256,"parentId":1,"tags":{},"startTime":1791330939197,"traceId":"27aa824042cf1edc"},{"name":"telemetry-flush","duration":71,"timestamp":163976866,"id":11268,"parentId":1,"tags":{},"startTime":1791330963312,"traceId":"27aa824042cf1edc"},{"name":"next-build","duration":163267048,"timestamp":709909,"id":1,"tags":{"buildMode":"default","version":"16.2.12","bundler":"webpack","has-custom-webpack-config":"true","use-build-worker":"false"},"startTime":1791330800045,"traceId":"27aa824042cf1edc"}]
|
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
// File: D:\a\CUELO\CUELO\app\api\github\projects\route.ts
|
|
2
|
+
import * as entry from '../../../../../../app/api/github/projects/route.js'
|
|
3
|
+
import type { NextRequest } from 'next/server.js'
|
|
4
|
+
|
|
5
|
+
import type { InstantConfigForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
|
|
6
|
+
|
|
7
|
+
type TEntry = typeof import('../../../../../../app/api/github/projects/route.js')
|
|
8
|
+
|
|
9
|
+
type SegmentParams<T extends Object = any> = T extends Record<string, any>
|
|
10
|
+
? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
|
|
11
|
+
: T
|
|
12
|
+
|
|
13
|
+
// Check that the entry is a valid entry
|
|
14
|
+
checkFields<Diff<{
|
|
15
|
+
GET?: Function
|
|
16
|
+
HEAD?: Function
|
|
17
|
+
OPTIONS?: Function
|
|
18
|
+
POST?: Function
|
|
19
|
+
PUT?: Function
|
|
20
|
+
DELETE?: Function
|
|
21
|
+
PATCH?: Function
|
|
22
|
+
config?: {}
|
|
23
|
+
generateStaticParams?: Function
|
|
24
|
+
unstable_instant?: InstantConfigForTypeCheckInternal
|
|
25
|
+
unstable_dynamicStaleTime?: number
|
|
26
|
+
revalidate?: RevalidateRange<TEntry> | false
|
|
27
|
+
dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
|
|
28
|
+
dynamicParams?: boolean
|
|
29
|
+
fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
|
|
30
|
+
preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
|
|
31
|
+
runtime?: 'nodejs' | 'experimental-edge' | 'edge'
|
|
32
|
+
maxDuration?: number
|
|
33
|
+
|
|
34
|
+
}, TEntry, ''>>()
|
|
35
|
+
|
|
36
|
+
type RouteContext = { params: Promise<SegmentParams> }
|
|
37
|
+
// Check the prop type of the entry function
|
|
38
|
+
if ('GET' in entry) {
|
|
39
|
+
checkFields<
|
|
40
|
+
Diff<
|
|
41
|
+
ParamCheck<Request | NextRequest>,
|
|
42
|
+
{
|
|
43
|
+
__tag__: 'GET'
|
|
44
|
+
__param_position__: 'first'
|
|
45
|
+
__param_type__: FirstArg<MaybeField<TEntry, 'GET'>>
|
|
46
|
+
},
|
|
47
|
+
'GET'
|
|
48
|
+
>
|
|
49
|
+
>()
|
|
50
|
+
checkFields<
|
|
51
|
+
Diff<
|
|
52
|
+
ParamCheck<RouteContext>,
|
|
53
|
+
{
|
|
54
|
+
__tag__: 'GET'
|
|
55
|
+
__param_position__: 'second'
|
|
56
|
+
__param_type__: SecondArg<MaybeField<TEntry, 'GET'>>
|
|
57
|
+
},
|
|
58
|
+
'GET'
|
|
59
|
+
>
|
|
60
|
+
>()
|
|
61
|
+
|
|
62
|
+
checkFields<
|
|
63
|
+
Diff<
|
|
64
|
+
{
|
|
65
|
+
__tag__: 'GET',
|
|
66
|
+
__return_type__: Response | void | never | Promise<Response | void | never>
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
__tag__: 'GET',
|
|
70
|
+
__return_type__: ReturnType<MaybeField<TEntry, 'GET'>>
|
|
71
|
+
},
|
|
72
|
+
'GET'
|
|
73
|
+
>
|
|
74
|
+
>()
|
|
75
|
+
}
|
|
76
|
+
// Check the prop type of the entry function
|
|
77
|
+
if ('HEAD' in entry) {
|
|
78
|
+
checkFields<
|
|
79
|
+
Diff<
|
|
80
|
+
ParamCheck<Request | NextRequest>,
|
|
81
|
+
{
|
|
82
|
+
__tag__: 'HEAD'
|
|
83
|
+
__param_position__: 'first'
|
|
84
|
+
__param_type__: FirstArg<MaybeField<TEntry, 'HEAD'>>
|
|
85
|
+
},
|
|
86
|
+
'HEAD'
|
|
87
|
+
>
|
|
88
|
+
>()
|
|
89
|
+
checkFields<
|
|
90
|
+
Diff<
|
|
91
|
+
ParamCheck<RouteContext>,
|
|
92
|
+
{
|
|
93
|
+
__tag__: 'HEAD'
|
|
94
|
+
__param_position__: 'second'
|
|
95
|
+
__param_type__: SecondArg<MaybeField<TEntry, 'HEAD'>>
|
|
96
|
+
},
|
|
97
|
+
'HEAD'
|
|
98
|
+
>
|
|
99
|
+
>()
|
|
100
|
+
|
|
101
|
+
checkFields<
|
|
102
|
+
Diff<
|
|
103
|
+
{
|
|
104
|
+
__tag__: 'HEAD',
|
|
105
|
+
__return_type__: Response | void | never | Promise<Response | void | never>
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
__tag__: 'HEAD',
|
|
109
|
+
__return_type__: ReturnType<MaybeField<TEntry, 'HEAD'>>
|
|
110
|
+
},
|
|
111
|
+
'HEAD'
|
|
112
|
+
>
|
|
113
|
+
>()
|
|
114
|
+
}
|
|
115
|
+
// Check the prop type of the entry function
|
|
116
|
+
if ('OPTIONS' in entry) {
|
|
117
|
+
checkFields<
|
|
118
|
+
Diff<
|
|
119
|
+
ParamCheck<Request | NextRequest>,
|
|
120
|
+
{
|
|
121
|
+
__tag__: 'OPTIONS'
|
|
122
|
+
__param_position__: 'first'
|
|
123
|
+
__param_type__: FirstArg<MaybeField<TEntry, 'OPTIONS'>>
|
|
124
|
+
},
|
|
125
|
+
'OPTIONS'
|
|
126
|
+
>
|
|
127
|
+
>()
|
|
128
|
+
checkFields<
|
|
129
|
+
Diff<
|
|
130
|
+
ParamCheck<RouteContext>,
|
|
131
|
+
{
|
|
132
|
+
__tag__: 'OPTIONS'
|
|
133
|
+
__param_position__: 'second'
|
|
134
|
+
__param_type__: SecondArg<MaybeField<TEntry, 'OPTIONS'>>
|
|
135
|
+
},
|
|
136
|
+
'OPTIONS'
|
|
137
|
+
>
|
|
138
|
+
>()
|
|
139
|
+
|
|
140
|
+
checkFields<
|
|
141
|
+
Diff<
|
|
142
|
+
{
|
|
143
|
+
__tag__: 'OPTIONS',
|
|
144
|
+
__return_type__: Response | void | never | Promise<Response | void | never>
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
__tag__: 'OPTIONS',
|
|
148
|
+
__return_type__: ReturnType<MaybeField<TEntry, 'OPTIONS'>>
|
|
149
|
+
},
|
|
150
|
+
'OPTIONS'
|
|
151
|
+
>
|
|
152
|
+
>()
|
|
153
|
+
}
|
|
154
|
+
// Check the prop type of the entry function
|
|
155
|
+
if ('POST' in entry) {
|
|
156
|
+
checkFields<
|
|
157
|
+
Diff<
|
|
158
|
+
ParamCheck<Request | NextRequest>,
|
|
159
|
+
{
|
|
160
|
+
__tag__: 'POST'
|
|
161
|
+
__param_position__: 'first'
|
|
162
|
+
__param_type__: FirstArg<MaybeField<TEntry, 'POST'>>
|
|
163
|
+
},
|
|
164
|
+
'POST'
|
|
165
|
+
>
|
|
166
|
+
>()
|
|
167
|
+
checkFields<
|
|
168
|
+
Diff<
|
|
169
|
+
ParamCheck<RouteContext>,
|
|
170
|
+
{
|
|
171
|
+
__tag__: 'POST'
|
|
172
|
+
__param_position__: 'second'
|
|
173
|
+
__param_type__: SecondArg<MaybeField<TEntry, 'POST'>>
|
|
174
|
+
},
|
|
175
|
+
'POST'
|
|
176
|
+
>
|
|
177
|
+
>()
|
|
178
|
+
|
|
179
|
+
checkFields<
|
|
180
|
+
Diff<
|
|
181
|
+
{
|
|
182
|
+
__tag__: 'POST',
|
|
183
|
+
__return_type__: Response | void | never | Promise<Response | void | never>
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
__tag__: 'POST',
|
|
187
|
+
__return_type__: ReturnType<MaybeField<TEntry, 'POST'>>
|
|
188
|
+
},
|
|
189
|
+
'POST'
|
|
190
|
+
>
|
|
191
|
+
>()
|
|
192
|
+
}
|
|
193
|
+
// Check the prop type of the entry function
|
|
194
|
+
if ('PUT' in entry) {
|
|
195
|
+
checkFields<
|
|
196
|
+
Diff<
|
|
197
|
+
ParamCheck<Request | NextRequest>,
|
|
198
|
+
{
|
|
199
|
+
__tag__: 'PUT'
|
|
200
|
+
__param_position__: 'first'
|
|
201
|
+
__param_type__: FirstArg<MaybeField<TEntry, 'PUT'>>
|
|
202
|
+
},
|
|
203
|
+
'PUT'
|
|
204
|
+
>
|
|
205
|
+
>()
|
|
206
|
+
checkFields<
|
|
207
|
+
Diff<
|
|
208
|
+
ParamCheck<RouteContext>,
|
|
209
|
+
{
|
|
210
|
+
__tag__: 'PUT'
|
|
211
|
+
__param_position__: 'second'
|
|
212
|
+
__param_type__: SecondArg<MaybeField<TEntry, 'PUT'>>
|
|
213
|
+
},
|
|
214
|
+
'PUT'
|
|
215
|
+
>
|
|
216
|
+
>()
|
|
217
|
+
|
|
218
|
+
checkFields<
|
|
219
|
+
Diff<
|
|
220
|
+
{
|
|
221
|
+
__tag__: 'PUT',
|
|
222
|
+
__return_type__: Response | void | never | Promise<Response | void | never>
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
__tag__: 'PUT',
|
|
226
|
+
__return_type__: ReturnType<MaybeField<TEntry, 'PUT'>>
|
|
227
|
+
},
|
|
228
|
+
'PUT'
|
|
229
|
+
>
|
|
230
|
+
>()
|
|
231
|
+
}
|
|
232
|
+
// Check the prop type of the entry function
|
|
233
|
+
if ('DELETE' in entry) {
|
|
234
|
+
checkFields<
|
|
235
|
+
Diff<
|
|
236
|
+
ParamCheck<Request | NextRequest>,
|
|
237
|
+
{
|
|
238
|
+
__tag__: 'DELETE'
|
|
239
|
+
__param_position__: 'first'
|
|
240
|
+
__param_type__: FirstArg<MaybeField<TEntry, 'DELETE'>>
|
|
241
|
+
},
|
|
242
|
+
'DELETE'
|
|
243
|
+
>
|
|
244
|
+
>()
|
|
245
|
+
checkFields<
|
|
246
|
+
Diff<
|
|
247
|
+
ParamCheck<RouteContext>,
|
|
248
|
+
{
|
|
249
|
+
__tag__: 'DELETE'
|
|
250
|
+
__param_position__: 'second'
|
|
251
|
+
__param_type__: SecondArg<MaybeField<TEntry, 'DELETE'>>
|
|
252
|
+
},
|
|
253
|
+
'DELETE'
|
|
254
|
+
>
|
|
255
|
+
>()
|
|
256
|
+
|
|
257
|
+
checkFields<
|
|
258
|
+
Diff<
|
|
259
|
+
{
|
|
260
|
+
__tag__: 'DELETE',
|
|
261
|
+
__return_type__: Response | void | never | Promise<Response | void | never>
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
__tag__: 'DELETE',
|
|
265
|
+
__return_type__: ReturnType<MaybeField<TEntry, 'DELETE'>>
|
|
266
|
+
},
|
|
267
|
+
'DELETE'
|
|
268
|
+
>
|
|
269
|
+
>()
|
|
270
|
+
}
|
|
271
|
+
// Check the prop type of the entry function
|
|
272
|
+
if ('PATCH' in entry) {
|
|
273
|
+
checkFields<
|
|
274
|
+
Diff<
|
|
275
|
+
ParamCheck<Request | NextRequest>,
|
|
276
|
+
{
|
|
277
|
+
__tag__: 'PATCH'
|
|
278
|
+
__param_position__: 'first'
|
|
279
|
+
__param_type__: FirstArg<MaybeField<TEntry, 'PATCH'>>
|
|
280
|
+
},
|
|
281
|
+
'PATCH'
|
|
282
|
+
>
|
|
283
|
+
>()
|
|
284
|
+
checkFields<
|
|
285
|
+
Diff<
|
|
286
|
+
ParamCheck<RouteContext>,
|
|
287
|
+
{
|
|
288
|
+
__tag__: 'PATCH'
|
|
289
|
+
__param_position__: 'second'
|
|
290
|
+
__param_type__: SecondArg<MaybeField<TEntry, 'PATCH'>>
|
|
291
|
+
},
|
|
292
|
+
'PATCH'
|
|
293
|
+
>
|
|
294
|
+
>()
|
|
295
|
+
|
|
296
|
+
checkFields<
|
|
297
|
+
Diff<
|
|
298
|
+
{
|
|
299
|
+
__tag__: 'PATCH',
|
|
300
|
+
__return_type__: Response | void | never | Promise<Response | void | never>
|
|
301
|
+
},
|
|
302
|
+
{
|
|
303
|
+
__tag__: 'PATCH',
|
|
304
|
+
__return_type__: ReturnType<MaybeField<TEntry, 'PATCH'>>
|
|
305
|
+
},
|
|
306
|
+
'PATCH'
|
|
307
|
+
>
|
|
308
|
+
>()
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
// Check the arguments and return type of the generateStaticParams function
|
|
312
|
+
if ('generateStaticParams' in entry) {
|
|
313
|
+
checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
|
|
314
|
+
checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
export interface PageProps {
|
|
318
|
+
params?: Promise<SegmentParams>
|
|
319
|
+
searchParams?: Promise<any>
|
|
320
|
+
}
|
|
321
|
+
export interface LayoutProps {
|
|
322
|
+
children?: React.ReactNode
|
|
323
|
+
|
|
324
|
+
params?: Promise<SegmentParams>
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
// =============
|
|
328
|
+
// Utility types
|
|
329
|
+
type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
|
|
330
|
+
|
|
331
|
+
// If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
|
|
332
|
+
type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
|
|
333
|
+
type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
|
|
334
|
+
|
|
335
|
+
type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
|
|
336
|
+
type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
|
|
337
|
+
type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
|
|
338
|
+
|
|
339
|
+
type ParamCheck<T> = {
|
|
340
|
+
__tag__: string
|
|
341
|
+
__param_position__: string
|
|
342
|
+
__param_type__: T
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
function checkFields<_ extends { [k in keyof any]: never }>() {}
|
|
346
|
+
|
|
347
|
+
// https://github.com/sindresorhus/type-fest
|
|
348
|
+
type Numeric = number | bigint
|
|
349
|
+
type Zero = 0 | 0n
|
|
350
|
+
type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
|
|
351
|
+
type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
|
package/.next/types/routes.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Do not edit this file manually
|
|
3
3
|
|
|
4
4
|
type AppRoutes = "/" | "/office" | "/office-preview" | "/recover"
|
|
5
|
-
type AppRouteHandlerRoutes = "/api/agent/[id]" | "/api/agent/[id]/account" | "/api/agent/[id]/bash-output" | "/api/agent/[id]/events" | "/api/agent/new" | "/api/agent/running" | "/api/attachment-settings" | "/api/attachments" | "/api/attachments/[id]/transcription" | "/api/attachments/draft" | "/api/auth/all-providers" | "/api/auth/api-key/[provider]" | "/api/auth/login/[provider]" | "/api/auth/logout/[provider]" | "/api/auth/providers" | "/api/cwd/browse" | "/api/cwd/validate" | "/api/default-cwd" | "/api/display-settings" | "/api/document-text" | "/api/experiments" | "/api/file-index" | "/api/files/[...path]" | "/api/git/diff" | "/api/git/status" | "/api/gpt6/handles" | "/api/gpt6/reply" | "/api/gpt6/token" | "/api/gpt6/web6-session" | "/api/home" | "/api/live/call/[callId]" | "/api/live/character-voice" | "/api/live/events" | "/api/live/offer" | "/api/live/voices" | "/api/lounge" | "/api/lounge/events" | "/api/mcp" | "/api/model-roles" | "/api/models" | "/api/models-config" | "/api/models-config/catalog" | "/api/models-config/discover" | "/api/models-config/test" | "/api/office-avatars" | "/api/office-avatars/[id]" | "/api/plugins" | "/api/project-trust" | "/api/projects" | "/api/runs" | "/api/runs/[runId]" | "/api/sessions" | "/api/sessions/[id]" | "/api/sessions/[id]/auto-name" | "/api/sessions/[id]/context" | "/api/sessions/[id]/entries/[entryId]/thinking" | "/api/sessions/[id]/export" | "/api/sessions/[id]/state" | "/api/sessions/search" | "/api/settings" | "/api/sidecars/[service]/[...path]" | "/api/skills" | "/api/skills/check" | "/api/skills/install" | "/api/skills/search" | "/api/skills/update" | "/api/theme" | "/api/tool-image" | "/api/update-maintenance" | "/api/updates" | "/api/web-access" | "/api/web-access/recovery" | "/api/web6/consults" | "/api/worktrees"
|
|
5
|
+
type AppRouteHandlerRoutes = "/api/agent/[id]" | "/api/agent/[id]/account" | "/api/agent/[id]/bash-output" | "/api/agent/[id]/events" | "/api/agent/new" | "/api/agent/running" | "/api/attachment-settings" | "/api/attachments" | "/api/attachments/[id]/transcription" | "/api/attachments/draft" | "/api/auth/all-providers" | "/api/auth/api-key/[provider]" | "/api/auth/login/[provider]" | "/api/auth/logout/[provider]" | "/api/auth/providers" | "/api/cwd/browse" | "/api/cwd/validate" | "/api/default-cwd" | "/api/display-settings" | "/api/document-text" | "/api/experiments" | "/api/file-index" | "/api/files/[...path]" | "/api/git/diff" | "/api/git/status" | "/api/github/projects" | "/api/gpt6/handles" | "/api/gpt6/reply" | "/api/gpt6/token" | "/api/gpt6/web6-session" | "/api/home" | "/api/live/call/[callId]" | "/api/live/character-voice" | "/api/live/events" | "/api/live/offer" | "/api/live/voices" | "/api/lounge" | "/api/lounge/events" | "/api/mcp" | "/api/model-roles" | "/api/models" | "/api/models-config" | "/api/models-config/catalog" | "/api/models-config/discover" | "/api/models-config/test" | "/api/office-avatars" | "/api/office-avatars/[id]" | "/api/plugins" | "/api/project-trust" | "/api/projects" | "/api/runs" | "/api/runs/[runId]" | "/api/sessions" | "/api/sessions/[id]" | "/api/sessions/[id]/auto-name" | "/api/sessions/[id]/context" | "/api/sessions/[id]/entries/[entryId]/thinking" | "/api/sessions/[id]/export" | "/api/sessions/[id]/state" | "/api/sessions/search" | "/api/settings" | "/api/sidecars/[service]/[...path]" | "/api/skills" | "/api/skills/check" | "/api/skills/install" | "/api/skills/search" | "/api/skills/update" | "/api/theme" | "/api/tool-image" | "/api/update-maintenance" | "/api/updates" | "/api/web-access" | "/api/web-access/recovery" | "/api/web6/consults" | "/api/worktrees"
|
|
6
6
|
type PageRoutes = never
|
|
7
7
|
type LayoutRoutes = "/"
|
|
8
8
|
type RedirectRoutes = never
|
|
@@ -37,6 +37,7 @@ interface ParamMap {
|
|
|
37
37
|
"/api/files/[...path]": { "path": string[]; }
|
|
38
38
|
"/api/git/diff": {}
|
|
39
39
|
"/api/git/status": {}
|
|
40
|
+
"/api/github/projects": {}
|
|
40
41
|
"/api/gpt6/handles": {}
|
|
41
42
|
"/api/gpt6/reply": {}
|
|
42
43
|
"/api/gpt6/token": {}
|
package/.next/types/validator.ts
CHANGED
|
@@ -308,6 +308,15 @@ type RouteHandlerConfig<Route extends AppRouteHandlerRoutes = AppRouteHandlerRou
|
|
|
308
308
|
type __Unused = __Check
|
|
309
309
|
}
|
|
310
310
|
|
|
311
|
+
// Validate ../../app/api/github/projects/route.ts
|
|
312
|
+
{
|
|
313
|
+
type __IsExpected<Specific extends RouteHandlerConfig<"/api/github/projects">> = Specific
|
|
314
|
+
const handler = {} as typeof import("../../app/api/github/projects/route.js")
|
|
315
|
+
type __Check = __IsExpected<typeof handler>
|
|
316
|
+
// @ts-ignore
|
|
317
|
+
type __Unused = __Check
|
|
318
|
+
}
|
|
319
|
+
|
|
311
320
|
// Validate ../../app/api/gpt6/handles/route.ts
|
|
312
321
|
{
|
|
313
322
|
type __IsExpected<Specific extends RouteHandlerConfig<"/api/gpt6/handles">> = Specific
|
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@ Use the same `~/.omp/agent` sessions, credentials and model configuration from t
|
|
|
16
16
|
|
|
17
17
|
**ํ๊ตญ์ด:** CUELO๋ omp(oh-my-pi)๋ฅผ ์ํ ์คํ์์ค AI ์ฝ๋ฉ ์์ด์ ํธ ์์
๊ณต๊ฐ์ด์ ํ๋ค์ค์
๋๋ค. ์น ์ฑ์ omp SDK๋ฅผ ์๋ฒ ์์์ ์คํํ๊ณ , `omp` CLI์ ๊ฐ์ `~/.omp/agent` ๋๋ ํฐ๋ฆฌ๋ฅผ ์๋๋ค. ํฐ๋ฏธ๋์์ ํ๋ ์ธ์
์ ๋ธ๋ผ์ฐ์ ์์ ์ด์ด ๊ฐ๊ณ , ๋ค์ ํฐ๋ฏธ๋๋ก ๋์๊ฐ๋ ๊ธฐ๋กยท๊ณ์ ยท๋ชจ๋ธ ์ค์ ์ ๊ณต์ ํฉ๋๋ค.
|
|
18
18
|
|
|
19
|
-
๋ด์ฅ OMP ์ฝ์ด๋ **18.6.
|
|
19
|
+
๋ด์ฅ OMP ์ฝ์ด๋ **18.6.3**์
๋๋ค. ์ถ๋ก ๊ฐ๋๋ฅผ ๋ฐ๊พธ๊ฑฐ๋ ์๋ธ์์ด์ ํธ๋ฅผ ๋ค์ ์ด์ด๋ ์๋น ๋ชจ๋ธ ์ค์ ์ ์ ์งํ๋ฉฐ, ๋ณ๋๋ก ์ค์นํ `omp` CLI์ ๋ฒ์ ์ ์น ์
๋ฐ์ดํธ์ ๋
๋ฆฝ์ ์
๋๋ค.
|
|
20
20
|
|
|
21
21
|
CUELO์ ๋ชฉ์ ์ ์์
์ค ํ์ธํ ์คํจ์ ๋งํ์ ๊ธฐ์ตยท์์
๊ท์นยท์คํ ์ ์ฐจ์ ๋ฐ์ํด, ์ฌ๋์ด ๊ฐ์ ๋ฌธ์ ๋ฅผ ๋ค์ ์ง์ ํ์ง ์์๋ ๋ค์ ์์
์์ ์ค์๋ฅผ ์ค์ด๋ ๊ฒ์
๋๋ค. ์์ธ์ ํ์ธํ๊ณ ํ์ํ ๋ถ๋ถ๋ง ๋ฐ๊พธ๋ฉฐ, ๋ค์ ์์
์์ ์ ์ฉ๊ณผ ํจ๊ณผ๋ฅผ ํ์ธํ๋ ๊ฒ๊น์ง๋ฅผ ์งํฅํฉ๋๋ค. ๊ธฐ๋ก์ ์ ์ฅํ๋ค๋ ์ด์ ๋ง์ผ๋ก ์๋ ๊ฐ์ ์ด ๋๋ฌ๋ค๊ณ ๋ณด์ง๋ ์์ต๋๋ค.
|
|
22
22
|
|
|
@@ -31,7 +31,7 @@ CUELO์ ๋ชฉ์ ์ ์์
์ค ํ์ธํ ์คํจ์ ๋งํ์ ๊ธฐ์ตยท์์
๊ท
|
|
|
31
31
|
| ๊ตฌ๋ถ | ๋ด์ฉ |
|
|
32
32
|
| --- | --- |
|
|
33
33
|
| ์ฑยท๋ฐํ์ ์ค์น ๋ค ๋์ | ์ธ์
ํ์ยท์ค์๊ฐ ๋ํยท๋ถ๊ธฐ/fork, ๋ชจ๋ธ ์ญํ , providerยทํ๋ฌ๊ทธ์ธยท์คํฌ ๊ด๋ฆฌ, ํ์ผ ๋ฏธ๋ฆฌ๋ณด๊ธฐ, ๋น๋ฐ๋ฒํธ ์ ๊ธ, ์บ๋ฆญํฐ ์๋ฆผ ๋ฑ. ๋ํ์๋ ๋ณ๋ ์ ๊ณต์ ์ธ์ฆ์ด ํ์ํฉ๋๋ค |
|
|
34
|
-
| ์ฌ์ฉ์๊ฐ ์ค๋นํ ๊ฒ | Node.jsยทBun๊ณผ ์์ ์ ๋ชจ๋ธ ์ ๊ณต์ ๊ณ์ ยท๋ชจ๋ธ ์ ํ. ์์ค checkout/์ ์ฒด Git ๊ธฐ๋ฅ์๋ Git for Windows๋ ํ์ํฉ๋๋ค. ์ธ์ฆ์ ๋ณดยท์ธ์
ยท์ค์ ์ ์ฌ์ฉ์์ ๋ก์ปฌ `~/.omp/agent`์ ์ ์ฅํฉ๋๋ค |
|
|
34
|
+
| ์ฌ์ฉ์๊ฐ ์ค๋นํ ๊ฒ | Node.jsยทBun๊ณผ ์์ ์ ๋ชจ๋ธ ์ ๊ณต์ ๊ณ์ ยท๋ชจ๋ธ ์ ํ. ์์ค checkout/์ ์ฒด Git ๊ธฐ๋ฅ์๋ Git(Windows๋ Git for Windows)๋ ํ์ํฉ๋๋ค. ์ธ์ฆ์ ๋ณดยท์ธ์
ยท์ค์ ์ ์ฌ์ฉ์์ ๋ก์ปฌ `~/.omp/agent`์ ์ ์ฅํฉ๋๋ค |
|
|
35
35
|
| ๋ก์ปฌ ์ฌ์ด๋์นด (๊ณต๊ฐ) | ๊ณ์ ์ฌ์ฉ๋ ์นด๋, ์ฌ์ด๋ ์ฑ(`/btw`), SubAgent ์์นด์ด๋ธ์ ์คํ ์์ค๋ ํฌํจํฉ๋๋ค. `start`๊ฐ ์ฑ๊ณผ ํจ๊ป ์คํํฉ๋๋ค. usage์ CLI fallbackยท`stats`์๋ ๋ณ๋ `omp` CLI๊ฐ ํ์ํฉ๋๋ค |
|
|
36
36
|
| OMP ํ๋ค์ค (๊ณต๊ฐ) | Main/Maker ์ญํ ๋ถ๋ด, ๋ฐ์ฃผยท๊ฒ์ ๊ณ์ฝ, task guard, ํ๋จ ๋ผ์ฐํ
(Jev), ์บ๋ฆญํฐ ์์ฑ, ๋ช
๋ น ๊ฐ๋์ ๊ท์นยทSOPยทํ์ฅ๊ณผ ์ฑ SDK core ํจ์น์
๋๋ค. `setup`์ผ๋ก ์ค์นํฉ๋๋ค. [ํ๋ค์ค ์๋ด](./docs/harness.md)์ Jev์ ์ธ๋ถ ์๊ฒฉ ๊ฒฝ๊ณ๊ฐ ์์ต๋๋ค |
|
|
37
37
|
| ํฌํจํ์ง ์๋ ๊ฒ | ๊ฐ๋ฐ์์ ๋ก๊ทธ์ธ ์ ๋ณดยทAPI ํคยท๊ฐ์ธ ๊ณ์ ๋ฐ ๋ชจ๋ธ ์ค์ ยท๊ฐ์ธ skillยท๋ํ์ ์์
๊ธฐ๋กยทPC๋ณ ์ด์ ์๋ฃ. ๊ณต๊ฐ ์ค์น๋ ํ์ํ ๋น๊ฐ์ธ ์ด์ ๊ธฐ๋ณธ๊ฐ๋ง ์ ๊ณตํ๊ณ ๋ชจ๋ธ์ ์ฌ์ฉ์๊ฐ ๊ณ ๋ฆ
๋๋ค |
|
|
@@ -53,6 +53,8 @@ CUELO์ ๋ชฉ์ ์ ์์
์ค ํ์ธํ ์คํจ์ ๋งํ์ ๊ธฐ์ตยท์์
๊ท
|
|
|
53
53
|
- ๋ชจ๋ธ ์ ํ๊ธฐ ๋งจ ์์ ์์ฃผ ๊ณ ๋ฅธ ๋ชจ๋ธ์ด ๋์ค๊ณ , ํ๋ ํธ์์ ๋์ ๋ํ ํญ์ ์ผค ์ ์์ต๋๋ค.
|
|
54
54
|
- ์
๋ ฅ์ฐฝ ์๋ ์ค์ Main ํ๋ฆฌ์
โ ๊ทธ ์ ๊ณต์์ ๋ชจ๋ธ โ ์ถ๋ก ๊ฐ๋ ์์์
๋๋ค. "์๋, ์ต๋ high"์ฒ๋ผ ์ํ์ ๊ณ ๋ฅผ ์ ์๊ณ , Auto๊ฐ ์ค์ ๋ก ์ ์ฉํ ๊ฐ์ ใํ์ฌ ์ถ๋ก ๊ฐ๋ใ๋ก ๋ฐ๋ก ํ์ํฉ๋๋ค. ์คํ ์ค์ ์ง์๋ฅผ ๋ง๋ถ์ด๋ฉด Auto๊ฐ ๋ค์ ํ๋จํด ๊ฐ๋๋ฅผ ์ฌ๋ฆด ์ ์๊ณ , ๊ฐ์ ๋ต๋ณ ์์์๋ ๋ด๋ฆฌ์ง ์์ต๋๋ค. ์ ๋ํ๋ ์ ํํ ์ํ ์ ์ฉ์ ๋ง์น ๋ค ์ฒซ ๋ฉ์์ง๋ฅผ ๋ณด๋ด๋ฉฐ, ์ ์ฉ์ ์คํจํ๋ฉด ์ฌ์ ์ก ๋ ๋ค์ ์๋ํฉ๋๋ค.
|
|
55
55
|
- ๋๊ตฌ ์ ์๊ฐ์๋ ๋ชจ๋ธ ์๋ต ์์ฑ ์๊ฐ์ ํฌํจํ์ง ์์ต๋๋ค. ์คํ ์ ์ ์ทจ์๋ ๋๊ตฌ๋ ์๋ฃ ์๊ฐ์ ํ์ธํ ์ ์๋ ์ ๊ธฐ๋ก์๋ ์๊ฐ์ ์ถ์ ํด ๋ถ์ด์ง ์์ต๋๋ค.
|
|
56
|
+
- ์๋ ์ ๋ชฉ๊ณผ ์๋ ใ์ด๋ฆ ์ง๊ธฐใ๋ ์์ฒญ ์ธ์ด๋ฅผ ๋ฐ๋ฆ
๋๋ค. ํ๊ตญ์ด ์์ฒญ์๋ ํ๊ตญ์ด ์ ๋ชฉ์ ๋ถ์ด๊ณ ํ์ผ๋ช
ยท๋ช
๋ นยท์ ํ๋ช
์ ์๋ฌธ์ ์ ์งํฉ๋๋ค. ์ด๋ฏธ ๋ถ์ ์ ๋ชฉ์ ๋ฐ๊พธ์ง ์์ต๋๋ค.
|
|
57
|
+
- ํด๋ผ์ฐ๋์์๋ GitHub ์ ์ฅ์๋ฅผ ์ ํํ๊ฑฐ๋ URL์ ์
๋ ฅํด ๊ฐ์ ธ์จ ๋ค ํ๋ก์ ํธ๋ก ์ด ์ ์์ต๋๋ค. GitHub ์ฐ๊ฒฐ๊ณผ ์๋ฒ ํด๋ ์ด๊ธฐ๋ฅผ ํ ํ๋ฉด์์ ์ ๊ณตํ๋ฉฐ, ํด๋ผ์ฐ๋ ๊ธฐ๋ฅ์ ์ผ์ง ์์ ์ธ์คํด์ค์ ํ๋ฉด์ ๊ทธ๋๋ก์
๋๋ค. ์ค์ ยท์ธ์ฆยท์์
๋ฌผ ๋ณด์กด๊ณผ ์ด์ ๋ฐฉ๋ฒ์ [Docker ์๋ด](./docs/docker.md)๋ฅผ ํ์ธํ์ธ์.
|
|
56
58
|
|
|
57
59
|
**๊ณ์ ๊ณผ ์์**
|
|
58
60
|
|
|
@@ -116,7 +118,7 @@ CUELO์ ๋ชฉ์ ์ ์์
์ค ํ์ธํ ์คํจ์ ๋งํ์ ๊ธฐ์ตยท์์
๊ท
|
|
|
116
118
|
|
|
117
119
|
CUELO๋ GitHub ์์ค์ npm ํจํค์ง [`cuelo`](https://www.npmjs.com/package/cuelo)๋ก ์ค์นํฉ๋๋ค. npm์ `omp-web`์ upstream ํ๋ก์ ํธ์ด๋ฉฐ CUELO์ ๋ณ๊ฐ์
๋๋ค. **๊ธฐ์กด `omp` CLI๋ง ์ค์นํ PC์๋ `omp-web` ์์ด CUELO๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.** ๊ธฐ์กด `config.yml`ยท๊ณ์ ยท์ธ์
์ ๋ณด์กดํ๋ ์์๋ [๋ํ ์ค์น ๊ฒฝ๋ก](./docs/installation.md#๋ํ-๊ฒฝ๋ก-omp๋ง-์๋-windows-pc-omp-web-์์)์ ์์ต๋๋ค.
|
|
118
120
|
|
|
119
|
-
> **๊ฐ๋ฐยท๊ฒ์ฆ ํ๊ฒฝ์ Windows์
๋๋ค.** macOS
|
|
121
|
+
> **๊ฐ๋ฐยท๊ฒ์ฆ ํ๊ฒฝ์ Windows์ Linux(WSL2 Ubuntu 24.04)์
๋๋ค.** ๊ณต๊ฐ CI๋ Windows์์ ์คํํฉ๋๋ค. macOS๋ ๊ฐ๋ฐยทํ
์คํธ ํ๊ฒฝ์ด ์๋๋ฏ๋ก ๋์๊ณผ ์ง์์ ๋ณด์ฅํ์ง ์์ต๋๋ค.
|
|
120
122
|
|
|
121
123
|
์๋ฒ๋ **Bun 1.4.2 ์ด์**์์๋ง ์คํ๋ฉ๋๋ค(omp SDK๊ฐ TypeScript ์์ค์ `bun:` ๋ด์ฅ ๋ชจ๋์ ์ฌ์ฉ). Node.js 22.19.0 ์ด์๋ `install.mjs`์ npm์ ํ์ํฉ๋๋ค. Git์ ์์ค checkout๊ณผ Git ์์
(worktreeยทcommit ๋ฑ)์ ํ์ํ์ง๋ง npm ์ค์น์ ๊ธฐ๋ณธ ๋ํ์๋ ํ์ํ์ง ์์ต๋๋ค.
|
|
122
124
|
๋ฉ๋ชจ๋ฆฌ ํจํค์ง๊ฐ ์ ์ธํ ์ ํ์ ONNX peer๋ `onnxruntime-node:1.21.0`์ผ๋ก ์ ๊ณตํฉ๋๋ค. Transformers๊ฐ ์๊ตฌํ๋ ๋ณ๋ ๋ฒ์ ์ ์์ฒด ์์กด์ฑ์ผ๋ก ์ ์งํ๋ฉฐ, ์ค์น ์ค๋ฅ๋ฅผ ํผํ๋ ค๊ณ peer ๊ฒ์ฆ์ ๋์ง ์์ต๋๋ค. Mnemopi์ ๋ก์ปฌ ์๋ฒ ๋ฉ์ ๋ณ๋ `fastembed`์ ๋ชจ๋ธ์ ์ฒซ ์ฌ์ฉ ๋ ๋ด๋ ค๋ฐ์ ์ ์์ต๋๋ค.
|
|
@@ -124,6 +126,7 @@ CUELO๋ GitHub ์์ค์ npm ํจํค์ง [`cuelo`](https://www.npmjs.com/package/
|
|
|
124
126
|
```bash
|
|
125
127
|
# Bun ์ค์น
|
|
126
128
|
powershell -c "irm bun.sh/install.ps1 | iex" # Windows
|
|
129
|
+
curl -fsSL https://bun.sh/install | bash # Linux
|
|
127
130
|
|
|
128
131
|
# CUELO ๋ฐ๊ธฐ์ ์คํ
|
|
129
132
|
git clone https://github.com/gim47656-ship-it/CUELO.git
|
|
@@ -168,6 +171,8 @@ bun bin/cuelo.js --reset-password # ๋น๋ฐ๋ฒํธ ์ฌ์ค์
|
|
|
168
171
|
|
|
169
172
|
์
๋ฐ์ดํธ ๋๊ธฐ ํ๋ฉด์์ ์คํจ๊ฐ ํ์ธ๋๋๋ผ๋ ์๋ฒ๊ฐ ๋ค์ ์์ฒญ์ ๋ฐ์ ์ ์๊ณ ์๋ ๋ํ๊ฐ ํ์ธ๋๋ฉด ๊ทธ ๋ํ๋ก ์๋ ๋ณต๊ทํฉ๋๋ค. ๋ณต๊ทํ ํ๋ฉด์ ์งํ ์ค์ธ ๋ต๋ณ์ด๋ ์ด๋ฏธ ๋๋ ์คํจ ์๋ด๋ฅผ ๋ฐ๋ผ์ก์ผ๋ฉฐ, ๋ณต๊ท ์์ฒด๊ฐ ๋ช
๋ น์ ๋ค์ ๋ณด๋ด์ง๋ ์์ต๋๋ค.
|
|
170
173
|
|
|
174
|
+
Windows์ WSL Ubuntu์์ ์คํ ์ค์ธ CUELO๋ฅผ ๊ฐฑ์ ํ๋ ๋์์๋ WSL ์ฐ๊ฒฐ์ ์ ์งํ๊ณ , ์ด๋ ค ์๋ ํ๋ฉด์ ์ธ์
์ ์งยท์ค๋นยทํจํค์ง ๊ต์ฒดยทํ์ธ ๋จ๊ณ๋ฅผ ํ์ํฉ๋๋ค. ์๋ฒ๊ฐ ์ ์ ๋ด๋ ค๊ฐ ์๋ ๊ต์ฒด ๋จ๊ณ์์๋ ํจํค์ง ๊ต์ฒด ํ์๋ฅผ ์ ์งํ๋ฉฐ, ๊ฐฑ์ ์ด ๋๋๋ฉด ์๋ ๋ํ๋ก ๋์์ต๋๋ค. ์ ์๋ฒ๊ฐ ์คํ ์ค์ด๊ณ ์๋ตํ๋ฉด ๊ฐฑ์ ์๋ฃ ํ๋ฉด์์ ๋ฉ์ถ์ง ์๊ณ ๋ง์นฉ๋๋ค. ์๋น์ค๊ฐ ๋ฉ์ถ ๊ฒ์ ํ์ธํ ๋ค์๋ง ํ์ผ๊ณผ ํ๋กํ์ ๋ฐ๊พธ๊ณ , ์คํจํ๋ฉด ์คํ ์ค์ด๋ ๋ฒ์ ์ ๊ทธ๋๋ก ๋๊ฑฐ๋ ์ด์ ๋ฒ์ ์ผ๋ก ๋ณต๊ตฌํฉ๋๋ค. ๋ณต๊ตฌ๊ฐ ๋๋ ๊ฐฑ์ ๋ ์๋ฃ๋ก ์ธ์ํฉ๋๋ค.
|
|
175
|
+
|
|
171
176
|
๊ธฐ์กด ํ๋กํ์ ํ๋ค์คยท์ญํ ์ค์ ์ ์ฑ ์
๋ฐ์ดํธ๋ง์ผ๋ก ์๋ ๋ฎ์ด์ฐ์ง ์์ต๋๋ค. `0.6.1`์ ์ค์ ์ ํ์ [๊ธฐ์กด ํ๋ค์ค ๊ฐฑ์ ](./docs/installation.md#061๋ก-๊ธฐ์กด-ํ๋ค์ค-๊ฐฑ์ )์ ํ์ธํ๊ณ , ๋ฐ์ ํ CUELO์ `omp`๋ฅผ ๋ค์ ์์ํ์ธ์.
|
|
172
177
|
|
|
173
178
|
```bash
|
|
@@ -9,9 +9,9 @@ const MEMORY_RE = /(const phase1Model = await resolveMemoryModel\(\{[^}]*?fallba
|
|
|
9
9
|
const MEMORY_DONE = /const phase1Model = await resolveMemoryModel\(\{[^}]*?fallbackRole: "smol"/;
|
|
10
10
|
const EXPECTED = {
|
|
11
11
|
name: 'cuelo',
|
|
12
|
-
version: '0.9.
|
|
12
|
+
version: '0.9.8',
|
|
13
13
|
distribution: 'cuelo',
|
|
14
|
-
coreVersion: '18.6.
|
|
14
|
+
coreVersion: '18.6.3',
|
|
15
15
|
};
|
|
16
16
|
|
|
17
17
|
// OMP core 18.4.12 `src/sdk.ts`: session-scoped AsyncJobManager for a process
|
|
@@ -177,7 +177,7 @@ function readNativePackage(target) {
|
|
|
177
177
|
throw new Error(`unexpected native package ${packageJson.name}@${packageJson.version}`);
|
|
178
178
|
}
|
|
179
179
|
if (!build || build.distribution !== EXPECTED.distribution || build.coreVersion !== EXPECTED.coreVersion) {
|
|
180
|
-
throw new Error('native cueloBuild metadata does not match cuelo / core 18.6.
|
|
180
|
+
throw new Error('native cueloBuild metadata does not match cuelo / core 18.6.3');
|
|
181
181
|
}
|
|
182
182
|
return packageJson;
|
|
183
183
|
}
|
|
@@ -28,7 +28,9 @@
|
|
|
28
28
|
๊ทธ ์๋ฆฌ์์ ๋ฉ์ถฐ ์์ธ ๊ทผ๊ฑฐยท์๋ํ ๊ฒยท๋จ์ ๋งํ์ ๋ณด๊ณ ํ๋ค.
|
|
29
29
|
- ๋๊ตฌยท์ ์ฅ์ยทํ์ฌ ๋ฌธ๋งฅ์ผ๋ก ํด๊ฒฐํ ์ ์๋ ์์
์ ํ์ธ์ ์์ฒญํ๊ฑฐ๋ ์ค๊ฐ ๋จ๊ณ์์ ๋ฉ์ถ์ง ์๊ณ ๋๊น์ง ์ํํ๋ค. ๋จ, ์ญ์ ยท๋ฐฐํฌยท๋น์ฉ ๋ฐ์ยทํธํ์ฑ ํ๊ดด๋ ์คํ ์ ์ ์ฌ์ฉ์ ์น์ธ์ ๋ฐ๋๋ค.
|
|
30
30
|
- MCP ์ค์นยท๋ฑ๋กยท์ธ์ฆยท๊ถํ ๋ณ๊ฒฝ์ ๋์๊ณผ ๋ฒ์๋ฅผ ์ค๋ช
ํ๊ณ ๋จผ์ ์ฌ์ฉ์ ์น์ธ์ ๋ฐ๋๋ค. ์น์ธ ๋ค์๋ ์์ด์ ํธ๊ฐ ๊ฐ๋ฅํ ์ค์นยท์ค์ ยท์ฐ๊ฒฐยท๊ฒ์ฆ์ ๋๊น์ง ์คํํ๋ค. "์ฌ์ฉ์ ์น์ธ ํ์"๋ฅผ "์ฌ์ฉ์๊ฐ ์ง์ ์คํํด์ผ ํจ"์ผ๋ก ๋ฐ๊ฟ ํด์ํ์ง ์๋๋ค. ์ฌ์ฉ์ ๋ณธ์ธ ๋ก๊ทธ์ธยท์ธ์ฆ์ ๋ณด ์
๋ ฅยท์ ๊ณต์ ์์ ํ์ธยท๋์์ฒ๋ผ ์ฌ๋์ด ํ์ํ ๋จ๊ณ๋ง ์ฌ์ฉ์์๊ฒ ๋๊ธด๋ค. JEV ์ถ์ฒยทํ์์ฑ ํ์ ์ ์ฌ์ฉ์ ์น์ธ์ ๋์ ํ์ง ์๋๋ค.
|
|
31
|
-
-
|
|
31
|
+
- ํธ์คํธ OS ์์คํ
๋ณ๊ฒฝ(์ฌ์ฉ์, 2026-10-06): ์ปค๋ยทํํฐ ๋๋ผ์ด๋ฒ, ๋ถํ
ยทSystem ์์ ์๋น์ค์ `Start` ๊ฐ, ๋คํธ์ํฌ ์คํยท๋ฐฉํ๋ฒฝยท๋ณด์/๊ธ์ต ๋ณด์ ํ๋ก๊ทธ๋จ, ๋ถํ
์ค์ , ์์คํ
๋ ์ง์คํธ๋ฆฌ๋ "๊บผ ๋ณด๊ณ ํ์ธ" ๊ฐ์ ์ง๋จ ์๋จ์ผ๋ก ๊ฑด๋๋ฆฌ์ง ์๋๋ค. ๋ฐ๊ฟ์ผ ํ ๊ทผ๊ฑฐ๊ฐ ์์ผ๋ฉด ์คํ ์ ์ ๋์, ํ์ฌ ๊ฐ, ๋ฐ๊ฟ ๊ฐ, ์์ ์ํฅ(๋คํธ์ํฌ ๋จ์ ยท๋ถํ
์คํจ ๊ฐ๋ฅ์ฑ), ๋๋๋ฆฌ๋ ๋ฐฉ๋ฒ์ ์ค๋ช
ํ๊ณ ๊ทธ ์ ํํ ๋ณ๊ฒฝ์ ๋ํด ์ฌ์ฉ์ ์น์ธ์ ๋ฐ๋๋ค. "UAC ์ฐฝ์ด ๋จ๋ฉด ํ์ฉํด ์ฃผ์ธ์"๋ ์น์ธ ์์ฒญ์ด ์๋๋ฉฐ UAC ํ์ฉ๋ ์น์ธ์ผ๋ก ๋ณด์ง ์๋๋ค. ๋นํ์ฑํ๋ณด๋ค ํด๋น ํ๋ก๊ทธ๋จ์ ์ ์ ์ ๊ฑฐยท์ค์ ์ ๋จผ์ ๊ฒํ ํ๊ณ , ์ฝ๊ธฐ ์ ์ฉ ์กฐํ(`reg query`ยท`sc query`)๋ก ์์ธ์ ๋จผ์ ์ขํ๋ค.
|
|
32
|
+
- ๋ฐฐํฌ ํ์ธ(์ฌ์ฉ์, 2026-09-26ยท2026-09-29ยท2026-09-30): ์ง PC(hostname `KYS`)์ ์ฌ๋ฌด์ค PC(hostname์ ๋น๊ณต๊ฐ ๋ฐฐํฌ ํ์ ์๋ค)๋ ๊ฐ์ ํ์ธ ์ ์ฐจ๋ฅผ ๋ฐ๋ฅด๊ณ , ์คํ ๋จ๊ณ๋ง ์๋ ใKYS ๋ฐฐํฌใ๊ฐ ๋ค๋ฅด๋ค. ๊ทธ PC์ CUELO ์ธ์
์ด ์์ค ๋ณ๊ฒฝ์ ๊ฒ์ฆํ๊ณ ์ปค๋ฐยทpushํ์ผ๋ฉด, ๊ทธ ์ปค๋ฐ์ GitHub CI๊ฐ ๋๋ ๋๊น์ง ์ง์ผ๋ณธ ๋ค ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ณ ํ๊ณ ๋ฐฐํฌ ์ฌ๋ถ๋ฅผ ๋ฌป๋๋ค. ์ฌ๋ฌด์ค์ ์ฌ์ฉ์๊ฐ ์น์ธํ๋ฉด ๊ฐ์ revision์ `Tools/CUELO_Setup/deploy-live.ps1`๊ณผ `Tools/OMP_Global_Config/verify.ps1 -StrictRuntime`์ ์คํํ๋ค(`Tools/CUELO_Setup/setup.ps1`์ ์ฑ ์ ์ฒด ์ค์น๊ธฐ๋ผ ์ด ๋จ๊ณ๊ฐ ์๋๋ค). ๋ฐฐํฌ ํธ๋์ญ์
์ด ์ ์๋ฒ๋ฅผ ๋์ฐ๊ธฐ ์ ์ `Tools/OMP_Global_Config/setup.ps1 -ProfileOnly`๋ก ๋ฏธ๋ฌ ํ๋กํ์ ๋ฐ์ํ๊ณ , ์ ์๋ฒ `/api/models`์ ์ญํ selector๊ฐ ๋ฏธ๋ฌ `config.yml` `modelRoles`์ ๊ฐ์์ง ํ์ธํด receipt `profile`์ ๋จ๊ธฐ๋ฏ๋ก ๋ฐฐํฌ ๋ค ProfileOnlyยท`CUELO-Restart`๋ฅผ ๋ฐ๋ก ๋๋ฆฌ์ง ์๋๋ค. ์ญํ ์ด ๋ค๋ฅด๊ฑฐ๋ ๊ด์ธก๋์ง ์์ผ๋ฉด deploy-live๊ฐ exit 3์ผ๋ก ๋๋๋ฉฐ rollbackํ์ง ์์ผ๋, ์๋ด๋๋ก ์ฌ์์ํ ๋ค `/api/models`๋ฅผ ๋ค์ ํ์ธํ๋ค. ์ธ์
์ ๋ฐฐํฌ๋ deploy-live๊ฐ worker ์ ์ ๋ค ๋ฐํํ๋ฏ๋ก ์ฌ๊ฐ ๋ค transaction receipt์ `profile.modelRoles.matched`๊ฐ `true`์ธ์ง ์ง์ ํ์ธํ๋ค. ๋ฐฐํฌ ์์ด ํ๋กํ๋ง ๋ฐ๊ฟจ์ผ๋ฉด ProfileOnly ๋ค ์๋ฒ๋ฅผ ์ฌ์์ํ๊ณ ๊ฐ์ ์ญํ ํ์ธ์ ํ๋ค. ๋ผ์ด๋ธ ์๋ฒ๋ Settings๋ฅผ ์์ ๋ ํ ๋ฒ๋ง ์ฝ์ด ํ์ผ ๋ณ๊ฒฝยทtouch๋ก๋ ๋ฐ์๋์ง ์๋๋ค. ์คํ ์ `hostname`์ผ๋ก PC๋ฅผ ํ์ธํ๋ค. ์์ฝ ์์
๊ฐ์ ์๋ ๋ฐฐํฌ๋ ๋์ง ์๋๋ค. stageยทrollback ์ญ์ , ์ด ๋ PC ๋ฐ์ ๋ฐฐํฌ, CLI ์
๋ฐ์ดํธ, ๋น์ฉ์ด ๋๋ ์์
์ ๋ฐ๋ก ์น์ธ๋ฐ๋๋ค.
|
|
33
|
+
- KYS ๋ฐฐํฌ(์ฌ์ฉ์, 2026-10-07): ์ง PC๋ WSL `Ubuntu-24.04`์ CUELO ํ๋๋ก ๋๋ค. ์ Windows ๋จ๊ณ ๋์ ์ฌ์์์ ์๋ฆฌ๊ณ WSL์์ `systemd-run --user --unit=cuelo-update-$(date +%s) --collect --setenv=WSL_DISTRO_NAME=Ubuntu-24.04 bash ~/cuelo-run/Tools/CUELO_Setup/wsl/update.sh <revision>`์ ์คํํ๋ค(Windows ์ธ์
์ด๋ฉด `wsl.exe -d Ubuntu-24.04 --exec bash -lc 'โฆ'`๋ก). ์ธ์
์ ์งยท๋น๋ยทWSL ํ๋กํ ๋ฐ์ยท์ฌ์์ยท๋๊ธฐ ํ๋ฉด ๋ณต๊ท๊น์ง ์ด ์คํฌ๋ฆฝํธ๊ฐ ๋งก๋๋ค. `Tools/CUELO_Setup/deploy-live.ps1`๊ณผ ์ฑ ์ ์ฒด `setup.ps1`์ ์ง์ด Windows ์ฑ์ ๋ค์ ์ค์นํ๋ฏ๋ก KYS์์ ์คํํ์ง ์๋๋ค. `verify.ps1 -StrictRuntime`ยท`setup.ps1 -ProfileOnly`๋ Windows ์ชฝ ํ๋กํยท๋ฐํ์์ ๋ณด๋ฏ๋ก KYS ๋ฐฐํฌ์ ์ฆ๊ฑฐ๊ฐ ์๋๋ค. ์๋ฃ๋ ์ต์ `~/.omp/wsl-update/*.log`์ `READY <revision>`, `wsl\launch.ps1 -Status`์ `matched: true`, `node install.mjs health` 4/4, `/api/models?cwd=<์ธ์
cwd>` ์ญํ selector์ WSL `~/.omp/agent/config.yml` `modelRoles`์ ์ผ์น๋ก ๋ณธ๋ค(`cwd`๊ฐ ์์ผ๋ฉด 403). exit 2(๋๋๋ฆผ)ยท3(๋๋๋ฆฌ๊ธฐ ์คํจ)์ ๋ฐฐํฌ ์คํจ๋ก ๋ณด๊ณ ํ๋ค. ์ธ๋ถ ์ ์ฐจ์ ํจ์ ์ `Tools/CUELO_Setup/WSL-SETUP.md` ใ์ด์ใ์ ์๋ค.
|
|
32
34
|
- CI ๊ฐ์(์ฌ์ฉ์, 2026-09-28ยท2026-10-03): ์ปค๋ฐ์ CI๋ฅผ ์ง์ผ๋ณผ ๋๋ ๊ธฐ๋ค๋ฆด ์ํฌํ๋ก๋ฅผ ์ด๋ฆ์ผ๋ก ์ง์ ํ๊ณ (`gh run list --workflow <์ด๋ฆ>` ๋ฑ), ๊ทธ run์ด ๋๋๋ ์ฆ์ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ณ ํ๋ค. ๊ฐ์ SHA์ ๊ฑธ๋ฆฐ run ์ ์ฒด์ ์๋ฃ๋ฅผ ์กฐ๊ฑด์ผ๋ก ์ผ์ง ์๋๋ค. CI ์ฑ๊ณต์ด ํธ๋ฆฌ๊ฑฐํ๋ ๋ฆด๋ฆฌ์คยท๋ฐฐํฌ run(`workflow_run`)์ด ๋ช ์ด ๋ค ๊ฐ์ SHA๋ก ์๊ฒจ CI ์๋ฃ ๋ณด๊ณ ๋ฅผ ๋ถ์ก๊ธฐ ๋๋ฌธ์ด๋ค. ์ด์ด ๋ถ๋ run์ ๋ณด๊ณ ํ ๋ค ๋ฐ๋ก ์ง์ผ๋ณธ๋ค. ๊ฐ์๋ `bash`์ `gh run watch <id> --exit-status`๋ `gh run list` ์ง์ ์กฐํ๋ก ํ๊ณ , `eval` ์ปค๋ ์์์ `gh`๋ฅผ subprocess๋ก ๋ถ๋ฅด๋ ํด๋ง ๋ฃจํ๋ก ์ง์ง ์๋๋ค. 2026-10-03 ๊ทธ๋ฐ ๋ฃจํ๊ฐ ๋น ์ถ๋ ฅ์ "run ์์"์ผ๋ก ์ฝ์ด, CI๊ฐ ๋๋ ๋ค์๋ 20๋ถ ๋๊ฒ ๋ณด๊ณ ํ์ง ๋ชปํ๋ค. ์ง์ ์ง ํด๋ง์ ๋น ์ถ๋ ฅยท0์ด ์๋ exit๋ฅผ ์ฆ์ ์ค๋ฅ๋ก ๋๋ธ๋ค. ๊ณต๊ฐ ๋ฏธ๋ฌ CI๋ headSha๊ฐ ์๋ณธ ์ปค๋ฐ๊ณผ ๋ค๋ฅด๋ฏ๋ก run ์ ๋ชฉ์ผ๋ก ์ฐพ๋๋ค.
|
|
33
35
|
- ๊ตฌํ ๋ฐฉ๋ฒ์ ๋ถํ์ค์ฑ์ ๋ช
์ ์๊ตฌยท์น์ธ๋ ๊ณ์ฝ, ์ค์ ํธ์ถ๋ถ์ ๋ฐ์ดํฐ ํ๋ฆ, ํ
์คํธยท์ฌํ ๊ฒฐ๊ณผ,
|
|
34
36
|
ํ์ฌ ๋์๊ณผ ๋ฌธ์๋ก ์ขํ๋ค. ์ฆ๊ฑฐ๋ก ๋ฐฉํฅ์ด ์ ํด์ง๋ฉด ๊ทผ๊ฑฐ๋ฅผ ๋จ๊ธฐ๊ณ ์งํํ๋ฉฐ ์ฌ์ํ ๊ตฌํ ์ ํ๋ง๋ค
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
You name coding-agent sessions. Write a short title for the task in the next message.
|
|
2
|
+
|
|
3
|
+
Write the title in the language the user wrote the request in. A Korean request gets a Korean title, even when the request mixes in English words or the surrounding notes are in English. Keep code identifiers, file names, commands, product and model names in their original form.
|
|
4
|
+
|
|
5
|
+
Rules:
|
|
6
|
+
- Name the user's goal as a short phrase built from the user's own key words (the feature, component, or error they name). Korean titles end in a noun or a noun phrase such as "~ ์์ ", "~ ์ถ๊ฐ", "~ ์กฐ์ฌ"; English titles are a 3-6 word imperative. Avoid vague filler like "logic", "issues", "functionality", "๋ฌธ์ ", "์์
".
|
|
7
|
+
- Keep it short: about 4-20 Korean characters, or 3-6 English words.
|
|
8
|
+
- `[Image #N, WxH]` marks an image you cannot see. Never mention it or guess what it shows; title the task the surrounding words name.
|
|
9
|
+
- Decline greetings, acknowledgements, gibberish, or requests too vague to name without context you cannot see ("help", "fix this", "์ด๊ฑฐ ๋ด์ค").
|
|
10
|
+
- A `<chat>` block summarizes a longer session: its first `<user>` turn is the opening request, followed by recent turns (often the assistant's working notes, sometimes in English). Title the goal the session is working on, in the language of the user's turns, using the opening request unless later turns clearly moved to a new task; never title the current micro-step, and ignore file names and symbols unless they are the subject.
|
|
11
|
+
- No quotes, trailing punctuation, or explanations.
|
|
12
|
+
|
|
13
|
+
Examples:
|
|
14
|
+
- "the retry queue drops jobs when redis restarts, can u look" โ Fix retry queue dropping jobs
|
|
15
|
+
- "npm run build ํ ๋ peer deps ๊ฒฝ๊ณ ์์ ์ค" โ peer dependency ๋น๋ ๊ฒฝ๊ณ ์ ๊ฑฐ
|
|
16
|
+
- "๋ก๊ทธ์ธํ๋ฉด ๊ฐ๋ ๋น ํ๋ฉด๋ง ๋จ๋๋ฐ ํ์ธ ์ข" โ ๋ก๊ทธ์ธ ํ ๋น ํ๋ฉด ์์
|
|
17
|
+
- `<chat>` whose user turns are Korean and whose assistant notes say "adding a backoff field to RetryPolicyโฆ now wiring jitter" โ ์ฌ์๋ backoffยทjitter ์ถ๊ฐ
|
|
@@ -81,6 +81,8 @@ export interface JevRuntimeDeps {
|
|
|
81
81
|
ledgerPath?: string;
|
|
82
82
|
/** ํ์ ๊ธฐ์ต ์ ์ฉ ์ ๊ฒ์ bounded advisory latency. ํ
์คํธ๋ง ์งง๊ฒ ์ค๋ค. ๊ธฐ๋ณธ์ MEMORY_APPLICATION_TIMEOUT_MS๋ค. */
|
|
83
83
|
memoryApplicationTimeoutMs?: number;
|
|
84
|
+
/** ์
ธ ์ค๋ฅ ๋ถ๋ฅยท์๋ด๋ฅผ ๊ณ ๋ฅผ ์คํ ํ๋ซํผ. ํ
์คํธ๋ง ์ฃผ์
ํ๋ค. ๊ธฐ๋ณธ์ process.platform์ด๋ค. */
|
|
85
|
+
platform?: NodeJS.Platform;
|
|
84
86
|
}
|
|
85
87
|
|
|
86
88
|
// ---------------------------------------------------------------------------
|
|
@@ -247,10 +249,14 @@ function textContent(content: unknown): string {
|
|
|
247
249
|
// Windows ๊ธฐ๋ณธ curl.exe ๋ `-o /dev/null` ์ ํ์ผ ๊ฒฝ๋ก๋ก ๋ฐ์ ์ฐ์ง ๋ชปํ๊ณ ์๋ต์ ๋ฐ์ ๋ค exit 23 ์ผ๋ก ๋๋๋ค.
|
|
248
250
|
const WINDOWS_CURL_DEVNULL = /\bcurl(?:\.exe)?\b[^\n;|&]*\s-o\s*\/dev\/null\b/u;
|
|
249
251
|
|
|
250
|
-
|
|
252
|
+
const WINDOWS_SHELL_NEXT_ACTION = "๊ฐ์ ๋ช
๋ น์ ๊ทธ๋๋ก ์ฌ์๋ํ์ง ์๋๋ค. PowerShell ๋ก์ง์ write๋ก .ps1 ํ์ผ์ ๋ง๋ค๊ณ -File <์ฌ๋์ ์ ๋๊ฒฝ๋ก>๋ก ์คํํ๋ค. .\\xยท์ญ์ฌ๋์ ๊ฒฝ๋ก ๋์ ์ฌ๋์ ์ ๋๊ฒฝ๋ก๋ฅผ ์ด๋ค. cmd /c rdยทdel ๋์ rm ๋๋ .ps1์ Remove-Item -LiteralPath๋ฅผ ์ด๋ค. `$'\\r'` ๊ตฌ๋ฌธ ์ค๋ฅ๋ PATH ์ฒซ bash(WSL)๊ฐ CRLF .sh๋ฅผ ์ฝ์ ๊ฒ์ด๋ Git Bash(\"C:/Program Files/Git/bin/bash.exe\" <์คํฌ๋ฆฝํธ>)๋ก ์คํํ๋ค. `curl -o /dev/null`์ exit 23์ Windows curl.exe๊ฐ /dev/null์ ์ฐ์ง ๋ชปํ ๊ฒ์ด๋ผ ์๋ต์ ์ด๋ฏธ ๋ฐ์๋ค. `-o NUL`์ด๋ ์
ธ ๋ฆฌ๋๋ ์
`>/dev/null`๋ก ๋ฐ๊พผ๋ค.";
|
|
253
|
+
// Linux(WSL ํฌํจ) ์
ธ: Windows ๋ช
๋ นยทCRLF ์คํฌ๋ฆฝํธยทinterop PowerShell ํธ์ถ์ด ์์ธ์ด๋ค.
|
|
254
|
+
const POSIX_SHELL_NEXT_ACTION = "๊ฐ์ ๋ช
๋ น์ ๊ทธ๋๋ก ์ฌ์๋ํ์ง ์๋๋ค. ์ด ์
ธ์ Linux๋ค. delยทcopyยทfindstrยทcmd /c ๋์ rmยทcpยทgrep์ ์ด๋ค. Windows ์ ์ฉ ์์
๋ง interop์ผ๋ก ๋ถ๋ฅด๊ณ , PowerShell ๋ก์ง์ write๋ก .ps1 ํ์ผ์ ๋ง๋ค์ด powershell.exe -File \"$(wslpath -w <์คํฌ๋ฆฝํธ>)\"๋ก ์คํํ๋ฉฐ ๋๊ธฐ๋ ๊ฒฝ๋ก๋ wslpath -w๋ก ๋ฐ๊พผ๋ค. `$'\\r'` ๊ตฌ๋ฌธ ์ค๋ฅ๋ CRLF .sh๋ฅผ ์ฝ์ ๊ฒ์ด๋ bash <(tr -d '\\r' < <์คํฌ๋ฆฝํธ>)๋ก ์คํํ๊ฑฐ๋ ์คํฌ๋ฆฝํธ๋ฅผ LF๋ก ์ ์ฅํ๋ค.";
|
|
255
|
+
|
|
256
|
+
function classifyError(content: unknown, input: unknown, platform: NodeJS.Platform): string {
|
|
251
257
|
const text = textContent(content);
|
|
252
258
|
const command = input && typeof input === "object" && "command" in input ? input.command : undefined;
|
|
253
|
-
if (/exited with code 23\b/u.test(text) && typeof command === "string" && WINDOWS_CURL_DEVNULL.test(command)) {
|
|
259
|
+
if (platform === "win32" && /exited with code 23\b/u.test(text) && typeof command === "string" && WINDOWS_CURL_DEVNULL.test(command)) {
|
|
254
260
|
return "windows-shell";
|
|
255
261
|
}
|
|
256
262
|
for (const [pattern, category] of ERROR_CATEGORY_PATTERNS) {
|
|
@@ -889,6 +895,7 @@ function renderMemoryApplication(
|
|
|
889
895
|
|
|
890
896
|
export function createJevRuntime(deps: JevRuntimeDeps = {}) {
|
|
891
897
|
return function jevRuntime(pi: ExtensionAPI): void {
|
|
898
|
+
const platform = deps.platform ?? process.platform;
|
|
892
899
|
/** toolCallId โ spawn๋ task ๋ฉํ. pre-dispatch ์ค๋ณต ํ์ ์ ๊ธฐ์กด maker ๋ชฉ๋ก. */
|
|
893
900
|
const liveMakers = new Map<string, SpawnedTaskMeta[]>();
|
|
894
901
|
/** jobId โ {callId, taskIndex}. settle ์ ํด๋น child๋ง liveMakers์์ ๋ซ๋๋ค. */
|
|
@@ -1903,7 +1910,7 @@ export function createJevRuntime(deps: JevRuntimeDeps = {}) {
|
|
|
1903
1910
|
const inputChanged = serializeInput(event.input) !== failure.inputSerialized;
|
|
1904
1911
|
const observation = failure.observation;
|
|
1905
1912
|
const nextAction = failure.category === "windows-shell"
|
|
1906
|
-
?
|
|
1913
|
+
? (platform === "win32" ? WINDOWS_SHELL_NEXT_ACTION : POSIX_SHELL_NEXT_ACTION)
|
|
1907
1914
|
: observation.cancelled && !observation.deterministicExitObserved
|
|
1908
1915
|
? "์ทจ์ ๊ทผ๊ฑฐ ์์: ์คํ ๊ฒฐ๊ณผ ํ์ ๋๋ ๋ค์ ํ ๋ณ์ ํ์ธ. ์ฐ์ถ๋ฌผยท๋ก๊ทธยทํ๋ก์ธ์ค ์์กด ์ค ํ๋๋ฅผ ์๋ก ํ์ธํ ๋ค ๊ฒฐ์ ํ๋ค. stdout ์นจ๋ฌตยท๋ฎ์ CPUยทelapsed๋ง์ผ๋ก stall์ ํ์ ํ์ง ์๋๋ค."
|
|
1909
1916
|
: RETRY_CATEGORY_NEXT_ACTION[failure.category]
|
|
@@ -2166,7 +2173,7 @@ export function createJevRuntime(deps: JevRuntimeDeps = {}) {
|
|
|
2166
2173
|
if (!EXPLORATION_TOOLS[event.toolName]) {
|
|
2167
2174
|
pendingFailures.set(event.toolName, {
|
|
2168
2175
|
inputSerialized: serializeInput(event.input),
|
|
2169
|
-
category: classifyError(event.content, event.input),
|
|
2176
|
+
category: classifyError(event.content, event.input, platform),
|
|
2170
2177
|
interveningTools: [],
|
|
2171
2178
|
observation: readFailureObservation(event.details, event.content),
|
|
2172
2179
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!-- source-fingerprint:
|
|
1
|
+
<!-- source-fingerprint: 8d31e15589e1b276 -->
|
|
2
2
|
# Global Rules
|
|
3
3
|
|
|
4
4
|
(Model-facing English copy of the Korean source `RULES.md`.)
|
|
@@ -13,7 +13,9 @@
|
|
|
13
13
|
- Do not repeat the same action under the same conditions. Diagnosis that narrows the cause from observation and changes the next action accordingly is not blind retrying; the same error string alone does not make it the same attempt. If after the first failure there is neither an action to change nor a safe path forward, do not confirm the same failure a second time โ stop there and report the cause evidence, what was tried, and the remaining blocker.
|
|
14
14
|
- Work solvable with tools, the repository, and the current context is carried to completion without asking for confirmation or stopping midway. Exception: get user approval before deletion, deployment, incurring cost, or breaking compatibility.
|
|
15
15
|
- Before installing/registering MCP servers or changing their authentication/permissions, explain the target and scope and get user approval. After approval, the agent carries out the supported installation, configuration, connection, and verification. Do not reinterpret "user approval required" as "the user must execute it manually." Hand over only steps requiring the person, such as personal login, credential entry, or interactive provider safety checks/consent. JEV recommendations or relevance judgments never substitute for user approval.
|
|
16
|
-
-
|
|
16
|
+
- Host OS system changes (user, 2026-10-06): never touch kernel or filter drivers, the `Start` value of boot/System-start services, the network stack, firewall or security/banking-security software, boot configuration, or system registry keys as a diagnostic "disable it and see". When evidence says one must change, first explain the target, current value, new value, expected impact (possible network loss or boot failure), and how to revert, and get user approval for that exact change. "Please allow the UAC prompt" is not an approval request, and allowing UAC is not approval. Consider the program's supported uninstall or settings before disabling anything, and narrow the cause with read-only queries (`reg query`, `sc query`) first.
|
|
17
|
+
- Deploy confirmation (user, 2026-09-26, 2026-09-29 and 2026-09-30): the home PC (hostname `KYS`) and the office PC (its hostname is in the private deploy table) follow the same confirmation procedure; only the execution step differs for KYS (see "KYS deploy" below). Once that PC's CUELO session has verified a source change and committed and pushed it, watch that commit's GitHub CI until it finishes, report the result, and ask whether to deploy. On the office PC, after the user approves, run `Tools/CUELO_Setup/deploy-live.ps1` and `Tools/OMP_Global_Config/verify.ps1 -StrictRuntime` for that same revision (`Tools/CUELO_Setup/setup.ps1` is the full app installer, not this step). The deploy transaction applies the mirror profile with `Tools/OMP_Global_Config/setup.ps1 -ProfileOnly` before starting the new server, then checks that the new server's `/api/models` role selectors match the mirror `config.yml` `modelRoles` and records it in the receipt `profile`, so do not run ProfileOnly or `CUELO-Restart` separately after a deploy. If the roles differ or could not be observed, deploy-live exits 3 without rolling back; restart as its guidance says and check `/api/models` again. An in-session deploy returns once the worker accepts, so after resuming check yourself that the transaction receipt's `profile.modelRoles.matched` is `true`. If only the profile changed without a deploy, restart the server after ProfileOnly and do the same role check. The live server reads Settings once at startup; file changes or a touch do not reload it. Check the PC with `hostname` first. Do not add automatic deployment such as a scheduled task. Deleting stages or rollbacks, deploying to any PC other than these two, updating the CLI, and anything that incurs cost still need separate approval.
|
|
18
|
+
- KYS deploy (user, 2026-10-07): the home PC runs a single WSL CUELO in `Ubuntu-24.04`. Instead of the Windows steps above, announce the restart and run, inside WSL, `systemd-run --user --unit=cuelo-update-$(date +%s) --collect --setenv=WSL_DISTRO_NAME=Ubuntu-24.04 bash ~/cuelo-run/Tools/CUELO_Setup/wsl/update.sh <revision>` (from a Windows session, through `wsl.exe -d Ubuntu-24.04 --exec bash -lc 'โฆ'`). The script owns the session drain, the build, the WSL profile update, the restart and the wait-screen return. Never run `Tools/CUELO_Setup/deploy-live.ps1` or the full app `setup.ps1` on KYS: they reinstall the removed Windows app. `verify.ps1 -StrictRuntime` and `setup.ps1 -ProfileOnly` look at the Windows profile and runtime, so they are not evidence for a KYS deploy. It is done when the newest `~/.omp/wsl-update/*.log` ends with `READY <revision>`, `wsl\launch.ps1 -Status` reports `matched: true`, `node install.mjs health` is 4/4, and the `/api/models?cwd=<a session cwd>` role selectors match `modelRoles` in the WSL `~/.omp/agent/config.yml` (without `cwd` the route answers 403). Exit 2 (rolled back) or 3 (rollback failed) is a failed deploy: report it. The full procedure and its traps are in `Tools/CUELO_Setup/WSL-SETUP.md`, section ใ์ด์ใ.
|
|
17
19
|
- CI watching (user, 2026-09-28 and 2026-10-03): when watching a commit's CI, name the workflow you wait on (`gh run list --workflow <name>` or similar) and report the moment that run finishes. Never use "every run for this SHA is completed" as the condition: a release/deploy run triggered by CI success (`workflow_run`) appears seconds later on the same SHA and holds back the CI report. Watch such follow-on runs separately after reporting. Watch with `gh run watch <id> --exit-status` or a direct `gh run list` in `bash`; never write a polling loop that calls `gh` as a subprocess inside the `eval` kernel. On 2026-10-03 such a loop read empty output as "no run yet" and missed a finished CI for over 20 minutes. Any hand-written poll must fail at once on empty output or a nonzero exit. Public-mirror CI runs carry a different headSha than the source commit, so find them by run title.
|
|
18
20
|
- Narrow implementation uncertainty using explicit requirements and approved contracts, actual callers and data flow, test/reproduction results, and current behavior and docs. Once evidence settles the direction, proceed and record the basis; do not ask for confirmation on every minor implementation choice. Tests, docs, and current behavior are not automatically right; when they conflict with the requirements, check the actual behavior. Escalate to the user only items that change product meaning and cannot be settled by evidence, or that lack authority or external approval; keep doing independently allowed work even if that part is blocked.
|
|
19
21
|
- When a normal implementation choice still needs the user and you ask it with `ask`, give it a valid `recommended` and `autoSelectRecommended: true` so it proceeds with the recommendation after 2 minutes without an answer. Never enable auto-selection for deletion, deployment, cost, account, permission, provider safety, or other high-impact confirmations; wait for the answer. A timed-out auto-selection is not user approval, so never use it as the basis for an action that needs approval.
|