sandstream-kit 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 (519) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +617 -0
  3. package/dist/adapters/api-key-adapter.d.ts +35 -0
  4. package/dist/adapters/api-key-adapter.js +46 -0
  5. package/dist/adapters/api-key-adapter.js.map +1 -0
  6. package/dist/adapters/clerk-auth.d.ts +6 -0
  7. package/dist/adapters/clerk-auth.js +20 -0
  8. package/dist/adapters/clerk-auth.js.map +1 -0
  9. package/dist/adapters/cloudflare-r2.d.ts +6 -0
  10. package/dist/adapters/cloudflare-r2.js +136 -0
  11. package/dist/adapters/cloudflare-r2.js.map +1 -0
  12. package/dist/adapters/expo-eas.d.ts +6 -0
  13. package/dist/adapters/expo-eas.js +129 -0
  14. package/dist/adapters/expo-eas.js.map +1 -0
  15. package/dist/adapters/flagsmith-flags.d.ts +5 -0
  16. package/dist/adapters/flagsmith-flags.js +20 -0
  17. package/dist/adapters/flagsmith-flags.js.map +1 -0
  18. package/dist/adapters/flyio-hosting.d.ts +2 -0
  19. package/dist/adapters/flyio-hosting.js +143 -0
  20. package/dist/adapters/flyio-hosting.js.map +1 -0
  21. package/dist/adapters/index.d.ts +6 -0
  22. package/dist/adapters/index.js +48 -0
  23. package/dist/adapters/index.js.map +1 -0
  24. package/dist/adapters/inngest-background.d.ts +5 -0
  25. package/dist/adapters/inngest-background.js +19 -0
  26. package/dist/adapters/inngest-background.js.map +1 -0
  27. package/dist/adapters/liveblocks-realtime.d.ts +11 -0
  28. package/dist/adapters/liveblocks-realtime.js +62 -0
  29. package/dist/adapters/liveblocks-realtime.js.map +1 -0
  30. package/dist/adapters/loops-email.d.ts +6 -0
  31. package/dist/adapters/loops-email.js +18 -0
  32. package/dist/adapters/loops-email.js.map +1 -0
  33. package/dist/adapters/neon-db.d.ts +10 -0
  34. package/dist/adapters/neon-db.js +94 -0
  35. package/dist/adapters/neon-db.js.map +1 -0
  36. package/dist/adapters/planetscale-db.d.ts +11 -0
  37. package/dist/adapters/planetscale-db.js +134 -0
  38. package/dist/adapters/planetscale-db.js.map +1 -0
  39. package/dist/adapters/posthog-analytics.d.ts +6 -0
  40. package/dist/adapters/posthog-analytics.js +22 -0
  41. package/dist/adapters/posthog-analytics.js.map +1 -0
  42. package/dist/adapters/railway-hosting.d.ts +2 -0
  43. package/dist/adapters/railway-hosting.js +136 -0
  44. package/dist/adapters/railway-hosting.js.map +1 -0
  45. package/dist/adapters/resend-email.d.ts +35 -0
  46. package/dist/adapters/resend-email.js +109 -0
  47. package/dist/adapters/resend-email.js.map +1 -0
  48. package/dist/adapters/searxng-instance.d.ts +6 -0
  49. package/dist/adapters/searxng-instance.js +240 -0
  50. package/dist/adapters/searxng-instance.js.map +1 -0
  51. package/dist/adapters/sentry-monitoring.d.ts +7 -0
  52. package/dist/adapters/sentry-monitoring.js +27 -0
  53. package/dist/adapters/sentry-monitoring.js.map +1 -0
  54. package/dist/adapters/stripe-payments.d.ts +6 -0
  55. package/dist/adapters/stripe-payments.js +134 -0
  56. package/dist/adapters/stripe-payments.js.map +1 -0
  57. package/dist/adapters/supabase-db.d.ts +6 -0
  58. package/dist/adapters/supabase-db.js +130 -0
  59. package/dist/adapters/supabase-db.js.map +1 -0
  60. package/dist/adapters/tinybird-analytics.d.ts +5 -0
  61. package/dist/adapters/tinybird-analytics.js +20 -0
  62. package/dist/adapters/tinybird-analytics.js.map +1 -0
  63. package/dist/adapters/trigger-background.d.ts +6 -0
  64. package/dist/adapters/trigger-background.js +20 -0
  65. package/dist/adapters/trigger-background.js.map +1 -0
  66. package/dist/adapters/types.d.ts +7 -0
  67. package/dist/adapters/types.js +2 -0
  68. package/dist/adapters/types.js.map +1 -0
  69. package/dist/adapters/upstash-redis.d.ts +6 -0
  70. package/dist/adapters/upstash-redis.js +88 -0
  71. package/dist/adapters/upstash-redis.js.map +1 -0
  72. package/dist/adapters/vercel-hosting.d.ts +6 -0
  73. package/dist/adapters/vercel-hosting.js +112 -0
  74. package/dist/adapters/vercel-hosting.js.map +1 -0
  75. package/dist/agent-adapter-model.d.ts +108 -0
  76. package/dist/agent-adapter-model.js +6 -0
  77. package/dist/agent-adapter-model.js.map +1 -0
  78. package/dist/agent-adapter-service.d.ts +67 -0
  79. package/dist/agent-adapter-service.js +299 -0
  80. package/dist/agent-adapter-service.js.map +1 -0
  81. package/dist/agent-config.d.ts +56 -0
  82. package/dist/agent-config.js +129 -0
  83. package/dist/agent-config.js.map +1 -0
  84. package/dist/agent-governance-model.d.ts +128 -0
  85. package/dist/agent-governance-model.js +6 -0
  86. package/dist/agent-governance-model.js.map +1 -0
  87. package/dist/agent-governance-service.d.ts +101 -0
  88. package/dist/agent-governance-service.js +319 -0
  89. package/dist/agent-governance-service.js.map +1 -0
  90. package/dist/alert-rules-engine.d.ts +102 -0
  91. package/dist/alert-rules-engine.js +210 -0
  92. package/dist/alert-rules-engine.js.map +1 -0
  93. package/dist/analytics-service.d.ts +126 -0
  94. package/dist/analytics-service.js +318 -0
  95. package/dist/analytics-service.js.map +1 -0
  96. package/dist/analyze.d.ts +19 -0
  97. package/dist/analyze.js +311 -0
  98. package/dist/analyze.js.map +1 -0
  99. package/dist/apm-instrumentor.d.ts +119 -0
  100. package/dist/apm-instrumentor.js +225 -0
  101. package/dist/apm-instrumentor.js.map +1 -0
  102. package/dist/approval-model.d.ts +82 -0
  103. package/dist/approval-model.js +6 -0
  104. package/dist/approval-model.js.map +1 -0
  105. package/dist/approval-service.d.ts +39 -0
  106. package/dist/approval-service.js +236 -0
  107. package/dist/approval-service.js.map +1 -0
  108. package/dist/approval.d.ts +22 -0
  109. package/dist/approval.js +148 -0
  110. package/dist/approval.js.map +1 -0
  111. package/dist/audit-logging-model.d.ts +157 -0
  112. package/dist/audit-logging-model.js +6 -0
  113. package/dist/audit-logging-model.js.map +1 -0
  114. package/dist/audit-logging-service.d.ts +89 -0
  115. package/dist/audit-logging-service.js +367 -0
  116. package/dist/audit-logging-service.js.map +1 -0
  117. package/dist/audit-secrets.d.ts +42 -0
  118. package/dist/audit-secrets.js +126 -0
  119. package/dist/audit-secrets.js.map +1 -0
  120. package/dist/audit.d.ts +43 -0
  121. package/dist/audit.js +286 -0
  122. package/dist/audit.js.map +1 -0
  123. package/dist/author-dashboard.d.ts +84 -0
  124. package/dist/author-dashboard.js +204 -0
  125. package/dist/author-dashboard.js.map +1 -0
  126. package/dist/author-notifications.d.ts +130 -0
  127. package/dist/author-notifications.js +261 -0
  128. package/dist/author-notifications.js.map +1 -0
  129. package/dist/author-verification.d.ts +79 -0
  130. package/dist/author-verification.js +257 -0
  131. package/dist/author-verification.js.map +1 -0
  132. package/dist/autonomous-setup-model.d.ts +117 -0
  133. package/dist/autonomous-setup-model.js +6 -0
  134. package/dist/autonomous-setup-model.js.map +1 -0
  135. package/dist/autonomous-setup-service.d.ts +74 -0
  136. package/dist/autonomous-setup-service.js +325 -0
  137. package/dist/autonomous-setup-service.js.map +1 -0
  138. package/dist/badge-system.d.ts +70 -0
  139. package/dist/badge-system.js +210 -0
  140. package/dist/badge-system.js.map +1 -0
  141. package/dist/baseline.d.ts +34 -0
  142. package/dist/baseline.js +78 -0
  143. package/dist/baseline.js.map +1 -0
  144. package/dist/beta-program-service.d.ts +112 -0
  145. package/dist/beta-program-service.js +240 -0
  146. package/dist/beta-program-service.js.map +1 -0
  147. package/dist/budget.d.ts +34 -0
  148. package/dist/budget.js +159 -0
  149. package/dist/budget.js.map +1 -0
  150. package/dist/bumblebee.d.ts +143 -0
  151. package/dist/bumblebee.js +384 -0
  152. package/dist/bumblebee.js.map +1 -0
  153. package/dist/cache-manager.d.ts +97 -0
  154. package/dist/cache-manager.js +244 -0
  155. package/dist/cache-manager.js.map +1 -0
  156. package/dist/cdn-adapter.d.ts +64 -0
  157. package/dist/cdn-adapter.js +263 -0
  158. package/dist/cdn-adapter.js.map +1 -0
  159. package/dist/certification-workflow-model.d.ts +95 -0
  160. package/dist/certification-workflow-model.js +6 -0
  161. package/dist/certification-workflow-model.js.map +1 -0
  162. package/dist/certification-workflow-service.d.ts +72 -0
  163. package/dist/certification-workflow-service.js +305 -0
  164. package/dist/certification-workflow-service.js.map +1 -0
  165. package/dist/check-design.d.ts +38 -0
  166. package/dist/check-design.js +256 -0
  167. package/dist/check-design.js.map +1 -0
  168. package/dist/check-gitignore.d.ts +39 -0
  169. package/dist/check-gitignore.js +156 -0
  170. package/dist/check-gitignore.js.map +1 -0
  171. package/dist/check-hooks.d.ts +15 -0
  172. package/dist/check-hooks.js +72 -0
  173. package/dist/check-hooks.js.map +1 -0
  174. package/dist/check-lock.d.ts +16 -0
  175. package/dist/check-lock.js +94 -0
  176. package/dist/check-lock.js.map +1 -0
  177. package/dist/check-secrets.d.ts +11 -0
  178. package/dist/check-secrets.js +320 -0
  179. package/dist/check-secrets.js.map +1 -0
  180. package/dist/check-security.d.ts +13 -0
  181. package/dist/check-security.js +887 -0
  182. package/dist/check-security.js.map +1 -0
  183. package/dist/check-services.d.ts +10 -0
  184. package/dist/check-services.js +44 -0
  185. package/dist/check-services.js.map +1 -0
  186. package/dist/check-skills.d.ts +8 -0
  187. package/dist/check-skills.js +26 -0
  188. package/dist/check-skills.js.map +1 -0
  189. package/dist/check-tests.d.ts +43 -0
  190. package/dist/check-tests.js +175 -0
  191. package/dist/check-tests.js.map +1 -0
  192. package/dist/check-tools.d.ts +8 -0
  193. package/dist/check-tools.js +42 -0
  194. package/dist/check-tools.js.map +1 -0
  195. package/dist/check-web-search.d.ts +12 -0
  196. package/dist/check-web-search.js +168 -0
  197. package/dist/check-web-search.js.map +1 -0
  198. package/dist/ci-cd-publisher.d.ts +162 -0
  199. package/dist/ci-cd-publisher.js +319 -0
  200. package/dist/ci-cd-publisher.js.map +1 -0
  201. package/dist/cli.d.ts +2 -0
  202. package/dist/cli.js +4074 -0
  203. package/dist/cli.js.map +1 -0
  204. package/dist/clone.d.ts +25 -0
  205. package/dist/clone.js +73 -0
  206. package/dist/clone.js.map +1 -0
  207. package/dist/completions.d.ts +8 -0
  208. package/dist/completions.js +250 -0
  209. package/dist/completions.js.map +1 -0
  210. package/dist/compression-manager.d.ts +107 -0
  211. package/dist/compression-manager.js +250 -0
  212. package/dist/compression-manager.js.map +1 -0
  213. package/dist/config.d.ts +233 -0
  214. package/dist/config.js +255 -0
  215. package/dist/config.js.map +1 -0
  216. package/dist/context.d.ts +38 -0
  217. package/dist/context.js +86 -0
  218. package/dist/context.js.map +1 -0
  219. package/dist/cost-monitor.d.ts +72 -0
  220. package/dist/cost-monitor.js +218 -0
  221. package/dist/cost-monitor.js.map +1 -0
  222. package/dist/create-plugin.d.ts +22 -0
  223. package/dist/create-plugin.js +266 -0
  224. package/dist/create-plugin.js.map +1 -0
  225. package/dist/database.d.ts +123 -0
  226. package/dist/database.js +354 -0
  227. package/dist/database.js.map +1 -0
  228. package/dist/datadog-adapter.d.ts +60 -0
  229. package/dist/datadog-adapter.js +245 -0
  230. package/dist/datadog-adapter.js.map +1 -0
  231. package/dist/doctor.d.ts +15 -0
  232. package/dist/doctor.js +131 -0
  233. package/dist/doctor.js.map +1 -0
  234. package/dist/documentation-generator.d.ts +226 -0
  235. package/dist/documentation-generator.js +348 -0
  236. package/dist/documentation-generator.js.map +1 -0
  237. package/dist/elevation-scopes.d.ts +40 -0
  238. package/dist/elevation-scopes.js +110 -0
  239. package/dist/elevation-scopes.js.map +1 -0
  240. package/dist/elevation.d.ts +102 -0
  241. package/dist/elevation.js +449 -0
  242. package/dist/elevation.js.map +1 -0
  243. package/dist/env-diff.d.ts +27 -0
  244. package/dist/env-diff.js +104 -0
  245. package/dist/env-diff.js.map +1 -0
  246. package/dist/env-inspect.d.ts +28 -0
  247. package/dist/env-inspect.js +81 -0
  248. package/dist/env-inspect.js.map +1 -0
  249. package/dist/env-switch.d.ts +37 -0
  250. package/dist/env-switch.js +102 -0
  251. package/dist/env-switch.js.map +1 -0
  252. package/dist/environment.d.ts +27 -0
  253. package/dist/environment.js +148 -0
  254. package/dist/environment.js.map +1 -0
  255. package/dist/error-tracker.d.ts +92 -0
  256. package/dist/error-tracker.js +206 -0
  257. package/dist/error-tracker.js.map +1 -0
  258. package/dist/escalate.d.ts +11 -0
  259. package/dist/escalate.js +73 -0
  260. package/dist/escalate.js.map +1 -0
  261. package/dist/event-stream.d.ts +81 -0
  262. package/dist/event-stream.js +161 -0
  263. package/dist/event-stream.js.map +1 -0
  264. package/dist/fix.d.ts +42 -0
  265. package/dist/fix.js +419 -0
  266. package/dist/fix.js.map +1 -0
  267. package/dist/governance-middleware.d.ts +22 -0
  268. package/dist/governance-middleware.js +173 -0
  269. package/dist/governance-middleware.js.map +1 -0
  270. package/dist/governance.d.ts +44 -0
  271. package/dist/governance.js +236 -0
  272. package/dist/governance.js.map +1 -0
  273. package/dist/hooks.d.ts +25 -0
  274. package/dist/hooks.js +281 -0
  275. package/dist/hooks.js.map +1 -0
  276. package/dist/id-generator.d.ts +43 -0
  277. package/dist/id-generator.js +47 -0
  278. package/dist/id-generator.js.map +1 -0
  279. package/dist/image-optimizer.d.ts +92 -0
  280. package/dist/image-optimizer.js +202 -0
  281. package/dist/image-optimizer.js.map +1 -0
  282. package/dist/install.d.ts +15 -0
  283. package/dist/install.js +59 -0
  284. package/dist/install.js.map +1 -0
  285. package/dist/lock.d.ts +82 -0
  286. package/dist/lock.js +264 -0
  287. package/dist/lock.js.map +1 -0
  288. package/dist/login.d.ts +23 -0
  289. package/dist/login.js +132 -0
  290. package/dist/login.js.map +1 -0
  291. package/dist/mcp-kit-tools-model.d.ts +195 -0
  292. package/dist/mcp-kit-tools-model.js +6 -0
  293. package/dist/mcp-kit-tools-model.js.map +1 -0
  294. package/dist/mcp-kit-tools-service.d.ts +127 -0
  295. package/dist/mcp-kit-tools-service.js +943 -0
  296. package/dist/mcp-kit-tools-service.js.map +1 -0
  297. package/dist/mcp-orchestrator.d.ts +70 -0
  298. package/dist/mcp-orchestrator.js +175 -0
  299. package/dist/mcp-orchestrator.js.map +1 -0
  300. package/dist/mcp-server.d.ts +3 -0
  301. package/dist/mcp-server.js +722 -0
  302. package/dist/mcp-server.js.map +1 -0
  303. package/dist/middleware/rate-limiter.d.ts +74 -0
  304. package/dist/middleware/rate-limiter.js +342 -0
  305. package/dist/middleware/rate-limiter.js.map +1 -0
  306. package/dist/migration-runner.d.ts +66 -0
  307. package/dist/migration-runner.js +192 -0
  308. package/dist/migration-runner.js.map +1 -0
  309. package/dist/migrations.d.ts +25 -0
  310. package/dist/migrations.js +530 -0
  311. package/dist/migrations.js.map +1 -0
  312. package/dist/moderation-system.d.ts +153 -0
  313. package/dist/moderation-system.js +338 -0
  314. package/dist/moderation-system.js.map +1 -0
  315. package/dist/multi-agent-workflow-model.d.ts +125 -0
  316. package/dist/multi-agent-workflow-model.js +6 -0
  317. package/dist/multi-agent-workflow-model.js.map +1 -0
  318. package/dist/multi-agent-workflow-service.d.ts +102 -0
  319. package/dist/multi-agent-workflow-service.js +452 -0
  320. package/dist/multi-agent-workflow-service.js.map +1 -0
  321. package/dist/onepassword.d.ts +75 -0
  322. package/dist/onepassword.js +140 -0
  323. package/dist/onepassword.js.map +1 -0
  324. package/dist/open.d.ts +30 -0
  325. package/dist/open.js +166 -0
  326. package/dist/open.js.map +1 -0
  327. package/dist/output.d.ts +32 -0
  328. package/dist/output.js +295 -0
  329. package/dist/output.js.map +1 -0
  330. package/dist/partner-service.d.ts +101 -0
  331. package/dist/partner-service.js +191 -0
  332. package/dist/partner-service.js.map +1 -0
  333. package/dist/payout-service.d.ts +136 -0
  334. package/dist/payout-service.js +293 -0
  335. package/dist/payout-service.js.map +1 -0
  336. package/dist/pkg.d.ts +30 -0
  337. package/dist/pkg.js +162 -0
  338. package/dist/pkg.js.map +1 -0
  339. package/dist/plugin-loader.d.ts +16 -0
  340. package/dist/plugin-loader.js +124 -0
  341. package/dist/plugin-loader.js.map +1 -0
  342. package/dist/plugin-registry-model.d.ts +133 -0
  343. package/dist/plugin-registry-model.js +6 -0
  344. package/dist/plugin-registry-model.js.map +1 -0
  345. package/dist/plugin-registry-service.d.ts +109 -0
  346. package/dist/plugin-registry-service.js +361 -0
  347. package/dist/plugin-registry-service.js.map +1 -0
  348. package/dist/plugin-registry.d.ts +58 -0
  349. package/dist/plugin-registry.js +108 -0
  350. package/dist/plugin-registry.js.map +1 -0
  351. package/dist/plugin-updates.d.ts +135 -0
  352. package/dist/plugin-updates.js +326 -0
  353. package/dist/plugin-updates.js.map +1 -0
  354. package/dist/plugins-cli.d.ts +7 -0
  355. package/dist/plugins-cli.js +157 -0
  356. package/dist/plugins-cli.js.map +1 -0
  357. package/dist/plugins.d.ts +88 -0
  358. package/dist/plugins.js +251 -0
  359. package/dist/plugins.js.map +1 -0
  360. package/dist/policy.d.ts +66 -0
  361. package/dist/policy.js +160 -0
  362. package/dist/policy.js.map +1 -0
  363. package/dist/post-pull-audit.d.ts +39 -0
  364. package/dist/post-pull-audit.js +151 -0
  365. package/dist/post-pull-audit.js.map +1 -0
  366. package/dist/provision.d.ts +17 -0
  367. package/dist/provision.js +147 -0
  368. package/dist/provision.js.map +1 -0
  369. package/dist/query-optimizer.d.ts +102 -0
  370. package/dist/query-optimizer.js +199 -0
  371. package/dist/query-optimizer.js.map +1 -0
  372. package/dist/read-only-mode.d.ts +46 -0
  373. package/dist/read-only-mode.js +71 -0
  374. package/dist/read-only-mode.js.map +1 -0
  375. package/dist/redis-adapter.d.ts +71 -0
  376. package/dist/redis-adapter.js +278 -0
  377. package/dist/redis-adapter.js.map +1 -0
  378. package/dist/resilience-tests.d.ts +120 -0
  379. package/dist/resilience-tests.js +293 -0
  380. package/dist/resilience-tests.js.map +1 -0
  381. package/dist/revocation.d.ts +22 -0
  382. package/dist/revocation.js +100 -0
  383. package/dist/revocation.js.map +1 -0
  384. package/dist/run.d.ts +21 -0
  385. package/dist/run.js +80 -0
  386. package/dist/run.js.map +1 -0
  387. package/dist/scan-build.d.ts +18 -0
  388. package/dist/scan-build.js +100 -0
  389. package/dist/scan-build.js.map +1 -0
  390. package/dist/scan-plaintext.d.ts +24 -0
  391. package/dist/scan-plaintext.js +147 -0
  392. package/dist/scan-plaintext.js.map +1 -0
  393. package/dist/scan-staged.d.ts +15 -0
  394. package/dist/scan-staged.js +70 -0
  395. package/dist/scan-staged.js.map +1 -0
  396. package/dist/scan-transcripts.d.ts +23 -0
  397. package/dist/scan-transcripts.js +93 -0
  398. package/dist/scan-transcripts.js.map +1 -0
  399. package/dist/secret-backends.d.ts +50 -0
  400. package/dist/secret-backends.js +510 -0
  401. package/dist/secret-backends.js.map +1 -0
  402. package/dist/secret-expiration.d.ts +46 -0
  403. package/dist/secret-expiration.js +172 -0
  404. package/dist/secret-expiration.js.map +1 -0
  405. package/dist/secrets-migrate.d.ts +75 -0
  406. package/dist/secrets-migrate.js +185 -0
  407. package/dist/secrets-migrate.js.map +1 -0
  408. package/dist/secrets-model.d.ts +77 -0
  409. package/dist/secrets-model.js +6 -0
  410. package/dist/secrets-model.js.map +1 -0
  411. package/dist/secrets-onecli.d.ts +65 -0
  412. package/dist/secrets-onecli.js +113 -0
  413. package/dist/secrets-onecli.js.map +1 -0
  414. package/dist/secrets-propagate.d.ts +48 -0
  415. package/dist/secrets-propagate.js +201 -0
  416. package/dist/secrets-propagate.js.map +1 -0
  417. package/dist/secrets-pull.d.ts +34 -0
  418. package/dist/secrets-pull.js +118 -0
  419. package/dist/secrets-pull.js.map +1 -0
  420. package/dist/secrets-purge-history.d.ts +53 -0
  421. package/dist/secrets-purge-history.js +144 -0
  422. package/dist/secrets-purge-history.js.map +1 -0
  423. package/dist/secrets-rotate-cli.d.ts +54 -0
  424. package/dist/secrets-rotate-cli.js +438 -0
  425. package/dist/secrets-rotate-cli.js.map +1 -0
  426. package/dist/secrets-rotate.d.ts +38 -0
  427. package/dist/secrets-rotate.js +65 -0
  428. package/dist/secrets-rotate.js.map +1 -0
  429. package/dist/secrets-service.d.ts +73 -0
  430. package/dist/secrets-service.js +283 -0
  431. package/dist/secrets-service.js.map +1 -0
  432. package/dist/secrets-set.d.ts +25 -0
  433. package/dist/secrets-set.js +33 -0
  434. package/dist/secrets-set.js.map +1 -0
  435. package/dist/secrets-sync.d.ts +21 -0
  436. package/dist/secrets-sync.js +215 -0
  437. package/dist/secrets-sync.js.map +1 -0
  438. package/dist/secrets-validate.d.ts +41 -0
  439. package/dist/secrets-validate.js +126 -0
  440. package/dist/secrets-validate.js.map +1 -0
  441. package/dist/secrets-vault-migrate.d.ts +71 -0
  442. package/dist/secrets-vault-migrate.js +258 -0
  443. package/dist/secrets-vault-migrate.js.map +1 -0
  444. package/dist/secrets.d.ts +16 -0
  445. package/dist/secrets.js +72 -0
  446. package/dist/secrets.js.map +1 -0
  447. package/dist/security-hardening.d.ts +150 -0
  448. package/dist/security-hardening.js +275 -0
  449. package/dist/security-hardening.js.map +1 -0
  450. package/dist/security-policy.d.ts +89 -0
  451. package/dist/security-policy.js +174 -0
  452. package/dist/security-policy.js.map +1 -0
  453. package/dist/security-prescan.d.ts +117 -0
  454. package/dist/security-prescan.js +566 -0
  455. package/dist/security-prescan.js.map +1 -0
  456. package/dist/sentry-adapter.d.ts +49 -0
  457. package/dist/sentry-adapter.js +227 -0
  458. package/dist/sentry-adapter.js.map +1 -0
  459. package/dist/service-adapter.d.ts +94 -0
  460. package/dist/service-adapter.js +162 -0
  461. package/dist/service-adapter.js.map +1 -0
  462. package/dist/skills.d.ts +13 -0
  463. package/dist/skills.js +17 -0
  464. package/dist/skills.js.map +1 -0
  465. package/dist/sla-monitor.d.ts +107 -0
  466. package/dist/sla-monitor.js +233 -0
  467. package/dist/sla-monitor.js.map +1 -0
  468. package/dist/stack-detector.d.ts +12 -0
  469. package/dist/stack-detector.js +251 -0
  470. package/dist/stack-detector.js.map +1 -0
  471. package/dist/team-model.d.ts +58 -0
  472. package/dist/team-model.js +83 -0
  473. package/dist/team-model.js.map +1 -0
  474. package/dist/team-service.d.ts +54 -0
  475. package/dist/team-service.js +206 -0
  476. package/dist/team-service.js.map +1 -0
  477. package/dist/toml-generator.d.ts +8 -0
  478. package/dist/toml-generator.js +223 -0
  479. package/dist/toml-generator.js.map +1 -0
  480. package/dist/triage-sandbox.d.ts +34 -0
  481. package/dist/triage-sandbox.js +167 -0
  482. package/dist/triage-sandbox.js.map +1 -0
  483. package/dist/triage.d.ts +30 -0
  484. package/dist/triage.js +79 -0
  485. package/dist/triage.js.map +1 -0
  486. package/dist/update-check.d.ts +13 -0
  487. package/dist/update-check.js +91 -0
  488. package/dist/update-check.js.map +1 -0
  489. package/dist/utils/colors.d.ts +14 -0
  490. package/dist/utils/colors.js +15 -0
  491. package/dist/utils/colors.js.map +1 -0
  492. package/dist/utils/didYouMean.d.ts +15 -0
  493. package/dist/utils/didYouMean.js +47 -0
  494. package/dist/utils/didYouMean.js.map +1 -0
  495. package/dist/utils/exec.d.ts +21 -0
  496. package/dist/utils/exec.js +23 -0
  497. package/dist/utils/exec.js.map +1 -0
  498. package/dist/utils/execFileNoThrow.d.ts +14 -0
  499. package/dist/utils/execFileNoThrow.js +29 -0
  500. package/dist/utils/execFileNoThrow.js.map +1 -0
  501. package/dist/utils/flags.d.ts +19 -0
  502. package/dist/utils/flags.js +36 -0
  503. package/dist/utils/flags.js.map +1 -0
  504. package/dist/utils/parseCommand.d.ts +16 -0
  505. package/dist/utils/parseCommand.js +13 -0
  506. package/dist/utils/parseCommand.js.map +1 -0
  507. package/dist/utils/prompt.d.ts +13 -0
  508. package/dist/utils/prompt.js +35 -0
  509. package/dist/utils/prompt.js.map +1 -0
  510. package/dist/utils/promptSelect.d.ts +19 -0
  511. package/dist/utils/promptSelect.js +89 -0
  512. package/dist/utils/promptSelect.js.map +1 -0
  513. package/dist/utils/redactSecrets.d.ts +24 -0
  514. package/dist/utils/redactSecrets.js +134 -0
  515. package/dist/utils/redactSecrets.js.map +1 -0
  516. package/dist/validation/dynamic-schema.d.ts +29 -0
  517. package/dist/validation/dynamic-schema.js +76 -0
  518. package/dist/validation/dynamic-schema.js.map +1 -0
  519. package/package.json +52 -0
package/dist/lock.js ADDED
@@ -0,0 +1,264 @@
1
+ /**
2
+ * Lock file management for kit
3
+ * Tracks exact versions of skills and CLI tools
4
+ */
5
+ import { readFile, writeFile, mkdir } from "node:fs/promises";
6
+ import { resolve } from "node:path";
7
+ import { existsSync } from "node:fs";
8
+ import { createHash } from "node:crypto";
9
+ const KIT_DIR = ".kit";
10
+ const KIT_META_FILE = "kit.json";
11
+ const SKILLS_LOCK_FILE = "skills-lock.json";
12
+ const CLI_LOCK_FILE = "cli-lock.json";
13
+ /**
14
+ * Get the .kit directory path
15
+ */
16
+ function getkitDir() {
17
+ return resolve(process.cwd(), KIT_DIR);
18
+ }
19
+ /**
20
+ * Ensure .kit directory exists
21
+ */
22
+ async function ensurekitDir() {
23
+ const dir = getkitDir();
24
+ if (!existsSync(dir)) {
25
+ await mkdir(dir, { recursive: true });
26
+ }
27
+ }
28
+ /**
29
+ * Read skills lock file
30
+ */
31
+ export async function readSkillsLock() {
32
+ const lockPath = resolve(getkitDir(), SKILLS_LOCK_FILE);
33
+ if (!existsSync(lockPath)) {
34
+ return null;
35
+ }
36
+ try {
37
+ const content = await readFile(lockPath, "utf-8");
38
+ return JSON.parse(content);
39
+ }
40
+ catch (error) {
41
+ console.error(`Failed to read ${SKILLS_LOCK_FILE}:`, error);
42
+ return null;
43
+ }
44
+ }
45
+ /**
46
+ * Write skills lock file
47
+ */
48
+ export async function writeSkillsLock(lock) {
49
+ await ensurekitDir();
50
+ const lockPath = resolve(getkitDir(), SKILLS_LOCK_FILE);
51
+ try {
52
+ const content = JSON.stringify(lock, null, 2) + "\n";
53
+ await writeFile(lockPath, content, "utf-8");
54
+ }
55
+ catch (error) {
56
+ console.error(`Failed to write ${SKILLS_LOCK_FILE}:`, error);
57
+ throw error;
58
+ }
59
+ }
60
+ /**
61
+ * Read CLI lock file
62
+ */
63
+ export async function readCliLock() {
64
+ const lockPath = resolve(getkitDir(), CLI_LOCK_FILE);
65
+ if (!existsSync(lockPath)) {
66
+ return null;
67
+ }
68
+ try {
69
+ const content = await readFile(lockPath, "utf-8");
70
+ return JSON.parse(content);
71
+ }
72
+ catch (error) {
73
+ console.error(`Failed to read ${CLI_LOCK_FILE}:`, error);
74
+ return null;
75
+ }
76
+ }
77
+ /**
78
+ * Write CLI lock file
79
+ */
80
+ export async function writeCliLock(lock) {
81
+ await ensurekitDir();
82
+ const lockPath = resolve(getkitDir(), CLI_LOCK_FILE);
83
+ try {
84
+ const content = JSON.stringify(lock, null, 2) + "\n";
85
+ await writeFile(lockPath, content, "utf-8");
86
+ }
87
+ catch (error) {
88
+ console.error(`Failed to write ${CLI_LOCK_FILE}:`, error);
89
+ throw error;
90
+ }
91
+ }
92
+ /**
93
+ * Read kit metadata file
94
+ */
95
+ export async function readkitMeta() {
96
+ const metaPath = resolve(getkitDir(), KIT_META_FILE);
97
+ if (!existsSync(metaPath)) {
98
+ return null;
99
+ }
100
+ try {
101
+ const content = await readFile(metaPath, "utf-8");
102
+ return JSON.parse(content);
103
+ }
104
+ catch (error) {
105
+ console.error(`Failed to read ${KIT_META_FILE}:`, error);
106
+ return null;
107
+ }
108
+ }
109
+ /**
110
+ * Write kit metadata file
111
+ */
112
+ export async function writekitMeta(meta) {
113
+ await ensurekitDir();
114
+ const metaPath = resolve(getkitDir(), KIT_META_FILE);
115
+ try {
116
+ const content = JSON.stringify(meta, null, 2) + "\n";
117
+ await writeFile(metaPath, content, "utf-8");
118
+ }
119
+ catch (error) {
120
+ console.error(`Failed to write ${KIT_META_FILE}:`, error);
121
+ throw error;
122
+ }
123
+ }
124
+ /**
125
+ * Compute a hash for skill content
126
+ * For now, this creates a hash from the source+version string
127
+ * In the future, this should fetch and hash the actual skill content
128
+ */
129
+ function computeSkillHash(source, version) {
130
+ const content = `${source}@${version}`;
131
+ return createHash("sha256").update(content).digest("hex").substring(0, 16);
132
+ }
133
+ /**
134
+ * Parse version string to extract source and determine sourceType
135
+ * Handles formats like:
136
+ * - "^2.0" or "1.2.3" → clawhub (default registry)
137
+ * - "github:owner/repo@tag" → github
138
+ * - "get-convex/agent-skills" → github
139
+ * - "./local/path" → local
140
+ */
141
+ function parseSkillVersion(skillName, version) {
142
+ // Local path
143
+ if (version.startsWith("./") || version.startsWith("../") || version.startsWith("/")) {
144
+ return {
145
+ source: version,
146
+ sourceType: "local",
147
+ };
148
+ }
149
+ // GitHub explicit format: github:owner/repo or github:owner/repo@tag
150
+ if (version.startsWith("github:")) {
151
+ const source = version.substring(7); // Remove "github:" prefix
152
+ return {
153
+ source,
154
+ sourceType: "github",
155
+ auth: "github",
156
+ };
157
+ }
158
+ // GitHub org/repo format (e.g., "get-convex/agent-skills")
159
+ if (version.includes("/") && !version.startsWith("http")) {
160
+ return {
161
+ source: version,
162
+ sourceType: "github",
163
+ auth: "github",
164
+ };
165
+ }
166
+ // Default to clawhub for semver versions
167
+ return {
168
+ source: `${skillName}@${version}`,
169
+ sourceType: "clawhub",
170
+ };
171
+ }
172
+ /**
173
+ * Update skills lock with installed skills
174
+ * Accepts version strings and converts to hash-based format
175
+ */
176
+ export async function updateSkillsLock(skills, kit) {
177
+ const existing = await readSkillsLock();
178
+ const lock = {
179
+ version: 1,
180
+ kit: kit || existing?.kit,
181
+ skills: {},
182
+ };
183
+ // Preserve existing entries and merge with new ones
184
+ if (existing) {
185
+ lock.skills = { ...existing.skills };
186
+ }
187
+ // Add/update skills
188
+ for (const [name, version] of Object.entries(skills)) {
189
+ const parsed = parseSkillVersion(name, version);
190
+ const existingEntry = lock.skills[name];
191
+ lock.skills[name] = {
192
+ source: parsed.source,
193
+ sourceType: parsed.sourceType,
194
+ computedHash: existingEntry?.computedHash || computeSkillHash(parsed.source, version),
195
+ auth: parsed.auth || existingEntry?.auth,
196
+ installedAt: existingEntry?.installedAt || new Date().toISOString(),
197
+ };
198
+ }
199
+ await writeSkillsLock(lock);
200
+ }
201
+ /**
202
+ * Update CLI lock with installed tools
203
+ */
204
+ export async function updateCliLock(tools) {
205
+ const existing = await readCliLock();
206
+ const lock = {
207
+ version: 1,
208
+ tools: {},
209
+ };
210
+ // Preserve existing entries and merge with new ones
211
+ if (existing) {
212
+ lock.tools = { ...existing.tools };
213
+ }
214
+ // Add/update tools
215
+ for (const [name, info] of Object.entries(tools)) {
216
+ lock.tools[name] = {
217
+ version: info.version,
218
+ source: info.source,
219
+ auth: info.auth,
220
+ installedAt: new Date().toISOString(),
221
+ };
222
+ }
223
+ await writeCliLock(lock);
224
+ }
225
+ export async function checkLockStatus(configSkills, configTools) {
226
+ const skillsLock = await readSkillsLock();
227
+ const cliLock = await readCliLock();
228
+ const status = {
229
+ skillsLockExists: skillsLock !== null,
230
+ cliLockExists: cliLock !== null,
231
+ skillsInSync: true,
232
+ cliInSync: true,
233
+ missingSkills: [],
234
+ missingTools: [],
235
+ };
236
+ // Check skills
237
+ if (!skillsLock) {
238
+ status.skillsInSync = false;
239
+ status.missingSkills = Object.keys(configSkills);
240
+ }
241
+ else {
242
+ for (const skillName of Object.keys(configSkills)) {
243
+ if (!skillsLock.skills[skillName]) {
244
+ status.skillsInSync = false;
245
+ status.missingSkills.push(skillName);
246
+ }
247
+ }
248
+ }
249
+ // Check tools
250
+ if (!cliLock) {
251
+ status.cliInSync = false;
252
+ status.missingTools = Object.keys(configTools);
253
+ }
254
+ else {
255
+ for (const toolName of Object.keys(configTools)) {
256
+ if (!cliLock.tools[toolName]) {
257
+ status.cliInSync = false;
258
+ status.missingTools.push(toolName);
259
+ }
260
+ }
261
+ }
262
+ return status;
263
+ }
264
+ //# sourceMappingURL=lock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { ServiceConfig } from "./config.js";
2
+ import { type ServiceStatus } from "./check-services.js";
3
+ export interface LoginResult {
4
+ name: string;
5
+ action: "already_authenticated" | "logged_in" | "login_unverified" | "failed";
6
+ detail: string;
7
+ }
8
+ export interface LoginDeps {
9
+ checkServices: (services: Record<string, ServiceConfig>) => Promise<ServiceStatus[]>;
10
+ runLogin: (command: string) => Promise<{
11
+ ok: boolean;
12
+ detail: string;
13
+ }>;
14
+ runLink: (command: string) => Promise<{
15
+ ok: boolean;
16
+ detail: string;
17
+ }>;
18
+ runVerify: (command: string) => Promise<{
19
+ ok: boolean;
20
+ output: string;
21
+ }>;
22
+ }
23
+ export declare function loginServices(services: Record<string, ServiceConfig>, deps?: LoginDeps): Promise<LoginResult[]>;
package/dist/login.js ADDED
@@ -0,0 +1,132 @@
1
+ import { execFile, spawn } from "node:child_process";
2
+ import { promisify } from "node:util";
3
+ import { checkServices } from "./check-services.js";
4
+ import { isNonInteractive } from "./environment.js";
5
+ import { parseCommand } from "./utils/parseCommand.js";
6
+ const exec = promisify(execFile);
7
+ function runInteractive(command) {
8
+ const parsed = parseCommand(command);
9
+ if (parsed.kind === "informational") {
10
+ if (!isNonInteractive()) {
11
+ console.log(`\x1b[33m${parsed.message}\x1b[0m`);
12
+ }
13
+ return Promise.resolve({
14
+ ok: false,
15
+ detail: `manual setup required: ${parsed.message}`,
16
+ });
17
+ }
18
+ if (isNonInteractive()) {
19
+ return Promise.resolve({
20
+ ok: false,
21
+ detail: "skipped in non-interactive mode",
22
+ });
23
+ }
24
+ return new Promise((resolve) => {
25
+ const child = spawn(parsed.cmd, parsed.args, {
26
+ stdio: "inherit",
27
+ env: { ...process.env },
28
+ });
29
+ child.on("close", (code) => {
30
+ if (code === 0) {
31
+ resolve({ ok: true, detail: "Login completed" });
32
+ }
33
+ else {
34
+ resolve({ ok: false, detail: `Login exited with code ${code}` });
35
+ }
36
+ });
37
+ child.on("error", (err) => {
38
+ resolve({ ok: false, detail: err.message });
39
+ });
40
+ });
41
+ }
42
+ async function runQuiet(command) {
43
+ const parsed = parseCommand(command);
44
+ if (parsed.kind === "informational") {
45
+ return { ok: false, output: parsed.message };
46
+ }
47
+ try {
48
+ const { stdout, stderr } = await exec(parsed.cmd, parsed.args, {
49
+ timeout: 15_000,
50
+ env: { ...process.env },
51
+ });
52
+ return { ok: true, output: (stdout || stderr).trim() };
53
+ }
54
+ catch {
55
+ return { ok: false, output: "Command failed" };
56
+ }
57
+ }
58
+ const defaultDeps = {
59
+ checkServices,
60
+ runLogin: runInteractive,
61
+ runLink: runInteractive,
62
+ runVerify: runQuiet,
63
+ };
64
+ export async function loginServices(services, deps = defaultDeps) {
65
+ const statuses = await deps.checkServices(services);
66
+ const results = [];
67
+ for (const status of statuses) {
68
+ if (status.authenticated) {
69
+ results.push({
70
+ name: status.name,
71
+ action: "already_authenticated",
72
+ detail: status.output,
73
+ });
74
+ continue;
75
+ }
76
+ const config = services[status.name];
77
+ if (!config?.login) {
78
+ results.push({
79
+ name: status.name,
80
+ action: "failed",
81
+ detail: "No login command configured",
82
+ });
83
+ continue;
84
+ }
85
+ console.log(`\n\x1b[1mLogging in to ${status.name}...\x1b[0m`);
86
+ const login = await deps.runLogin(config.login);
87
+ if (!login.ok) {
88
+ results.push({ name: status.name, action: "failed", detail: login.detail });
89
+ continue;
90
+ }
91
+ // Run link command if configured (e.g. supabase link, vercel link)
92
+ if (config.link) {
93
+ console.log(`\x1b[2mLinking ${status.name}...\x1b[0m`);
94
+ const link = await deps.runLink(config.link);
95
+ if (!link.ok) {
96
+ results.push({
97
+ name: status.name,
98
+ action: "login_unverified",
99
+ detail: `Login OK but link failed: ${link.detail}`,
100
+ });
101
+ continue;
102
+ }
103
+ }
104
+ // Verify login by re-running check
105
+ if (config.check) {
106
+ const verify = await deps.runVerify(config.check);
107
+ if (verify.ok) {
108
+ results.push({
109
+ name: status.name,
110
+ action: "logged_in",
111
+ detail: verify.output,
112
+ });
113
+ }
114
+ else {
115
+ results.push({
116
+ name: status.name,
117
+ action: "login_unverified",
118
+ detail: "Login command succeeded but verification failed",
119
+ });
120
+ }
121
+ }
122
+ else {
123
+ results.push({
124
+ name: status.name,
125
+ action: "logged_in",
126
+ detail: login.detail,
127
+ });
128
+ }
129
+ }
130
+ return results;
131
+ }
132
+ //# sourceMappingURL=login.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,195 @@
1
+ /**
2
+ * kit MCP Tools — data models
3
+ * Configuration, health checks, installation, and provisioning via MCP
4
+ */
5
+ export type ConfigScope = "global" | "project" | "user";
6
+ export type ConfigCategory = "adapter" | "tool" | "service" | "path" | "feature";
7
+ export type ValidationResult = "valid" | "invalid" | "warning";
8
+ export interface ConfigValue {
9
+ key: string;
10
+ value: unknown;
11
+ type: "string" | "number" | "boolean" | "array" | "object";
12
+ scope: ConfigScope;
13
+ category: ConfigCategory;
14
+ description?: string;
15
+ required?: boolean;
16
+ default?: unknown;
17
+ validation_rule?: string;
18
+ last_modified?: string;
19
+ modified_by?: string;
20
+ }
21
+ export interface ConfigValidation {
22
+ key: string;
23
+ result: ValidationResult;
24
+ message: string;
25
+ suggestions?: string[];
26
+ timestamp: string;
27
+ }
28
+ export interface ConfigDiff {
29
+ key: string;
30
+ old_value: unknown;
31
+ new_value: unknown;
32
+ scope: ConfigScope;
33
+ changed_at: string;
34
+ changed_by?: string;
35
+ }
36
+ export interface AdapterConfig {
37
+ name: string;
38
+ enabled: boolean;
39
+ version?: string;
40
+ settings: Record<string, unknown>;
41
+ credentials_configured: boolean;
42
+ health_status?: "healthy" | "warning" | "error";
43
+ last_check?: string;
44
+ }
45
+ export interface ToolConfig {
46
+ name: string;
47
+ installed: boolean;
48
+ version?: string;
49
+ path?: string;
50
+ required: boolean;
51
+ auto_update: boolean;
52
+ health_status?: "healthy" | "missing" | "incompatible";
53
+ }
54
+ export interface ServiceConfig {
55
+ name: string;
56
+ enabled: boolean;
57
+ endpoint?: string;
58
+ port?: number;
59
+ protocol?: "http" | "https" | "websocket" | "grpc";
60
+ health_check_url?: string;
61
+ status?: "running" | "stopped" | "error";
62
+ last_status_check?: string;
63
+ }
64
+ export interface PathConfig {
65
+ key: string;
66
+ value: string;
67
+ type: "project_root" | "cache_dir" | "config_dir" | "data_dir" | "temp_dir" | "lock_dir";
68
+ expandable: boolean;
69
+ must_exist: boolean;
70
+ writable: boolean;
71
+ }
72
+ export interface FeatureFlag {
73
+ name: string;
74
+ enabled: boolean;
75
+ scope: ConfigScope;
76
+ rollout_percentage?: number;
77
+ description?: string;
78
+ dependencies?: string[];
79
+ }
80
+ export interface MCPTool {
81
+ id: string;
82
+ name: string;
83
+ description: string;
84
+ category: "configuration" | "health" | "installation" | "provisioning" | "utility";
85
+ version: string;
86
+ actions: ToolAction[];
87
+ requires_auth?: boolean;
88
+ rate_limit?: number;
89
+ }
90
+ export interface ToolAction {
91
+ name: string;
92
+ description: string;
93
+ parameters: ToolParameter[];
94
+ returns: ToolReturn;
95
+ requires_confirmation?: boolean;
96
+ dry_run_supported?: boolean;
97
+ }
98
+ export interface ToolParameter {
99
+ name: string;
100
+ description: string;
101
+ type: "string" | "number" | "boolean" | "array" | "object";
102
+ required: boolean;
103
+ default?: unknown;
104
+ enum?: unknown[];
105
+ min?: number;
106
+ max?: number;
107
+ pattern?: string;
108
+ }
109
+ export interface ToolReturn {
110
+ type: "string" | "number" | "boolean" | "object" | "array";
111
+ description: string;
112
+ schema?: Record<string, unknown>;
113
+ }
114
+ export interface MCPToolResult<T> {
115
+ success: boolean;
116
+ data?: T;
117
+ error?: string;
118
+ warnings?: string[];
119
+ execution_time_ms?: number;
120
+ }
121
+ export interface ConfigSnapshot {
122
+ id: string;
123
+ timestamp: string;
124
+ created_by?: string;
125
+ config_state: Record<string, unknown>;
126
+ description?: string;
127
+ }
128
+ export interface ConfigRollback {
129
+ from_snapshot: string;
130
+ to_snapshot: string;
131
+ changes_reverted: number;
132
+ timestamp: string;
133
+ performed_by?: string;
134
+ }
135
+ export interface AdapterCheckResult {
136
+ adapter_name: string;
137
+ overall_status: "healthy" | "degraded" | "unhealthy";
138
+ installed: boolean;
139
+ configured: boolean;
140
+ authenticated: boolean;
141
+ available: boolean;
142
+ checks: {
143
+ name: string;
144
+ status: "pass" | "fail" | "warning";
145
+ message: string;
146
+ details?: Record<string, unknown>;
147
+ }[];
148
+ recommendations?: string[];
149
+ last_checked: string;
150
+ }
151
+ export interface AdapterDependency {
152
+ name: string;
153
+ required: boolean;
154
+ installed: boolean;
155
+ version?: string;
156
+ compatible: boolean;
157
+ min_version?: string;
158
+ }
159
+ export interface AdapterHealth {
160
+ adapter_name: string;
161
+ healthy: boolean;
162
+ uptime_seconds?: number;
163
+ last_error?: string;
164
+ error_count: number;
165
+ success_count: number;
166
+ average_response_time_ms?: number;
167
+ last_checked: string;
168
+ }
169
+ export interface AdapterInstallResult {
170
+ adapter_name: string;
171
+ success: boolean;
172
+ installed: boolean;
173
+ version?: string;
174
+ configured: boolean;
175
+ env_vars_set: string[];
176
+ setup_required: boolean;
177
+ next_steps?: string[];
178
+ message: string;
179
+ timestamp: string;
180
+ }
181
+ export interface AdapterSetupConfig {
182
+ adapter_name: string;
183
+ auto_configure: boolean;
184
+ interactive: boolean;
185
+ env_vars?: Record<string, string>;
186
+ settings?: Record<string, unknown>;
187
+ }
188
+ export interface EnvironmentVariable {
189
+ key: string;
190
+ value: string;
191
+ adapter_name: string;
192
+ required: boolean;
193
+ description?: string;
194
+ set_at: string;
195
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * kit MCP Tools — data models
3
+ * Configuration, health checks, installation, and provisioning via MCP
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=mcp-kit-tools-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-kit-tools-model.js","sourceRoot":"","sources":["../src/mcp-kit-tools-model.ts"],"names":[],"mappings":"AAAA;;;GAGG"}