cuelo 0.10.20 → 0.10.21

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 (358) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +4 -5
  3. package/.next/build-manifest.json +2 -2
  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 +0 -6
  8. package/.next/server/app/_global-error/page.js +2 -2
  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 +2 -2
  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 +1 -1
  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 +1 -1
  51. package/.next/server/app/api/git/diff/route.js +2 -2
  52. package/.next/server/app/api/git/status/route.js +1 -1
  53. package/.next/server/app/api/github/projects/route.js +1 -1
  54. package/.next/server/app/api/gpt6/handles/route.js +1 -1
  55. package/.next/server/app/api/gpt6/reply/route.js +1 -1
  56. package/.next/server/app/api/gpt6/token/route.js +1 -1
  57. package/.next/server/app/api/gpt6/web6-session/route.js +1 -1
  58. package/.next/server/app/api/home/route.js +1 -1
  59. package/.next/server/app/api/live/call/[callId]/route.js +3 -3
  60. package/.next/server/app/api/live/call/[callId]/route.js.nft.json +1 -1
  61. package/.next/server/app/api/live/events/route.js +4 -4
  62. package/.next/server/app/api/live/events/route.js.nft.json +1 -1
  63. package/.next/server/app/api/live/interpret/route.js +3 -3
  64. package/.next/server/app/api/live/interpret/route.js.nft.json +1 -1
  65. package/.next/server/app/api/live/offer/route.js +1 -1
  66. package/.next/server/app/api/live/offer/route.js.nft.json +1 -1
  67. package/.next/server/app/api/live/voices/route.js +1 -1
  68. package/.next/server/app/api/live/voices/route.js.nft.json +1 -1
  69. package/.next/server/app/api/mcp/route.js +2 -2
  70. package/.next/server/app/api/model-roles/route.js +1 -1
  71. package/.next/server/app/api/models/route.js +1 -1
  72. package/.next/server/app/api/models-config/catalog/route.js +1 -1
  73. package/.next/server/app/api/models-config/discover/route.js +1 -1
  74. package/.next/server/app/api/models-config/route.js +3 -3
  75. package/.next/server/app/api/models-config/test/route.js +1 -1
  76. package/.next/server/app/api/office-avatars/[id]/route.js +1 -1
  77. package/.next/server/app/api/office-avatars/route.js +1 -1
  78. package/.next/server/app/api/plugins/route.js +1 -1
  79. package/.next/server/app/api/project-docs/route.js +1 -1
  80. package/.next/server/app/api/project-trust/route.js +1 -1
  81. package/.next/server/app/api/projects/route.js +1 -1
  82. package/.next/server/app/api/runs/[runId]/route.js +1 -1
  83. package/.next/server/app/api/runs/route.js +1 -1
  84. package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
  85. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  86. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
  87. package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
  88. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  89. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  90. package/.next/server/app/api/sessions/route.js +1 -1
  91. package/.next/server/app/api/sessions/search/route.js +1 -1
  92. package/.next/server/app/api/settings/route.js +1 -1
  93. package/.next/server/app/api/sidecars/[service]/[...path]/route.js +1 -1
  94. package/.next/server/app/api/skills/check/route.js +1 -1
  95. package/.next/server/app/api/skills/install/route.js +2 -2
  96. package/.next/server/app/api/skills/route.js +1 -1
  97. package/.next/server/app/api/skills/search/route.js +1 -1
  98. package/.next/server/app/api/skills/update/route.js +1 -1
  99. package/.next/server/app/api/subagents/eta/route.js +1 -1
  100. package/.next/server/app/api/theme/route.js +1 -1
  101. package/.next/server/app/api/tool-image/route.js +1 -1
  102. package/.next/server/app/api/update-maintenance/route.js +3 -3
  103. package/.next/server/app/api/updates/route.js +1 -1
  104. package/.next/server/app/api/web-access/recovery/route.js +1 -1
  105. package/.next/server/app/api/web-access/route.js +1 -1
  106. package/.next/server/app/api/web6/consults/route.js +1 -1
  107. package/.next/server/app/api/worktrees/route.js +1 -1
  108. package/.next/server/app/favicon.ico/route.js +1 -1
  109. package/.next/server/app/index.html +1 -1
  110. package/.next/server/app/index.rsc +5 -5
  111. package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  112. package/.next/server/app/index.segments/_full.segment.rsc +5 -5
  113. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  114. package/.next/server/app/index.segments/_index.segment.rsc +3 -3
  115. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  116. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  117. package/.next/server/app/office/page.js +2 -2
  118. package/.next/server/app/office/page_client-reference-manifest.js +1 -1
  119. package/.next/server/app/office-preview/page.js +2 -2
  120. package/.next/server/app/office-preview/page_client-reference-manifest.js +1 -1
  121. package/.next/server/app/office-preview.html +1 -1
  122. package/.next/server/app/office-preview.rsc +3 -3
  123. package/.next/server/app/office-preview.segments/_full.segment.rsc +3 -3
  124. package/.next/server/app/office-preview.segments/_head.segment.rsc +1 -1
  125. package/.next/server/app/office-preview.segments/_index.segment.rsc +3 -3
  126. package/.next/server/app/office-preview.segments/_tree.segment.rsc +2 -2
  127. package/.next/server/app/office-preview.segments/office-preview/__PAGE__.segment.rsc +1 -1
  128. package/.next/server/app/office-preview.segments/office-preview.segment.rsc +1 -1
  129. package/.next/server/app/office.html +1 -1
  130. package/.next/server/app/office.rsc +5 -5
  131. package/.next/server/app/office.segments/_full.segment.rsc +5 -5
  132. package/.next/server/app/office.segments/_head.segment.rsc +1 -1
  133. package/.next/server/app/office.segments/_index.segment.rsc +3 -3
  134. package/.next/server/app/office.segments/_tree.segment.rsc +2 -2
  135. package/.next/server/app/office.segments/office/__PAGE__.segment.rsc +3 -3
  136. package/.next/server/app/office.segments/office.segment.rsc +1 -1
  137. package/.next/server/app/page.js +2 -2
  138. package/.next/server/app/page_client-reference-manifest.js +1 -1
  139. package/.next/server/app/recover/page.js +2 -2
  140. package/.next/server/app/recover/page_client-reference-manifest.js +1 -1
  141. package/.next/server/app/recover.html +1 -1
  142. package/.next/server/app/recover.rsc +3 -3
  143. package/.next/server/app/recover.segments/_full.segment.rsc +3 -3
  144. package/.next/server/app/recover.segments/_head.segment.rsc +1 -1
  145. package/.next/server/app/recover.segments/_index.segment.rsc +3 -3
  146. package/.next/server/app/recover.segments/_tree.segment.rsc +2 -2
  147. package/.next/server/app/recover.segments/recover/__PAGE__.segment.rsc +1 -1
  148. package/.next/server/app/recover.segments/recover.segment.rsc +1 -1
  149. package/.next/server/app-paths-manifest.json +4 -5
  150. package/.next/server/chunks/1008.js +5 -5
  151. package/.next/server/chunks/5489.js +4 -4
  152. package/.next/server/chunks/5582.js +1 -1
  153. package/.next/server/chunks/6429.js +5 -5
  154. package/.next/server/chunks/6775.js +7 -0
  155. package/.next/server/chunks/7362.js +1 -1
  156. package/.next/server/middleware-build-manifest.js +1 -1
  157. package/.next/server/pages/404.html +1 -1
  158. package/.next/server/pages/500.html +1 -1
  159. package/.next/server/server-reference-manifest.json +1 -1
  160. package/.next/static/IKi2VjUzAnD5AUcDn7QNi/_buildManifest.js +1 -0
  161. package/.next/static/chunks/6110-7a2311ab143b31e2.js +1 -0
  162. package/.next/static/chunks/{9575-f018b304d7088589.js → 9575-032510d25828764f.js} +4 -4
  163. package/.next/static/chunks/app/_global-error/{page-95aaaafc49522a6b.js → page-571d58ede1391fc8.js} +1 -1
  164. package/.next/static/chunks/app/api/agent/[id]/account/{route-95aaaafc49522a6b.js → route-571d58ede1391fc8.js} +1 -1
  165. package/.next/static/chunks/app/api/agent/[id]/bash-output/{route-95aaaafc49522a6b.js → route-571d58ede1391fc8.js} +1 -1
  166. package/.next/static/chunks/app/api/agent/[id]/events/{route-95aaaafc49522a6b.js → route-571d58ede1391fc8.js} +1 -1
  167. package/.next/static/chunks/app/api/agent/[id]/route-571d58ede1391fc8.js +1 -0
  168. package/.next/static/chunks/app/api/agent/new/route-571d58ede1391fc8.js +1 -0
  169. package/.next/static/chunks/app/api/agent/running/route-571d58ede1391fc8.js +1 -0
  170. package/.next/static/chunks/app/api/attachment-settings/route-571d58ede1391fc8.js +1 -0
  171. package/.next/static/chunks/app/api/attachments/[id]/transcription/route-571d58ede1391fc8.js +1 -0
  172. package/.next/static/chunks/app/api/attachments/draft/route-571d58ede1391fc8.js +1 -0
  173. package/.next/static/chunks/app/api/attachments/route-571d58ede1391fc8.js +1 -0
  174. package/.next/static/chunks/app/api/auth/all-providers/route-571d58ede1391fc8.js +1 -0
  175. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-571d58ede1391fc8.js +1 -0
  176. package/.next/static/chunks/app/api/auth/login/[provider]/route-571d58ede1391fc8.js +1 -0
  177. package/.next/static/chunks/app/api/auth/logout/[provider]/route-571d58ede1391fc8.js +1 -0
  178. package/.next/static/chunks/app/api/auth/providers/route-571d58ede1391fc8.js +1 -0
  179. package/.next/static/chunks/app/api/cwd/browse/route-571d58ede1391fc8.js +1 -0
  180. package/.next/static/chunks/app/api/cwd/validate/route-571d58ede1391fc8.js +1 -0
  181. package/.next/static/chunks/app/api/default-cwd/route-571d58ede1391fc8.js +1 -0
  182. package/.next/static/chunks/app/api/display-settings/route-571d58ede1391fc8.js +1 -0
  183. package/.next/static/chunks/app/api/document-text/route-571d58ede1391fc8.js +1 -0
  184. package/.next/static/chunks/app/api/experiments/route-571d58ede1391fc8.js +1 -0
  185. package/.next/static/chunks/app/api/file-index/route-571d58ede1391fc8.js +1 -0
  186. package/.next/static/chunks/app/api/files/[...path]/route-571d58ede1391fc8.js +1 -0
  187. package/.next/static/chunks/app/api/git/diff/route-571d58ede1391fc8.js +1 -0
  188. package/.next/static/chunks/app/api/git/status/route-571d58ede1391fc8.js +1 -0
  189. package/.next/static/chunks/app/api/github/projects/route-571d58ede1391fc8.js +1 -0
  190. package/.next/static/chunks/app/api/gpt6/handles/route-571d58ede1391fc8.js +1 -0
  191. package/.next/static/chunks/app/api/gpt6/reply/route-571d58ede1391fc8.js +1 -0
  192. package/.next/static/chunks/app/api/gpt6/token/route-571d58ede1391fc8.js +1 -0
  193. package/.next/static/chunks/app/api/gpt6/web6-session/route-571d58ede1391fc8.js +1 -0
  194. package/.next/static/chunks/app/api/home/route-571d58ede1391fc8.js +1 -0
  195. package/.next/static/chunks/app/api/live/call/[callId]/route-571d58ede1391fc8.js +1 -0
  196. package/.next/static/chunks/app/api/live/events/route-571d58ede1391fc8.js +1 -0
  197. package/.next/static/chunks/app/api/live/interpret/route-571d58ede1391fc8.js +1 -0
  198. package/.next/static/chunks/app/api/live/offer/route-571d58ede1391fc8.js +1 -0
  199. package/.next/static/chunks/app/api/live/voices/route-571d58ede1391fc8.js +1 -0
  200. package/.next/static/chunks/app/api/mcp/route-571d58ede1391fc8.js +1 -0
  201. package/.next/static/chunks/app/api/model-roles/route-571d58ede1391fc8.js +1 -0
  202. package/.next/static/chunks/app/api/models/route-571d58ede1391fc8.js +1 -0
  203. package/.next/static/chunks/app/api/models-config/catalog/route-571d58ede1391fc8.js +1 -0
  204. package/.next/static/chunks/app/api/models-config/discover/route-571d58ede1391fc8.js +1 -0
  205. package/.next/static/chunks/app/api/models-config/route-571d58ede1391fc8.js +1 -0
  206. package/.next/static/chunks/app/api/models-config/test/route-571d58ede1391fc8.js +1 -0
  207. package/.next/static/chunks/app/api/office-avatars/[id]/route-571d58ede1391fc8.js +1 -0
  208. package/.next/static/chunks/app/api/office-avatars/route-571d58ede1391fc8.js +1 -0
  209. package/.next/static/chunks/app/api/plugins/route-571d58ede1391fc8.js +1 -0
  210. package/.next/static/chunks/app/api/project-docs/route-571d58ede1391fc8.js +1 -0
  211. package/.next/static/chunks/app/api/project-trust/route-571d58ede1391fc8.js +1 -0
  212. package/.next/static/chunks/app/api/projects/route-571d58ede1391fc8.js +1 -0
  213. package/.next/static/chunks/app/api/runs/[runId]/route-571d58ede1391fc8.js +1 -0
  214. package/.next/static/chunks/app/api/runs/route-571d58ede1391fc8.js +1 -0
  215. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-571d58ede1391fc8.js +1 -0
  216. package/.next/static/chunks/app/api/sessions/[id]/context/route-571d58ede1391fc8.js +1 -0
  217. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-571d58ede1391fc8.js +1 -0
  218. package/.next/static/chunks/app/api/sessions/[id]/export/route-571d58ede1391fc8.js +1 -0
  219. package/.next/static/chunks/app/api/sessions/[id]/route-571d58ede1391fc8.js +1 -0
  220. package/.next/static/chunks/app/api/sessions/[id]/state/route-571d58ede1391fc8.js +1 -0
  221. package/.next/static/chunks/app/api/sessions/route-571d58ede1391fc8.js +1 -0
  222. package/.next/static/chunks/app/api/sessions/search/route-571d58ede1391fc8.js +1 -0
  223. package/.next/static/chunks/app/api/settings/route-571d58ede1391fc8.js +1 -0
  224. package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-571d58ede1391fc8.js +1 -0
  225. package/.next/static/chunks/app/api/skills/check/route-571d58ede1391fc8.js +1 -0
  226. package/.next/static/chunks/app/api/skills/install/route-571d58ede1391fc8.js +1 -0
  227. package/.next/static/chunks/app/api/skills/route-571d58ede1391fc8.js +1 -0
  228. package/.next/static/chunks/app/api/skills/search/route-571d58ede1391fc8.js +1 -0
  229. package/.next/static/chunks/app/api/skills/update/route-571d58ede1391fc8.js +1 -0
  230. package/.next/static/chunks/app/api/subagents/eta/route-571d58ede1391fc8.js +1 -0
  231. package/.next/static/chunks/app/api/theme/route-571d58ede1391fc8.js +1 -0
  232. package/.next/static/chunks/app/api/tool-image/route-571d58ede1391fc8.js +1 -0
  233. package/.next/static/chunks/app/api/update-maintenance/route-571d58ede1391fc8.js +1 -0
  234. package/.next/static/chunks/app/api/updates/route-571d58ede1391fc8.js +1 -0
  235. package/.next/static/chunks/app/api/web-access/recovery/route-571d58ede1391fc8.js +1 -0
  236. package/.next/static/chunks/app/api/web-access/route-571d58ede1391fc8.js +1 -0
  237. package/.next/static/chunks/app/api/web6/consults/route-571d58ede1391fc8.js +1 -0
  238. package/.next/static/chunks/app/api/worktrees/route-571d58ede1391fc8.js +1 -0
  239. package/.next/static/chunks/app/{layout-2961d1e4cf63214e.js → layout-a7fca69a4fa9b2c2.js} +1 -1
  240. package/.next/static/chunks/app/manifest.webmanifest/route-571d58ede1391fc8.js +1 -0
  241. package/.next/static/chunks/next/dist/client/components/builtin/app-error-571d58ede1391fc8.js +1 -0
  242. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-571d58ede1391fc8.js +1 -0
  243. package/.next/static/chunks/next/dist/client/components/builtin/not-found-571d58ede1391fc8.js +1 -0
  244. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-571d58ede1391fc8.js +1 -0
  245. package/.next/static/css/{949fdc99cee51026.css → cc26725ba00edca3.css} +1 -1
  246. package/.next/trace +108 -108
  247. package/.next/trace-build +1 -1
  248. package/.next/types/routes.d.ts +1 -2
  249. package/.next/types/validator.ts +0 -9
  250. package/README.md +8 -4
  251. package/Tools/CUELO_Setup/files/native-runtime-patch.js +3 -3
  252. package/Tools/OMP_Global_Config/agent/AGENTS.md +2 -0
  253. package/Tools/OMP_Global_Config/agent/extensions/docmap-route.ts +34 -0
  254. package/Tools/OMP_Global_Config/agent/extensions/jev-runtime.ts +12 -1
  255. package/Tools/OMP_Global_Config/agent/extensions/lib/docmap-search.ts +576 -0
  256. package/Tools/OMP_Global_Config/agent/extensions/mcp-selection.ts +48 -7
  257. package/Tools/OMP_Global_Config/agent/prompt-copies/AGENTS.en.md +3 -1
  258. package/Tools/OMP_Global_Config/agent/rules/docs-handoff.md +1 -1
  259. package/Tools/OMP_Global_Config/agent/rules/frontend.md +4 -2
  260. package/Tools/OMP_Global_Config/agent/rules/verdict.md +1 -0
  261. package/Tools/OMP_Global_Config/patches/apply-core-patch.mjs +981 -132
  262. package/package.json +7 -7
  263. package/.next/server/app/api/live/character-voice/route.js +0 -1
  264. package/.next/server/app/api/live/character-voice/route.js.nft.json +0 -1
  265. package/.next/server/app/api/live/character-voice/route_client-reference-manifest.js +0 -1
  266. package/.next/server/chunks/205.js +0 -7
  267. package/.next/server/chunks/7467.js +0 -3
  268. package/.next/static/chunks/6110-11dcb476b561c51f.js +0 -1
  269. package/.next/static/chunks/app/api/agent/[id]/route-95aaaafc49522a6b.js +0 -1
  270. package/.next/static/chunks/app/api/agent/new/route-95aaaafc49522a6b.js +0 -1
  271. package/.next/static/chunks/app/api/agent/running/route-95aaaafc49522a6b.js +0 -1
  272. package/.next/static/chunks/app/api/attachment-settings/route-95aaaafc49522a6b.js +0 -1
  273. package/.next/static/chunks/app/api/attachments/[id]/transcription/route-95aaaafc49522a6b.js +0 -1
  274. package/.next/static/chunks/app/api/attachments/draft/route-95aaaafc49522a6b.js +0 -1
  275. package/.next/static/chunks/app/api/attachments/route-95aaaafc49522a6b.js +0 -1
  276. package/.next/static/chunks/app/api/auth/all-providers/route-95aaaafc49522a6b.js +0 -1
  277. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-95aaaafc49522a6b.js +0 -1
  278. package/.next/static/chunks/app/api/auth/login/[provider]/route-95aaaafc49522a6b.js +0 -1
  279. package/.next/static/chunks/app/api/auth/logout/[provider]/route-95aaaafc49522a6b.js +0 -1
  280. package/.next/static/chunks/app/api/auth/providers/route-95aaaafc49522a6b.js +0 -1
  281. package/.next/static/chunks/app/api/cwd/browse/route-95aaaafc49522a6b.js +0 -1
  282. package/.next/static/chunks/app/api/cwd/validate/route-95aaaafc49522a6b.js +0 -1
  283. package/.next/static/chunks/app/api/default-cwd/route-95aaaafc49522a6b.js +0 -1
  284. package/.next/static/chunks/app/api/display-settings/route-95aaaafc49522a6b.js +0 -1
  285. package/.next/static/chunks/app/api/document-text/route-95aaaafc49522a6b.js +0 -1
  286. package/.next/static/chunks/app/api/experiments/route-95aaaafc49522a6b.js +0 -1
  287. package/.next/static/chunks/app/api/file-index/route-95aaaafc49522a6b.js +0 -1
  288. package/.next/static/chunks/app/api/files/[...path]/route-95aaaafc49522a6b.js +0 -1
  289. package/.next/static/chunks/app/api/git/diff/route-95aaaafc49522a6b.js +0 -1
  290. package/.next/static/chunks/app/api/git/status/route-95aaaafc49522a6b.js +0 -1
  291. package/.next/static/chunks/app/api/github/projects/route-95aaaafc49522a6b.js +0 -1
  292. package/.next/static/chunks/app/api/gpt6/handles/route-95aaaafc49522a6b.js +0 -1
  293. package/.next/static/chunks/app/api/gpt6/reply/route-95aaaafc49522a6b.js +0 -1
  294. package/.next/static/chunks/app/api/gpt6/token/route-95aaaafc49522a6b.js +0 -1
  295. package/.next/static/chunks/app/api/gpt6/web6-session/route-95aaaafc49522a6b.js +0 -1
  296. package/.next/static/chunks/app/api/home/route-95aaaafc49522a6b.js +0 -1
  297. package/.next/static/chunks/app/api/live/call/[callId]/route-95aaaafc49522a6b.js +0 -1
  298. package/.next/static/chunks/app/api/live/character-voice/route-95aaaafc49522a6b.js +0 -1
  299. package/.next/static/chunks/app/api/live/events/route-95aaaafc49522a6b.js +0 -1
  300. package/.next/static/chunks/app/api/live/interpret/route-95aaaafc49522a6b.js +0 -1
  301. package/.next/static/chunks/app/api/live/offer/route-95aaaafc49522a6b.js +0 -1
  302. package/.next/static/chunks/app/api/live/voices/route-95aaaafc49522a6b.js +0 -1
  303. package/.next/static/chunks/app/api/mcp/route-95aaaafc49522a6b.js +0 -1
  304. package/.next/static/chunks/app/api/model-roles/route-95aaaafc49522a6b.js +0 -1
  305. package/.next/static/chunks/app/api/models/route-95aaaafc49522a6b.js +0 -1
  306. package/.next/static/chunks/app/api/models-config/catalog/route-95aaaafc49522a6b.js +0 -1
  307. package/.next/static/chunks/app/api/models-config/discover/route-95aaaafc49522a6b.js +0 -1
  308. package/.next/static/chunks/app/api/models-config/route-95aaaafc49522a6b.js +0 -1
  309. package/.next/static/chunks/app/api/models-config/test/route-95aaaafc49522a6b.js +0 -1
  310. package/.next/static/chunks/app/api/office-avatars/[id]/route-95aaaafc49522a6b.js +0 -1
  311. package/.next/static/chunks/app/api/office-avatars/route-95aaaafc49522a6b.js +0 -1
  312. package/.next/static/chunks/app/api/plugins/route-95aaaafc49522a6b.js +0 -1
  313. package/.next/static/chunks/app/api/project-docs/route-95aaaafc49522a6b.js +0 -1
  314. package/.next/static/chunks/app/api/project-trust/route-95aaaafc49522a6b.js +0 -1
  315. package/.next/static/chunks/app/api/projects/route-95aaaafc49522a6b.js +0 -1
  316. package/.next/static/chunks/app/api/runs/[runId]/route-95aaaafc49522a6b.js +0 -1
  317. package/.next/static/chunks/app/api/runs/route-95aaaafc49522a6b.js +0 -1
  318. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-95aaaafc49522a6b.js +0 -1
  319. package/.next/static/chunks/app/api/sessions/[id]/context/route-95aaaafc49522a6b.js +0 -1
  320. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-95aaaafc49522a6b.js +0 -1
  321. package/.next/static/chunks/app/api/sessions/[id]/export/route-95aaaafc49522a6b.js +0 -1
  322. package/.next/static/chunks/app/api/sessions/[id]/route-95aaaafc49522a6b.js +0 -1
  323. package/.next/static/chunks/app/api/sessions/[id]/state/route-95aaaafc49522a6b.js +0 -1
  324. package/.next/static/chunks/app/api/sessions/route-95aaaafc49522a6b.js +0 -1
  325. package/.next/static/chunks/app/api/sessions/search/route-95aaaafc49522a6b.js +0 -1
  326. package/.next/static/chunks/app/api/settings/route-95aaaafc49522a6b.js +0 -1
  327. package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-95aaaafc49522a6b.js +0 -1
  328. package/.next/static/chunks/app/api/skills/check/route-95aaaafc49522a6b.js +0 -1
  329. package/.next/static/chunks/app/api/skills/install/route-95aaaafc49522a6b.js +0 -1
  330. package/.next/static/chunks/app/api/skills/route-95aaaafc49522a6b.js +0 -1
  331. package/.next/static/chunks/app/api/skills/search/route-95aaaafc49522a6b.js +0 -1
  332. package/.next/static/chunks/app/api/skills/update/route-95aaaafc49522a6b.js +0 -1
  333. package/.next/static/chunks/app/api/subagents/eta/route-95aaaafc49522a6b.js +0 -1
  334. package/.next/static/chunks/app/api/theme/route-95aaaafc49522a6b.js +0 -1
  335. package/.next/static/chunks/app/api/tool-image/route-95aaaafc49522a6b.js +0 -1
  336. package/.next/static/chunks/app/api/update-maintenance/route-95aaaafc49522a6b.js +0 -1
  337. package/.next/static/chunks/app/api/updates/route-95aaaafc49522a6b.js +0 -1
  338. package/.next/static/chunks/app/api/web-access/recovery/route-95aaaafc49522a6b.js +0 -1
  339. package/.next/static/chunks/app/api/web-access/route-95aaaafc49522a6b.js +0 -1
  340. package/.next/static/chunks/app/api/web6/consults/route-95aaaafc49522a6b.js +0 -1
  341. package/.next/static/chunks/app/api/worktrees/route-95aaaafc49522a6b.js +0 -1
  342. package/.next/static/chunks/app/manifest.webmanifest/route-95aaaafc49522a6b.js +0 -1
  343. package/.next/static/chunks/next/dist/client/components/builtin/app-error-95aaaafc49522a6b.js +0 -1
  344. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-95aaaafc49522a6b.js +0 -1
  345. package/.next/static/chunks/next/dist/client/components/builtin/not-found-95aaaafc49522a6b.js +0 -1
  346. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-95aaaafc49522a6b.js +0 -1
  347. package/.next/static/fOdMIeIOVq5i7KtiCo4rg/_buildManifest.js +0 -1
  348. package/.next/types/app/api/live/character-voice/route.ts +0 -351
  349. package/public/audio/live/ACML-1.0.txt +0 -85
  350. package/public/audio/live/hikari-reference.wav +0 -0
  351. package/public/audio/live/isana-reference.wav +0 -0
  352. package/public/audio/live/mio-reference.wav +0 -0
  353. package/public/audio/live/nova-reference.wav +0 -0
  354. package/public/audio/live/rin-reference.wav +0 -0
  355. package/public/audio/live/shion-reference.wav +0 -0
  356. package/public/audio/live/voices.json +0 -275
  357. package/public/audio/live/yuki-reference.wav +0 -0
  358. /package/.next/static/{fOdMIeIOVq5i7KtiCo4rg → IKi2VjUzAnD5AUcDn7QNi}/_ssgManifest.js +0 -0
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-webpack","duration":120147855,"timestamp":806216,"id":14,"parentId":1,"tags":{},"startTime":1792123336481,"traceId":"3f51ceadbce3c71a"},{"name":"run-typescript","duration":20973256,"timestamp":121359506,"id":11105,"parentId":1,"tags":{},"startTime":1792123457035,"traceId":"3f51ceadbce3c71a"},{"name":"static-check","duration":4474490,"timestamp":142458033,"id":11108,"parentId":1,"tags":{},"startTime":1792123478134,"traceId":"3f51ceadbce3c71a"},{"name":"static-generation","duration":14023294,"timestamp":147062946,"id":11282,"parentId":1,"tags":{},"startTime":1792123482739,"traceId":"3f51ceadbce3c71a"},{"name":"collect-build-traces","duration":24758177,"timestamp":147007916,"id":11279,"parentId":1,"tags":{},"startTime":1792123482684,"traceId":"3f51ceadbce3c71a"},{"name":"telemetry-flush","duration":76,"timestamp":171772705,"id":11291,"parentId":1,"tags":{},"startTime":1792123507448,"traceId":"3f51ceadbce3c71a"},{"name":"next-build","duration":171075023,"timestamp":697779,"id":1,"tags":{"buildMode":"default","version":"16.2.12","bundler":"webpack","has-custom-webpack-config":"true","use-build-worker":"false"},"startTime":1792123336373,"traceId":"3f51ceadbce3c71a"}]
1
+ [{"name":"run-webpack","duration":93821325,"timestamp":575170,"id":14,"parentId":1,"tags":{},"startTime":1792195703745,"traceId":"b1cf54e2dd52d389"},{"name":"run-typescript","duration":16362368,"timestamp":94770493,"id":11087,"parentId":1,"tags":{},"startTime":1792195797939,"traceId":"b1cf54e2dd52d389"},{"name":"static-check","duration":3743210,"timestamp":111221009,"id":11090,"parentId":1,"tags":{},"startTime":1792195814389,"traceId":"b1cf54e2dd52d389"},{"name":"static-generation","duration":10044206,"timestamp":115058105,"id":11262,"parentId":1,"tags":{},"startTime":1792195818226,"traceId":"b1cf54e2dd52d389"},{"name":"collect-build-traces","duration":16970438,"timestamp":115031605,"id":11259,"parentId":1,"tags":{},"startTime":1792195818200,"traceId":"b1cf54e2dd52d389"},{"name":"telemetry-flush","duration":59,"timestamp":132005996,"id":11271,"parentId":1,"tags":{},"startTime":1792195835174,"traceId":"b1cf54e2dd52d389"},{"name":"next-build","duration":131534973,"timestamp":471099,"id":1,"tags":{"buildMode":"default","version":"16.2.12","bundler":"webpack","has-custom-webpack-config":"true","use-build-worker":"false"},"startTime":1792195703641,"traceId":"b1cf54e2dd52d389"}]
@@ -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/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/interpret" | "/api/live/offer" | "/api/live/voices" | "/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-docs" | "/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/subagents/eta" | "/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/events" | "/api/live/interpret" | "/api/live/offer" | "/api/live/voices" | "/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-docs" | "/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/subagents/eta" | "/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
@@ -44,7 +44,6 @@ interface ParamMap {
44
44
  "/api/gpt6/web6-session": {}
45
45
  "/api/home": {}
46
46
  "/api/live/call/[callId]": { "callId": string; }
47
- "/api/live/character-voice": {}
48
47
  "/api/live/events": {}
49
48
  "/api/live/interpret": {}
50
49
  "/api/live/offer": {}
@@ -371,15 +371,6 @@ type RouteHandlerConfig<Route extends AppRouteHandlerRoutes = AppRouteHandlerRou
371
371
  type __Unused = __Check
372
372
  }
373
373
 
374
- // Validate ../../app/api/live/character-voice/route.ts
375
- {
376
- type __IsExpected<Specific extends RouteHandlerConfig<"/api/live/character-voice">> = Specific
377
- const handler = {} as typeof import("../../app/api/live/character-voice/route.js")
378
- type __Check = __IsExpected<typeof handler>
379
- // @ts-ignore
380
- type __Unused = __Check
381
- }
382
-
383
374
  // Validate ../../app/api/live/events/route.ts
384
375
  {
385
376
  type __IsExpected<Specific extends RouteHandlerConfig<"/api/live/events">> = Specific
package/README.md CHANGED
@@ -16,7 +16,7 @@ Use the same `~/.omp/agent` sessions, credentials and model configuration from t
16
16
 
17
17
  **한국어:** CUELO는 omp(oh-my-pi)를 위한 오픈소스 AI 코딩 에이전트 작업 공간이자 하네스입니다. 웹 앱은 omp SDK를 서버 안에서 실행하고, `omp` CLI와 같은 `~/.omp/agent` 디렉터리를 씁니다. 터미널에서 하던 세션을 브라우저에서 이어 가고, 다시 터미널로 돌아가도 기록·계정·모델 설정을 공유합니다.
18
18
 
19
- 내장 OMP 코어는 **18.11.1**입니다. 별도로 설치한 `omp` CLI의 버전은 웹 업데이트와 독립적이며, 앱에 포함된 CLI를 `omp` 명령으로 사용하는 설치에서는 웹과 같은 코어를 사용합니다.
19
+ 내장 OMP 코어는 **18.11.3**입니다. 별도로 설치한 `omp` CLI의 버전은 웹 업데이트와 독립적이며, 앱에 포함된 CLI를 `omp` 명령으로 사용하는 설치에서는 웹과 같은 코어를 사용합니다.
20
20
 
21
21
  문서 하네스는 기존 Word·Excel·PowerPoint 문서를 열고 편집하거나 변환할 때 LibreOffice를 우선 사용합니다. 원본은 보존하고 출력 결과를 확인하며, 매크로·전용 기능·서식 호환성이 필요하거나 사용자가 지정하면 MS Office를 사용합니다.
22
22
 
@@ -38,6 +38,8 @@ Anthropic 구독 계정이 모두 주간 한도에 닿으면, 미리 둔 예비
38
38
 
39
39
  주제별로 저장한 교훈을 정정하면 최초 기록과 최신 정정의 출처를 구분해 조회할 수 있습니다. 회상 목록에도 확인 가능한 전역·프로젝트 범위와 정정 정보를 표시합니다. 기억은 현재 요청과 저장소의 적용 조건을 대조하는 참고 자료이며 실행 승인을 대신하지 않습니다. 이전 교훈 본문을 별도 이력으로 쌓지는 않습니다. 자세한 보존 범위는 [하네스 안내](./docs/harness.md)를 참고하세요.
40
40
 
41
+ 교훈의 근거 파일명이나 제목에 비밀 토큰 형태의 문자열이 있으면 저장 전에 거절합니다. 거절된 정정은 기존 기억을 바꾸지 않습니다.
42
+
41
43
  이전 세션이나 압축 전 대화에서 빠진 사용자 지시·정정은 원문 회수 도구로 다시 확인할 수 있습니다. 현재 프로젝트와 각 세션의 선택된 분기를 기준으로 찾으며, 보관 세션·다른 프로젝트는 명시한 경우에만 포함합니다. 검색 한도에 걸리면 결과가 일부임을 표시하고, 원문을 읽기만 하며 현재 승인으로 되살리지 않습니다.
42
44
 
43
45
  하네스의 일반 비-UI 작업은 구성된 구현 후보 가운데 과제의 남은 판단과 검증 방법에 맞는 후보를 추천합니다. 한도 소진 때만 다른 후보를 쓰는 방식은 아니며, 근거가 부족하면 기존 기본값을 유지합니다. 추천은 Main의 선택을 돕는 정보이고 진행 중인 담당자의 모델을 바꾸지 않습니다.
@@ -55,7 +57,7 @@ Anthropic 구독 계정이 모두 주간 한도에 닿으면, 미리 둔 예비
55
57
  | 앱·런타임 설치 뒤 동작 | 세션 탐색·실시간 대화·분기/fork, 모델 역할, provider·플러그인·스킬 관리, 파일 미리보기, 비밀번호 잠금, 캐릭터 알림 등. 대화에는 별도 제공자 인증이 필요합니다 |
56
58
  | 사용자가 준비할 것 | Node.js·Bun과 자신의 모델 제공자 계정·모델 선택. 소스 checkout/전체 Git 기능에는 Git(Windows는 Git for Windows)도 필요합니다. 인증정보·세션·설정은 사용자의 로컬 `~/.omp/agent`에 저장합니다 |
57
59
  | 로컬 사이드카 (공개) | 계정 사용량 카드, 사이드 챗(`/btw`), SubAgent 아카이브의 실행 소스도 포함합니다. `start`가 앱과 함께 실행합니다. usage의 CLI fallback·`stats`에는 별도 `omp` CLI가 필요합니다 |
58
- | OMP 하네스 (공개) | Main/Maker 역할 분담, 발주·검수 계약, task guard, 판단 라우팅(Jev), 캐릭터 음성, 명령 가드의 규칙·SOP·확장과 앱 SDK core 패치입니다. `setup`으로 설치합니다. [하네스 안내](./docs/harness.md)에 Jev의 외부 자격 경계가 있습니다 |
60
+ | OMP 하네스 (공개) | Main/Maker 역할 분담, 발주·검수 계약, task guard, 판단 라우팅(Jev), 캐릭터 말투, 명령 가드의 규칙·SOP·확장과 앱 SDK core 패치입니다. `setup`으로 설치합니다. [하네스 안내](./docs/harness.md)에 Jev의 외부 자격 경계가 있습니다 |
59
61
  | 포함하지 않는 것 | 개발자의 로그인 정보·API 키·개인 계정 및 모델 설정·개인 skill·대화와 작업 기록·PC별 운영 자료. 공개 설치는 필요한 비개인 운영 기본값만 제공하고 모델은 사용자가 고릅니다 |
60
62
 
61
63
  ## CUELO에서 할 수 있는 것
@@ -108,12 +110,12 @@ Anthropic 구독 계정이 모두 주간 한도에 닿으면, 미리 둔 예비
108
110
  - 필요한 MCP 서버만 요청별로 연결하는 선택 모드를 지원합니다. 설치·인증·권한 변경은 먼저 승인을 받고 에이전트가 지원합니다. 설정과 적용 범위는 [요청별 MCP 선택 연결](./docs/harness.md#요청별-mcp-선택-연결)을 확인하세요.
109
111
  - 사이드 챗(`/btw`): 본 대화를 끊지 않고 옆 패널에서 따로 묻습니다. 답변은 본 대화와 같은 캐릭터 얼굴·스티커·마크다운으로 보이고, 세션마다 초안이 따로 보관됩니다. 사이드 챗 문답은 본 대화에 남지 않으며, 답변의 「메인에 보내기」를 누를 때만 문답과 추가 지시가 본 대화로 전달됩니다(본 대화가 실행 중이면 steer, 아니면 새 요청).
110
112
  - ChatGPT 상담(SHION): 로컬 shim이 전용 ChatGPT 탭에서 받은 답을 현재 omp 세션에 투영하고, 상담 기록과 실패 기록이 대화창에 표시됩니다.
111
- - 실시간 음성: 브라우저 마이크로 Codex live 음성 세션을 엽니다. “끊어”, “알았어, 끊어봐”, “아니 통화 종료하라고”처럼 단독 종료 요청을 말하면 최종 전사를 받은 뒤 마이크와 통화를 종료합니다. 선택 기능인 캐릭터 음성은 **설정 → 통화 음성**에서 Cartesia API 키를 입력하고 음성 준비에 동의하면 현재 Main 캐릭터에 맞춰 적용됩니다. 통화 답변은 실제로 말한 캐릭터의 얼굴과 이름으로 표시되고, 캐릭터 음성 대신 기본 음성으로 말했으면 「기본 음성」이라고 함께 보입니다. 입력창에는 통화 시작·종료 버튼만 남으며, 좁은 화면에서는 모델 선택 등 다른 조작부와 겹치지 않게 줄바꿈합니다. 별도 음성 ID 입력은 필요하지 않으며, 키는 서버에만 보관합니다. 지원 플랜·크레딧 사용·전송 범위는 [캐릭터 통화 설정](./docs/live-voice.md)을 확인하세요.
113
+ - 실시간 음성: 브라우저 마이크로 Codex live 음성 세션을 엽니다. “끊어”, “알았어, 끊어봐”, “아니 통화 종료하라고”처럼 단독 종료 요청을 말하면 최종 전사를 받은 뒤 마이크와 통화를 종료합니다. **설정 → 통화 음성**에서 통화와 통역이 쓰는 Codex 목소리를 고를 수 있습니다(한국어 햇살·하늘 포함). 통화 답변은 통화를 시작할 때의 Main 캐릭터 얼굴과 이름으로 표시되고 「기본 음성」이라고 함께 보입니다. 입력창에는 통화 시작·종료 버튼만 남으며, 좁은 화면에서는 모델 선택 등 다른 조작부와 겹치지 않게 줄바꿈합니다. 자세한 내용은 [라이브 통화](./docs/live-voice.md)를 확인하세요.
112
114
 
113
115
  **통역**
114
116
 
115
117
  - 사이드바의 「통역」을 고르면 작업 화면 위에 통역 화면이 열립니다. 한국어·영어·베트남어·일본어·태국어 가운데 내 언어와 상대 언어를 고르고 「통역 시작」을 누르면, 휴대폰을 두 사람 사이에 두고 각자 말하기만 하면 됩니다. 누가 말하든 상대 언어로 바로 소리 내어 옮깁니다. 버튼을 번갈아 누를 필요가 없습니다.
116
- - 통역은 연결된 ChatGPT 계정의 Codex 라이브 음성 통화로 합니다. 통화에는 고른 두 언어로 만든 짧은 통역 지시만 들어가고, 작업 세션·하네스 규칙·대화 기록은 들어가지 않으며 작업을 위임하지도 않습니다. 목소리는 Codex 기본 음성입니다.
118
+ - 통역은 연결된 ChatGPT 계정의 Codex 라이브 음성 통화로 합니다. 통화에는 고른 두 언어로 만든 짧은 통역 지시만 들어가고, 작업 세션·하네스 규칙·대화 기록은 들어가지 않으며 작업을 위임하지도 않습니다. 목소리는 **설정 → 통화 음성**에서 고른 Codex 목소리입니다.
117
119
  - 화면에는 오간 말이 말풍선 자막으로 쌓입니다. 큰 글씨가 통역, 작은 글씨가 들은 원문입니다. 글자(한글·가나·태국 문자·베트남어 성조 부호 등)로 누가 말했는지 가려 내 말은 오른쪽, 상대 말은 왼쪽에 둡니다. 영어와 베트남어처럼 같은 글자를 쓰는 짝에서 이름·숫자만 말해 가를 수 없으면 왼쪽에 둡니다.
118
120
  - 통역 화면을 열거나 언어를 바꾸거나 통역을 끝내면, 고른 언어 짝으로 통화를 미리 연결해 25초쯤 기다립니다. 그 안에 「통역 시작」을 누르면 연결을 기다리지 않고 바로 듣기 시작하고, 그보다 늦으면 전처럼 누른 뒤에 연결합니다. 미리 연결할 때는 마이크를 열지 않습니다. 마이크는 「통역 시작」을 누른 뒤에야 켜집니다. 화면을 닫으면 미리 연결한 통화도 끊습니다.
119
121
  - 통역 중에 언어를 바꾸면 새 언어 짝으로 다시 연결합니다. 「대화로」를 누르면 통화와 마이크를 끝냅니다. 마이크는 HTTPS 주소에서만 켜지며, 통역 기록은 화면이 열려 있는 동안만 보관하고 서버에 저장하지 않습니다. 직접 입력해 번역하는 칸과 말풍선 다시 듣기는 없습니다.
@@ -228,6 +230,8 @@ node install.mjs start
228
230
 
229
231
  사이드카가 없으면 해당 패널은 「연결 안 됨」으로 표시되고, 나머지 기능은 그대로 동작합니다.
230
232
 
233
+ 사이드챗은 보조 패널의 「캐릭터」 다음 탭에서 엽니다. 패널 폭이 좁으면 탭이 다음 줄로 이어져 마지막 탭도 숨지 않습니다.
234
+
231
235
  ### Docker
232
236
 
233
237
  `Dockerfile`과 `docker-compose.yml`로 컨테이너에서 실행할 수 있습니다. omp 홈 디렉터리(`~/.omp`)를 마운트해야 합니다. 자세한 내용은 [docs/docker.md](./docs/docker.md)를 보세요.
@@ -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.10.20',
12
+ version: '0.10.21',
13
13
  distribution: 'cuelo',
14
- coreVersion: '18.11.1',
14
+ coreVersion: '18.11.3',
15
15
  };
16
16
 
17
17
  // OMP core `src/sdk.ts`: session-scoped AsyncJobManager for a process that hosts
@@ -83,7 +83,7 @@ function readNativePackage(target) {
83
83
  throw new Error(`unexpected native package ${packageJson.name}@${packageJson.version}`);
84
84
  }
85
85
  if (!build || build.distribution !== EXPECTED.distribution || build.coreVersion !== EXPECTED.coreVersion) {
86
- throw new Error('native cueloBuild metadata does not match cuelo / core 18.11.1');
86
+ throw new Error('native cueloBuild metadata does not match cuelo / core 18.11.3');
87
87
  }
88
88
  return packageJson;
89
89
  }
@@ -84,6 +84,8 @@ Main은 사용자 요구·수용 조건·보존 동작·승인·관측 경로를
84
84
 
85
85
  Main이 활용한 관련 Skill을 Maker에게 넘기고 적용 여부를 확인하는 절차는 `rule://subagent` 「Skill 인계」를 따른다. 사용자가 다시 요청해야 발동하는 절차가 아니다.
86
86
 
87
+ Skill을 쓰기로 했으면 그 Skill의 절차와 기준대로 결과를 낸다. 자체 정규식·스크립트·발췌로 절차 일부를 대신했거나 범위를 줄였으면 그 결과를 Skill의 결과로 부르지 않고, 대신한 부분과 빠진 범위를 보고에 밝힌다. 컨텍스트가 모자라면 기준이나 범위를 줄이지 말고 파일 단위로 나누거나 `maker`에게 맡긴다.
88
+
87
89
  `systematic-debugging`·`verification-before-completion`처럼 절차만 담은 Skill은 원인을 모르는 버그, 두 번째 실패, 완료 판정이 모호할 때만 연다. 위치와 수정 방향이 과제에 이미 나온 수정은 기본 검증 절차로 충분하므로 선독하지 않는다.
88
90
 
89
91
  요청 한 번마다 전체 컨텍스트를 다시 싣는다. 서로 의존하지 않는 읽기·검색은 한 턴에 묶고, 수정 전에는 고칠 구간과 그 호출부·테스트를 함께 읽어 한 번에 맞게 고친다. edit이 "본 적 없는 줄"로 거절되면 안내대로 같은 edit을 그대로 다시 보내고 재읽기를 하지 않는다.
@@ -0,0 +1,34 @@
1
+ import type { ExtensionAPI } from "@oh-my-pi/pi-coding-agent";
2
+ import { routeDocmap } from "./lib/docmap-search";
3
+
4
+ // 2026-10-16 재조사(doc/history/2026/10/16-rag-reinvestigation): 격리 표본 12건에서 문서 지도를 연 경우가 0건이었다.
5
+ // 도구나 규칙만 두면 같은 문제가 되풀이되므로, 사용자 요청마다 하네스가 지도·RECORD 헤더 검색을 직접 돌려
6
+ // 후보 기록과 맞는 구간을 그 prompt의 숨은 메시지로 넘긴다. 하한 미만·지도 없음·오류면 아무것도 붙이지 않는다.
7
+ // 안내는 external-advice-check와 같은 이유로 aside가 아니라 그 prompt의 `before_agent_start` 메시지로만 붙인다.
8
+ export default function docmapRoute(pi: ExtensionAPI): void {
9
+ let pendingText: string | undefined;
10
+ pi.on("session_start", () => { pendingText = undefined; });
11
+ pi.on("session_shutdown", () => { pendingText = undefined; });
12
+ pi.on("input", (event) => {
13
+ pendingText = undefined;
14
+ if (event.source !== "interactive" && event.source !== "rpc") return;
15
+ const text = event.text.trim();
16
+ if (text) pendingText = text;
17
+ });
18
+ pi.on("before_agent_start", (event, ctx) => {
19
+ // 대화형·RPC는 사용자 입력과 같은 본문의 prompt에만 붙인다. CUELO의 재개·업데이트 통지와 goal 계속 같은
20
+ // 내부 prompt는 `input`을 내지 않아(lib/rpc-manager.ts isGenuineUserRequest) 여기서 빠진다.
21
+ // `omp -p`는 input 이벤트가 없어 최상위 세션의 CLI prompt 자체를 사용자 요청으로 본다. CUELO도 확장을
22
+ // mode 없이 초기화해 ctx.mode가 "print"이므로, UI 문맥이 없다는 것까지 봐야 CLI로 가를 수 있다.
23
+ const fromInput = pendingText !== undefined && event.prompt.includes(pendingText);
24
+ const cliPrompt = (ctx.mode === "print" || ctx.mode === "json") && !ctx.hasUI && ctx.agent?.kind === "main";
25
+ if (!fromInput && !cliPrompt) return;
26
+ try {
27
+ const route = routeDocmap(ctx.cwd, fromInput ? pendingText! : event.prompt);
28
+ if (!route) return;
29
+ return { message: { customType: "docmap-route", content: route.text, display: false, attribution: "agent" } };
30
+ } catch {
31
+ return;
32
+ }
33
+ });
34
+ }
@@ -841,7 +841,7 @@ const MEMORY_ITEM_LIMIT = 8;
841
841
  const MEMORY_EXCERPT_CHARS = 500;
842
842
  const REQUEST_EXCERPT_CHARS = 1200;
843
843
  /** 판정이 이 안에 끝나지 않으면 기억 안내 없이 그대로 진행한다. 실행 허가·차단이 아닌 bounded advisory latency다. */
844
- const MEMORY_APPLICATION_TIMEOUT_MS = 8_000;
844
+ const MEMORY_APPLICATION_TIMEOUT_MS = 3_000;
845
845
  const MEMORY_APPLICATION_CHOICES = ["applies", "excepted", "conflicts", "unrelated", "unknown"] as const;
846
846
  type MemoryApplication = (typeof MEMORY_APPLICATION_CHOICES)[number];
847
847
  /** recall 행: `- 내용 [source] (날짜) {scope; corrected rN; …} (id: …)`. id 없는 옛 행은 가리킬 수 없어 제외한다. */
@@ -1999,6 +1999,9 @@ export function createJevRuntime(deps: JevRuntimeDeps = {}) {
1999
1999
  let memoryGeneration = 0;
2000
2000
  let memoryController: AbortController | undefined;
2001
2001
  const judgedMemoryInputs = new Set<string>();
2002
+ // core는 직접 요청의 before_agent_start를 agent_start 전에 보내고, 실행 중 steering·queued 입력은 같은 run 안에서 다시 보낸다.
2003
+ // run 시작 때 이미 점검했으므로 run 안의 재요청은 판정 없이 바로 넘긴다(steering 지연 방지).
2004
+ let memoryInRun = false;
2002
2005
  function cancelMemoryApplication(): void {
2003
2006
  memoryGeneration += 1;
2004
2007
  memoryController?.abort();
@@ -2007,6 +2010,13 @@ export function createJevRuntime(deps: JevRuntimeDeps = {}) {
2007
2010
  pi.on("session_start", () => {
2008
2011
  cancelMemoryApplication();
2009
2012
  judgedMemoryInputs.clear();
2013
+ memoryInRun = false;
2014
+ });
2015
+ pi.on("agent_start", () => {
2016
+ memoryInRun = true;
2017
+ });
2018
+ pi.on("agent_end", () => {
2019
+ memoryInRun = false;
2010
2020
  });
2011
2021
  pi.on("session_shutdown", () => {
2012
2022
  cancelMemoryApplication();
@@ -2016,6 +2026,7 @@ export function createJevRuntime(deps: JevRuntimeDeps = {}) {
2016
2026
  if (event.source === "interactive" || event.source === "rpc") cancelMemoryApplication();
2017
2027
  });
2018
2028
  pi.on("before_agent_start", async (event, ctx) => {
2029
+ if (memoryInRun) return undefined;
2019
2030
  const recalled = readRecalledMemories(event.systemPrompt ?? []);
2020
2031
  if (!recalled || recalled.memories.length === 0 || MEMORY_SECRET_PATTERN.test(event.prompt)) return undefined;
2021
2032
  const request = boundedExcerpt(event.prompt, REQUEST_EXCERPT_CHARS);