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
@@ -0,0 +1,943 @@
1
+ import { randomUUID } from "node:crypto";
2
+ const configs = new Map();
3
+ const adapters = new Map();
4
+ const tools = new Map();
5
+ const services = new Map();
6
+ const paths = new Map();
7
+ const featureFlags = new Map();
8
+ const snapshots = new Map();
9
+ const validationHistory = new Map();
10
+ const environmentVariables = new Map();
11
+ /**
12
+ * Get configuration value
13
+ */
14
+ export function getConfig(key) {
15
+ const config = configs.get(key);
16
+ if (!config) {
17
+ return {
18
+ success: false,
19
+ error: `Configuration key '${key}' not found`,
20
+ };
21
+ }
22
+ return {
23
+ success: true,
24
+ data: config,
25
+ };
26
+ }
27
+ /**
28
+ * Set configuration value
29
+ */
30
+ export function setConfig(key, value, scope = "project", category = "tool", modified_by) {
31
+ const validation = validateConfigValue(key, value);
32
+ if (validation.result === "invalid") {
33
+ return {
34
+ success: false,
35
+ error: validation.message,
36
+ warnings: validation.suggestions,
37
+ };
38
+ }
39
+ const config = {
40
+ key,
41
+ value,
42
+ type: typeof value === "object" ? (Array.isArray(value) ? "array" : "object") : typeof value,
43
+ scope,
44
+ category,
45
+ last_modified: new Date().toISOString(),
46
+ modified_by,
47
+ };
48
+ configs.set(key, config);
49
+ return {
50
+ success: true,
51
+ data: config,
52
+ };
53
+ }
54
+ /**
55
+ * List configurations
56
+ */
57
+ export function listConfigs(scope, category, limit = 100, offset = 0) {
58
+ let results = Array.from(configs.values());
59
+ if (scope) {
60
+ results = results.filter((c) => c.scope === scope);
61
+ }
62
+ if (category) {
63
+ results = results.filter((c) => c.category === category);
64
+ }
65
+ const total = results.length;
66
+ const paged = results.slice(offset, offset + limit);
67
+ return {
68
+ success: true,
69
+ data: { configs: paged, total },
70
+ };
71
+ }
72
+ /**
73
+ * Validate configuration value
74
+ */
75
+ export function validateConfigValue(key, value) {
76
+ const existingConfig = configs.get(key);
77
+ let result = "valid";
78
+ let message = `Configuration '${key}' is valid`;
79
+ const suggestions = [];
80
+ // Type validation
81
+ if (existingConfig && existingConfig.type !== typeof value) {
82
+ if (typeof value === "string" && existingConfig.type === "number") {
83
+ // Allow string to number conversion
84
+ result = "warning";
85
+ message = `Type mismatch: expected ${existingConfig.type}, got ${typeof value}. Will attempt conversion.`;
86
+ }
87
+ else {
88
+ result = "invalid";
89
+ message = `Type mismatch: expected ${existingConfig.type}, got ${typeof value}`;
90
+ }
91
+ }
92
+ // Pattern validation
93
+ if (existingConfig?.validation_rule && typeof value === "string") {
94
+ const regex = new RegExp(existingConfig.validation_rule);
95
+ if (!regex.test(value)) {
96
+ result = "invalid";
97
+ message = `Value does not match required pattern: ${existingConfig.validation_rule}`;
98
+ }
99
+ }
100
+ // Range validation
101
+ const configAny = existingConfig;
102
+ if (configAny?.min && typeof value === "number" && value < configAny.min) {
103
+ result = "warning";
104
+ message = `Value ${value} is below minimum ${configAny.min}`;
105
+ }
106
+ if (configAny?.max && typeof value === "number" && value > configAny.max) {
107
+ result = "warning";
108
+ message = `Value ${value} is above maximum ${configAny.max}`;
109
+ }
110
+ const validation = {
111
+ key,
112
+ result,
113
+ message,
114
+ suggestions,
115
+ timestamp: new Date().toISOString(),
116
+ };
117
+ validationHistory.set(`${key}_${Date.now()}`, validation);
118
+ return validation;
119
+ }
120
+ /**
121
+ * Get adapter configuration
122
+ */
123
+ export function getAdapterConfig(name) {
124
+ const adapter = adapters.get(name);
125
+ if (!adapter) {
126
+ return {
127
+ success: false,
128
+ error: `Adapter '${name}' not found`,
129
+ };
130
+ }
131
+ return {
132
+ success: true,
133
+ data: adapter,
134
+ };
135
+ }
136
+ /**
137
+ * List adapters
138
+ */
139
+ export function listAdapters() {
140
+ const adapterList = Array.from(adapters.values());
141
+ return {
142
+ success: true,
143
+ data: adapterList,
144
+ };
145
+ }
146
+ /**
147
+ * Configure adapter
148
+ */
149
+ export function configureAdapter(name, enabled, settings) {
150
+ const existing = adapters.get(name);
151
+ const adapter = {
152
+ name,
153
+ enabled,
154
+ version: existing?.version,
155
+ settings,
156
+ credentials_configured: Object.keys(settings).length > 0,
157
+ health_status: "healthy",
158
+ last_check: new Date().toISOString(),
159
+ };
160
+ adapters.set(name, adapter);
161
+ return {
162
+ success: true,
163
+ data: adapter,
164
+ };
165
+ }
166
+ /**
167
+ * Get tool configuration
168
+ */
169
+ export function getToolConfig(name) {
170
+ const tool = tools.get(name);
171
+ if (!tool) {
172
+ return {
173
+ success: false,
174
+ error: `Tool '${name}' not found`,
175
+ };
176
+ }
177
+ return {
178
+ success: true,
179
+ data: tool,
180
+ };
181
+ }
182
+ /**
183
+ * List tools
184
+ */
185
+ export function listTools() {
186
+ return {
187
+ success: true,
188
+ data: Array.from(tools.values()),
189
+ };
190
+ }
191
+ /**
192
+ * Get service configuration
193
+ */
194
+ export function getServiceConfig(name) {
195
+ const service = services.get(name);
196
+ if (!service) {
197
+ return {
198
+ success: false,
199
+ error: `Service '${name}' not found`,
200
+ };
201
+ }
202
+ return {
203
+ success: true,
204
+ data: service,
205
+ };
206
+ }
207
+ /**
208
+ * List services
209
+ */
210
+ export function listServices() {
211
+ return {
212
+ success: true,
213
+ data: Array.from(services.values()),
214
+ };
215
+ }
216
+ /**
217
+ * Configure service
218
+ */
219
+ export function configureService(name, enabled, endpoint, port) {
220
+ const service = {
221
+ name,
222
+ enabled,
223
+ endpoint,
224
+ port,
225
+ status: enabled ? "running" : "stopped",
226
+ last_status_check: new Date().toISOString(),
227
+ };
228
+ services.set(name, service);
229
+ return {
230
+ success: true,
231
+ data: service,
232
+ };
233
+ }
234
+ /**
235
+ * Get path configuration
236
+ */
237
+ export function getPathConfig(key) {
238
+ const path = paths.get(key);
239
+ if (!path) {
240
+ return {
241
+ success: false,
242
+ error: `Path '${key}' not found`,
243
+ };
244
+ }
245
+ return {
246
+ success: true,
247
+ data: path,
248
+ };
249
+ }
250
+ /**
251
+ * List paths
252
+ */
253
+ export function listPaths() {
254
+ return {
255
+ success: true,
256
+ data: Array.from(paths.values()),
257
+ };
258
+ }
259
+ /**
260
+ * Set path configuration
261
+ */
262
+ export function setPathConfig(key, value, type) {
263
+ const path = {
264
+ key,
265
+ value,
266
+ type,
267
+ expandable: value.includes("$") || value.includes("~"),
268
+ must_exist: type !== "temp_dir",
269
+ writable: !["project_root"].includes(type),
270
+ };
271
+ paths.set(key, path);
272
+ return {
273
+ success: true,
274
+ data: path,
275
+ };
276
+ }
277
+ /**
278
+ * Get feature flag
279
+ */
280
+ export function getFeatureFlag(name) {
281
+ const flag = featureFlags.get(name);
282
+ if (!flag) {
283
+ return {
284
+ success: false,
285
+ error: `Feature flag '${name}' not found`,
286
+ };
287
+ }
288
+ return {
289
+ success: true,
290
+ data: flag,
291
+ };
292
+ }
293
+ /**
294
+ * List feature flags
295
+ */
296
+ export function listFeatureFlags() {
297
+ return {
298
+ success: true,
299
+ data: Array.from(featureFlags.values()),
300
+ };
301
+ }
302
+ /**
303
+ * Toggle feature flag
304
+ */
305
+ export function toggleFeatureFlag(name, enabled, scope = "project") {
306
+ const existing = featureFlags.get(name) || {
307
+ name,
308
+ enabled: false,
309
+ scope,
310
+ };
311
+ const flag = {
312
+ ...existing,
313
+ enabled,
314
+ scope,
315
+ };
316
+ featureFlags.set(name, flag);
317
+ return {
318
+ success: true,
319
+ data: flag,
320
+ };
321
+ }
322
+ /**
323
+ * Create configuration snapshot
324
+ */
325
+ export function createConfigSnapshot(created_by, description) {
326
+ const snapshot = {
327
+ id: `snap_${randomUUID()}`,
328
+ timestamp: new Date().toISOString(),
329
+ created_by,
330
+ config_state: Object.fromEntries(configs),
331
+ description,
332
+ };
333
+ snapshots.set(snapshot.id, snapshot);
334
+ return {
335
+ success: true,
336
+ data: snapshot,
337
+ };
338
+ }
339
+ /**
340
+ * List configuration snapshots
341
+ */
342
+ export function listSnapshots(limit = 20, offset = 0) {
343
+ const all = Array.from(snapshots.values()).sort((a, b) => new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime());
344
+ const total = all.length;
345
+ const paged = all.slice(offset, offset + limit);
346
+ return {
347
+ success: true,
348
+ data: { snapshots: paged, total },
349
+ };
350
+ }
351
+ /**
352
+ * Rollback to snapshot
353
+ */
354
+ export function rollbackToSnapshot(snapshot_id, performed_by) {
355
+ const snapshot = snapshots.get(snapshot_id);
356
+ if (!snapshot) {
357
+ return {
358
+ success: false,
359
+ error: `Snapshot '${snapshot_id}' not found`,
360
+ };
361
+ }
362
+ const changeCount = configs.size;
363
+ // Restore config state
364
+ configs.clear();
365
+ Object.entries(snapshot.config_state).forEach(([key, value]) => {
366
+ configs.set(key, value);
367
+ });
368
+ const rollback = {
369
+ from_snapshot: snapshots.get(Array.from(snapshots.keys())[0])?.id || "current",
370
+ to_snapshot: snapshot_id,
371
+ changes_reverted: changeCount,
372
+ timestamp: new Date().toISOString(),
373
+ performed_by,
374
+ };
375
+ return {
376
+ success: true,
377
+ data: rollback,
378
+ };
379
+ }
380
+ /**
381
+ * Check adapter status
382
+ */
383
+ export function checkAdapterStatus(adapter_name) {
384
+ const adapter = adapters.get(adapter_name);
385
+ if (!adapter) {
386
+ return {
387
+ success: false,
388
+ error: `Adapter '${adapter_name}' not found`,
389
+ };
390
+ }
391
+ const checks = [];
392
+ // Check if installed
393
+ checks.push({
394
+ name: "installation",
395
+ status: adapter.enabled ? "pass" : "fail",
396
+ message: adapter.enabled
397
+ ? `${adapter_name} is installed and enabled`
398
+ : `${adapter_name} is not enabled`,
399
+ });
400
+ // Check configuration
401
+ checks.push({
402
+ name: "configuration",
403
+ status: Object.keys(adapter.settings).length > 0 ? "pass" : "warning",
404
+ message: Object.keys(adapter.settings).length > 0
405
+ ? `Configuration present (${Object.keys(adapter.settings).length} settings)`
406
+ : "No configuration found",
407
+ });
408
+ // Check credentials
409
+ checks.push({
410
+ name: "credentials",
411
+ status: adapter.credentials_configured ? "pass" : "warning",
412
+ message: adapter.credentials_configured
413
+ ? "Credentials are configured"
414
+ : "Credentials not configured",
415
+ });
416
+ // Check health
417
+ checks.push({
418
+ name: "health",
419
+ status: adapter.health_status === "healthy" ? "pass" : adapter.health_status === "warning" ? "warning" : "fail",
420
+ message: `Health status: ${adapter.health_status || "unknown"}`,
421
+ });
422
+ const overallStatus = checks.every((c) => c.status === "pass")
423
+ ? "healthy"
424
+ : checks.some((c) => c.status === "fail")
425
+ ? "unhealthy"
426
+ : "degraded";
427
+ const result = {
428
+ adapter_name,
429
+ overall_status: overallStatus,
430
+ installed: adapter.enabled,
431
+ configured: Object.keys(adapter.settings).length > 0,
432
+ authenticated: adapter.credentials_configured,
433
+ available: adapter.health_status === "healthy",
434
+ checks,
435
+ last_checked: new Date().toISOString(),
436
+ };
437
+ // Add recommendations
438
+ if (overallStatus !== "healthy") {
439
+ result.recommendations = [];
440
+ if (!adapter.enabled) {
441
+ result.recommendations.push(`Enable ${adapter_name} in configuration`);
442
+ }
443
+ if (!adapter.credentials_configured) {
444
+ result.recommendations.push(`Configure credentials for ${adapter_name}`);
445
+ }
446
+ if (adapter.health_status === "warning" || adapter.health_status === "error") {
447
+ result.recommendations.push(`Check ${adapter_name} health status`);
448
+ }
449
+ }
450
+ return {
451
+ success: true,
452
+ data: result,
453
+ };
454
+ }
455
+ /**
456
+ * Check adapter dependencies
457
+ */
458
+ export function checkAdapterDependencies(adapter_name) {
459
+ // Simulated dependencies for adapters
460
+ const dependencyMap = {
461
+ stripe: [
462
+ { name: "node", required: true, installed: true, compatible: true, version: "20.0.0" },
463
+ { name: "npm", required: true, installed: true, compatible: true, version: "10.0.0" },
464
+ ],
465
+ github: [
466
+ { name: "git", required: true, installed: true, compatible: true, version: "2.40.0" },
467
+ { name: "curl", required: false, installed: true, compatible: true },
468
+ ],
469
+ slack: [
470
+ { name: "node", required: true, installed: true, compatible: true, version: "20.0.0" },
471
+ ],
472
+ };
473
+ const deps = dependencyMap[adapter_name] || [];
474
+ return {
475
+ success: true,
476
+ data: deps,
477
+ };
478
+ }
479
+ /**
480
+ * Get adapter health status
481
+ */
482
+ export function getAdapterHealth(adapter_name) {
483
+ const adapter = adapters.get(adapter_name);
484
+ if (!adapter) {
485
+ return {
486
+ success: false,
487
+ error: `Adapter '${adapter_name}' not found`,
488
+ };
489
+ }
490
+ const health = {
491
+ adapter_name,
492
+ healthy: adapter.health_status === "healthy",
493
+ uptime_seconds: Math.floor(Math.random() * 86400),
494
+ error_count: Math.floor(Math.random() * 5),
495
+ success_count: Math.floor(Math.random() * 100),
496
+ average_response_time_ms: Math.floor(Math.random() * 500) + 50,
497
+ last_checked: adapter.last_check || new Date().toISOString(),
498
+ };
499
+ return {
500
+ success: true,
501
+ data: health,
502
+ };
503
+ }
504
+ /**
505
+ * Install adapter
506
+ */
507
+ export function installAdapter(adapter_name, auto_configure = false, version, installed_by) {
508
+ const existing = adapters.get(adapter_name);
509
+ const result = {
510
+ adapter_name,
511
+ success: true,
512
+ installed: true,
513
+ version: version || existing?.version || "1.0.0",
514
+ configured: false,
515
+ env_vars_set: [],
516
+ setup_required: !auto_configure,
517
+ next_steps: auto_configure
518
+ ? []
519
+ : [
520
+ `Run: kit adapter setup ${adapter_name}`,
521
+ `Or set environment variables manually`,
522
+ ],
523
+ message: `${adapter_name} adapter installed successfully`,
524
+ timestamp: new Date().toISOString(),
525
+ };
526
+ // Mark adapter as installed
527
+ const adapter = {
528
+ name: adapter_name,
529
+ enabled: true,
530
+ version: result.version,
531
+ settings: {},
532
+ credentials_configured: false,
533
+ health_status: "healthy",
534
+ last_check: new Date().toISOString(),
535
+ };
536
+ adapters.set(adapter_name, adapter);
537
+ if (auto_configure) {
538
+ result.setup_required = false;
539
+ result.message += " and auto-configured";
540
+ }
541
+ return {
542
+ success: true,
543
+ data: result,
544
+ };
545
+ }
546
+ /**
547
+ * Setup adapter automatically
548
+ */
549
+ export function setupAdapterAuto(adapter_name, env_vars, setup_by) {
550
+ const adapter = adapters.get(adapter_name);
551
+ if (!adapter) {
552
+ return {
553
+ success: false,
554
+ error: `Adapter '${adapter_name}' not found. Install it first.`,
555
+ };
556
+ }
557
+ const vars_set = [];
558
+ // Set environment variables
559
+ Object.entries(env_vars).forEach(([key, value]) => {
560
+ const var_key = `${adapter_name}_${key}`.toUpperCase();
561
+ const envVar = {
562
+ key: var_key,
563
+ value,
564
+ adapter_name,
565
+ required: true,
566
+ set_at: new Date().toISOString(),
567
+ };
568
+ environmentVariables.set(var_key, envVar);
569
+ vars_set.push(var_key);
570
+ });
571
+ // Update adapter config
572
+ adapter.settings = env_vars;
573
+ adapter.credentials_configured = true;
574
+ adapter.last_check = new Date().toISOString();
575
+ const result = {
576
+ adapter_name,
577
+ success: true,
578
+ installed: true,
579
+ version: adapter.version,
580
+ configured: true,
581
+ env_vars_set: vars_set,
582
+ setup_required: false,
583
+ next_steps: [],
584
+ message: `${adapter_name} adapter configured with ${vars_set.length} environment variables`,
585
+ timestamp: new Date().toISOString(),
586
+ };
587
+ return {
588
+ success: true,
589
+ data: result,
590
+ };
591
+ }
592
+ /**
593
+ * Setup adapter interactively
594
+ */
595
+ export function setupAdapterInteractive(adapter_name, responses, setup_by) {
596
+ const adapter = adapters.get(adapter_name);
597
+ if (!adapter) {
598
+ return {
599
+ success: false,
600
+ error: `Adapter '${adapter_name}' not found. Install it first.`,
601
+ };
602
+ }
603
+ const vars_set = [];
604
+ // Process interactive responses
605
+ Object.entries(responses).forEach(([key, value]) => {
606
+ const var_key = `${adapter_name}_${key}`.toUpperCase();
607
+ const envVar = {
608
+ key: var_key,
609
+ value,
610
+ adapter_name,
611
+ required: true,
612
+ set_at: new Date().toISOString(),
613
+ };
614
+ environmentVariables.set(var_key, envVar);
615
+ vars_set.push(var_key);
616
+ });
617
+ // Update adapter settings
618
+ adapter.settings = responses;
619
+ adapter.credentials_configured = true;
620
+ adapter.last_check = new Date().toISOString();
621
+ const result = {
622
+ adapter_name,
623
+ success: true,
624
+ installed: true,
625
+ version: adapter.version,
626
+ configured: true,
627
+ env_vars_set: vars_set,
628
+ setup_required: false,
629
+ next_steps: [],
630
+ message: `${adapter_name} adapter configured interactively with ${vars_set.length} variables`,
631
+ timestamp: new Date().toISOString(),
632
+ };
633
+ return {
634
+ success: true,
635
+ data: result,
636
+ };
637
+ }
638
+ /**
639
+ * Set environment variable
640
+ */
641
+ export function setEnvironmentVariable(key, value, adapter_name, required = false, description) {
642
+ const envVar = {
643
+ key,
644
+ value,
645
+ adapter_name,
646
+ required,
647
+ description,
648
+ set_at: new Date().toISOString(),
649
+ };
650
+ environmentVariables.set(key, envVar);
651
+ return {
652
+ success: true,
653
+ data: envVar,
654
+ };
655
+ }
656
+ /**
657
+ * Get environment variables for adapter
658
+ */
659
+ export function getEnvironmentVariables(adapter_name, required_only = false) {
660
+ let vars = Array.from(environmentVariables.values());
661
+ if (adapter_name) {
662
+ vars = vars.filter((v) => v.adapter_name === adapter_name);
663
+ }
664
+ if (required_only) {
665
+ vars = vars.filter((v) => v.required);
666
+ }
667
+ return {
668
+ success: true,
669
+ data: vars,
670
+ };
671
+ }
672
+ /**
673
+ * Get MCP tool definitions
674
+ */
675
+ export function getMCPTools() {
676
+ return [
677
+ {
678
+ id: "kit_configure",
679
+ name: "kit_configure",
680
+ description: "Get/set/list/validate kit configuration",
681
+ category: "configuration",
682
+ version: "1.0.0",
683
+ requires_auth: false,
684
+ actions: [
685
+ {
686
+ name: "get",
687
+ description: "Get configuration value by key",
688
+ parameters: [
689
+ {
690
+ name: "key",
691
+ description: "Configuration key",
692
+ type: "string",
693
+ required: true,
694
+ },
695
+ ],
696
+ returns: {
697
+ type: "object",
698
+ description: "Configuration value object",
699
+ },
700
+ },
701
+ {
702
+ name: "set",
703
+ description: "Set configuration value",
704
+ parameters: [
705
+ {
706
+ name: "key",
707
+ description: "Configuration key",
708
+ type: "string",
709
+ required: true,
710
+ },
711
+ {
712
+ name: "value",
713
+ description: "Value to set",
714
+ type: "string",
715
+ required: true,
716
+ },
717
+ {
718
+ name: "scope",
719
+ description: "Configuration scope",
720
+ type: "string",
721
+ required: false,
722
+ enum: ["global", "project", "user"],
723
+ },
724
+ ],
725
+ returns: {
726
+ type: "object",
727
+ description: "Updated configuration",
728
+ },
729
+ },
730
+ {
731
+ name: "list",
732
+ description: "List configurations",
733
+ parameters: [
734
+ {
735
+ name: "scope",
736
+ description: "Filter by scope",
737
+ type: "string",
738
+ required: false,
739
+ },
740
+ {
741
+ name: "category",
742
+ description: "Filter by category",
743
+ type: "string",
744
+ required: false,
745
+ },
746
+ ],
747
+ returns: {
748
+ type: "object",
749
+ description: "Configuration list",
750
+ },
751
+ },
752
+ {
753
+ name: "validate",
754
+ description: "Validate configuration value",
755
+ parameters: [
756
+ {
757
+ name: "key",
758
+ description: "Configuration key",
759
+ type: "string",
760
+ required: true,
761
+ },
762
+ {
763
+ name: "value",
764
+ description: "Value to validate",
765
+ type: "string",
766
+ required: true,
767
+ },
768
+ ],
769
+ returns: {
770
+ type: "object",
771
+ description: "Validation result",
772
+ },
773
+ },
774
+ ],
775
+ },
776
+ {
777
+ id: "kit_adapter_check",
778
+ name: "kit_adapter_check",
779
+ description: "Check adapter installation, configuration, and authentication status",
780
+ category: "health",
781
+ version: "1.0.0",
782
+ requires_auth: false,
783
+ actions: [
784
+ {
785
+ name: "status",
786
+ description: "Get complete adapter status with all checks",
787
+ parameters: [
788
+ {
789
+ name: "adapter",
790
+ description: "Adapter name",
791
+ type: "string",
792
+ required: true,
793
+ },
794
+ ],
795
+ returns: {
796
+ type: "object",
797
+ description: "Adapter status with check results",
798
+ },
799
+ },
800
+ {
801
+ name: "dependencies",
802
+ description: "Check adapter dependencies",
803
+ parameters: [
804
+ {
805
+ name: "adapter",
806
+ description: "Adapter name",
807
+ type: "string",
808
+ required: true,
809
+ },
810
+ ],
811
+ returns: {
812
+ type: "array",
813
+ description: "Dependency list",
814
+ },
815
+ },
816
+ {
817
+ name: "health",
818
+ description: "Get adapter health metrics",
819
+ parameters: [
820
+ {
821
+ name: "adapter",
822
+ description: "Adapter name",
823
+ type: "string",
824
+ required: true,
825
+ },
826
+ ],
827
+ returns: {
828
+ type: "object",
829
+ description: "Health metrics",
830
+ },
831
+ },
832
+ ],
833
+ },
834
+ {
835
+ id: "kit_adapter_install",
836
+ name: "kit_adapter_install",
837
+ description: "Install, configure, and setup kit adapters with auto or interactive configuration",
838
+ category: "installation",
839
+ version: "1.0.0",
840
+ requires_auth: false,
841
+ actions: [
842
+ {
843
+ name: "install",
844
+ description: "Install an adapter",
845
+ parameters: [
846
+ {
847
+ name: "adapter",
848
+ description: "Adapter name",
849
+ type: "string",
850
+ required: true,
851
+ },
852
+ {
853
+ name: "version",
854
+ description: "Adapter version",
855
+ type: "string",
856
+ required: false,
857
+ },
858
+ {
859
+ name: "auto_configure",
860
+ description: "Auto-configure after installation",
861
+ type: "boolean",
862
+ required: false,
863
+ },
864
+ ],
865
+ returns: {
866
+ type: "object",
867
+ description: "Installation result",
868
+ },
869
+ },
870
+ {
871
+ name: "setup",
872
+ description: "Setup adapter with environment variables",
873
+ parameters: [
874
+ {
875
+ name: "adapter",
876
+ description: "Adapter name",
877
+ type: "string",
878
+ required: true,
879
+ },
880
+ {
881
+ name: "mode",
882
+ description: "Setup mode",
883
+ type: "string",
884
+ required: true,
885
+ enum: ["auto", "interactive"],
886
+ },
887
+ {
888
+ name: "env_vars",
889
+ description: "Environment variables for auto mode",
890
+ type: "object",
891
+ required: false,
892
+ },
893
+ {
894
+ name: "responses",
895
+ description: "Interactive responses",
896
+ type: "object",
897
+ required: false,
898
+ },
899
+ ],
900
+ returns: {
901
+ type: "object",
902
+ description: "Setup result",
903
+ },
904
+ },
905
+ {
906
+ name: "configure",
907
+ description: "Configure environment variables",
908
+ parameters: [
909
+ {
910
+ name: "key",
911
+ description: "Environment variable key",
912
+ type: "string",
913
+ required: true,
914
+ },
915
+ {
916
+ name: "value",
917
+ description: "Environment variable value",
918
+ type: "string",
919
+ required: true,
920
+ },
921
+ {
922
+ name: "adapter",
923
+ description: "Adapter name",
924
+ type: "string",
925
+ required: true,
926
+ },
927
+ {
928
+ name: "required",
929
+ description: "Whether variable is required",
930
+ type: "boolean",
931
+ required: false,
932
+ },
933
+ ],
934
+ returns: {
935
+ type: "object",
936
+ description: "Configuration result",
937
+ },
938
+ },
939
+ ],
940
+ },
941
+ ];
942
+ }
943
+ //# sourceMappingURL=mcp-kit-tools-service.js.map