@revealui/ai 0.1.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 (397) hide show
  1. package/LICENSE +22 -0
  2. package/LICENSE.commercial +112 -0
  3. package/README.md +314 -0
  4. package/dist/a2a/card.d.ts +26 -0
  5. package/dist/a2a/card.d.ts.map +1 -0
  6. package/dist/a2a/card.js +173 -0
  7. package/dist/a2a/handler.d.ts +26 -0
  8. package/dist/a2a/handler.d.ts.map +1 -0
  9. package/dist/a2a/handler.js +170 -0
  10. package/dist/a2a/index.d.ts +10 -0
  11. package/dist/a2a/index.d.ts.map +1 -0
  12. package/dist/a2a/index.js +9 -0
  13. package/dist/a2a/task-store.d.ts +42 -0
  14. package/dist/a2a/task-store.d.ts.map +1 -0
  15. package/dist/a2a/task-store.js +99 -0
  16. package/dist/audit/emitter.d.ts +34 -0
  17. package/dist/audit/emitter.d.ts.map +1 -0
  18. package/dist/audit/emitter.js +34 -0
  19. package/dist/audit/index.d.ts +44 -0
  20. package/dist/audit/index.d.ts.map +1 -0
  21. package/dist/audit/index.js +48 -0
  22. package/dist/audit/observer.d.ts +108 -0
  23. package/dist/audit/observer.d.ts.map +1 -0
  24. package/dist/audit/observer.js +271 -0
  25. package/dist/audit/policy.d.ts +70 -0
  26. package/dist/audit/policy.d.ts.map +1 -0
  27. package/dist/audit/policy.js +209 -0
  28. package/dist/audit/store.d.ts +42 -0
  29. package/dist/audit/store.d.ts.map +1 -0
  30. package/dist/audit/store.js +80 -0
  31. package/dist/audit/types.d.ts +169 -0
  32. package/dist/audit/types.d.ts.map +1 -0
  33. package/dist/audit/types.js +80 -0
  34. package/dist/client/hooks/index.d.ts +22 -0
  35. package/dist/client/hooks/index.d.ts.map +1 -0
  36. package/dist/client/hooks/index.js +21 -0
  37. package/dist/client/hooks/useAgentContext.d.ts +30 -0
  38. package/dist/client/hooks/useAgentContext.d.ts.map +1 -0
  39. package/dist/client/hooks/useAgentContext.js +161 -0
  40. package/dist/client/hooks/useAgentEvents.d.ts +126 -0
  41. package/dist/client/hooks/useAgentEvents.d.ts.map +1 -0
  42. package/dist/client/hooks/useAgentEvents.js +232 -0
  43. package/dist/client/hooks/useAgentStream.d.ts +44 -0
  44. package/dist/client/hooks/useAgentStream.d.ts.map +1 -0
  45. package/dist/client/hooks/useAgentStream.js +101 -0
  46. package/dist/client/hooks/useEpisodicMemory.d.ts +25 -0
  47. package/dist/client/hooks/useEpisodicMemory.d.ts.map +1 -0
  48. package/dist/client/hooks/useEpisodicMemory.js +174 -0
  49. package/dist/client/hooks/useWorkingMemory.d.ts +57 -0
  50. package/dist/client/hooks/useWorkingMemory.d.ts.map +1 -0
  51. package/dist/client/hooks/useWorkingMemory.js +276 -0
  52. package/dist/client/index.d.ts +14 -0
  53. package/dist/client/index.d.ts.map +1 -0
  54. package/dist/client/index.js +13 -0
  55. package/dist/embeddings/index.d.ts +51 -0
  56. package/dist/embeddings/index.d.ts.map +1 -0
  57. package/dist/embeddings/index.js +73 -0
  58. package/dist/index.d.ts +83 -0
  59. package/dist/index.d.ts.map +1 -0
  60. package/dist/index.js +103 -0
  61. package/dist/inference/context-assembly.d.ts +27 -0
  62. package/dist/inference/context-assembly.d.ts.map +1 -0
  63. package/dist/inference/context-assembly.js +81 -0
  64. package/dist/inference/overflow-compressor.d.ts +17 -0
  65. package/dist/inference/overflow-compressor.d.ts.map +1 -0
  66. package/dist/inference/overflow-compressor.js +40 -0
  67. package/dist/inference/runRag.d.ts +35 -0
  68. package/dist/inference/runRag.d.ts.map +1 -0
  69. package/dist/inference/runRag.js +53 -0
  70. package/dist/ingestion/bm25.d.ts +29 -0
  71. package/dist/ingestion/bm25.d.ts.map +1 -0
  72. package/dist/ingestion/bm25.js +161 -0
  73. package/dist/ingestion/cms-indexer.d.ts +39 -0
  74. package/dist/ingestion/cms-indexer.d.ts.map +1 -0
  75. package/dist/ingestion/cms-indexer.js +74 -0
  76. package/dist/ingestion/file-parsers.d.ts +51 -0
  77. package/dist/ingestion/file-parsers.d.ts.map +1 -0
  78. package/dist/ingestion/file-parsers.js +247 -0
  79. package/dist/ingestion/hybrid-search.d.ts +22 -0
  80. package/dist/ingestion/hybrid-search.d.ts.map +1 -0
  81. package/dist/ingestion/hybrid-search.js +63 -0
  82. package/dist/ingestion/index.d.ts +9 -0
  83. package/dist/ingestion/index.d.ts.map +1 -0
  84. package/dist/ingestion/index.js +8 -0
  85. package/dist/ingestion/pipeline.d.ts +35 -0
  86. package/dist/ingestion/pipeline.d.ts.map +1 -0
  87. package/dist/ingestion/pipeline.js +114 -0
  88. package/dist/ingestion/rag-vector-service.d.ts +34 -0
  89. package/dist/ingestion/rag-vector-service.d.ts.map +1 -0
  90. package/dist/ingestion/rag-vector-service.js +98 -0
  91. package/dist/ingestion/reranker.d.ts +10 -0
  92. package/dist/ingestion/reranker.d.ts.map +1 -0
  93. package/dist/ingestion/reranker.js +41 -0
  94. package/dist/ingestion/text-splitter.d.ts +25 -0
  95. package/dist/ingestion/text-splitter.d.ts.map +1 -0
  96. package/dist/ingestion/text-splitter.js +119 -0
  97. package/dist/llm/cache-utils.d.ts +146 -0
  98. package/dist/llm/cache-utils.d.ts.map +1 -0
  99. package/dist/llm/cache-utils.js +204 -0
  100. package/dist/llm/client.d.ts +134 -0
  101. package/dist/llm/client.d.ts.map +1 -0
  102. package/dist/llm/client.js +497 -0
  103. package/dist/llm/key-validator.d.ts +25 -0
  104. package/dist/llm/key-validator.d.ts.map +1 -0
  105. package/dist/llm/key-validator.js +101 -0
  106. package/dist/llm/provider-health.d.ts +40 -0
  107. package/dist/llm/provider-health.d.ts.map +1 -0
  108. package/dist/llm/provider-health.js +97 -0
  109. package/dist/llm/providers/anthropic.d.ts +31 -0
  110. package/dist/llm/providers/anthropic.d.ts.map +1 -0
  111. package/dist/llm/providers/anthropic.js +248 -0
  112. package/dist/llm/providers/base.d.ts +111 -0
  113. package/dist/llm/providers/base.d.ts.map +1 -0
  114. package/dist/llm/providers/base.js +6 -0
  115. package/dist/llm/providers/groq.d.ts +23 -0
  116. package/dist/llm/providers/groq.d.ts.map +1 -0
  117. package/dist/llm/providers/groq.js +27 -0
  118. package/dist/llm/providers/ollama.d.ts +27 -0
  119. package/dist/llm/providers/ollama.d.ts.map +1 -0
  120. package/dist/llm/providers/ollama.js +48 -0
  121. package/dist/llm/providers/openai.d.ts +19 -0
  122. package/dist/llm/providers/openai.d.ts.map +1 -0
  123. package/dist/llm/providers/openai.js +245 -0
  124. package/dist/llm/providers/vultr.d.ts +18 -0
  125. package/dist/llm/providers/vultr.d.ts.map +1 -0
  126. package/dist/llm/providers/vultr.js +168 -0
  127. package/dist/llm/response-cache.d.ts +166 -0
  128. package/dist/llm/response-cache.d.ts.map +1 -0
  129. package/dist/llm/response-cache.js +233 -0
  130. package/dist/llm/semantic-cache.d.ts +179 -0
  131. package/dist/llm/semantic-cache.d.ts.map +1 -0
  132. package/dist/llm/semantic-cache.js +306 -0
  133. package/dist/llm/server.d.ts +14 -0
  134. package/dist/llm/server.d.ts.map +1 -0
  135. package/dist/llm/server.js +15 -0
  136. package/dist/llm/token-counter.d.ts +48 -0
  137. package/dist/llm/token-counter.d.ts.map +1 -0
  138. package/dist/llm/token-counter.js +77 -0
  139. package/dist/llm/workspace-provider-config.d.ts +38 -0
  140. package/dist/llm/workspace-provider-config.d.ts.map +1 -0
  141. package/dist/llm/workspace-provider-config.js +47 -0
  142. package/dist/memory/agent/context-manager.d.ts +148 -0
  143. package/dist/memory/agent/context-manager.d.ts.map +1 -0
  144. package/dist/memory/agent/context-manager.js +284 -0
  145. package/dist/memory/agent/index.d.ts +7 -0
  146. package/dist/memory/agent/index.d.ts.map +1 -0
  147. package/dist/memory/agent/index.js +6 -0
  148. package/dist/memory/crdt/index.d.ts +13 -0
  149. package/dist/memory/crdt/index.d.ts.map +1 -0
  150. package/dist/memory/crdt/index.js +12 -0
  151. package/dist/memory/crdt/lww-register.d.ts +108 -0
  152. package/dist/memory/crdt/lww-register.d.ts.map +1 -0
  153. package/dist/memory/crdt/lww-register.js +169 -0
  154. package/dist/memory/crdt/or-set.d.ts +141 -0
  155. package/dist/memory/crdt/or-set.d.ts.map +1 -0
  156. package/dist/memory/crdt/or-set.js +291 -0
  157. package/dist/memory/crdt/pn-counter.d.ts +116 -0
  158. package/dist/memory/crdt/pn-counter.d.ts.map +1 -0
  159. package/dist/memory/crdt/pn-counter.js +174 -0
  160. package/dist/memory/crdt/vector-clock.d.ts +115 -0
  161. package/dist/memory/crdt/vector-clock.d.ts.map +1 -0
  162. package/dist/memory/crdt/vector-clock.js +179 -0
  163. package/dist/memory/errors/index.d.ts +56 -0
  164. package/dist/memory/errors/index.d.ts.map +1 -0
  165. package/dist/memory/errors/index.js +85 -0
  166. package/dist/memory/index.d.ts +21 -0
  167. package/dist/memory/index.d.ts.map +1 -0
  168. package/dist/memory/index.js +20 -0
  169. package/dist/memory/persistence/crdt-persistence.d.ts +85 -0
  170. package/dist/memory/persistence/crdt-persistence.d.ts.map +1 -0
  171. package/dist/memory/persistence/crdt-persistence.js +204 -0
  172. package/dist/memory/persistence/index.d.ts +7 -0
  173. package/dist/memory/persistence/index.d.ts.map +1 -0
  174. package/dist/memory/persistence/index.js +6 -0
  175. package/dist/memory/preferences/index.d.ts +7 -0
  176. package/dist/memory/preferences/index.d.ts.map +1 -0
  177. package/dist/memory/preferences/index.js +6 -0
  178. package/dist/memory/preferences/user-preferences-manager.d.ts +133 -0
  179. package/dist/memory/preferences/user-preferences-manager.d.ts.map +1 -0
  180. package/dist/memory/preferences/user-preferences-manager.js +342 -0
  181. package/dist/memory/services/index.d.ts +8 -0
  182. package/dist/memory/services/index.d.ts.map +1 -0
  183. package/dist/memory/services/index.js +6 -0
  184. package/dist/memory/services/node-id-service.d.ts +75 -0
  185. package/dist/memory/services/node-id-service.d.ts.map +1 -0
  186. package/dist/memory/services/node-id-service.js +190 -0
  187. package/dist/memory/stores/episodic-memory.d.ts +182 -0
  188. package/dist/memory/stores/episodic-memory.d.ts.map +1 -0
  189. package/dist/memory/stores/episodic-memory.js +378 -0
  190. package/dist/memory/stores/index.d.ts +16 -0
  191. package/dist/memory/stores/index.d.ts.map +1 -0
  192. package/dist/memory/stores/index.js +15 -0
  193. package/dist/memory/stores/procedural-memory.d.ts +89 -0
  194. package/dist/memory/stores/procedural-memory.d.ts.map +1 -0
  195. package/dist/memory/stores/procedural-memory.js +152 -0
  196. package/dist/memory/stores/semantic-memory.d.ts +92 -0
  197. package/dist/memory/stores/semantic-memory.d.ts.map +1 -0
  198. package/dist/memory/stores/semantic-memory.js +155 -0
  199. package/dist/memory/stores/working-memory.d.ts +225 -0
  200. package/dist/memory/stores/working-memory.d.ts.map +1 -0
  201. package/dist/memory/stores/working-memory.js +336 -0
  202. package/dist/memory/utils/deep-clone.d.ts +10 -0
  203. package/dist/memory/utils/deep-clone.d.ts.map +1 -0
  204. package/dist/memory/utils/deep-clone.js +9 -0
  205. package/dist/memory/utils/index.d.ts +8 -0
  206. package/dist/memory/utils/index.d.ts.map +1 -0
  207. package/dist/memory/utils/index.js +7 -0
  208. package/dist/memory/utils/logger.d.ts +21 -0
  209. package/dist/memory/utils/logger.d.ts.map +1 -0
  210. package/dist/memory/utils/logger.js +62 -0
  211. package/dist/memory/utils/sql-helpers.d.ts +97 -0
  212. package/dist/memory/utils/sql-helpers.d.ts.map +1 -0
  213. package/dist/memory/utils/sql-helpers.js +214 -0
  214. package/dist/memory/utils/validation.d.ts +62 -0
  215. package/dist/memory/utils/validation.d.ts.map +1 -0
  216. package/dist/memory/utils/validation.js +244 -0
  217. package/dist/memory/vector/index.d.ts +12 -0
  218. package/dist/memory/vector/index.d.ts.map +1 -0
  219. package/dist/memory/vector/index.js +14 -0
  220. package/dist/memory/vector/vector-memory-service.d.ts +88 -0
  221. package/dist/memory/vector/vector-memory-service.d.ts.map +1 -0
  222. package/dist/memory/vector/vector-memory-service.js +335 -0
  223. package/dist/observability/logger.d.ts +79 -0
  224. package/dist/observability/logger.d.ts.map +1 -0
  225. package/dist/observability/logger.js +165 -0
  226. package/dist/observability/metrics.d.ts +43 -0
  227. package/dist/observability/metrics.d.ts.map +1 -0
  228. package/dist/observability/metrics.js +197 -0
  229. package/dist/observability/query.d.ts +150 -0
  230. package/dist/observability/query.d.ts.map +1 -0
  231. package/dist/observability/query.js +339 -0
  232. package/dist/observability/types.d.ts +140 -0
  233. package/dist/observability/types.d.ts.map +1 -0
  234. package/dist/observability/types.js +6 -0
  235. package/dist/orchestration/agent.d.ts +98 -0
  236. package/dist/orchestration/agent.d.ts.map +1 -0
  237. package/dist/orchestration/agent.js +6 -0
  238. package/dist/orchestration/defaults.d.ts +21 -0
  239. package/dist/orchestration/defaults.d.ts.map +1 -0
  240. package/dist/orchestration/defaults.js +22 -0
  241. package/dist/orchestration/memory-integration.d.ts +58 -0
  242. package/dist/orchestration/memory-integration.d.ts.map +1 -0
  243. package/dist/orchestration/memory-integration.js +130 -0
  244. package/dist/orchestration/orchestrator.d.ts +67 -0
  245. package/dist/orchestration/orchestrator.d.ts.map +1 -0
  246. package/dist/orchestration/orchestrator.js +174 -0
  247. package/dist/orchestration/runtime.d.ts +82 -0
  248. package/dist/orchestration/runtime.d.ts.map +1 -0
  249. package/dist/orchestration/runtime.js +251 -0
  250. package/dist/orchestration/streaming-runtime.d.ts +36 -0
  251. package/dist/orchestration/streaming-runtime.d.ts.map +1 -0
  252. package/dist/orchestration/streaming-runtime.js +175 -0
  253. package/dist/orchestration/ticket-agent.d.ts +70 -0
  254. package/dist/orchestration/ticket-agent.d.ts.map +1 -0
  255. package/dist/orchestration/ticket-agent.js +146 -0
  256. package/dist/skills/activation/index.d.ts +7 -0
  257. package/dist/skills/activation/index.d.ts.map +1 -0
  258. package/dist/skills/activation/index.js +6 -0
  259. package/dist/skills/activation/skill-activator.d.ts +68 -0
  260. package/dist/skills/activation/skill-activator.d.ts.map +1 -0
  261. package/dist/skills/activation/skill-activator.js +224 -0
  262. package/dist/skills/catalog/catalog-search.d.ts +55 -0
  263. package/dist/skills/catalog/catalog-search.d.ts.map +1 -0
  264. package/dist/skills/catalog/catalog-search.js +111 -0
  265. package/dist/skills/catalog/catalog-types.d.ts +81 -0
  266. package/dist/skills/catalog/catalog-types.d.ts.map +1 -0
  267. package/dist/skills/catalog/catalog-types.js +66 -0
  268. package/dist/skills/catalog/index.d.ts +9 -0
  269. package/dist/skills/catalog/index.d.ts.map +1 -0
  270. package/dist/skills/catalog/index.js +7 -0
  271. package/dist/skills/catalog/vercel-catalog.d.ts +42 -0
  272. package/dist/skills/catalog/vercel-catalog.d.ts.map +1 -0
  273. package/dist/skills/catalog/vercel-catalog.js +189 -0
  274. package/dist/skills/compat/index.d.ts +9 -0
  275. package/dist/skills/compat/index.d.ts.map +1 -0
  276. package/dist/skills/compat/index.js +8 -0
  277. package/dist/skills/compat/skill-enhancer.d.ts +37 -0
  278. package/dist/skills/compat/skill-enhancer.d.ts.map +1 -0
  279. package/dist/skills/compat/skill-enhancer.js +76 -0
  280. package/dist/skills/compat/tool-mapper.d.ts +61 -0
  281. package/dist/skills/compat/tool-mapper.d.ts.map +1 -0
  282. package/dist/skills/compat/tool-mapper.js +168 -0
  283. package/dist/skills/compat/vercel-compat.d.ts +33 -0
  284. package/dist/skills/compat/vercel-compat.d.ts.map +1 -0
  285. package/dist/skills/compat/vercel-compat.js +132 -0
  286. package/dist/skills/index.d.ts +40 -0
  287. package/dist/skills/index.d.ts.map +1 -0
  288. package/dist/skills/index.js +47 -0
  289. package/dist/skills/integration/agent-skill-provider.d.ts +94 -0
  290. package/dist/skills/integration/agent-skill-provider.d.ts.map +1 -0
  291. package/dist/skills/integration/agent-skill-provider.js +161 -0
  292. package/dist/skills/integration/index.d.ts +7 -0
  293. package/dist/skills/integration/index.d.ts.map +1 -0
  294. package/dist/skills/integration/index.js +6 -0
  295. package/dist/skills/loader/github-loader.d.ts +61 -0
  296. package/dist/skills/loader/github-loader.d.ts.map +1 -0
  297. package/dist/skills/loader/github-loader.js +176 -0
  298. package/dist/skills/loader/index.d.ts +10 -0
  299. package/dist/skills/loader/index.d.ts.map +1 -0
  300. package/dist/skills/loader/index.js +9 -0
  301. package/dist/skills/loader/local-loader.d.ts +56 -0
  302. package/dist/skills/loader/local-loader.d.ts.map +1 -0
  303. package/dist/skills/loader/local-loader.js +186 -0
  304. package/dist/skills/loader/vercel-loader.d.ts +64 -0
  305. package/dist/skills/loader/vercel-loader.d.ts.map +1 -0
  306. package/dist/skills/loader/vercel-loader.js +313 -0
  307. package/dist/skills/loader/vercel-types.d.ts +64 -0
  308. package/dist/skills/loader/vercel-types.d.ts.map +1 -0
  309. package/dist/skills/loader/vercel-types.js +55 -0
  310. package/dist/skills/parser/index.d.ts +7 -0
  311. package/dist/skills/parser/index.d.ts.map +1 -0
  312. package/dist/skills/parser/index.js +6 -0
  313. package/dist/skills/parser/skill-md-parser.d.ts +64 -0
  314. package/dist/skills/parser/skill-md-parser.d.ts.map +1 -0
  315. package/dist/skills/parser/skill-md-parser.js +242 -0
  316. package/dist/skills/registry/index.d.ts +7 -0
  317. package/dist/skills/registry/index.d.ts.map +1 -0
  318. package/dist/skills/registry/index.js +6 -0
  319. package/dist/skills/registry/skill-registry.d.ts +133 -0
  320. package/dist/skills/registry/skill-registry.d.ts.map +1 -0
  321. package/dist/skills/registry/skill-registry.js +373 -0
  322. package/dist/skills/types.d.ts +216 -0
  323. package/dist/skills/types.d.ts.map +1 -0
  324. package/dist/skills/types.js +176 -0
  325. package/dist/templates/agent-spec.d.ts +138 -0
  326. package/dist/templates/agent-spec.d.ts.map +1 -0
  327. package/dist/templates/agent-spec.js +138 -0
  328. package/dist/templates/index.d.ts +56 -0
  329. package/dist/templates/index.d.ts.map +1 -0
  330. package/dist/templates/index.js +58 -0
  331. package/dist/templates/prompt-spec.d.ts +140 -0
  332. package/dist/templates/prompt-spec.d.ts.map +1 -0
  333. package/dist/templates/prompt-spec.js +210 -0
  334. package/dist/templates/skill-spec.d.ts +106 -0
  335. package/dist/templates/skill-spec.d.ts.map +1 -0
  336. package/dist/templates/skill-spec.js +119 -0
  337. package/dist/tools/base.d.ts +74 -0
  338. package/dist/tools/base.d.ts.map +1 -0
  339. package/dist/tools/base.js +6 -0
  340. package/dist/tools/cms/collection-tools.d.ts +36 -0
  341. package/dist/tools/cms/collection-tools.d.ts.map +1 -0
  342. package/dist/tools/cms/collection-tools.js +178 -0
  343. package/dist/tools/cms/factory.d.ts +89 -0
  344. package/dist/tools/cms/factory.d.ts.map +1 -0
  345. package/dist/tools/cms/factory.js +462 -0
  346. package/dist/tools/cms/global-tools.d.ts +21 -0
  347. package/dist/tools/cms/global-tools.d.ts.map +1 -0
  348. package/dist/tools/cms/global-tools.js +92 -0
  349. package/dist/tools/cms/index.d.ts +11 -0
  350. package/dist/tools/cms/index.d.ts.map +1 -0
  351. package/dist/tools/cms/index.js +11 -0
  352. package/dist/tools/cms/media-tools.d.ts +31 -0
  353. package/dist/tools/cms/media-tools.d.ts.map +1 -0
  354. package/dist/tools/cms/media-tools.js +140 -0
  355. package/dist/tools/cms/user-tools.d.ts +31 -0
  356. package/dist/tools/cms/user-tools.d.ts.map +1 -0
  357. package/dist/tools/cms/user-tools.js +135 -0
  358. package/dist/tools/deduplicator.d.ts +19 -0
  359. package/dist/tools/deduplicator.d.ts.map +1 -0
  360. package/dist/tools/deduplicator.js +53 -0
  361. package/dist/tools/document-summarizer.d.ts +11 -0
  362. package/dist/tools/document-summarizer.d.ts.map +1 -0
  363. package/dist/tools/document-summarizer.js +82 -0
  364. package/dist/tools/mcp-adapter.d.ts +66 -0
  365. package/dist/tools/mcp-adapter.d.ts.map +1 -0
  366. package/dist/tools/mcp-adapter.js +152 -0
  367. package/dist/tools/memory/index.d.ts +3 -0
  368. package/dist/tools/memory/index.d.ts.map +1 -0
  369. package/dist/tools/memory/index.js +1 -0
  370. package/dist/tools/memory/store-memory.d.ts +39 -0
  371. package/dist/tools/memory/store-memory.d.ts.map +1 -0
  372. package/dist/tools/memory/store-memory.js +94 -0
  373. package/dist/tools/registry.d.ts +14 -0
  374. package/dist/tools/registry.d.ts.map +1 -0
  375. package/dist/tools/registry.js +48 -0
  376. package/dist/tools/ticket-tools.d.ts +31 -0
  377. package/dist/tools/ticket-tools.d.ts.map +1 -0
  378. package/dist/tools/ticket-tools.js +74 -0
  379. package/dist/tools/web/duck-duck-go.d.ts +52 -0
  380. package/dist/tools/web/duck-duck-go.d.ts.map +1 -0
  381. package/dist/tools/web/duck-duck-go.js +202 -0
  382. package/dist/tools/web/exa.d.ts +34 -0
  383. package/dist/tools/web/exa.d.ts.map +1 -0
  384. package/dist/tools/web/exa.js +80 -0
  385. package/dist/tools/web/index.d.ts +6 -0
  386. package/dist/tools/web/index.d.ts.map +1 -0
  387. package/dist/tools/web/index.js +4 -0
  388. package/dist/tools/web/scraper.d.ts +9 -0
  389. package/dist/tools/web/scraper.d.ts.map +1 -0
  390. package/dist/tools/web/scraper.js +118 -0
  391. package/dist/tools/web/tavily.d.ts +32 -0
  392. package/dist/tools/web/tavily.d.ts.map +1 -0
  393. package/dist/tools/web/tavily.js +73 -0
  394. package/dist/tools/web/types.d.ts +31 -0
  395. package/dist/tools/web/types.d.ts.map +1 -0
  396. package/dist/tools/web/types.js +9 -0
  397. package/package.json +143 -0
@@ -0,0 +1,242 @@
1
+ /**
2
+ * SKILL.md Parser
3
+ *
4
+ * Parses SKILL.md files to extract YAML frontmatter and markdown instructions.
5
+ */
6
+ import { SkillMetadataSchema } from '../types.js';
7
+ // ---------------------------------------------------------------------------
8
+ // Minimal YAML parser/stringifier — replaces the `yaml` package.
9
+ // Handles the flat key-value + block-sequence subset used in SKILL.md files.
10
+ // ---------------------------------------------------------------------------
11
+ function yamlParseScalar(s) {
12
+ if ((s.startsWith('"') && s.endsWith('"')) || (s.startsWith("'") && s.endsWith("'"))) {
13
+ return s.slice(1, -1);
14
+ }
15
+ if (s === 'true')
16
+ return true;
17
+ if (s === 'false')
18
+ return false;
19
+ if (s === 'null' || s === '~')
20
+ return null;
21
+ if (/^-?\d+$/.test(s))
22
+ return Number(s);
23
+ if (/^-?\d+\.\d+$/.test(s))
24
+ return Number(s);
25
+ return s;
26
+ }
27
+ function yamlParseString(s) {
28
+ if ((s.startsWith('"') && s.endsWith('"')) || (s.startsWith("'") && s.endsWith("'"))) {
29
+ return s.slice(1, -1);
30
+ }
31
+ return s;
32
+ }
33
+ function yamlParse(input) {
34
+ const result = {};
35
+ const lines = input.split(/\r?\n/);
36
+ let i = 0;
37
+ while (i < lines.length) {
38
+ const line = lines[i++];
39
+ const trimmed = line.trim();
40
+ if (!trimmed || trimmed.startsWith('#'))
41
+ continue;
42
+ const colonIdx = line.indexOf(':');
43
+ if (colonIdx === -1)
44
+ continue;
45
+ const key = line.slice(0, colonIdx).trim();
46
+ const valuePart = line.slice(colonIdx + 1).trim();
47
+ if (valuePart === '') {
48
+ // Inline array: key: [a, b] OR block sequence (items follow indented with `- `)
49
+ const peek = lines[i]?.trim() ?? '';
50
+ if (peek.startsWith('[')) {
51
+ // inline — handled below on next iteration; should not happen in this branch
52
+ }
53
+ const items = [];
54
+ while (i < lines.length) {
55
+ const next = lines[i].trim();
56
+ if (next.startsWith('- ')) {
57
+ items.push(yamlParseString(next.slice(2).trim()));
58
+ i++;
59
+ }
60
+ else if (next === '-') {
61
+ items.push('');
62
+ i++;
63
+ }
64
+ else {
65
+ break;
66
+ }
67
+ }
68
+ if (items.length > 0)
69
+ result[key] = items;
70
+ }
71
+ else if (valuePart.startsWith('[') && valuePart.endsWith(']')) {
72
+ result[key] = valuePart
73
+ .slice(1, -1)
74
+ .split(',')
75
+ .map((s) => yamlParseString(s.trim()))
76
+ .filter(Boolean);
77
+ }
78
+ else {
79
+ result[key] = yamlParseScalar(valuePart);
80
+ }
81
+ }
82
+ return result;
83
+ }
84
+ function yamlQuote(s) {
85
+ if (s === '' ||
86
+ s === 'true' ||
87
+ s === 'false' ||
88
+ s === 'null' ||
89
+ /[:#[\]{}&*!|>'"@`]/.test(s) ||
90
+ /^\s|\s$/.test(s) ||
91
+ /^[\d-]/.test(s)) {
92
+ return `"${s.replace(/\\/g, '\\\\').replace(/"/g, '\\"')}"`;
93
+ }
94
+ return s;
95
+ }
96
+ function yamlStringify(obj, indent = 2) {
97
+ const pad = ' '.repeat(indent);
98
+ const lines = [];
99
+ for (const [key, value] of Object.entries(obj)) {
100
+ if (value === undefined || value === null)
101
+ continue;
102
+ if (Array.isArray(value)) {
103
+ lines.push(`${key}:`);
104
+ for (const item of value) {
105
+ lines.push(`${pad}- ${typeof item === 'string' ? yamlQuote(item) : String(item)}`);
106
+ }
107
+ }
108
+ else if (typeof value === 'string') {
109
+ lines.push(`${key}: ${yamlQuote(value)}`);
110
+ }
111
+ else {
112
+ lines.push(`${key}: ${value}`);
113
+ }
114
+ }
115
+ return `${lines.join('\n')}\n`;
116
+ }
117
+ /**
118
+ * Parse a SKILL.md file content into metadata and instructions.
119
+ *
120
+ * SKILL.md format:
121
+ * ```
122
+ * ---
123
+ * name: skill-name
124
+ * description: What this skill does
125
+ * ---
126
+ *
127
+ * # Instructions
128
+ *
129
+ * Markdown content here...
130
+ * ```
131
+ *
132
+ * @param content - Raw SKILL.md file content
133
+ * @returns Parsed skill metadata and instructions
134
+ * @throws Error if frontmatter is missing or invalid
135
+ */
136
+ export function parseSkillMd(content) {
137
+ // Extract frontmatter using --- delimiters
138
+ const frontmatterMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n---\r?\n([\s\S]*)$/);
139
+ if (!frontmatterMatch) {
140
+ throw new Error('SKILL.md must contain YAML frontmatter between --- delimiters');
141
+ }
142
+ const rawFrontmatter = frontmatterMatch[1] ?? '';
143
+ const instructions = frontmatterMatch[2] ?? '';
144
+ // Parse YAML
145
+ let parsedYaml;
146
+ try {
147
+ parsedYaml = yamlParse(rawFrontmatter);
148
+ }
149
+ catch (error) {
150
+ throw new Error(`Invalid YAML frontmatter: ${error instanceof Error ? error.message : String(error)}`);
151
+ }
152
+ // Normalize allowed-tools field
153
+ if (parsedYaml['allowed-tools'] && !parsedYaml.allowedTools) {
154
+ parsedYaml.allowedTools = parsedYaml['allowed-tools'];
155
+ parsedYaml['allowed-tools'] = undefined;
156
+ }
157
+ // Parse allowed-tools string format: "Bash(git:*) Read Write"
158
+ if (typeof parsedYaml.allowedTools === 'string') {
159
+ parsedYaml.allowedTools = parseAllowedToolsString(parsedYaml.allowedTools);
160
+ }
161
+ // Validate against schema
162
+ const parseResult = SkillMetadataSchema.safeParse(parsedYaml);
163
+ if (!parseResult.success) {
164
+ const errors = parseResult.error.issues.map((i) => `${i.path.join('.')}: ${i.message}`);
165
+ throw new Error(`Invalid skill metadata:\n${errors.join('\n')}`);
166
+ }
167
+ return {
168
+ metadata: parseResult.data,
169
+ instructions: instructions.trim(),
170
+ rawFrontmatter,
171
+ };
172
+ }
173
+ /**
174
+ * Parse allowed-tools string format into array.
175
+ *
176
+ * Example: "Bash(git:*) Read Write(*.ts)" -> ["Bash(git:*)", "Read", "Write(*.ts)"]
177
+ */
178
+ export function parseAllowedToolsString(spec) {
179
+ const tools = [];
180
+ let current = '';
181
+ let parenDepth = 0;
182
+ for (const char of spec) {
183
+ if (char === '(') {
184
+ parenDepth++;
185
+ current += char;
186
+ }
187
+ else if (char === ')') {
188
+ parenDepth--;
189
+ current += char;
190
+ }
191
+ else if (char === ' ' && parenDepth === 0) {
192
+ if (current.trim()) {
193
+ tools.push(current.trim());
194
+ }
195
+ current = '';
196
+ }
197
+ else {
198
+ current += char;
199
+ }
200
+ }
201
+ if (current.trim()) {
202
+ tools.push(current.trim());
203
+ }
204
+ return tools;
205
+ }
206
+ /**
207
+ * Extract only the metadata from a SKILL.md file (lightweight parsing).
208
+ * Used for loading skill listings without full content.
209
+ *
210
+ * @param content - Raw SKILL.md file content
211
+ * @returns Just the metadata portion
212
+ */
213
+ export function parseSkillMetadataOnly(content) {
214
+ const result = parseSkillMd(content);
215
+ return result.metadata;
216
+ }
217
+ /**
218
+ * Validate that a string is valid SKILL.md format.
219
+ *
220
+ * @param content - Content to validate
221
+ * @returns true if valid, error message if invalid
222
+ */
223
+ export function validateSkillMd(content) {
224
+ try {
225
+ parseSkillMd(content);
226
+ return true;
227
+ }
228
+ catch (error) {
229
+ return error instanceof Error ? error.message : String(error);
230
+ }
231
+ }
232
+ /**
233
+ * Generate a SKILL.md file from metadata and instructions.
234
+ *
235
+ * @param metadata - Skill metadata
236
+ * @param instructions - Markdown instructions
237
+ * @returns SKILL.md file content
238
+ */
239
+ export function generateSkillMd(metadata, instructions) {
240
+ const frontmatter = yamlStringify(metadata);
241
+ return `---\n${frontmatter}---\n\n${instructions}`;
242
+ }
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Skill Registry
3
+ *
4
+ * Central registry for managing installed skills.
5
+ */
6
+ export { globalSkillRegistry, SkillRegistry, type SkillStorageConfig } from './skill-registry.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/skills/registry/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAA"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Skill Registry
3
+ *
4
+ * Central registry for managing installed skills.
5
+ */
6
+ export { globalSkillRegistry, SkillRegistry } from './skill-registry.js';
@@ -0,0 +1,133 @@
1
+ /**
2
+ * Skill Registry
3
+ *
4
+ * Central registry for managing installed skills.
5
+ * Follows the pattern from tools/registry.ts.
6
+ */
7
+ import type { Skill, SkillMetadata } from '../types.js';
8
+ /**
9
+ * Storage location configuration.
10
+ */
11
+ export interface SkillStorageConfig {
12
+ /** Global skill directory (default: ~/.revealui/skills/) */
13
+ globalDir?: string;
14
+ /** Project-local skill directory (default: .revealui/skills/) */
15
+ localDir?: string;
16
+ /** Project root for resolving local paths */
17
+ projectRoot?: string;
18
+ }
19
+ /**
20
+ * Skill registry for managing installed skills.
21
+ */
22
+ export declare class SkillRegistry {
23
+ private skills;
24
+ private metadataCache;
25
+ /** Maps skill name (metadata or directory) to directory path */
26
+ private nameToPath;
27
+ private globalDir;
28
+ private localDir;
29
+ private projectRoot;
30
+ constructor(config?: SkillStorageConfig);
31
+ /**
32
+ * Get the resolved local directory path.
33
+ */
34
+ private getLocalDirPath;
35
+ /**
36
+ * Register a skill.
37
+ *
38
+ * @throws Error if skill name already registered
39
+ */
40
+ register(skill: Skill): void;
41
+ /**
42
+ * Unregister a skill by name.
43
+ */
44
+ unregister(name: string): void;
45
+ /**
46
+ * Get a skill by name.
47
+ */
48
+ get(name: string): Skill | undefined;
49
+ /**
50
+ * Check if a skill exists.
51
+ */
52
+ has(name: string): boolean;
53
+ /**
54
+ * Get all registered skills.
55
+ */
56
+ getAll(): Skill[];
57
+ /**
58
+ * Get all skill names.
59
+ */
60
+ getNames(): string[];
61
+ /**
62
+ * Load all skill metadata from disk (lightweight).
63
+ * Only loads frontmatter, not full instructions.
64
+ */
65
+ loadAllMetadata(): Promise<void>;
66
+ /**
67
+ * Load metadata from a specific directory.
68
+ */
69
+ private loadMetadataFromDirectory;
70
+ /**
71
+ * Get all loaded metadata (lightweight listing).
72
+ */
73
+ getAllMetadata(): SkillMetadata[];
74
+ /**
75
+ * Get metadata for a specific skill.
76
+ */
77
+ getMetadata(name: string): SkillMetadata | undefined;
78
+ /**
79
+ * Load a full skill from disk (including instructions and resources).
80
+ *
81
+ * @param name - Skill name (metadata name or directory name)
82
+ * @param generateEmbed - Whether to generate embedding for the skill
83
+ */
84
+ loadSkill(name: string, generateEmbed?: boolean): Promise<Skill | undefined>;
85
+ /**
86
+ * Load all skills from disk (full loading).
87
+ */
88
+ loadAllSkills(generateEmbeddings?: boolean): Promise<void>;
89
+ /**
90
+ * Load resources from a skill directory.
91
+ */
92
+ private loadResources;
93
+ /**
94
+ * Recursively walk a directory.
95
+ */
96
+ private walkDirectory;
97
+ /**
98
+ * Get install date from directory stats.
99
+ */
100
+ private getInstallDate;
101
+ /**
102
+ * Search skills by embedding similarity.
103
+ *
104
+ * @param query - Search query text
105
+ * @param threshold - Minimum similarity score (default 0.7)
106
+ * @param limit - Maximum results to return
107
+ */
108
+ searchByEmbedding(query: string, threshold?: number, limit?: number): Promise<Array<{
109
+ skill: Skill;
110
+ score: number;
111
+ }>>;
112
+ /**
113
+ * Search skills by keyword matching.
114
+ */
115
+ searchByKeyword(query: string): Skill[];
116
+ /**
117
+ * Get the installation directory for a skill.
118
+ */
119
+ getSkillDirectory(name: string, scope?: 'local' | 'global'): string;
120
+ /**
121
+ * Ensure a directory exists.
122
+ */
123
+ ensureDirectory(dir: string): void;
124
+ /**
125
+ * Clear the registry (for testing).
126
+ */
127
+ clear(): void;
128
+ }
129
+ /**
130
+ * Global skill registry instance.
131
+ */
132
+ export declare const globalSkillRegistry: SkillRegistry;
133
+ //# sourceMappingURL=skill-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-registry.d.ts","sourceRoot":"","sources":["../../../src/skills/registry/skill-registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAiB,MAAM,aAAa,CAAA;AA0BtE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAgC;IAC9C,OAAO,CAAC,aAAa,CAAwC;IAC7D,gEAAgE;IAChE,OAAO,CAAC,UAAU,CAAiC;IACnD,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,WAAW,CAAQ;gBAEf,MAAM,GAAE,kBAAuB;IAM3C;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAQ5B;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK9B;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAIpC;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B;;OAEG;IACH,MAAM,IAAI,KAAK,EAAE;IAIjB;;OAEG;IACH,QAAQ,IAAI,MAAM,EAAE;IAIpB;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAStC;;OAEG;YACW,yBAAyB;IA+BvC;;OAEG;IACH,cAAc,IAAI,aAAa,EAAE;IAIjC;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAIpD;;;;;OAKG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,UAAQ,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;IAsEhF;;OAEG;IACG,aAAa,CAAC,kBAAkB,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAe9D;;OAEG;YACW,aAAa;IA4B3B;;OAEG;IACH,OAAO,CAAC,aAAa;IAgBrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAStB;;;;;;OAMG;IACG,iBAAiB,CACrB,KAAK,EAAE,MAAM,EACb,SAAS,SAAM,EACf,KAAK,SAAK,GACT,OAAO,CAAC,KAAK,CAAC;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IA2BlD;;OAEG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE;IAmCvC;;OAEG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,OAAO,GAAG,QAAkB,GAAG,MAAM;IAO5E;;OAEG;IACH,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAMlC;;OAEG;IACH,KAAK,IAAI,IAAI;CAKd;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,eAAsB,CAAA"}