@miller-tech/uap 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 (660) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +888 -0
  3. package/dist/analyzers/index.d.ts +3 -0
  4. package/dist/analyzers/index.d.ts.map +1 -0
  5. package/dist/analyzers/index.js +684 -0
  6. package/dist/analyzers/index.js.map +1 -0
  7. package/dist/benchmarks/agents/naive-agent.d.ts +60 -0
  8. package/dist/benchmarks/agents/naive-agent.d.ts.map +1 -0
  9. package/dist/benchmarks/agents/naive-agent.js +144 -0
  10. package/dist/benchmarks/agents/naive-agent.js.map +1 -0
  11. package/dist/benchmarks/agents/uap-agent.d.ts +167 -0
  12. package/dist/benchmarks/agents/uap-agent.d.ts.map +1 -0
  13. package/dist/benchmarks/agents/uap-agent.js +437 -0
  14. package/dist/benchmarks/agents/uap-agent.js.map +1 -0
  15. package/dist/benchmarks/benchmark.d.ts +328 -0
  16. package/dist/benchmarks/benchmark.d.ts.map +1 -0
  17. package/dist/benchmarks/benchmark.js +112 -0
  18. package/dist/benchmarks/benchmark.js.map +1 -0
  19. package/dist/benchmarks/execution-verifier.d.ts +41 -0
  20. package/dist/benchmarks/execution-verifier.d.ts.map +1 -0
  21. package/dist/benchmarks/execution-verifier.js +340 -0
  22. package/dist/benchmarks/execution-verifier.js.map +1 -0
  23. package/dist/benchmarks/hierarchical-prompting.d.ts +37 -0
  24. package/dist/benchmarks/hierarchical-prompting.d.ts.map +1 -0
  25. package/dist/benchmarks/hierarchical-prompting.js +246 -0
  26. package/dist/benchmarks/hierarchical-prompting.js.map +1 -0
  27. package/dist/benchmarks/improved-benchmark.d.ts +89 -0
  28. package/dist/benchmarks/improved-benchmark.d.ts.map +1 -0
  29. package/dist/benchmarks/improved-benchmark.js +585 -0
  30. package/dist/benchmarks/improved-benchmark.js.map +1 -0
  31. package/dist/benchmarks/index.d.ts +11 -0
  32. package/dist/benchmarks/index.d.ts.map +1 -0
  33. package/dist/benchmarks/index.js +11 -0
  34. package/dist/benchmarks/index.js.map +1 -0
  35. package/dist/benchmarks/model-integration.d.ts +111 -0
  36. package/dist/benchmarks/model-integration.d.ts.map +1 -0
  37. package/dist/benchmarks/model-integration.js +904 -0
  38. package/dist/benchmarks/model-integration.js.map +1 -0
  39. package/dist/benchmarks/multi-turn-agent.d.ts +44 -0
  40. package/dist/benchmarks/multi-turn-agent.d.ts.map +1 -0
  41. package/dist/benchmarks/multi-turn-agent.js +254 -0
  42. package/dist/benchmarks/multi-turn-agent.js.map +1 -0
  43. package/dist/benchmarks/multi-turn-loop.d.ts +57 -0
  44. package/dist/benchmarks/multi-turn-loop.d.ts.map +1 -0
  45. package/dist/benchmarks/multi-turn-loop.js +167 -0
  46. package/dist/benchmarks/multi-turn-loop.js.map +1 -0
  47. package/dist/benchmarks/tasks.d.ts +19 -0
  48. package/dist/benchmarks/tasks.d.ts.map +1 -0
  49. package/dist/benchmarks/tasks.js +435 -0
  50. package/dist/benchmarks/tasks.js.map +1 -0
  51. package/dist/bin/cli.d.ts +3 -0
  52. package/dist/bin/cli.d.ts.map +1 -0
  53. package/dist/bin/cli.js +546 -0
  54. package/dist/bin/cli.js.map +1 -0
  55. package/dist/bin/llama-server-optimize.d.ts +18 -0
  56. package/dist/bin/llama-server-optimize.d.ts.map +1 -0
  57. package/dist/bin/llama-server-optimize.js +708 -0
  58. package/dist/bin/llama-server-optimize.js.map +1 -0
  59. package/dist/bin/policy.d.ts +3 -0
  60. package/dist/bin/policy.d.ts.map +1 -0
  61. package/dist/bin/policy.js +143 -0
  62. package/dist/bin/policy.js.map +1 -0
  63. package/dist/bin/tool-calls.d.ts +3 -0
  64. package/dist/bin/tool-calls.d.ts.map +1 -0
  65. package/dist/bin/tool-calls.js +4 -0
  66. package/dist/bin/tool-calls.js.map +1 -0
  67. package/dist/browser/index.d.ts +2 -0
  68. package/dist/browser/index.d.ts.map +1 -0
  69. package/dist/browser/index.js +2 -0
  70. package/dist/browser/index.js.map +1 -0
  71. package/dist/browser/web-browser.d.ts +30 -0
  72. package/dist/browser/web-browser.d.ts.map +1 -0
  73. package/dist/browser/web-browser.js +93 -0
  74. package/dist/browser/web-browser.js.map +1 -0
  75. package/dist/cli/agent.d.ts +20 -0
  76. package/dist/cli/agent.d.ts.map +1 -0
  77. package/dist/cli/agent.js +474 -0
  78. package/dist/cli/agent.js.map +1 -0
  79. package/dist/cli/analyze.d.ts +7 -0
  80. package/dist/cli/analyze.d.ts.map +1 -0
  81. package/dist/cli/analyze.js +103 -0
  82. package/dist/cli/analyze.js.map +1 -0
  83. package/dist/cli/completion-gates.d.ts +51 -0
  84. package/dist/cli/completion-gates.d.ts.map +1 -0
  85. package/dist/cli/completion-gates.js +201 -0
  86. package/dist/cli/completion-gates.js.map +1 -0
  87. package/dist/cli/compliance.d.ts +8 -0
  88. package/dist/cli/compliance.d.ts.map +1 -0
  89. package/dist/cli/compliance.js +509 -0
  90. package/dist/cli/compliance.js.map +1 -0
  91. package/dist/cli/coord.d.ts +7 -0
  92. package/dist/cli/coord.d.ts.map +1 -0
  93. package/dist/cli/coord.js +138 -0
  94. package/dist/cli/coord.js.map +1 -0
  95. package/dist/cli/dashboard.d.ts +21 -0
  96. package/dist/cli/dashboard.d.ts.map +1 -0
  97. package/dist/cli/dashboard.js +1508 -0
  98. package/dist/cli/dashboard.js.map +1 -0
  99. package/dist/cli/deploy.d.ts +19 -0
  100. package/dist/cli/deploy.d.ts.map +1 -0
  101. package/dist/cli/deploy.js +387 -0
  102. package/dist/cli/deploy.js.map +1 -0
  103. package/dist/cli/droids.d.ts +9 -0
  104. package/dist/cli/droids.d.ts.map +1 -0
  105. package/dist/cli/droids.js +227 -0
  106. package/dist/cli/droids.js.map +1 -0
  107. package/dist/cli/generate.d.ts +17 -0
  108. package/dist/cli/generate.d.ts.map +1 -0
  109. package/dist/cli/generate.js +432 -0
  110. package/dist/cli/generate.js.map +1 -0
  111. package/dist/cli/hooks.d.ts +9 -0
  112. package/dist/cli/hooks.d.ts.map +1 -0
  113. package/dist/cli/hooks.js +464 -0
  114. package/dist/cli/hooks.js.map +1 -0
  115. package/dist/cli/init.d.ts +12 -0
  116. package/dist/cli/init.d.ts.map +1 -0
  117. package/dist/cli/init.js +364 -0
  118. package/dist/cli/init.js.map +1 -0
  119. package/dist/cli/mcp-router.d.ts +16 -0
  120. package/dist/cli/mcp-router.d.ts.map +1 -0
  121. package/dist/cli/mcp-router.js +143 -0
  122. package/dist/cli/mcp-router.js.map +1 -0
  123. package/dist/cli/memory.d.ts +24 -0
  124. package/dist/cli/memory.d.ts.map +1 -0
  125. package/dist/cli/memory.js +885 -0
  126. package/dist/cli/memory.js.map +1 -0
  127. package/dist/cli/model.d.ts +15 -0
  128. package/dist/cli/model.d.ts.map +1 -0
  129. package/dist/cli/model.js +290 -0
  130. package/dist/cli/model.js.map +1 -0
  131. package/dist/cli/patterns.d.ts +26 -0
  132. package/dist/cli/patterns.d.ts.map +1 -0
  133. package/dist/cli/patterns.js +862 -0
  134. package/dist/cli/patterns.js.map +1 -0
  135. package/dist/cli/rtk-validation.d.ts +9 -0
  136. package/dist/cli/rtk-validation.d.ts.map +1 -0
  137. package/dist/cli/rtk-validation.js +9 -0
  138. package/dist/cli/rtk-validation.js.map +1 -0
  139. package/dist/cli/rtk.d.ts +34 -0
  140. package/dist/cli/rtk.d.ts.map +1 -0
  141. package/dist/cli/rtk.js +401 -0
  142. package/dist/cli/rtk.js.map +1 -0
  143. package/dist/cli/schema-diff.d.ts +7 -0
  144. package/dist/cli/schema-diff.d.ts.map +1 -0
  145. package/dist/cli/schema-diff.js +11 -0
  146. package/dist/cli/schema-diff.js.map +1 -0
  147. package/dist/cli/setup-mcp-router.d.ts +8 -0
  148. package/dist/cli/setup-mcp-router.d.ts.map +1 -0
  149. package/dist/cli/setup-mcp-router.js +163 -0
  150. package/dist/cli/setup-mcp-router.js.map +1 -0
  151. package/dist/cli/setup-wizard.d.ts +2 -0
  152. package/dist/cli/setup-wizard.d.ts.map +1 -0
  153. package/dist/cli/setup-wizard.js +806 -0
  154. package/dist/cli/setup-wizard.js.map +1 -0
  155. package/dist/cli/setup.d.ts +15 -0
  156. package/dist/cli/setup.d.ts.map +1 -0
  157. package/dist/cli/setup.js +154 -0
  158. package/dist/cli/setup.js.map +1 -0
  159. package/dist/cli/sync.d.ts +8 -0
  160. package/dist/cli/sync.d.ts.map +1 -0
  161. package/dist/cli/sync.js +395 -0
  162. package/dist/cli/sync.js.map +1 -0
  163. package/dist/cli/task.d.ts +33 -0
  164. package/dist/cli/task.d.ts.map +1 -0
  165. package/dist/cli/task.js +672 -0
  166. package/dist/cli/task.js.map +1 -0
  167. package/dist/cli/tool-calls.d.ts +20 -0
  168. package/dist/cli/tool-calls.d.ts.map +1 -0
  169. package/dist/cli/tool-calls.js +605 -0
  170. package/dist/cli/tool-calls.js.map +1 -0
  171. package/dist/cli/uap.d.ts +10 -0
  172. package/dist/cli/uap.d.ts.map +1 -0
  173. package/dist/cli/uap.js +398 -0
  174. package/dist/cli/uap.js.map +1 -0
  175. package/dist/cli/update.d.ts +10 -0
  176. package/dist/cli/update.d.ts.map +1 -0
  177. package/dist/cli/update.js +300 -0
  178. package/dist/cli/update.js.map +1 -0
  179. package/dist/cli/visualize.d.ts +77 -0
  180. package/dist/cli/visualize.d.ts.map +1 -0
  181. package/dist/cli/visualize.js +287 -0
  182. package/dist/cli/visualize.js.map +1 -0
  183. package/dist/cli/worktree.d.ts +9 -0
  184. package/dist/cli/worktree.d.ts.map +1 -0
  185. package/dist/cli/worktree.js +213 -0
  186. package/dist/cli/worktree.js.map +1 -0
  187. package/dist/coordination/adaptive-patterns.d.ts +65 -0
  188. package/dist/coordination/adaptive-patterns.d.ts.map +1 -0
  189. package/dist/coordination/adaptive-patterns.js +108 -0
  190. package/dist/coordination/adaptive-patterns.js.map +1 -0
  191. package/dist/coordination/auto-agent.d.ts +82 -0
  192. package/dist/coordination/auto-agent.d.ts.map +1 -0
  193. package/dist/coordination/auto-agent.js +145 -0
  194. package/dist/coordination/auto-agent.js.map +1 -0
  195. package/dist/coordination/capability-router.d.ts +79 -0
  196. package/dist/coordination/capability-router.d.ts.map +1 -0
  197. package/dist/coordination/capability-router.js +334 -0
  198. package/dist/coordination/capability-router.js.map +1 -0
  199. package/dist/coordination/database.d.ts +13 -0
  200. package/dist/coordination/database.d.ts.map +1 -0
  201. package/dist/coordination/database.js +136 -0
  202. package/dist/coordination/database.js.map +1 -0
  203. package/dist/coordination/deploy-batcher.d.ts +122 -0
  204. package/dist/coordination/deploy-batcher.d.ts.map +1 -0
  205. package/dist/coordination/deploy-batcher.js +718 -0
  206. package/dist/coordination/deploy-batcher.js.map +1 -0
  207. package/dist/coordination/droid-validator.d.ts +59 -0
  208. package/dist/coordination/droid-validator.d.ts.map +1 -0
  209. package/dist/coordination/droid-validator.js +142 -0
  210. package/dist/coordination/droid-validator.js.map +1 -0
  211. package/dist/coordination/index.d.ts +10 -0
  212. package/dist/coordination/index.d.ts.map +1 -0
  213. package/dist/coordination/index.js +10 -0
  214. package/dist/coordination/index.js.map +1 -0
  215. package/dist/coordination/pattern-router.d.ts +50 -0
  216. package/dist/coordination/pattern-router.d.ts.map +1 -0
  217. package/dist/coordination/pattern-router.js +118 -0
  218. package/dist/coordination/pattern-router.js.map +1 -0
  219. package/dist/coordination/service.d.ts +81 -0
  220. package/dist/coordination/service.d.ts.map +1 -0
  221. package/dist/coordination/service.js +619 -0
  222. package/dist/coordination/service.js.map +1 -0
  223. package/dist/coordination/worktree-enforcer.d.ts +22 -0
  224. package/dist/coordination/worktree-enforcer.d.ts.map +1 -0
  225. package/dist/coordination/worktree-enforcer.js +71 -0
  226. package/dist/coordination/worktree-enforcer.js.map +1 -0
  227. package/dist/generators/claude-md.d.ts +3 -0
  228. package/dist/generators/claude-md.d.ts.map +1 -0
  229. package/dist/generators/claude-md.js +1020 -0
  230. package/dist/generators/claude-md.js.map +1 -0
  231. package/dist/generators/template-loader.d.ts +105 -0
  232. package/dist/generators/template-loader.d.ts.map +1 -0
  233. package/dist/generators/template-loader.js +291 -0
  234. package/dist/generators/template-loader.js.map +1 -0
  235. package/dist/index.d.ts +49 -0
  236. package/dist/index.d.ts.map +1 -0
  237. package/dist/index.js +63 -0
  238. package/dist/index.js.map +1 -0
  239. package/dist/mcp-router/config/parser.d.ts +9 -0
  240. package/dist/mcp-router/config/parser.d.ts.map +1 -0
  241. package/dist/mcp-router/config/parser.js +174 -0
  242. package/dist/mcp-router/config/parser.js.map +1 -0
  243. package/dist/mcp-router/executor/client.d.ts +31 -0
  244. package/dist/mcp-router/executor/client.d.ts.map +1 -0
  245. package/dist/mcp-router/executor/client.js +189 -0
  246. package/dist/mcp-router/executor/client.js.map +1 -0
  247. package/dist/mcp-router/index.d.ts +22 -0
  248. package/dist/mcp-router/index.d.ts.map +1 -0
  249. package/dist/mcp-router/index.js +18 -0
  250. package/dist/mcp-router/index.js.map +1 -0
  251. package/dist/mcp-router/output-compressor.d.ts +26 -0
  252. package/dist/mcp-router/output-compressor.d.ts.map +1 -0
  253. package/dist/mcp-router/output-compressor.js +236 -0
  254. package/dist/mcp-router/output-compressor.js.map +1 -0
  255. package/dist/mcp-router/search/fuzzy.d.ts +26 -0
  256. package/dist/mcp-router/search/fuzzy.d.ts.map +1 -0
  257. package/dist/mcp-router/search/fuzzy.js +94 -0
  258. package/dist/mcp-router/search/fuzzy.js.map +1 -0
  259. package/dist/mcp-router/server.d.ts +50 -0
  260. package/dist/mcp-router/server.d.ts.map +1 -0
  261. package/dist/mcp-router/server.js +229 -0
  262. package/dist/mcp-router/server.js.map +1 -0
  263. package/dist/mcp-router/session-stats.d.ts +37 -0
  264. package/dist/mcp-router/session-stats.d.ts.map +1 -0
  265. package/dist/mcp-router/session-stats.js +56 -0
  266. package/dist/mcp-router/session-stats.js.map +1 -0
  267. package/dist/mcp-router/tools/discover.d.ts +37 -0
  268. package/dist/mcp-router/tools/discover.d.ts.map +1 -0
  269. package/dist/mcp-router/tools/discover.js +65 -0
  270. package/dist/mcp-router/tools/discover.js.map +1 -0
  271. package/dist/mcp-router/tools/execute.d.ts +43 -0
  272. package/dist/mcp-router/tools/execute.d.ts.map +1 -0
  273. package/dist/mcp-router/tools/execute.js +144 -0
  274. package/dist/mcp-router/tools/execute.js.map +1 -0
  275. package/dist/mcp-router/types.d.ts +62 -0
  276. package/dist/mcp-router/types.d.ts.map +1 -0
  277. package/dist/mcp-router/types.js +6 -0
  278. package/dist/mcp-router/types.js.map +1 -0
  279. package/dist/memory/adaptive-context.d.ts +149 -0
  280. package/dist/memory/adaptive-context.d.ts.map +1 -0
  281. package/dist/memory/adaptive-context.js +1095 -0
  282. package/dist/memory/adaptive-context.js.map +1 -0
  283. package/dist/memory/agent-scoped-memory.d.ts +67 -0
  284. package/dist/memory/agent-scoped-memory.d.ts.map +1 -0
  285. package/dist/memory/agent-scoped-memory.js +126 -0
  286. package/dist/memory/agent-scoped-memory.js.map +1 -0
  287. package/dist/memory/ambiguity-detector.d.ts +54 -0
  288. package/dist/memory/ambiguity-detector.d.ts.map +1 -0
  289. package/dist/memory/ambiguity-detector.js +401 -0
  290. package/dist/memory/ambiguity-detector.js.map +1 -0
  291. package/dist/memory/backends/base.d.ts +18 -0
  292. package/dist/memory/backends/base.d.ts.map +1 -0
  293. package/dist/memory/backends/base.js +2 -0
  294. package/dist/memory/backends/base.js.map +1 -0
  295. package/dist/memory/backends/factory.d.ts +4 -0
  296. package/dist/memory/backends/factory.d.ts.map +1 -0
  297. package/dist/memory/backends/factory.js +53 -0
  298. package/dist/memory/backends/factory.js.map +1 -0
  299. package/dist/memory/backends/github.d.ts +27 -0
  300. package/dist/memory/backends/github.d.ts.map +1 -0
  301. package/dist/memory/backends/github.js +134 -0
  302. package/dist/memory/backends/github.js.map +1 -0
  303. package/dist/memory/backends/qdrant-cloud.d.ts +32 -0
  304. package/dist/memory/backends/qdrant-cloud.d.ts.map +1 -0
  305. package/dist/memory/backends/qdrant-cloud.js +167 -0
  306. package/dist/memory/backends/qdrant-cloud.js.map +1 -0
  307. package/dist/memory/context-compressor.d.ts +116 -0
  308. package/dist/memory/context-compressor.d.ts.map +1 -0
  309. package/dist/memory/context-compressor.js +430 -0
  310. package/dist/memory/context-compressor.js.map +1 -0
  311. package/dist/memory/context-pruner.d.ts +55 -0
  312. package/dist/memory/context-pruner.d.ts.map +1 -0
  313. package/dist/memory/context-pruner.js +85 -0
  314. package/dist/memory/context-pruner.js.map +1 -0
  315. package/dist/memory/correction-propagator.d.ts +44 -0
  316. package/dist/memory/correction-propagator.d.ts.map +1 -0
  317. package/dist/memory/correction-propagator.js +156 -0
  318. package/dist/memory/correction-propagator.js.map +1 -0
  319. package/dist/memory/daily-log.d.ts +67 -0
  320. package/dist/memory/daily-log.d.ts.map +1 -0
  321. package/dist/memory/daily-log.js +143 -0
  322. package/dist/memory/daily-log.js.map +1 -0
  323. package/dist/memory/dynamic-retrieval.d.ts +112 -0
  324. package/dist/memory/dynamic-retrieval.d.ts.map +1 -0
  325. package/dist/memory/dynamic-retrieval.js +908 -0
  326. package/dist/memory/dynamic-retrieval.js.map +1 -0
  327. package/dist/memory/embeddings.d.ts +172 -0
  328. package/dist/memory/embeddings.d.ts.map +1 -0
  329. package/dist/memory/embeddings.js +780 -0
  330. package/dist/memory/embeddings.js.map +1 -0
  331. package/dist/memory/generic-uap-patterns.d.ts +7 -0
  332. package/dist/memory/generic-uap-patterns.d.ts.map +1 -0
  333. package/dist/memory/generic-uap-patterns.js +43 -0
  334. package/dist/memory/generic-uap-patterns.js.map +1 -0
  335. package/dist/memory/hierarchical-memory.d.ts +141 -0
  336. package/dist/memory/hierarchical-memory.d.ts.map +1 -0
  337. package/dist/memory/hierarchical-memory.js +485 -0
  338. package/dist/memory/hierarchical-memory.js.map +1 -0
  339. package/dist/memory/knowledge-graph.d.ts +98 -0
  340. package/dist/memory/knowledge-graph.d.ts.map +1 -0
  341. package/dist/memory/knowledge-graph.js +275 -0
  342. package/dist/memory/knowledge-graph.js.map +1 -0
  343. package/dist/memory/memory-consolidator.d.ts +124 -0
  344. package/dist/memory/memory-consolidator.d.ts.map +1 -0
  345. package/dist/memory/memory-consolidator.js +514 -0
  346. package/dist/memory/memory-consolidator.js.map +1 -0
  347. package/dist/memory/memory-maintenance.d.ts +39 -0
  348. package/dist/memory/memory-maintenance.d.ts.map +1 -0
  349. package/dist/memory/memory-maintenance.js +336 -0
  350. package/dist/memory/memory-maintenance.js.map +1 -0
  351. package/dist/memory/model-router.d.ts +105 -0
  352. package/dist/memory/model-router.d.ts.map +1 -0
  353. package/dist/memory/model-router.js +474 -0
  354. package/dist/memory/model-router.js.map +1 -0
  355. package/dist/memory/multi-view-memory.d.ts +134 -0
  356. package/dist/memory/multi-view-memory.d.ts.map +1 -0
  357. package/dist/memory/multi-view-memory.js +430 -0
  358. package/dist/memory/multi-view-memory.js.map +1 -0
  359. package/dist/memory/predictive-memory.d.ts +79 -0
  360. package/dist/memory/predictive-memory.d.ts.map +1 -0
  361. package/dist/memory/predictive-memory.js +294 -0
  362. package/dist/memory/predictive-memory.js.map +1 -0
  363. package/dist/memory/prepopulate.d.ts +76 -0
  364. package/dist/memory/prepopulate.d.ts.map +1 -0
  365. package/dist/memory/prepopulate.js +832 -0
  366. package/dist/memory/prepopulate.js.map +1 -0
  367. package/dist/memory/semantic-compression.d.ts +77 -0
  368. package/dist/memory/semantic-compression.d.ts.map +1 -0
  369. package/dist/memory/semantic-compression.js +359 -0
  370. package/dist/memory/semantic-compression.js.map +1 -0
  371. package/dist/memory/serverless-qdrant.d.ts +102 -0
  372. package/dist/memory/serverless-qdrant.d.ts.map +1 -0
  373. package/dist/memory/serverless-qdrant.js +369 -0
  374. package/dist/memory/serverless-qdrant.js.map +1 -0
  375. package/dist/memory/short-term/factory.d.ts +26 -0
  376. package/dist/memory/short-term/factory.d.ts.map +1 -0
  377. package/dist/memory/short-term/factory.js +28 -0
  378. package/dist/memory/short-term/factory.js.map +1 -0
  379. package/dist/memory/short-term/indexeddb.d.ts +25 -0
  380. package/dist/memory/short-term/indexeddb.d.ts.map +1 -0
  381. package/dist/memory/short-term/indexeddb.js +64 -0
  382. package/dist/memory/short-term/indexeddb.js.map +1 -0
  383. package/dist/memory/short-term/schema.d.ts +6 -0
  384. package/dist/memory/short-term/schema.d.ts.map +1 -0
  385. package/dist/memory/short-term/schema.js +141 -0
  386. package/dist/memory/short-term/schema.js.map +1 -0
  387. package/dist/memory/short-term/sqlite.d.ts +64 -0
  388. package/dist/memory/short-term/sqlite.d.ts.map +1 -0
  389. package/dist/memory/short-term/sqlite.js +274 -0
  390. package/dist/memory/short-term/sqlite.js.map +1 -0
  391. package/dist/memory/speculative-cache.d.ts +111 -0
  392. package/dist/memory/speculative-cache.d.ts.map +1 -0
  393. package/dist/memory/speculative-cache.js +457 -0
  394. package/dist/memory/speculative-cache.js.map +1 -0
  395. package/dist/memory/task-classifier.d.ts +40 -0
  396. package/dist/memory/task-classifier.d.ts.map +1 -0
  397. package/dist/memory/task-classifier.js +342 -0
  398. package/dist/memory/task-classifier.js.map +1 -0
  399. package/dist/memory/terminal-bench-knowledge.d.ts +48 -0
  400. package/dist/memory/terminal-bench-knowledge.d.ts.map +1 -0
  401. package/dist/memory/terminal-bench-knowledge.js +622 -0
  402. package/dist/memory/terminal-bench-knowledge.js.map +1 -0
  403. package/dist/memory/write-gate.d.ts +39 -0
  404. package/dist/memory/write-gate.d.ts.map +1 -0
  405. package/dist/memory/write-gate.js +190 -0
  406. package/dist/memory/write-gate.js.map +1 -0
  407. package/dist/models/api-client.d.ts +46 -0
  408. package/dist/models/api-client.d.ts.map +1 -0
  409. package/dist/models/api-client.js +182 -0
  410. package/dist/models/api-client.js.map +1 -0
  411. package/dist/models/execution-profiles.d.ts +64 -0
  412. package/dist/models/execution-profiles.d.ts.map +1 -0
  413. package/dist/models/execution-profiles.js +403 -0
  414. package/dist/models/execution-profiles.js.map +1 -0
  415. package/dist/models/executor.d.ts +130 -0
  416. package/dist/models/executor.d.ts.map +1 -0
  417. package/dist/models/executor.js +382 -0
  418. package/dist/models/executor.js.map +1 -0
  419. package/dist/models/index.d.ts +19 -0
  420. package/dist/models/index.d.ts.map +1 -0
  421. package/dist/models/index.js +23 -0
  422. package/dist/models/index.js.map +1 -0
  423. package/dist/models/plan-validator.d.ts +37 -0
  424. package/dist/models/plan-validator.d.ts.map +1 -0
  425. package/dist/models/plan-validator.js +179 -0
  426. package/dist/models/plan-validator.js.map +1 -0
  427. package/dist/models/planner.d.ts +73 -0
  428. package/dist/models/planner.d.ts.map +1 -0
  429. package/dist/models/planner.js +375 -0
  430. package/dist/models/planner.js.map +1 -0
  431. package/dist/models/router.d.ts +96 -0
  432. package/dist/models/router.d.ts.map +1 -0
  433. package/dist/models/router.js +523 -0
  434. package/dist/models/router.js.map +1 -0
  435. package/dist/models/types.d.ts +370 -0
  436. package/dist/models/types.d.ts.map +1 -0
  437. package/dist/models/types.js +232 -0
  438. package/dist/models/types.js.map +1 -0
  439. package/dist/models/unified-router.d.ts +152 -0
  440. package/dist/models/unified-router.d.ts.map +1 -0
  441. package/dist/models/unified-router.js +313 -0
  442. package/dist/models/unified-router.js.map +1 -0
  443. package/dist/policies/convert-policy-to-claude.d.ts +3 -0
  444. package/dist/policies/convert-policy-to-claude.d.ts.map +1 -0
  445. package/dist/policies/convert-policy-to-claude.js +87 -0
  446. package/dist/policies/convert-policy-to-claude.js.map +1 -0
  447. package/dist/policies/database-manager.d.ts +27 -0
  448. package/dist/policies/database-manager.d.ts.map +1 -0
  449. package/dist/policies/database-manager.js +198 -0
  450. package/dist/policies/database-manager.js.map +1 -0
  451. package/dist/policies/enforced-tool-router.d.ts +53 -0
  452. package/dist/policies/enforced-tool-router.d.ts.map +1 -0
  453. package/dist/policies/enforced-tool-router.js +80 -0
  454. package/dist/policies/enforced-tool-router.js.map +1 -0
  455. package/dist/policies/index.d.ts +10 -0
  456. package/dist/policies/index.d.ts.map +1 -0
  457. package/dist/policies/index.js +8 -0
  458. package/dist/policies/index.js.map +1 -0
  459. package/dist/policies/policy-gate.d.ts +59 -0
  460. package/dist/policies/policy-gate.d.ts.map +1 -0
  461. package/dist/policies/policy-gate.js +171 -0
  462. package/dist/policies/policy-gate.js.map +1 -0
  463. package/dist/policies/policy-memory.d.ts +18 -0
  464. package/dist/policies/policy-memory.d.ts.map +1 -0
  465. package/dist/policies/policy-memory.js +126 -0
  466. package/dist/policies/policy-memory.js.map +1 -0
  467. package/dist/policies/policy-tools.d.ts +11 -0
  468. package/dist/policies/policy-tools.d.ts.map +1 -0
  469. package/dist/policies/policy-tools.js +66 -0
  470. package/dist/policies/policy-tools.js.map +1 -0
  471. package/dist/policies/schemas/policy.d.ts +69 -0
  472. package/dist/policies/schemas/policy.d.ts.map +1 -0
  473. package/dist/policies/schemas/policy.js +31 -0
  474. package/dist/policies/schemas/policy.js.map +1 -0
  475. package/dist/tasks/coordination.d.ts +83 -0
  476. package/dist/tasks/coordination.d.ts.map +1 -0
  477. package/dist/tasks/coordination.js +291 -0
  478. package/dist/tasks/coordination.js.map +1 -0
  479. package/dist/tasks/database.d.ts +19 -0
  480. package/dist/tasks/database.d.ts.map +1 -0
  481. package/dist/tasks/database.js +149 -0
  482. package/dist/tasks/database.js.map +1 -0
  483. package/dist/tasks/decoder-gate.d.ts +64 -0
  484. package/dist/tasks/decoder-gate.d.ts.map +1 -0
  485. package/dist/tasks/decoder-gate.js +268 -0
  486. package/dist/tasks/decoder-gate.js.map +1 -0
  487. package/dist/tasks/index.d.ts +6 -0
  488. package/dist/tasks/index.d.ts.map +1 -0
  489. package/dist/tasks/index.js +6 -0
  490. package/dist/tasks/index.js.map +1 -0
  491. package/dist/tasks/service.d.ts +40 -0
  492. package/dist/tasks/service.d.ts.map +1 -0
  493. package/dist/tasks/service.js +671 -0
  494. package/dist/tasks/service.js.map +1 -0
  495. package/dist/tasks/types.d.ts +238 -0
  496. package/dist/tasks/types.d.ts.map +1 -0
  497. package/dist/tasks/types.js +74 -0
  498. package/dist/tasks/types.js.map +1 -0
  499. package/dist/telemetry/index.d.ts +2 -0
  500. package/dist/telemetry/index.d.ts.map +1 -0
  501. package/dist/telemetry/index.js +2 -0
  502. package/dist/telemetry/index.js.map +1 -0
  503. package/dist/telemetry/session-telemetry.d.ts +56 -0
  504. package/dist/telemetry/session-telemetry.d.ts.map +1 -0
  505. package/dist/telemetry/session-telemetry.js +807 -0
  506. package/dist/telemetry/session-telemetry.js.map +1 -0
  507. package/dist/types/analysis.d.ts +82 -0
  508. package/dist/types/analysis.d.ts.map +1 -0
  509. package/dist/types/analysis.js +2 -0
  510. package/dist/types/analysis.js.map +1 -0
  511. package/dist/types/config.d.ts +3324 -0
  512. package/dist/types/config.d.ts.map +1 -0
  513. package/dist/types/config.js +418 -0
  514. package/dist/types/config.js.map +1 -0
  515. package/dist/types/coordination.d.ts +240 -0
  516. package/dist/types/coordination.d.ts.map +1 -0
  517. package/dist/types/coordination.js +43 -0
  518. package/dist/types/coordination.js.map +1 -0
  519. package/dist/types/index.d.ts +4 -0
  520. package/dist/types/index.d.ts.map +1 -0
  521. package/dist/types/index.js +4 -0
  522. package/dist/types/index.js.map +1 -0
  523. package/dist/uap-droids-strict.d.ts +59 -0
  524. package/dist/uap-droids-strict.d.ts.map +1 -0
  525. package/dist/uap-droids-strict.js +200 -0
  526. package/dist/uap-droids-strict.js.map +1 -0
  527. package/dist/utils/config-manager.d.ts +30 -0
  528. package/dist/utils/config-manager.d.ts.map +1 -0
  529. package/dist/utils/config-manager.js +41 -0
  530. package/dist/utils/config-manager.js.map +1 -0
  531. package/dist/utils/fetch-with-retry.d.ts +5 -0
  532. package/dist/utils/fetch-with-retry.d.ts.map +1 -0
  533. package/dist/utils/fetch-with-retry.js +61 -0
  534. package/dist/utils/fetch-with-retry.js.map +1 -0
  535. package/dist/utils/merge-claude-md.d.ts +28 -0
  536. package/dist/utils/merge-claude-md.d.ts.map +1 -0
  537. package/dist/utils/merge-claude-md.js +342 -0
  538. package/dist/utils/merge-claude-md.js.map +1 -0
  539. package/dist/utils/rate-limiter.d.ts +58 -0
  540. package/dist/utils/rate-limiter.d.ts.map +1 -0
  541. package/dist/utils/rate-limiter.js +100 -0
  542. package/dist/utils/rate-limiter.js.map +1 -0
  543. package/dist/utils/string-similarity.d.ts +37 -0
  544. package/dist/utils/string-similarity.d.ts.map +1 -0
  545. package/dist/utils/string-similarity.js +114 -0
  546. package/dist/utils/string-similarity.js.map +1 -0
  547. package/dist/utils/validate-json.d.ts +51 -0
  548. package/dist/utils/validate-json.d.ts.map +1 -0
  549. package/dist/utils/validate-json.js +94 -0
  550. package/dist/utils/validate-json.js.map +1 -0
  551. package/docs/INDEX.md +66 -0
  552. package/docs/architecture/MULTI_MODEL.md +224 -0
  553. package/docs/architecture/SYSTEM_ANALYSIS.md +1117 -0
  554. package/docs/architecture/UAP_COMPLIANCE.md +217 -0
  555. package/docs/architecture/UAP_PROTOCOL.md +339 -0
  556. package/docs/architecture/UAP_STRICT_DROIDS.md +172 -0
  557. package/docs/archive/BALLS_MODE_SELF_ANALYSIS.md +260 -0
  558. package/docs/archive/FAILING_TASKS_SOLUTION_PLAN.md +668 -0
  559. package/docs/archive/JINJA2-SYSTEM-MESSAGE-FIX.md +209 -0
  560. package/docs/archive/NPM-PUBLISH-V0.9.1.md +240 -0
  561. package/docs/archive/OPTIMIZATION_OPTIONS.md +334 -0
  562. package/docs/archive/SETUP_IMPROVEMENTS.md +213 -0
  563. package/docs/archive/UAP_GENERIC_OPTIMIZATION_PLAN.md +270 -0
  564. package/docs/archive/UAP_V103_PATTERN_DESIGN.md +315 -0
  565. package/docs/archive/UAP_V104_COMPLIANCE_DESIGN.md +223 -0
  566. package/docs/archive/changelog/2026-03-10_uap-100-compliance.md +77 -0
  567. package/docs/archive/changelog/2026-03-10_uap-full-system-verification.md +109 -0
  568. package/docs/benchmarks/ACCURACY_ANALYSIS.md +471 -0
  569. package/docs/benchmarks/TOKEN_OPTIMIZATION.md +572 -0
  570. package/docs/benchmarks/VALIDATION_PLAN.md +568 -0
  571. package/docs/benchmarks/VALIDATION_RESULTS.md +161 -0
  572. package/docs/deployment/DEPLOYMENT.md +895 -0
  573. package/docs/deployment/DEPLOYMENT_STRATEGIES.md +518 -0
  574. package/docs/deployment/DEPLOY_BATCHER_ANALYSIS.md +856 -0
  575. package/docs/deployment/DEPLOY_BATCHING.md +273 -0
  576. package/docs/deployment/DEPLOY_BUCKETING_ANALYSIS.md +420 -0
  577. package/docs/deployment/QWEN35_LLAMA_CPP.md +265 -0
  578. package/docs/getting-started/INTEGRATION.md +449 -0
  579. package/docs/getting-started/OVERVIEW.md +344 -0
  580. package/docs/getting-started/SETUP.md +203 -0
  581. package/docs/integrations/MCP_ROUTER_SETUP.md +445 -0
  582. package/docs/integrations/RTK_INTEGRATION.md +468 -0
  583. package/docs/operations/TROUBLESHOOTING.md +660 -0
  584. package/docs/reference/API_REFERENCE.md +903 -0
  585. package/docs/reference/FEATURES.md +472 -0
  586. package/docs/reference/HARNESS-MATRIX.md +318 -0
  587. package/docs/reference/UAP_CLI_REFERENCE.md +600 -0
  588. package/docs/research/BEHAVIORAL_PATTERNS.md +228 -0
  589. package/docs/research/DOMAIN_STRATEGIES.md +316 -0
  590. package/docs/research/MEMORY_SYSTEMS_COMPARISON.md +812 -0
  591. package/docs/research/PATTERN_ANALYSIS_2026-01-18.md +436 -0
  592. package/docs/research/PERFORMANCE_ANALYSIS_2026-01-18.md +209 -0
  593. package/docs/research/PERFORMANCE_TEST_PLAN.md +383 -0
  594. package/docs/research/TERMINAL_BENCH_LEARNINGS.md +217 -0
  595. package/package.json +113 -0
  596. package/scripts/README.md +161 -0
  597. package/templates/CLAUDE.template.md +10 -0
  598. package/templates/CLAUDE_ARCHITECTURE.template.md +103 -0
  599. package/templates/CLAUDE_CODING.template.md +127 -0
  600. package/templates/CLAUDE_DROIDS.template.md +109 -0
  601. package/templates/CLAUDE_MEMORY.template.md +131 -0
  602. package/templates/CLAUDE_WORKFLOWS.template.md +139 -0
  603. package/templates/PROJECT.template.md +209 -0
  604. package/templates/SCHEMA.md +57 -0
  605. package/templates/archive/CLAUDE.template.root-v6.md +534 -0
  606. package/templates/archive/CLAUDE.template.v6.md +534 -0
  607. package/templates/hooks/forgecode/pre-compact.sh +68 -0
  608. package/templates/hooks/forgecode/session-start.sh +169 -0
  609. package/templates/hooks/forgecode.plugin.sh +128 -0
  610. package/templates/hooks/pre-compact.sh +74 -0
  611. package/templates/hooks/session-start.sh +366 -0
  612. package/tools/agents/README.md +224 -0
  613. package/tools/agents/UAP/README.md +386 -0
  614. package/tools/agents/UAP/__init__.py +9 -0
  615. package/tools/agents/UAP/cli.py +901 -0
  616. package/tools/agents/UAP/compliance_verify.sh +108 -0
  617. package/tools/agents/UAP/full_verification.sh +126 -0
  618. package/tools/agents/UAP/version.py +32 -0
  619. package/tools/agents/benchmarks/benchmark_memory_systems.py +730 -0
  620. package/tools/agents/benchmarks/results/benchmark_20260106_064817.json +170 -0
  621. package/tools/agents/benchmarks/results/benchmark_20260106_064817.md +51 -0
  622. package/tools/agents/config/chat_template.jinja +77 -0
  623. package/tools/agents/config/tool-call-schema.json +19 -0
  624. package/tools/agents/config/tool-call.gbnf +58 -0
  625. package/tools/agents/docker/Dockerfile.python +52 -0
  626. package/tools/agents/docker/Dockerfile.ubuntu +55 -0
  627. package/tools/agents/docker-compose.qdrant.yml +24 -0
  628. package/tools/agents/install-opencode-local.sh.j2 +135 -0
  629. package/tools/agents/migrations/apply.py +256 -0
  630. package/tools/agents/opencode_uap_agent.py +1505 -0
  631. package/tools/agents/plugin/README.md +91 -0
  632. package/tools/agents/plugin/index.ts +46 -0
  633. package/tools/agents/plugin/pre-compact.sh +68 -0
  634. package/tools/agents/plugin/session-start.sh +175 -0
  635. package/tools/agents/plugin/uap-commands.ts +45 -0
  636. package/tools/agents/plugin/uap-droids.ts +54 -0
  637. package/tools/agents/plugin/uap-patterns.ts +54 -0
  638. package/tools/agents/plugin/uap-skills.ts +52 -0
  639. package/tools/agents/plugins/uap-enforce.ts +314 -0
  640. package/tools/agents/scripts/__pycache__/tool_call_wrapper.cpython-313.pyc +0 -0
  641. package/tools/agents/scripts/chat_template_verifier.py +343 -0
  642. package/tools/agents/scripts/fix-qwen-template.js +38 -0
  643. package/tools/agents/scripts/fix_qwen_chat_template.py +316 -0
  644. package/tools/agents/scripts/generate_lora_training_data.py +412 -0
  645. package/tools/agents/scripts/init_qdrant.py +151 -0
  646. package/tools/agents/scripts/memory_migration.py +560 -0
  647. package/tools/agents/scripts/migrate_memory_to_qdrant.py +110 -0
  648. package/tools/agents/scripts/prepare_lora.sh +512 -0
  649. package/tools/agents/scripts/query_memory.py +200 -0
  650. package/tools/agents/scripts/qwen-tool-call-test.js +38 -0
  651. package/tools/agents/scripts/qwen-tool-call-wrapper.js +38 -0
  652. package/tools/agents/scripts/qwen_tool_call_test.py +464 -0
  653. package/tools/agents/scripts/qwen_tool_call_wrapper.py +686 -0
  654. package/tools/agents/scripts/start-services.sh +96 -0
  655. package/tools/agents/scripts/tool-choice-proxy.cjs +296 -0
  656. package/tools/agents/scripts/tool_call_test.py +656 -0
  657. package/tools/agents/scripts/tool_call_wrapper.py +799 -0
  658. package/tools/agents/tests/test_uap_compliance.py +257 -0
  659. package/tools/agents/uap_agent.py +122 -0
  660. package/tools/agents/uap_agent_install.sh +12 -0
@@ -0,0 +1,91 @@
1
+ # UAP Plugins
2
+
3
+ This directory contains all UAP (Universal Agent Protocol) plugins, hooks, and utilities.
4
+
5
+ ## Plugin Files
6
+
7
+ ### TypeScript Plugins
8
+
9
+ - **uap-commands.ts** - Defines UAP-specific commands for opencode integration
10
+ - **uap-droids.ts** - Specialized agent droids (code reviewer, security auditor, etc.)
11
+ - **uap-skills.ts** - Domain-specific skills (git workflow, testing patterns, etc.)
12
+ - **uap-patterns.ts** - Reusable coding patterns distilled from experience
13
+
14
+ ### Shell Hooks
15
+
16
+ - **session-start.sh** - Runs at session initialization to enforce UAP compliance
17
+ - **pre-compact.sh** - Runs before context compression to preserve critical information
18
+
19
+ ## Usage
20
+
21
+ ### Install Plugins
22
+
23
+ To install all UAP plugins for opencode:
24
+
25
+ ```bash
26
+ uap install opencode
27
+ ```
28
+
29
+ This will copy all plugin files to `~/.opencode/plugin/`.
30
+
31
+ ### Available Droids
32
+
33
+ - **code-reviewer** - Reviews code changes for quality and security
34
+ - **security-auditor** - Audits code for security vulnerabilities
35
+ - **performance-optimizer** - Analyzes and optimizes performance bottlenecks
36
+ - **unit-tester** - Generates comprehensive unit tests
37
+ - **debug-helper** - Helps diagnose and fix bugs
38
+
39
+ ### Available Skills
40
+
41
+ - **git-workflow** - Manages git workflows with worktrees and branches
42
+ - **testing-patterns** - Applies testing best practices and patterns
43
+ - **ci-cd-setup** - Configures continuous integration and deployment pipelines
44
+ - **documentation-gen** - Generates and maintains project documentation
45
+
46
+ ### Available Patterns
47
+
48
+ - **generic-uap-patterns** - Distilled patterns from tbench-specific implementation
49
+ - **worktree-isolation** - Use git worktrees for isolated feature development
50
+ - **session-persistence** - Maintain state across sessions using memory system
51
+ - **task-tracking** - Track and manage tasks with UAP task system
52
+ - **agent-coordination** - Coordinate multiple AI agents for complex tasks
53
+
54
+ ## Plugin Manifest
55
+
56
+ Each plugin is registered in the `index.ts` file which exports:
57
+
58
+ - Version information
59
+ - Plugin manifest with hooks, droids, skills, and patterns
60
+ - Individual plugin modules
61
+
62
+ ## Creating New Plugins
63
+
64
+ To add a new plugin:
65
+
66
+ 1. Create a new TypeScript file in this directory
67
+ 2. Export definitions using the appropriate interfaces
68
+ 3. Add to the `index.ts` exports
69
+ 4. Register in the `uapPluginManifest`
70
+
71
+ Example:
72
+
73
+ ```typescript
74
+ export interface MyPlugin {
75
+ id: string;
76
+ name: string;
77
+ description: string;
78
+ enabled: boolean;
79
+ }
80
+
81
+ export const myPlugin: MyPlugin = {
82
+ id: 'my-plugin',
83
+ name: 'My Plugin',
84
+ description: 'Description of my plugin',
85
+ enabled: true,
86
+ };
87
+ ```
88
+
89
+ ## License
90
+
91
+ Part of Universal Agent Protocol v0.10.3
@@ -0,0 +1,46 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * UAP Plugin Index
4
+ *
5
+ * This file serves as the main entry point for all UAP plugins.
6
+ * It exports all available plugins, hooks, and utilities.
7
+ */
8
+
9
+ import { uapCommands } from './uap-commands.js';
10
+ import { uapDroids } from './uap-droids.js';
11
+ import { uapSkills } from './uap-skills.js';
12
+ import { uapPatterns } from './uap-patterns.js';
13
+
14
+ export const UAP_VERSION = '7.0.2';
15
+
16
+ export interface UAPPluginManifest {
17
+ name: string;
18
+ version: string;
19
+ description: string;
20
+ hooks?: string[];
21
+ droids?: string[];
22
+ skills?: string[];
23
+ patterns?: string[];
24
+ }
25
+
26
+ export const uapPluginManifest: UAPPluginManifest = {
27
+ name: 'universal-agent-protocol',
28
+ version: UAP_VERSION,
29
+ description: 'Universal Agent Protocol - AI agents that learn and remember across sessions',
30
+ hooks: ['session-start.sh', 'pre-compact.sh'],
31
+ droids: uapDroids.map((d) => d.id),
32
+ skills: uapSkills.map((s) => s.id),
33
+ patterns: uapPatterns.map((p) => p.id),
34
+ };
35
+
36
+ export { uapCommands, uapDroids, uapSkills, uapPatterns };
37
+
38
+ // Default export for easy importing
39
+ export default {
40
+ version: UAP_VERSION,
41
+ manifest: uapPluginManifest,
42
+ commands: uapCommands,
43
+ droids: uapDroids,
44
+ skills: uapSkills,
45
+ patterns: uapPatterns,
46
+ };
@@ -0,0 +1,68 @@
1
+ #!/usr/bin/env bash
2
+ # UAP Pre-Compact Hook for Claude Code
3
+ # 1. Checks compliance state and warns on violations
4
+ # 2. Writes a timestamp marker to the daily log before context compaction
5
+ # 3. Marks any agents registered by this session as completed
6
+ # Fails safely - never blocks the agent.
7
+ set -euo pipefail
8
+
9
+ PROJECT_DIR="${CLAUDE_PROJECT_DIR:-.}"
10
+ DB_PATH="${PROJECT_DIR}/agents/data/memory/short_term.db"
11
+ COORD_DB="${PROJECT_DIR}/agents/data/coordination/coordination.db"
12
+
13
+ if [ ! -f "$DB_PATH" ]; then
14
+ exit 0
15
+ fi
16
+
17
+ TIMESTAMP=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
18
+
19
+ # Record a compaction marker in memory so sessions can detect context resets
20
+ sqlite3 "$DB_PATH" "
21
+ INSERT OR IGNORE INTO memories (timestamp, type, content)
22
+ VALUES ('$TIMESTAMP', 'action', '[pre-compact] Context compaction at $TIMESTAMP');
23
+ " 2>/dev/null || true
24
+
25
+ # Check if any lessons were stored this session
26
+ recent_lessons=$(sqlite3 "$DB_PATH" "
27
+ SELECT COUNT(*) FROM session_memories
28
+ WHERE timestamp >= datetime('now', '-2 hours')
29
+ AND type = 'decision';
30
+ " 2>/dev/null || echo "0")
31
+
32
+ output=""
33
+
34
+ # Compliance reminder on compaction
35
+ output+="<system-reminder>"$'\n'
36
+ output+="## UAP COMPLIANCE REMINDER (Pre-Compact)"$'\n'
37
+ output+=""$'\n'
38
+ output+="Context is being compacted. Before continuing work after compaction:"$'\n'
39
+ output+="1. Re-run: uap task ready"$'\n'
40
+ output+="2. Re-query memory for current task context"$'\n'
41
+ output+="3. Check for stale worktrees: uap worktree list"$'\n'
42
+ output+=""$'\n'
43
+
44
+ if [ "$recent_lessons" = "0" ]; then
45
+ output+="WARNING: No lessons stored this session. Before compaction completes,"$'\n'
46
+ output+="store a summary: sqlite3 ./agents/data/memory/short_term.db \"INSERT INTO session_memories (session_id,timestamp,type,content,importance) VALUES ('current',datetime('now'),'decision','<summary>',7);\""$'\n'
47
+ fi
48
+
49
+ output+="</system-reminder>"$'\n'
50
+
51
+ echo "$output"
52
+
53
+ # Clean up agents with recent heartbeats (likely from this session being compacted)
54
+ if [ -f "$COORD_DB" ]; then
55
+ sqlite3 "$COORD_DB" "
56
+ DELETE FROM work_claims WHERE agent_id IN (
57
+ SELECT id FROM agent_registry
58
+ WHERE status='active' AND last_heartbeat >= datetime('now','-5 minutes')
59
+ );
60
+ UPDATE work_announcements SET completed_at='$TIMESTAMP'
61
+ WHERE completed_at IS NULL AND agent_id IN (
62
+ SELECT id FROM agent_registry
63
+ WHERE status='active' AND last_heartbeat >= datetime('now','-5 minutes')
64
+ );
65
+ UPDATE agent_registry SET status='completed'
66
+ WHERE status='active' AND last_heartbeat >= datetime('now','-5 minutes');
67
+ " 2>/dev/null || true
68
+ fi
@@ -0,0 +1,175 @@
1
+ #!/usr/bin/env bash
2
+ # UAP Session Start Hook for Claude Code
3
+ # COMPLIANCE ENFORCEMENT: Outputs mandatory protocol checklist
4
+ # that the AI agent MUST complete before any work begins.
5
+ # Fails safely - never blocks the agent.
6
+ set -euo pipefail
7
+
8
+ PROJECT_DIR="${CLAUDE_PROJECT_DIR:-.}"
9
+ DB_PATH="${PROJECT_DIR}/agents/data/memory/short_term.db"
10
+ COORD_DB="${PROJECT_DIR}/agents/data/coordination/coordination.db"
11
+
12
+ if [ ! -f "$DB_PATH" ]; then
13
+ exit 0
14
+ fi
15
+
16
+ # Auto-create coordination DB if missing (self-healing)
17
+ if [ ! -f "$COORD_DB" ]; then
18
+ mkdir -p "$(dirname "$COORD_DB")"
19
+ sqlite3 "$COORD_DB" "
20
+ PRAGMA journal_mode = WAL;
21
+ PRAGMA synchronous = NORMAL;
22
+ PRAGMA busy_timeout = 10000;
23
+
24
+ CREATE TABLE IF NOT EXISTS agent_registry (
25
+ id TEXT PRIMARY KEY, name TEXT NOT NULL, session_id TEXT NOT NULL,
26
+ status TEXT NOT NULL CHECK(status IN ('active','idle','completed','failed')),
27
+ current_task TEXT, worktree_branch TEXT, started_at TEXT NOT NULL,
28
+ last_heartbeat TEXT NOT NULL, capabilities TEXT
29
+ );
30
+ CREATE INDEX IF NOT EXISTS idx_agent_registry_session ON agent_registry(session_id);
31
+ CREATE INDEX IF NOT EXISTS idx_agent_registry_status ON agent_registry(status);
32
+
33
+ CREATE TABLE IF NOT EXISTS agent_messages (
34
+ id INTEGER PRIMARY KEY AUTOINCREMENT, channel TEXT NOT NULL,
35
+ from_agent TEXT, to_agent TEXT,
36
+ type TEXT NOT NULL CHECK(type IN ('request','response','notification','claim','release')),
37
+ payload TEXT NOT NULL, priority INTEGER DEFAULT 5,
38
+ created_at TEXT NOT NULL, read_at TEXT, expires_at TEXT
39
+ );
40
+ CREATE INDEX IF NOT EXISTS idx_messages_channel ON agent_messages(channel);
41
+ CREATE INDEX IF NOT EXISTS idx_messages_to_agent ON agent_messages(to_agent);
42
+ CREATE INDEX IF NOT EXISTS idx_messages_created ON agent_messages(created_at);
43
+
44
+ CREATE TABLE IF NOT EXISTS work_announcements (
45
+ id INTEGER PRIMARY KEY AUTOINCREMENT, agent_id TEXT NOT NULL,
46
+ agent_name TEXT, worktree_branch TEXT,
47
+ intent_type TEXT NOT NULL CHECK(intent_type IN ('editing','reviewing','refactoring','testing','documenting')),
48
+ resource TEXT NOT NULL, description TEXT, files_affected TEXT,
49
+ estimated_completion TEXT, announced_at TEXT NOT NULL, completed_at TEXT,
50
+ FOREIGN KEY (agent_id) REFERENCES agent_registry(id)
51
+ );
52
+ CREATE INDEX IF NOT EXISTS idx_announcements_agent ON work_announcements(agent_id);
53
+ CREATE INDEX IF NOT EXISTS idx_announcements_resource ON work_announcements(resource);
54
+ CREATE INDEX IF NOT EXISTS idx_announcements_active ON work_announcements(completed_at) WHERE completed_at IS NULL;
55
+
56
+ CREATE TABLE IF NOT EXISTS work_claims (
57
+ id INTEGER PRIMARY KEY AUTOINCREMENT, resource TEXT NOT NULL,
58
+ agent_id TEXT NOT NULL, claim_type TEXT NOT NULL CHECK(claim_type IN ('exclusive','shared')),
59
+ claimed_at TEXT NOT NULL, expires_at TEXT,
60
+ FOREIGN KEY (agent_id) REFERENCES agent_registry(id)
61
+ );
62
+ CREATE INDEX IF NOT EXISTS idx_claims_agent ON work_claims(agent_id);
63
+ CREATE INDEX IF NOT EXISTS idx_claims_resource ON work_claims(resource);
64
+
65
+ CREATE TABLE IF NOT EXISTS deploy_queue (
66
+ id INTEGER PRIMARY KEY AUTOINCREMENT, agent_id TEXT NOT NULL,
67
+ action_type TEXT NOT NULL CHECK(action_type IN ('commit','push','merge','deploy','workflow')),
68
+ target TEXT NOT NULL, payload TEXT,
69
+ status TEXT NOT NULL CHECK(status IN ('pending','batched','executing','completed','failed')),
70
+ batch_id TEXT, queued_at TEXT NOT NULL, execute_after TEXT,
71
+ priority INTEGER DEFAULT 5, dependencies TEXT
72
+ );
73
+ CREATE INDEX IF NOT EXISTS idx_deploy_status ON deploy_queue(status);
74
+ CREATE INDEX IF NOT EXISTS idx_deploy_batch ON deploy_queue(batch_id);
75
+ CREATE INDEX IF NOT EXISTS idx_deploy_target ON deploy_queue(target);
76
+
77
+ CREATE TABLE IF NOT EXISTS deploy_batches (
78
+ id TEXT PRIMARY KEY, created_at TEXT NOT NULL, executed_at TEXT,
79
+ status TEXT NOT NULL CHECK(status IN ('pending','executing','completed','failed')),
80
+ result TEXT
81
+ );
82
+ " 2>/dev/null || true
83
+ fi
84
+
85
+ # Clean stale agents from coordination DB (heartbeat >24h old)
86
+ if [ -f "$COORD_DB" ]; then
87
+ sqlite3 "$COORD_DB" "
88
+ DELETE FROM work_claims WHERE agent_id IN (
89
+ SELECT id FROM agent_registry
90
+ WHERE status IN ('active','idle') AND last_heartbeat < datetime('now','-24 hours')
91
+ );
92
+ DELETE FROM work_announcements WHERE agent_id IN (
93
+ SELECT id FROM agent_registry
94
+ WHERE status IN ('active','idle') AND last_heartbeat < datetime('now','-24 hours')
95
+ ) AND completed_at IS NULL;
96
+ UPDATE agent_registry SET status='failed'
97
+ WHERE status IN ('active','idle') AND last_heartbeat < datetime('now','-24 hours');
98
+ DELETE FROM agent_registry
99
+ WHERE status IN ('completed','failed') AND started_at < datetime('now','-7 days');
100
+ DELETE FROM agent_messages WHERE created_at < datetime('now','-24 hours');
101
+ " 2>/dev/null || true
102
+ fi
103
+
104
+ output=""
105
+
106
+ # ============================================================
107
+ # COMPLIANCE ENFORCEMENT BLOCK
108
+ # This is injected as system context. The AI MUST follow these.
109
+ # ============================================================
110
+ output+="<system-reminder>"$'\n'
111
+ output+="## UAP COMPLIANCE - MANDATORY PROTOCOL"$'\n'
112
+ output+=""$'\n'
113
+ output+="You MUST complete these steps IN ORDER before doing ANY work."$'\n'
114
+ output+="Skipping ANY step is a critical protocol violation."$'\n'
115
+ output+=""$'\n'
116
+ output+="### BEFORE WORK (execute these commands NOW):"$'\n'
117
+ output+="1. Run: uap task ready"$'\n'
118
+ output+="2. Run: sqlite3 ./agents/data/memory/short_term.db \"SELECT type, substr(content,1,80) FROM memories ORDER BY id DESC LIMIT 5;\""$'\n'
119
+ output+="3. Run: uap memory query \"<relevant to user request>\""$'\n'
120
+ output+="4. On work request: Run: uap task create --type <task|bug|feature> --title \"<description>\""$'\n'
121
+ output+=""$'\n'
122
+ output+="### DURING WORK:"$'\n'
123
+ output+="5. ALL file changes MUST use worktree: uap worktree create <slug>"$'\n'
124
+ output+="6. Work in .worktrees/NNN-<slug>/ directory"$'\n'
125
+ output+=""$'\n'
126
+ output+="### BEFORE COMMIT:"$'\n'
127
+ output+="7. Self-review: git diff"$'\n'
128
+ output+="8. Run tests if applicable"$'\n'
129
+ output+=""$'\n'
130
+ output+="### AFTER WORK:"$'\n'
131
+ output+="9. Store lesson: sqlite3 ./agents/data/memory/short_term.db \"INSERT INTO session_memories (session_id,timestamp,type,content,importance) VALUES ('current',datetime('now'),'decision','<summary of work and lessons>',7);\""$'\n'
132
+ output+="10. Clean up worktree after PR merge: uap worktree cleanup <id>"$'\n'
133
+ output+=""$'\n'
134
+ output+="FAILURE TO COMPLY = CRITICAL VIOLATION. This is life or death."$'\n'
135
+ output+="</system-reminder>"$'\n\n'
136
+
137
+ # Recent memories (last 24h, high importance)
138
+ recent=$(sqlite3 "$DB_PATH" "
139
+ SELECT type, substr(content, 1, 120) FROM memories
140
+ WHERE timestamp >= datetime('now', '-1 day')
141
+ ORDER BY id DESC
142
+ LIMIT 10;
143
+ " 2>/dev/null || true)
144
+
145
+ if [ -n "$recent" ]; then
146
+ output+="## Recent Memory Context"$'\n'
147
+ output+="$recent"$'\n\n'
148
+ fi
149
+
150
+ # Open loops from session memories
151
+ open_loops=$(sqlite3 "$DB_PATH" "
152
+ SELECT content FROM session_memories
153
+ WHERE type IN ('action','goal','decision')
154
+ AND importance >= 7
155
+ ORDER BY id DESC
156
+ LIMIT 5;
157
+ " 2>/dev/null || true)
158
+
159
+ if [ -n "$open_loops" ]; then
160
+ output+="## Open Loops"$'\n'
161
+ output+="$open_loops"$'\n'
162
+ fi
163
+
164
+ # Stale worktrees warning
165
+ if [ -d "${PROJECT_DIR}/.worktrees" ]; then
166
+ stale_count=$(find "${PROJECT_DIR}/.worktrees" -maxdepth 1 -mindepth 1 -type d 2>/dev/null | wc -l)
167
+ if [ "$stale_count" -gt 0 ]; then
168
+ output+=$'\n'"## Stale Worktrees Warning"$'\n'
169
+ output+="There are $stale_count worktrees. Run 'uap worktree list' and clean up merged ones."$'\n'
170
+ fi
171
+ fi
172
+
173
+ if [ -n "$output" ]; then
174
+ echo "$output"
175
+ fi
@@ -0,0 +1,45 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * UAP Commands Plugin for opencode
4
+ *
5
+ * Defines UAP-specific commands that can be used within opencode.
6
+ */
7
+
8
+ export const uapCommands = {
9
+ name: 'uap',
10
+ description: 'Universal Agent Protocol commands',
11
+ commands: [
12
+ {
13
+ name: 'init',
14
+ description: 'Initialize UAP in current project',
15
+ usage: 'uap init',
16
+ },
17
+ {
18
+ name: 'setup',
19
+ description: 'Run comprehensive UAP setup',
20
+ usage: 'uap setup [-p all | memory | hooks | mcp-router]',
21
+ },
22
+ {
23
+ name: 'install',
24
+ description: 'Install UAP plugins for a harness',
25
+ usage: 'uap install <harness>',
26
+ },
27
+ {
28
+ name: 'task',
29
+ description: 'Create and manage tasks',
30
+ usage: 'uap task create --type <task|bug|feature> --title "<description>"',
31
+ },
32
+ {
33
+ name: 'worktree',
34
+ description: 'Manage git worktrees for isolated development',
35
+ usage: 'uap worktree <command>',
36
+ },
37
+ {
38
+ name: 'memory',
39
+ description: 'Query and manage memory system',
40
+ usage: 'uap memory query "<query>"',
41
+ },
42
+ ],
43
+ };
44
+
45
+ export default uapCommands;
@@ -0,0 +1,54 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * UAP Droids Plugin for opencode
4
+ *
5
+ * Defines specialized agent droids that can be invoked via UAP.
6
+ */
7
+
8
+ export interface UDroidDefinition {
9
+ id: string;
10
+ name: string;
11
+ description: string;
12
+ category: 'code' | 'review' | 'debug' | 'test' | 'deploy';
13
+ enabled: boolean;
14
+ }
15
+
16
+ export const uapDroids: UDroidDefinition[] = [
17
+ {
18
+ id: 'code-reviewer',
19
+ name: 'Code Reviewer',
20
+ description: 'Reviews code changes for quality and security',
21
+ category: 'review',
22
+ enabled: true,
23
+ },
24
+ {
25
+ id: 'security-auditor',
26
+ name: 'Security Auditor',
27
+ description: 'Audits code for security vulnerabilities',
28
+ category: 'review',
29
+ enabled: true,
30
+ },
31
+ {
32
+ id: 'performance-optimizer',
33
+ name: 'Performance Optimizer',
34
+ description: 'Analyzes and optimizes performance bottlenecks',
35
+ category: 'code',
36
+ enabled: true,
37
+ },
38
+ {
39
+ id: 'unit-tester',
40
+ name: 'Unit Tester',
41
+ description: 'Generates comprehensive unit tests',
42
+ category: 'test',
43
+ enabled: true,
44
+ },
45
+ {
46
+ id: 'debug-helper',
47
+ name: 'Debug Helper',
48
+ description: 'Helps diagnose and fix bugs',
49
+ category: 'debug',
50
+ enabled: true,
51
+ },
52
+ ];
53
+
54
+ export default uapDroids;
@@ -0,0 +1,54 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * UAP Patterns Plugin for opencode
4
+ *
5
+ * Provides reusable coding patterns and distilled knowledge from tbench.
6
+ */
7
+
8
+ export interface UpatternDefinition {
9
+ id: string;
10
+ name: string;
11
+ description: string;
12
+ category: 'memory' | 'workflow' | 'architecture' | 'testing';
13
+ tags: string[];
14
+ }
15
+
16
+ export const uapPatterns: UpatternDefinition[] = [
17
+ {
18
+ id: 'generic-uap-patterns',
19
+ name: 'Generic UAP Patterns',
20
+ description: 'Distilled patterns from tbench-specific implementation',
21
+ category: 'workflow',
22
+ tags: ['memory', 'hooks', 'patterns'],
23
+ },
24
+ {
25
+ id: 'worktree-isolation',
26
+ name: 'Worktree Isolation Pattern',
27
+ description: 'Use git worktrees for isolated feature development',
28
+ category: 'workflow',
29
+ tags: ['git', 'isolation', 'parallel'],
30
+ },
31
+ {
32
+ id: 'session-persistence',
33
+ name: 'Session Persistence Pattern',
34
+ description: 'Maintain state across sessions using memory system',
35
+ category: 'memory',
36
+ tags: ['state', 'persistence', 'context'],
37
+ },
38
+ {
39
+ id: 'task-tracking',
40
+ name: 'Task Tracking Pattern',
41
+ description: 'Track and manage tasks with UAP task system',
42
+ category: 'workflow',
43
+ tags: ['tasks', 'tracking', 'management'],
44
+ },
45
+ {
46
+ id: 'agent-coordination',
47
+ name: 'Agent Coordination Pattern',
48
+ description: 'Coordinate multiple AI agents for complex tasks',
49
+ category: 'architecture',
50
+ tags: ['agents', 'coordination', 'parallel'],
51
+ },
52
+ ];
53
+
54
+ export default uapPatterns;
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * UAP Skills Plugin for opencode
4
+ *
5
+ * Defines domain-specific skills that agents can use.
6
+ */
7
+
8
+ export interface USkillDefinition {
9
+ id: string;
10
+ name: string;
11
+ description: string;
12
+ category: 'development' | 'testing' | 'deployment' | 'documentation';
13
+ triggers: string[];
14
+ enabled: boolean;
15
+ }
16
+
17
+ export const uapSkills: USkillDefinition[] = [
18
+ {
19
+ id: 'git-workflow',
20
+ name: 'Git Workflow',
21
+ description: 'Manages git workflows with worktrees and branches',
22
+ category: 'development',
23
+ triggers: ['git', 'branch', 'commit', 'push'],
24
+ enabled: true,
25
+ },
26
+ {
27
+ id: 'testing-patterns',
28
+ name: 'Testing Patterns',
29
+ description: 'Applies testing best practices and patterns',
30
+ category: 'testing',
31
+ triggers: ['test', 'spec', 'coverage'],
32
+ enabled: true,
33
+ },
34
+ {
35
+ id: 'ci-cd-setup',
36
+ name: 'CI/CD Setup',
37
+ description: 'Configures continuous integration and deployment pipelines',
38
+ category: 'deployment',
39
+ triggers: ['ci', 'cd', 'pipeline', 'workflow'],
40
+ enabled: false,
41
+ },
42
+ {
43
+ id: 'documentation-gen',
44
+ name: 'Documentation Generator',
45
+ description: 'Generates and maintains project documentation',
46
+ category: 'documentation',
47
+ triggers: ['doc', 'readme', 'comment'],
48
+ enabled: true,
49
+ },
50
+ ];
51
+
52
+ export default uapSkills;