@intutic/cli 2.2.0 → 2.4.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 (356) hide show
  1. package/README.md +8 -8
  2. package/dist/cli.d.ts +0 -1
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +582 -21
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/apiCommand.d.ts +40 -0
  7. package/dist/commands/apiCommand.d.ts.map +1 -0
  8. package/dist/commands/apiCommand.js +88 -0
  9. package/dist/commands/apiCommand.js.map +1 -0
  10. package/dist/commands/budget.d.ts +4 -0
  11. package/dist/commands/budget.d.ts.map +1 -1
  12. package/dist/commands/budget.js +8 -0
  13. package/dist/commands/budget.js.map +1 -1
  14. package/dist/commands/budgetLimits.d.ts +70 -0
  15. package/dist/commands/budgetLimits.d.ts.map +1 -0
  16. package/dist/commands/budgetLimits.js +223 -0
  17. package/dist/commands/budgetLimits.js.map +1 -0
  18. package/dist/commands/compliance.d.ts +122 -0
  19. package/dist/commands/compliance.d.ts.map +1 -0
  20. package/dist/commands/compliance.js +278 -0
  21. package/dist/commands/compliance.js.map +1 -0
  22. package/dist/commands/connect.d.ts +26 -1
  23. package/dist/commands/connect.d.ts.map +1 -1
  24. package/dist/commands/connect.js +109 -51
  25. package/dist/commands/connect.js.map +1 -1
  26. package/dist/commands/credentials.d.ts +6 -2
  27. package/dist/commands/credentials.d.ts.map +1 -1
  28. package/dist/commands/credentials.js +99 -10
  29. package/dist/commands/credentials.js.map +1 -1
  30. package/dist/commands/decision.d.ts +4 -4
  31. package/dist/commands/decision.js +4 -4
  32. package/dist/commands/disconnect.d.ts +4 -0
  33. package/dist/commands/disconnect.d.ts.map +1 -1
  34. package/dist/commands/disconnect.js +17 -3
  35. package/dist/commands/disconnect.js.map +1 -1
  36. package/dist/commands/doctor.d.ts +0 -1
  37. package/dist/commands/doctor.d.ts.map +1 -1
  38. package/dist/commands/doctor.js +0 -1
  39. package/dist/commands/doctor.js.map +1 -1
  40. package/dist/commands/enforce.d.ts +1 -1
  41. package/dist/commands/enforce.js +1 -1
  42. package/dist/commands/enterprise.d.ts +3 -2
  43. package/dist/commands/enterprise.d.ts.map +1 -1
  44. package/dist/commands/enterprise.js +11 -3
  45. package/dist/commands/enterprise.js.map +1 -1
  46. package/dist/commands/env.js +1 -1
  47. package/dist/commands/exec.d.ts +2 -3
  48. package/dist/commands/exec.d.ts.map +1 -1
  49. package/dist/commands/exec.js +4 -5
  50. package/dist/commands/exec.js.map +1 -1
  51. package/dist/commands/gateLiveness.d.ts +15 -0
  52. package/dist/commands/gateLiveness.d.ts.map +1 -0
  53. package/dist/commands/gateLiveness.js +34 -0
  54. package/dist/commands/gateLiveness.js.map +1 -0
  55. package/dist/commands/gateway.d.ts +14 -4
  56. package/dist/commands/gateway.d.ts.map +1 -1
  57. package/dist/commands/gateway.js +34 -4
  58. package/dist/commands/gateway.js.map +1 -1
  59. package/dist/commands/github.d.ts +20 -0
  60. package/dist/commands/github.d.ts.map +1 -0
  61. package/dist/commands/github.js +41 -0
  62. package/dist/commands/github.js.map +1 -0
  63. package/dist/commands/guardrails.d.ts +28 -2
  64. package/dist/commands/guardrails.d.ts.map +1 -1
  65. package/dist/commands/guardrails.js +233 -24
  66. package/dist/commands/guardrails.js.map +1 -1
  67. package/dist/commands/incidents.d.ts +32 -0
  68. package/dist/commands/incidents.d.ts.map +1 -0
  69. package/dist/commands/incidents.js +94 -0
  70. package/dist/commands/incidents.js.map +1 -0
  71. package/dist/commands/init.d.ts +1 -2
  72. package/dist/commands/init.d.ts.map +1 -1
  73. package/dist/commands/init.js +1 -2
  74. package/dist/commands/init.js.map +1 -1
  75. package/dist/commands/install-daemon.d.ts +1 -1
  76. package/dist/commands/install-daemon.js +2 -2
  77. package/dist/commands/integrity.d.ts +10 -2
  78. package/dist/commands/integrity.d.ts.map +1 -1
  79. package/dist/commands/integrity.js +3 -3
  80. package/dist/commands/integrity.js.map +1 -1
  81. package/dist/commands/inventory.d.ts +60 -0
  82. package/dist/commands/inventory.d.ts.map +1 -0
  83. package/dist/commands/inventory.js +141 -0
  84. package/dist/commands/inventory.js.map +1 -0
  85. package/dist/commands/judge.d.ts +1 -1
  86. package/dist/commands/judge.js +2 -2
  87. package/dist/commands/judge.js.map +1 -1
  88. package/dist/commands/login.d.ts +0 -1
  89. package/dist/commands/login.d.ts.map +1 -1
  90. package/dist/commands/login.js +0 -1
  91. package/dist/commands/login.js.map +1 -1
  92. package/dist/commands/logout.d.ts +0 -1
  93. package/dist/commands/logout.d.ts.map +1 -1
  94. package/dist/commands/logout.js +0 -1
  95. package/dist/commands/logout.js.map +1 -1
  96. package/dist/commands/mcp.d.ts +31 -0
  97. package/dist/commands/mcp.d.ts.map +1 -0
  98. package/dist/commands/mcp.js +65 -0
  99. package/dist/commands/mcp.js.map +1 -0
  100. package/dist/commands/notifications.d.ts +54 -0
  101. package/dist/commands/notifications.d.ts.map +1 -0
  102. package/dist/commands/notifications.js +151 -0
  103. package/dist/commands/notifications.js.map +1 -0
  104. package/dist/commands/org.d.ts +3 -3
  105. package/dist/commands/org.js +3 -3
  106. package/dist/commands/policy.d.ts +6 -1
  107. package/dist/commands/policy.d.ts.map +1 -1
  108. package/dist/commands/policy.js +77 -37
  109. package/dist/commands/policy.js.map +1 -1
  110. package/dist/commands/rollback.d.ts.map +1 -1
  111. package/dist/commands/rollback.js +3 -1
  112. package/dist/commands/rollback.js.map +1 -1
  113. package/dist/commands/routing.d.ts +1 -1
  114. package/dist/commands/routing.js +1 -1
  115. package/dist/commands/rules.d.ts +74 -0
  116. package/dist/commands/rules.d.ts.map +1 -0
  117. package/dist/commands/rules.js +283 -0
  118. package/dist/commands/rules.js.map +1 -0
  119. package/dist/commands/settings.d.ts +44 -0
  120. package/dist/commands/settings.d.ts.map +1 -0
  121. package/dist/commands/settings.js +110 -0
  122. package/dist/commands/settings.js.map +1 -0
  123. package/dist/commands/setup.d.ts +1 -1
  124. package/dist/commands/setup.js +1 -1
  125. package/dist/commands/siem.d.ts +53 -0
  126. package/dist/commands/siem.d.ts.map +1 -0
  127. package/dist/commands/siem.js +132 -0
  128. package/dist/commands/siem.js.map +1 -0
  129. package/dist/commands/skill.d.ts +5 -5
  130. package/dist/commands/skill.js +7 -7
  131. package/dist/commands/skill.js.map +1 -1
  132. package/dist/commands/status.d.ts +0 -1
  133. package/dist/commands/status.d.ts.map +1 -1
  134. package/dist/commands/status.js +2 -3
  135. package/dist/commands/status.js.map +1 -1
  136. package/dist/commands/syncContext.d.ts +0 -1
  137. package/dist/commands/syncContext.d.ts.map +1 -1
  138. package/dist/commands/syncContext.js +0 -1
  139. package/dist/commands/syncContext.js.map +1 -1
  140. package/dist/commands/team.d.ts +2 -2
  141. package/dist/commands/team.js +2 -2
  142. package/dist/commands/traces.d.ts +0 -3
  143. package/dist/commands/traces.d.ts.map +1 -1
  144. package/dist/commands/traces.js +0 -3
  145. package/dist/commands/traces.js.map +1 -1
  146. package/dist/commands/usage.d.ts +41 -0
  147. package/dist/commands/usage.d.ts.map +1 -0
  148. package/dist/commands/usage.js +129 -0
  149. package/dist/commands/usage.js.map +1 -0
  150. package/dist/commands/whoami.d.ts +0 -1
  151. package/dist/commands/whoami.d.ts.map +1 -1
  152. package/dist/commands/whoami.js +0 -1
  153. package/dist/commands/whoami.js.map +1 -1
  154. package/dist/config/keychain.d.ts +0 -1
  155. package/dist/config/keychain.d.ts.map +1 -1
  156. package/dist/config/keychain.js +0 -1
  157. package/dist/config/keychain.js.map +1 -1
  158. package/dist/config/paths.d.ts +0 -1
  159. package/dist/config/paths.d.ts.map +1 -1
  160. package/dist/config/paths.js +0 -1
  161. package/dist/config/paths.js.map +1 -1
  162. package/dist/config/store.d.ts +0 -1
  163. package/dist/config/store.d.ts.map +1 -1
  164. package/dist/config/store.js +0 -1
  165. package/dist/config/store.js.map +1 -1
  166. package/dist/harness/ag2.d.ts +1 -1
  167. package/dist/harness/ag2.js +1 -1
  168. package/dist/harness/agentFramework.d.ts +1 -1
  169. package/dist/harness/agentFramework.js +1 -1
  170. package/dist/harness/agenticOrchestrator.d.ts +1 -1
  171. package/dist/harness/agenticOrchestrator.js +2 -2
  172. package/dist/harness/agenticOrchestrator.js.map +1 -1
  173. package/dist/harness/agentsMd.d.ts +24 -0
  174. package/dist/harness/agentsMd.d.ts.map +1 -0
  175. package/dist/harness/agentsMd.js +28 -0
  176. package/dist/harness/agentsMd.js.map +1 -0
  177. package/dist/harness/aider.d.ts +3 -1
  178. package/dist/harness/aider.d.ts.map +1 -1
  179. package/dist/harness/aider.js +9 -7
  180. package/dist/harness/aider.js.map +1 -1
  181. package/dist/harness/antigravity.d.ts +23 -5
  182. package/dist/harness/antigravity.d.ts.map +1 -1
  183. package/dist/harness/antigravity.js +45 -55
  184. package/dist/harness/antigravity.js.map +1 -1
  185. package/dist/harness/autogen.d.ts +1 -1
  186. package/dist/harness/autogen.js +2 -2
  187. package/dist/harness/autogen.js.map +1 -1
  188. package/dist/harness/claudeCode.d.ts +22 -1
  189. package/dist/harness/claudeCode.d.ts.map +1 -1
  190. package/dist/harness/claudeCode.js +47 -3
  191. package/dist/harness/claudeCode.js.map +1 -1
  192. package/dist/harness/cline.d.ts.map +1 -1
  193. package/dist/harness/cline.js +14 -23
  194. package/dist/harness/cline.js.map +1 -1
  195. package/dist/harness/codex.d.ts +6 -1
  196. package/dist/harness/codex.d.ts.map +1 -1
  197. package/dist/harness/codex.js +23 -21
  198. package/dist/harness/codex.js.map +1 -1
  199. package/dist/harness/continue.d.ts +10 -4
  200. package/dist/harness/continue.d.ts.map +1 -1
  201. package/dist/harness/continue.js +22 -22
  202. package/dist/harness/continue.js.map +1 -1
  203. package/dist/harness/cursor.d.ts +5 -2
  204. package/dist/harness/cursor.d.ts.map +1 -1
  205. package/dist/harness/cursor.js +19 -23
  206. package/dist/harness/cursor.js.map +1 -1
  207. package/dist/harness/detector.d.ts +0 -1
  208. package/dist/harness/detector.d.ts.map +1 -1
  209. package/dist/harness/detector.js +0 -1
  210. package/dist/harness/detector.js.map +1 -1
  211. package/dist/harness/dsh.d.ts +5 -3
  212. package/dist/harness/dsh.d.ts.map +1 -1
  213. package/dist/harness/dsh.js +17 -29
  214. package/dist/harness/dsh.js.map +1 -1
  215. package/dist/harness/eve.d.ts +3 -4
  216. package/dist/harness/eve.d.ts.map +1 -1
  217. package/dist/harness/eve.js +3 -4
  218. package/dist/harness/eve.js.map +1 -1
  219. package/dist/harness/githubCopilot.d.ts +4 -1
  220. package/dist/harness/githubCopilot.d.ts.map +1 -1
  221. package/dist/harness/githubCopilot.js +12 -20
  222. package/dist/harness/githubCopilot.js.map +1 -1
  223. package/dist/harness/goose.d.ts +7 -3
  224. package/dist/harness/goose.d.ts.map +1 -1
  225. package/dist/harness/goose.js +18 -21
  226. package/dist/harness/goose.js.map +1 -1
  227. package/dist/harness/grok.d.ts +2 -2
  228. package/dist/harness/grok.d.ts.map +1 -1
  229. package/dist/harness/grok.js +13 -24
  230. package/dist/harness/grok.js.map +1 -1
  231. package/dist/harness/hermes.d.ts +6 -0
  232. package/dist/harness/hermes.d.ts.map +1 -1
  233. package/dist/harness/hermes.js +17 -16
  234. package/dist/harness/hermes.js.map +1 -1
  235. package/dist/harness/muse.d.ts +3 -7
  236. package/dist/harness/muse.d.ts.map +1 -1
  237. package/dist/harness/muse.js +15 -35
  238. package/dist/harness/muse.js.map +1 -1
  239. package/dist/harness/n8n.d.ts +13 -14
  240. package/dist/harness/n8n.d.ts.map +1 -1
  241. package/dist/harness/n8n.js +21 -181
  242. package/dist/harness/n8n.js.map +1 -1
  243. package/dist/harness/openWebUI.d.ts.map +1 -1
  244. package/dist/harness/openWebUI.js +5 -4
  245. package/dist/harness/openWebUI.js.map +1 -1
  246. package/dist/harness/openaiAgents.d.ts +1 -1
  247. package/dist/harness/openaiAgents.js +2 -2
  248. package/dist/harness/openaiAgents.js.map +1 -1
  249. package/dist/harness/openclaw.d.ts +8 -0
  250. package/dist/harness/openclaw.d.ts.map +1 -1
  251. package/dist/harness/openclaw.js +27 -12
  252. package/dist/harness/openclaw.js.map +1 -1
  253. package/dist/harness/opencode.d.ts +4 -5
  254. package/dist/harness/opencode.d.ts.map +1 -1
  255. package/dist/harness/opencode.js +15 -30
  256. package/dist/harness/opencode.js.map +1 -1
  257. package/dist/harness/openhands.d.ts +9 -3
  258. package/dist/harness/openhands.d.ts.map +1 -1
  259. package/dist/harness/openhands.js +30 -24
  260. package/dist/harness/openhands.js.map +1 -1
  261. package/dist/harness/pi.d.ts +7 -2
  262. package/dist/harness/pi.d.ts.map +1 -1
  263. package/dist/harness/pi.js +19 -18
  264. package/dist/harness/pi.js.map +1 -1
  265. package/dist/harness/rooCode.d.ts +12 -5
  266. package/dist/harness/rooCode.d.ts.map +1 -1
  267. package/dist/harness/rooCode.js +23 -39
  268. package/dist/harness/rooCode.js.map +1 -1
  269. package/dist/harness/rulesFiles.d.ts +53 -0
  270. package/dist/harness/rulesFiles.d.ts.map +1 -0
  271. package/dist/harness/rulesFiles.js +106 -0
  272. package/dist/harness/rulesFiles.js.map +1 -0
  273. package/dist/harness/smolagents.d.ts +2 -2
  274. package/dist/harness/smolagents.js +3 -3
  275. package/dist/harness/smolagents.js.map +1 -1
  276. package/dist/harness/types.d.ts +20 -6
  277. package/dist/harness/types.d.ts.map +1 -1
  278. package/dist/harness/types.js +1 -95
  279. package/dist/harness/types.js.map +1 -1
  280. package/dist/harness/windsurf.d.ts +6 -1
  281. package/dist/harness/windsurf.d.ts.map +1 -1
  282. package/dist/harness/windsurf.js +21 -24
  283. package/dist/harness/windsurf.js.map +1 -1
  284. package/dist/harness/xirp.d.ts +1 -2
  285. package/dist/harness/xirp.d.ts.map +1 -1
  286. package/dist/harness/xirp.js +2 -3
  287. package/dist/harness/xirp.js.map +1 -1
  288. package/dist/lib/api.d.ts +27 -1
  289. package/dist/lib/api.d.ts.map +1 -1
  290. package/dist/lib/api.js +55 -18
  291. package/dist/lib/api.js.map +1 -1
  292. package/dist/lib/ciscoScanner.d.ts +1 -1
  293. package/dist/lib/ciscoScanner.js +1 -1
  294. package/dist/lib/decisionsLogRefresh.d.ts.map +1 -1
  295. package/dist/lib/decisionsLogRefresh.js +6 -7
  296. package/dist/lib/decisionsLogRefresh.js.map +1 -1
  297. package/dist/lib/deviceReport.d.ts +15 -0
  298. package/dist/lib/deviceReport.d.ts.map +1 -1
  299. package/dist/lib/deviceReport.js +30 -0
  300. package/dist/lib/deviceReport.js.map +1 -1
  301. package/dist/lib/gitHooks.d.ts +0 -1
  302. package/dist/lib/gitHooks.d.ts.map +1 -1
  303. package/dist/lib/gitHooks.js +8 -9
  304. package/dist/lib/gitHooks.js.map +1 -1
  305. package/dist/lib/gracefulShutdown.d.ts +1 -1
  306. package/dist/lib/gracefulShutdown.js +1 -1
  307. package/dist/lib/hash.d.ts +0 -1
  308. package/dist/lib/hash.d.ts.map +1 -1
  309. package/dist/lib/hash.js +0 -1
  310. package/dist/lib/hash.js.map +1 -1
  311. package/dist/lib/inventory.d.ts +47 -0
  312. package/dist/lib/inventory.d.ts.map +1 -0
  313. package/dist/lib/inventory.js +106 -0
  314. package/dist/lib/inventory.js.map +1 -0
  315. package/dist/lib/logger.d.ts +0 -1
  316. package/dist/lib/logger.d.ts.map +1 -1
  317. package/dist/lib/logger.js +0 -1
  318. package/dist/lib/logger.js.map +1 -1
  319. package/dist/lib/mdmManifest.d.ts +30 -2
  320. package/dist/lib/mdmManifest.d.ts.map +1 -1
  321. package/dist/lib/mdmManifest.js +50 -2
  322. package/dist/lib/mdmManifest.js.map +1 -1
  323. package/dist/lib/onboarding.d.ts +0 -1
  324. package/dist/lib/onboarding.d.ts.map +1 -1
  325. package/dist/lib/onboarding.js +1 -2
  326. package/dist/lib/onboarding.js.map +1 -1
  327. package/dist/lib/policySnapshot.d.ts +3 -2
  328. package/dist/lib/policySnapshot.d.ts.map +1 -1
  329. package/dist/lib/policySnapshot.js +6 -3
  330. package/dist/lib/policySnapshot.js.map +1 -1
  331. package/dist/lib/process.d.ts +5 -1
  332. package/dist/lib/process.d.ts.map +1 -1
  333. package/dist/lib/process.js +13 -4
  334. package/dist/lib/process.js.map +1 -1
  335. package/dist/lib/providerProbe.d.ts +3 -3
  336. package/dist/lib/providerProbe.d.ts.map +1 -1
  337. package/dist/lib/providerProbe.js +15 -7
  338. package/dist/lib/providerProbe.js.map +1 -1
  339. package/dist/lib/sandbox/firecracker.d.ts +3 -3
  340. package/dist/lib/sandbox/firecracker.js +3 -3
  341. package/dist/lib/sandbox/index.d.ts +2 -2
  342. package/dist/lib/sandbox/index.js +2 -2
  343. package/dist/lib/sandbox/oci.d.ts +1 -1
  344. package/dist/lib/sandbox/oci.js +1 -1
  345. package/dist/lib/sandbox/types.d.ts +1 -1
  346. package/dist/lib/sandbox/types.js +1 -1
  347. package/dist/lib/sopFrontMatter.d.ts +1 -1
  348. package/dist/lib/sopFrontMatter.js +1 -1
  349. package/package.json +6 -5
  350. package/resources/sandbox/Dockerfile +1 -1
  351. package/resources/sandbox/entrypoint.sh +4 -4
  352. package/resources/sandbox/firecracker-launch.sh +1 -1
  353. package/dist/harness/base.d.ts +0 -24
  354. package/dist/harness/base.d.ts.map +0 -1
  355. package/dist/harness/base.js +0 -74
  356. package/dist/harness/base.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * `intutic judge configure` — generate the local artifacts an on-prem
3
- * LLM-as-judge needs (LLD #70, model catalog & cohort wizard).
3
+ * LLM-as-judge needs (model catalog & cohort wizard).
4
4
  *
5
5
  * Judges run only on self-hosted models (owner rule, 2026-10-03): the picker
6
6
  * offers `selfHostedJudgeModelChoices()`, and a custom reference that names a
@@ -46,7 +46,7 @@ export function buildLiteLLMConfigYaml(modelRef) {
46
46
  const litellmModel = provider ? `${provider}/${id}` : id;
47
47
  const alias = id || modelRef;
48
48
  const credLine = provider ? credentialLine(provider) : '';
49
- return (`# Generated by \`intutic judge configure\` (LLD #70). Same shape as\n` +
49
+ return (`# Generated by \`intutic judge configure\`. Same shape as\n` +
50
50
  `# infra/compose/litellm_config.yaml's hand-written example — add more\n` +
51
51
  `# model_list entries by hand following that file if you need more than\n` +
52
52
  `# the one judge model this command configured.\n\n` +
@@ -1 +1 @@
1
- {"version":3,"file":"judge.js","sourceRoot":"","sources":["../../src/commands/judge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"judge.js","sourceRoot":"","sources":["../../src/commands/judge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EACL,2BAA2B,EAC3B,gBAAgB,EAChB,8BAA8B,EAC9B,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAgB,MAAM,YAAY,CAAA;AAOxD;;;;GAIG;AACH,SAAS,cAAc,CAAC,UAAkB;IACxC,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,EAAE,CAAA;IACpC,OAAO,8BAA8B,CAAC,GAAG,CAAC,UAAU,CAAC;QACnD,CAAC,CAAC,8BAA8B,GAAG,aAAa;QAChD,CAAC,CAAC,6BAA6B,GAAG,YAAY,CAAA;AAClD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACpD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACxD,MAAM,KAAK,GAAG,EAAE,IAAI,QAAQ,CAAA;IAC5B,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEzD,OAAO,CACL,6DAA6D;QAC7D,yEAAyE;QACzE,0EAA0E;QAC1E,oDAAoD;QACpD,eAAe;QACf,mBAAmB,KAAK,IAAI;QAC5B,uBAAuB;QACvB,gBAAgB,YAAY,IAAI;QAChC,QAAQ;QACR,IAAI;QACJ,qBAAqB;QACrB,+CAA+C,CAChD,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,UAAkB;IAClC,OAAO;QACL,4EAA4E;QAC5E,kCAAkC;QAClC,uCAAuC;QACvC,6CAA6C;QAC7C,6BAA6B,UAAU,EAAE;KAC1C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,SAAS,WAAW,CAAC,UAAkB,EAAE,UAAkB;IACzD,OAAO;QACL,mFAAmF;QACnF,yDAAyD,UAAU,qBAAqB;QACxF,QAAQ;QACR,oBAAoB;QACpB,UAAU;QACV,iBAAiB;QACjB,kBAAkB,UAAU,GAAG;QAC/B,iGAAiG;QACjG,2BAA2B;KAC5B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAwB,EAAE,KAAc,aAAa,EAAE;IAC7F,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAA;IAC1D,EAAE,CAAC,GAAG,CAAC,IAAI,CACT,0FAA0F;QACxF,oFAAoF;QACpF,qGAAqG,CACxG,CAAA;IAED,4EAA4E;IAC5E,iEAAiE;IACjE,MAAM,MAAM,GAAG,YAAY,CAAA;IAC3B,MAAM,OAAO,GAAG,2BAA2B,EAAE,CAAA;IAC7C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC;QAC3B,OAAO,EAAE,uDAAuD;QAChE,OAAO,EAAE;YACP,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;YACjG,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,8EAA8E,EAAE;SACzG;KACF,CAAC,CAAA;IACF,uEAAuE;IACvE,wEAAwE;IACxE,qEAAqE;IACrE,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;QACtB,OAAM;IACR,CAAC;IAED,IAAI,QAAQ,GAAG,IAAI,CAAA;IACnB,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,iFAAiF,EAAE,CAAC,CAAA;QAC5H,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACjD,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;YACtB,OAAM;QACR,CAAC;QACD,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,CAAA;QACxB,IAAI,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,EAAE,CAAC,GAAG,CAAC,KAAK,CACV,IAAI,QAAQ,mFAAmF;gBAC7F,sCAAsC,CACzC,CAAA;YACD,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;YAC5B,OAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,QAAQ,2EAA2E,CAAC,CAAA;IACtG,CAAC;IAED,MAAM,IAAI,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,uBAAuB,CAAC,CAAA;IAC5D,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IACrC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,OAAO,EAAE,CAAC,CAAA;IAEvC,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACtD,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,EAAE,aAAa,CAAC,CAAA;IACxD,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,QAAQ,EAAE,OAAO,CAAC,EAAE,aAAa,CAAC,CAAA;IAEpE,EAAE,CAAC,GAAG,CAAC,IAAI,CACT,qGAAqG;QACnG,uGAAuG;QACvG,sGAAsG;QACtG,mCAAmC,CACtC,CAAA;IAED,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC,CAAA;AACvF,CAAC"}
@@ -4,7 +4,6 @@
4
4
  * Supports API key (--api-key vk_...) or email+password.
5
5
  * Stores credentials at ~/.intutic/credentials.json (mode 0o600).
6
6
  *
7
- * LLD #8 — Sync Daemon / CLI
8
7
  * @module
9
8
  */
10
9
  export declare function runLogin(opts: {
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA+DH,wBAAsB,QAAQ,CAAC,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAmEhH"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA+DH,wBAAsB,QAAQ,CAAC,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAmEhH"}
@@ -4,7 +4,6 @@
4
4
  * Supports API key (--api-key vk_...) or email+password.
5
5
  * Stores credentials at ~/.intutic/credentials.json (mode 0o600).
6
6
  *
7
- * LLD #8 — Sync Daemon / CLI
8
7
  * @module
9
8
  */
10
9
  import { log } from '../lib/logger.js';
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * `intutic logout` — Clear stored credentials.
3
3
  *
4
- * LLD #8 — Sync Daemon / CLI
5
4
  * @module
6
5
  */
7
6
  export declare function runLogout(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAG/C"}
1
+ {"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAG/C"}
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * `intutic logout` — Clear stored credentials.
3
3
  *
4
- * LLD #8 — Sync Daemon / CLI
5
4
  * @module
6
5
  */
7
6
  import { log } from '../lib/logger.js';
@@ -1 +1 @@
1
- {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,gBAAgB,EAAE,CAAA;IACxB,GAAG,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAA;AACzD,CAAC"}
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../src/commands/logout.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,MAAM,gBAAgB,EAAE,CAAA;IACxB,GAAG,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAA;AACzD,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * `intutic mcp` — the workspace's MCP server registry and the decisions every
3
+ * MCP proxy enforces on it.
4
+ *
5
+ * Subcommands:
6
+ * - `intutic mcp list [--json]`
7
+ * - `intutic mcp approve|block|reset <server_id> [--json]`
8
+ * - `intutic mcp enable-tool|disable-tool <server_id> <tool> [--json]`
9
+ *
10
+ * Server side: services/control-plane/src/routes/mcpServers.ts. Approving,
11
+ * blocking, resetting and switching tools need OWNER or ADMIN; listing needs
12
+ * any member. The registry-wide settings (`mcpDefaultPolicy`,
13
+ * `mcpHighRiskToolChange`, `mcpBudgets`) are workspace settings, changed with
14
+ * `intutic settings set`.
15
+ *
16
+ * @module
17
+ */
18
+ import { type ApiCommandOpts } from './apiCommand.js';
19
+ declare const STATUS_FOR: {
20
+ readonly approve: "approved";
21
+ readonly block: "blocked";
22
+ readonly reset: "candidate";
23
+ };
24
+ /** `intutic mcp list` */
25
+ export declare function runMcpList(opts: ApiCommandOpts): Promise<void>;
26
+ /** `intutic mcp approve|block|reset <server_id>` */
27
+ export declare function runMcpDecide(action: keyof typeof STATUS_FOR, serverId: string, opts: ApiCommandOpts): Promise<void>;
28
+ /** `intutic mcp enable-tool|disable-tool <server_id> <tool>` */
29
+ export declare function runMcpTool(serverId: string, tool: string, enabled: boolean, opts: ApiCommandOpts): Promise<void>;
30
+ export {};
31
+ //# sourceMappingURL=mcp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAwBpE,QAAA,MAAM,UAAU;;;;CAAyE,CAAA;AAOzF,yBAAyB;AACzB,wBAAsB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBpE;AAED,oDAAoD;AACpD,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,OAAO,UAAU,EAC/B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC,CAaf;AAED,gEAAgE;AAChE,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC,CAWf"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * `intutic mcp` — the workspace's MCP server registry and the decisions every
3
+ * MCP proxy enforces on it.
4
+ *
5
+ * Subcommands:
6
+ * - `intutic mcp list [--json]`
7
+ * - `intutic mcp approve|block|reset <server_id> [--json]`
8
+ * - `intutic mcp enable-tool|disable-tool <server_id> <tool> [--json]`
9
+ *
10
+ * Server side: services/control-plane/src/routes/mcpServers.ts. Approving,
11
+ * blocking, resetting and switching tools need OWNER or ADMIN; listing needs
12
+ * any member. The registry-wide settings (`mcpDefaultPolicy`,
13
+ * `mcpHighRiskToolChange`, `mcpBudgets`) are workspace settings, changed with
14
+ * `intutic settings set`.
15
+ *
16
+ * @module
17
+ */
18
+ import pc from 'picocolors';
19
+ import { log } from '../lib/logger.js';
20
+ import { runApiCommand } from './apiCommand.js';
21
+ const STATUS_FOR = { approve: 'approved', block: 'blocked', reset: 'candidate' };
22
+ function statusLabel(s) {
23
+ const label = s.status === 'approved' ? pc.green(s.status) : s.status === 'blocked' ? pc.red(s.status) : pc.yellow(s.status);
24
+ return s.heldForReview ? `${label} (held: high-risk tool change)` : label;
25
+ }
26
+ /** `intutic mcp list` */
27
+ export async function runMcpList(opts) {
28
+ await runApiCommand(opts, 'Failed to list MCP servers', (client) => client.get('/api/v1/mcp/servers'), (res) => {
29
+ log.header('Intutic — MCP Servers');
30
+ log.field('Default policy', res.defaultPolicy);
31
+ log.field('High-risk tool change', res.highRiskToolChange);
32
+ log.field('Awaiting a decision', String(res.pendingCount));
33
+ if (res.servers.length === 0) {
34
+ log.dim(' No MCP servers seen yet.');
35
+ return;
36
+ }
37
+ for (const s of res.servers) {
38
+ console.log('');
39
+ log.field('Server ID', s.serverId);
40
+ log.field('Name', s.serverName);
41
+ log.field('Status', statusLabel(s));
42
+ log.field('Tools', `${s.tools.length}${s.disabledTools.length > 0 ? ` (disabled: ${s.disabledTools.join(', ')})` : ''}`);
43
+ log.field('Last seen', s.lastSeenAt);
44
+ }
45
+ });
46
+ }
47
+ /** `intutic mcp approve|block|reset <server_id>` */
48
+ export async function runMcpDecide(action, serverId, opts) {
49
+ await runApiCommand(opts, `Failed to ${action} MCP server ${serverId}`, (client) => client.post(`/api/v1/mcp/servers/${encodeURIComponent(serverId)}/status`, {
50
+ status: STATUS_FOR[action],
51
+ }), (res) => {
52
+ if (action === 'reset')
53
+ log.success(`${res.server.serverName} is back in the approval queue.`);
54
+ else
55
+ log.success(`${res.server.serverName} ${STATUS_FOR[action]}.`);
56
+ });
57
+ }
58
+ /** `intutic mcp enable-tool|disable-tool <server_id> <tool>` */
59
+ export async function runMcpTool(serverId, tool, enabled, opts) {
60
+ await runApiCommand(opts, `Failed to ${enabled ? 'enable' : 'disable'} ${tool}`, (client) => client.post(`/api/v1/mcp/servers/${encodeURIComponent(serverId)}/tools`, {
61
+ tool,
62
+ enabled,
63
+ }), (res) => log.success(`${tool} on ${res.server.serverName} ${enabled ? 'enabled' : 'disabled'}.`));
64
+ }
65
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/commands/mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * `intutic notifications` — notification rules: which events go to which
3
+ * Slack channel, email addresses, webhook or PagerDuty service.
4
+ *
5
+ * Subcommands:
6
+ * - `intutic notifications list [--json]`
7
+ * - `intutic notifications create --event <type> --channel <channel> <target flag> [filters] [--json]`
8
+ * - `intutic notifications update <rule_id> [fields] [--json]`
9
+ * - `intutic notifications delete <rule_id> [--json]`
10
+ * - `intutic notifications rotate-secret <rule_id> [--json]`
11
+ *
12
+ * Server side: services/control-plane/src/routes/notifications.ts. A webhook
13
+ * rule's signing secret is generated by the server and returned once — in the
14
+ * response that created it (create, a switch to the webhook channel, or a
15
+ * rotation) — so this prints it once, with a warning to copy it.
16
+ *
17
+ * @module
18
+ */
19
+ import { type ApiCommandOpts } from './apiCommand.js';
20
+ /** The flags `create` and `update` share. */
21
+ export interface RuleFlags {
22
+ event?: string;
23
+ channel?: string;
24
+ slackChannel?: string;
25
+ email?: string;
26
+ webhookUrl?: string;
27
+ pagerdutyKey?: string;
28
+ severity?: string;
29
+ harness?: string;
30
+ user?: string;
31
+ cooldown?: string;
32
+ }
33
+ /**
34
+ * The request body for the given flags: only the fields a flag set, so an
35
+ * update leaves everything else as it is. Channel config and filters are each
36
+ * replaced whole when any of their flags is given, as the route stores them.
37
+ */
38
+ export declare function ruleBody(flags: RuleFlags): Record<string, unknown>;
39
+ /** `intutic notifications list` */
40
+ export declare function runNotificationsList(opts: ApiCommandOpts): Promise<void>;
41
+ /** `intutic notifications create` */
42
+ export declare function runNotificationsCreate(opts: ApiCommandOpts & RuleFlags & {
43
+ disabled?: boolean;
44
+ }): Promise<void>;
45
+ /** `intutic notifications update <rule_id>` */
46
+ export declare function runNotificationsUpdate(ruleId: string, opts: ApiCommandOpts & RuleFlags & {
47
+ enable?: boolean;
48
+ disable?: boolean;
49
+ }): Promise<void>;
50
+ /** `intutic notifications delete <rule_id>` */
51
+ export declare function runNotificationsDelete(ruleId: string, opts: ApiCommandOpts): Promise<void>;
52
+ /** `intutic notifications rotate-secret <rule_id>` */
53
+ export declare function runNotificationsRotateSecret(ruleId: string, opts: ApiCommandOpts): Promise<void>;
54
+ //# sourceMappingURL=notifications.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifications.d.ts","sourceRoot":"","sources":["../../src/commands/notifications.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,EAA8D,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAwBjH,6CAA6C;AAC7C,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAkBD;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA4BlE;AAsBD,mCAAmC;AACnC,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB9E;AAED,qCAAqC;AACrC,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAarH;AAED,+CAA+C;AAC/C,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,cAAc,GAAG,SAAS,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GACzE,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,+CAA+C;AAC/C,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAOhG;AAED,sDAAsD;AACtD,wBAAsB,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAatG"}
@@ -0,0 +1,151 @@
1
+ /**
2
+ * `intutic notifications` — notification rules: which events go to which
3
+ * Slack channel, email addresses, webhook or PagerDuty service.
4
+ *
5
+ * Subcommands:
6
+ * - `intutic notifications list [--json]`
7
+ * - `intutic notifications create --event <type> --channel <channel> <target flag> [filters] [--json]`
8
+ * - `intutic notifications update <rule_id> [fields] [--json]`
9
+ * - `intutic notifications delete <rule_id> [--json]`
10
+ * - `intutic notifications rotate-secret <rule_id> [--json]`
11
+ *
12
+ * Server side: services/control-plane/src/routes/notifications.ts. A webhook
13
+ * rule's signing secret is generated by the server and returned once — in the
14
+ * response that created it (create, a switch to the webhook channel, or a
15
+ * rotation) — so this prints it once, with a warning to copy it.
16
+ *
17
+ * @module
18
+ */
19
+ import pc from 'picocolors';
20
+ import { NOTIFICATION_EVENT_TYPES } from '@intutic/shared-types';
21
+ import { log } from '../lib/logger.js';
22
+ import { fail, list, positiveInt, printSigningSecret, runApiCommand } from './apiCommand.js';
23
+ const CHANNELS = ['slack', 'email', 'webhook', 'pagerduty'];
24
+ /**
25
+ * Fails on an event type the API would refuse, suggesting the ones in the
26
+ * same family (`decision.pend` → `decision.pending`, …), or all of them when
27
+ * none share its first segment.
28
+ */
29
+ function checkEventType(event) {
30
+ if (NOTIFICATION_EVENT_TYPES.includes(event))
31
+ return;
32
+ const family = event.split('.')[0];
33
+ const near = NOTIFICATION_EVENT_TYPES.filter((t) => t.split('.')[0] === family);
34
+ fail(`--event "${event}" is not a notification event type. ` +
35
+ (near.length > 0 ? `Did you mean ${near.join(', ')}?` : `Valid types: ${NOTIFICATION_EVENT_TYPES.join(', ')}.`) +
36
+ ' Every type is described at https://docs.intutic.ai/guide/settings#notifications');
37
+ }
38
+ /**
39
+ * The request body for the given flags: only the fields a flag set, so an
40
+ * update leaves everything else as it is. Channel config and filters are each
41
+ * replaced whole when any of their flags is given, as the route stores them.
42
+ */
43
+ export function ruleBody(flags) {
44
+ const body = {};
45
+ if (flags.event !== undefined) {
46
+ checkEventType(flags.event);
47
+ body.eventType = flags.event;
48
+ }
49
+ if (flags.channel !== undefined) {
50
+ if (!CHANNELS.includes(flags.channel)) {
51
+ fail(`--channel must be one of ${CHANNELS.join(', ')}, got "${flags.channel}"`);
52
+ }
53
+ body.channel = flags.channel;
54
+ }
55
+ const config = {};
56
+ if (flags.slackChannel !== undefined)
57
+ config.slackChannelId = flags.slackChannel;
58
+ if (flags.email !== undefined)
59
+ config.emailRecipients = list(flags.email);
60
+ if (flags.webhookUrl !== undefined)
61
+ config.webhookUrl = flags.webhookUrl;
62
+ if (flags.pagerdutyKey !== undefined)
63
+ config.pagerdutyRoutingKey = flags.pagerdutyKey;
64
+ if (Object.keys(config).length > 0)
65
+ body.channelConfig = config;
66
+ const filters = {};
67
+ if (flags.severity !== undefined)
68
+ filters.severity = list(flags.severity);
69
+ if (flags.harness !== undefined)
70
+ filters.harnessType = list(flags.harness);
71
+ if (flags.user !== undefined)
72
+ filters.userId = list(flags.user);
73
+ if (Object.keys(filters).length > 0)
74
+ body.filters = filters;
75
+ if (flags.cooldown !== undefined)
76
+ body.cooldownMinutes = positiveInt(flags.cooldown, '--cooldown');
77
+ return body;
78
+ }
79
+ function target(rule) {
80
+ const c = rule.channelConfig;
81
+ switch (rule.channel) {
82
+ case 'slack': return c.slackChannelName ?? c.slackChannelId ?? '—';
83
+ case 'email': return c.emailRecipients?.join(', ') ?? '—';
84
+ case 'webhook': return c.webhookUrl ?? '—';
85
+ case 'pagerduty': return 'routing key set';
86
+ }
87
+ }
88
+ function printRule(rule) {
89
+ log.field('Rule ID', rule.ruleId);
90
+ log.field('Event', rule.eventType);
91
+ log.field('Channel', `${rule.channel} → ${target(rule)}`);
92
+ const filters = Object.entries(rule.filters).filter(([, v]) => v && v.length > 0);
93
+ if (filters.length > 0)
94
+ log.field('Filters', filters.map(([k, v]) => `${k}=${v.join(',')}`).join('; '));
95
+ log.field('Cooldown', `${rule.cooldownMinutes} min`);
96
+ log.field('Enabled', rule.enabled ? pc.green('yes') : pc.dim('no'));
97
+ }
98
+ /** `intutic notifications list` */
99
+ export async function runNotificationsList(opts) {
100
+ await runApiCommand(opts, 'Failed to list notification rules', (client) => client.get('/api/v1/notifications/rules'), (res) => {
101
+ log.header('Intutic — Notification Rules');
102
+ if (res.rules.length === 0) {
103
+ log.dim(' No notification rules.');
104
+ return;
105
+ }
106
+ for (const rule of res.rules) {
107
+ console.log('');
108
+ printRule(rule);
109
+ }
110
+ });
111
+ }
112
+ /** `intutic notifications create` */
113
+ export async function runNotificationsCreate(opts) {
114
+ const body = ruleBody(opts);
115
+ if (opts.disabled)
116
+ body.enabled = false;
117
+ await runApiCommand(opts, 'Failed to create notification rule', (client) => client.post('/api/v1/notifications/rules', body), (rule) => {
118
+ log.success('Notification rule created.');
119
+ printRule(rule);
120
+ printSigningSecret(rule.signingSecret);
121
+ });
122
+ }
123
+ /** `intutic notifications update <rule_id>` */
124
+ export async function runNotificationsUpdate(ruleId, opts) {
125
+ if (opts.enable && opts.disable)
126
+ fail('Pass --enable or --disable, not both.');
127
+ const body = ruleBody(opts);
128
+ if (opts.enable)
129
+ body.enabled = true;
130
+ if (opts.disable)
131
+ body.enabled = false;
132
+ if (Object.keys(body).length === 0)
133
+ fail('Nothing to update: pass at least one field to change.');
134
+ await runApiCommand(opts, `Failed to update notification rule ${ruleId}`, (client) => client.put(`/api/v1/notifications/rules/${encodeURIComponent(ruleId)}`, body), (rule) => {
135
+ log.success('Notification rule updated.');
136
+ printRule(rule);
137
+ printSigningSecret(rule.signingSecret);
138
+ });
139
+ }
140
+ /** `intutic notifications delete <rule_id>` */
141
+ export async function runNotificationsDelete(ruleId, opts) {
142
+ await runApiCommand(opts, `Failed to delete notification rule ${ruleId}`, (client) => client.del(`/api/v1/notifications/rules/${encodeURIComponent(ruleId)}`), () => log.success(`Notification rule ${ruleId} deleted.`));
143
+ }
144
+ /** `intutic notifications rotate-secret <rule_id>` */
145
+ export async function runNotificationsRotateSecret(ruleId, opts) {
146
+ await runApiCommand(opts, `Failed to replace the signing secret of ${ruleId}`, (client) => client.post(`/api/v1/notifications/rules/${encodeURIComponent(ruleId)}/signing-secret`), (res) => {
147
+ log.success(`New signing secret for ${res.ruleId}; deliveries are signed with it from now on.`);
148
+ printSigningSecret(res.signingSecret);
149
+ });
150
+ }
151
+ //# sourceMappingURL=notifications.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notifications.js","sourceRoot":"","sources":["../../src/commands/notifications.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * `intutic org create` — create a real org from an already-authenticated
3
- * session (tenancy phase 4/7, LLD #65).
3
+ * session.
4
4
  *
5
- * Real org creation now requires DNS domain-ownership verification (LLD #71
6
- * follow-up): creating an org auto-provisions a real managed gateway cell,
5
+ * Real org creation now requires DNS domain-ownership verification:
6
+ * creating an org auto-provisions a real managed gateway cell,
7
7
  * so an org's claimed domain must be proven before `POST /api/v1/orgs` will
8
8
  * create it. There's no anonymous-compatible verification flow (no session
9
9
  * exists yet to own a verification attempt against), so the old anonymous
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * `intutic org create` — create a real org from an already-authenticated
3
- * session (tenancy phase 4/7, LLD #65).
3
+ * session.
4
4
  *
5
- * Real org creation now requires DNS domain-ownership verification (LLD #71
6
- * follow-up): creating an org auto-provisions a real managed gateway cell,
5
+ * Real org creation now requires DNS domain-ownership verification:
6
+ * creating an org auto-provisions a real managed gateway cell,
7
7
  * so an org's claimed domain must be proven before `POST /api/v1/orgs` will
8
8
  * create it. There's no anonymous-compatible verification flow (no session
9
9
  * exists yet to own a verification attempt against), so the old anonymous
@@ -113,11 +113,16 @@ export declare const explainUnsupportedImport: typeof explainWasmImport;
113
113
  * Instantiates a compiled rule with the proxy's host imports and evaluates it
114
114
  * against one mock context, returning the raw verdict code.
115
115
  *
116
+ * The rule is metered as the MCP proxy meters it, against the proxies'
117
+ * budget (`DEFAULT_FUEL_BUDGET`, the Rust proxy's `limits::NATIVE`): a rule
118
+ * that runs out of instructions there throws here, saying so. `budget` is
119
+ * for tests.
120
+ *
116
121
  * The import set here is the proxy's, not a convenient superset: a rule that
117
122
  * links in this sandbox must link in the proxy, or install validation passes
118
123
  * something the proxy then silently bypasses.
119
124
  */
120
- export declare function instantiateAndEvaluate(wasmBuffer: Uint8Array, mockStr: string): Promise<number>;
125
+ export declare function instantiateAndEvaluate(wasmBuffer: Uint8Array, mockStr: string, budget?: number): Promise<number>;
121
126
  export declare function runPolicyTest(opts: {
122
127
  wasm: string;
123
128
  mock: string;
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/commands/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/commands/policy.ts"],"names":[],"mappings":"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"}