cuelo 0.9.5 → 0.9.7

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.
Files changed (356) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +10 -9
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/required-server-files.js +2 -2
  6. package/.next/required-server-files.json +2 -2
  7. package/.next/routes-manifest.json +6 -0
  8. package/.next/server/app/_global-error/page.js +3 -3
  9. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/_global-error.html +1 -1
  11. package/.next/server/app/_global-error.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/.next/server/app/_not-found/page.js +2 -2
  19. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/.next/server/app/_not-found.html +1 -1
  21. package/.next/server/app/_not-found.rsc +3 -3
  22. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  23. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  24. package/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  25. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  26. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  27. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  28. package/.next/server/app/api/agent/[id]/account/route.js +1 -1
  29. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
  30. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  31. package/.next/server/app/api/agent/[id]/route.js +1 -1
  32. package/.next/server/app/api/agent/new/route.js +1 -1
  33. package/.next/server/app/api/agent/running/route.js +1 -1
  34. package/.next/server/app/api/attachment-settings/route.js +1 -1
  35. package/.next/server/app/api/attachments/[id]/transcription/route.js +2 -2
  36. package/.next/server/app/api/attachments/draft/route.js +1 -1
  37. package/.next/server/app/api/attachments/route.js +3 -3
  38. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  39. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  40. package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
  41. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  42. package/.next/server/app/api/auth/providers/route.js +1 -1
  43. package/.next/server/app/api/cwd/browse/route.js +1 -1
  44. package/.next/server/app/api/cwd/validate/route.js +1 -1
  45. package/.next/server/app/api/default-cwd/route.js +1 -1
  46. package/.next/server/app/api/display-settings/route.js +1 -1
  47. package/.next/server/app/api/document-text/route.js +2 -2
  48. package/.next/server/app/api/experiments/route.js +1 -1
  49. package/.next/server/app/api/file-index/route.js +1 -1
  50. package/.next/server/app/api/files/[...path]/route.js +3 -3
  51. package/.next/server/app/api/git/diff/route.js +1 -1
  52. package/.next/server/app/api/git/status/route.js +1 -1
  53. package/.next/server/app/api/github/projects/route.js +1 -0
  54. package/.next/server/app/api/github/projects/route.js.nft.json +1 -0
  55. package/.next/server/app/api/github/projects/route_client-reference-manifest.js +1 -0
  56. package/.next/server/app/api/gpt6/handles/route.js +1 -1
  57. package/.next/server/app/api/gpt6/reply/route.js +1 -1
  58. package/.next/server/app/api/gpt6/token/route.js +1 -1
  59. package/.next/server/app/api/gpt6/web6-session/route.js +1 -1
  60. package/.next/server/app/api/home/route.js +1 -1
  61. package/.next/server/app/api/live/call/[callId]/route.js +1 -1
  62. package/.next/server/app/api/live/character-voice/route.js +1 -1
  63. package/.next/server/app/api/live/events/route.js +2 -2
  64. package/.next/server/app/api/live/offer/route.js +1 -1
  65. package/.next/server/app/api/live/voices/route.js +1 -1
  66. package/.next/server/app/api/lounge/events/route.js +2 -2
  67. package/.next/server/app/api/lounge/route.js +1 -1
  68. package/.next/server/app/api/mcp/route.js +2 -2
  69. package/.next/server/app/api/model-roles/route.js +1 -1
  70. package/.next/server/app/api/models/route.js +1 -1
  71. package/.next/server/app/api/models-config/catalog/route.js +1 -1
  72. package/.next/server/app/api/models-config/discover/route.js +1 -1
  73. package/.next/server/app/api/models-config/route.js +3 -3
  74. package/.next/server/app/api/models-config/test/route.js +1 -1
  75. package/.next/server/app/api/office-avatars/[id]/route.js +1 -1
  76. package/.next/server/app/api/office-avatars/route.js +1 -1
  77. package/.next/server/app/api/plugins/route.js +1 -1
  78. package/.next/server/app/api/project-trust/route.js +1 -1
  79. package/.next/server/app/api/projects/route.js +1 -1
  80. package/.next/server/app/api/runs/[runId]/route.js +1 -1
  81. package/.next/server/app/api/runs/route.js +1 -1
  82. package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
  83. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  84. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
  85. package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
  86. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  87. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  88. package/.next/server/app/api/sessions/route.js +1 -1
  89. package/.next/server/app/api/sessions/search/route.js +1 -1
  90. package/.next/server/app/api/settings/route.js +1 -1
  91. package/.next/server/app/api/sidecars/[service]/[...path]/route.js +1 -1
  92. package/.next/server/app/api/skills/check/route.js +1 -1
  93. package/.next/server/app/api/skills/install/route.js +2 -2
  94. package/.next/server/app/api/skills/route.js +2 -2
  95. package/.next/server/app/api/skills/search/route.js +1 -1
  96. package/.next/server/app/api/skills/update/route.js +1 -1
  97. package/.next/server/app/api/theme/route.js +1 -1
  98. package/.next/server/app/api/tool-image/route.js +1 -1
  99. package/.next/server/app/api/update-maintenance/route.js +2 -2
  100. package/.next/server/app/api/updates/route.js +1 -1
  101. package/.next/server/app/api/web-access/recovery/route.js +1 -1
  102. package/.next/server/app/api/web-access/route.js +1 -1
  103. package/.next/server/app/api/web6/consults/route.js +1 -1
  104. package/.next/server/app/api/worktrees/route.js +1 -1
  105. package/.next/server/app/favicon.ico/route.js +1 -1
  106. package/.next/server/app/index.html +1 -1
  107. package/.next/server/app/index.rsc +6 -6
  108. package/.next/server/app/index.segments/__PAGE__.segment.rsc +4 -4
  109. package/.next/server/app/index.segments/_full.segment.rsc +6 -6
  110. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  111. package/.next/server/app/index.segments/_index.segment.rsc +3 -3
  112. package/.next/server/app/index.segments/_tree.segment.rsc +3 -3
  113. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  114. package/.next/server/app/office/page.js +2 -2
  115. package/.next/server/app/office/page_client-reference-manifest.js +1 -1
  116. package/.next/server/app/office-preview/page.js +2 -2
  117. package/.next/server/app/office-preview/page_client-reference-manifest.js +1 -1
  118. package/.next/server/app/office-preview.html +1 -1
  119. package/.next/server/app/office-preview.rsc +3 -3
  120. package/.next/server/app/office-preview.segments/_full.segment.rsc +3 -3
  121. package/.next/server/app/office-preview.segments/_head.segment.rsc +1 -1
  122. package/.next/server/app/office-preview.segments/_index.segment.rsc +3 -3
  123. package/.next/server/app/office-preview.segments/_tree.segment.rsc +2 -2
  124. package/.next/server/app/office-preview.segments/office-preview/__PAGE__.segment.rsc +1 -1
  125. package/.next/server/app/office-preview.segments/office-preview.segment.rsc +1 -1
  126. package/.next/server/app/office.html +1 -1
  127. package/.next/server/app/office.rsc +6 -6
  128. package/.next/server/app/office.segments/_full.segment.rsc +6 -6
  129. package/.next/server/app/office.segments/_head.segment.rsc +1 -1
  130. package/.next/server/app/office.segments/_index.segment.rsc +3 -3
  131. package/.next/server/app/office.segments/_tree.segment.rsc +3 -3
  132. package/.next/server/app/office.segments/office/__PAGE__.segment.rsc +4 -4
  133. package/.next/server/app/office.segments/office.segment.rsc +1 -1
  134. package/.next/server/app/page.js +2 -2
  135. package/.next/server/app/page_client-reference-manifest.js +1 -1
  136. package/.next/server/app/recover/page.js +2 -2
  137. package/.next/server/app/recover/page_client-reference-manifest.js +1 -1
  138. package/.next/server/app/recover.html +1 -1
  139. package/.next/server/app/recover.rsc +3 -3
  140. package/.next/server/app/recover.segments/_full.segment.rsc +3 -3
  141. package/.next/server/app/recover.segments/_head.segment.rsc +1 -1
  142. package/.next/server/app/recover.segments/_index.segment.rsc +3 -3
  143. package/.next/server/app/recover.segments/_tree.segment.rsc +2 -2
  144. package/.next/server/app/recover.segments/recover/__PAGE__.segment.rsc +1 -1
  145. package/.next/server/app/recover.segments/recover.segment.rsc +1 -1
  146. package/.next/server/app-paths-manifest.json +10 -9
  147. package/.next/server/chunks/1008.js +2 -2
  148. package/.next/server/chunks/2651.js +1 -1
  149. package/.next/server/chunks/3379.js +1 -1
  150. package/.next/server/chunks/5489.js +12 -12
  151. package/.next/server/chunks/6429.js +2 -2
  152. package/.next/server/chunks/7362.js +1 -1
  153. package/.next/server/middleware-build-manifest.js +1 -1
  154. package/.next/server/middleware.js +2 -2
  155. package/.next/server/pages/404.html +1 -1
  156. package/.next/server/pages/500.html +1 -1
  157. package/.next/server/server-reference-manifest.json +1 -1
  158. package/.next/static/chunks/6110-9f1e951aafcdd72e.js +1 -0
  159. package/.next/static/chunks/9575-fe25836fd76b4655.js +22 -0
  160. package/.next/static/chunks/app/_global-error/{page-6b1496af498bb4fd.js → page-318ea6a550b5034e.js} +1 -1
  161. package/.next/static/chunks/app/api/agent/[id]/account/{route-6b1496af498bb4fd.js → route-318ea6a550b5034e.js} +1 -1
  162. package/.next/static/chunks/app/api/agent/[id]/bash-output/{route-6b1496af498bb4fd.js → route-318ea6a550b5034e.js} +1 -1
  163. package/.next/static/chunks/app/api/agent/[id]/events/{route-6b1496af498bb4fd.js → route-318ea6a550b5034e.js} +1 -1
  164. package/.next/static/chunks/app/api/agent/[id]/route-318ea6a550b5034e.js +1 -0
  165. package/.next/static/chunks/app/api/agent/new/route-318ea6a550b5034e.js +1 -0
  166. package/.next/static/chunks/app/api/agent/running/route-318ea6a550b5034e.js +1 -0
  167. package/.next/static/chunks/app/api/attachment-settings/route-318ea6a550b5034e.js +1 -0
  168. package/.next/static/chunks/app/api/attachments/[id]/transcription/route-318ea6a550b5034e.js +1 -0
  169. package/.next/static/chunks/app/api/attachments/draft/route-318ea6a550b5034e.js +1 -0
  170. package/.next/static/chunks/app/api/attachments/route-318ea6a550b5034e.js +1 -0
  171. package/.next/static/chunks/app/api/auth/all-providers/route-318ea6a550b5034e.js +1 -0
  172. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-318ea6a550b5034e.js +1 -0
  173. package/.next/static/chunks/app/api/auth/login/[provider]/route-318ea6a550b5034e.js +1 -0
  174. package/.next/static/chunks/app/api/auth/logout/[provider]/route-318ea6a550b5034e.js +1 -0
  175. package/.next/static/chunks/app/api/auth/providers/route-318ea6a550b5034e.js +1 -0
  176. package/.next/static/chunks/app/api/cwd/browse/route-318ea6a550b5034e.js +1 -0
  177. package/.next/static/chunks/app/api/cwd/validate/route-318ea6a550b5034e.js +1 -0
  178. package/.next/static/chunks/app/api/default-cwd/route-318ea6a550b5034e.js +1 -0
  179. package/.next/static/chunks/app/api/display-settings/route-318ea6a550b5034e.js +1 -0
  180. package/.next/static/chunks/app/api/document-text/route-318ea6a550b5034e.js +1 -0
  181. package/.next/static/chunks/app/api/experiments/route-318ea6a550b5034e.js +1 -0
  182. package/.next/static/chunks/app/api/file-index/route-318ea6a550b5034e.js +1 -0
  183. package/.next/static/chunks/app/api/files/[...path]/route-318ea6a550b5034e.js +1 -0
  184. package/.next/static/chunks/app/api/git/diff/route-318ea6a550b5034e.js +1 -0
  185. package/.next/static/chunks/app/api/git/status/route-318ea6a550b5034e.js +1 -0
  186. package/.next/static/chunks/app/api/github/projects/route-318ea6a550b5034e.js +1 -0
  187. package/.next/static/chunks/app/api/gpt6/handles/route-318ea6a550b5034e.js +1 -0
  188. package/.next/static/chunks/app/api/gpt6/reply/route-318ea6a550b5034e.js +1 -0
  189. package/.next/static/chunks/app/api/gpt6/token/route-318ea6a550b5034e.js +1 -0
  190. package/.next/static/chunks/app/api/gpt6/web6-session/route-318ea6a550b5034e.js +1 -0
  191. package/.next/static/chunks/app/api/home/route-318ea6a550b5034e.js +1 -0
  192. package/.next/static/chunks/app/api/live/call/[callId]/route-318ea6a550b5034e.js +1 -0
  193. package/.next/static/chunks/app/api/live/character-voice/route-318ea6a550b5034e.js +1 -0
  194. package/.next/static/chunks/app/api/live/events/route-318ea6a550b5034e.js +1 -0
  195. package/.next/static/chunks/app/api/live/offer/route-318ea6a550b5034e.js +1 -0
  196. package/.next/static/chunks/app/api/live/voices/route-318ea6a550b5034e.js +1 -0
  197. package/.next/static/chunks/app/api/lounge/events/route-318ea6a550b5034e.js +1 -0
  198. package/.next/static/chunks/app/api/lounge/route-318ea6a550b5034e.js +1 -0
  199. package/.next/static/chunks/app/api/mcp/route-318ea6a550b5034e.js +1 -0
  200. package/.next/static/chunks/app/api/model-roles/route-318ea6a550b5034e.js +1 -0
  201. package/.next/static/chunks/app/api/models/route-318ea6a550b5034e.js +1 -0
  202. package/.next/static/chunks/app/api/models-config/catalog/route-318ea6a550b5034e.js +1 -0
  203. package/.next/static/chunks/app/api/models-config/discover/route-318ea6a550b5034e.js +1 -0
  204. package/.next/static/chunks/app/api/models-config/route-318ea6a550b5034e.js +1 -0
  205. package/.next/static/chunks/app/api/models-config/test/route-318ea6a550b5034e.js +1 -0
  206. package/.next/static/chunks/app/api/office-avatars/[id]/route-318ea6a550b5034e.js +1 -0
  207. package/.next/static/chunks/app/api/office-avatars/route-318ea6a550b5034e.js +1 -0
  208. package/.next/static/chunks/app/api/plugins/route-318ea6a550b5034e.js +1 -0
  209. package/.next/static/chunks/app/api/project-trust/route-318ea6a550b5034e.js +1 -0
  210. package/.next/static/chunks/app/api/projects/route-318ea6a550b5034e.js +1 -0
  211. package/.next/static/chunks/app/api/runs/[runId]/route-318ea6a550b5034e.js +1 -0
  212. package/.next/static/chunks/app/api/runs/route-318ea6a550b5034e.js +1 -0
  213. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-318ea6a550b5034e.js +1 -0
  214. package/.next/static/chunks/app/api/sessions/[id]/context/route-318ea6a550b5034e.js +1 -0
  215. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-318ea6a550b5034e.js +1 -0
  216. package/.next/static/chunks/app/api/sessions/[id]/export/route-318ea6a550b5034e.js +1 -0
  217. package/.next/static/chunks/app/api/sessions/[id]/route-318ea6a550b5034e.js +1 -0
  218. package/.next/static/chunks/app/api/sessions/[id]/state/route-318ea6a550b5034e.js +1 -0
  219. package/.next/static/chunks/app/api/sessions/route-318ea6a550b5034e.js +1 -0
  220. package/.next/static/chunks/app/api/sessions/search/route-318ea6a550b5034e.js +1 -0
  221. package/.next/static/chunks/app/api/settings/route-318ea6a550b5034e.js +1 -0
  222. package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-318ea6a550b5034e.js +1 -0
  223. package/.next/static/chunks/app/api/skills/check/route-318ea6a550b5034e.js +1 -0
  224. package/.next/static/chunks/app/api/skills/install/route-318ea6a550b5034e.js +1 -0
  225. package/.next/static/chunks/app/api/skills/route-318ea6a550b5034e.js +1 -0
  226. package/.next/static/chunks/app/api/skills/search/route-318ea6a550b5034e.js +1 -0
  227. package/.next/static/chunks/app/api/skills/update/route-318ea6a550b5034e.js +1 -0
  228. package/.next/static/chunks/app/api/theme/route-318ea6a550b5034e.js +1 -0
  229. package/.next/static/chunks/app/api/tool-image/route-318ea6a550b5034e.js +1 -0
  230. package/.next/static/chunks/app/api/update-maintenance/route-318ea6a550b5034e.js +1 -0
  231. package/.next/static/chunks/app/api/updates/route-318ea6a550b5034e.js +1 -0
  232. package/.next/static/chunks/app/api/web-access/recovery/route-318ea6a550b5034e.js +1 -0
  233. package/.next/static/chunks/app/api/web-access/route-318ea6a550b5034e.js +1 -0
  234. package/.next/static/chunks/app/api/web6/consults/route-318ea6a550b5034e.js +1 -0
  235. package/.next/static/chunks/app/api/worktrees/route-318ea6a550b5034e.js +1 -0
  236. package/.next/static/chunks/app/{layout-890e772919e033dc.js → layout-2bf5721b24426873.js} +1 -1
  237. package/.next/static/chunks/app/manifest.webmanifest/route-318ea6a550b5034e.js +1 -0
  238. package/.next/static/chunks/app/office/page-8dc604f9b5e6f220.js +1 -0
  239. package/.next/static/chunks/app/page-952b1ef4df5ac896.js +1 -0
  240. package/.next/static/chunks/next/dist/client/components/builtin/app-error-318ea6a550b5034e.js +1 -0
  241. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-318ea6a550b5034e.js +1 -0
  242. package/.next/static/chunks/next/dist/client/components/builtin/not-found-318ea6a550b5034e.js +1 -0
  243. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-318ea6a550b5034e.js +1 -0
  244. package/.next/static/chunks/{webpack-fe8f1f81562a2b61.js → webpack-68986b211ad38cf1.js} +1 -1
  245. package/.next/static/css/4fae42750604bc1a.css +1 -0
  246. package/.next/static/css/7a264466e19eaafd.css +1 -0
  247. package/.next/static/vrwvD7kuXEjDJZtO0Q3iO/_buildManifest.js +1 -0
  248. package/.next/trace +108 -108
  249. package/.next/trace-build +1 -1
  250. package/.next/types/app/api/github/projects/route.ts +351 -0
  251. package/.next/types/routes.d.ts +2 -1
  252. package/.next/types/validator.ts +9 -0
  253. package/README.md +10 -3
  254. package/Tools/CUELO_Setup/files/native-runtime-patch.js +3 -3
  255. package/Tools/OMP_Global_Config/agent/AGENTS.md +6 -0
  256. package/Tools/OMP_Global_Config/agent/RULES.md +1 -0
  257. package/Tools/OMP_Global_Config/agent/TITLE_SYSTEM.md +17 -0
  258. package/Tools/OMP_Global_Config/agent/agents/maker.md +11 -5
  259. package/Tools/OMP_Global_Config/agent/extensions/gitnexus-autosync.ts +89 -19
  260. package/Tools/OMP_Global_Config/agent/extensions/jev-runtime.ts +205 -4
  261. package/Tools/OMP_Global_Config/agent/extensions/lib/maker-routing.ts +1 -1
  262. package/Tools/OMP_Global_Config/agent/prompt-copies/AGENTS.en.md +7 -1
  263. package/Tools/OMP_Global_Config/agent/prompt-copies/RULES.en.md +2 -1
  264. package/Tools/OMP_Global_Config/agent/rules/harness-policy.json +23 -8
  265. package/Tools/OMP_Global_Config/agent/rules/subagent.md +16 -2
  266. package/Tools/OMP_Global_Config/agent/sop/_writer.md +10 -4
  267. package/Tools/OMP_Global_Config/agent/tools/git-finalizer/finalizer.ps1 +68 -31
  268. package/Tools/OMP_Global_Config/agent/tools/git-finalizer/index.ts +8 -6
  269. package/Tools/OMP_Global_Config/patches/apply-core-patch.mjs +1277 -164
  270. package/bin/docker-entrypoint.mjs +19 -0
  271. package/install.mjs +12 -7
  272. package/package.json +8 -7
  273. package/.next/static/b4yL-hhdDIhd8tZ_DFHIS/_buildManifest.js +0 -1
  274. package/.next/static/chunks/6110-004be57c825af4d9.js +0 -1
  275. package/.next/static/chunks/9575-9eb94dc1e8bcd130.js +0 -22
  276. package/.next/static/chunks/app/api/agent/[id]/route-6b1496af498bb4fd.js +0 -1
  277. package/.next/static/chunks/app/api/agent/new/route-6b1496af498bb4fd.js +0 -1
  278. package/.next/static/chunks/app/api/agent/running/route-6b1496af498bb4fd.js +0 -1
  279. package/.next/static/chunks/app/api/attachment-settings/route-6b1496af498bb4fd.js +0 -1
  280. package/.next/static/chunks/app/api/attachments/[id]/transcription/route-6b1496af498bb4fd.js +0 -1
  281. package/.next/static/chunks/app/api/attachments/draft/route-6b1496af498bb4fd.js +0 -1
  282. package/.next/static/chunks/app/api/attachments/route-6b1496af498bb4fd.js +0 -1
  283. package/.next/static/chunks/app/api/auth/all-providers/route-6b1496af498bb4fd.js +0 -1
  284. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-6b1496af498bb4fd.js +0 -1
  285. package/.next/static/chunks/app/api/auth/login/[provider]/route-6b1496af498bb4fd.js +0 -1
  286. package/.next/static/chunks/app/api/auth/logout/[provider]/route-6b1496af498bb4fd.js +0 -1
  287. package/.next/static/chunks/app/api/auth/providers/route-6b1496af498bb4fd.js +0 -1
  288. package/.next/static/chunks/app/api/cwd/browse/route-6b1496af498bb4fd.js +0 -1
  289. package/.next/static/chunks/app/api/cwd/validate/route-6b1496af498bb4fd.js +0 -1
  290. package/.next/static/chunks/app/api/default-cwd/route-6b1496af498bb4fd.js +0 -1
  291. package/.next/static/chunks/app/api/display-settings/route-6b1496af498bb4fd.js +0 -1
  292. package/.next/static/chunks/app/api/document-text/route-6b1496af498bb4fd.js +0 -1
  293. package/.next/static/chunks/app/api/experiments/route-6b1496af498bb4fd.js +0 -1
  294. package/.next/static/chunks/app/api/file-index/route-6b1496af498bb4fd.js +0 -1
  295. package/.next/static/chunks/app/api/files/[...path]/route-6b1496af498bb4fd.js +0 -1
  296. package/.next/static/chunks/app/api/git/diff/route-6b1496af498bb4fd.js +0 -1
  297. package/.next/static/chunks/app/api/git/status/route-6b1496af498bb4fd.js +0 -1
  298. package/.next/static/chunks/app/api/gpt6/handles/route-6b1496af498bb4fd.js +0 -1
  299. package/.next/static/chunks/app/api/gpt6/reply/route-6b1496af498bb4fd.js +0 -1
  300. package/.next/static/chunks/app/api/gpt6/token/route-6b1496af498bb4fd.js +0 -1
  301. package/.next/static/chunks/app/api/gpt6/web6-session/route-6b1496af498bb4fd.js +0 -1
  302. package/.next/static/chunks/app/api/home/route-6b1496af498bb4fd.js +0 -1
  303. package/.next/static/chunks/app/api/live/call/[callId]/route-6b1496af498bb4fd.js +0 -1
  304. package/.next/static/chunks/app/api/live/character-voice/route-6b1496af498bb4fd.js +0 -1
  305. package/.next/static/chunks/app/api/live/events/route-6b1496af498bb4fd.js +0 -1
  306. package/.next/static/chunks/app/api/live/offer/route-6b1496af498bb4fd.js +0 -1
  307. package/.next/static/chunks/app/api/live/voices/route-6b1496af498bb4fd.js +0 -1
  308. package/.next/static/chunks/app/api/lounge/events/route-6b1496af498bb4fd.js +0 -1
  309. package/.next/static/chunks/app/api/lounge/route-6b1496af498bb4fd.js +0 -1
  310. package/.next/static/chunks/app/api/mcp/route-6b1496af498bb4fd.js +0 -1
  311. package/.next/static/chunks/app/api/model-roles/route-6b1496af498bb4fd.js +0 -1
  312. package/.next/static/chunks/app/api/models/route-6b1496af498bb4fd.js +0 -1
  313. package/.next/static/chunks/app/api/models-config/catalog/route-6b1496af498bb4fd.js +0 -1
  314. package/.next/static/chunks/app/api/models-config/discover/route-6b1496af498bb4fd.js +0 -1
  315. package/.next/static/chunks/app/api/models-config/route-6b1496af498bb4fd.js +0 -1
  316. package/.next/static/chunks/app/api/models-config/test/route-6b1496af498bb4fd.js +0 -1
  317. package/.next/static/chunks/app/api/office-avatars/[id]/route-6b1496af498bb4fd.js +0 -1
  318. package/.next/static/chunks/app/api/office-avatars/route-6b1496af498bb4fd.js +0 -1
  319. package/.next/static/chunks/app/api/plugins/route-6b1496af498bb4fd.js +0 -1
  320. package/.next/static/chunks/app/api/project-trust/route-6b1496af498bb4fd.js +0 -1
  321. package/.next/static/chunks/app/api/projects/route-6b1496af498bb4fd.js +0 -1
  322. package/.next/static/chunks/app/api/runs/[runId]/route-6b1496af498bb4fd.js +0 -1
  323. package/.next/static/chunks/app/api/runs/route-6b1496af498bb4fd.js +0 -1
  324. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-6b1496af498bb4fd.js +0 -1
  325. package/.next/static/chunks/app/api/sessions/[id]/context/route-6b1496af498bb4fd.js +0 -1
  326. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-6b1496af498bb4fd.js +0 -1
  327. package/.next/static/chunks/app/api/sessions/[id]/export/route-6b1496af498bb4fd.js +0 -1
  328. package/.next/static/chunks/app/api/sessions/[id]/route-6b1496af498bb4fd.js +0 -1
  329. package/.next/static/chunks/app/api/sessions/[id]/state/route-6b1496af498bb4fd.js +0 -1
  330. package/.next/static/chunks/app/api/sessions/route-6b1496af498bb4fd.js +0 -1
  331. package/.next/static/chunks/app/api/sessions/search/route-6b1496af498bb4fd.js +0 -1
  332. package/.next/static/chunks/app/api/settings/route-6b1496af498bb4fd.js +0 -1
  333. package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-6b1496af498bb4fd.js +0 -1
  334. package/.next/static/chunks/app/api/skills/check/route-6b1496af498bb4fd.js +0 -1
  335. package/.next/static/chunks/app/api/skills/install/route-6b1496af498bb4fd.js +0 -1
  336. package/.next/static/chunks/app/api/skills/route-6b1496af498bb4fd.js +0 -1
  337. package/.next/static/chunks/app/api/skills/search/route-6b1496af498bb4fd.js +0 -1
  338. package/.next/static/chunks/app/api/skills/update/route-6b1496af498bb4fd.js +0 -1
  339. package/.next/static/chunks/app/api/theme/route-6b1496af498bb4fd.js +0 -1
  340. package/.next/static/chunks/app/api/tool-image/route-6b1496af498bb4fd.js +0 -1
  341. package/.next/static/chunks/app/api/update-maintenance/route-6b1496af498bb4fd.js +0 -1
  342. package/.next/static/chunks/app/api/updates/route-6b1496af498bb4fd.js +0 -1
  343. package/.next/static/chunks/app/api/web-access/recovery/route-6b1496af498bb4fd.js +0 -1
  344. package/.next/static/chunks/app/api/web-access/route-6b1496af498bb4fd.js +0 -1
  345. package/.next/static/chunks/app/api/web6/consults/route-6b1496af498bb4fd.js +0 -1
  346. package/.next/static/chunks/app/api/worktrees/route-6b1496af498bb4fd.js +0 -1
  347. package/.next/static/chunks/app/manifest.webmanifest/route-6b1496af498bb4fd.js +0 -1
  348. package/.next/static/chunks/app/office/page-424e244f1c7fcdc6.js +0 -1
  349. package/.next/static/chunks/app/page-b43b2b8679ed66e2.js +0 -1
  350. package/.next/static/chunks/next/dist/client/components/builtin/app-error-6b1496af498bb4fd.js +0 -1
  351. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-6b1496af498bb4fd.js +0 -1
  352. package/.next/static/chunks/next/dist/client/components/builtin/not-found-6b1496af498bb4fd.js +0 -1
  353. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6b1496af498bb4fd.js +0 -1
  354. package/.next/static/css/1ffe2d5d654f7eea.css +0 -1
  355. package/.next/static/css/81a05eb6255ef12e.css +0 -1
  356. /package/.next/static/{b4yL-hhdDIhd8tZ_DFHIS → vrwvD7kuXEjDJZtO0Q3iO}/_ssgManifest.js +0 -0
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-webpack","duration":118902486,"timestamp":750983,"id":14,"parentId":1,"tags":{},"startTime":1791187467741,"traceId":"f2a993b40c58c07b"},{"name":"run-typescript","duration":21250862,"timestamp":120014802,"id":11060,"parentId":1,"tags":{},"startTime":1791187587007,"traceId":"f2a993b40c58c07b"},{"name":"static-check","duration":4116556,"timestamp":141361989,"id":11063,"parentId":1,"tags":{},"startTime":1791187608354,"traceId":"f2a993b40c58c07b"},{"name":"static-generation","duration":12489945,"timestamp":145590809,"id":11233,"parentId":1,"tags":{},"startTime":1791187612583,"traceId":"f2a993b40c58c07b"},{"name":"collect-build-traces","duration":22042462,"timestamp":145552634,"id":11230,"parentId":1,"tags":{},"startTime":1791187612545,"traceId":"f2a993b40c58c07b"},{"name":"telemetry-flush","duration":83,"timestamp":167599687,"id":11242,"parentId":1,"tags":{},"startTime":1791187634592,"traceId":"f2a993b40c58c07b"},{"name":"next-build","duration":166956596,"timestamp":643197,"id":1,"tags":{"buildMode":"default","version":"16.2.12","bundler":"webpack","has-custom-webpack-config":"true","use-build-worker":"false"},"startTime":1791187467633,"traceId":"f2a993b40c58c07b"}]
1
+ [{"name":"run-webpack","duration":72389084,"timestamp":482166,"id":14,"parentId":1,"tags":{},"startTime":1791304441290,"traceId":"2884e985fe8af4dd"},{"name":"run-typescript","duration":12676339,"timestamp":73190125,"id":11084,"parentId":1,"tags":{},"startTime":1791304513999,"traceId":"2884e985fe8af4dd"},{"name":"static-check","duration":3728380,"timestamp":85943245,"id":11087,"parentId":1,"tags":{},"startTime":1791304526752,"traceId":"2884e985fe8af4dd"},{"name":"static-generation","duration":5957315,"timestamp":89752602,"id":11259,"parentId":1,"tags":{},"startTime":1791304530562,"traceId":"2884e985fe8af4dd"},{"name":"collect-build-traces","duration":13514574,"timestamp":89731595,"id":11256,"parentId":1,"tags":{},"startTime":1791304530541,"traceId":"2884e985fe8af4dd"},{"name":"telemetry-flush","duration":44,"timestamp":103249229,"id":11268,"parentId":1,"tags":{},"startTime":1791304544058,"traceId":"2884e985fe8af4dd"},{"name":"next-build","duration":102844180,"timestamp":405110,"id":1,"tags":{"buildMode":"default","version":"16.2.12","bundler":"webpack","has-custom-webpack-config":"true","use-build-worker":"false"},"startTime":1791304441213,"traceId":"2884e985fe8af4dd"}]
@@ -0,0 +1,351 @@
1
+ // File: D:\a\CUELO\CUELO\app\api\github\projects\route.ts
2
+ import * as entry from '../../../../../../app/api/github/projects/route.js'
3
+ import type { NextRequest } from 'next/server.js'
4
+
5
+ import type { InstantConfigForTypeCheckInternal } from 'next/dist/build/segment-config/app/app-segment-config.js'
6
+
7
+ type TEntry = typeof import('../../../../../../app/api/github/projects/route.js')
8
+
9
+ type SegmentParams<T extends Object = any> = T extends Record<string, any>
10
+ ? { [K in keyof T]: T[K] extends string ? string | string[] | undefined : never }
11
+ : T
12
+
13
+ // Check that the entry is a valid entry
14
+ checkFields<Diff<{
15
+ GET?: Function
16
+ HEAD?: Function
17
+ OPTIONS?: Function
18
+ POST?: Function
19
+ PUT?: Function
20
+ DELETE?: Function
21
+ PATCH?: Function
22
+ config?: {}
23
+ generateStaticParams?: Function
24
+ unstable_instant?: InstantConfigForTypeCheckInternal
25
+ unstable_dynamicStaleTime?: number
26
+ revalidate?: RevalidateRange<TEntry> | false
27
+ dynamic?: 'auto' | 'force-dynamic' | 'error' | 'force-static'
28
+ dynamicParams?: boolean
29
+ fetchCache?: 'auto' | 'force-no-store' | 'only-no-store' | 'default-no-store' | 'default-cache' | 'only-cache' | 'force-cache'
30
+ preferredRegion?: 'auto' | 'global' | 'home' | string | string[]
31
+ runtime?: 'nodejs' | 'experimental-edge' | 'edge'
32
+ maxDuration?: number
33
+
34
+ }, TEntry, ''>>()
35
+
36
+ type RouteContext = { params: Promise<SegmentParams> }
37
+ // Check the prop type of the entry function
38
+ if ('GET' in entry) {
39
+ checkFields<
40
+ Diff<
41
+ ParamCheck<Request | NextRequest>,
42
+ {
43
+ __tag__: 'GET'
44
+ __param_position__: 'first'
45
+ __param_type__: FirstArg<MaybeField<TEntry, 'GET'>>
46
+ },
47
+ 'GET'
48
+ >
49
+ >()
50
+ checkFields<
51
+ Diff<
52
+ ParamCheck<RouteContext>,
53
+ {
54
+ __tag__: 'GET'
55
+ __param_position__: 'second'
56
+ __param_type__: SecondArg<MaybeField<TEntry, 'GET'>>
57
+ },
58
+ 'GET'
59
+ >
60
+ >()
61
+
62
+ checkFields<
63
+ Diff<
64
+ {
65
+ __tag__: 'GET',
66
+ __return_type__: Response | void | never | Promise<Response | void | never>
67
+ },
68
+ {
69
+ __tag__: 'GET',
70
+ __return_type__: ReturnType<MaybeField<TEntry, 'GET'>>
71
+ },
72
+ 'GET'
73
+ >
74
+ >()
75
+ }
76
+ // Check the prop type of the entry function
77
+ if ('HEAD' in entry) {
78
+ checkFields<
79
+ Diff<
80
+ ParamCheck<Request | NextRequest>,
81
+ {
82
+ __tag__: 'HEAD'
83
+ __param_position__: 'first'
84
+ __param_type__: FirstArg<MaybeField<TEntry, 'HEAD'>>
85
+ },
86
+ 'HEAD'
87
+ >
88
+ >()
89
+ checkFields<
90
+ Diff<
91
+ ParamCheck<RouteContext>,
92
+ {
93
+ __tag__: 'HEAD'
94
+ __param_position__: 'second'
95
+ __param_type__: SecondArg<MaybeField<TEntry, 'HEAD'>>
96
+ },
97
+ 'HEAD'
98
+ >
99
+ >()
100
+
101
+ checkFields<
102
+ Diff<
103
+ {
104
+ __tag__: 'HEAD',
105
+ __return_type__: Response | void | never | Promise<Response | void | never>
106
+ },
107
+ {
108
+ __tag__: 'HEAD',
109
+ __return_type__: ReturnType<MaybeField<TEntry, 'HEAD'>>
110
+ },
111
+ 'HEAD'
112
+ >
113
+ >()
114
+ }
115
+ // Check the prop type of the entry function
116
+ if ('OPTIONS' in entry) {
117
+ checkFields<
118
+ Diff<
119
+ ParamCheck<Request | NextRequest>,
120
+ {
121
+ __tag__: 'OPTIONS'
122
+ __param_position__: 'first'
123
+ __param_type__: FirstArg<MaybeField<TEntry, 'OPTIONS'>>
124
+ },
125
+ 'OPTIONS'
126
+ >
127
+ >()
128
+ checkFields<
129
+ Diff<
130
+ ParamCheck<RouteContext>,
131
+ {
132
+ __tag__: 'OPTIONS'
133
+ __param_position__: 'second'
134
+ __param_type__: SecondArg<MaybeField<TEntry, 'OPTIONS'>>
135
+ },
136
+ 'OPTIONS'
137
+ >
138
+ >()
139
+
140
+ checkFields<
141
+ Diff<
142
+ {
143
+ __tag__: 'OPTIONS',
144
+ __return_type__: Response | void | never | Promise<Response | void | never>
145
+ },
146
+ {
147
+ __tag__: 'OPTIONS',
148
+ __return_type__: ReturnType<MaybeField<TEntry, 'OPTIONS'>>
149
+ },
150
+ 'OPTIONS'
151
+ >
152
+ >()
153
+ }
154
+ // Check the prop type of the entry function
155
+ if ('POST' in entry) {
156
+ checkFields<
157
+ Diff<
158
+ ParamCheck<Request | NextRequest>,
159
+ {
160
+ __tag__: 'POST'
161
+ __param_position__: 'first'
162
+ __param_type__: FirstArg<MaybeField<TEntry, 'POST'>>
163
+ },
164
+ 'POST'
165
+ >
166
+ >()
167
+ checkFields<
168
+ Diff<
169
+ ParamCheck<RouteContext>,
170
+ {
171
+ __tag__: 'POST'
172
+ __param_position__: 'second'
173
+ __param_type__: SecondArg<MaybeField<TEntry, 'POST'>>
174
+ },
175
+ 'POST'
176
+ >
177
+ >()
178
+
179
+ checkFields<
180
+ Diff<
181
+ {
182
+ __tag__: 'POST',
183
+ __return_type__: Response | void | never | Promise<Response | void | never>
184
+ },
185
+ {
186
+ __tag__: 'POST',
187
+ __return_type__: ReturnType<MaybeField<TEntry, 'POST'>>
188
+ },
189
+ 'POST'
190
+ >
191
+ >()
192
+ }
193
+ // Check the prop type of the entry function
194
+ if ('PUT' in entry) {
195
+ checkFields<
196
+ Diff<
197
+ ParamCheck<Request | NextRequest>,
198
+ {
199
+ __tag__: 'PUT'
200
+ __param_position__: 'first'
201
+ __param_type__: FirstArg<MaybeField<TEntry, 'PUT'>>
202
+ },
203
+ 'PUT'
204
+ >
205
+ >()
206
+ checkFields<
207
+ Diff<
208
+ ParamCheck<RouteContext>,
209
+ {
210
+ __tag__: 'PUT'
211
+ __param_position__: 'second'
212
+ __param_type__: SecondArg<MaybeField<TEntry, 'PUT'>>
213
+ },
214
+ 'PUT'
215
+ >
216
+ >()
217
+
218
+ checkFields<
219
+ Diff<
220
+ {
221
+ __tag__: 'PUT',
222
+ __return_type__: Response | void | never | Promise<Response | void | never>
223
+ },
224
+ {
225
+ __tag__: 'PUT',
226
+ __return_type__: ReturnType<MaybeField<TEntry, 'PUT'>>
227
+ },
228
+ 'PUT'
229
+ >
230
+ >()
231
+ }
232
+ // Check the prop type of the entry function
233
+ if ('DELETE' in entry) {
234
+ checkFields<
235
+ Diff<
236
+ ParamCheck<Request | NextRequest>,
237
+ {
238
+ __tag__: 'DELETE'
239
+ __param_position__: 'first'
240
+ __param_type__: FirstArg<MaybeField<TEntry, 'DELETE'>>
241
+ },
242
+ 'DELETE'
243
+ >
244
+ >()
245
+ checkFields<
246
+ Diff<
247
+ ParamCheck<RouteContext>,
248
+ {
249
+ __tag__: 'DELETE'
250
+ __param_position__: 'second'
251
+ __param_type__: SecondArg<MaybeField<TEntry, 'DELETE'>>
252
+ },
253
+ 'DELETE'
254
+ >
255
+ >()
256
+
257
+ checkFields<
258
+ Diff<
259
+ {
260
+ __tag__: 'DELETE',
261
+ __return_type__: Response | void | never | Promise<Response | void | never>
262
+ },
263
+ {
264
+ __tag__: 'DELETE',
265
+ __return_type__: ReturnType<MaybeField<TEntry, 'DELETE'>>
266
+ },
267
+ 'DELETE'
268
+ >
269
+ >()
270
+ }
271
+ // Check the prop type of the entry function
272
+ if ('PATCH' in entry) {
273
+ checkFields<
274
+ Diff<
275
+ ParamCheck<Request | NextRequest>,
276
+ {
277
+ __tag__: 'PATCH'
278
+ __param_position__: 'first'
279
+ __param_type__: FirstArg<MaybeField<TEntry, 'PATCH'>>
280
+ },
281
+ 'PATCH'
282
+ >
283
+ >()
284
+ checkFields<
285
+ Diff<
286
+ ParamCheck<RouteContext>,
287
+ {
288
+ __tag__: 'PATCH'
289
+ __param_position__: 'second'
290
+ __param_type__: SecondArg<MaybeField<TEntry, 'PATCH'>>
291
+ },
292
+ 'PATCH'
293
+ >
294
+ >()
295
+
296
+ checkFields<
297
+ Diff<
298
+ {
299
+ __tag__: 'PATCH',
300
+ __return_type__: Response | void | never | Promise<Response | void | never>
301
+ },
302
+ {
303
+ __tag__: 'PATCH',
304
+ __return_type__: ReturnType<MaybeField<TEntry, 'PATCH'>>
305
+ },
306
+ 'PATCH'
307
+ >
308
+ >()
309
+ }
310
+
311
+ // Check the arguments and return type of the generateStaticParams function
312
+ if ('generateStaticParams' in entry) {
313
+ checkFields<Diff<{ params: SegmentParams }, FirstArg<MaybeField<TEntry, 'generateStaticParams'>>, 'generateStaticParams'>>()
314
+ checkFields<Diff<{ __tag__: 'generateStaticParams', __return_type__: any[] | Promise<any[]> }, { __tag__: 'generateStaticParams', __return_type__: ReturnType<MaybeField<TEntry, 'generateStaticParams'>> }>>()
315
+ }
316
+
317
+ export interface PageProps {
318
+ params?: Promise<SegmentParams>
319
+ searchParams?: Promise<any>
320
+ }
321
+ export interface LayoutProps {
322
+ children?: React.ReactNode
323
+
324
+ params?: Promise<SegmentParams>
325
+ }
326
+
327
+ // =============
328
+ // Utility types
329
+ type RevalidateRange<T> = T extends { revalidate: any } ? NonNegative<T['revalidate']> : never
330
+
331
+ // If T is unknown or any, it will be an empty {} type. Otherwise, it will be the same as Omit<T, keyof Base>.
332
+ type OmitWithTag<T, K extends keyof any, _M> = Omit<T, K>
333
+ type Diff<Base, T extends Base, Message extends string = ''> = 0 extends (1 & T) ? {} : OmitWithTag<T, keyof Base, Message>
334
+
335
+ type FirstArg<T extends Function> = T extends (...args: [infer T, any]) => any ? unknown extends T ? any : T : never
336
+ type SecondArg<T extends Function> = T extends (...args: [any, infer T]) => any ? unknown extends T ? any : T : never
337
+ type MaybeField<T, K extends string> = T extends { [k in K]: infer G } ? G extends Function ? G : never : never
338
+
339
+ type ParamCheck<T> = {
340
+ __tag__: string
341
+ __param_position__: string
342
+ __param_type__: T
343
+ }
344
+
345
+ function checkFields<_ extends { [k in keyof any]: never }>() {}
346
+
347
+ // https://github.com/sindresorhus/type-fest
348
+ type Numeric = number | bigint
349
+ type Zero = 0 | 0n
350
+ type Negative<T extends Numeric> = T extends Zero ? never : `${T}` extends `-${string}` ? T : never
351
+ type NonNegative<T extends Numeric> = T extends Zero ? T : Negative<T> extends never ? T : '__invalid_negative_number__'
@@ -2,7 +2,7 @@
2
2
  // Do not edit this file manually
3
3
 
4
4
  type AppRoutes = "/" | "/office" | "/office-preview" | "/recover"
5
- type AppRouteHandlerRoutes = "/api/agent/[id]" | "/api/agent/[id]/account" | "/api/agent/[id]/bash-output" | "/api/agent/[id]/events" | "/api/agent/new" | "/api/agent/running" | "/api/attachment-settings" | "/api/attachments" | "/api/attachments/[id]/transcription" | "/api/attachments/draft" | "/api/auth/all-providers" | "/api/auth/api-key/[provider]" | "/api/auth/login/[provider]" | "/api/auth/logout/[provider]" | "/api/auth/providers" | "/api/cwd/browse" | "/api/cwd/validate" | "/api/default-cwd" | "/api/display-settings" | "/api/document-text" | "/api/experiments" | "/api/file-index" | "/api/files/[...path]" | "/api/git/diff" | "/api/git/status" | "/api/gpt6/handles" | "/api/gpt6/reply" | "/api/gpt6/token" | "/api/gpt6/web6-session" | "/api/home" | "/api/live/call/[callId]" | "/api/live/character-voice" | "/api/live/events" | "/api/live/offer" | "/api/live/voices" | "/api/lounge" | "/api/lounge/events" | "/api/mcp" | "/api/model-roles" | "/api/models" | "/api/models-config" | "/api/models-config/catalog" | "/api/models-config/discover" | "/api/models-config/test" | "/api/office-avatars" | "/api/office-avatars/[id]" | "/api/plugins" | "/api/project-trust" | "/api/projects" | "/api/runs" | "/api/runs/[runId]" | "/api/sessions" | "/api/sessions/[id]" | "/api/sessions/[id]/auto-name" | "/api/sessions/[id]/context" | "/api/sessions/[id]/entries/[entryId]/thinking" | "/api/sessions/[id]/export" | "/api/sessions/[id]/state" | "/api/sessions/search" | "/api/settings" | "/api/sidecars/[service]/[...path]" | "/api/skills" | "/api/skills/check" | "/api/skills/install" | "/api/skills/search" | "/api/skills/update" | "/api/theme" | "/api/tool-image" | "/api/update-maintenance" | "/api/updates" | "/api/web-access" | "/api/web-access/recovery" | "/api/web6/consults" | "/api/worktrees"
5
+ type AppRouteHandlerRoutes = "/api/agent/[id]" | "/api/agent/[id]/account" | "/api/agent/[id]/bash-output" | "/api/agent/[id]/events" | "/api/agent/new" | "/api/agent/running" | "/api/attachment-settings" | "/api/attachments" | "/api/attachments/[id]/transcription" | "/api/attachments/draft" | "/api/auth/all-providers" | "/api/auth/api-key/[provider]" | "/api/auth/login/[provider]" | "/api/auth/logout/[provider]" | "/api/auth/providers" | "/api/cwd/browse" | "/api/cwd/validate" | "/api/default-cwd" | "/api/display-settings" | "/api/document-text" | "/api/experiments" | "/api/file-index" | "/api/files/[...path]" | "/api/git/diff" | "/api/git/status" | "/api/github/projects" | "/api/gpt6/handles" | "/api/gpt6/reply" | "/api/gpt6/token" | "/api/gpt6/web6-session" | "/api/home" | "/api/live/call/[callId]" | "/api/live/character-voice" | "/api/live/events" | "/api/live/offer" | "/api/live/voices" | "/api/lounge" | "/api/lounge/events" | "/api/mcp" | "/api/model-roles" | "/api/models" | "/api/models-config" | "/api/models-config/catalog" | "/api/models-config/discover" | "/api/models-config/test" | "/api/office-avatars" | "/api/office-avatars/[id]" | "/api/plugins" | "/api/project-trust" | "/api/projects" | "/api/runs" | "/api/runs/[runId]" | "/api/sessions" | "/api/sessions/[id]" | "/api/sessions/[id]/auto-name" | "/api/sessions/[id]/context" | "/api/sessions/[id]/entries/[entryId]/thinking" | "/api/sessions/[id]/export" | "/api/sessions/[id]/state" | "/api/sessions/search" | "/api/settings" | "/api/sidecars/[service]/[...path]" | "/api/skills" | "/api/skills/check" | "/api/skills/install" | "/api/skills/search" | "/api/skills/update" | "/api/theme" | "/api/tool-image" | "/api/update-maintenance" | "/api/updates" | "/api/web-access" | "/api/web-access/recovery" | "/api/web6/consults" | "/api/worktrees"
6
6
  type PageRoutes = never
7
7
  type LayoutRoutes = "/"
8
8
  type RedirectRoutes = never
@@ -37,6 +37,7 @@ interface ParamMap {
37
37
  "/api/files/[...path]": { "path": string[]; }
38
38
  "/api/git/diff": {}
39
39
  "/api/git/status": {}
40
+ "/api/github/projects": {}
40
41
  "/api/gpt6/handles": {}
41
42
  "/api/gpt6/reply": {}
42
43
  "/api/gpt6/token": {}
@@ -308,6 +308,15 @@ type RouteHandlerConfig<Route extends AppRouteHandlerRoutes = AppRouteHandlerRou
308
308
  type __Unused = __Check
309
309
  }
310
310
 
311
+ // Validate ../../app/api/github/projects/route.ts
312
+ {
313
+ type __IsExpected<Specific extends RouteHandlerConfig<"/api/github/projects">> = Specific
314
+ const handler = {} as typeof import("../../app/api/github/projects/route.js")
315
+ type __Check = __IsExpected<typeof handler>
316
+ // @ts-ignore
317
+ type __Unused = __Check
318
+ }
319
+
311
320
  // Validate ../../app/api/gpt6/handles/route.ts
312
321
  {
313
322
  type __IsExpected<Specific extends RouteHandlerConfig<"/api/gpt6/handles">> = Specific
package/README.md CHANGED
@@ -16,10 +16,14 @@ Use the same `~/.omp/agent` sessions, credentials and model configuration from t
16
16
 
17
17
  **한국어:** CUELO는 omp(oh-my-pi)를 위한 오픈소스 AI 코딩 에이전트 작업 공간이자 하네스입니다. 웹 앱은 omp SDK를 서버 안에서 실행하고, `omp` CLI와 같은 `~/.omp/agent` 디렉터리를 씁니다. 터미널에서 하던 세션을 브라우저에서 이어 가고, 다시 터미널로 돌아가도 기록·계정·모델 설정을 공유합니다.
18
18
 
19
- 내장 OMP 코어는 **18.6.1**입니다. 추론 강도를 바꾸거나 서브에이전트를 다시 이어도 예비 모델 설정을 유지하며, 별도로 설치한 `omp` CLI의 버전은 웹 업데이트와 독립적입니다.
19
+ 내장 OMP 코어는 **18.6.3**입니다. 추론 강도를 바꾸거나 서브에이전트를 다시 이어도 예비 모델 설정을 유지하며, 별도로 설치한 `omp` CLI의 버전은 웹 업데이트와 독립적입니다.
20
20
 
21
21
  CUELO의 목적은 작업 중 확인한 실패와 막힘을 기억·작업 규칙·실행 절차에 반영해, 사람이 같은 문제를 다시 지적하지 않아도 다음 작업에서 실수를 줄이는 것입니다. 원인을 확인하고 필요한 부분만 바꾸며, 다음 작업에서 적용과 효과를 확인하는 것까지를 지향합니다. 기록을 저장했다는 이유만으로 자동 개선이 끝났다고 보지는 않습니다.
22
22
 
23
+ 주제별로 저장한 교훈을 정정하면 최초 기록과 최신 정정의 출처를 구분해 조회할 수 있습니다. 회상 목록에도 확인 가능한 전역·프로젝트 범위와 정정 정보를 표시합니다. 기억은 현재 요청과 저장소의 적용 조건을 대조하는 참고 자료이며 실행 승인을 대신하지 않습니다. 이전 교훈 본문을 별도 이력으로 쌓지는 않습니다. 자세한 보존 범위는 [하네스 안내](./docs/harness.md)를 참고하세요.
24
+
25
+ 작업을 시작할 때 회상된 교훈과 현재 요청의 적용 조건·예외·충돌을 점검해 에이전트에게 참고 안내를 제공합니다. 같은 입력은 반복 점검하지 않으며, 판단이 불명확하거나 점검에 실패해도 작업을 막지 않습니다. 현재 지시와 승인 범위가 우선입니다.
26
+
23
27
  **Keywords:** AI coding agent · agent harness · multi-agent orchestration · omp · oh-my-pi · model routing · developer tools
24
28
 
25
29
  ## 이 저장소로 되는 것과 따로 필요한 것
@@ -27,7 +31,7 @@ CUELO의 목적은 작업 중 확인한 실패와 막힘을 기억·작업 규
27
31
  | 구분 | 내용 |
28
32
  | --- | --- |
29
33
  | 앱·런타임 설치 뒤 동작 | 세션 탐색·실시간 대화·분기/fork, 모델 역할, provider·플러그인·스킬 관리, 파일 미리보기, 비밀번호 잠금, 캐릭터 알림 등. 대화에는 별도 제공자 인증이 필요합니다 |
30
- | 사용자가 준비할 것 | Node.js·Bun과 자신의 모델 제공자 계정·모델 선택. 소스 checkout/전체 Git 기능에는 Git for Windows도 필요합니다. 인증정보·세션·설정은 사용자의 로컬 `~/.omp/agent`에 저장합니다 |
34
+ | 사용자가 준비할 것 | Node.js·Bun과 자신의 모델 제공자 계정·모델 선택. 소스 checkout/전체 Git 기능에는 Git(Windows는 Git for Windows)도 필요합니다. 인증정보·세션·설정은 사용자의 로컬 `~/.omp/agent`에 저장합니다 |
31
35
  | 로컬 사이드카 (공개) | 계정 사용량 카드, 사이드 챗(`/btw`), SubAgent 아카이브의 실행 소스도 포함합니다. `start`가 앱과 함께 실행합니다. usage의 CLI fallback·`stats`에는 별도 `omp` CLI가 필요합니다 |
32
36
  | OMP 하네스 (공개) | Main/Maker 역할 분담, 발주·검수 계약, task guard, 판단 라우팅(Jev), 캐릭터 음성, 명령 가드의 규칙·SOP·확장과 앱 SDK core 패치입니다. `setup`으로 설치합니다. [하네스 안내](./docs/harness.md)에 Jev의 외부 자격 경계가 있습니다 |
33
37
  | 포함하지 않는 것 | 개발자의 로그인 정보·API 키·개인 계정 및 모델 설정·개인 skill·대화와 작업 기록·PC별 운영 자료. 공개 설치는 필요한 비개인 운영 기본값만 제공하고 모델은 사용자가 고릅니다 |
@@ -49,6 +53,8 @@ CUELO의 목적은 작업 중 확인한 실패와 막힘을 기억·작업 규
49
53
  - 모델 선택기 맨 위에 자주 고른 모델이 나오고, 팔레트에서 넓은 대화 폭을 켤 수 있습니다.
50
54
  - 입력창 아래 줄은 Main 프리셋 → 그 제공자의 모델 → 추론 강도 순서입니다. "자동, 최대 high"처럼 상한을 고를 수 있고, Auto가 실제로 적용한 값은 「현재 추론 강도」로 따로 표시합니다. 실행 중에 지시를 덧붙이면 Auto가 다시 판단해 강도를 올릴 수 있고, 같은 답변 안에서는 내리지 않습니다. 새 대화는 선택한 상한 적용을 마친 뒤 첫 메시지를 보내며, 적용에 실패하면 재전송 때 다시 시도합니다.
51
55
  - 도구 옆 시간에는 모델 응답 생성 시간을 포함하지 않습니다. 실행 전에 취소된 도구나 완료 시각을 확인할 수 없는 옛 기록에는 시간을 추정해 붙이지 않습니다.
56
+ - 자동 제목과 수동 「이름 짓기」는 요청 언어를 따릅니다. 한국어 요청에는 한국어 제목을 붙이고 파일명·명령·제품명은 원문을 유지합니다. 이미 붙은 제목은 바꾸지 않습니다.
57
+ - 클라우드에서는 GitHub 저장소를 선택하거나 URL을 입력해 가져온 뒤 프로젝트로 열 수 있습니다. GitHub 연결과 서버 폴더 열기를 한 화면에서 제공하며, 클라우드 기능을 켜지 않은 인스턴스의 화면은 그대로입니다. 설정·인증·작업물 보존과 이전 방법은 [Docker 안내](./docs/docker.md)를 확인하세요.
52
58
 
53
59
  **계정과 자원**
54
60
 
@@ -112,7 +118,7 @@ CUELO의 목적은 작업 중 확인한 실패와 막힘을 기억·작업 규
112
118
 
113
119
  CUELO는 GitHub 소스와 npm 패키지 [`cuelo`](https://www.npmjs.com/package/cuelo)로 설치합니다. npm의 `omp-web`은 upstream 프로젝트이며 CUELO와 별개입니다. **기존 `omp` CLI만 설치한 PC에도 `omp-web` 없이 CUELO를 추가할 수 있습니다.** 기존 `config.yml`·계정·세션을 보존하는 순서는 [대표 설치 경로](./docs/installation.md#대표-경로-omp만-있는-windows-pc-omp-web-없음)에 있습니다.
114
120
 
115
- > **개발·검증 환경은 Windows입니다.** macOS·Linux는 개발·테스트 환경이 아니므로 동작과 지원을 보장하지 않습니다.
121
+ > **개발·검증 환경은 Windows와 Linux(WSL2 Ubuntu 24.04)입니다.** 공개 CI는 Windows에서 실행합니다. macOS는 개발·테스트 환경이 아니므로 동작과 지원을 보장하지 않습니다.
116
122
 
117
123
  서버는 **Bun 1.4.2 이상**에서만 실행됩니다(omp SDK가 TypeScript 소스와 `bun:` 내장 모듈을 사용). Node.js 22.19.0 이상도 `install.mjs`와 npm에 필요합니다. Git은 소스 checkout과 Git 작업(worktree·commit 등)에 필요하지만 npm 설치와 기본 대화에는 필요하지 않습니다.
118
124
  메모리 패키지가 선언한 선택적 ONNX peer는 `onnxruntime-node:1.21.0`으로 제공합니다. Transformers가 요구하는 별도 버전은 자체 의존성으로 유지하며, 설치 오류를 피하려고 peer 검증을 끄지 않습니다. Mnemopi의 로컬 임베딩은 별도 `fastembed`와 모델을 첫 사용 때 내려받을 수 있습니다.
@@ -120,6 +126,7 @@ CUELO는 GitHub 소스와 npm 패키지 [`cuelo`](https://www.npmjs.com/package/
120
126
  ```bash
121
127
  # Bun 설치
122
128
  powershell -c "irm bun.sh/install.ps1 | iex" # Windows
129
+ curl -fsSL https://bun.sh/install | bash # Linux
123
130
 
124
131
  # CUELO 받기와 실행
125
132
  git clone https://github.com/gim47656-ship-it/CUELO.git
@@ -9,9 +9,9 @@ const MEMORY_RE = /(const phase1Model = await resolveMemoryModel\(\{[^}]*?fallba
9
9
  const MEMORY_DONE = /const phase1Model = await resolveMemoryModel\(\{[^}]*?fallbackRole: "smol"/;
10
10
  const EXPECTED = {
11
11
  name: 'cuelo',
12
- version: '0.9.5',
12
+ version: '0.9.7',
13
13
  distribution: 'cuelo',
14
- coreVersion: '18.6.1',
14
+ coreVersion: '18.6.3',
15
15
  };
16
16
 
17
17
  // OMP core 18.4.12 `src/sdk.ts`: session-scoped AsyncJobManager for a process
@@ -177,7 +177,7 @@ function readNativePackage(target) {
177
177
  throw new Error(`unexpected native package ${packageJson.name}@${packageJson.version}`);
178
178
  }
179
179
  if (!build || build.distribution !== EXPECTED.distribution || build.coreVersion !== EXPECTED.coreVersion) {
180
- throw new Error('native cueloBuild metadata does not match cuelo / core 18.6.1');
180
+ throw new Error('native cueloBuild metadata does not match cuelo / core 18.6.3');
181
181
  }
182
182
  return packageJson;
183
183
  }
@@ -67,6 +67,12 @@ Main은 확정 delta와 그 증거를 누적 검수하며, 최종 수용은 수
67
67
 
68
68
  실제 dependency/synthesis barrier에서만 Main 전용 `wait`를 쓰고(SubAgent에는 없다), 다른 일이 남으면 먼저 한다. 장기 job은 `read proc://<id>`와 산출물로 관측하며 침묵·`running`만으로 진행을 단정하지 않는다. peer 메시지는 `write agent://<id>`, 취소는 `write proc://<id>/kill`, 살아 있어야 하는 프로세스는 세션마다 고유한 이름의 `bash` `name` 서비스다. 결과 전달·취소·개입·yield 전 job 회수는 `rule://subagent` 「병렬과 대기」와 `harness-policy.json` `mainLane.waitContract`가 정본이다.
69
69
 
70
+ **TODO는 실시간 작업 현황판이다.** Main은 착수·검증 완료·외부 대기·재개·실패/재작업의 상태 전환을 관측한 자리에서 해당 항목을 즉시 갱신한다. 다음 단계나 최종 보고까지 미루거나 채팅 설명으로 대신하지 않는다. 사용자 interjection에는 먼저 즉답한 뒤 같은 턴에서 필요한 갱신을 잇고, 진행 보고 때는 TODO와 실제 상태가 일치하는지 확인한다.
71
+
72
+ - 완료 증거를 수용하면 바로 `done`한다. child의 종료만으로 완료 처리하지 않으며, 국소 구현·검증과 통합·배포 완료를 구분한다.
73
+ - agent·job·사용자 결과를 기다리면 `block`에 누가 무엇을 진행 중이고 무엇이 남았는지 적는다. 이미 시작한 작업을 이유 없는 `pending`으로 남기지 않는다. 결과가 도착해 실행 가능해지면 `unblock`하고 이어 간다.
74
+ - 도구의 자동 활성 포인터는 가장 이른 미완 항목으로 이동한다. 갱신 결과의 실제 상태를 확인하고, 앞선 통합·배포가 아직 대기 중이면 그 사유를 명시해 실제 작업을 가리지 않게 한다. 포인터를 맞추려고 미완을 완료로 표시하거나 완료 항목을 다시 열지 않는다.
75
+
70
76
  ## 착수 계약과 Skill
71
77
 
72
78
  Main은 사용자 요구·수용 조건·보존 동작·승인·관측 경로를 먼저 확정한다. 위임 브리프와 첫 조사에서 요구를 대조하는 절차는 `rule://verdict`·`rule://subagent` 및 `harness-policy.json` `briefContextRelay`·`routing.dispatchAssumptionCheck`를 따른다. `task` 발주 시 `TASK_GUARD` 뒤의 공유 메타 `TASK_TITLE`·`TODO_TASKS`도 `rule://task-guard`에 따라 전달한다. Skill은 설치만으로 열지 않고 이번 작업에 필요하거나 사용자가 요청했을 때만 연다. UI 작업은 `rule://frontend`를 따른다. 사용자가 명시 요청하지 않으면 `goal` 도구에 `token_budget`을 임의 설정하지 않는다.
@@ -28,6 +28,7 @@
28
28
  그 자리에서 멈춰 원인 근거·시도한 것·남은 막힘을 보고한다.
29
29
  - 도구·저장소·현재 문맥으로 해결할 수 있는 작업은 확인을 요청하거나 중간 단계에서 멈추지 않고 끝까지 수행한다. 단, 삭제·배포·비용 발생·호환성 파괴는 실행 전에 사용자 승인을 받는다.
30
30
  - MCP 설치·등록·인증·권한 변경은 대상과 범위를 설명하고 먼저 사용자 승인을 받는다. 승인 뒤에는 에이전트가 가능한 설치·설정·연결·검증을 끝까지 실행한다. "사용자 승인 필요"를 "사용자가 직접 실행해야 함"으로 바꿔 해석하지 않는다. 사용자 본인 로그인·인증정보 입력·제공자 안전 확인·동의처럼 사람이 필요한 단계만 사용자에게 넘긴다. JEV 추천·필요성 판정은 사용자 승인을 대신하지 않는다.
31
+ - 호스트 OS 시스템 변경(사용자, 2026-10-06): 커널·필터 드라이버, 부팅·System 시작 서비스의 `Start` 값, 네트워크 스택·방화벽·보안/금융 보안 프로그램, 부팅 설정, 시스템 레지스트리는 "꺼 보고 확인" 같은 진단 수단으로 건드리지 않는다. 바꿔야 할 근거가 있으면 실행 전에 대상, 현재 값, 바꿀 값, 예상 영향(네트워크 단절·부팅 실패 가능성), 되돌리는 방법을 설명하고 그 정확한 변경에 대해 사용자 승인을 받는다. "UAC 창이 뜨면 허용해 주세요"는 승인 요청이 아니며 UAC 허용도 승인으로 보지 않는다. 비활성화보다 해당 프로그램의 정식 제거·설정을 먼저 검토하고, 읽기 전용 조회(`reg query`·`sc query`)로 원인을 먼저 좁힌다.
31
32
  - 배포 확인(사용자, 2026-09-26·2026-09-29·2026-09-30): 집 PC(hostname `KYS`)와 사무실 PC(hostname은 비공개 배포 표에 있다)는 같은 절차를 따른다. 그 PC의 CUELO 세션이 소스 변경을 검증하고 커밋·push했으면, 그 커밋의 GitHub CI가 끝날 때까지 지켜본 뒤 결과를 보고하고 배포 여부를 묻는다. 사용자가 승인하면 같은 revision의 `Tools/CUELO_Setup/deploy-live.ps1`과 `Tools/OMP_Global_Config/verify.ps1 -StrictRuntime`을 실행한다(`Tools/CUELO_Setup/setup.ps1`은 앱 전체 설치기라 이 단계가 아니다). 배포 트랜잭션이 새 서버를 띄우기 전에 `Tools/OMP_Global_Config/setup.ps1 -ProfileOnly`로 미러 프로필을 반영하고, 새 서버 `/api/models`의 역할 selector가 미러 `config.yml` `modelRoles`와 같은지 확인해 receipt `profile`에 남기므로 배포 뒤 ProfileOnly·`CUELO-Restart`를 따로 돌리지 않는다. 역할이 다르거나 관측되지 않으면 deploy-live가 exit 3으로 끝나며 rollback하지 않으니, 안내대로 재시작한 뒤 `/api/models`를 다시 확인한다. 세션 안 배포는 deploy-live가 worker 접수 뒤 반환하므로 재개 뒤 transaction receipt의 `profile.modelRoles.matched`가 `true`인지 직접 확인한다. 배포 없이 프로필만 바꿨으면 ProfileOnly 뒤 서버를 재시작하고 같은 역할 확인을 한다. 라이브 서버는 Settings를 시작 때 한 번만 읽어 파일 변경·touch로는 반영되지 않는다. 실행 전 `hostname`으로 PC를 확인한다. 예약 작업 같은 자동 배포는 두지 않는다. stage·rollback 삭제, 이 두 PC 밖의 배포, CLI 업데이트, 비용이 드는 작업은 따로 승인받는다.
32
33
  - CI 감시(사용자, 2026-09-28·2026-10-03): 커밋의 CI를 지켜볼 때는 기다릴 워크플로를 이름으로 지정하고(`gh run list --workflow <이름>` 등), 그 run이 끝나는 즉시 결과를 보고한다. 같은 SHA에 걸린 run 전체의 완료를 조건으로 삼지 않는다. CI 성공이 트리거하는 릴리스·배포 run(`workflow_run`)이 몇 초 뒤 같은 SHA로 생겨 CI 완료 보고를 붙잡기 때문이다. 이어 붙는 run은 보고한 뒤 따로 지켜본다. 감시는 `bash`의 `gh run watch <id> --exit-status`나 `gh run list` 직접 조회로 하고, `eval` 커널 안에서 `gh`를 subprocess로 부르는 폴링 루프로 짜지 않는다. 2026-10-03 그런 루프가 빈 출력을 "run 없음"으로 읽어, CI가 끝난 뒤에도 20분 넘게 보고하지 못했다. 직접 짠 폴링은 빈 출력·0이 아닌 exit를 즉시 오류로 끝낸다. 공개 미러 CI는 headSha가 원본 커밋과 다르므로 run 제목으로 찾는다.
33
34
  - 구현 방법의 불확실성은 명시 요구·승인된 계약, 실제 호출부와 데이터 흐름, 테스트·재현 결과,
@@ -0,0 +1,17 @@
1
+ You name coding-agent sessions. Write a short title for the task in the next message.
2
+
3
+ Write the title in the language the user wrote the request in. A Korean request gets a Korean title, even when the request mixes in English words or the surrounding notes are in English. Keep code identifiers, file names, commands, product and model names in their original form.
4
+
5
+ Rules:
6
+ - Name the user's goal as a short phrase built from the user's own key words (the feature, component, or error they name). Korean titles end in a noun or a noun phrase such as "~ 수정", "~ 추가", "~ 조사"; English titles are a 3-6 word imperative. Avoid vague filler like "logic", "issues", "functionality", "문제", "작업".
7
+ - Keep it short: about 4-20 Korean characters, or 3-6 English words.
8
+ - `[Image #N, WxH]` marks an image you cannot see. Never mention it or guess what it shows; title the task the surrounding words name.
9
+ - Decline greetings, acknowledgements, gibberish, or requests too vague to name without context you cannot see ("help", "fix this", "이거 봐줘").
10
+ - A `<chat>` block summarizes a longer session: its first `<user>` turn is the opening request, followed by recent turns (often the assistant's working notes, sometimes in English). Title the goal the session is working on, in the language of the user's turns, using the opening request unless later turns clearly moved to a new task; never title the current micro-step, and ignore file names and symbols unless they are the subject.
11
+ - No quotes, trailing punctuation, or explanations.
12
+
13
+ Examples:
14
+ - "the retry queue drops jobs when redis restarts, can u look" → Fix retry queue dropping jobs
15
+ - "npm run build 할 때 peer deps 경고 없애줘" → peer dependency 빌드 경고 제거
16
+ - "로그인하면 가끔 빈 화면만 뜨는데 확인 좀" → 로그인 후 빈 화면 수정
17
+ - `<chat>` whose user turns are Korean and whose assistant notes say "adding a backoff field to RetryPolicy… now wiring jitter" → 재시도 backoff·jitter 추가
@@ -6,7 +6,7 @@ thinking-level: medium
6
6
  tools: [read, bash, edit, write, grep, glob, skim, lsp, eval, generate_image, ast_grep, ast_edit, debug, todo, web_search, checkpoint]
7
7
  ---
8
8
 
9
- <!-- omp-global-config:generated source-hash=816f54313240
9
+ <!-- omp-global-config:generated source-hash=126d76a842c3
10
10
  이 파일은 patches/build-agents.mjs 가 만든 빌드 산출물이다. 직접 수정하지 마라.
11
11
  고칠 곳: agent/sop/maker.md · agent/sop/_writer.md · agent/sop/_common.md
12
12
  재생성: node patches/build-agents.mjs 검사: node patches/build-agents.mjs --check
@@ -121,10 +121,12 @@ is yours end to end.
121
121
  an injected message; you have no `wait`, so the checkpoint never blocks the session. Never send a
122
122
  diff body, raw output, file contents, or a second message per edit step. Only trigger code is held
123
123
  for that reply: keep doing read-only investigation and the non-trigger work in the same slice.
124
- When independent work runs out before the reply arrives, say in prose that you are holding for the
125
- checkpoint reply and end the turn; Main's message wakes you in a new turn. No reply is never
126
- approval - there is no implicit or time-based approval, and trigger edits proceed only on Main's
127
- explicit reply. Main retains the
124
+ When independent work runs out before the reply arrives, use `yield` to report the pending
125
+ checkpoint, completed evidence, and unstarted work as blocked/partial, never as accepted or done.
126
+ Prose alone ends a model turn but leaves the task executor asking for `yield`. A shared-workspace
127
+ Maker resumes on Main's first reply; an isolated worktree is not resumable after terminal yield,
128
+ so preserve the handoff for Main instead of promising a wake. No reply is never approval: trigger
129
+ edits require Main's explicit reply. Main retains the
128
130
  approved location and invariants for the final drift check, so a revision that edited trigger
129
131
  code without an approved checkpoint cannot be closed. This checkpoint is the first contact point
130
132
  of review, not a separate gate: the final judgement covers only deltas not yet reviewed and the
@@ -163,6 +165,10 @@ is yours end to end.
163
165
  build error. Never put a broken intermediate state on the user's screen. Use the user's browser
164
166
  only when their live session is genuinely required, or when Main tells you to hand a FINISHED
165
167
  surface over for judgement — do not open it on your own initiative.
168
+ Do not launch Chrome/Edge executables directly from bash or eval (including `Bun.spawn`) for
169
+ verification. Use the managed browser helpers or the project's supported verification commands.
170
+ Such commands must use an absolute, isolated profile path: even headless startup can show a
171
+ native desktop error dialog when its profile path is invalid.
166
172
  - Run surface checks in the environment Main provides; create a common isolation environment or
167
173
  run a full build yourself only when the brief explicitly delegates that run. When you do launch a
168
174
  server (delegated, or no environment exists