cuelo 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -0
- package/.next/app-path-routes-manifest.json +72 -0
- package/.next/build-manifest.json +20 -0
- package/.next/diagnostics/build-diagnostics.json +6 -0
- package/.next/diagnostics/framework.json +1 -0
- package/.next/export-marker.json +6 -0
- package/.next/images-manifest.json +68 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +138 -0
- package/.next/react-loadable-manifest.json +2370 -0
- package/.next/required-server-files.js +350 -0
- package/.next/required-server-files.json +350 -0
- package/.next/routes-manifest.json +537 -0
- package/.next/server/app/_global-error/page.js +32 -0
- package/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error.html +1 -0
- package/.next/server/app/_global-error.meta +16 -0
- package/.next/server/app/_global-error.rsc +14 -0
- package/.next/server/app/_global-error.segments/_full.segment.rsc +14 -0
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_index.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/.next/server/app/_not-found/page.js +2 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_not-found.html +1 -0
- package/.next/server/app/_not-found.meta +16 -0
- package/.next/server/app/_not-found.rsc +18 -0
- package/.next/server/app/_not-found.segments/_full.segment.rsc +18 -0
- package/.next/server/app/_not-found.segments/_head.segment.rsc +6 -0
- package/.next/server/app/_not-found.segments/_index.segment.rsc +7 -0
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +5 -0
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +3 -0
- package/.next/server/app/api/agent/[id]/account/route.js +1 -0
- package/.next/server/app/api/agent/[id]/account/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/[id]/account/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -0
- package/.next/server/app/api/agent/[id]/bash-output/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/[id]/bash-output/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/agent/[id]/events/route.js +3 -0
- package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/[id]/events/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/agent/[id]/route.js +1 -0
- package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/agent/new/route.js +1 -0
- package/.next/server/app/api/agent/new/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/new/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/agent/running/route.js +1 -0
- package/.next/server/app/api/agent/running/route.js.nft.json +1 -0
- package/.next/server/app/api/agent/running/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/all-providers/route.js +1 -0
- package/.next/server/app/api/auth/all-providers/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/all-providers/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -0
- package/.next/server/app/api/auth/api-key/[provider]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/api-key/[provider]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/login/[provider]/route.js +3 -0
- package/.next/server/app/api/auth/login/[provider]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/login/[provider]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/logout/[provider]/route.js +1 -0
- package/.next/server/app/api/auth/logout/[provider]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/logout/[provider]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/providers/route.js +1 -0
- package/.next/server/app/api/auth/providers/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/providers/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/cwd/browse/route.js +1 -0
- package/.next/server/app/api/cwd/browse/route.js.nft.json +1 -0
- package/.next/server/app/api/cwd/browse/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/cwd/validate/route.js +1 -0
- package/.next/server/app/api/cwd/validate/route.js.nft.json +1 -0
- package/.next/server/app/api/cwd/validate/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/default-cwd/route.js +1 -0
- package/.next/server/app/api/default-cwd/route.js.nft.json +1 -0
- package/.next/server/app/api/default-cwd/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/display-settings/route.js +1 -0
- package/.next/server/app/api/display-settings/route.js.nft.json +1 -0
- package/.next/server/app/api/display-settings/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/document-text/route.js +4 -0
- package/.next/server/app/api/document-text/route.js.nft.json +1 -0
- package/.next/server/app/api/document-text/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/experiments/route.js +1 -0
- package/.next/server/app/api/experiments/route.js.nft.json +1 -0
- package/.next/server/app/api/experiments/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/file-index/route.js +1 -0
- package/.next/server/app/api/file-index/route.js.nft.json +1 -0
- package/.next/server/app/api/file-index/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/files/[...path]/route.js +49 -0
- package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -0
- package/.next/server/app/api/files/[...path]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/git/diff/route.js +6 -0
- package/.next/server/app/api/git/diff/route.js.nft.json +1 -0
- package/.next/server/app/api/git/diff/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/git/status/route.js +6 -0
- package/.next/server/app/api/git/status/route.js.nft.json +1 -0
- package/.next/server/app/api/git/status/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/gpt6/handles/route.js +1 -0
- package/.next/server/app/api/gpt6/handles/route.js.nft.json +1 -0
- package/.next/server/app/api/gpt6/handles/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/gpt6/mcp/route.js +2 -0
- package/.next/server/app/api/gpt6/mcp/route.js.nft.json +1 -0
- package/.next/server/app/api/gpt6/mcp/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/gpt6/reply/route.js +1 -0
- package/.next/server/app/api/gpt6/reply/route.js.nft.json +1 -0
- package/.next/server/app/api/gpt6/reply/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/gpt6/token/route.js +1 -0
- package/.next/server/app/api/gpt6/token/route.js.nft.json +1 -0
- package/.next/server/app/api/gpt6/token/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/gpt6/web6-session/route.js +1 -0
- package/.next/server/app/api/gpt6/web6-session/route.js.nft.json +1 -0
- package/.next/server/app/api/gpt6/web6-session/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/home/route.js +1 -0
- package/.next/server/app/api/home/route.js.nft.json +1 -0
- package/.next/server/app/api/home/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/live/call/[callId]/route.js +1 -0
- package/.next/server/app/api/live/call/[callId]/route.js.nft.json +1 -0
- package/.next/server/app/api/live/call/[callId]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/live/events/route.js +3 -0
- package/.next/server/app/api/live/events/route.js.nft.json +1 -0
- package/.next/server/app/api/live/events/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/live/offer/route.js +1 -0
- package/.next/server/app/api/live/offer/route.js.nft.json +1 -0
- package/.next/server/app/api/live/offer/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/live/voices/route.js +1 -0
- package/.next/server/app/api/live/voices/route.js.nft.json +1 -0
- package/.next/server/app/api/live/voices/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/route.js +2 -0
- package/.next/server/app/api/mcp/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/model-roles/route.js +1 -0
- package/.next/server/app/api/model-roles/route.js.nft.json +1 -0
- package/.next/server/app/api/model-roles/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models/route.js +1 -0
- package/.next/server/app/api/models/route.js.nft.json +1 -0
- package/.next/server/app/api/models/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models-config/catalog/route.js +1 -0
- package/.next/server/app/api/models-config/catalog/route.js.nft.json +1 -0
- package/.next/server/app/api/models-config/catalog/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models-config/discover/route.js +1 -0
- package/.next/server/app/api/models-config/discover/route.js.nft.json +1 -0
- package/.next/server/app/api/models-config/discover/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models-config/route.js +25 -0
- package/.next/server/app/api/models-config/route.js.nft.json +1 -0
- package/.next/server/app/api/models-config/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models-config/test/route.js +1 -0
- package/.next/server/app/api/models-config/test/route.js.nft.json +1 -0
- package/.next/server/app/api/models-config/test/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/plugins/route.js +1 -0
- package/.next/server/app/api/plugins/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/project-trust/route.js +1 -0
- package/.next/server/app/api/project-trust/route.js.nft.json +1 -0
- package/.next/server/app/api/project-trust/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/projects/route.js +2 -0
- package/.next/server/app/api/projects/route.js.nft.json +1 -0
- package/.next/server/app/api/projects/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/runs/[runId]/route.js +1 -0
- package/.next/server/app/api/runs/[runId]/route.js.nft.json +1 -0
- package/.next/server/app/api/runs/[runId]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/runs/route.js +1 -0
- package/.next/server/app/api/runs/route.js.nft.json +1 -0
- package/.next/server/app/api/runs/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -0
- package/.next/server/app/api/sessions/[id]/auto-name/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/auto-name/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -0
- package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/context/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -0
- package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/export/route.js +1 -0
- package/.next/server/app/api/sessions/[id]/export/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/export/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/route.js +1 -0
- package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/[id]/state/route.js +1 -0
- package/.next/server/app/api/sessions/[id]/state/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/state/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sessions/route.js +1 -0
- package/.next/server/app/api/sessions/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/settings/route.js +1 -0
- package/.next/server/app/api/settings/route.js.nft.json +1 -0
- package/.next/server/app/api/settings/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sidecars/[service]/[...path]/route.js +1 -0
- package/.next/server/app/api/sidecars/[service]/[...path]/route.js.nft.json +1 -0
- package/.next/server/app/api/sidecars/[service]/[...path]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/check/route.js +1 -0
- package/.next/server/app/api/skills/check/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/check/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/install/route.js +2 -0
- package/.next/server/app/api/skills/install/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/route.js +6 -0
- package/.next/server/app/api/skills/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/search/route.js +1 -0
- package/.next/server/app/api/skills/search/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/search/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/skills/update/route.js +1 -0
- package/.next/server/app/api/skills/update/route.js.nft.json +1 -0
- package/.next/server/app/api/skills/update/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/theme/route.js +1 -0
- package/.next/server/app/api/theme/route.js.nft.json +1 -0
- package/.next/server/app/api/theme/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/update-maintenance/route.js +556 -0
- package/.next/server/app/api/update-maintenance/route.js.nft.json +1 -0
- package/.next/server/app/api/update-maintenance/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/updates/route.js +1 -0
- package/.next/server/app/api/updates/route.js.nft.json +1 -0
- package/.next/server/app/api/updates/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/web-access/recovery/route.js +1 -0
- package/.next/server/app/api/web-access/recovery/route.js.nft.json +1 -0
- package/.next/server/app/api/web-access/recovery/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/web-access/route.js +1 -0
- package/.next/server/app/api/web-access/route.js.nft.json +1 -0
- package/.next/server/app/api/web-access/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/web6/consults/route.js +1 -0
- package/.next/server/app/api/web6/consults/route.js.nft.json +1 -0
- package/.next/server/app/api/web6/consults/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/worktrees/route.js +1 -0
- package/.next/server/app/api/worktrees/route.js.nft.json +1 -0
- package/.next/server/app/api/worktrees/route_client-reference-manifest.js +1 -0
- package/.next/server/app/favicon.ico/route.js +1 -0
- package/.next/server/app/favicon.ico/route.js.nft.json +1 -0
- package/.next/server/app/favicon.ico.body +0 -0
- package/.next/server/app/favicon.ico.meta +1 -0
- package/.next/server/app/index.html +1 -0
- package/.next/server/app/index.meta +14 -0
- package/.next/server/app/index.rsc +20 -0
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +9 -0
- package/.next/server/app/index.segments/_full.segment.rsc +20 -0
- package/.next/server/app/index.segments/_head.segment.rsc +6 -0
- package/.next/server/app/index.segments/_index.segment.rsc +7 -0
- package/.next/server/app/index.segments/_tree.segment.rsc +5 -0
- package/.next/server/app/manifest.webmanifest/route.js +16 -0
- package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -0
- package/.next/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -0
- package/.next/server/app/page.js +22 -0
- package/.next/server/app/page.js.nft.json +1 -0
- package/.next/server/app/page_client-reference-manifest.js +1 -0
- package/.next/server/app/recover/page.js +2 -0
- package/.next/server/app/recover/page.js.nft.json +1 -0
- package/.next/server/app/recover/page_client-reference-manifest.js +1 -0
- package/.next/server/app/recover.html +1 -0
- package/.next/server/app/recover.meta +15 -0
- package/.next/server/app/recover.rsc +23 -0
- package/.next/server/app/recover.segments/_full.segment.rsc +23 -0
- package/.next/server/app/recover.segments/_head.segment.rsc +6 -0
- package/.next/server/app/recover.segments/_index.segment.rsc +7 -0
- package/.next/server/app/recover.segments/_tree.segment.rsc +4 -0
- package/.next/server/app/recover.segments/recover/__PAGE__.segment.rsc +10 -0
- package/.next/server/app/recover.segments/recover.segment.rsc +5 -0
- package/.next/server/app-paths-manifest.json +72 -0
- package/.next/server/chunks/11.js +1 -0
- package/.next/server/chunks/1286.js +1 -0
- package/.next/server/chunks/1412.js +38 -0
- package/.next/server/chunks/1517.js +19 -0
- package/.next/server/chunks/1605.js +1 -0
- package/.next/server/chunks/169.js +1 -0
- package/.next/server/chunks/18.js +86 -0
- package/.next/server/chunks/1813.js +1 -0
- package/.next/server/chunks/2022.js +1 -0
- package/.next/server/chunks/2156.js +1 -0
- package/.next/server/chunks/2157.js +1 -0
- package/.next/server/chunks/2325.js +82 -0
- package/.next/server/chunks/2651.js +2 -0
- package/.next/server/chunks/2838.js +1 -0
- package/.next/server/chunks/2897.js +79 -0
- package/.next/server/chunks/2958.js +90 -0
- package/.next/server/chunks/319.js +45 -0
- package/.next/server/chunks/3227.js +1 -0
- package/.next/server/chunks/3229.js +2 -0
- package/.next/server/chunks/3266.js +1 -0
- package/.next/server/chunks/3379.js +1 -0
- package/.next/server/chunks/3428.js +32 -0
- package/.next/server/chunks/3479.js +1 -0
- package/.next/server/chunks/367.js +115 -0
- package/.next/server/chunks/3698.js +93 -0
- package/.next/server/chunks/3709.js +148 -0
- package/.next/server/chunks/3759.js +34 -0
- package/.next/server/chunks/4107.js +62 -0
- package/.next/server/chunks/4741.js +20 -0
- package/.next/server/chunks/4755.js +153 -0
- package/.next/server/chunks/5002.js +1 -0
- package/.next/server/chunks/5112.js +1 -0
- package/.next/server/chunks/5289.js +8 -0
- package/.next/server/chunks/5318.js +1 -0
- package/.next/server/chunks/5452.js +23 -0
- package/.next/server/chunks/5453.js +1 -0
- package/.next/server/chunks/5582.js +20 -0
- package/.next/server/chunks/5749.js +27 -0
- package/.next/server/chunks/5782.js +36 -0
- package/.next/server/chunks/6163.js +104 -0
- package/.next/server/chunks/6169.js +64 -0
- package/.next/server/chunks/6208.js +172 -0
- package/.next/server/chunks/6399.js +24 -0
- package/.next/server/chunks/6429.js +10 -0
- package/.next/server/chunks/6496.js +1 -0
- package/.next/server/chunks/6775.js +6 -0
- package/.next/server/chunks/6823.js +215 -0
- package/.next/server/chunks/6888.js +1 -0
- package/.next/server/chunks/7245.js +77 -0
- package/.next/server/chunks/7307.js +1 -0
- package/.next/server/chunks/7372.js +287 -0
- package/.next/server/chunks/7384.js +226 -0
- package/.next/server/chunks/7516.js +1 -0
- package/.next/server/chunks/7531.js +24 -0
- package/.next/server/chunks/7591.js +1 -0
- package/.next/server/chunks/7755.js +138 -0
- package/.next/server/chunks/7916.js +1 -0
- package/.next/server/chunks/8078.js +94 -0
- package/.next/server/chunks/8253.js +41 -0
- package/.next/server/chunks/8635.js +1 -0
- package/.next/server/chunks/8688.js +1 -0
- package/.next/server/chunks/877.js +1 -0
- package/.next/server/chunks/8872.js +1 -0
- package/.next/server/chunks/9006.js +1 -0
- package/.next/server/chunks/9018.js +1 -0
- package/.next/server/chunks/9047.js +1 -0
- package/.next/server/chunks/9108.js +1 -0
- package/.next/server/chunks/9280.js +256 -0
- package/.next/server/chunks/9419.js +1 -0
- package/.next/server/chunks/9430.js +1 -0
- package/.next/server/chunks/9586.js +1 -0
- package/.next/server/chunks/9775.js +1 -0
- package/.next/server/chunks/9910.js +1 -0
- package/.next/server/chunks/992.js +1 -0
- package/.next/server/chunks/9926.js +1 -0
- package/.next/server/functions-config-manifest.json +25 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/middleware.js +45 -0
- package/.next/server/middleware.js.nft.json +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +1 -0
- package/.next/server/pages/404.html +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages-manifest.json +4 -0
- package/.next/server/prefetch-hints.json +1 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +1 -0
- package/.next/server/webpack-runtime.js +1 -0
- package/.next/static/MvC-CM1U-UMEzpaGIsCuQ/_buildManifest.js +1 -0
- package/.next/static/MvC-CM1U-UMEzpaGIsCuQ/_ssgManifest.js +1 -0
- package/.next/static/chunks/1213.e5c6e70a79b5f7e6.js +24 -0
- package/.next/static/chunks/1519.2f596e5f5af9ef57.js +62 -0
- package/.next/static/chunks/1966.b8f83f7ba376c962.js +1 -0
- package/.next/static/chunks/1974.885c9a133b86d8a4.js +32 -0
- package/.next/static/chunks/2280.6a7f540787704698.js +1 -0
- package/.next/static/chunks/2521.7f745f50d30076e7.js +77 -0
- package/.next/static/chunks/2585.4d6aa847c780c666.js +1 -0
- package/.next/static/chunks/2589.1aad68c09021b1ac.js +1 -0
- package/.next/static/chunks/2600.45ba17a0f756fc31.js +1 -0
- package/.next/static/chunks/2619.9aac8983f30c7c8a.js +1 -0
- package/.next/static/chunks/26d302b2.b77b53a34ca944aa.js +122 -0
- package/.next/static/chunks/2768.305914f7900745b6.js +1 -0
- package/.next/static/chunks/3016.406e568aa95ff867.js +1 -0
- package/.next/static/chunks/3022.972047558a20553a.js +172 -0
- package/.next/static/chunks/3064.3a2a1e7cd4fdca5f.js +1 -0
- package/.next/static/chunks/3174.03fbed7b7d7a8256.js +1 -0
- package/.next/static/chunks/3189.b048866768087750.js +1 -0
- package/.next/static/chunks/3217.1a053843c58b70b5.js +24 -0
- package/.next/static/chunks/3308.34ea31e24088c85f.js +74 -0
- package/.next/static/chunks/331.fc5d78e1e91daf43.js +1 -0
- package/.next/static/chunks/3510.5d4d1c79533e080c.js +1 -0
- package/.next/static/chunks/364.ce5400a9dd70b9dc.js +1 -0
- package/.next/static/chunks/370.57cfa27da8567918.js +1 -0
- package/.next/static/chunks/3789.c418b69121761983.js +1 -0
- package/.next/static/chunks/3794-1b03b52e3112452e.js +32 -0
- package/.next/static/chunks/3831.25ae62d10dccc27a.js +1 -0
- package/.next/static/chunks/3899.3f761f7e3a944e8c.js +1 -0
- package/.next/static/chunks/3a7aa434.93dbd20997cfd24f.js +82 -0
- package/.next/static/chunks/4020.3cc19c463c49f969.js +23 -0
- package/.next/static/chunks/4035.0acc428926d5c8dd.js +1 -0
- package/.next/static/chunks/405.0902e4f6eb7bd9a2.js +215 -0
- package/.next/static/chunks/4159.49ae537ff687bdc6.js +138 -0
- package/.next/static/chunks/4208.384b381ca2757643.js +287 -0
- package/.next/static/chunks/4263.ffa8d9bd8a0faaae.js +1 -0
- package/.next/static/chunks/4592.d0f37bc216b9d988.js +93 -0
- package/.next/static/chunks/4799.0dc7aa21bff2fd2a.js +1 -0
- package/.next/static/chunks/4bd1b696-e356ca5ba0218e27.js +1 -0
- package/.next/static/chunks/514.b804c51b26f5e126.js +1 -0
- package/.next/static/chunks/5270.28592864d38e881c.js +1 -0
- package/.next/static/chunks/52733464.3870f99cc446f9ff.js +1 -0
- package/.next/static/chunks/5312.4828d88ccc66f057.js +41 -0
- package/.next/static/chunks/5354.b559c717a607dc5c.js +1 -0
- package/.next/static/chunks/5413.1f8eeba1c502f3e9.js +34 -0
- package/.next/static/chunks/5448.d3972d9fb464b54f.js +38 -0
- package/.next/static/chunks/587.d52737d7288c11b4.js +1 -0
- package/.next/static/chunks/5909.9e37f7b495b11995.js +115 -0
- package/.next/static/chunks/5949.5504b3545fcc3d34.js +104 -0
- package/.next/static/chunks/6361.893d04ac34fa1b49.js +148 -0
- package/.next/static/chunks/6379-7da431a165ac5d41.js +7 -0
- package/.next/static/chunks/6774.8cd53427dbf32cac.js +86 -0
- package/.next/static/chunks/6968.b80277c724dbc96e.js +1 -0
- package/.next/static/chunks/7113.4b9e7ea870aa300a.js +8 -0
- package/.next/static/chunks/7236.55a9728d35f5b8a6.js +1 -0
- package/.next/static/chunks/7390.dde9b5bc2f6e24b8.js +1 -0
- package/.next/static/chunks/7806.a903780fcfa3a30e.js +1 -0
- package/.next/static/chunks/7997.be57e92e583fe635.js +1 -0
- package/.next/static/chunks/8216.64a72d4d35ea7be0.js +1 -0
- package/.next/static/chunks/830.5d5274d7ad1cb58e.js +1 -0
- package/.next/static/chunks/8378.fa91de3406f554c9.js +226 -0
- package/.next/static/chunks/8501.cd06aa1b0c7e1c6a.js +79 -0
- package/.next/static/chunks/8663.6ec5792fb4952e45.js +27 -0
- package/.next/static/chunks/872.96937e758ddce860.js +1 -0
- package/.next/static/chunks/8803.75bde095fe3613f5.js +1 -0
- package/.next/static/chunks/8863.72f5dbb820a0e4c3.js +1 -0
- package/.next/static/chunks/889.ff9934ce4324e448.js +90 -0
- package/.next/static/chunks/90542734.b88b1467ff8248c7.js +1 -0
- package/.next/static/chunks/9379.5bc9c9343ec5a16c.js +64 -0
- package/.next/static/chunks/9389.906fe7aa9cd6a170.js +1 -0
- package/.next/static/chunks/9472.8818ee52cfa931a4.js +94 -0
- package/.next/static/chunks/966.d6babbf8119162cc.js +1 -0
- package/.next/static/chunks/9884.839b23ae397c150e.js +36 -0
- package/.next/static/chunks/app/_global-error/page-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/_not-found/page-d3f2ac234e6fd3b6.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/account/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/bash-output/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/events/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/agent/new/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/cwd/browse/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/cwd/validate/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/display-settings/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/document-text/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/experiments/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/file-index/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/git/diff/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/git/status/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/gpt6/handles/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/gpt6/mcp/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/gpt6/reply/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/gpt6/token/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/gpt6/web6-session/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/home/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/live/call/[callId]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/live/events/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/live/offer/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/live/voices/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/mcp/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/model-roles/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/models/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/models-config/catalog/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/models-config/discover/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/project-trust/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/projects/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/runs/[runId]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/runs/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/export/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/state/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/settings/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/skills/check/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/skills/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/skills/update/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/theme/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/update-maintenance/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/updates/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/web-access/recovery/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/web-access/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/web6/consults/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/api/worktrees/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/layout-95725ad1abf3cb75.js +1 -0
- package/.next/static/chunks/app/manifest.webmanifest/route-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/app/page-26a4df181c1d562c.js +15 -0
- package/.next/static/chunks/app/recover/page-770a1de1ff4ded56.js +1 -0
- package/.next/static/chunks/c16f53c3-7916593d74747bde.js +1 -0
- package/.next/static/chunks/d3ac728e-7964f816a1ca64e5.js +1 -0
- package/.next/static/chunks/e413bedd.3a12a8cb02e28fdf.js +153 -0
- package/.next/static/chunks/ea233666.f00b64a7d99b4950.js +62 -0
- package/.next/static/chunks/framework-32a7466d5cae4a81.js +1 -0
- package/.next/static/chunks/main-50999e6ee5708e08.js +5 -0
- package/.next/static/chunks/main-app-0dc38ffe862cd588.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/global-error-070571d2fa580e7d.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-a9c51a9353807009.js +1 -0
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next/static/chunks/webpack-4094d78ef0b4c382.js +1 -0
- package/.next/static/css/2f46e0db0d4a3aed.css +1 -0
- package/.next/static/css/792a9d55c2fd2c0c.css +1 -0
- package/.next/static/css/92023589aa455863.css +1 -0
- package/.next/static/css/bb6b220f400250d8.css +1 -0
- package/.next/static/css/bc8f2da9192ea16d.css +1 -0
- package/.next/static/media/KaTeX_AMS-Regular.1608a09b.woff +0 -0
- package/.next/static/media/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
- package/.next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
- package/.next/static/media/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
- package/.next/static/media/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
- package/.next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
- package/.next/static/media/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
- package/.next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
- package/.next/static/media/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
- package/.next/static/media/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
- package/.next/static/media/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
- package/.next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
- package/.next/static/media/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
- package/.next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
- package/.next/static/media/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
- package/.next/static/media/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
- package/.next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
- package/.next/static/media/KaTeX_Main-Bold.d181c465.woff +0 -0
- package/.next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
- package/.next/static/media/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
- package/.next/static/media/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
- package/.next/static/media/KaTeX_Main-Italic.47373d1e.ttf +0 -0
- package/.next/static/media/KaTeX_Main-Italic.8916142b.woff2 +0 -0
- package/.next/static/media/KaTeX_Main-Italic.9024d815.woff +0 -0
- package/.next/static/media/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
- package/.next/static/media/KaTeX_Main-Regular.7f51fe03.woff +0 -0
- package/.next/static/media/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
- package/.next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
- package/.next/static/media/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
- package/.next/static/media/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
- package/.next/static/media/KaTeX_Math-Italic.5295ba48.woff +0 -0
- package/.next/static/media/KaTeX_Math-Italic.939bc644.ttf +0 -0
- package/.next/static/media/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
- package/.next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
- package/.next/static/media/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
- package/.next/static/media/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
- package/.next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
- package/.next/static/media/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
- package/.next/static/media/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
- package/.next/static/media/KaTeX_SansSerif-Regular.74048478.woff +0 -0
- package/.next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
- package/.next/static/media/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
- package/.next/static/media/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
- package/.next/static/media/KaTeX_Script-Regular.07505710.woff +0 -0
- package/.next/static/media/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
- package/.next/static/media/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
- package/.next/static/media/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
- package/.next/static/media/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
- package/.next/static/media/KaTeX_Size2-Regular.57727022.woff +0 -0
- package/.next/static/media/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
- package/.next/static/media/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
- package/.next/static/media/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
- package/.next/static/media/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
- package/.next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
- package/.next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
- package/.next/static/media/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
- package/.next/static/media/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
- package/.next/static/media/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
- package/.next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
- package/.next/static/media/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
- package/.next/trace +8 -0
- package/.next/trace-build +1 -0
- package/.next/types/app/api/agent/[id]/account/route.ts +351 -0
- package/.next/types/app/api/agent/[id]/bash-output/route.ts +351 -0
- package/.next/types/app/api/agent/[id]/events/route.ts +351 -0
- package/.next/types/app/api/agent/[id]/route.ts +351 -0
- package/.next/types/app/api/agent/new/route.ts +351 -0
- package/.next/types/app/api/agent/running/route.ts +351 -0
- package/.next/types/app/api/auth/all-providers/route.ts +351 -0
- package/.next/types/app/api/auth/api-key/[provider]/route.ts +351 -0
- package/.next/types/app/api/auth/login/[provider]/route.ts +351 -0
- package/.next/types/app/api/auth/logout/[provider]/route.ts +351 -0
- package/.next/types/app/api/auth/providers/route.ts +351 -0
- package/.next/types/app/api/cwd/browse/route.ts +351 -0
- package/.next/types/app/api/cwd/validate/route.ts +351 -0
- package/.next/types/app/api/default-cwd/route.ts +351 -0
- package/.next/types/app/api/display-settings/route.ts +351 -0
- package/.next/types/app/api/document-text/route.ts +351 -0
- package/.next/types/app/api/experiments/route.ts +351 -0
- package/.next/types/app/api/file-index/route.ts +351 -0
- package/.next/types/app/api/files/[...path]/route.ts +351 -0
- package/.next/types/app/api/git/diff/route.ts +351 -0
- package/.next/types/app/api/git/status/route.ts +351 -0
- package/.next/types/app/api/gpt6/handles/route.ts +351 -0
- package/.next/types/app/api/gpt6/mcp/route.ts +351 -0
- package/.next/types/app/api/gpt6/reply/route.ts +351 -0
- package/.next/types/app/api/gpt6/token/route.ts +351 -0
- package/.next/types/app/api/gpt6/web6-session/route.ts +351 -0
- package/.next/types/app/api/home/route.ts +351 -0
- package/.next/types/app/api/live/call/[callId]/route.ts +351 -0
- package/.next/types/app/api/live/events/route.ts +351 -0
- package/.next/types/app/api/live/offer/route.ts +351 -0
- package/.next/types/app/api/live/voices/route.ts +351 -0
- package/.next/types/app/api/mcp/route.ts +351 -0
- package/.next/types/app/api/model-roles/route.ts +351 -0
- package/.next/types/app/api/models/route.ts +351 -0
- package/.next/types/app/api/models-config/catalog/route.ts +351 -0
- package/.next/types/app/api/models-config/discover/route.ts +351 -0
- package/.next/types/app/api/models-config/route.ts +351 -0
- package/.next/types/app/api/models-config/test/route.ts +351 -0
- package/.next/types/app/api/plugins/route.ts +351 -0
- package/.next/types/app/api/project-trust/route.ts +351 -0
- package/.next/types/app/api/projects/route.ts +351 -0
- package/.next/types/app/api/runs/[runId]/route.ts +351 -0
- package/.next/types/app/api/runs/route.ts +351 -0
- package/.next/types/app/api/sessions/[id]/auto-name/route.ts +351 -0
- package/.next/types/app/api/sessions/[id]/context/route.ts +351 -0
- package/.next/types/app/api/sessions/[id]/entries/[entryId]/thinking/route.ts +351 -0
- package/.next/types/app/api/sessions/[id]/export/route.ts +351 -0
- package/.next/types/app/api/sessions/[id]/route.ts +351 -0
- package/.next/types/app/api/sessions/[id]/state/route.ts +351 -0
- package/.next/types/app/api/sessions/route.ts +351 -0
- package/.next/types/app/api/settings/route.ts +351 -0
- package/.next/types/app/api/sidecars/[service]/[...path]/route.ts +351 -0
- package/.next/types/app/api/skills/check/route.ts +351 -0
- package/.next/types/app/api/skills/install/route.ts +351 -0
- package/.next/types/app/api/skills/route.ts +351 -0
- package/.next/types/app/api/skills/search/route.ts +351 -0
- package/.next/types/app/api/skills/update/route.ts +351 -0
- package/.next/types/app/api/theme/route.ts +351 -0
- package/.next/types/app/api/update-maintenance/route.ts +351 -0
- package/.next/types/app/api/updates/route.ts +351 -0
- package/.next/types/app/api/web-access/recovery/route.ts +351 -0
- package/.next/types/app/api/web-access/route.ts +351 -0
- package/.next/types/app/api/web6/consults/route.ts +351 -0
- package/.next/types/app/api/worktrees/route.ts +351 -0
- package/.next/types/app/layout.ts +87 -0
- package/.next/types/app/page.ts +87 -0
- package/.next/types/app/recover/page.ts +87 -0
- package/.next/types/cache-life.d.ts +145 -0
- package/.next/types/package.json +1 -0
- package/.next/types/routes.d.ts +137 -0
- package/.next/types/validator.ts +655 -0
- package/LICENSE +22 -0
- package/README.md +174 -0
- package/Tools/CUELO_Setup/files/btw-server.js +343 -0
- package/Tools/CUELO_Setup/files/native-runtime-patch.js +349 -0
- package/Tools/CUELO_Setup/files/subagent-server.js +587 -0
- package/Tools/CUELO_Setup/files/usage-server.js +896 -0
- package/Tools/OMP_Global_Config/agent/AGENTS.md +122 -0
- package/Tools/OMP_Global_Config/agent/RULES.md +75 -0
- package/Tools/OMP_Global_Config/agent/WATCHDOG.md +55 -0
- package/Tools/OMP_Global_Config/agent/agents/maker.md +390 -0
- package/Tools/OMP_Global_Config/agent/extensions/character-voice.ts +718 -0
- package/Tools/OMP_Global_Config/agent/extensions/command-guard/index.ts +899 -0
- package/Tools/OMP_Global_Config/agent/extensions/command-guard/matcher.ts +1227 -0
- package/Tools/OMP_Global_Config/agent/extensions/command-guard/task-guard.ts +890 -0
- package/Tools/OMP_Global_Config/agent/extensions/jev-runtime.ts +1567 -0
- package/Tools/OMP_Global_Config/agent/extensions/lib/maker-routing.ts +1020 -0
- package/Tools/OMP_Global_Config/agent/extensions/lib/prepared-task.ts +204 -0
- package/Tools/OMP_Global_Config/agent/extensions/lib/routing-ledger.ts +289 -0
- package/Tools/OMP_Global_Config/agent/extensions/lib/task-progress.ts +492 -0
- package/Tools/OMP_Global_Config/agent/extensions/prompt-compact.ts +67 -0
- package/Tools/OMP_Global_Config/agent/extensions/steering-reply-gate.ts +92 -0
- package/Tools/OMP_Global_Config/agent/extensions/todo-nudge.ts +56 -0
- package/Tools/OMP_Global_Config/agent/extensions/turn-end-guard.ts +154 -0
- package/Tools/OMP_Global_Config/agent/prompt-copies/AGENTS.en.md +125 -0
- package/Tools/OMP_Global_Config/agent/prompt-copies/RULES.en.md +28 -0
- package/Tools/OMP_Global_Config/agent/rules/docs-handoff.md +36 -0
- package/Tools/OMP_Global_Config/agent/rules/frontend.md +63 -0
- package/Tools/OMP_Global_Config/agent/rules/harness-policy.json +1080 -0
- package/Tools/OMP_Global_Config/agent/rules/legacy-encoding.md +21 -0
- package/Tools/OMP_Global_Config/agent/rules/meta-harness.md +45 -0
- package/Tools/OMP_Global_Config/agent/rules/omp-harness.md +143 -0
- package/Tools/OMP_Global_Config/agent/rules/subagent.md +543 -0
- package/Tools/OMP_Global_Config/agent/rules/task-guard.md +54 -0
- package/Tools/OMP_Global_Config/agent/rules/verdict.md +183 -0
- package/Tools/OMP_Global_Config/agent/rules/web6-consult.md +84 -0
- package/Tools/OMP_Global_Config/agent/sop/_common.md +130 -0
- package/Tools/OMP_Global_Config/agent/sop/_writer.md +242 -0
- package/Tools/OMP_Global_Config/agent/sop/maker.md +9 -0
- package/Tools/OMP_Global_Config/agent/tools/git-finalizer/finalizer.ps1 +340 -0
- package/Tools/OMP_Global_Config/agent/tools/git-finalizer/index.ts +83 -0
- package/Tools/OMP_Global_Config/notices/orchestrate.md +26 -0
- package/Tools/OMP_Global_Config/notices/ultrathink.md +9 -0
- package/Tools/OMP_Global_Config/notices/workflow.md +16 -0
- package/Tools/OMP_Global_Config/patches/apply-core-patch.mjs +5005 -0
- package/Tools/OMP_Global_Config/patches/apply-notices.mjs +135 -0
- package/bin/cuelo-options.js +38 -0
- package/bin/cuelo.js +268 -0
- package/bin/password-prompt.js +100 -0
- package/bin/prepare-runtime.js +81 -0
- package/bin/runtime.js +134 -0
- package/bin/web-auth-store.d.ts +104 -0
- package/bin/web-auth-store.js +593 -0
- package/install.mjs +393 -0
- package/next.config.ts +96 -0
- package/package.json +134 -0
- package/public/audio/completion/isana/01.wav +0 -0
- package/public/audio/completion/isana/02.wav +0 -0
- package/public/audio/completion/isana/03.wav +0 -0
- package/public/audio/completion/isana/04.wav +0 -0
- package/public/audio/completion/isana/05.wav +0 -0
- package/public/audio/completion/isana/06.wav +0 -0
- package/public/audio/completion/isana/approval/01.wav +0 -0
- package/public/audio/completion/isana/approval/02.wav +0 -0
- package/public/audio/completion/isana/approval/03.wav +0 -0
- package/public/audio/completion/isana/choice/01.wav +0 -0
- package/public/audio/completion/isana/choice/02.wav +0 -0
- package/public/audio/completion/isana/choice/03.wav +0 -0
- package/public/audio/completion/isana/failed/01.wav +0 -0
- package/public/audio/completion/isana/failed/02.wav +0 -0
- package/public/audio/completion/isana/failed/03.wav +0 -0
- package/public/audio/completion/isana/working/01.wav +0 -0
- package/public/audio/completion/isana/working/02.wav +0 -0
- package/public/audio/completion/isana/working/03.wav +0 -0
- package/public/audio/completion/mio/01.wav +0 -0
- package/public/audio/completion/mio/02.wav +0 -0
- package/public/audio/completion/mio/03.wav +0 -0
- package/public/audio/completion/mio/04.wav +0 -0
- package/public/audio/completion/mio/05.wav +0 -0
- package/public/audio/completion/mio/06.wav +0 -0
- package/public/audio/completion/mio/approval/01.wav +0 -0
- package/public/audio/completion/mio/approval/02.wav +0 -0
- package/public/audio/completion/mio/approval/03.wav +0 -0
- package/public/audio/completion/mio/choice/01.wav +0 -0
- package/public/audio/completion/mio/choice/02.wav +0 -0
- package/public/audio/completion/mio/choice/03.wav +0 -0
- package/public/audio/completion/mio/failed/01.wav +0 -0
- package/public/audio/completion/mio/failed/02.wav +0 -0
- package/public/audio/completion/mio/failed/03.wav +0 -0
- package/public/audio/completion/mio/working/01.wav +0 -0
- package/public/audio/completion/mio/working/02.wav +0 -0
- package/public/audio/completion/mio/working/03.wav +0 -0
- package/public/audio/completion/nova/01.wav +0 -0
- package/public/audio/completion/nova/02.wav +0 -0
- package/public/audio/completion/nova/03.wav +0 -0
- package/public/audio/completion/nova/04.wav +0 -0
- package/public/audio/completion/nova/05.wav +0 -0
- package/public/audio/completion/nova/06.wav +0 -0
- package/public/audio/completion/nova/approval/01.wav +0 -0
- package/public/audio/completion/nova/approval/02.wav +0 -0
- package/public/audio/completion/nova/approval/03.wav +0 -0
- package/public/audio/completion/nova/choice/01.wav +0 -0
- package/public/audio/completion/nova/choice/02.wav +0 -0
- package/public/audio/completion/nova/choice/03.wav +0 -0
- package/public/audio/completion/nova/failed/01.wav +0 -0
- package/public/audio/completion/nova/failed/02.wav +0 -0
- package/public/audio/completion/nova/failed/03.wav +0 -0
- package/public/audio/completion/nova/working/01.wav +0 -0
- package/public/audio/completion/nova/working/02.wav +0 -0
- package/public/audio/completion/nova/working/03.wav +0 -0
- package/public/audio/completion/rin/01.wav +0 -0
- package/public/audio/completion/rin/02.wav +0 -0
- package/public/audio/completion/rin/03.wav +0 -0
- package/public/audio/completion/rin/04.wav +0 -0
- package/public/audio/completion/rin/05.wav +0 -0
- package/public/audio/completion/rin/06.wav +0 -0
- package/public/audio/completion/rin/approval/01.wav +0 -0
- package/public/audio/completion/rin/approval/02.wav +0 -0
- package/public/audio/completion/rin/approval/03.wav +0 -0
- package/public/audio/completion/rin/choice/01.wav +0 -0
- package/public/audio/completion/rin/choice/02.wav +0 -0
- package/public/audio/completion/rin/choice/03.wav +0 -0
- package/public/audio/completion/rin/failed/01.wav +0 -0
- package/public/audio/completion/rin/failed/02.wav +0 -0
- package/public/audio/completion/rin/failed/03.wav +0 -0
- package/public/audio/completion/rin/working/01.wav +0 -0
- package/public/audio/completion/rin/working/02.wav +0 -0
- package/public/audio/completion/rin/working/03.wav +0 -0
- package/public/audio/completion/shion/01.wav +0 -0
- package/public/audio/completion/shion/02.wav +0 -0
- package/public/audio/completion/shion/03.wav +0 -0
- package/public/audio/completion/shion/04.wav +0 -0
- package/public/audio/completion/shion/05.wav +0 -0
- package/public/audio/completion/shion/06.wav +0 -0
- package/public/audio/completion/shion/approval/01.wav +0 -0
- package/public/audio/completion/shion/approval/02.wav +0 -0
- package/public/audio/completion/shion/approval/03.wav +0 -0
- package/public/audio/completion/shion/choice/01.wav +0 -0
- package/public/audio/completion/shion/choice/02.wav +0 -0
- package/public/audio/completion/shion/choice/03.wav +0 -0
- package/public/audio/completion/shion/failed/01.wav +0 -0
- package/public/audio/completion/shion/failed/02.wav +0 -0
- package/public/audio/completion/shion/failed/03.wav +0 -0
- package/public/audio/completion/shion/working/01.wav +0 -0
- package/public/audio/completion/shion/working/02.wav +0 -0
- package/public/audio/completion/shion/working/03.wav +0 -0
- package/public/audio/completion/voices.json +1195 -0
- package/public/audio/completion/yuki/01.wav +0 -0
- package/public/audio/completion/yuki/02.wav +0 -0
- package/public/audio/completion/yuki/03.wav +0 -0
- package/public/audio/completion/yuki/04.wav +0 -0
- package/public/audio/completion/yuki/05.wav +0 -0
- package/public/audio/completion/yuki/06.wav +0 -0
- package/public/audio/completion/yuki/approval/01.wav +0 -0
- package/public/audio/completion/yuki/approval/02.wav +0 -0
- package/public/audio/completion/yuki/approval/03.wav +0 -0
- package/public/audio/completion/yuki/choice/01.wav +0 -0
- package/public/audio/completion/yuki/choice/02.wav +0 -0
- package/public/audio/completion/yuki/choice/03.wav +0 -0
- package/public/audio/completion/yuki/failed/01.wav +0 -0
- package/public/audio/completion/yuki/failed/02.wav +0 -0
- package/public/audio/completion/yuki/failed/03.wav +0 -0
- package/public/audio/completion/yuki/working/01.wav +0 -0
- package/public/audio/completion/yuki/working/02.wav +0 -0
- package/public/audio/completion/yuki/working/03.wav +0 -0
- package/public/avatars/isana.webp +0 -0
- package/public/avatars/mio.webp +0 -0
- package/public/avatars/nova.webp +0 -0
- package/public/avatars/rin.webp +0 -0
- package/public/avatars/shion.webp +0 -0
- package/public/avatars/yuki.webp +0 -0
- package/public/icons/apple-touch-icon.png +0 -0
- package/public/icons/catppuccin/LICENSE +22 -0
- package/public/icons/catppuccin/README.md +8 -0
- package/public/icons/catppuccin/latte/_file.svg +3 -0
- package/public/icons/catppuccin/latte/_folder.svg +3 -0
- package/public/icons/catppuccin/latte/_folder_open.svg +3 -0
- package/public/icons/catppuccin/latte/bash.svg +7 -0
- package/public/icons/catppuccin/latte/bun-lock.svg +8 -0
- package/public/icons/catppuccin/latte/config.svg +3 -0
- package/public/icons/catppuccin/latte/css.svg +6 -0
- package/public/icons/catppuccin/latte/database.svg +3 -0
- package/public/icons/catppuccin/latte/docker.svg +3 -0
- package/public/icons/catppuccin/latte/env.svg +3 -0
- package/public/icons/catppuccin/latte/eslint.svg +6 -0
- package/public/icons/catppuccin/latte/git.svg +6 -0
- package/public/icons/catppuccin/latte/go.svg +3 -0
- package/public/icons/catppuccin/latte/graphql.svg +3 -0
- package/public/icons/catppuccin/latte/html.svg +6 -0
- package/public/icons/catppuccin/latte/javascript-react.svg +8 -0
- package/public/icons/catppuccin/latte/javascript.svg +6 -0
- package/public/icons/catppuccin/latte/json.svg +3 -0
- package/public/icons/catppuccin/latte/lock.svg +3 -0
- package/public/icons/catppuccin/latte/markdown.svg +3 -0
- package/public/icons/catppuccin/latte/ms-word.svg +6 -0
- package/public/icons/catppuccin/latte/next.svg +6 -0
- package/public/icons/catppuccin/latte/npm-lock.svg +7 -0
- package/public/icons/catppuccin/latte/pdf.svg +3 -0
- package/public/icons/catppuccin/latte/python.svg +8 -0
- package/public/icons/catppuccin/latte/rust.svg +6 -0
- package/public/icons/catppuccin/latte/sass.svg +3 -0
- package/public/icons/catppuccin/latte/terraform.svg +3 -0
- package/public/icons/catppuccin/latte/toml.svg +3 -0
- package/public/icons/catppuccin/latte/typescript-react.svg +8 -0
- package/public/icons/catppuccin/latte/typescript.svg +6 -0
- package/public/icons/catppuccin/latte/yaml.svg +3 -0
- package/public/icons/catppuccin/mocha/_file.svg +3 -0
- package/public/icons/catppuccin/mocha/_folder.svg +3 -0
- package/public/icons/catppuccin/mocha/_folder_open.svg +3 -0
- package/public/icons/catppuccin/mocha/bash.svg +7 -0
- package/public/icons/catppuccin/mocha/bun-lock.svg +8 -0
- package/public/icons/catppuccin/mocha/config.svg +3 -0
- package/public/icons/catppuccin/mocha/css.svg +6 -0
- package/public/icons/catppuccin/mocha/database.svg +3 -0
- package/public/icons/catppuccin/mocha/docker.svg +3 -0
- package/public/icons/catppuccin/mocha/env.svg +3 -0
- package/public/icons/catppuccin/mocha/eslint.svg +6 -0
- package/public/icons/catppuccin/mocha/git.svg +6 -0
- package/public/icons/catppuccin/mocha/go.svg +3 -0
- package/public/icons/catppuccin/mocha/graphql.svg +3 -0
- package/public/icons/catppuccin/mocha/html.svg +6 -0
- package/public/icons/catppuccin/mocha/javascript-react.svg +8 -0
- package/public/icons/catppuccin/mocha/javascript.svg +6 -0
- package/public/icons/catppuccin/mocha/json.svg +3 -0
- package/public/icons/catppuccin/mocha/lock.svg +3 -0
- package/public/icons/catppuccin/mocha/markdown.svg +3 -0
- package/public/icons/catppuccin/mocha/ms-word.svg +6 -0
- package/public/icons/catppuccin/mocha/next.svg +6 -0
- package/public/icons/catppuccin/mocha/npm-lock.svg +7 -0
- package/public/icons/catppuccin/mocha/pdf.svg +3 -0
- package/public/icons/catppuccin/mocha/python.svg +8 -0
- package/public/icons/catppuccin/mocha/rust.svg +6 -0
- package/public/icons/catppuccin/mocha/sass.svg +3 -0
- package/public/icons/catppuccin/mocha/terraform.svg +3 -0
- package/public/icons/catppuccin/mocha/toml.svg +3 -0
- package/public/icons/catppuccin/mocha/typescript-react.svg +8 -0
- package/public/icons/catppuccin/mocha/typescript.svg +6 -0
- package/public/icons/catppuccin/mocha/yaml.svg +3 -0
- package/public/icons/icon-192.png +0 -0
- package/public/icons/icon-512.png +0 -0
- package/public/offline.html +145 -0
- package/public/stickers/isana/approval/01.webp +0 -0
- package/public/stickers/isana/approval/02.webp +0 -0
- package/public/stickers/isana/approval/03.webp +0 -0
- package/public/stickers/isana/choice/01.webp +0 -0
- package/public/stickers/isana/choice/02.webp +0 -0
- package/public/stickers/isana/choice/03.webp +0 -0
- package/public/stickers/isana/done/01.webp +0 -0
- package/public/stickers/isana/done/02.webp +0 -0
- package/public/stickers/isana/done/03.webp +0 -0
- package/public/stickers/isana/failed/01.webp +0 -0
- package/public/stickers/isana/failed/02.webp +0 -0
- package/public/stickers/isana/failed/03.webp +0 -0
- package/public/stickers/isana/working/01.webp +0 -0
- package/public/stickers/mio/approval/01.webp +0 -0
- package/public/stickers/mio/approval/02.webp +0 -0
- package/public/stickers/mio/approval/03.webp +0 -0
- package/public/stickers/mio/choice/01.webp +0 -0
- package/public/stickers/mio/choice/02.webp +0 -0
- package/public/stickers/mio/choice/03.webp +0 -0
- package/public/stickers/mio/done/01.webp +0 -0
- package/public/stickers/mio/done/02.webp +0 -0
- package/public/stickers/mio/done/03.webp +0 -0
- package/public/stickers/mio/failed/01.webp +0 -0
- package/public/stickers/mio/failed/02.webp +0 -0
- package/public/stickers/mio/failed/03.webp +0 -0
- package/public/stickers/mio/working/01.webp +0 -0
- package/public/stickers/nova/approval/01.webp +0 -0
- package/public/stickers/nova/approval/02.webp +0 -0
- package/public/stickers/nova/approval/03.webp +0 -0
- package/public/stickers/nova/choice/01.webp +0 -0
- package/public/stickers/nova/choice/02.webp +0 -0
- package/public/stickers/nova/choice/03.webp +0 -0
- package/public/stickers/nova/done/01.webp +0 -0
- package/public/stickers/nova/done/02.webp +0 -0
- package/public/stickers/nova/done/03.webp +0 -0
- package/public/stickers/nova/failed/01.webp +0 -0
- package/public/stickers/nova/failed/02.webp +0 -0
- package/public/stickers/nova/failed/03.webp +0 -0
- package/public/stickers/nova/working/01.webp +0 -0
- package/public/stickers/rin/approval/01.webp +0 -0
- package/public/stickers/rin/approval/02.webp +0 -0
- package/public/stickers/rin/approval/03.webp +0 -0
- package/public/stickers/rin/choice/01.webp +0 -0
- package/public/stickers/rin/choice/02.webp +0 -0
- package/public/stickers/rin/choice/03.webp +0 -0
- package/public/stickers/rin/done/01.webp +0 -0
- package/public/stickers/rin/done/02.webp +0 -0
- package/public/stickers/rin/done/03.webp +0 -0
- package/public/stickers/rin/failed/01.webp +0 -0
- package/public/stickers/rin/failed/02.webp +0 -0
- package/public/stickers/rin/failed/03.webp +0 -0
- package/public/stickers/rin/working/01.webp +0 -0
- package/public/stickers/shion/approval/01.webp +0 -0
- package/public/stickers/shion/approval/02.webp +0 -0
- package/public/stickers/shion/approval/03.webp +0 -0
- package/public/stickers/shion/choice/01.webp +0 -0
- package/public/stickers/shion/choice/02.webp +0 -0
- package/public/stickers/shion/choice/03.webp +0 -0
- package/public/stickers/shion/done/01.webp +0 -0
- package/public/stickers/shion/done/02.webp +0 -0
- package/public/stickers/shion/done/03.webp +0 -0
- package/public/stickers/shion/failed/01.webp +0 -0
- package/public/stickers/shion/failed/02.webp +0 -0
- package/public/stickers/shion/failed/03.webp +0 -0
- package/public/stickers/shion/working/01.webp +0 -0
- package/public/stickers/yuki/approval/01.webp +0 -0
- package/public/stickers/yuki/approval/02.webp +0 -0
- package/public/stickers/yuki/approval/03.webp +0 -0
- package/public/stickers/yuki/choice/01.webp +0 -0
- package/public/stickers/yuki/choice/02.webp +0 -0
- package/public/stickers/yuki/choice/03.webp +0 -0
- package/public/stickers/yuki/done/01.webp +0 -0
- package/public/stickers/yuki/done/02.webp +0 -0
- package/public/stickers/yuki/done/03.webp +0 -0
- package/public/stickers/yuki/failed/01.webp +0 -0
- package/public/stickers/yuki/failed/02.webp +0 -0
- package/public/stickers/yuki/failed/03.webp +0 -0
- package/public/stickers/yuki/working/01.webp +0 -0
- package/public/sw.js +124 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Main 전용 — task를 실제로 발주하기 직전에 `rule://task-guard`(skill 아님)로 읽는다. 브리프의 TASK_GUARD 블록을 받은 Maker는 읽지 않는다. TASK_GUARD 양식·요청당 budget·side quest 제한(런타임 task guard가 검사하는 계약).
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Task Guard
|
|
6
|
+
|
|
7
|
+
각 task **원문**의 첫 블록에 아래 `TASK_GUARD`와 그 밖의 공유 메타데이터를 함께 넣는다.
|
|
8
|
+
이 양식은 `maker_route`에 저장하는 원문에도 적용된다. 실제 `task` 호출에 준비 참조를 쓰면
|
|
9
|
+
기존 guard 전에 원문이 복원되므로 같은 본문을 다시 작성하지 않는다. 참조 문법은
|
|
10
|
+
`rule://subagent`의 「발주 시점 추론 선택」을 따른다.
|
|
11
|
+
|
|
12
|
+
```text
|
|
13
|
+
TASK_GUARD:
|
|
14
|
+
WORK_CLASS: feature|maintenance|diagnostic # 그 요청의 첫 child에서만 필수
|
|
15
|
+
PURPOSE: primary|rework # 생략 가능. 런타임이 파생한다
|
|
16
|
+
BLOCKS_PRIMARY: yes|no # 생략 가능. 기본 yes
|
|
17
|
+
PRIMARY_DELIVERABLE: <이번 사용자 요청의 실제 완료물 한 줄> # 첫 child에서만 필수
|
|
18
|
+
OWNED_PATHS: <maker의 소유 경로를 콤마로 나열> # 필수, 파생 불가
|
|
19
|
+
FINDING_ID: <rework일 때만 기존 finding id>
|
|
20
|
+
TASK_TITLE: <이 조각의 업무 한 줄 — 한국어>
|
|
21
|
+
TODO_TASKS: ["<현재 Main TODO의 정확한 문자열>", "…"]
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
- **`TASK_GUARD:` 바로 뒤에 정본 필드가 연속되는 구간이 guard 블록이다.** 필드 일부는 생략·상속될
|
|
25
|
+
수 있으므로 줄 수는 고정이 아니고, 연속이 끊기는 줄부터는 guard 블록이 아니다. `TASK_TITLE`·`TODO_TASKS`는 그 구간 **밖**의 공유 메타데이터이고 guard 필드가 아니다 — 빈 줄 없이 이어 써도 런타임은 블록 밖으로 읽는다. 이 둘은 `TASK_GUARD` 필드로 만들지 않고 `task` API의 새 인자로도 만들지 않는다. 위치가 뒤바뀌어 guard 필드 사이에 끼면 그 뒤 guard 필드가 블록에서 잘리므로 반드시 마지막 guard 필드 **뒤**에 적는다.
|
|
26
|
+
- `TASK_TITLE`은 **조각마다 다른 그 조각의 stable 업무 정체성**이다. 앞뒤 공백 없는 한 줄 한국어여야 하고 본문에 정확히 한 번만 나와야 한다. subagent 카드 제목이 이 값이고, follow-up `write agent://<id>` 메시지의 진행 단계(마지막 의도·현재 도구)가 이 값을 덮지 않는다. 없으면 카드는 업무 미확인으로 표시된다.
|
|
27
|
+
- `TODO_TASKS`는 **현재 Main TODO 항목의 exact 문자열** JSON 배열이다. 비어 있지 않은 고유 문자열이어야 하고 trim·유사도 정규화 없이 그대로 비교되므로 Main이 실제로 가진 문자열을 그대로 쓴다. 두 메타 중 하나라도 있으면 런타임이 TODO 진행 관측을 시작한다.
|
|
28
|
+
- `TASK_GUARD` **안에서** Main이 직접 판단해야 하는 값만 적는다. **무엇을 만드는가**(`WORK_CLASS`·`PRIMARY_DELIVERABLE`)와 **어디까지 고치는가**(`OWNED_PATHS`)가 그것이고, 나머지는 런타임이 승인된 값에서 조립한다. 한 요청의 첫 child가 앞의 둘로 lock을 세우면 그 다음 child부터는 `OWNED_PATHS`(와 rework면 `FINDING_ID`)만 적어도 된다. 생략한 `WORK_CLASS`·`PRIMARY_DELIVERABLE`은 lock 값으로 채워지고, `PURPOSE`는 `FINDING_ID` 유무에서(`FINDING_ID` 있으면 `rework`, 그 밖엔 `primary`) 파생되며, `BLOCKS_PRIMARY`는 `yes`로 채워진다. 조립이 일어난 항목은 런타임이 그 브리프의 `TASK_GUARD` 블록을 실제 적용된 값으로 다시 써서 실행하므로 child와 기록이 같은 계약을 본다.
|
|
29
|
+
- 비어 있는 것과 잘못 적은 것은 다르다. 생략은 조립되지만 enum 밖의 값(`WORK_CLASS: feat` 같은)은 거부된다. 허용 child는 `maker`뿐이다. lock과 다른 `WORK_CLASS`·`PRIMARY_DELIVERABLE`, `BLOCKS_PRIMARY:no`, `OWNED_PATHS` 누락, `FINDING_ID` 없는 rework도 거부된다.
|
|
30
|
+
- `feature`의 `PRIMARY_DELIVERABLE`은 테스트 개수나 내부 정리가 아니라 사용자가 실제로 쓸 수 있게 되는 동작·화면으로 적는다.
|
|
31
|
+
- child는 현재 `PRIMARY_DELIVERABLE`을 직접 진전시키거나 완료를 막는 일에만 쓴다. 아니면 `BLOCKS_PRIMARY:no`로 기록하고 backlog로 넘기며 spawn하지 않는다.
|
|
32
|
+
- 첫 child의 `WORK_CLASS`와 `PRIMARY_DELIVERABLE`은 그 사용자 요청 동안 고정한다. 관측·오탐·증거 복구를 이유로 다른 완료물로 바꾸지 않는다. 사용자가 실행 중인 턴에 방향을 바꾸면 runtime이 그 redirect를 보고 lock만 해제하므로 새 완료물로 다시 고정해 발주한다. 누적 budget은 그대로 유지된다.
|
|
33
|
+
- runtime hard budget은 사용자 입력당 `primary Maker 16`, `rework Maker 8`, `총 child 24`이다. `task.maxConcurrency:8`의 동시 실행 슬롯과 다른 누적 cap이다. 한도가 남았다는 이유로 불필요한 child를 만들거나 역할 별칭·side quest로 우회하지 않는다.
|
|
34
|
+
- Maker 수는 Main이 판단해 정한다. 한도는 천장이지 목표가 아니고 남은 자리는 발주 근거가 아니다. 위치와 수정 범위가 명확한 작은 작업은 Main 단독, 조사부터 구현까지 한 흐름인 작업은 Maker 1명, 서로 기다릴 필요가 없는 충분히 큰 조각이 여러 개면 동시 실행 상한까지 Maker를 병렬로 돌린다. 2명으로 좁히지 않는다. `task.maxConcurrency` = 8은 Maker 합산 child 슬롯 수이고 Main 레인은 여기에 포함되지 않는다. 같은 요청에서 두 번째 이후 primary Maker를 발주할 때는 각 child의 소유 경로가 겹치지 않는지, 서로의 산출물을 기다리지 않는지, 따로 실행해야 하는 이유가 무엇인지를 Main이 확인해 브리프에 적는다. `프론트/백엔드`처럼 범주가 다르다는 것만으로는 분리 근거가 아니다.
|
|
35
|
+
- 각 새 발주·재발주 **직전** `maker_route`로 `routing.typedJudgmentRouting`의 `pre-dispatch`
|
|
36
|
+
질문을 한 번에 판정한다. 동일 브리프에 수동 `judge()`를 중복 호출하지 않는다. 확률형 bool은
|
|
37
|
+
`>= 0.5`일 때 true로 적용한다. 준비와 발주는 session-local `name`과 `TASK_GUARD` 의미 필드
|
|
38
|
+
(`WORK_CLASS`·`PRIMARY_DELIVERABLE`·`OWNED_PATHS`·`FINDING_ID`)로 연결되므로 산문·`context`
|
|
39
|
+
표현 차이는 허용되고, 이름이나 의미 필드가 바뀌면 다시 준비한다. `duplicate`·
|
|
40
|
+
`additionalInstruction`이 true이고 **`ownerTarget`이 실재 owner를 가리킬 때만** 그 owner에게
|
|
41
|
+
추가 지시·retarget하고 새 spawn을 금지한다 — 확률만으로 owner를 고르지 않는다. 어느 쪽도
|
|
42
|
+
아니면 단일 `maker`에 Main이 결정한 `model:"provider/model:concrete-effort"`를 넘기며 coarse `effort`는 생략한다. 판정이 가리키는 owner가 실제로
|
|
43
|
+
없거나 결정론 증거와 모순되면 그 placement 결과를 적용하지 않고 기존 절차로 간다. 실패·timeout·
|
|
44
|
+
credential 없음도 판단 불가로 두고 일반 모델 fallback 없이 기존 절차를 실행한다.
|
|
45
|
+
이 session에서 성공한 spawn으로 식별된 Maker(완료·parked 포함)에게 `write agent://<id>`로 자연어 지시를
|
|
46
|
+
보내는 경계는 `pre-dispatch-existing-owner-message`로 런타임이 advisory를 낸다(그 전송을 차단하지
|
|
47
|
+
않는다). 실질 변경·정보 부족이면 정식 `maker_route`를 다시 부른다. Task Guard의
|
|
48
|
+
lock·budget·소유 경로·`FINDING_ID`와 사용자 요구 대조는 언제나 결정론 정본이며 judgment가
|
|
49
|
+
대신하지 않는다.
|
|
50
|
+
- budget은 성공 수가 아니라 발주 수로 센다. 잘못 발주해 `write proc://<id>/kill`로 되돌린 child는 runtime이 취소를 확인한 만큼 요청당 `8` 슬롯까지만 환불해 full cancelled wave 한 번을 복구하되 반복 spawn→cancel 우회는 막는다. 환불받으려면 spawn 때 `tasks[].name`을 명시해야 하고, 이름 없는 spawn과 이미 끝난 child는 환불 대상이 아니다. 브리프 방향이 정해지기 전에는 발주하지 않는다.
|
|
51
|
+
- `rework`는 기존 finding의 delta 수정용이며 `FINDING_ID`가 필수다. 새 조사나 새 기능을 rework로 포장하지 않는다.
|
|
52
|
+
- **이 가드는 lock 일치·`WORK_CLASS` enum·소유 경로·`FINDING_ID`·budget만 검사한다. 그 과제가 사용자 요구와 맞는지는 검사하지 않는다.** 즉 Main이 요구를 잘못 해석해도 가드는 통과하고 Maker는 그 발주를 충실히 구현한다. 그 빈틈은 Main의 발주 전 3항목 대조(`harness-policy.json` `briefContextRelay.preDispatchCrossCheck`: 요구 누락·확인하지 않은 단정·임의 변경)와 Maker의 첫 조사 대조(`routing.dispatchAssumptionCheck`)가 메운다. `PRIMARY_DELIVERABLE`은 Main이 정한 완료물이고 사용자 요구의 사본이 아니므로, 그 둘이 어긋나면 lock을 지키는 것이 아니라 발주를 고친다.
|
|
53
|
+
- `OWNED_PATHS`는 모든 maker(primary·rework)에 필수다. 세션 cwd 기준 상대경로를 `/`로 적고, 후행 `/`는 디렉터리 prefix, 없으면 정확한 파일, `.`은 cwd 전체다. 선행 `./`는 무시되고 절대경로·cwd 밖 `..`는 거부된다. 완료 시 runtime이 `[OwnershipGuard] child=… owned=… outside=… concurrent=…`로 소유 경로 밖 변경을 알린다. `outside=none`은 없음, `unobserved`는 git 관측 불가다. ignored 파일·저장소 밖·submodule 내부는 관측하지 못한다. advisory이므로 `outside≠none`이면 Main이 동시 writer·허용 경계와 대조해 판단한다.
|
|
54
|
+
- child와 별도 모델 호출은 Main의 `task` 경로로만 보낸다. `eval`의 `agent()`·`completion()`·`workpool()`·`tool.task()`로 budget을 우회하지 않는다. runtime도 이 경로를 차단하며 일반 계산·파일 처리·browser 관측용 `eval`은 그대로 허용한다.
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: 여러 파일·모듈의 착수 계약과 완료 판정, 작업·모델·에이전트 효율 분석의 증거와 비교 기준을 정할 때 읽는다.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# 착수 계약과 최종 판정
|
|
6
|
+
|
|
7
|
+
## 착수 전에 확정할 것
|
|
8
|
+
|
|
9
|
+
- 최종 목표와 산출물, 완료 조건과 필요한 증거.
|
|
10
|
+
- 확정된 설계·인터페이스·제약과 보존해야 할 기존 동작.
|
|
11
|
+
- 검증되지 않았지만 진행에 사용하는 가정, 데이터·보안·호환성·배포·회귀 위험, 사용자 승인이 필요한 항목.
|
|
12
|
+
- 완료 조건은 **관측 경로가 실재하는 것만** 쓴다. 통과 경로가 없는 조건은 조건이 아니라 미확인
|
|
13
|
+
항목이고, 그런 조건을 기대치·채점표에 넣으면 영구 실패만 만든다. 새 계약을 정본에 단정으로
|
|
14
|
+
쓰기 전에 그것을 소비하는 경로(도구 스키마·설정 키·코드)를 증거로 확인한다.
|
|
15
|
+
- 모호성은 먼저 증거로 좁힌다. 명시 요구·승인된 계약, 실제 호출부와 데이터 흐름, 테스트·재현
|
|
16
|
+
결과, 현재 동작과 문서로 방향이 정해지면 근거를 남기고 진행한다. 테스트·문서·현재 동작 중
|
|
17
|
+
어느 하나도 자동으로 정답이 아니며 요구와 충돌하면 실제 동작을 확인한다. 결과의 제품 의미를
|
|
18
|
+
바꾸는데 증거로 정할 수 없거나 권한·외부 승인이 없는 항목만 사용자 판단으로 올리고, 그 부분이
|
|
19
|
+
막혀도 독립적으로 허용된 작업은 계속 수행한다.
|
|
20
|
+
|
|
21
|
+
## 증거
|
|
22
|
+
|
|
23
|
+
- 최소 증거는 변경 파일, 핵심 변경, 실행한 검증 명령과 결과, 계획과의 차이, 남은 위험과 미검증 조건이다.
|
|
24
|
+
- 수용 조건이 둘 이상이면 증거를 **조건별로 연결**한다. 조건마다 충족(확인한 동작 + 원문 증거
|
|
25
|
+
위치)이나 미확인(막힌 이유 + 필요한 확인)을 revision과 함께 남긴다. "테스트 통과"는 조건 하나의
|
|
26
|
+
증거일 수 있어도 조건 전체의 증거가 아니다. 최종 수용에서 Main이 빠진 조건을 확인한다.
|
|
27
|
+
- 하위 에이전트 보고가 부족하면 전체를 다시 시키지 말고 빠진 증거만 요청한다.
|
|
28
|
+
- 위임한 조각의 Maker는 source·contract·caller 증거와 자기 검증의 exact command·cwd·exit
|
|
29
|
+
status·관측·raw artifact locator·재사용 근거·미검증 조건을 함께 제공한다. 위임한 조각에서
|
|
30
|
+
Main은 조립·한정된 확인·finding 판단·최종 수용을 맡고, 그 조각의 집중 검사를 같은 환경·같은
|
|
31
|
+
조건으로 반복해 확인하지 않는다(공통 격리 환경과 필요한 전체 빌드·통합·수용 검사는 Main이
|
|
32
|
+
실행한다). `routine`은 Main이 직접 구현하고 검증해 같은 증거를 스스로 남긴다.
|
|
33
|
+
- 검수는 Main이 소유한다. Main은 owner의 불변 raw artifact와 locator를 검수 대상으로 쓰고,
|
|
34
|
+
owner의 집중 검사를 같은 환경·조건에서 반복하지 않는다. 공통 격리 환경과 필요한 전체
|
|
35
|
+
빌드·통합·수용 검사는 Main이 frozen revision에서 실행하며, 검사가 도는 동안 그 revision을
|
|
36
|
+
수정하지 않는다. 아직 실행 중인 필수 검사는 gap이 아니라 pending으로 남기고 그 revision을
|
|
37
|
+
PASS로 닫지 않는다. 검수 주체를 다른 역할이나 다른 세션으로 넘기지 않는다. 절차는
|
|
38
|
+
`rule://subagent`의 「검수와 수용」이 정본이다.
|
|
39
|
+
|
|
40
|
+
`large` 분해 트리거와 검수 트리거는 다르다. public/shared interface, cross-module contract,
|
|
41
|
+
shared state, data flow, complex state transition, 여러 조각이 한 실행 경로로 합류, meaningful
|
|
42
|
+
existing-caller regression risk, auth/authz/secret review, Main이 제공 증거로 닫을 수 없는 경우 중
|
|
43
|
+
하나가 있으면 `integration-risk`이고 Main이 그 delta를 검수한다. 나머지 `independent-only`
|
|
44
|
+
large에는 별도 검수를 요구하지 않는다. material/high-risk는 모든 관련 owner 수렴 → Main 검수의
|
|
45
|
+
직렬 계약을 유지한다.
|
|
46
|
+
|
|
47
|
+
## 검수와 최종 판정
|
|
48
|
+
|
|
49
|
+
검수는 Main이 중간과 최종 두 단계로 소유한다. 아래는 Main이 검수할 때 적용하는 기준이다.
|
|
50
|
+
|
|
51
|
+
Maker 보고를 받은 뒤 Main 검수에 들어가기 직전의 `pre-review`는 런타임(`jev-runtime`)이 로컬 구조 관측으로
|
|
52
|
+
처리한다(`harness-policy.json` `routing.typedJudgmentRouting.batching`·`observation.localStructuralPlacements`).
|
|
53
|
+
metadata 유효성·검증 증거 존재·권한 충돌 같은 셀 수 있는 신호만 `[JevRuntime:pre-review]` advisory로 싣고
|
|
54
|
+
`judge()`를 호출하지 않는다. Main도 같은 보고에 수동 `judge()`를 따로 부르지 않는다. 요구-증거 정합,
|
|
55
|
+
미확인 수용 조건, 증거를 넘는 보고 주장은 advisory가 판정하지 않는 의미 판단이므로 아래 결정론적
|
|
56
|
+
검수에서 Main이 원본 증거로 직접 확인한다. 관측할 수 없는 의미는 unknown으로 두고 개수나 키워드로
|
|
57
|
+
추정하지 않는다. exit status·파일·경로 소유권·권한·test result·배포 승인은 결정론 증거가 정본이고,
|
|
58
|
+
high-risk 분류·승인과 최종 판정은 Main만 소유한다.
|
|
59
|
+
|
|
60
|
+
- **증거 요구사항.** 판정 전에 검수 대상과 계약, 변경 경로, 최종 Diff, 영향 경계, raw 출력이
|
|
61
|
+
있는 검증 증거, 알려진 미검증 항목을 갖춘다. `TARGET`·`CHANGED PATHS`·`FINAL DIFF`·
|
|
62
|
+
`IMPACT BOUNDARY`·`VALIDATION EVIDENCE`·`KNOWN UNVERIFIED` 여섯 이름과 그 순서는 권장 형식이지
|
|
63
|
+
합격 조건이 아니다. 경로·`artifact://`·`agent://`·이미 받은 원문 tool 출력처럼 **닿을 수 있는
|
|
64
|
+
원본 artifact가 그 사실을 공급**하며 packet에 다시 붙여넣으라고 요구하지 않는다. 실질적인
|
|
65
|
+
결손만 판정을 막는다.
|
|
66
|
+
- `FINAL DIFF`는 삭제를 포함한 frozen raw before/after 또는 그것을 가리키는 불변 참조여야 한다.
|
|
67
|
+
현재 파일, 요약, 가변 `HEAD` 이름은 Diff를 대체하지 못한다. `VALIDATION EVIDENCE`에는 검사마다
|
|
68
|
+
exact command·exit status·닿을 수 있는 raw 출력 artifact나 locator가 들어간다. `CHANGED PATHS`의
|
|
69
|
+
분류와 impact-bearing caller index는 점검을 안내할 뿐 정확성을 세우지 못한다.
|
|
70
|
+
- **비교 기준선은 Main의 지시가 아니라 사용자 요구와 브리프에 실린 수용 조건이다.** 지시를 완벽히
|
|
71
|
+
구현했는데 수용 조건이 미충족이면 PASS가 아니라 요구 누락 finding이다. packet에 요구나 수용
|
|
72
|
+
조건 자체가 없으면 지시에서 추론하지 말고 그 부재를 gap으로 보고한다. 수용 조건별 증거 연결도
|
|
73
|
+
실제 Diff와 대조해 조건마다 충족-증거 또는 미확인-사유가 있는지 보고, 없으면 실질 gap으로 본다.
|
|
74
|
+
- 영향받는 caller만 추적한다. public/shared contract, shared state, data flow, 호환성,
|
|
75
|
+
material-risk 동작을 건드리면 그 caller를 본다. 요구 누락, 논리 결함, 회귀, 경계값, 데이터 손실
|
|
76
|
+
위험, 불필요한 변경, 테스트 공백을 확인하고, 구체적인 모순이나 의심스러운 주장이 있을 때만 표적
|
|
77
|
+
점검으로 범위를 넓힌다.
|
|
78
|
+
- **material-risk는 기술명이 아니라 consequence다.** `harness-policy.json`
|
|
79
|
+
`routing.high-risk.materialRiskDefinition`으로 판정한다: 되돌릴 수 없는 데이터·설정·스키마 변경,
|
|
80
|
+
시스템 밖으로 나가는 결과(배포·결제·실제 장치·출력·외부 전송), 제품 의미를 결정하는 계산·판정,
|
|
81
|
+
기존 소비자·데이터·API 계약 파괴, 물리 안전이 걸린 출력. VB6/COM/OCX, 32-bit·XP 대상, 모니터링,
|
|
82
|
+
protocol 처리, timeout·retry·reconnect, 단순 전달은 그 자체로 올리지 않는다. 실행 환경이 아니라
|
|
83
|
+
**수정한 코드의 성질**이 분류하며, 그 분류는 도메인 중립이다 — `irreversible-state-change`·
|
|
84
|
+
`external-side-effect`·`correctness-defines-product-meaning`·`state-machine-transition`·
|
|
85
|
+
`trust-boundary`·`compatibility-break`·`artifact-representation`에 걸리면 fixture·mock·평가용이어도
|
|
86
|
+
high-risk다. 단 `trust-boundary`는 감시만 붙이고 auth·authz·secret 자체는 integration-risk
|
|
87
|
+
검수로 남는다. 프로젝트별 구체 목록은 그 프로젝트 저장소의 `AGENTS.md`가 이 분류에 사상한다
|
|
88
|
+
(`materialRiskDefinition.projectOverlay`).
|
|
89
|
+
- **finding 우선순위는 실제 결함과 안전 영향으로 정한다.** 범위 밖 정리, 동작 영향 없는 잔여물,
|
|
90
|
+
이름·문구, 스타일·API 형태 선호는 차단 사유가 아니다. 비차단으로 한 번만 적고 그것 때문에 PASS를
|
|
91
|
+
보류하거나 새 검수 회차를 열지 않는다.
|
|
92
|
+
- **재검수 규칙.** 반증이나 그 finding을 건드린 변경 없이 이미 닫힌 finding을 다시 열지 않고, 새로
|
|
93
|
+
발견한 실제 결함은 닫힌 finding에 접지 않고 새 finding으로 보고한다. 같은 finding이 미해결로
|
|
94
|
+
돌아오면 기존 증거가 무엇을 지지하는지 밝힌다 — 요구가 모순인지, 검수 판정이 틀렸는지, 구현이
|
|
95
|
+
틀렸는지, 증거가 없는지 — 그리고 그 근거로 판단한다. 무효화되지 않은 delta·증거는 새 의심 근거
|
|
96
|
+
없이 재검수하지 않는다.
|
|
97
|
+
- 동일 revision에서 확인 가능한 지적은 변경·영향 계약·증거를 한정된 범위에서 본 뒤 한 묶음으로
|
|
98
|
+
전달한다. 같은 변경에 뒤늦게 지적을 더한 왕복은 Main의 검수 분할 문제이지 Maker 실패 횟수로
|
|
99
|
+
세지 않는다. 새 증거와 실제 반복 오류는 구분하며 R번호만으로 owner를 바꾸지 않는다. 인수가
|
|
100
|
+
필요하면 기존 writer를 정지하고 변경·job·검증 증거를 회수해 소유권 이전을 명시한 뒤 진행한다.
|
|
101
|
+
|
|
102
|
+
Main은 근거가 있는 finding을 각각 다음 중 하나로 닫는다.
|
|
103
|
+
|
|
104
|
+
- `ACCEPTED`: 담당 `maker`가 수정하고 영향받은 검증 증거를 갱신했으며 필요한 delta 검토까지
|
|
105
|
+
끝났다. 변경 없는 범위의 증거는 재사용한다.
|
|
106
|
+
- `REJECTED_WITH_EVIDENCE`: 코드·테스트·요구사항 근거로 오탐임을 설명했다.
|
|
107
|
+
- `ESCALATED`: unresolved major finding이거나 Main도 확신할 수 없어 사용자 판단으로 올렸다.
|
|
108
|
+
|
|
109
|
+
모든 finding을 종결한 뒤 Main이 범위 준수, 완료 조건, 검증 근거와 남은 위험을 자연스러운
|
|
110
|
+
한국어로 전한다. 판정 의미는 PASS·REWORK·INCONCLUSIVE로 구분하되 `FINAL`·`OWNER` 같은
|
|
111
|
+
고정 표시는 사용자나 실제 parser가 요구할 때만 쓴다. SubAgent의 자체 판정은 최종 승인이 아니다.
|
|
112
|
+
|
|
113
|
+
해결 가능한 `REWORK`와 보충 가능한 증거 누락은 사용자 재지시를 기다리지 않고 내부 작업으로
|
|
114
|
+
이어간다. 중간 실패를 보고했다는 사실만으로 원래 과제를 완료 처리하지 않는다. 재작업 뒤에는
|
|
115
|
+
영향을 받은 검증을 갱신하고, 검수 전제였던 공개 계약·위험·중요 실행 경로가 달라졌으면 그 delta를
|
|
116
|
+
다시 검수한다. 무효화되지 않은 증거는 다시 만들지 않는다.
|
|
117
|
+
|
|
118
|
+
## 종료 조건
|
|
119
|
+
|
|
120
|
+
- 모든 검수 finding이 `ACCEPTED`, `REJECTED_WITH_EVIDENCE`, `ESCALATED` 중 하나로 닫혔다.
|
|
121
|
+
- `integration-risk` large와 material-risk 산출물에는 Main의 중간 검수와 최종 수용 증거가 있다:
|
|
122
|
+
확정 delta에 대한 검수와, 그 revision의 수용 조건별 증거 연결을 실제로 확인한 기록.
|
|
123
|
+
`independent-only` large에는 별도 검수를 요구하지 않는다.
|
|
124
|
+
- 인터페이스, 공유 타입, 설정, 데이터 흐름에 필요한 최소 통합 검사를 마쳤다.
|
|
125
|
+
- material-risk 변경에는 실제 출력 안전, 측정·판정 정확성, 데이터·설정 보존, 권한,
|
|
126
|
+
롤백 가능성 중 해당 증거가 있다.
|
|
127
|
+
- 열린 위험과 미검증 조건을 숨기지 않고 영향과 후속 조치를 적는다.
|
|
128
|
+
- 수용 조건을 막는 미해결 escalation이나 미검증 항목이 있으면 전체 과제를 PASS로 닫지 않는다.
|
|
129
|
+
부분 성과를 보고하더라도 남은 조건을 그대로 남긴다.
|
|
130
|
+
- 사람만 할 수 있는 확인은 agent가 흉내내지 않는다. 사용자가 같은 화면을 직접 볼 수 있으면 사용자
|
|
131
|
+
관찰이 우선이고(미관·레이아웃 감각, 실장비 동작, 로그인·권한이 걸린 외부 연결), 실장비·실 IO·
|
|
132
|
+
실운영 데이터가 필요한 항목은 코드·build·텍스트 관측 검증을 끝낸 뒤 3줄 이내 인계(무엇을 열지 /
|
|
133
|
+
어떤 순서로 클릭할지 / 합격 기준)와 함께 `pending-user-device-check`로 보고한다 — **PASS가 아니다**.
|
|
134
|
+
인계 뒤 idle로 기다리지 않고, 사용자 관찰은 ground truth로 항목을 닫으며 다시 검증하지 않는다.
|
|
135
|
+
정본은 `implementationOwnership.writerValidation.userObservation`과 `deviceVerificationHandoff`다.
|
|
136
|
+
|
|
137
|
+
여러 웨이브로 가는 작업에서는 목표와 완료 조건, 확정 사항, 작업 패키지의 담당·검수자·의존성·파일
|
|
138
|
+
소유권·상태, 증거, 위험, 다음 웨이브만 최신으로 유지한다.
|
|
139
|
+
|
|
140
|
+
## 작업·모델·에이전트 효율을 판정할 때
|
|
141
|
+
|
|
142
|
+
- 원인 가설 제출은 효율 검증이 아니다. 실제 완료한 수용 조건·회귀·미완료 항목을 먼저
|
|
143
|
+
확인하고, 그 성과에 사용한 경과 시간·모델 호출·생성 토큰·추정 비용·재작업·사용자 개입을
|
|
144
|
+
함께 판단한다. 단계나 역할이 다른 호출 수·응답 중앙값만으로 모델 우열을 정하지 않는다.
|
|
145
|
+
- 기존 기록으로 확인 가능한 낭비와 비교 불가능한 부분을 분리한다. 오류가 없는 기록도
|
|
146
|
+
효율적이라는 증거는 아니며, 병목 구간 전체를 절약 가능한 시간·비용으로 계산하지 않는다.
|
|
147
|
+
인수받은 코드·캐시·빌드·검증 준비물을 밝히고 인수 후 짧은 마감 시간을 독립 구현과 비교하지 않는다.
|
|
148
|
+
- 합산 전 세션·요청·종료 cutoff와 분석 자체 제외 범위를 고정한다. 모델 생성 시간·도구 실행·
|
|
149
|
+
대기·사용자 요청 전환을 구분하고, 병행 구간을 경과 시간처럼 더하지 않는다. `unmeasured`를
|
|
150
|
+
대기 원인으로 단정하지 않는다. 캐시 포함 총토큰과 생성 토큰, 기록상 추정 비용과 청구액도 구분한다.
|
|
151
|
+
- 모델·운영 방식의 상대 효율을 주장하려면 같은 시작 산출물·환경·수용 조건의 비교가 필요하다.
|
|
152
|
+
비교가 없으면 운영상 결함은 판정하되 모델 순위·개선율은 미검증으로 남긴다. 유료 재실행이나
|
|
153
|
+
새 벤치마크는 별도 승인 없이 시작하지 않는다.
|
|
154
|
+
- 마지막에는 관측된 실패마다 기존 규칙의 누락인지 실행 위반인지 판별하고, 바꿀 행동과
|
|
155
|
+
예상 효과를 구분해 제안한다. 가설 나열로 끝내거나 반대로 규칙·스킬을 무조건 늘리지 않는다.
|
|
156
|
+
보완했다면 같은 수용 조건을 유지하는지 확인하고, 새 지침의 실제 효율 개선은 후속 동등 작업의
|
|
157
|
+
관측 전까지 검증됐다고 말하지 않는다.
|
|
158
|
+
|
|
159
|
+
### 실패를 다음 작업의 실행 방식으로 환류
|
|
160
|
+
|
|
161
|
+
- **실패를 해결한 뒤, 종료 보고 전**에 owner는 실패→변경한 조치→성공 검증의 근거를 연결한다.
|
|
162
|
+
입력·경로·인자 실수, 환경·의존성, 권한·provider, 제품 결함, 의도한 실패 확인(negative probe)을
|
|
163
|
+
구분한다. 도구가 실패로 표시됐다는 사실만으로 agent 실수나 같은 원인이라고 단정하지 않는다.
|
|
164
|
+
- 수치가 필요하면 기존 trace 분석의 `evidence.observability.toolOutcomes`와 `repeatedReads`,
|
|
165
|
+
`reworkEvents`를 재사용한다. 호출 수와 **결과가 관측된 호출만을 분모로 한 실패율**을 함께 보고,
|
|
166
|
+
결과 미회수·호출 없는 결과·child 귀속 누락을 따로 남긴다. 비정상 exit와 도구 오류의 합집합을 세며
|
|
167
|
+
한 호출을 두 번 실패로 세지 않는다. 비동기 작업의 접수 응답은 실제 작업 완료가 아니다.
|
|
168
|
+
분석 결과가 없으면 해당 요청에서 이미 확보한 호출/결과만 한정해 사용하고 없는 수치는 미관측으로 둔다.
|
|
169
|
+
숫자를 채우려고 새 상시 수집기·전체 이력 재분석·유료 재실행을 붙이지 않는다.
|
|
170
|
+
- 같은 파일을 다시 읽은 이유가 변경·새 질문·새 증거인지 확인한다. 필요한 조사와 중복 호출을 구분하며
|
|
171
|
+
총 호출 수·실패율·낮은 오류율만으로 낭비나 모델 우열을 정하지 않는다.
|
|
172
|
+
- **원인과 해결책이 검증되고 재사용할 가치가 있을 때** 기존 `learn`/memory 경로에 적용 조건,
|
|
173
|
+
원인, 달라진 행동, 성공 근거 locator를 남긴다. 원문 로그·비밀은 넣지 않는다. 이미 충분한 규칙을
|
|
174
|
+
어긴 실행 실수면 기존 규칙 적용을 교정하고, 규칙·Skill 누락일 때만 해당 정본을 보완한다.
|
|
175
|
+
미확정 가설이나 실패율 임계값으로 규칙을 자동 생성·변경하지 않는다.
|
|
176
|
+
- **다음 유사 작업의 같은 도구·경계에 진입하기 전** 적용되는 교훈을 현재 문맥이나 `recall`로 확인해
|
|
177
|
+
실행 방식에 반영한다. 이미 문맥에 있는 내용을 또 조회하지 않는다. 같은 실패가 재발하면 교훈이
|
|
178
|
+
없었는지, 조건이 달랐는지, 실행에서 누락했는지를 가르고 같은 규칙을 하나 더 쓰지 않는다.
|
|
179
|
+
- 분류 보정은 완료된 **위임 조각**의 수용 결과·재작업 비용과 발주 당시 남은 판단을 함께 본다.
|
|
180
|
+
NORMAL 안에서 기존 계약과 명세로 정해지는 과제는 Main 직접 처리 routine과 구분하며, 이를 이유로
|
|
181
|
+
HARD로 승격하지 않는다. 등급별 위임 비율을 맞추려는 배정, 호출·실패 수 기반 자동 승격, 실행 중
|
|
182
|
+
재발주는 금지한다.
|
|
183
|
+
효과는 후속 동등 작업의 재발·불필요한 호출·재작업이 줄었는지 관측한 뒤에만 검증됐다고 말한다.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: ChatGPT 6 Pro(별칭 SHION) 상담을 쓸 때 자리·발동 조건·호출 경로·입력 제한을 확인한다. 사용자가 6 Pro나 SHION을 명시했거나 6PRO 탭 세션일 때 연다.
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# ChatGPT 6 Pro 상담
|
|
6
|
+
|
|
7
|
+
6 Pro는 로컬 OpenAI 호환 shim이 사용자 브라우저의 전용 탭을 몰아서 쓴다. 세션 바인딩은
|
|
8
|
+
로컬에서 유지하되 새 자동 상담은 순수 프롬프트만 보내고, relay가 해당 대화·요청의 완성 답을
|
|
9
|
+
수집해 인증된 로컬 reply 경로로 현재 세션에 투영한다. 모델이 MCP 게시 도구를 호출하기를
|
|
10
|
+
기다리지 않는다. 왕복은 직렬이며 역할이 아니라 **상담**이다. 정본은 `harness-policy.json`의
|
|
11
|
+
`mainLane.web6Consult`이고 별칭 `SHION`이 이 대상을 가리킨다.
|
|
12
|
+
|
|
13
|
+
## 들어가는 자리
|
|
14
|
+
|
|
15
|
+
|자리|언제|
|
|
16
|
+
|---|---|
|
|
17
|
+
|**발주 전 설계**|첫 child 직전. 조각 분할·공유 계약·수용 조건. 여기서 틀리면 뒤따르는 maker가 통째로 헛돈다|
|
|
18
|
+
|**최종 판정 직전 상담**|`mainLane.workerReview.finalVerdictConsult` 슬롯 그대로. 요약 입력·이견 목록 출력이라 형태가 정확히 맞는다|
|
|
19
|
+
|**경합 가설 판정**|원인 후보가 2개 이상이고 관측으로 가를 수 없을 때. Main이 아직 할 수 있는 관측의 대체물로 쓰지 않는다|
|
|
20
|
+
|**되돌리기 비싼 설계 선택**|스키마·공개 인터페이스·마이그레이션 등 `irreversible-state-change`·`compatibility-break` 계열|
|
|
21
|
+
|
|
22
|
+
두지 않는 자리도 계약이다 — **maker 내부 구현 상담**(도구 루프가 필요하다), **diff 검수**(본문
|
|
23
|
+
반출 금지이고 크기도 맞지 않는다), **검증 실행**(도구가 필요하다), **사용자 답변 작성**. 여기에
|
|
24
|
+
넣으면 그 세션은 6 Pro 대기로 멈춘다.
|
|
25
|
+
|
|
26
|
+
## 발동 조건
|
|
27
|
+
|
|
28
|
+
- **일반 세션** — 사용자가 6 Pro로 처리하라고 **명시했을 때만**. `시온 호출해`도 명시 호출이다.
|
|
29
|
+
- **6PRO 탭에서 연 세션**(`gpt6-handles.json`의 유효한 핸들이 그 `sessionId`에 걸린 세션) —
|
|
30
|
+
발주 전 설계와 최종 판정 상담은 **기본 발동**, 나머지 둘은 조건이 맞을 때 Main 재량이다.
|
|
31
|
+
바인딩 사실은 브리지가 그 세션에 알린다.
|
|
32
|
+
|
|
33
|
+
## 호출 경로
|
|
34
|
+
|
|
35
|
+
호출은 exact `completion(model="web6/gpt-6-pro")` 경로다. core provider가 현재 OMP
|
|
36
|
+
sessionId를 `X-OMP-Session-Id`로 싣고, `CUELO_Setup/web6/web6-server.js`가 세션을 확인하고
|
|
37
|
+
바인딩 통지를 남긴다. 발급된 handleKey는 로컬 요청 메모리에만 두고 브라우저 프롬프트에
|
|
38
|
+
넣지 않는다. 자동 상담에 `@OMP TOOL` 멘션이나 `omp_publish_reply` 지시를 추가하지 않는다.
|
|
39
|
+
|
|
40
|
+
relay는 자신이 만든 전용 ChatGPT 탭에서만 새 상담을 시작하고, 전송 POST의 model과 user
|
|
41
|
+
message id를 확인한다. 답 수집 전에도 현재 경로가 exact conversationId인지 확인한 뒤 그
|
|
42
|
+
대화 JSON을 읽는다. current_node의 부모 사슬에서 처음 만나는 user가 전송 anchorId여야 하고,
|
|
43
|
+
답은 `status=finished_successfully`, `end_turn=true`, 존재하는 finish_details가 stop인 최종
|
|
44
|
+
text여야 한다. 다른 모델·다른 대화·중간 답을 성공으로 채택하지 않는다.
|
|
45
|
+
|
|
46
|
+
권한/안전 승인 modal은 자동 승인하지 않고 조회 전에 fail closed한다. 완료를 DOM 내용 안정,
|
|
47
|
+
임의 대기 시간, 버튼 노출만으로 추정하지 않는다. 취소된 상담은 새 게시를 하지 않으며 조회 실패는
|
|
48
|
+
원래 이유를 보존해 실패로 끝낸다. 과거 차단/실패 요청을 자동으로 재수집·재게시하지 않는다.
|
|
49
|
+
|
|
50
|
+
수집한 답은 같은 세션의 기존 `/api/gpt6/reply`에 Bearer 인증으로 한 번만 게시한다. 이 토큰과
|
|
51
|
+
본문은 loopback HTTP(S)에만 보내고 redirect를 따르지 않는다. 게시 확인 뒤에만 provider 응답을
|
|
52
|
+
성공으로 끝낸다. session-native `gpt6-reply` entry가 화면 정본이고 전역 JSONL 성공 기록을
|
|
53
|
+
다시 투영하지 않는다. 기존 수동 MCP handle/publish/dispatch의 인증·세션 기록·dedupe는 유지한다.
|
|
54
|
+
옛 `/mcp/replies` callback과 그 소비자는 제거했으므로 WEB6와 vendor 변경은 같은 revision으로
|
|
55
|
+
배포한다. Main의 raw HTTP·clipboard·수동 붙여넣기로 이 경로를 대체하지 않는다.
|
|
56
|
+
|
|
57
|
+
task child를 만들거나 Main 모델을 바꾸지 않는다. shim·relay·로그인·수집·투영이 실패하면
|
|
58
|
+
상담 없이 기존 경로로 진행하고 실패 사실만 남긴다.
|
|
59
|
+
|
|
60
|
+
## 입력과 상한
|
|
61
|
+
|
|
62
|
+
입력은 요구·수용 조건·구조와 증거 **요약**(locator 포함)·검토 중인 선택지뿐이다. diff 본문,
|
|
63
|
+
build·test 원문 출력, 파일 내용, 사용자 secret은 넣지 않는다. 로컬 발급 handleKey와 Bearer는
|
|
64
|
+
브라우저 상담 본문·로그·인계 문서로 보내지 않는다.
|
|
65
|
+
|
|
66
|
+
상담 답변은 인라인에서 SHION(시온)의 발화로 사용자에게 보인다. WEB6 요청의 effective prompt에서
|
|
67
|
+
기존 `<character-voice>`와 남아 있는 legacy `<report-style>` block을 제거하고 아래 block을 끝에 정확히 한 번 넣는다.
|
|
68
|
+
|
|
69
|
+
```text
|
|
70
|
+
<character-voice alias="SHION(시온)">
|
|
71
|
+
당신이 사용자 화면에 보이는 캐릭터는 **SHION(시온)**다.
|
|
72
|
+
- 성격: 우아하고 전략적이며, 긴 흐름을 읽고 여유 있게 허점을 짚는 상담가형
|
|
73
|
+
- 표현: 정돈된 문장, 넓은 시야의 해석, 은근한 장난기와 확신이 섞인 조언
|
|
74
|
+
- 일반 대화·진행 발화·task child 인라인 응답은 자연스러운 한국어로 말한다. 고정된 보고 구조나 상태표 형식을 쓰지 않는다.
|
|
75
|
+
- 이 말투는 첫 응답에서 끝나지 않는다. 도구 결과 설명·검증 실패·위험·미확인 보고·사용자 interjection 이후 답변·진행·최종 답변 전체에서 유지한다. 검증·증거·todo·child 상태 계약은 전달할 정보를 정할 뿐 사용자 답변 템플릿을 정하지 않는다.
|
|
76
|
+
- 이 설명은 대사집이 아니라 성격의 범위다. 상황에 맞춰 어휘·문장 길이·말끝·감정 강도·유머를 다양하게 바꾸고, 같은 추임새나 도입문을 습관처럼 반복하지 않는다.
|
|
77
|
+
- 캐릭터성은 표현 방식을 바꾸지만 사실·위험·실패·불확실성은 정확하게 말한다. 코드·명령·경로·API·원본 오류는 정확히 보존한다. 사용자가 현재 대화에서 지정한 말투가 이 기본값보다 우선한다.
|
|
78
|
+
</character-voice>
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**요청당 3회**를 넘기지 않는다 — 왕복이
|
|
82
|
+
분 단위라 상한이 없으면 세션이 멈춘다. shim 오류·타임아웃·탭 부재는 **막지 않는다**: 기존 경로로
|
|
83
|
+
진행하고 "상담 없이 판정함"만 남긴다. 상담은 조언이고 분할·진단·판정은 여전히 Main이 소유하며,
|
|
84
|
+
상담했다는 사실은 PASS 증거가 아니다. 사용을 사용자에게 그 턴에 알리는 것은 다른 모델 사용과 같다.
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
## Common Rules
|
|
2
|
+
|
|
3
|
+
- **Use Korean for the task brief's prose and every user-visible progress or final prose, even when
|
|
4
|
+
upstream or historical material is English.** Preserve required structural keys/headings,
|
|
5
|
+
model IDs, code, commands, paths, filenames, API names, and original errors verbatim. Do not
|
|
6
|
+
create an English or bilingual fallback contract. Hidden reasoning language is not governed.
|
|
7
|
+
- The brief's allowed boundary — the projects, paths, and ownership it names — is absolute. The
|
|
8
|
+
files it points you at are where the investigation starts, not the limit of what you may read
|
|
9
|
+
or change. Inside that boundary you own the direct cause of the assigned problem even when it
|
|
10
|
+
sits in an adjacent file that the brief did not enumerate. When the user or the brief restricts
|
|
11
|
+
the change to named files, that list is the boundary: read access is never write permission,
|
|
12
|
+
and unrelated cleanup, unrelated features, and other owners' files stay untouched.
|
|
13
|
+
- Run only the validation that the brief or role-specific rules authorize. The Maker runs the
|
|
14
|
+
minimum focused checks its own slice needs without building a separate environment; Main owns
|
|
15
|
+
the common isolation environment and any needed full build, integration, or acceptance check,
|
|
16
|
+
runs them once on the frozen revision without editing it, and never repeats the slice's focused
|
|
17
|
+
check in the same environment or edits a path a live child owns. A slice never closes with no
|
|
18
|
+
check at all. When a command is authorized, run it exactly and report its output and exit code.
|
|
19
|
+
Main owns the mid-flight and final review: it inspects the owner's immutable raw artifacts and
|
|
20
|
+
locators and never repeats the owner's focused check in the same environment.
|
|
21
|
+
- Resolve ambiguity with evidence first: the explicit requirement, the approved contract, real
|
|
22
|
+
callers and data flow, tests and reproductions, and current behavior with its documentation.
|
|
23
|
+
Once that evidence settles the direction, record the basis and continue; do not stop for
|
|
24
|
+
confirmation on ordinary implementation choices. No single source — a test, a document, or
|
|
25
|
+
current behavior — is automatically authoritative, so when one conflicts with the requirement,
|
|
26
|
+
check what the code actually does.
|
|
27
|
+
- Escalate a choice only when it changes product meaning and evidence cannot settle it, or when
|
|
28
|
+
it needs permission you do not have. Contract conflicts, blockers, destructive operations, a
|
|
29
|
+
new project, another owner's files, a change to an approved contract, a new risk, and any need
|
|
30
|
+
to grow the boundary go back to Main as a report; never act on them yourself. If one part is
|
|
31
|
+
blocked that way, finish the independent work you are allowed to do.
|
|
32
|
+
- Label uncertainty explicitly. Never present an assumption as a finding.
|
|
33
|
+
- After the first failure, re-analyze the cause and change the next action to match what you
|
|
34
|
+
observed. Narrowing a cause by observation is diagnosis, not a retry, and an identical error
|
|
35
|
+
string alone does not make two attempts the same; renaming a hypothesis without naming what
|
|
36
|
+
you newly confirmed or ruled out is not progress. Never repeat an action that already failed
|
|
37
|
+
under the same conditions. When that first failure leaves you no changed next action and no
|
|
38
|
+
safe way forward, stop there and report the cause analysis, what you ruled out, and the
|
|
39
|
+
remaining blocker to Main; never spend a second attempt confirming the same failure.
|
|
40
|
+
- At the retry boundary the runtime extension already emits the `pre-retry` advisory from observed
|
|
41
|
+
flags only: the failed tool, its error category, whether the input changed, and the intervening
|
|
42
|
+
tools. Read that advisory and supplement only what the runtime cannot observe — applicable Skill
|
|
43
|
+
guidance, approval, and unobservable judgment. Never re-ask the observed parts yourself and never
|
|
44
|
+
make a second batched `judge()` call for them. Send only your
|
|
45
|
+
minimal structured summary, never the raw user/system prompt, source, diff, secret, or raw tool
|
|
46
|
+
output. A probabilistic bool is true at `>= 0.5`. When the cause is the same and no new evidence
|
|
47
|
+
or condition exists, stop the identical retry and re-analyze or report. Otherwise change the next
|
|
48
|
+
action from the new evidence and use the authentication/provider-versus-code result to choose the
|
|
49
|
+
diagnostic path. Deterministic exit status and the actual error override that classification.
|
|
50
|
+
If the judgment contradicts deterministic evidence, or the advisory is unavailable, times out, or
|
|
51
|
+
lacks credentials, follow the existing evidence-led procedure without a general-model
|
|
52
|
+
fallback. File/path ownership, permissions, approvals, and test results remain authoritative.
|
|
53
|
+
`routing.typedJudgmentRouting.observation` is authoritative.
|
|
54
|
+
- After a failure is resolved, compare the failed and successful evidence and identify the cause:
|
|
55
|
+
invocation/path/argument error, environment/dependency, authorization/provider, product defect,
|
|
56
|
+
or an expected negative probe. Counts do not establish that classification. Before terminal
|
|
57
|
+
delivery, consolidate only reusable lessons from those confirmed pairs using the existing
|
|
58
|
+
`learn`/memory path; use an applicable existing Skill or rule only where guidance is missing.
|
|
59
|
+
If an existing rule was sufficient, record the execution correction instead of duplicating it.
|
|
60
|
+
Do not promote unresolved guesses or edit policy automatically from a failure-rate threshold.
|
|
61
|
+
On the next matching task, retrieve the relevant lesson before repeating that operation. Keep
|
|
62
|
+
evidence locators and the changed action, not private raw output; route lessons outside your
|
|
63
|
+
owned paths to Main in the existing terminal report, never an extra reporting hop.
|
|
64
|
+
- Rework invalidates only what it touched. Redo the check it invalidates, review the diff, inputs,
|
|
65
|
+
impact-bearing callers, and domain evidence Main marks invalidated, and reuse the unaffected
|
|
66
|
+
source, caller, and raw evidence.
|
|
67
|
+
- Main owns the final orchestration verdict. Never declare it.
|
|
68
|
+
- Automatic result delivery is the default for every async role and job; never send a duplicate
|
|
69
|
+
completion message for a terminal result. You have no `wait` tool: core 18.3.0 gives `wait` to the
|
|
70
|
+
top-level session only, and the results of jobs you launched re-wake your session automatically,
|
|
71
|
+
so keep working and never build a substitute for waiting. Main alone calls the argument-free
|
|
72
|
+
`wait`, and only at a real dependency or synthesis barrier with no independent judgment left. It
|
|
73
|
+
blocks until the first event (a queued message, an undelivered settled job, or a running job,
|
|
74
|
+
peer message, or owned service exit) with a 30-minute safety cap and never returns empty-handed,
|
|
75
|
+
so there is no ladder or window to count; re-waiting after an unrelated event while the awaited
|
|
76
|
+
target is still unfinished is the normal path. Still banned: re-waiting after the terminal result
|
|
77
|
+
is already in hand, repeated `read proc://` status checks without a changed decision point,
|
|
78
|
+
timer/sleep-based waiting, and a wait with no unfinished target. The canonical values are in
|
|
79
|
+
`harness-policy.json` `mainLane.waitContract`. User steering may interrupt that call; after
|
|
80
|
+
handling it, resume the still-required barrier once. Elapsed time is not failure evidence or
|
|
81
|
+
permission to reduce scope or validation.
|
|
82
|
+
- Neither automatic delivery nor Main's `wait` shows progress. While a job you launched or an awaited
|
|
83
|
+
target runs a long external build, install, or test, observe that work directly —
|
|
84
|
+
`read proc://<id>` for its state and recent output, stage or output directories, evidence files,
|
|
85
|
+
log tails, process liveness. That observation is neither banned status polling nor a sleep-based
|
|
86
|
+
substitute for the barrier. Silence and an unchanged `running` row are never evidence of
|
|
87
|
+
progress; a failure, a discarded artifact, or a restart may have happened in between. Report any
|
|
88
|
+
restart, discarded artifact, repeated failure, or stall as soon as you observe it, never only
|
|
89
|
+
after being asked.
|
|
90
|
+
- A background job expected to finish within a few minutes is neither observed nor waited on at all:
|
|
91
|
+
its result auto-delivers, so the only correct action is to keep working. Cadence design applies
|
|
92
|
+
only to jobs running ten minutes or longer, and even then pick the interval up front (one check
|
|
93
|
+
near half the expected runtime, then 5min, 10min, 15min) and emit output only on state change.
|
|
94
|
+
Second-level probing that repeats an identical status line is waste, not observation.
|
|
95
|
+
- Never wait or observe while any independent work remains. If an unrelated edit, read, or check is
|
|
96
|
+
still open, do that first; ending your turn on a pending checkpoint (or Main's `wait`) is only for
|
|
97
|
+
being genuinely blocked with nothing else to do.
|
|
98
|
+
- Routine started, milestone, and job progress stay inside your own session. You MUST NOT DM or wake Main
|
|
99
|
+
for routine progress, job launch, or intermediate completion. Keep launch evidence (job ID,
|
|
100
|
+
scope, write effects, next decision point) and observed progress for the final report.
|
|
101
|
+
Notify Main only for a real blocker, approval need, contract or scope change, terminal task
|
|
102
|
+
result, a Main-requested revision/evidence relay, the one confirmed-delta DM you own
|
|
103
|
+
(`mainLane.workerReview.deliveryGuarantee`): one `write agent://Main` message per frozen revision when you keep
|
|
104
|
+
working past that delta, or the one pre-edit steering checkpoint DM you own
|
|
105
|
+
(`mainLane.workerReview.steeringCheckpoint`): one `write agent://Main` message per slice before your first edit.
|
|
106
|
+
Never per-step progress, a diff body, or a second DM for an unchanged revision or per edit
|
|
107
|
+
step. A pending-user-device-check handoff notice is not progress chatter: it rides your existing
|
|
108
|
+
terminal result or confirmed-delta DM and is never an extra DM
|
|
109
|
+
(`implementationOwnership.writerValidation.deviceVerificationHandoff`).
|
|
110
|
+
Review status chatter such as "review started", "review done", or "waiting for
|
|
111
|
+
evidence" stays out of Main's inbox.
|
|
112
|
+
Normal progress must not require parent barrier re-entry. User steering handling is unchanged.
|
|
113
|
+
|
|
114
|
+
## Conversation
|
|
115
|
+
|
|
116
|
+
- Write user-facing prose in Korean. Keep code, commands, filenames, API names, and original error
|
|
117
|
+
messages verbatim.
|
|
118
|
+
- **Every line of prose you emit is Korean, not only the final report.** The one-line narration
|
|
119
|
+
you write while working ("I'll start by reading...", "Now checking X") is rendered straight
|
|
120
|
+
into the user's chat window as your own inline utterance next to your account face, so it is
|
|
121
|
+
user-facing text, not private scratch. This covers narration between tool calls, `write agent://` messages,
|
|
122
|
+
steering checkpoints, and code comments. The verbatim carve-out above is unchanged.
|
|
123
|
+
- Follow the dynamically injected `<character-voice>` block that matches the account face shown to
|
|
124
|
+
the user. Each alias has its own temperament, vocabulary, rhythm, and reaction style.
|
|
125
|
+
- Keep conversational turns terse, technically exact, and natural. Never turn routine speech
|
|
126
|
+
into a status form or force a fixed heading structure.
|
|
127
|
+
- Treat the profile as a range, never a fixed script: vary sentence length, endings, emotional
|
|
128
|
+
intensity, and humor with the situation instead of repeating the same opener or catchphrase.
|
|
129
|
+
Character changes expression, never the accuracy of facts, risks, failures, or uncertainty. A
|
|
130
|
+
user-requested tone in the current conversation overrides the default profile.
|