@actalk/inkos-core 1.3.6 → 1.3.7-canary.36.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/dist/agent/agent-session.d.ts +7 -7
  2. package/dist/agent/agent-session.d.ts.map +1 -1
  3. package/dist/agent/agent-session.js +392 -63
  4. package/dist/agent/agent-session.js.map +1 -1
  5. package/dist/agent/agent-system-prompt.d.ts.map +1 -1
  6. package/dist/agent/agent-system-prompt.js +20 -16
  7. package/dist/agent/agent-system-prompt.js.map +1 -1
  8. package/dist/agent/agent-tools.d.ts +4 -1
  9. package/dist/agent/agent-tools.d.ts.map +1 -1
  10. package/dist/agent/agent-tools.js +81 -64
  11. package/dist/agent/agent-tools.js.map +1 -1
  12. package/dist/agents/architect.d.ts +18 -20
  13. package/dist/agents/architect.d.ts.map +1 -1
  14. package/dist/agents/architect.js +513 -632
  15. package/dist/agents/architect.js.map +1 -1
  16. package/dist/agents/chapter-analyzer.d.ts.map +1 -1
  17. package/dist/agents/chapter-analyzer.js +10 -6
  18. package/dist/agents/chapter-analyzer.js.map +1 -1
  19. package/dist/agents/composer.d.ts +1 -13
  20. package/dist/agents/composer.d.ts.map +1 -1
  21. package/dist/agents/composer.js +297 -290
  22. package/dist/agents/composer.js.map +1 -1
  23. package/dist/agents/consolidator.d.ts +17 -1
  24. package/dist/agents/consolidator.d.ts.map +1 -1
  25. package/dist/agents/consolidator.js +44 -6
  26. package/dist/agents/consolidator.js.map +1 -1
  27. package/dist/agents/continuity.d.ts +4 -1
  28. package/dist/agents/continuity.d.ts.map +1 -1
  29. package/dist/agents/continuity.js +111 -21
  30. package/dist/agents/continuity.js.map +1 -1
  31. package/dist/agents/length-normalizer.d.ts.map +1 -1
  32. package/dist/agents/length-normalizer.js +1 -4
  33. package/dist/agents/length-normalizer.js.map +1 -1
  34. package/dist/agents/planner-context.d.ts +54 -0
  35. package/dist/agents/planner-context.d.ts.map +1 -0
  36. package/dist/agents/planner-context.js +245 -0
  37. package/dist/agents/planner-context.js.map +1 -0
  38. package/dist/agents/planner-prompts.d.ts +36 -0
  39. package/dist/agents/planner-prompts.d.ts.map +1 -0
  40. package/dist/agents/planner-prompts.js +350 -0
  41. package/dist/agents/planner-prompts.js.map +1 -0
  42. package/dist/agents/planner.d.ts +39 -11
  43. package/dist/agents/planner.d.ts.map +1 -1
  44. package/dist/agents/planner.js +212 -195
  45. package/dist/agents/planner.js.map +1 -1
  46. package/dist/agents/polisher.d.ts +33 -0
  47. package/dist/agents/polisher.d.ts.map +1 -0
  48. package/dist/agents/polisher.js +122 -0
  49. package/dist/agents/polisher.js.map +1 -0
  50. package/dist/agents/post-write-validator.d.ts +1 -0
  51. package/dist/agents/post-write-validator.d.ts.map +1 -1
  52. package/dist/agents/post-write-validator.js +13 -0
  53. package/dist/agents/post-write-validator.js.map +1 -1
  54. package/dist/agents/reviser.d.ts +6 -2
  55. package/dist/agents/reviser.d.ts.map +1 -1
  56. package/dist/agents/reviser.js +379 -98
  57. package/dist/agents/reviser.js.map +1 -1
  58. package/dist/agents/rules-reader.d.ts +15 -2
  59. package/dist/agents/rules-reader.d.ts.map +1 -1
  60. package/dist/agents/rules-reader.js +49 -6
  61. package/dist/agents/rules-reader.js.map +1 -1
  62. package/dist/agents/state-validator.d.ts +9 -1
  63. package/dist/agents/state-validator.d.ts.map +1 -1
  64. package/dist/agents/state-validator.js +37 -1
  65. package/dist/agents/state-validator.js.map +1 -1
  66. package/dist/agents/writer-prompts.d.ts +1 -0
  67. package/dist/agents/writer-prompts.d.ts.map +1 -1
  68. package/dist/agents/writer-prompts.js +272 -29
  69. package/dist/agents/writer-prompts.js.map +1 -1
  70. package/dist/agents/writer.d.ts +12 -3
  71. package/dist/agents/writer.d.ts.map +1 -1
  72. package/dist/agents/writer.js +77 -107
  73. package/dist/agents/writer.js.map +1 -1
  74. package/dist/index.d.ts +20 -5
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +19 -5
  77. package/dist/index.js.map +1 -1
  78. package/dist/interaction/book-session-store.d.ts.map +1 -1
  79. package/dist/interaction/book-session-store.js +84 -69
  80. package/dist/interaction/book-session-store.js.map +1 -1
  81. package/dist/interaction/events.d.ts +2 -2
  82. package/dist/interaction/project-tools.d.ts +1 -0
  83. package/dist/interaction/project-tools.d.ts.map +1 -1
  84. package/dist/interaction/project-tools.js +51 -3
  85. package/dist/interaction/project-tools.js.map +1 -1
  86. package/dist/interaction/session-transcript-legacy.d.ts +4 -0
  87. package/dist/interaction/session-transcript-legacy.d.ts.map +1 -0
  88. package/dist/interaction/session-transcript-legacy.js +100 -0
  89. package/dist/interaction/session-transcript-legacy.js.map +1 -0
  90. package/dist/interaction/session-transcript-restore.d.ts +17 -0
  91. package/dist/interaction/session-transcript-restore.d.ts.map +1 -0
  92. package/dist/interaction/session-transcript-restore.js +493 -0
  93. package/dist/interaction/session-transcript-restore.js.map +1 -0
  94. package/dist/interaction/session-transcript-schema.d.ts +402 -0
  95. package/dist/interaction/session-transcript-schema.d.ts.map +1 -0
  96. package/dist/interaction/session-transcript-schema.js +59 -0
  97. package/dist/interaction/session-transcript-schema.js.map +1 -0
  98. package/dist/interaction/session-transcript.d.ts +14 -0
  99. package/dist/interaction/session-transcript.d.ts.map +1 -0
  100. package/dist/interaction/session-transcript.js +152 -0
  101. package/dist/interaction/session-transcript.js.map +1 -0
  102. package/dist/interaction/session.d.ts +10 -10
  103. package/dist/interaction/session.d.ts.map +1 -1
  104. package/dist/interaction/session.js +5 -3
  105. package/dist/interaction/session.js.map +1 -1
  106. package/dist/llm/provider.d.ts +6 -9
  107. package/dist/llm/provider.d.ts.map +1 -1
  108. package/dist/llm/provider.js +255 -63
  109. package/dist/llm/provider.js.map +1 -1
  110. package/dist/llm/providers/endpoints/ai360.d.ts +10 -0
  111. package/dist/llm/providers/endpoints/ai360.d.ts.map +1 -0
  112. package/dist/llm/providers/endpoints/ai360.js +34 -0
  113. package/dist/llm/providers/endpoints/ai360.js.map +1 -0
  114. package/dist/llm/providers/endpoints/anthropic.d.ts +12 -0
  115. package/dist/llm/providers/endpoints/anthropic.d.ts.map +1 -0
  116. package/dist/llm/providers/endpoints/anthropic.js +72 -0
  117. package/dist/llm/providers/endpoints/anthropic.js.map +1 -0
  118. package/dist/llm/providers/endpoints/astronCodingPlan.d.ts +16 -0
  119. package/dist/llm/providers/endpoints/astronCodingPlan.d.ts.map +1 -0
  120. package/dist/llm/providers/endpoints/astronCodingPlan.js +16 -0
  121. package/dist/llm/providers/endpoints/astronCodingPlan.js.map +1 -0
  122. package/dist/llm/providers/endpoints/baichuan.d.ts +10 -0
  123. package/dist/llm/providers/endpoints/baichuan.d.ts.map +1 -0
  124. package/dist/llm/providers/endpoints/baichuan.js +20 -0
  125. package/dist/llm/providers/endpoints/baichuan.js.map +1 -0
  126. package/dist/llm/providers/endpoints/bailian.d.ts +25 -0
  127. package/dist/llm/providers/endpoints/bailian.d.ts.map +1 -0
  128. package/dist/llm/providers/endpoints/bailian.js +42 -0
  129. package/dist/llm/providers/endpoints/bailian.js.map +1 -0
  130. package/dist/llm/providers/endpoints/bailianCodingPlan.d.ts +10 -0
  131. package/dist/llm/providers/endpoints/bailianCodingPlan.d.ts.map +1 -0
  132. package/dist/llm/providers/endpoints/bailianCodingPlan.js +22 -0
  133. package/dist/llm/providers/endpoints/bailianCodingPlan.js.map +1 -0
  134. package/dist/llm/providers/endpoints/custom.d.ts +16 -0
  135. package/dist/llm/providers/endpoints/custom.d.ts.map +1 -0
  136. package/dist/llm/providers/endpoints/custom.js +15 -0
  137. package/dist/llm/providers/endpoints/custom.js.map +1 -0
  138. package/dist/llm/providers/endpoints/deepseek.d.ts +17 -0
  139. package/dist/llm/providers/endpoints/deepseek.d.ts.map +1 -0
  140. package/dist/llm/providers/endpoints/deepseek.js +20 -0
  141. package/dist/llm/providers/endpoints/deepseek.js.map +1 -0
  142. package/dist/llm/providers/endpoints/giteeai.d.ts +10 -0
  143. package/dist/llm/providers/endpoints/giteeai.d.ts.map +1 -0
  144. package/dist/llm/providers/endpoints/giteeai.js +33 -0
  145. package/dist/llm/providers/endpoints/giteeai.js.map +1 -0
  146. package/dist/llm/providers/endpoints/githubCopilot.d.ts +10 -0
  147. package/dist/llm/providers/endpoints/githubCopilot.d.ts.map +1 -0
  148. package/dist/llm/providers/endpoints/githubCopilot.js +35 -0
  149. package/dist/llm/providers/endpoints/githubCopilot.js.map +1 -0
  150. package/dist/llm/providers/endpoints/glmCodingPlan.d.ts +9 -0
  151. package/dist/llm/providers/endpoints/glmCodingPlan.d.ts.map +1 -0
  152. package/dist/llm/providers/endpoints/glmCodingPlan.js +21 -0
  153. package/dist/llm/providers/endpoints/glmCodingPlan.js.map +1 -0
  154. package/dist/llm/providers/endpoints/google.d.ts +12 -0
  155. package/dist/llm/providers/endpoints/google.d.ts.map +1 -0
  156. package/dist/llm/providers/endpoints/google.js +41 -0
  157. package/dist/llm/providers/endpoints/google.js.map +1 -0
  158. package/dist/llm/providers/endpoints/hunyuan.d.ts +10 -0
  159. package/dist/llm/providers/endpoints/hunyuan.d.ts.map +1 -0
  160. package/dist/llm/providers/endpoints/hunyuan.js +34 -0
  161. package/dist/llm/providers/endpoints/hunyuan.js.map +1 -0
  162. package/dist/llm/providers/endpoints/infiniai.d.ts +10 -0
  163. package/dist/llm/providers/endpoints/infiniai.d.ts.map +1 -0
  164. package/dist/llm/providers/endpoints/infiniai.js +64 -0
  165. package/dist/llm/providers/endpoints/infiniai.js.map +1 -0
  166. package/dist/llm/providers/endpoints/internlm.d.ts +10 -0
  167. package/dist/llm/providers/endpoints/internlm.d.ts.map +1 -0
  168. package/dist/llm/providers/endpoints/internlm.js +20 -0
  169. package/dist/llm/providers/endpoints/internlm.js.map +1 -0
  170. package/dist/llm/providers/endpoints/kimiCodingPlan.d.ts +9 -0
  171. package/dist/llm/providers/endpoints/kimiCodingPlan.d.ts.map +1 -0
  172. package/dist/llm/providers/endpoints/kimiCodingPlan.js +17 -0
  173. package/dist/llm/providers/endpoints/kimiCodingPlan.js.map +1 -0
  174. package/dist/llm/providers/endpoints/longcat.d.ts +9 -0
  175. package/dist/llm/providers/endpoints/longcat.d.ts.map +1 -0
  176. package/dist/llm/providers/endpoints/longcat.js +18 -0
  177. package/dist/llm/providers/endpoints/longcat.js.map +1 -0
  178. package/dist/llm/providers/endpoints/minimax.d.ts +15 -0
  179. package/dist/llm/providers/endpoints/minimax.d.ts.map +1 -0
  180. package/dist/llm/providers/endpoints/minimax.js +26 -0
  181. package/dist/llm/providers/endpoints/minimax.js.map +1 -0
  182. package/dist/llm/providers/endpoints/minimaxCodingPlan.d.ts +9 -0
  183. package/dist/llm/providers/endpoints/minimaxCodingPlan.d.ts.map +1 -0
  184. package/dist/llm/providers/endpoints/minimaxCodingPlan.js +21 -0
  185. package/dist/llm/providers/endpoints/minimaxCodingPlan.js.map +1 -0
  186. package/dist/llm/providers/endpoints/mistral.d.ts +11 -0
  187. package/dist/llm/providers/endpoints/mistral.d.ts.map +1 -0
  188. package/dist/llm/providers/endpoints/mistral.js +31 -0
  189. package/dist/llm/providers/endpoints/mistral.js.map +1 -0
  190. package/dist/llm/providers/endpoints/modelscope.d.ts +10 -0
  191. package/dist/llm/providers/endpoints/modelscope.d.ts.map +1 -0
  192. package/dist/llm/providers/endpoints/modelscope.js +22 -0
  193. package/dist/llm/providers/endpoints/modelscope.js.map +1 -0
  194. package/dist/llm/providers/endpoints/moonshot.d.ts +12 -0
  195. package/dist/llm/providers/endpoints/moonshot.d.ts.map +1 -0
  196. package/dist/llm/providers/endpoints/moonshot.js +29 -0
  197. package/dist/llm/providers/endpoints/moonshot.js.map +1 -0
  198. package/dist/llm/providers/endpoints/newapi.d.ts +14 -0
  199. package/dist/llm/providers/endpoints/newapi.d.ts.map +1 -0
  200. package/dist/llm/providers/endpoints/newapi.js +14 -0
  201. package/dist/llm/providers/endpoints/newapi.js.map +1 -0
  202. package/dist/llm/providers/endpoints/ollama.d.ts +12 -0
  203. package/dist/llm/providers/endpoints/ollama.d.ts.map +1 -0
  204. package/dist/llm/providers/endpoints/ollama.js +63 -0
  205. package/dist/llm/providers/endpoints/ollama.js.map +1 -0
  206. package/dist/llm/providers/endpoints/openai.d.ts +12 -0
  207. package/dist/llm/providers/endpoints/openai.d.ts.map +1 -0
  208. package/dist/llm/providers/endpoints/openai.js +67 -0
  209. package/dist/llm/providers/endpoints/openai.js.map +1 -0
  210. package/dist/llm/providers/endpoints/opencodeCodingPlan.d.ts +9 -0
  211. package/dist/llm/providers/endpoints/opencodeCodingPlan.d.ts.map +1 -0
  212. package/dist/llm/providers/endpoints/opencodeCodingPlan.js +23 -0
  213. package/dist/llm/providers/endpoints/opencodeCodingPlan.js.map +1 -0
  214. package/dist/llm/providers/endpoints/openrouter.d.ts +15 -0
  215. package/dist/llm/providers/endpoints/openrouter.d.ts.map +1 -0
  216. package/dist/llm/providers/endpoints/openrouter.js +74 -0
  217. package/dist/llm/providers/endpoints/openrouter.js.map +1 -0
  218. package/dist/llm/providers/endpoints/ppio.d.ts +15 -0
  219. package/dist/llm/providers/endpoints/ppio.d.ts.map +1 -0
  220. package/dist/llm/providers/endpoints/ppio.js +73 -0
  221. package/dist/llm/providers/endpoints/ppio.js.map +1 -0
  222. package/dist/llm/providers/endpoints/qiniu.d.ts +10 -0
  223. package/dist/llm/providers/endpoints/qiniu.d.ts.map +1 -0
  224. package/dist/llm/providers/endpoints/qiniu.js +24 -0
  225. package/dist/llm/providers/endpoints/qiniu.js.map +1 -0
  226. package/dist/llm/providers/endpoints/sensenova.d.ts +10 -0
  227. package/dist/llm/providers/endpoints/sensenova.d.ts.map +1 -0
  228. package/dist/llm/providers/endpoints/sensenova.js +37 -0
  229. package/dist/llm/providers/endpoints/sensenova.js.map +1 -0
  230. package/dist/llm/providers/endpoints/siliconcloud.d.ts +14 -0
  231. package/dist/llm/providers/endpoints/siliconcloud.d.ts.map +1 -0
  232. package/dist/llm/providers/endpoints/siliconcloud.js +114 -0
  233. package/dist/llm/providers/endpoints/siliconcloud.js.map +1 -0
  234. package/dist/llm/providers/endpoints/spark.d.ts +14 -0
  235. package/dist/llm/providers/endpoints/spark.d.ts.map +1 -0
  236. package/dist/llm/providers/endpoints/spark.js +21 -0
  237. package/dist/llm/providers/endpoints/spark.js.map +1 -0
  238. package/dist/llm/providers/endpoints/stepfun.d.ts +10 -0
  239. package/dist/llm/providers/endpoints/stepfun.d.ts.map +1 -0
  240. package/dist/llm/providers/endpoints/stepfun.js +27 -0
  241. package/dist/llm/providers/endpoints/stepfun.js.map +1 -0
  242. package/dist/llm/providers/endpoints/tencentcloud.d.ts +10 -0
  243. package/dist/llm/providers/endpoints/tencentcloud.d.ts.map +1 -0
  244. package/dist/llm/providers/endpoints/tencentcloud.js +17 -0
  245. package/dist/llm/providers/endpoints/tencentcloud.js.map +1 -0
  246. package/dist/llm/providers/endpoints/volcengine.d.ts +10 -0
  247. package/dist/llm/providers/endpoints/volcengine.d.ts.map +1 -0
  248. package/dist/llm/providers/endpoints/volcengine.js +44 -0
  249. package/dist/llm/providers/endpoints/volcengine.js.map +1 -0
  250. package/dist/llm/providers/endpoints/volcengineCodingPlan.d.ts +19 -0
  251. package/dist/llm/providers/endpoints/volcengineCodingPlan.d.ts.map +1 -0
  252. package/dist/llm/providers/endpoints/volcengineCodingPlan.js +25 -0
  253. package/dist/llm/providers/endpoints/volcengineCodingPlan.js.map +1 -0
  254. package/dist/llm/providers/endpoints/wenxin.d.ts +10 -0
  255. package/dist/llm/providers/endpoints/wenxin.d.ts.map +1 -0
  256. package/dist/llm/providers/endpoints/wenxin.js +98 -0
  257. package/dist/llm/providers/endpoints/wenxin.js.map +1 -0
  258. package/dist/llm/providers/endpoints/xai.d.ts +11 -0
  259. package/dist/llm/providers/endpoints/xai.d.ts.map +1 -0
  260. package/dist/llm/providers/endpoints/xai.js +25 -0
  261. package/dist/llm/providers/endpoints/xai.js.map +1 -0
  262. package/dist/llm/providers/endpoints/xiaomimimo.d.ts +12 -0
  263. package/dist/llm/providers/endpoints/xiaomimimo.d.ts.map +1 -0
  264. package/dist/llm/providers/endpoints/xiaomimimo.js +16 -0
  265. package/dist/llm/providers/endpoints/xiaomimimo.js.map +1 -0
  266. package/dist/llm/providers/endpoints/zeroone.d.ts +10 -0
  267. package/dist/llm/providers/endpoints/zeroone.d.ts.map +1 -0
  268. package/dist/llm/providers/endpoints/zeroone.js +26 -0
  269. package/dist/llm/providers/endpoints/zeroone.js.map +1 -0
  270. package/dist/llm/providers/endpoints/zhipu.d.ts +12 -0
  271. package/dist/llm/providers/endpoints/zhipu.d.ts.map +1 -0
  272. package/dist/llm/providers/endpoints/zhipu.js +51 -0
  273. package/dist/llm/providers/endpoints/zhipu.js.map +1 -0
  274. package/dist/llm/providers/index.d.ts +5 -0
  275. package/dist/llm/providers/index.d.ts.map +1 -0
  276. package/dist/llm/providers/index.js +67 -0
  277. package/dist/llm/providers/index.js.map +1 -0
  278. package/dist/llm/providers/lookup.d.ts +16 -0
  279. package/dist/llm/providers/lookup.d.ts.map +1 -0
  280. package/dist/llm/providers/lookup.js +68 -0
  281. package/dist/llm/providers/lookup.js.map +1 -0
  282. package/dist/llm/providers/probe.d.ts +11 -0
  283. package/dist/llm/providers/probe.d.ts.map +1 -0
  284. package/dist/llm/providers/probe.js +24 -0
  285. package/dist/llm/providers/probe.js.map +1 -0
  286. package/dist/llm/providers/types.d.ts +71 -0
  287. package/dist/llm/providers/types.d.ts.map +1 -0
  288. package/dist/llm/providers/types.js +9 -0
  289. package/dist/llm/providers/types.js.map +1 -0
  290. package/dist/llm/providers/verify.d.ts +27 -0
  291. package/dist/llm/providers/verify.d.ts.map +1 -0
  292. package/dist/llm/providers/verify.js +77 -0
  293. package/dist/llm/providers/verify.js.map +1 -0
  294. package/dist/llm/secrets.d.ts.map +1 -1
  295. package/dist/llm/secrets.js +27 -2
  296. package/dist/llm/secrets.js.map +1 -1
  297. package/dist/llm/service-presets.d.ts +13 -3
  298. package/dist/llm/service-presets.d.ts.map +1 -1
  299. package/dist/llm/service-presets.js +78 -42
  300. package/dist/llm/service-presets.js.map +1 -1
  301. package/dist/llm/service-resolver.d.ts +1 -1
  302. package/dist/llm/service-resolver.d.ts.map +1 -1
  303. package/dist/llm/service-resolver.js +13 -0
  304. package/dist/llm/service-resolver.js.map +1 -1
  305. package/dist/models/book-rules.d.ts +23 -1
  306. package/dist/models/book-rules.d.ts.map +1 -1
  307. package/dist/models/book-rules.js +54 -2
  308. package/dist/models/book-rules.js.map +1 -1
  309. package/dist/models/input-governance.d.ts +20 -244
  310. package/dist/models/input-governance.d.ts.map +1 -1
  311. package/dist/models/input-governance.js +7 -51
  312. package/dist/models/input-governance.js.map +1 -1
  313. package/dist/models/project.d.ts +29 -28
  314. package/dist/models/project.d.ts.map +1 -1
  315. package/dist/models/project.js +11 -9
  316. package/dist/models/project.js.map +1 -1
  317. package/dist/models/runtime-state.d.ts +120 -0
  318. package/dist/models/runtime-state.d.ts.map +1 -1
  319. package/dist/models/runtime-state.js +12 -0
  320. package/dist/models/runtime-state.js.map +1 -1
  321. package/dist/pipeline/agent.d.ts.map +1 -1
  322. package/dist/pipeline/agent.js +59 -10
  323. package/dist/pipeline/agent.js.map +1 -1
  324. package/dist/pipeline/chapter-review-cycle.d.ts +11 -4
  325. package/dist/pipeline/chapter-review-cycle.d.ts.map +1 -1
  326. package/dist/pipeline/chapter-review-cycle.js +156 -73
  327. package/dist/pipeline/chapter-review-cycle.js.map +1 -1
  328. package/dist/pipeline/chapter-truth-validation.d.ts +2 -1
  329. package/dist/pipeline/chapter-truth-validation.d.ts.map +1 -1
  330. package/dist/pipeline/chapter-truth-validation.js +1 -1
  331. package/dist/pipeline/chapter-truth-validation.js.map +1 -1
  332. package/dist/pipeline/persisted-governed-plan.d.ts +1 -0
  333. package/dist/pipeline/persisted-governed-plan.d.ts.map +1 -1
  334. package/dist/pipeline/persisted-governed-plan.js +181 -66
  335. package/dist/pipeline/persisted-governed-plan.js.map +1 -1
  336. package/dist/pipeline/runner.d.ts +20 -17
  337. package/dist/pipeline/runner.d.ts.map +1 -1
  338. package/dist/pipeline/runner.js +359 -84
  339. package/dist/pipeline/runner.js.map +1 -1
  340. package/dist/state/manager.d.ts.map +1 -1
  341. package/dist/state/manager.js +44 -4
  342. package/dist/state/manager.js.map +1 -1
  343. package/dist/state/memory-db.d.ts +6 -0
  344. package/dist/state/memory-db.d.ts.map +1 -1
  345. package/dist/state/memory-db.js.map +1 -1
  346. package/dist/state/runtime-state-store.d.ts.map +1 -1
  347. package/dist/state/runtime-state-store.js +4 -1
  348. package/dist/state/runtime-state-store.js.map +1 -1
  349. package/dist/state/state-projections.d.ts +3 -1
  350. package/dist/state/state-projections.d.ts.map +1 -1
  351. package/dist/state/state-projections.js +58 -15
  352. package/dist/state/state-projections.js.map +1 -1
  353. package/dist/utils/book-id.d.ts +4 -0
  354. package/dist/utils/book-id.d.ts.map +1 -0
  355. package/dist/utils/book-id.js +27 -0
  356. package/dist/utils/book-id.js.map +1 -0
  357. package/dist/utils/chapter-cadence.js +1 -0
  358. package/dist/utils/chapter-cadence.js.map +1 -1
  359. package/dist/utils/chapter-memo-parser.d.ts +19 -0
  360. package/dist/utils/chapter-memo-parser.d.ts.map +1 -0
  361. package/dist/utils/chapter-memo-parser.js +114 -0
  362. package/dist/utils/chapter-memo-parser.js.map +1 -0
  363. package/dist/utils/config-loader.d.ts +7 -11
  364. package/dist/utils/config-loader.d.ts.map +1 -1
  365. package/dist/utils/config-loader.js +13 -253
  366. package/dist/utils/config-loader.js.map +1 -1
  367. package/dist/utils/context-assembly.d.ts +24 -0
  368. package/dist/utils/context-assembly.d.ts.map +1 -0
  369. package/dist/utils/context-assembly.js +77 -0
  370. package/dist/utils/context-assembly.js.map +1 -0
  371. package/dist/utils/effective-llm-config.d.ts +34 -0
  372. package/dist/utils/effective-llm-config.d.ts.map +1 -0
  373. package/dist/utils/effective-llm-config.js +417 -0
  374. package/dist/utils/effective-llm-config.js.map +1 -0
  375. package/dist/utils/governed-working-set.js +1 -1
  376. package/dist/utils/governed-working-set.js.map +1 -1
  377. package/dist/utils/hook-ledger-validator.d.ts +82 -0
  378. package/dist/utils/hook-ledger-validator.d.ts.map +1 -0
  379. package/dist/utils/hook-ledger-validator.js +225 -0
  380. package/dist/utils/hook-ledger-validator.js.map +1 -0
  381. package/dist/utils/hook-lifecycle.d.ts +5 -0
  382. package/dist/utils/hook-lifecycle.d.ts.map +1 -1
  383. package/dist/utils/hook-lifecycle.js +32 -0
  384. package/dist/utils/hook-lifecycle.js.map +1 -1
  385. package/dist/utils/hook-policy.d.ts +0 -17
  386. package/dist/utils/hook-policy.d.ts.map +1 -1
  387. package/dist/utils/hook-policy.js +0 -30
  388. package/dist/utils/hook-policy.js.map +1 -1
  389. package/dist/utils/hook-promotion.d.ts +83 -0
  390. package/dist/utils/hook-promotion.d.ts.map +1 -0
  391. package/dist/utils/hook-promotion.js +241 -0
  392. package/dist/utils/hook-promotion.js.map +1 -0
  393. package/dist/utils/hook-stale-detection.d.ts +51 -0
  394. package/dist/utils/hook-stale-detection.d.ts.map +1 -0
  395. package/dist/utils/hook-stale-detection.js +125 -0
  396. package/dist/utils/hook-stale-detection.js.map +1 -0
  397. package/dist/utils/llm-endpoint-auth.d.ts +5 -0
  398. package/dist/utils/llm-endpoint-auth.d.ts.map +1 -0
  399. package/dist/utils/llm-endpoint-auth.js +36 -0
  400. package/dist/utils/llm-endpoint-auth.js.map +1 -0
  401. package/dist/utils/llm-env.d.ts +14 -0
  402. package/dist/utils/llm-env.d.ts.map +1 -0
  403. package/dist/utils/llm-env.js +53 -0
  404. package/dist/utils/llm-env.js.map +1 -0
  405. package/dist/utils/memory-retrieval.d.ts +23 -1
  406. package/dist/utils/memory-retrieval.d.ts.map +1 -1
  407. package/dist/utils/memory-retrieval.js +45 -2
  408. package/dist/utils/memory-retrieval.js.map +1 -1
  409. package/dist/utils/narrative-control.d.ts +16 -0
  410. package/dist/utils/narrative-control.d.ts.map +1 -0
  411. package/dist/utils/narrative-control.js +131 -0
  412. package/dist/utils/narrative-control.js.map +1 -0
  413. package/dist/utils/path-safety.d.ts +2 -0
  414. package/dist/utils/path-safety.d.ts.map +1 -0
  415. package/dist/utils/path-safety.js +11 -0
  416. package/dist/utils/path-safety.js.map +1 -0
  417. package/dist/utils/planning-materials.d.ts +35 -0
  418. package/dist/utils/planning-materials.d.ts.map +1 -0
  419. package/dist/utils/planning-materials.js +123 -0
  420. package/dist/utils/planning-materials.js.map +1 -0
  421. package/dist/utils/proxy-fetch.d.ts +9 -0
  422. package/dist/utils/proxy-fetch.d.ts.map +1 -0
  423. package/dist/utils/proxy-fetch.js +31 -0
  424. package/dist/utils/proxy-fetch.js.map +1 -0
  425. package/dist/utils/runtime-writer.d.ts +14 -0
  426. package/dist/utils/runtime-writer.d.ts.map +1 -0
  427. package/dist/utils/runtime-writer.js +21 -0
  428. package/dist/utils/runtime-writer.js.map +1 -0
  429. package/dist/utils/spot-fix-patches.d.ts +7 -0
  430. package/dist/utils/spot-fix-patches.d.ts.map +1 -1
  431. package/dist/utils/spot-fix-patches.js +109 -36
  432. package/dist/utils/spot-fix-patches.js.map +1 -1
  433. package/dist/utils/story-markdown.d.ts.map +1 -1
  434. package/dist/utils/story-markdown.js +104 -6
  435. package/dist/utils/story-markdown.js.map +1 -1
  436. package/dist/utils/writing-methodology.d.ts +10 -0
  437. package/dist/utils/writing-methodology.d.ts.map +1 -0
  438. package/dist/utils/writing-methodology.js +163 -0
  439. package/dist/utils/writing-methodology.js.map +1 -0
  440. package/package.json +3 -2
  441. package/dist/utils/hook-agenda.d.ts +0 -21
  442. package/dist/utils/hook-agenda.d.ts.map +0 -1
  443. package/dist/utils/hook-agenda.js +0 -95
  444. package/dist/utils/hook-agenda.js.map +0 -1
@@ -68,6 +68,13 @@ export function buildAgentSystemPrompt(bookId, language) {
68
68
  return isZh
69
69
  ? `你是 InkOS 写作助手,当前正在处理书籍「${bookId}」。
70
70
 
71
+ ## 权限边界
72
+
73
+ - 当前书由 session 绑定为「${bookId}」。业务工具不要传其他 bookId;省略 bookId 时默认使用当前书。
74
+ - sub_agent、write_truth_file、rename_entity、patch_chapter_text 是当前书业务工具,只能服务当前书。
75
+ - raw file tools(read/edit/write/grep/ls)是高权限兜底工具,允许项目级文件操作;只有在业务工具无法表达目标、且你已经明确路径和影响范围时才使用。
76
+ - 不要调用 architect 创建新书;如果用户想新建书,请让用户回到首页开启新建流程。
77
+
71
78
  ## 可用工具
72
79
 
73
80
  - **sub_agent** — 委托子智能体执行重操作:
@@ -80,7 +87,7 @@ export function buildAgentSystemPrompt(bookId, language) {
80
87
  - 用户说"写下一章"、"继续写"、"再来一章" → **writer**(不要用 reviser,更不要不带 chapterNumber 调 reviser)
81
88
  - 用户没说章节号、只说"改一下刚才那章" → **reviser** + chapterNumber=最新已写章节号
82
89
  - **read** — 读取书籍的设定文件或章节内容
83
- - **write_truth_file** — 整文件覆盖真相文件(story_biblevolume_outlinebook_rules、current_focus 等)
90
+ - **write_truth_file** — 整文件覆盖真相文件。优先使用 Phase 5 canonical 路径:outline/story_frame.mdoutline/volume_map.mdroles/major/<name>.mdroles/minor/<name>.md;兼容 current_focus.md、author_intent.md、current_state.md 等平铺文件。
84
91
  - **rename_entity** — 统一改角色/实体名
85
92
  - **patch_chapter_text** — 对已有章节做局部定点修补
86
93
  - **edit** — 在设定文件里做精确字符串替换(章节正文请用 patch_chapter_text)
@@ -96,7 +103,7 @@ export function buildAgentSystemPrompt(bookId, language) {
96
103
  - 用户要求重写/精修已有章节 → sub_agent(agent="reviser", chapterNumber=N, mode=...)
97
104
  - 用户要求角色或实体改名 → 用 rename_entity
98
105
  - 用户要求对某一章做局部小修 → 用 patch_chapter_text
99
- - 当你已经明确目标文件和内容时,也可以直接使用 edit / write
106
+ - edit / write 是高权限兜底工具;不要用它们替代 write_truth_file、patch_chapter_text 或 sub_agent
100
107
  - 其他情况 → 直接对话回答
101
108
  - **注意:不要调用 architect,当前已有书籍,不需要建书**
102
109
  - **不要在回复中添加表情符号**
@@ -106,12 +113,7 @@ export function buildAgentSystemPrompt(bookId, language) {
106
113
  章节索引文件位于 \`books/${bookId}/chapters/index.json\`,记录所有章节的元信息(编号、标题、状态、字数等)。
107
114
  章节文件位于 \`books/${bookId}/chapters/\`,命名格式为 \`0001_标题.md\`。
108
115
 
109
- 如果你发现索引和磁盘文件不一致(例如侧边栏章节数和实际不符),请主动修复:
110
- 1. 用 \`ls\` 列出 \`books/${bookId}/chapters/\` 下所有 \`.md\` 文件
111
- 2. 用 \`read\` 读取当前 \`index.json\`
112
- 3. 对比两者,找出磁盘上有但索引中缺失的章节
113
- 4. 同一章号有多个文件时(重写),取文件名排序最后的那个(最新版本)
114
- 5. 用 \`edit\` 更新 \`index.json\`,补上缺失条目(status 设为 "ready-for-review",wordCount 通过读取文件内容统计中文字符数)
116
+ 如果你发现索引和磁盘文件不一致(例如侧边栏章节数和实际不符),先说明不一致和建议修复方式;只有用户明确要求修复时,才使用 raw file tools 修改当前书的 index.json。
115
117
 
116
118
  ## 输出格式
117
119
 
@@ -120,6 +122,13 @@ export function buildAgentSystemPrompt(bookId, language) {
120
122
  - 回复简洁,不说废话`
121
123
  : `You are the InkOS writing assistant, working on book "${bookId}".
122
124
 
125
+ ## Permission Boundary
126
+
127
+ - The active book is session-bound to "${bookId}". Do not pass another bookId to business tools; omit bookId to use the active book.
128
+ - sub_agent, write_truth_file, rename_entity, and patch_chapter_text are active-book business tools.
129
+ - raw file tools (read/edit/write/grep/ls) are high-privilege fallback tools for project-level file operations. Use them only when business tools cannot express the task and the path/scope is clear.
130
+ - Do NOT call architect to create a new book from this session; ask the user to return home and start a new-book flow.
131
+
123
132
  ## Available Tools
124
133
 
125
134
  - **sub_agent** — Delegate to sub-agents:
@@ -132,7 +141,7 @@ export function buildAgentSystemPrompt(bookId, language) {
132
141
  - User says "write the next chapter" / "continue" / "one more chapter" → **writer** (never reviser, and never call reviser without chapterNumber)
133
142
  - User refers to "that chapter we just did" without a number → **reviser** with chapterNumber=latest-written
134
143
  - **read** — Read truth files or chapter content
135
- - **write_truth_file** — Replace a canonical truth file in story/
144
+ - **write_truth_file** — Replace a canonical truth file. Prefer Phase 5 canonical paths: outline/story_frame.md, outline/volume_map.md, roles/major/<name>.md, roles/minor/<name>.md; flat files such as current_focus.md, author_intent.md, and current_state.md remain supported.
136
145
  - **rename_entity** — Rename a character or entity across the book
137
146
  - **patch_chapter_text** — Apply a local deterministic patch to a chapter
138
147
  - **edit** — Exact string replacement on setting files (use patch_chapter_text for chapter text)
@@ -148,7 +157,7 @@ export function buildAgentSystemPrompt(bookId, language) {
148
157
  - For rewrite/polish/rework of an existing chapter → sub_agent(agent="reviser", chapterNumber=N, mode=...)
149
158
  - Use rename_entity for character/entity renames
150
159
  - Use patch_chapter_text for local chapter fixes
151
- - Use edit / write directly when you already know the exact target file and replacement content
160
+ - edit / write are high-privilege fallback tools; do not use them instead of write_truth_file, patch_chapter_text, or sub_agent
152
161
  - Chat directly for other questions
153
162
  - **Do NOT call architect — a book already exists**
154
163
  - **Do NOT use emoji in your responses**
@@ -158,12 +167,7 @@ export function buildAgentSystemPrompt(bookId, language) {
158
167
  The chapter index is at \`books/${bookId}/chapters/index.json\` (metadata: number, title, status, wordCount, etc.).
159
168
  Chapter files are at \`books/${bookId}/chapters/\`, named \`0001_Title.md\`.
160
169
 
161
- If you notice the index is inconsistent with the actual files on disk (e.g. sidebar shows fewer chapters than exist), fix it proactively:
162
- 1. \`ls\` the chapters directory to list all \`.md\` files
163
- 2. \`read\` the current \`index.json\`
164
- 3. Compare and find chapters on disk but missing from the index
165
- 4. When multiple files exist for the same chapter number (rewrites), use the last one alphabetically (latest version)
166
- 5. \`edit\` the \`index.json\` to add missing entries (status: "ready-for-review", wordCount: count Chinese characters from the file content)
170
+ If you notice the index is inconsistent with the actual files on disk (e.g. sidebar shows fewer chapters than exist), explain the inconsistency and the suggested repair. Only modify the active book's index.json with raw file tools after the user explicitly asks for that repair.
167
171
 
168
172
  ## Output Format
169
173
 
@@ -1 +1 @@
1
- {"version":3,"file":"agent-system-prompt.js","sourceRoot":"","sources":["../../src/agent/agent-system-prompt.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,sBAAsB,CAAC,MAAqB,EAAE,QAAgB;IAC5E,MAAM,IAAI,GAAG,QAAQ,KAAK,IAAI,CAAC;IAE/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI;YACT,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA8BI;YACN,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA8BiB,CAAC;IACxB,CAAC;IAED,OAAO,IAAI;QACT,CAAC,CAAC,0BAA0B,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAqCnB,MAAM;iBACR,MAAM;;;yBAGE,MAAM;;;;;;;;;;YAUnB;QACR,CAAC,CAAC,yDAAyD,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAqCnC,MAAM;+BACT,MAAM;;;;;;;;;;;;;yBAaZ,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"agent-system-prompt.js","sourceRoot":"","sources":["../../src/agent/agent-system-prompt.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,sBAAsB,CAAC,MAAqB,EAAE,QAAgB;IAC5E,MAAM,IAAI,GAAG,QAAQ,KAAK,IAAI,CAAC;IAE/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI;YACT,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA8BI;YACN,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA8BiB,CAAC;IACxB,CAAC;IAED,OAAO,IAAI;QACT,CAAC,CAAC,0BAA0B,MAAM;;;;qBAIjB,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAwCR,MAAM;iBACR,MAAM;;;;;;;;YAQX;QACR,CAAC,CAAC,yDAAyD,MAAM;;;;yCAI5B,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAwCb,MAAM;+BACT,MAAM;;;;;;;;yBAQZ,CAAC;AAC1B,CAAC"}
@@ -40,7 +40,10 @@ export declare function createPatchChapterTextTool(pipeline: PipelineRunner, pro
40
40
  declare const ReadParams: import("@sinclair/typebox").TObject<{
41
41
  path: import("@sinclair/typebox").TString;
42
42
  }>;
43
- export declare function createReadTool(projectRoot: string): AgentTool<typeof ReadParams>;
43
+ export interface ReadToolOptions {
44
+ readonly allowSystemPaths?: boolean;
45
+ }
46
+ export declare function createReadTool(projectRoot: string, options?: ReadToolOptions): AgentTool<typeof ReadParams>;
44
47
  declare const EditParams: import("@sinclair/typebox").TObject<{
45
48
  path: import("@sinclair/typebox").TString;
46
49
  old_string: import("@sinclair/typebox").TString;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-tools.d.ts","sourceRoot":"","sources":["../../src/agent/agent-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAA4C,MAAM,6BAA6B,CAAC;AACvG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAiD5D,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;EA+ClB,CAAC;AAWH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,cAAc,EACxB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,WAAW,CAAC,EAAE,MAAM,GACnB,SAAS,CAAC,OAAO,cAAc,CAAC,CA8HlC;AAMD,QAAA,MAAM,oBAAoB;;;;EAIxB,CAAC;AAEH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,SAAS,CAAC,OAAO,oBAAoB,CAAC,CAaxC;AAED,QAAA,MAAM,kBAAkB;;;;EAItB,CAAC;AAEH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,SAAS,CAAC,OAAO,kBAAkB,CAAC,CAgBtC;AAED,QAAA,MAAM,sBAAsB;;;;;EAK1B,CAAC;AAEH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,SAAS,CAAC,OAAO,sBAAsB,CAAC,CAqB1C;AAMD,QAAA,MAAM,UAAU;;EAEd,CAAC;AAEH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CAwBhF;AAMD,QAAA,MAAM,UAAU;;;;EAId,CAAC;AAEH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CAkChF;AAMD,QAAA,MAAM,eAAe;;;EAGnB,CAAC;AAEH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,eAAe,CAAC,CA4B1F;AAMD,QAAA,MAAM,UAAU;;;EAGd,CAAC;AAEH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CA8DhF;AAMD,QAAA,MAAM,QAAQ;;;EAKZ,CAAC;AAEH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,QAAQ,CAAC,CAwC5E"}
1
+ {"version":3,"file":"agent-tools.d.ts","sourceRoot":"","sources":["../../src/agent/agent-tools.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAA4C,MAAM,6BAA6B,CAAC;AACvG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAqD5D,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;EAiDlB,CAAC;AAEH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,cAAc,EACxB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,WAAW,CAAC,EAAE,MAAM,GACnB,SAAS,CAAC,OAAO,cAAc,CAAC,CAgJlC;AAMD,QAAA,MAAM,oBAAoB;;;;EAIxB,CAAC;AAEH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,SAAS,CAAC,OAAO,oBAAoB,CAAC,CAkBxC;AAED,QAAA,MAAM,kBAAkB;;;;EAItB,CAAC;AAEH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,SAAS,CAAC,OAAO,kBAAkB,CAAC,CAgBtC;AAED,QAAA,MAAM,sBAAsB;;;;;EAK1B,CAAC;AAEH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GAAG,IAAI,GAC1B,SAAS,CAAC,OAAO,sBAAsB,CAAC,CAqB1C;AAMD,QAAA,MAAM,UAAU;;EAEd,CAAC;AAEH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AASD,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,eAAoB,GAC5B,SAAS,CAAC,OAAO,UAAU,CAAC,CA2B9B;AAMD,QAAA,MAAM,UAAU;;;;EAId,CAAC;AAEH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CAkChF;AAMD,QAAA,MAAM,eAAe;;;EAGnB,CAAC;AAEH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,eAAe,CAAC,CA4B1F;AAMD,QAAA,MAAM,UAAU;;;EAGd,CAAC;AAEH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,UAAU,CAAC,CA8DhF;AAMD,QAAA,MAAM,QAAQ;;;EAKZ,CAAC;AAEH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,QAAQ,CAAC,CAwC5E"}
@@ -1,32 +1,31 @@
1
1
  import { Type } from "@mariozechner/pi-ai";
2
2
  import { readFile, writeFile, readdir, stat } from "node:fs/promises";
3
- import { join, normalize, resolve } from "node:path";
3
+ import { isAbsolute, join, resolve } from "node:path";
4
4
  import { StateManager } from "../state/manager.js";
5
- import { createInteractionToolsFromDeps } from "../interaction/project-tools.js";
5
+ import { assertSafeTruthFileName, createInteractionToolsFromDeps } from "../interaction/project-tools.js";
6
6
  import { writeExportArtifact } from "../interaction/export-artifact.js";
7
- // ---------------------------------------------------------------------------
8
- // Helpers
9
- // ---------------------------------------------------------------------------
10
- function textResult(text) {
11
- return { content: [{ type: "text", text }], details: undefined };
7
+ import { assertSafeBookId, deriveBookIdFromTitle } from "../utils/book-id.js";
8
+ import { safeChildPath } from "../utils/path-safety.js";
9
+ function textResult(text, details) {
10
+ return { content: [{ type: "text", text }], details: details };
12
11
  }
13
12
  /**
14
13
  * Resolve a user-supplied relative path against the books root and guard
15
14
  * against path-traversal (../ etc.).
16
15
  */
17
16
  function safeBooksPath(booksRoot, relativePath) {
18
- const resolved = resolve(booksRoot, normalize(relativePath));
19
- if (!resolved.startsWith(booksRoot)) {
20
- throw new Error(`Path traversal blocked: ${relativePath}`);
21
- }
22
- return resolved;
17
+ return safeChildPath(booksRoot, relativePath);
23
18
  }
24
19
  function resolveToolBookId(toolName, paramsBookId, activeBookId) {
25
20
  const resolvedBookId = paramsBookId ?? activeBookId ?? undefined;
26
21
  if (!resolvedBookId) {
27
22
  throw new Error(`${toolName} requires bookId when there is no active book.`);
28
23
  }
29
- return resolvedBookId;
24
+ const safeBookId = assertSafeBookId(resolvedBookId, `${toolName}.bookId`);
25
+ if (paramsBookId && activeBookId && safeBookId !== activeBookId) {
26
+ throw new Error(`${toolName}.bookId must match the active book.`);
27
+ }
28
+ return safeBookId;
30
29
  }
31
30
  function createDeterministicInteractionTools(pipeline, projectRoot) {
32
31
  const state = new StateManager(projectRoot);
@@ -44,7 +43,9 @@ const SubAgentParams = Type.Object({
44
43
  Type.Literal("exporter"),
45
44
  ]),
46
45
  instruction: Type.String({ description: "Natural language instruction for the sub-agent" }),
47
- bookId: Type.Optional(Type.String({ description: "Book ID — required for all agents except architect" })),
46
+ bookId: Type.Optional(Type.String({
47
+ description: "Optional book ID. In active-book sessions, omit it to use the current active book; if provided, it must match the current active book. For architect creation, this optionally sets the new book ID.",
48
+ })),
48
49
  chapterNumber: Type.Optional(Type.Number({ description: "auditor/reviser: target chapter number. Omit to use the latest chapter." })),
49
50
  // -- architect params --
50
51
  title: Type.Optional(Type.String({ description: "architect only: explicit book title. Required when creating a book." })),
@@ -62,7 +63,7 @@ const SubAgentParams = Type.Object({
62
63
  targetChapters: Type.Optional(Type.Number({ description: "architect only: total chapter count. Default: 200" })),
63
64
  chapterWordCount: Type.Optional(Type.Number({ description: "architect/writer: words per chapter. Default: 3000" })),
64
65
  revise: Type.Optional(Type.Boolean({
65
- description: "architect only: true 表示在已有书上重新生成架构稿(比如把旧的条目式格式升级成段落式架构稿 + 一人一卡的角色目录、或者按 feedback 调整某些细节),而不是新建书籍。需要同时提供 bookId",
66
+ description: "architect only: true 表示在当前 active book 上重新生成架构稿,而不是新建书籍。no-book creation sessions cannot revise an existing book.",
66
67
  })),
67
68
  feedback: Type.Optional(Type.String({
68
69
  description: "architect only: revise 模式下的调整要求。举例:把架构稿从条目式升级成段落式架构稿、某个角色设定需要重新设计、主线冲突表达太弱需要加强等。如果是架构稿评审未通过要求重写的场景,把评审意见的 overallFeedback 原样传入即可",
@@ -83,14 +84,6 @@ const SubAgentParams = Type.Object({
83
84
  ], { description: "exporter only: export format. Default: txt" })),
84
85
  approvedOnly: Type.Optional(Type.Boolean({ description: "exporter only: export only approved chapters. Default: false" })),
85
86
  });
86
- function deriveBookIdFromTitle(title) {
87
- return title
88
- .toLowerCase()
89
- .replace(/[^a-z0-9\u4e00-\u9fff]/g, "-")
90
- .replace(/-+/g, "-")
91
- .replace(/^-+|-+$/g, "")
92
- .slice(0, 30);
93
- }
94
87
  export function createSubAgentTool(pipeline, activeBookId, projectRoot) {
95
88
  return {
96
89
  name: "sub_agent",
@@ -105,25 +98,31 @@ export function createSubAgentTool(pipeline, activeBookId, projectRoot) {
105
98
  onUpdate?.(textResult(msg));
106
99
  };
107
100
  try {
101
+ if (!activeBookId && agent !== "architect") {
102
+ return textResult("No active book. Only the architect agent can create a book from this session.");
103
+ }
104
+ if (activeBookId && agent === "architect" && !revise) {
105
+ return textResult("当前已有书籍,不需要建书。如果你想创建新书,请先回到首页。");
106
+ }
108
107
  switch (agent) {
109
108
  case "architect": {
110
109
  if (revise) {
111
- if (!bookId) {
112
- return textResult("Error: architect revise 模式需要 bookId,用于定位要重写的书。");
110
+ if (!activeBookId) {
111
+ return textResult("Open the book first before revising its foundation.");
113
112
  }
114
- progress(`Revising foundation for "${bookId}"...`);
115
- await pipeline.reviseFoundation(bookId, feedback ?? instruction);
116
- progress(`Foundation revised for "${bookId}".`);
117
- return textResult(`Book "${bookId}" 架构稿已按要求重写。原书的条目式架构稿已备份到 story/.backup-phase4-<时间戳>/。`);
118
- }
119
- if (activeBookId) {
120
- return textResult("当前已有书籍,不需要建书。如果你想创建新书,请先回到首页。");
113
+ const targetBookId = resolveToolBookId("architect", bookId, activeBookId);
114
+ progress(`Revising foundation for "${targetBookId}"...`);
115
+ await pipeline.reviseFoundation(targetBookId, feedback ?? instruction);
116
+ progress(`Foundation revised for "${targetBookId}".`);
117
+ return textResult(`Book "${targetBookId}" 架构稿已按要求重写。原书的条目式架构稿已备份到 story/.backup-phase4-<时间戳>/。`);
121
118
  }
122
119
  const resolvedTitle = title?.trim();
123
120
  if (!resolvedTitle) {
124
121
  return textResult('Error: title is required for the architect agent.');
125
122
  }
126
- const id = bookId || deriveBookIdFromTitle(resolvedTitle) || `book-${Date.now().toString(36)}`;
123
+ const id = bookId
124
+ ? assertSafeBookId(bookId, "architect.bookId")
125
+ : deriveBookIdFromTitle(resolvedTitle) || `book-${Date.now().toString(36)}`;
127
126
  const now = new Date().toISOString();
128
127
  progress(`Starting architect for book "${id}"...`);
129
128
  await pipeline.initBook({
@@ -139,23 +138,28 @@ export function createSubAgentTool(pipeline, activeBookId, projectRoot) {
139
138
  updatedAt: now,
140
139
  }, { externalContext: instruction });
141
140
  progress(`Architect finished — book "${id}" foundation created.`);
142
- return textResult(`Book "${resolvedTitle}" (${id}) initialised successfully. Foundation files are ready.`);
141
+ return textResult(`Book "${resolvedTitle}" (${id}) initialised successfully. Foundation files are ready.`, { kind: "book_created", bookId: id, title: resolvedTitle });
143
142
  }
144
143
  case "writer": {
145
- if (!bookId)
146
- return textResult("Error: bookId is required for the writer agent.");
147
- progress(`Writing next chapter for "${bookId}"...`);
148
- const result = await pipeline.writeNextChapter(bookId, chapterWordCount);
149
- progress(`Writer finished chapter for "${bookId}".`);
150
- return textResult(`Chapter written for "${bookId}". ` +
151
- `Word count: ${result.wordCount ?? "unknown"}.`);
144
+ const targetBookId = resolveToolBookId("writer", bookId, activeBookId);
145
+ progress(`Writing next chapter for "${targetBookId}"...`);
146
+ const result = await pipeline.writeNextChapter(targetBookId, chapterWordCount);
147
+ progress(`Writer finished chapter for "${targetBookId}".`);
148
+ return textResult(`Chapter written for "${targetBookId}". ` +
149
+ `Word count: ${result.wordCount ?? "unknown"}.`, {
150
+ kind: "chapter_written",
151
+ bookId: targetBookId,
152
+ chapterNumber: result.chapterNumber,
153
+ title: result.title,
154
+ wordCount: result.wordCount,
155
+ status: result.status,
156
+ });
152
157
  }
153
158
  case "auditor": {
154
- if (!bookId)
155
- return textResult("Error: bookId is required for the auditor agent.");
156
- progress(`Auditing chapter ${chapterNumber ?? "latest"} for "${bookId}"...`);
157
- const audit = await pipeline.auditDraft(bookId, chapterNumber);
158
- progress(`Audit complete for "${bookId}".`);
159
+ const targetBookId = resolveToolBookId("auditor", bookId, activeBookId);
160
+ progress(`Auditing chapter ${chapterNumber ?? "latest"} for "${targetBookId}"...`);
161
+ const audit = await pipeline.auditDraft(targetBookId, chapterNumber);
162
+ progress(`Audit complete for "${targetBookId}".`);
159
163
  const issueLines = (audit.issues ?? [])
160
164
  .map((i) => `[${i.severity}] ${i.description}`)
161
165
  .join("\n");
@@ -163,17 +167,15 @@ export function createSubAgentTool(pipeline, activeBookId, projectRoot) {
163
167
  (issueLines ? `\n${issueLines}` : ""));
164
168
  }
165
169
  case "reviser": {
166
- if (!bookId)
167
- return textResult("Error: bookId is required for the reviser agent.");
170
+ const targetBookId = resolveToolBookId("reviser", bookId, activeBookId);
168
171
  const resolvedMode = mode ?? "spot-fix";
169
- progress(`Revising "${bookId}" chapter ${chapterNumber ?? "latest"} in ${resolvedMode} mode...`);
170
- await pipeline.reviseDraft(bookId, chapterNumber, resolvedMode);
171
- progress(`Revision complete for "${bookId}".`);
172
- return textResult(`Revision (${resolvedMode}) complete for "${bookId}" chapter ${chapterNumber ?? "latest"}.`);
172
+ progress(`Revising "${targetBookId}" chapter ${chapterNumber ?? "latest"} in ${resolvedMode} mode...`);
173
+ await pipeline.reviseDraft(targetBookId, chapterNumber, resolvedMode);
174
+ progress(`Revision complete for "${targetBookId}".`);
175
+ return textResult(`Revision (${resolvedMode}) complete for "${targetBookId}" chapter ${chapterNumber ?? "latest"}.`);
173
176
  }
174
177
  case "exporter": {
175
- if (!bookId)
176
- return textResult("Error: bookId is required for the exporter agent.");
178
+ const targetBookId = resolveToolBookId("exporter", bookId, activeBookId);
177
179
  if (!projectRoot)
178
180
  return textResult("Error: exporter requires projectRoot.");
179
181
  const inferredFormat = format ?? (/epub/i.test(instruction)
@@ -183,11 +185,11 @@ export function createSubAgentTool(pipeline, activeBookId, projectRoot) {
183
185
  : "txt");
184
186
  const exportApprovedOnly = approvedOnly ?? /approved|已通过|通过章节/.test(instruction);
185
187
  const state = new StateManager(projectRoot);
186
- const result = await writeExportArtifact(state, bookId, {
188
+ const result = await writeExportArtifact(state, targetBookId, {
187
189
  format: inferredFormat,
188
190
  approvedOnly: exportApprovedOnly,
189
191
  });
190
- return textResult(`Exported "${bookId}": ${result.chaptersExported} chapters, ${result.totalWords} words → ${result.outputPath}`);
192
+ return textResult(`Exported "${targetBookId}": ${result.chaptersExported} chapters, ${result.totalWords} words → ${result.outputPath}`);
191
193
  }
192
194
  default:
193
195
  return textResult(`Unknown agent: ${agent}`);
@@ -195,7 +197,7 @@ export function createSubAgentTool(pipeline, activeBookId, projectRoot) {
195
197
  }
196
198
  catch (err) {
197
199
  console.error(`[sub_agent] "${agent}" failed:`, err);
198
- return textResult(`Sub-agent "${agent}" failed: ${err?.message ?? String(err)}`);
200
+ throw err;
199
201
  }
200
202
  },
201
203
  };
@@ -216,9 +218,15 @@ export function createWriteTruthFileTool(pipeline, projectRoot, activeBookId) {
216
218
  label: "Write Truth File",
217
219
  parameters: WriteTruthFileParams,
218
220
  async execute(_toolCallId, params) {
219
- const bookId = resolveToolBookId("write_truth_file", params.bookId, activeBookId);
220
- await tools.writeTruthFile(bookId, params.fileName, params.content);
221
- return textResult(`Updated "${params.fileName}" for "${bookId}".`);
221
+ try {
222
+ const bookId = resolveToolBookId("write_truth_file", params.bookId, activeBookId);
223
+ const fileName = assertSafeTruthFileName(params.fileName);
224
+ await tools.writeTruthFile(bookId, fileName, params.content);
225
+ return textResult(`Updated "${fileName}" for "${bookId}".`);
226
+ }
227
+ catch (err) {
228
+ return textResult(`write_truth_file failed: ${err?.message ?? String(err)}`);
229
+ }
222
230
  },
223
231
  };
224
232
  }
@@ -267,18 +275,27 @@ export function createPatchChapterTextTool(pipeline, projectRoot, activeBookId)
267
275
  // 3. Read Tool
268
276
  // ---------------------------------------------------------------------------
269
277
  const ReadParams = Type.Object({
270
- path: Type.String({ description: "File path relative to books/, e.g. {bookId}/story/story_bible.md" }),
278
+ path: Type.String({ description: "File path relative to books/, or an absolute path when system path reading is enabled." }),
271
279
  });
272
- export function createReadTool(projectRoot) {
280
+ function resolveReadPath(booksRoot, requestedPath, options) {
281
+ if (options.allowSystemPaths && isAbsolute(requestedPath)) {
282
+ return resolve(requestedPath);
283
+ }
284
+ return safeBooksPath(booksRoot, requestedPath);
285
+ }
286
+ export function createReadTool(projectRoot, options = {}) {
273
287
  const booksRoot = join(projectRoot, "books");
288
+ const description = options.allowSystemPaths
289
+ ? "Read a file. Relative paths resolve under books/; absolute paths read from the system filesystem."
290
+ : "Read a file from the book directory. Path is relative to books/.";
274
291
  return {
275
292
  name: "read",
276
- description: "Read a file from the book directory. Path is relative to books/.",
293
+ description,
277
294
  label: "Read File",
278
295
  parameters: ReadParams,
279
296
  async execute(_toolCallId, params) {
280
297
  try {
281
- const filePath = safeBooksPath(booksRoot, params.path);
298
+ const filePath = resolveReadPath(booksRoot, params.path, options);
282
299
  let content = await readFile(filePath, "utf-8");
283
300
  if (content.length > 10_000) {
284
301
  content = content.slice(0, 10_000) + "\n\n... [truncated at 10 000 chars]";
@@ -1 +1 @@
1
- {"version":3,"file":"agent-tools.js","sourceRoot":"","sources":["../../src/agent/agent-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-tools.js","sourceRoot":"","sources":["../../src/agent/agent-tools.ts"],"names":[],"mappings":"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"}
@@ -30,40 +30,38 @@ export declare class ArchitectAgent extends BaseAgent {
30
30
  private buildRevisePrompt;
31
31
  private buildChineseFoundationPrompt;
32
32
  private buildEnglishFoundationPrompt;
33
+ private parseSections;
33
34
  /**
34
- * Write architect foundation output to disk.
35
- *
36
- * @param mode
37
- * - "init"(默认):首次建书。写架构稿 + 初始化所有运行时状态文件
38
- * (current_state / pending_hooks / particle_ledger / subplot_board /
39
- * emotional_arcs)为空模板。
40
- * - "revise":在已有书上重写架构稿。**只改架构稿相关文件**——outline/ /
41
- * roles/ / 4 个 legacy shim——**完全不动运行时状态文件**。这和
42
- * context-transform 注入给 LLM 的 upgrade hint 承诺"只改架构稿不动已写
43
- * 章节"一致;如果在 revise 模式下触动运行时文件,会把 consolidator 累积
44
- * 的章节状态、伏笔推进、资源账本等全部重置。
35
+ * Parse ---ROLE---...---CONTENT---... blocks from the roles section.
36
+ * Drops malformed entries silently — this is prose the LLM produced,
37
+ * not machine input.
45
38
  */
46
- writeFoundationFiles(bookDir: string, output: ArchitectOutput, numericalSystem?: boolean, language?: "zh" | "en", mode?: "init" | "revise"): Promise<void>;
39
+ private parseRoles;
40
+ private buildStoryBibleShim;
41
+ private buildCharacterMatrixShim;
42
+ private buildBookRulesShim;
43
+ writeFoundationFiles(bookDir: string, output: ArchitectOutput, _numericalSystem?: boolean, language?: "zh" | "en", mode?: "init" | "revise"): Promise<void>;
47
44
  /**
48
45
  * Reverse-engineer foundation from existing chapters.
49
- * Reads all chapters as a single text block and asks LLM to extract story_bible,
50
- * volume_outline, book_rules, current_state, and pending_hooks.
51
46
  */
52
47
  generateFoundationFromImport(book: BookConfig, chaptersText: string, externalContext?: string, reviewFeedback?: string, options?: {
53
48
  readonly importMode?: "continuation" | "series";
54
49
  }): Promise<ArchitectOutput>;
55
50
  generateFanficFoundation(book: BookConfig, fanficCanon: string, fanficMode: FanficMode, reviewFeedback?: string): Promise<ArchitectOutput>;
56
51
  private buildReviewFeedbackBlock;
57
- private parseSections;
58
- /** Parse ---ROLE---...---CONTENT--- 块。畸形块静默丢弃。 */
59
- private parseRoles;
60
- private buildStoryBibleShim;
61
- private buildCharacterMatrixShim;
62
- private buildBookRulesShim;
63
52
  private normalizeSectionName;
64
53
  private stripTrailingAssistantCoda;
65
54
  private normalizePendingHooksSection;
55
+ /**
56
+ * Parse `第N卷 (A-B章)` / `Volume N (chapters A-B)` headers from the
57
+ * architect's volume_map prose. Best-effort: missing / unparseable blocks
58
+ * return an empty list and cross-volume promotion simply never fires.
59
+ */
60
+ private parseVolumeBoundariesForPromotion;
66
61
  private parseHookChapterNumber;
62
+ private parseDependsOnCell;
63
+ private parseBooleanCell;
64
+ private parseOptionalInt;
67
65
  private hasNarrativeProgress;
68
66
  private mergeHookNotes;
69
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"architect.d.ts","sourceRoot":"","sources":["../../src/agents/architect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAOhE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAG9B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CAC/C;AAgBD,qBAAa,cAAe,SAAQ,SAAS;IAC3C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,kBAAkB,CACtB,IAAI,EAAE,UAAU,EAChB,eAAe,CAAC,EAAE,MAAM,EACxB,cAAc,CAAC,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE;YACX,UAAU,EAAE,MAAM,CAAC;YACnB,aAAa,EAAE,MAAM,CAAC;YACtB,SAAS,EAAE,MAAM,CAAC;YAClB,eAAe,EAAE,MAAM,CAAC;YACxB,YAAY,EAAE,MAAM,CAAC;SACtB,CAAC;KACH,GACA,OAAO,CAAC,eAAe,CAAC;IA8C3B,OAAO,CAAC,iBAAiB;IA8CzB,OAAO,CAAC,4BAA4B;IAwLpC,OAAO,CAAC,4BAA4B;IA6KpC;;;;;;;;;;;;OAYG;IACG,oBAAoB,CACxB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,eAAe,EACvB,eAAe,GAAE,OAAc,EAC/B,QAAQ,GAAE,IAAI,GAAG,IAAW,EAC5B,IAAI,GAAE,MAAM,GAAG,QAAiB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAkKhB;;;;OAIG;IACG,4BAA4B,CAChC,IAAI,EAAE,UAAU,EAChB,YAAY,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,EACxB,cAAc,CAAC,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,GAAG,QAAQ,CAAA;KAAE,GAC5D,OAAO,CAAC,eAAe,CAAC;IAyUrB,wBAAwB,CAC5B,IAAI,EAAE,UAAU,EAChB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,UAAU,EACtB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,eAAe,CAAC;IAoF3B,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,aAAa;IAsErB,kDAAkD;IAClD,OAAO,CAAC,UAAU;IA4BlB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,wBAAwB;IAYhC,OAAO,CAAC,kBAAkB;IAc1B,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,4BAA4B;IA0CpC,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,cAAc;CAavB"}
1
+ {"version":3,"file":"architect.d.ts","sourceRoot":"","sources":["../../src/agents/architect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAwDhE,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAqBD,MAAM,WAAW,eAAe;IAI9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAI9B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CAC/C;AAED,qBAAa,cAAe,SAAQ,SAAS;IAC3C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAEK,kBAAkB,CACtB,IAAI,EAAE,UAAU,EAChB,eAAe,CAAC,EAAE,MAAM,EACxB,cAAc,CAAC,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE;YACX,UAAU,EAAE,MAAM,CAAC;YACnB,aAAa,EAAE,MAAM,CAAC;YACtB,SAAS,EAAE,MAAM,CAAC;YAClB,eAAe,EAAE,MAAM,CAAC;YACxB,YAAY,EAAE,MAAM,CAAC;SACtB,CAAC;KACH,GACA,OAAO,CAAC,eAAe,CAAC;IAsC3B,OAAO,CAAC,iBAAiB;IAwCzB,OAAO,CAAC,4BAA4B;IA0MpC,OAAO,CAAC,4BAA4B;IAqMpC,OAAO,CAAC,aAAa;IAwFrB;;;;OAIG;IACH,OAAO,CAAC,UAAU;IA4BlB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,wBAAwB;IAYhC,OAAO,CAAC,kBAAkB;IAiBpB,oBAAoB,CACxB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,eAAe,EACvB,gBAAgB,GAAE,OAAc,EAChC,QAAQ,GAAE,IAAI,GAAG,IAAW,EAC5B,IAAI,GAAE,MAAM,GAAG,QAAiB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAuKhB;;OAEG;IACG,4BAA4B,CAChC,IAAI,EAAE,UAAU,EAChB,YAAY,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,EACxB,cAAc,CAAC,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,GAAG,QAAQ,CAAA;KAAE,GAC5D,OAAO,CAAC,eAAe,CAAC;IAyFrB,wBAAwB,CAC5B,IAAI,EAAE,UAAU,EAChB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,UAAU,EACtB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,eAAe,CAAC;IAuD3B,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,oBAAoB;IAS5B,OAAO,CAAC,0BAA0B;IAelC,OAAO,CAAC,4BAA4B;IA8EpC;;;;OAIG;IACH,OAAO,CAAC,iCAAiC;IAwBzC,OAAO,CAAC,sBAAsB;IAM9B,OAAO,CAAC,kBAAkB;IAY1B,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,cAAc;CAavB"}