kiokuko 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (822) hide show
  1. package/LICENSE +21 -0
  2. package/README.ja.md +75 -0
  3. package/README.ko.md +60 -0
  4. package/README.md +90 -0
  5. package/README.zh-CN.md +61 -0
  6. package/dist/agent-file/atomic-write.d.ts +93 -0
  7. package/dist/agent-file/atomic-write.d.ts.map +1 -0
  8. package/dist/agent-file/atomic-write.js +1026 -0
  9. package/dist/agent-file/atomic-write.js.map +1 -0
  10. package/dist/agent-file/managed-block.d.ts +23 -0
  11. package/dist/agent-file/managed-block.d.ts.map +1 -0
  12. package/dist/agent-file/managed-block.js +101 -0
  13. package/dist/agent-file/managed-block.js.map +1 -0
  14. package/dist/agent-file/render.d.ts +14 -0
  15. package/dist/agent-file/render.d.ts.map +1 -0
  16. package/dist/agent-file/render.js +55 -0
  17. package/dist/agent-file/render.js.map +1 -0
  18. package/dist/akinator/agent-task.d.ts +70 -0
  19. package/dist/akinator/agent-task.d.ts.map +1 -0
  20. package/dist/akinator/agent-task.js +657 -0
  21. package/dist/akinator/agent-task.js.map +1 -0
  22. package/dist/akinator/capabilities.d.ts +92 -0
  23. package/dist/akinator/capabilities.d.ts.map +1 -0
  24. package/dist/akinator/capabilities.js +364 -0
  25. package/dist/akinator/capabilities.js.map +1 -0
  26. package/dist/akinator/capability-binding.d.ts +11 -0
  27. package/dist/akinator/capability-binding.d.ts.map +1 -0
  28. package/dist/akinator/capability-binding.js +71 -0
  29. package/dist/akinator/capability-binding.js.map +1 -0
  30. package/dist/akinator/discovery-policy.d.ts +4 -0
  31. package/dist/akinator/discovery-policy.d.ts.map +1 -0
  32. package/dist/akinator/discovery-policy.js +4 -0
  33. package/dist/akinator/discovery-policy.js.map +1 -0
  34. package/dist/akinator/domain.d.ts +25 -0
  35. package/dist/akinator/domain.d.ts.map +1 -0
  36. package/dist/akinator/domain.js +266 -0
  37. package/dist/akinator/domain.js.map +1 -0
  38. package/dist/akinator/instructions.d.ts +3 -0
  39. package/dist/akinator/instructions.d.ts.map +1 -0
  40. package/dist/akinator/instructions.js +4 -0
  41. package/dist/akinator/instructions.js.map +1 -0
  42. package/dist/akinator/knowledge-path.d.ts +33 -0
  43. package/dist/akinator/knowledge-path.d.ts.map +1 -0
  44. package/dist/akinator/knowledge-path.js +474 -0
  45. package/dist/akinator/knowledge-path.js.map +1 -0
  46. package/dist/akinator/orchestrator.d.ts +7 -0
  47. package/dist/akinator/orchestrator.d.ts.map +1 -0
  48. package/dist/akinator/orchestrator.js +8 -0
  49. package/dist/akinator/orchestrator.js.map +1 -0
  50. package/dist/akinator/reasoning.d.ts +8 -0
  51. package/dist/akinator/reasoning.d.ts.map +1 -0
  52. package/dist/akinator/reasoning.js +118 -0
  53. package/dist/akinator/reasoning.js.map +1 -0
  54. package/dist/akinator/service.d.ts +32 -0
  55. package/dist/akinator/service.d.ts.map +1 -0
  56. package/dist/akinator/service.js +294 -0
  57. package/dist/akinator/service.js.map +1 -0
  58. package/dist/akinator/skill-discovery-attempt.d.ts +25 -0
  59. package/dist/akinator/skill-discovery-attempt.d.ts.map +1 -0
  60. package/dist/akinator/skill-discovery-attempt.js +465 -0
  61. package/dist/akinator/skill-discovery-attempt.js.map +1 -0
  62. package/dist/akinator/store.d.ts +96 -0
  63. package/dist/akinator/store.d.ts.map +1 -0
  64. package/dist/akinator/store.js +642 -0
  65. package/dist/akinator/store.js.map +1 -0
  66. package/dist/akinator/types.d.ts +70 -0
  67. package/dist/akinator/types.d.ts.map +1 -0
  68. package/dist/akinator/types.js +2 -0
  69. package/dist/akinator/types.js.map +1 -0
  70. package/dist/bin/kiokuko.d.ts +3 -0
  71. package/dist/bin/kiokuko.d.ts.map +1 -0
  72. package/dist/bin/kiokuko.js +13 -0
  73. package/dist/bin/kiokuko.js.map +1 -0
  74. package/dist/cli.d.ts +24 -0
  75. package/dist/cli.d.ts.map +1 -0
  76. package/dist/cli.js +957 -0
  77. package/dist/cli.js.map +1 -0
  78. package/dist/client/server-client.d.ts +22 -0
  79. package/dist/client/server-client.d.ts.map +1 -0
  80. package/dist/client/server-client.js +729 -0
  81. package/dist/client/server-client.js.map +1 -0
  82. package/dist/commands/agent.d.ts +12 -0
  83. package/dist/commands/agent.d.ts.map +1 -0
  84. package/dist/commands/agent.js +1138 -0
  85. package/dist/commands/agent.js.map +1 -0
  86. package/dist/commands/backup.d.ts +6 -0
  87. package/dist/commands/backup.d.ts.map +1 -0
  88. package/dist/commands/backup.js +77 -0
  89. package/dist/commands/backup.js.map +1 -0
  90. package/dist/commands/curator.d.ts +25 -0
  91. package/dist/commands/curator.d.ts.map +1 -0
  92. package/dist/commands/curator.js +58 -0
  93. package/dist/commands/curator.js.map +1 -0
  94. package/dist/commands/doctor.d.ts +57 -0
  95. package/dist/commands/doctor.d.ts.map +1 -0
  96. package/dist/commands/doctor.js +389 -0
  97. package/dist/commands/doctor.js.map +1 -0
  98. package/dist/commands/embeddings.d.ts +40 -0
  99. package/dist/commands/embeddings.d.ts.map +1 -0
  100. package/dist/commands/embeddings.js +315 -0
  101. package/dist/commands/embeddings.js.map +1 -0
  102. package/dist/commands/export.d.ts +17 -0
  103. package/dist/commands/export.d.ts.map +1 -0
  104. package/dist/commands/export.js +233 -0
  105. package/dist/commands/export.js.map +1 -0
  106. package/dist/commands/import.d.ts +24 -0
  107. package/dist/commands/import.d.ts.map +1 -0
  108. package/dist/commands/import.js +778 -0
  109. package/dist/commands/import.js.map +1 -0
  110. package/dist/commands/init.d.ts +21 -0
  111. package/dist/commands/init.d.ts.map +1 -0
  112. package/dist/commands/init.js +201 -0
  113. package/dist/commands/init.js.map +1 -0
  114. package/dist/commands/ledger.d.ts +7 -0
  115. package/dist/commands/ledger.d.ts.map +1 -0
  116. package/dist/commands/ledger.js +66 -0
  117. package/dist/commands/ledger.js.map +1 -0
  118. package/dist/commands/purge.d.ts +10 -0
  119. package/dist/commands/purge.d.ts.map +1 -0
  120. package/dist/commands/purge.js +29 -0
  121. package/dist/commands/purge.js.map +1 -0
  122. package/dist/commands/serve.d.ts +34 -0
  123. package/dist/commands/serve.d.ts.map +1 -0
  124. package/dist/commands/serve.js +120 -0
  125. package/dist/commands/serve.js.map +1 -0
  126. package/dist/commands/server-status.d.ts +20 -0
  127. package/dist/commands/server-status.d.ts.map +1 -0
  128. package/dist/commands/server-status.js +21 -0
  129. package/dist/commands/server-status.js.map +1 -0
  130. package/dist/commands/server.d.ts +13 -0
  131. package/dist/commands/server.d.ts.map +1 -0
  132. package/dist/commands/server.js +89 -0
  133. package/dist/commands/server.js.map +1 -0
  134. package/dist/commands/setup.d.ts +98 -0
  135. package/dist/commands/setup.d.ts.map +1 -0
  136. package/dist/commands/setup.js +690 -0
  137. package/dist/commands/setup.js.map +1 -0
  138. package/dist/commands/skills.d.ts +9 -0
  139. package/dist/commands/skills.d.ts.map +1 -0
  140. package/dist/commands/skills.js +317 -0
  141. package/dist/commands/skills.js.map +1 -0
  142. package/dist/commands/use.d.ts +40 -0
  143. package/dist/commands/use.d.ts.map +1 -0
  144. package/dist/commands/use.js +1090 -0
  145. package/dist/commands/use.js.map +1 -0
  146. package/dist/config/paths.d.ts +47 -0
  147. package/dist/config/paths.d.ts.map +1 -0
  148. package/dist/config/paths.js +324 -0
  149. package/dist/config/paths.js.map +1 -0
  150. package/dist/config/project-config.d.ts +11 -0
  151. package/dist/config/project-config.d.ts.map +1 -0
  152. package/dist/config/project-config.js +97 -0
  153. package/dist/config/project-config.js.map +1 -0
  154. package/dist/context/broker.d.ts +99 -0
  155. package/dist/context/broker.d.ts.map +1 -0
  156. package/dist/context/broker.js +923 -0
  157. package/dist/context/broker.js.map +1 -0
  158. package/dist/context/delivery.d.ts +60 -0
  159. package/dist/context/delivery.d.ts.map +1 -0
  160. package/dist/context/delivery.js +845 -0
  161. package/dist/context/delivery.js.map +1 -0
  162. package/dist/context/feedback.d.ts +73 -0
  163. package/dist/context/feedback.d.ts.map +1 -0
  164. package/dist/context/feedback.js +993 -0
  165. package/dist/context/feedback.js.map +1 -0
  166. package/dist/context/nudge-store.d.ts +57 -0
  167. package/dist/context/nudge-store.d.ts.map +1 -0
  168. package/dist/context/nudge-store.js +227 -0
  169. package/dist/context/nudge-store.js.map +1 -0
  170. package/dist/context/nudge-validation.d.ts +26 -0
  171. package/dist/context/nudge-validation.d.ts.map +1 -0
  172. package/dist/context/nudge-validation.js +122 -0
  173. package/dist/context/nudge-validation.js.map +1 -0
  174. package/dist/context/nudges.d.ts +38 -0
  175. package/dist/context/nudges.d.ts.map +1 -0
  176. package/dist/context/nudges.js +131 -0
  177. package/dist/context/nudges.js.map +1 -0
  178. package/dist/context/origin.d.ts +9 -0
  179. package/dist/context/origin.d.ts.map +1 -0
  180. package/dist/context/origin.js +15 -0
  181. package/dist/context/origin.js.map +1 -0
  182. package/dist/context/ranking.d.ts +92 -0
  183. package/dist/context/ranking.d.ts.map +1 -0
  184. package/dist/context/ranking.js +560 -0
  185. package/dist/context/ranking.js.map +1 -0
  186. package/dist/context/recommendations.d.ts +80 -0
  187. package/dist/context/recommendations.d.ts.map +1 -0
  188. package/dist/context/recommendations.js +341 -0
  189. package/dist/context/recommendations.js.map +1 -0
  190. package/dist/context/run-state.d.ts +26 -0
  191. package/dist/context/run-state.d.ts.map +1 -0
  192. package/dist/context/run-state.js +399 -0
  193. package/dist/context/run-state.js.map +1 -0
  194. package/dist/context/scoped-broker.d.ts +77 -0
  195. package/dist/context/scoped-broker.d.ts.map +1 -0
  196. package/dist/context/scoped-broker.js +690 -0
  197. package/dist/context/scoped-broker.js.map +1 -0
  198. package/dist/context/selection-state.d.ts +32 -0
  199. package/dist/context/selection-state.d.ts.map +1 -0
  200. package/dist/context/selection-state.js +357 -0
  201. package/dist/context/selection-state.js.map +1 -0
  202. package/dist/db/adapter.d.ts +27 -0
  203. package/dist/db/adapter.d.ts.map +1 -0
  204. package/dist/db/adapter.js +41 -0
  205. package/dist/db/adapter.js.map +1 -0
  206. package/dist/db/capabilities.d.ts +21 -0
  207. package/dist/db/capabilities.d.ts.map +1 -0
  208. package/dist/db/capabilities.js +57 -0
  209. package/dist/db/capabilities.js.map +1 -0
  210. package/dist/db/connection.d.ts +21 -0
  211. package/dist/db/connection.d.ts.map +1 -0
  212. package/dist/db/connection.js +129 -0
  213. package/dist/db/connection.js.map +1 -0
  214. package/dist/db/inspection-snapshot.d.ts +4 -0
  215. package/dist/db/inspection-snapshot.d.ts.map +1 -0
  216. package/dist/db/inspection-snapshot.js +86 -0
  217. package/dist/db/inspection-snapshot.js.map +1 -0
  218. package/dist/db/migrate.d.ts +37 -0
  219. package/dist/db/migrate.d.ts.map +1 -0
  220. package/dist/db/migrate.js +202 -0
  221. package/dist/db/migrate.js.map +1 -0
  222. package/dist/db/serialized-backup.d.ts +58 -0
  223. package/dist/db/serialized-backup.d.ts.map +1 -0
  224. package/dist/db/serialized-backup.js +647 -0
  225. package/dist/db/serialized-backup.js.map +1 -0
  226. package/dist/db/sqlite-retry.d.ts +11 -0
  227. package/dist/db/sqlite-retry.d.ts.map +1 -0
  228. package/dist/db/sqlite-retry.js +70 -0
  229. package/dist/db/sqlite-retry.js.map +1 -0
  230. package/dist/db/transaction.d.ts +17 -0
  231. package/dist/db/transaction.d.ts.map +1 -0
  232. package/dist/db/transaction.js +68 -0
  233. package/dist/db/transaction.js.map +1 -0
  234. package/dist/embedding/backend.d.ts +27 -0
  235. package/dist/embedding/backend.d.ts.map +1 -0
  236. package/dist/embedding/backend.js +67 -0
  237. package/dist/embedding/backend.js.map +1 -0
  238. package/dist/embedding/config.d.ts +7 -0
  239. package/dist/embedding/config.d.ts.map +1 -0
  240. package/dist/embedding/config.js +125 -0
  241. package/dist/embedding/config.js.map +1 -0
  242. package/dist/embedding/diagnostics.d.ts +34 -0
  243. package/dist/embedding/diagnostics.d.ts.map +1 -0
  244. package/dist/embedding/diagnostics.js +274 -0
  245. package/dist/embedding/diagnostics.js.map +1 -0
  246. package/dist/embedding/document.d.ts +20 -0
  247. package/dist/embedding/document.d.ts.map +1 -0
  248. package/dist/embedding/document.js +122 -0
  249. package/dist/embedding/document.js.map +1 -0
  250. package/dist/embedding/javascript-backend.d.ts +11 -0
  251. package/dist/embedding/javascript-backend.d.ts.map +1 -0
  252. package/dist/embedding/javascript-backend.js +164 -0
  253. package/dist/embedding/javascript-backend.js.map +1 -0
  254. package/dist/embedding/jobs.d.ts +67 -0
  255. package/dist/embedding/jobs.d.ts.map +1 -0
  256. package/dist/embedding/jobs.js +259 -0
  257. package/dist/embedding/jobs.js.map +1 -0
  258. package/dist/embedding/local-model-loader.d.ts +24 -0
  259. package/dist/embedding/local-model-loader.d.ts.map +1 -0
  260. package/dist/embedding/local-model-loader.js +64 -0
  261. package/dist/embedding/local-model-loader.js.map +1 -0
  262. package/dist/embedding/local-transformers-provider.d.ts +17 -0
  263. package/dist/embedding/local-transformers-provider.d.ts.map +1 -0
  264. package/dist/embedding/local-transformers-provider.js +54 -0
  265. package/dist/embedding/local-transformers-provider.js.map +1 -0
  266. package/dist/embedding/model-download.d.ts +32 -0
  267. package/dist/embedding/model-download.d.ts.map +1 -0
  268. package/dist/embedding/model-download.js +41 -0
  269. package/dist/embedding/model-download.js.map +1 -0
  270. package/dist/embedding/model-installation.d.ts +17 -0
  271. package/dist/embedding/model-installation.d.ts.map +1 -0
  272. package/dist/embedding/model-installation.js +71 -0
  273. package/dist/embedding/model-installation.js.map +1 -0
  274. package/dist/embedding/model-manifest.d.ts +18 -0
  275. package/dist/embedding/model-manifest.d.ts.map +1 -0
  276. package/dist/embedding/model-manifest.js +86 -0
  277. package/dist/embedding/model-manifest.js.map +1 -0
  278. package/dist/embedding/openai-compatible-provider.d.ts +24 -0
  279. package/dist/embedding/openai-compatible-provider.d.ts.map +1 -0
  280. package/dist/embedding/openai-compatible-provider.js +330 -0
  281. package/dist/embedding/openai-compatible-provider.js.map +1 -0
  282. package/dist/embedding/presets/local-small.d.ts +8 -0
  283. package/dist/embedding/presets/local-small.d.ts.map +1 -0
  284. package/dist/embedding/presets/local-small.js +67 -0
  285. package/dist/embedding/presets/local-small.js.map +1 -0
  286. package/dist/embedding/presets/manifest.d.ts +27 -0
  287. package/dist/embedding/presets/manifest.d.ts.map +1 -0
  288. package/dist/embedding/presets/manifest.js +5 -0
  289. package/dist/embedding/presets/manifest.js.map +1 -0
  290. package/dist/embedding/profile.d.ts +10 -0
  291. package/dist/embedding/profile.d.ts.map +1 -0
  292. package/dist/embedding/profile.js +67 -0
  293. package/dist/embedding/profile.js.map +1 -0
  294. package/dist/embedding/provider.d.ts +13 -0
  295. package/dist/embedding/provider.d.ts.map +1 -0
  296. package/dist/embedding/provider.js +17 -0
  297. package/dist/embedding/provider.js.map +1 -0
  298. package/dist/embedding/query-cache.d.ts +45 -0
  299. package/dist/embedding/query-cache.d.ts.map +1 -0
  300. package/dist/embedding/query-cache.js +181 -0
  301. package/dist/embedding/query-cache.js.map +1 -0
  302. package/dist/embedding/runtime.d.ts +14 -0
  303. package/dist/embedding/runtime.d.ts.map +1 -0
  304. package/dist/embedding/runtime.js +407 -0
  305. package/dist/embedding/runtime.js.map +1 -0
  306. package/dist/embedding/settings.d.ts +6 -0
  307. package/dist/embedding/settings.d.ts.map +1 -0
  308. package/dist/embedding/settings.js +60 -0
  309. package/dist/embedding/settings.js.map +1 -0
  310. package/dist/embedding/setup-lock.d.ts +7 -0
  311. package/dist/embedding/setup-lock.d.ts.map +1 -0
  312. package/dist/embedding/setup-lock.js +35 -0
  313. package/dist/embedding/setup-lock.js.map +1 -0
  314. package/dist/embedding/setup-service.d.ts +47 -0
  315. package/dist/embedding/setup-service.d.ts.map +1 -0
  316. package/dist/embedding/setup-service.js +181 -0
  317. package/dist/embedding/setup-service.js.map +1 -0
  318. package/dist/embedding/sqlite-vec-backend.d.ts +9 -0
  319. package/dist/embedding/sqlite-vec-backend.d.ts.map +1 -0
  320. package/dist/embedding/sqlite-vec-backend.js +106 -0
  321. package/dist/embedding/sqlite-vec-backend.js.map +1 -0
  322. package/dist/embedding/sqlite-vec-loader.d.ts +17 -0
  323. package/dist/embedding/sqlite-vec-loader.d.ts.map +1 -0
  324. package/dist/embedding/sqlite-vec-loader.js +51 -0
  325. package/dist/embedding/sqlite-vec-loader.js.map +1 -0
  326. package/dist/embedding/store.d.ts +66 -0
  327. package/dist/embedding/store.d.ts.map +1 -0
  328. package/dist/embedding/store.js +474 -0
  329. package/dist/embedding/store.js.map +1 -0
  330. package/dist/embedding/types.d.ts +126 -0
  331. package/dist/embedding/types.d.ts.map +1 -0
  332. package/dist/embedding/types.js +2 -0
  333. package/dist/embedding/types.js.map +1 -0
  334. package/dist/embedding/vector.d.ts +9 -0
  335. package/dist/embedding/vector.d.ts.map +1 -0
  336. package/dist/embedding/vector.js +90 -0
  337. package/dist/embedding/vector.js.map +1 -0
  338. package/dist/embedding/worker.d.ts +23 -0
  339. package/dist/embedding/worker.d.ts.map +1 -0
  340. package/dist/embedding/worker.js +84 -0
  341. package/dist/embedding/worker.js.map +1 -0
  342. package/dist/errors.d.ts +13 -0
  343. package/dist/errors.d.ts.map +1 -0
  344. package/dist/errors.js +53 -0
  345. package/dist/errors.js.map +1 -0
  346. package/dist/gateway/agent-service.d.ts +72 -0
  347. package/dist/gateway/agent-service.d.ts.map +1 -0
  348. package/dist/gateway/agent-service.js +594 -0
  349. package/dist/gateway/agent-service.js.map +1 -0
  350. package/dist/gateway/checkpoint-mutation-service.d.ts +33 -0
  351. package/dist/gateway/checkpoint-mutation-service.d.ts.map +1 -0
  352. package/dist/gateway/checkpoint-mutation-service.js +503 -0
  353. package/dist/gateway/checkpoint-mutation-service.js.map +1 -0
  354. package/dist/gateway/checkpoint-service.d.ts +17 -0
  355. package/dist/gateway/checkpoint-service.d.ts.map +1 -0
  356. package/dist/gateway/checkpoint-service.js +123 -0
  357. package/dist/gateway/checkpoint-service.js.map +1 -0
  358. package/dist/gateway/nudge-delivery-service.d.ts +21 -0
  359. package/dist/gateway/nudge-delivery-service.d.ts.map +1 -0
  360. package/dist/gateway/nudge-delivery-service.js +67 -0
  361. package/dist/gateway/nudge-delivery-service.js.map +1 -0
  362. package/dist/ledger/archive.d.ts +48 -0
  363. package/dist/ledger/archive.d.ts.map +1 -0
  364. package/dist/ledger/archive.js +1252 -0
  365. package/dist/ledger/archive.js.map +1 -0
  366. package/dist/ledger/checkpoint-contract.d.ts +144 -0
  367. package/dist/ledger/checkpoint-contract.d.ts.map +1 -0
  368. package/dist/ledger/checkpoint-contract.js +91 -0
  369. package/dist/ledger/checkpoint-contract.js.map +1 -0
  370. package/dist/ledger/checkpoint-eligibility.d.ts +17 -0
  371. package/dist/ledger/checkpoint-eligibility.d.ts.map +1 -0
  372. package/dist/ledger/checkpoint-eligibility.js +19 -0
  373. package/dist/ledger/checkpoint-eligibility.js.map +1 -0
  374. package/dist/ledger/hash.d.ts +22 -0
  375. package/dist/ledger/hash.d.ts.map +1 -0
  376. package/dist/ledger/hash.js +25 -0
  377. package/dist/ledger/hash.js.map +1 -0
  378. package/dist/ledger/maintenance.d.ts +68 -0
  379. package/dist/ledger/maintenance.d.ts.map +1 -0
  380. package/dist/ledger/maintenance.js +758 -0
  381. package/dist/ledger/maintenance.js.map +1 -0
  382. package/dist/ledger/projection.d.ts +38 -0
  383. package/dist/ledger/projection.d.ts.map +1 -0
  384. package/dist/ledger/projection.js +315 -0
  385. package/dist/ledger/projection.js.map +1 -0
  386. package/dist/ledger/promotion.d.ts +19 -0
  387. package/dist/ledger/promotion.d.ts.map +1 -0
  388. package/dist/ledger/promotion.js +310 -0
  389. package/dist/ledger/promotion.js.map +1 -0
  390. package/dist/ledger/query.d.ts +41 -0
  391. package/dist/ledger/query.d.ts.map +1 -0
  392. package/dist/ledger/query.js +321 -0
  393. package/dist/ledger/query.js.map +1 -0
  394. package/dist/ledger/redaction.d.ts +8 -0
  395. package/dist/ledger/redaction.d.ts.map +1 -0
  396. package/dist/ledger/redaction.js +40 -0
  397. package/dist/ledger/redaction.js.map +1 -0
  398. package/dist/ledger/store.d.ts +45 -0
  399. package/dist/ledger/store.d.ts.map +1 -0
  400. package/dist/ledger/store.js +327 -0
  401. package/dist/ledger/store.js.map +1 -0
  402. package/dist/ledger/types.d.ts +115 -0
  403. package/dist/ledger/types.d.ts.map +1 -0
  404. package/dist/ledger/types.js +22 -0
  405. package/dist/ledger/types.js.map +1 -0
  406. package/dist/ledger/validate.d.ts +10 -0
  407. package/dist/ledger/validate.d.ts.map +1 -0
  408. package/dist/ledger/validate.js +178 -0
  409. package/dist/ledger/validate.js.map +1 -0
  410. package/dist/mcp/bounded-stdio-transport.d.ts +26 -0
  411. package/dist/mcp/bounded-stdio-transport.d.ts.map +1 -0
  412. package/dist/mcp/bounded-stdio-transport.js +121 -0
  413. package/dist/mcp/bounded-stdio-transport.js.map +1 -0
  414. package/dist/mcp/client-identity.d.ts +22 -0
  415. package/dist/mcp/client-identity.d.ts.map +1 -0
  416. package/dist/mcp/client-identity.js +65 -0
  417. package/dist/mcp/client-identity.js.map +1 -0
  418. package/dist/mcp/request-deadline.d.ts +51 -0
  419. package/dist/mcp/request-deadline.d.ts.map +1 -0
  420. package/dist/mcp/request-deadline.js +147 -0
  421. package/dist/mcp/request-deadline.js.map +1 -0
  422. package/dist/mcp/runtime-owner.d.ts +27 -0
  423. package/dist/mcp/runtime-owner.d.ts.map +1 -0
  424. package/dist/mcp/runtime-owner.js +129 -0
  425. package/dist/mcp/runtime-owner.js.map +1 -0
  426. package/dist/mcp/server.d.ts +24 -0
  427. package/dist/mcp/server.d.ts.map +1 -0
  428. package/dist/mcp/server.js +415 -0
  429. package/dist/mcp/server.js.map +1 -0
  430. package/dist/memory/audit.d.ts +13 -0
  431. package/dist/memory/audit.d.ts.map +1 -0
  432. package/dist/memory/audit.js +15 -0
  433. package/dist/memory/audit.js.map +1 -0
  434. package/dist/memory/checkpoint-contract.d.ts +490 -0
  435. package/dist/memory/checkpoint-contract.d.ts.map +1 -0
  436. package/dist/memory/checkpoint-contract.js +106 -0
  437. package/dist/memory/checkpoint-contract.js.map +1 -0
  438. package/dist/memory/curator-trust.d.ts +9 -0
  439. package/dist/memory/curator-trust.d.ts.map +1 -0
  440. package/dist/memory/curator-trust.js +47 -0
  441. package/dist/memory/curator-trust.js.map +1 -0
  442. package/dist/memory/curator.d.ts +115 -0
  443. package/dist/memory/curator.d.ts.map +1 -0
  444. package/dist/memory/curator.js +674 -0
  445. package/dist/memory/curator.js.map +1 -0
  446. package/dist/memory/entries.d.ts +75 -0
  447. package/dist/memory/entries.d.ts.map +1 -0
  448. package/dist/memory/entries.js +355 -0
  449. package/dist/memory/entries.js.map +1 -0
  450. package/dist/memory/federated-retrieval.d.ts +79 -0
  451. package/dist/memory/federated-retrieval.d.ts.map +1 -0
  452. package/dist/memory/federated-retrieval.js +515 -0
  453. package/dist/memory/federated-retrieval.js.map +1 -0
  454. package/dist/memory/hybrid-retrieval.d.ts +33 -0
  455. package/dist/memory/hybrid-retrieval.d.ts.map +1 -0
  456. package/dist/memory/hybrid-retrieval.js +398 -0
  457. package/dist/memory/hybrid-retrieval.js.map +1 -0
  458. package/dist/memory/lifecycle.d.ts +29 -0
  459. package/dist/memory/lifecycle.d.ts.map +1 -0
  460. package/dist/memory/lifecycle.js +65 -0
  461. package/dist/memory/lifecycle.js.map +1 -0
  462. package/dist/memory/portability.d.ts +10 -0
  463. package/dist/memory/portability.d.ts.map +1 -0
  464. package/dist/memory/portability.js +44 -0
  465. package/dist/memory/portability.js.map +1 -0
  466. package/dist/memory/rebuild-search.d.ts +19 -0
  467. package/dist/memory/rebuild-search.d.ts.map +1 -0
  468. package/dist/memory/rebuild-search.js +138 -0
  469. package/dist/memory/rebuild-search.js.map +1 -0
  470. package/dist/memory/retrieval-query.d.ts +16 -0
  471. package/dist/memory/retrieval-query.d.ts.map +1 -0
  472. package/dist/memory/retrieval-query.js +161 -0
  473. package/dist/memory/retrieval-query.js.map +1 -0
  474. package/dist/memory/retrieval.d.ts +56 -0
  475. package/dist/memory/retrieval.d.ts.map +1 -0
  476. package/dist/memory/retrieval.js +101 -0
  477. package/dist/memory/retrieval.js.map +1 -0
  478. package/dist/memory/revisions.d.ts +109 -0
  479. package/dist/memory/revisions.d.ts.map +1 -0
  480. package/dist/memory/revisions.js +409 -0
  481. package/dist/memory/revisions.js.map +1 -0
  482. package/dist/memory/scoped-memory.d.ts +76 -0
  483. package/dist/memory/scoped-memory.d.ts.map +1 -0
  484. package/dist/memory/scoped-memory.js +530 -0
  485. package/dist/memory/scoped-memory.js.map +1 -0
  486. package/dist/memory/secrets.d.ts +8 -0
  487. package/dist/memory/secrets.d.ts.map +1 -0
  488. package/dist/memory/secrets.js +54 -0
  489. package/dist/memory/secrets.js.map +1 -0
  490. package/dist/memory/structured-memory.d.ts +56 -0
  491. package/dist/memory/structured-memory.d.ts.map +1 -0
  492. package/dist/memory/structured-memory.js +281 -0
  493. package/dist/memory/structured-memory.js.map +1 -0
  494. package/dist/memory/workspaces.d.ts +26 -0
  495. package/dist/memory/workspaces.d.ts.map +1 -0
  496. package/dist/memory/workspaces.js +159 -0
  497. package/dist/memory/workspaces.js.map +1 -0
  498. package/dist/package-version.d.ts +2 -0
  499. package/dist/package-version.d.ts.map +1 -0
  500. package/dist/package-version.js +7 -0
  501. package/dist/package-version.js.map +1 -0
  502. package/dist/repository/binding.d.ts +32 -0
  503. package/dist/repository/binding.d.ts.map +1 -0
  504. package/dist/repository/binding.js +208 -0
  505. package/dist/repository/binding.js.map +1 -0
  506. package/dist/repository/cwd-schema.d.ts +4 -0
  507. package/dist/repository/cwd-schema.d.ts.map +1 -0
  508. package/dist/repository/cwd-schema.js +8 -0
  509. package/dist/repository/cwd-schema.js.map +1 -0
  510. package/dist/repository/detect-root.d.ts +13 -0
  511. package/dist/repository/detect-root.d.ts.map +1 -0
  512. package/dist/repository/detect-root.js +77 -0
  513. package/dist/repository/detect-root.js.map +1 -0
  514. package/dist/repository/framework-version.d.ts +8 -0
  515. package/dist/repository/framework-version.d.ts.map +1 -0
  516. package/dist/repository/framework-version.js +29 -0
  517. package/dist/repository/framework-version.js.map +1 -0
  518. package/dist/repository/git-origin.d.ts +2 -0
  519. package/dist/repository/git-origin.d.ts.map +1 -0
  520. package/dist/repository/git-origin.js +15 -0
  521. package/dist/repository/git-origin.js.map +1 -0
  522. package/dist/repository/gitignore.d.ts +8 -0
  523. package/dist/repository/gitignore.d.ts.map +1 -0
  524. package/dist/repository/gitignore.js +21 -0
  525. package/dist/repository/gitignore.js.map +1 -0
  526. package/dist/repository/identity-value.d.ts +4 -0
  527. package/dist/repository/identity-value.d.ts.map +1 -0
  528. package/dist/repository/identity-value.js +24 -0
  529. package/dist/repository/identity-value.js.map +1 -0
  530. package/dist/repository/identity.d.ts +19 -0
  531. package/dist/repository/identity.d.ts.map +1 -0
  532. package/dist/repository/identity.js +25 -0
  533. package/dist/repository/identity.js.map +1 -0
  534. package/dist/repository/project-fingerprint.d.ts +33 -0
  535. package/dist/repository/project-fingerprint.d.ts.map +1 -0
  536. package/dist/repository/project-fingerprint.js +429 -0
  537. package/dist/repository/project-fingerprint.js.map +1 -0
  538. package/dist/repository/remote-url.d.ts +3 -0
  539. package/dist/repository/remote-url.d.ts.map +1 -0
  540. package/dist/repository/remote-url.js +35 -0
  541. package/dist/repository/remote-url.js.map +1 -0
  542. package/dist/runtime-version.d.ts +6 -0
  543. package/dist/runtime-version.d.ts.map +1 -0
  544. package/dist/runtime-version.js +33 -0
  545. package/dist/runtime-version.js.map +1 -0
  546. package/dist/security/sanitize.d.ts +4 -0
  547. package/dist/security/sanitize.d.ts.map +1 -0
  548. package/dist/security/sanitize.js +174 -0
  549. package/dist/security/sanitize.js.map +1 -0
  550. package/dist/serialization/boundary-json.d.ts +20 -0
  551. package/dist/serialization/boundary-json.d.ts.map +1 -0
  552. package/dist/serialization/boundary-json.js +129 -0
  553. package/dist/serialization/boundary-json.js.map +1 -0
  554. package/dist/serialization/envelope.d.ts +20 -0
  555. package/dist/serialization/envelope.d.ts.map +1 -0
  556. package/dist/serialization/envelope.js +11 -0
  557. package/dist/serialization/envelope.js.map +1 -0
  558. package/dist/serialization/validate.d.ts +38 -0
  559. package/dist/serialization/validate.d.ts.map +1 -0
  560. package/dist/serialization/validate.js +233 -0
  561. package/dist/serialization/validate.js.map +1 -0
  562. package/dist/server/agent-application.d.ts +6 -0
  563. package/dist/server/agent-application.d.ts.map +1 -0
  564. package/dist/server/agent-application.js +74 -0
  565. package/dist/server/agent-application.js.map +1 -0
  566. package/dist/server/agent-checkpoint-use-case.d.ts +40 -0
  567. package/dist/server/agent-checkpoint-use-case.d.ts.map +1 -0
  568. package/dist/server/agent-checkpoint-use-case.js +157 -0
  569. package/dist/server/agent-checkpoint-use-case.js.map +1 -0
  570. package/dist/server/app.d.ts +5 -0
  571. package/dist/server/app.d.ts.map +1 -0
  572. package/dist/server/app.js +87 -0
  573. package/dist/server/app.js.map +1 -0
  574. package/dist/server/auth.d.ts +2 -0
  575. package/dist/server/auth.d.ts.map +1 -0
  576. package/dist/server/auth.js +22 -0
  577. package/dist/server/auth.js.map +1 -0
  578. package/dist/server/http.d.ts +86 -0
  579. package/dist/server/http.d.ts.map +1 -0
  580. package/dist/server/http.js +455 -0
  581. package/dist/server/http.js.map +1 -0
  582. package/dist/server/idempotency.d.ts +6 -0
  583. package/dist/server/idempotency.d.ts.map +1 -0
  584. package/dist/server/idempotency.js +210 -0
  585. package/dist/server/idempotency.js.map +1 -0
  586. package/dist/server/instance-lock.d.ts +17 -0
  587. package/dist/server/instance-lock.d.ts.map +1 -0
  588. package/dist/server/instance-lock.js +118 -0
  589. package/dist/server/instance-lock.js.map +1 -0
  590. package/dist/server/router.d.ts +29 -0
  591. package/dist/server/router.d.ts.map +1 -0
  592. package/dist/server/router.js +129 -0
  593. package/dist/server/router.js.map +1 -0
  594. package/dist/server/routes/agent-capability-gate.d.ts +43 -0
  595. package/dist/server/routes/agent-capability-gate.d.ts.map +1 -0
  596. package/dist/server/routes/agent-capability-gate.js +202 -0
  597. package/dist/server/routes/agent-capability-gate.js.map +1 -0
  598. package/dist/server/routes/agent-events.d.ts +5 -0
  599. package/dist/server/routes/agent-events.d.ts.map +1 -0
  600. package/dist/server/routes/agent-events.js +53 -0
  601. package/dist/server/routes/agent-events.js.map +1 -0
  602. package/dist/server/routes/agent-intake.d.ts +5 -0
  603. package/dist/server/routes/agent-intake.d.ts.map +1 -0
  604. package/dist/server/routes/agent-intake.js +50 -0
  605. package/dist/server/routes/agent-intake.js.map +1 -0
  606. package/dist/server/routes/agent-promotions.d.ts +5 -0
  607. package/dist/server/routes/agent-promotions.d.ts.map +1 -0
  608. package/dist/server/routes/agent-promotions.js +55 -0
  609. package/dist/server/routes/agent-promotions.js.map +1 -0
  610. package/dist/server/routes/agent-runs.d.ts +26 -0
  611. package/dist/server/routes/agent-runs.d.ts.map +1 -0
  612. package/dist/server/routes/agent-runs.js +165 -0
  613. package/dist/server/routes/agent-runs.js.map +1 -0
  614. package/dist/server/routes/request-binding.d.ts +5 -0
  615. package/dist/server/routes/request-binding.d.ts.map +1 -0
  616. package/dist/server/routes/request-binding.js +49 -0
  617. package/dist/server/routes/request-binding.js.map +1 -0
  618. package/dist/server/routes/task5-support.d.ts +4 -0
  619. package/dist/server/routes/task5-support.d.ts.map +1 -0
  620. package/dist/server/routes/task5-support.js +6 -0
  621. package/dist/server/routes/task5-support.js.map +1 -0
  622. package/dist/server/routes/task5.d.ts +5 -0
  623. package/dist/server/routes/task5.d.ts.map +1 -0
  624. package/dist/server/routes/task5.js +56 -0
  625. package/dist/server/routes/task5.js.map +1 -0
  626. package/dist/server/runtime-descriptor.d.ts +24 -0
  627. package/dist/server/runtime-descriptor.d.ts.map +1 -0
  628. package/dist/server/runtime-descriptor.js +156 -0
  629. package/dist/server/runtime-descriptor.js.map +1 -0
  630. package/dist/server/write-queue.d.ts +20 -0
  631. package/dist/server/write-queue.d.ts.map +1 -0
  632. package/dist/server/write-queue.js +83 -0
  633. package/dist/server/write-queue.js.map +1 -0
  634. package/dist/setup/claude-config.d.ts +6 -0
  635. package/dist/setup/claude-config.d.ts.map +1 -0
  636. package/dist/setup/claude-config.js +83 -0
  637. package/dist/setup/claude-config.js.map +1 -0
  638. package/dist/setup/client-detection.d.ts +13 -0
  639. package/dist/setup/client-detection.d.ts.map +1 -0
  640. package/dist/setup/client-detection.js +64 -0
  641. package/dist/setup/client-detection.js.map +1 -0
  642. package/dist/setup/hermes-config.d.ts +7 -0
  643. package/dist/setup/hermes-config.d.ts.map +1 -0
  644. package/dist/setup/hermes-config.js +145 -0
  645. package/dist/setup/hermes-config.js.map +1 -0
  646. package/dist/setup/managed-text.d.ts +6 -0
  647. package/dist/setup/managed-text.d.ts.map +1 -0
  648. package/dist/setup/managed-text.js +52 -0
  649. package/dist/setup/managed-text.js.map +1 -0
  650. package/dist/setup/mcp-conflict.d.ts +4 -0
  651. package/dist/setup/mcp-conflict.d.ts.map +1 -0
  652. package/dist/setup/mcp-conflict.js +15 -0
  653. package/dist/setup/mcp-conflict.js.map +1 -0
  654. package/dist/setup/opencode-config.d.ts +6 -0
  655. package/dist/setup/opencode-config.d.ts.map +1 -0
  656. package/dist/setup/opencode-config.js +86 -0
  657. package/dist/setup/opencode-config.js.map +1 -0
  658. package/dist/setup/project-agent-refresh.d.ts +41 -0
  659. package/dist/setup/project-agent-refresh.d.ts.map +1 -0
  660. package/dist/setup/project-agent-refresh.js +158 -0
  661. package/dist/setup/project-agent-refresh.js.map +1 -0
  662. package/dist/setup/render.d.ts +11 -0
  663. package/dist/setup/render.d.ts.map +1 -0
  664. package/dist/setup/render.js +323 -0
  665. package/dist/setup/render.js.map +1 -0
  666. package/dist/setup/standard-skills.d.ts +52 -0
  667. package/dist/setup/standard-skills.d.ts.map +1 -0
  668. package/dist/setup/standard-skills.js +125 -0
  669. package/dist/setup/standard-skills.js.map +1 -0
  670. package/dist/setup/strict-json.d.ts +7 -0
  671. package/dist/setup/strict-json.d.ts.map +1 -0
  672. package/dist/setup/strict-json.js +98 -0
  673. package/dist/setup/strict-json.js.map +1 -0
  674. package/dist/setup/strict-toml.d.ts +18 -0
  675. package/dist/setup/strict-toml.d.ts.map +1 -0
  676. package/dist/setup/strict-toml.js +491 -0
  677. package/dist/setup/strict-toml.js.map +1 -0
  678. package/dist/skills/cache.d.ts +15 -0
  679. package/dist/skills/cache.d.ts.map +1 -0
  680. package/dist/skills/cache.js +19 -0
  681. package/dist/skills/cache.js.map +1 -0
  682. package/dist/skills/candidate-ranking.d.ts +15 -0
  683. package/dist/skills/candidate-ranking.d.ts.map +1 -0
  684. package/dist/skills/candidate-ranking.js +52 -0
  685. package/dist/skills/candidate-ranking.js.map +1 -0
  686. package/dist/skills/chunking.d.ts +11 -0
  687. package/dist/skills/chunking.d.ts.map +1 -0
  688. package/dist/skills/chunking.js +291 -0
  689. package/dist/skills/chunking.js.map +1 -0
  690. package/dist/skills/config.d.ts +19 -0
  691. package/dist/skills/config.d.ts.map +1 -0
  692. package/dist/skills/config.js +103 -0
  693. package/dist/skills/config.js.map +1 -0
  694. package/dist/skills/discovery-service.d.ts +26 -0
  695. package/dist/skills/discovery-service.d.ts.map +1 -0
  696. package/dist/skills/discovery-service.js +929 -0
  697. package/dist/skills/discovery-service.js.map +1 -0
  698. package/dist/skills/external-transport.d.ts +2 -0
  699. package/dist/skills/external-transport.d.ts.map +1 -0
  700. package/dist/skills/external-transport.js +30 -0
  701. package/dist/skills/external-transport.js.map +1 -0
  702. package/dist/skills/find.d.ts +17 -0
  703. package/dist/skills/find.d.ts.map +1 -0
  704. package/dist/skills/find.js +59 -0
  705. package/dist/skills/find.js.map +1 -0
  706. package/dist/skills/gap-detection.d.ts +23 -0
  707. package/dist/skills/gap-detection.d.ts.map +1 -0
  708. package/dist/skills/gap-detection.js +62 -0
  709. package/dist/skills/gap-detection.js.map +1 -0
  710. package/dist/skills/import-preparation.d.ts +4 -0
  711. package/dist/skills/import-preparation.d.ts.map +1 -0
  712. package/dist/skills/import-preparation.js +20 -0
  713. package/dist/skills/import-preparation.js.map +1 -0
  714. package/dist/skills/materialization-authority.d.ts +11 -0
  715. package/dist/skills/materialization-authority.d.ts.map +1 -0
  716. package/dist/skills/materialization-authority.js +92 -0
  717. package/dist/skills/materialization-authority.js.map +1 -0
  718. package/dist/skills/materialization-service.d.ts +22 -0
  719. package/dist/skills/materialization-service.d.ts.map +1 -0
  720. package/dist/skills/materialization-service.js +101 -0
  721. package/dist/skills/materialization-service.js.map +1 -0
  722. package/dist/skills/official-catalog.d.ts +31 -0
  723. package/dist/skills/official-catalog.d.ts.map +1 -0
  724. package/dist/skills/official-catalog.js +110 -0
  725. package/dist/skills/official-catalog.js.map +1 -0
  726. package/dist/skills/providers/schema.d.ts +30 -0
  727. package/dist/skills/providers/schema.d.ts.map +1 -0
  728. package/dist/skills/providers/schema.js +354 -0
  729. package/dist/skills/providers/schema.js.map +1 -0
  730. package/dist/skills/providers/skills-sh-compat.d.ts +17 -0
  731. package/dist/skills/providers/skills-sh-compat.d.ts.map +1 -0
  732. package/dist/skills/providers/skills-sh-compat.js +73 -0
  733. package/dist/skills/providers/skills-sh-compat.js.map +1 -0
  734. package/dist/skills/providers/skills-sh-v1.d.ts +23 -0
  735. package/dist/skills/providers/skills-sh-v1.d.ts.map +1 -0
  736. package/dist/skills/providers/skills-sh-v1.js +152 -0
  737. package/dist/skills/providers/skills-sh-v1.js.map +1 -0
  738. package/dist/skills/query-builder.d.ts +18 -0
  739. package/dist/skills/query-builder.d.ts.map +1 -0
  740. package/dist/skills/query-builder.js +93 -0
  741. package/dist/skills/query-builder.js.map +1 -0
  742. package/dist/skills/source/errors.d.ts +9 -0
  743. package/dist/skills/source/errors.d.ts.map +1 -0
  744. package/dist/skills/source/errors.js +15 -0
  745. package/dist/skills/source/errors.js.map +1 -0
  746. package/dist/skills/source/frontmatter.d.ts +9 -0
  747. package/dist/skills/source/frontmatter.d.ts.map +1 -0
  748. package/dist/skills/source/frontmatter.js +77 -0
  749. package/dist/skills/source/frontmatter.js.map +1 -0
  750. package/dist/skills/source/github-fetcher.d.ts +20 -0
  751. package/dist/skills/source/github-fetcher.d.ts.map +1 -0
  752. package/dist/skills/source/github-fetcher.js +296 -0
  753. package/dist/skills/source/github-fetcher.js.map +1 -0
  754. package/dist/skills/source/snapshot-validator.d.ts +28 -0
  755. package/dist/skills/source/snapshot-validator.d.ts.map +1 -0
  756. package/dist/skills/source/snapshot-validator.js +186 -0
  757. package/dist/skills/source/snapshot-validator.js.map +1 -0
  758. package/dist/skills/store.d.ts +180 -0
  759. package/dist/skills/store.d.ts.map +1 -0
  760. package/dist/skills/store.js +1712 -0
  761. package/dist/skills/store.js.map +1 -0
  762. package/dist/skills/types.d.ts +171 -0
  763. package/dist/skills/types.d.ts.map +1 -0
  764. package/dist/skills/types.js +2 -0
  765. package/dist/skills/types.js.map +1 -0
  766. package/dist/web/i18n.d.ts +184 -0
  767. package/dist/web/i18n.d.ts.map +1 -0
  768. package/dist/web/i18n.js +733 -0
  769. package/dist/web/i18n.js.map +1 -0
  770. package/dist/web/server.d.ts +16 -0
  771. package/dist/web/server.d.ts.map +1 -0
  772. package/dist/web/server.js +864 -0
  773. package/dist/web/server.js.map +1 -0
  774. package/dist/web/ui.d.ts +6 -0
  775. package/dist/web/ui.d.ts.map +1 -0
  776. package/dist/web/ui.js +1328 -0
  777. package/dist/web/ui.js.map +1 -0
  778. package/docs/README.ja.md +13 -0
  779. package/docs/README.md +15 -0
  780. package/docs/agent-file.md +53 -0
  781. package/docs/agent-gateway.md +102 -0
  782. package/docs/architecture.md +12 -0
  783. package/docs/breaking-changes-1.0.md +64 -0
  784. package/docs/cli-contract.md +39 -0
  785. package/docs/client-compatibility.md +110 -0
  786. package/docs/concepts.ja.md +25 -0
  787. package/docs/concepts.md +33 -0
  788. package/docs/database.md +20 -0
  789. package/docs/execution-ledger.md +68 -0
  790. package/docs/getting-started.ja.md +45 -0
  791. package/docs/getting-started.md +49 -0
  792. package/docs/release-notes-0.1.18.md +105 -0
  793. package/docs/retrieval-evaluation.md +10 -0
  794. package/docs/security-and-trust.ja.md +29 -0
  795. package/docs/security-and-trust.md +39 -0
  796. package/docs/security.md +11 -0
  797. package/docs/semantic-retrieval.ja.md +18 -0
  798. package/docs/semantic-retrieval.md +26 -0
  799. package/docs/sqlite-driver-adr.md +8 -0
  800. package/migrations/001_baseline.sql +972 -0
  801. package/package.json +81 -0
  802. package/skills/kiokuko-simple-work/SKILL.md +112 -0
  803. package/skills/kiokuko-single-purpose-functions/SKILL.md +81 -0
  804. package/skills/kiokuko-single-purpose-functions/references/boundaries-and-ownership.md +50 -0
  805. package/skills/kiokuko-single-purpose-functions/references/domain-and-types.md +48 -0
  806. package/skills/kiokuko-single-purpose-functions/references/effects-and-data.md +43 -0
  807. package/skills/kiokuko-single-purpose-functions/references/kiokuko-patterns.md +344 -0
  808. package/skills/kiokuko-single-purpose-functions/references/problem-shaping-and-language.md +84 -0
  809. package/skills/kiokuko-single-purpose-functions/references/protocols-and-idempotency.md +42 -0
  810. package/skills/kiokuko-single-purpose-functions/references/review-checklist.md +97 -0
  811. package/skills/kiokuko-single-purpose-functions/references/verification.md +41 -0
  812. package/skills/kiokuko-soul/SKILL.md +93 -0
  813. package/skills/kiokuko-ui-design-soul/SKILL.md +71 -0
  814. package/skills/kiokuko-ui-design-soul/references/accessibility-and-navigation.md +31 -0
  815. package/skills/kiokuko-ui-design-soul/references/async-recovery.md +49 -0
  816. package/skills/kiokuko-ui-design-soul/references/forms-and-controls.md +35 -0
  817. package/skills/kiokuko-ui-design-soul/references/interaction-feedback.md +34 -0
  818. package/skills/kiokuko-ui-design-soul/references/responsive-and-platform.md +38 -0
  819. package/skills/kiokuko-ui-design-soul/references/safety-and-review.md +39 -0
  820. package/skills/kiokuko-ui-design-soul/references/ui-checklist.md +71 -0
  821. package/skills/memory-reasoning/SKILL.md +52 -0
  822. package/templates/AGENTS.md +39 -0
@@ -0,0 +1,11 @@
1
+ /** Match only node:sqlite errors whose SQLite primary result code is BUSY or LOCKED. */
2
+ export declare function isSqliteLockError(error: unknown): boolean;
3
+ /** Match only native node:sqlite operational failures discovery may safely report as bounded degradation. */
4
+ export declare function isSqliteOperationalError(error: unknown): boolean;
5
+ /** Match database bytes that SQLite itself reports as corrupt or not a database. */
6
+ export declare function isSqliteCorruptionError(error: unknown): boolean;
7
+ /** Match one exact PRIMARY KEY/UNIQUE target; trigger text cannot spoof this check. */
8
+ export declare function isSqliteUniqueConstraintError(error: unknown, targets: readonly string[]): boolean;
9
+ /** Retry a synchronous operation at most five total attempts, and only for SQLite BUSY/LOCKED. */
10
+ export declare function withSqliteLockRetry<T>(operation: () => T): T;
11
+ //# sourceMappingURL=sqlite-retry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-retry.d.ts","sourceRoot":"","sources":["../../src/db/sqlite-retry.ts"],"names":[],"mappings":"AAyBA,wFAAwF;AACxF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAKzD;AAED,6GAA6G;AAC7G,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGhE;AAED,oFAAoF;AACpF,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAK/D;AAED,uFAAuF;AACvF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAIjG;AAOD,kGAAkG;AAClG,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAgB5D"}
@@ -0,0 +1,70 @@
1
+ import { KiokukoError } from '../errors.js';
2
+ const LOCK_ATTEMPT_LIMIT = 5;
3
+ const SQLITE_BUSY = 5;
4
+ const SQLITE_LOCKED = 6;
5
+ const SQLITE_CORRUPT = 11;
6
+ const SQLITE_NOTADB = 26;
7
+ const SQLITE_CONSTRAINT_PRIMARYKEY = 1555;
8
+ const SQLITE_CONSTRAINT_UNIQUE = 2067;
9
+ const SQLITE_OPERATIONAL_CODES = new Set([SQLITE_BUSY, SQLITE_LOCKED, 8, 10, 13, 14]);
10
+ function sqliteErrorCode(error) {
11
+ if (!(error instanceof Error))
12
+ return undefined;
13
+ const sqliteError = error;
14
+ if (sqliteError.code !== 'ERR_SQLITE_ERROR'
15
+ || typeof sqliteError.errcode !== 'number'
16
+ || !Number.isSafeInteger(sqliteError.errcode)
17
+ || sqliteError.errcode < 0) {
18
+ return undefined;
19
+ }
20
+ return sqliteError.errcode;
21
+ }
22
+ /** Match only node:sqlite errors whose SQLite primary result code is BUSY or LOCKED. */
23
+ export function isSqliteLockError(error) {
24
+ const code = sqliteErrorCode(error);
25
+ if (code === undefined)
26
+ return false;
27
+ const primaryResultCode = code & 0xff;
28
+ return primaryResultCode === SQLITE_BUSY || primaryResultCode === SQLITE_LOCKED;
29
+ }
30
+ /** Match only native node:sqlite operational failures discovery may safely report as bounded degradation. */
31
+ export function isSqliteOperationalError(error) {
32
+ const code = sqliteErrorCode(error);
33
+ return code !== undefined && SQLITE_OPERATIONAL_CODES.has(code & 0xff);
34
+ }
35
+ /** Match database bytes that SQLite itself reports as corrupt or not a database. */
36
+ export function isSqliteCorruptionError(error) {
37
+ const code = sqliteErrorCode(error);
38
+ if (code === undefined)
39
+ return false;
40
+ const primaryResultCode = code & 0xff;
41
+ return primaryResultCode === SQLITE_CORRUPT || primaryResultCode === SQLITE_NOTADB;
42
+ }
43
+ /** Match one exact PRIMARY KEY/UNIQUE target; trigger text cannot spoof this check. */
44
+ export function isSqliteUniqueConstraintError(error, targets) {
45
+ const code = sqliteErrorCode(error);
46
+ if (code !== SQLITE_CONSTRAINT_PRIMARYKEY && code !== SQLITE_CONSTRAINT_UNIQUE)
47
+ return false;
48
+ return error instanceof Error && targets.some((target) => error.message === `UNIQUE constraint failed: ${target}`);
49
+ }
50
+ function waitForRetry(attempt) {
51
+ const buffer = new Int32Array(new SharedArrayBuffer(4));
52
+ Atomics.wait(buffer, 0, 0, attempt * 25);
53
+ }
54
+ /** Retry a synchronous operation at most five total attempts, and only for SQLite BUSY/LOCKED. */
55
+ export function withSqliteLockRetry(operation) {
56
+ for (let attempt = 1;; attempt += 1) {
57
+ try {
58
+ return operation();
59
+ }
60
+ catch (error) {
61
+ if (!isSqliteLockError(error))
62
+ throw error;
63
+ if (attempt >= LOCK_ATTEMPT_LIMIT) {
64
+ throw new KiokukoError('BACKPRESSURE', 'SQLite remained busy after bounded retry', { retryAfterSeconds: 1 });
65
+ }
66
+ waitForRetry(attempt);
67
+ }
68
+ }
69
+ }
70
+ //# sourceMappingURL=sqlite-retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-retry.js","sourceRoot":"","sources":["../../src/db/sqlite-retry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { SqliteDatabase } from './adapter.js';
2
+ /**
3
+ * COMMIT threw and the subsequent ROLLBACK also threw. The caller must treat
4
+ * the transaction as possibly committed: compensating durable side effects
5
+ * could otherwise turn an uncertain outcome into split-brain state.
6
+ */
7
+ export declare class TransactionCommitUncertainError extends AggregateError {
8
+ readonly commitError: unknown;
9
+ readonly rollbackError: unknown;
10
+ constructor(commitError: unknown, rollbackError: unknown);
11
+ }
12
+ export declare function rollbackFailedTransaction(database: SqliteDatabase, operationError: unknown): never;
13
+ /** Run a synchronous write transaction with bounded retry for SQLite lock errors only. */
14
+ export declare function withImmediateTransaction<T>(database: SqliteDatabase, operation: () => T): T;
15
+ /** Run synchronous reads against one SQLite snapshot without reserving a writer lock. */
16
+ export declare function withDeferredReadTransaction<T>(database: SqliteDatabase, operation: () => T): T;
17
+ //# sourceMappingURL=transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/db/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAGnD;;;;GAIG;AACH,qBAAa,+BAAgC,SAAQ,cAAc;IACjE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;gBAEpB,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO;CASzD;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,OAAO,GAAG,KAAK,CAUlG;AAeD,0FAA0F;AAC1F,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAY3F;AAED,yFAAyF;AACzF,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAU9F"}
@@ -0,0 +1,68 @@
1
+ import { withSqliteLockRetry } from './sqlite-retry.js';
2
+ /**
3
+ * COMMIT threw and the subsequent ROLLBACK also threw. The caller must treat
4
+ * the transaction as possibly committed: compensating durable side effects
5
+ * could otherwise turn an uncertain outcome into split-brain state.
6
+ */
7
+ export class TransactionCommitUncertainError extends AggregateError {
8
+ commitError;
9
+ rollbackError;
10
+ constructor(commitError, rollbackError) {
11
+ super([commitError, rollbackError], 'Transaction commit outcome is uncertain because commit and rollback both failed');
12
+ this.name = 'TransactionCommitUncertainError';
13
+ this.commitError = commitError;
14
+ this.rollbackError = rollbackError;
15
+ }
16
+ }
17
+ export function rollbackFailedTransaction(database, operationError) {
18
+ try {
19
+ database.exec('ROLLBACK');
20
+ }
21
+ catch (rollbackError) {
22
+ throw new AggregateError([operationError, rollbackError], 'Transaction operation failed and rollback also failed');
23
+ }
24
+ throw operationError;
25
+ }
26
+ function commitOrRollback(database) {
27
+ try {
28
+ database.exec('COMMIT');
29
+ }
30
+ catch (commitError) {
31
+ try {
32
+ database.exec('ROLLBACK');
33
+ }
34
+ catch (rollbackError) {
35
+ throw new TransactionCommitUncertainError(commitError, rollbackError);
36
+ }
37
+ throw commitError;
38
+ }
39
+ }
40
+ /** Run a synchronous write transaction with bounded retry for SQLite lock errors only. */
41
+ export function withImmediateTransaction(database, operation) {
42
+ return withSqliteLockRetry(() => {
43
+ database.exec('BEGIN IMMEDIATE');
44
+ let result;
45
+ try {
46
+ result = operation();
47
+ }
48
+ catch (error) {
49
+ rollbackFailedTransaction(database, error);
50
+ }
51
+ commitOrRollback(database);
52
+ return result;
53
+ });
54
+ }
55
+ /** Run synchronous reads against one SQLite snapshot without reserving a writer lock. */
56
+ export function withDeferredReadTransaction(database, operation) {
57
+ database.exec('BEGIN DEFERRED');
58
+ let result;
59
+ try {
60
+ result = operation();
61
+ }
62
+ catch (error) {
63
+ rollbackFailedTransaction(database, error);
64
+ }
65
+ commitOrRollback(database);
66
+ return result;
67
+ }
68
+ //# sourceMappingURL=transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/db/transaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;;GAIG;AACH,MAAM,OAAO,+BAAgC,SAAQ,cAAc;IACxD,WAAW,CAAU;IACrB,aAAa,CAAU;IAEhC,YAAY,WAAoB,EAAE,aAAsB;QACtD,KAAK,CACH,CAAC,WAAW,EAAE,aAAa,CAAC,EAC5B,iFAAiF,CAClF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;CACF;AAED,MAAM,UAAU,yBAAyB,CAAC,QAAwB,EAAE,cAAuB;IACzF,IAAI,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,aAAa,EAAE,CAAC;QACvB,MAAM,IAAI,cAAc,CACtB,CAAC,cAAc,EAAE,aAAa,CAAC,EAC/B,uDAAuD,CACxD,CAAC;IACJ,CAAC;IACD,MAAM,cAAc,CAAC;AACvB,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAwB;IAChD,IAAI,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,WAAW,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,aAAa,EAAE,CAAC;YACvB,MAAM,IAAI,+BAA+B,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,WAAW,CAAC;IACpB,CAAC;AACH,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,wBAAwB,CAAI,QAAwB,EAAE,SAAkB;IACtF,OAAO,mBAAmB,CAAC,GAAG,EAAE;QAC9B,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjC,IAAI,MAAS,CAAC;QACd,IAAI,CAAC;YACH,MAAM,GAAG,SAAS,EAAE,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,yBAAyB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;QACD,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC3B,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,2BAA2B,CAAI,QAAwB,EAAE,SAAkB;IACzF,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAChC,IAAI,MAAS,CAAC;IACd,IAAI,CAAC;QACH,MAAM,GAAG,SAAS,EAAE,CAAC;IACvB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,yBAAyB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IACD,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC3B,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { SqliteDatabase } from '../db/adapter.js';
2
+ import { type ConnectionOptions } from '../db/connection.js';
3
+ import { KiokukoError } from '../errors.js';
4
+ import { type SqliteVecLoader } from './sqlite-vec-loader.js';
5
+ import type { EmbeddingConfig, VectorSearchBackend } from './types.js';
6
+ export type EmbeddingDatabaseOpener = (databasePath: string, options?: ConnectionOptions) => SqliteDatabase | PromiseLike<SqliteDatabase>;
7
+ export interface OpenEmbeddingDatabaseOptions {
8
+ readonly config?: EmbeddingConfig;
9
+ readonly openDatabase?: EmbeddingDatabaseOpener;
10
+ readonly createLoader?: () => Promise<SqliteVecLoader | null>;
11
+ readonly backend?: VectorSearchBackend;
12
+ }
13
+ export interface OpenEmbeddingDatabaseResult {
14
+ readonly database: SqliteDatabase;
15
+ readonly backend: VectorSearchBackend | undefined;
16
+ }
17
+ /** A forced backend could not be selected; doctor may convert this to a finding. */
18
+ export declare class EmbeddingBackendUnavailableError extends KiokukoError {
19
+ constructor();
20
+ }
21
+ /**
22
+ * Open one owned database connection and select the backend that is actually
23
+ * usable on that connection. Only the package-owned sqlite-vec loader can
24
+ * create an extension-enabled connection.
25
+ */
26
+ export declare function openEmbeddingDatabase(databasePath: string, options: OpenEmbeddingDatabaseOptions): Promise<OpenEmbeddingDatabaseResult>;
27
+ //# sourceMappingURL=backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/embedding/backend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAsC,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGrF,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,MAAM,uBAAuB,GAAG,CACpC,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,iBAAiB,KACxB,cAAc,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;AAElD,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAC9D,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC;CACxC;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,GAAG,SAAS,CAAC;CACnD;AAED,oFAAoF;AACpF,qBAAa,gCAAiC,SAAQ,YAAY;;CAKjE;AAMD;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,2BAA2B,CAAC,CAyCtC"}
@@ -0,0 +1,67 @@
1
+ import { openConnection, SqliteVecLoadError } from '../db/connection.js';
2
+ import { KiokukoError } from '../errors.js';
3
+ import { JavaScriptVectorSearchBackend } from './javascript-backend.js';
4
+ import { createSqliteVecLoader } from './sqlite-vec-loader.js';
5
+ import { SqliteVecVectorSearchBackend } from './sqlite-vec-backend.js';
6
+ import { defaultEmbeddingConfig, readPersistedEmbeddingSettings } from './settings.js';
7
+ /** A forced backend could not be selected; doctor may convert this to a finding. */
8
+ export class EmbeddingBackendUnavailableError extends KiokukoError {
9
+ constructor() {
10
+ super('SERVICE_UNAVAILABLE', 'The configured sqlite-vec backend is unavailable');
11
+ this.name = 'EmbeddingBackendUnavailableError';
12
+ }
13
+ }
14
+ function forcedSqliteVecUnavailable() {
15
+ throw new EmbeddingBackendUnavailableError();
16
+ }
17
+ /**
18
+ * Open one owned database connection and select the backend that is actually
19
+ * usable on that connection. Only the package-owned sqlite-vec loader can
20
+ * create an extension-enabled connection.
21
+ */
22
+ export async function openEmbeddingDatabase(databasePath, options) {
23
+ const openDatabase = options.openDatabase ?? openConnection;
24
+ if (options.backend !== undefined) {
25
+ return { database: await openDatabase(databasePath), backend: options.backend };
26
+ }
27
+ let config = options.config;
28
+ if (config === undefined) {
29
+ const probe = await openDatabase(databasePath);
30
+ try {
31
+ try {
32
+ config = readPersistedEmbeddingSettings(probe);
33
+ }
34
+ catch {
35
+ config = defaultEmbeddingConfig();
36
+ }
37
+ }
38
+ finally {
39
+ probe.close();
40
+ }
41
+ }
42
+ if (config.mode === 'off') {
43
+ return { database: await openDatabase(databasePath), backend: undefined };
44
+ }
45
+ const javascriptBackend = new JavaScriptVectorSearchBackend();
46
+ if (config.vectorBackend === 'javascript') {
47
+ return { database: await openDatabase(databasePath), backend: javascriptBackend };
48
+ }
49
+ const loader = await (options.createLoader ?? createSqliteVecLoader)();
50
+ if (loader === null) {
51
+ if (config.vectorBackend === 'sqlite-vec')
52
+ forcedSqliteVecUnavailable();
53
+ return { database: await openDatabase(databasePath), backend: javascriptBackend };
54
+ }
55
+ try {
56
+ const database = await openDatabase(databasePath, { sqliteVecLoader: loader });
57
+ return { database, backend: new SqliteVecVectorSearchBackend() };
58
+ }
59
+ catch (error) {
60
+ if (!(error instanceof SqliteVecLoadError))
61
+ throw error;
62
+ if (config.vectorBackend === 'sqlite-vec')
63
+ forcedSqliteVecUnavailable();
64
+ return { database: await openDatabase(databasePath), backend: javascriptBackend };
65
+ }
66
+ }
67
+ //# sourceMappingURL=backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/embedding/backend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { EmbeddingConfig, EnabledEmbeddingConfig } from './types.js';
2
+ /** Normalize and validate an embedding endpoint without retaining credentials. */
3
+ export declare function normalizeEmbeddingBaseUrl(value: string, allowRemote: boolean): string;
4
+ export declare function isEnabledEmbeddingConfig(config: EmbeddingConfig): config is EnabledEmbeddingConfig;
5
+ export declare function requireEnabledEmbeddingConfig(config: EmbeddingConfig): EnabledEmbeddingConfig;
6
+ export declare function parseEmbeddingConfig(environment?: NodeJS.ProcessEnv): EmbeddingConfig;
7
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/embedding/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAwC,sBAAsB,EAA2B,MAAM,YAAY,CAAC;AAwDzI,kFAAkF;AAClF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,CAoBrF;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM,IAAI,sBAAsB,CAMlG;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,eAAe,GAAG,sBAAsB,CAG7F;AAED,wBAAgB,oBAAoB,CAAC,WAAW,GAAE,MAAM,CAAC,UAAwB,GAAG,eAAe,CAgClG"}
@@ -0,0 +1,125 @@
1
+ import { KiokukoError } from '../errors.js';
2
+ const DEFAULT_TIMEOUT_MS = 30_000;
3
+ const DEFAULT_BATCH_SIZE = 16;
4
+ const MAX_MODEL_LENGTH = 256;
5
+ const MAX_API_KEY_LENGTH = 4_096;
6
+ const LOOPBACK_HOSTS = new Set(['localhost', '127.0.0.1', '::1']);
7
+ function invalid(message) {
8
+ throw new KiokukoError('VALIDATION_ERROR', message);
9
+ }
10
+ function enumValue(value, fallback, allowed, field) {
11
+ const selected = value === undefined ? fallback : value;
12
+ if (!allowed.includes(selected))
13
+ invalid(`${field} has an unsupported value`);
14
+ return selected;
15
+ }
16
+ function boundedText(value, field, maxLength) {
17
+ const normalized = value.normalize('NFKC').trim();
18
+ if (normalized.length === 0 || normalized.length > maxLength || /[\u0000-\u001f\u007f]/u.test(normalized)) {
19
+ invalid(`${field} is invalid`);
20
+ }
21
+ return normalized;
22
+ }
23
+ function optionalText(value, field, maxLength) {
24
+ return value === undefined || value.length === 0 ? undefined : boundedText(value, field, maxLength);
25
+ }
26
+ function integerValue(value, fallback, minimum, maximum, field) {
27
+ if (value === undefined)
28
+ return fallback;
29
+ if (!/^\d+$/u.test(value))
30
+ invalid(`${field} must be an integer in the supported range`);
31
+ const parsed = Number(value);
32
+ if (!Number.isSafeInteger(parsed) || parsed < minimum || parsed > maximum) {
33
+ invalid(`${field} must be an integer in the supported range`);
34
+ }
35
+ return parsed;
36
+ }
37
+ function distanceCeilingValue(value) {
38
+ if (value === undefined)
39
+ return undefined;
40
+ if (!/^(?:\d+\.?\d*|\.\d+)$/u.test(value))
41
+ invalid('KIOKUKO_EMBEDDING_DISTANCE_CEILING is invalid');
42
+ const parsed = Number(value);
43
+ if (!Number.isFinite(parsed) || parsed <= 0 || parsed >= 2) {
44
+ invalid('KIOKUKO_EMBEDDING_DISTANCE_CEILING is invalid');
45
+ }
46
+ return parsed;
47
+ }
48
+ function booleanValue(value, fallback, field) {
49
+ if (value === undefined)
50
+ return fallback;
51
+ if (value !== 'true' && value !== 'false')
52
+ invalid(`${field} must be true or false`);
53
+ return value === 'true';
54
+ }
55
+ /** Normalize and validate an embedding endpoint without retaining credentials. */
56
+ export function normalizeEmbeddingBaseUrl(value, allowRemote) {
57
+ const input = boundedText(value, 'KIOKUKO_EMBEDDING_BASE_URL', 2_048);
58
+ let url;
59
+ try {
60
+ url = new URL(input);
61
+ }
62
+ catch {
63
+ invalid('KIOKUKO_EMBEDDING_BASE_URL must be an absolute URL');
64
+ }
65
+ if (url.username !== '' || url.password !== '' || url.search !== '' || url.hash !== '') {
66
+ invalid('KIOKUKO_EMBEDDING_BASE_URL must not contain credentials, query, or fragment data');
67
+ }
68
+ const hostname = url.hostname.replace(/^\[|\]$/gu, '').toLowerCase();
69
+ if (url.protocol === 'http:') {
70
+ if (!LOOPBACK_HOSTS.has(hostname))
71
+ invalid('HTTP embedding endpoints must use a loopback host');
72
+ }
73
+ else if (url.protocol === 'https:') {
74
+ if (!allowRemote)
75
+ invalid('HTTPS embedding endpoints require explicit remote opt-in');
76
+ }
77
+ else {
78
+ invalid('KIOKUKO_EMBEDDING_BASE_URL must use HTTP or HTTPS');
79
+ }
80
+ return url.toString();
81
+ }
82
+ export function isEnabledEmbeddingConfig(config) {
83
+ return config.mode !== 'off'
84
+ && config.baseUrl !== undefined
85
+ && config.model !== undefined
86
+ && config.dimensions !== undefined
87
+ && config.distanceCeiling !== undefined;
88
+ }
89
+ export function requireEnabledEmbeddingConfig(config) {
90
+ if (!isEnabledEmbeddingConfig(config))
91
+ invalid('Embedding configuration is disabled or incomplete');
92
+ return config;
93
+ }
94
+ export function parseEmbeddingConfig(environment = process.env) {
95
+ const mode = enumValue(environment.KIOKUKO_EMBEDDINGS, 'off', ['off', 'optional', 'required'], 'KIOKUKO_EMBEDDINGS');
96
+ const provider = enumValue(environment.KIOKUKO_EMBEDDING_PROVIDER, 'openai-compatible', ['openai-compatible'], 'KIOKUKO_EMBEDDING_PROVIDER');
97
+ const allowRemote = booleanValue(environment.KIOKUKO_EMBEDDING_ALLOW_REMOTE, false, 'KIOKUKO_EMBEDDING_ALLOW_REMOTE');
98
+ const vectorBackend = enumValue(environment.KIOKUKO_VECTOR_BACKEND, 'auto', ['auto', 'javascript', 'sqlite-vec'], 'KIOKUKO_VECTOR_BACKEND');
99
+ const baseUrl = environment.KIOKUKO_EMBEDDING_BASE_URL === undefined
100
+ ? undefined
101
+ : normalizeEmbeddingBaseUrl(environment.KIOKUKO_EMBEDDING_BASE_URL, allowRemote);
102
+ const model = optionalText(environment.KIOKUKO_EMBEDDING_MODEL, 'KIOKUKO_EMBEDDING_MODEL', MAX_MODEL_LENGTH);
103
+ const dimensions = integerValue(environment.KIOKUKO_EMBEDDING_DIMENSIONS, 0, 2, 8_192, 'KIOKUKO_EMBEDDING_DIMENSIONS');
104
+ const configuredDistanceCeiling = distanceCeilingValue(environment.KIOKUKO_EMBEDDING_DISTANCE_CEILING);
105
+ const timeoutMs = integerValue(environment.KIOKUKO_EMBEDDING_TIMEOUT_MS, DEFAULT_TIMEOUT_MS, 100, 120_000, 'KIOKUKO_EMBEDDING_TIMEOUT_MS');
106
+ const batchSize = integerValue(environment.KIOKUKO_EMBEDDING_BATCH_SIZE, DEFAULT_BATCH_SIZE, 1, 64, 'KIOKUKO_EMBEDDING_BATCH_SIZE');
107
+ const apiKey = optionalText(environment.KIOKUKO_EMBEDDING_API_KEY, 'KIOKUKO_EMBEDDING_API_KEY', MAX_API_KEY_LENGTH);
108
+ if (mode !== 'off' && (baseUrl === undefined || model === undefined || dimensions === 0 || configuredDistanceCeiling === undefined)) {
109
+ invalid('Enabled embeddings require base URL, model, dimensions, and distance ceiling');
110
+ }
111
+ return {
112
+ mode,
113
+ provider,
114
+ ...(baseUrl === undefined ? {} : { baseUrl }),
115
+ ...(model === undefined ? {} : { model }),
116
+ ...(dimensions === 0 ? {} : { dimensions }),
117
+ ...(configuredDistanceCeiling === undefined ? {} : { distanceCeiling: configuredDistanceCeiling }),
118
+ ...(apiKey === undefined ? {} : { apiKey }),
119
+ allowRemote,
120
+ vectorBackend,
121
+ timeoutMs,
122
+ batchSize,
123
+ };
124
+ }
125
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/embedding/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { SqliteDatabase } from '../db/adapter.js';
2
+ import type { EmbeddingConfig, EmbeddingMode, VectorSearchBackend } from './types.js';
3
+ export interface EmbeddingStatus {
4
+ readonly mode: EmbeddingMode;
5
+ readonly activeProfileId: string | null;
6
+ readonly providerKind: string | null;
7
+ readonly model: string | null;
8
+ readonly dimensions: number | null;
9
+ readonly distanceMetric: string | null;
10
+ readonly distanceCeiling: number | null;
11
+ readonly backend: string | null;
12
+ readonly backendVersion: string | null;
13
+ readonly eligibleEntries: number;
14
+ readonly readyVectors: number;
15
+ readonly staleVectors: number;
16
+ readonly missingVectors: number;
17
+ readonly pendingJobs: number;
18
+ readonly leasedJobs: number;
19
+ readonly failedJobs: number;
20
+ readonly blockedJobs: number;
21
+ readonly coverageRatio: number;
22
+ readonly queryCacheRows: number;
23
+ }
24
+ export interface EmbeddingHealth {
25
+ readonly status: EmbeddingStatus;
26
+ readonly check: {
27
+ readonly ok: boolean;
28
+ readonly count: number;
29
+ readonly detail: string;
30
+ };
31
+ }
32
+ export declare function readEmbeddingStatus(database: SqliteDatabase, config?: EmbeddingConfig, backend?: VectorSearchBackend): EmbeddingStatus;
33
+ export declare function inspectEmbeddingHealth(database: SqliteDatabase, environment?: NodeJS.ProcessEnv | EmbeddingConfig, backend?: VectorSearchBackend): EmbeddingHealth;
34
+ //# sourceMappingURL=diagnostics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics.d.ts","sourceRoot":"","sources":["../../src/embedding/diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAa,MAAM,kBAAkB,CAAC;AAMlE,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAoB,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAiBxG,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;QACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AA+GD,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,cAAc,EACxB,MAAM,GAAE,eAA0D,EAClE,OAAO,CAAC,EAAE,mBAAmB,GAC5B,eAAe,CAOjB;AAwGD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,cAAc,EACxB,WAAW,GAAE,MAAM,CAAC,UAAU,GAAG,eAA0D,EAC3F,OAAO,CAAC,EAAE,mBAAmB,GAC5B,eAAe,CAmDjB"}