@intutic/cli 1.10.0 → 1.10.1

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 (357) hide show
  1. package/README.md +1 -0
  2. package/dist/cli.js +868 -30
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/attenuate.d.ts +39 -0
  5. package/dist/commands/attenuate.d.ts.map +1 -0
  6. package/dist/commands/attenuate.js +98 -0
  7. package/dist/commands/attenuate.js.map +1 -0
  8. package/dist/commands/budget.d.ts +80 -0
  9. package/dist/commands/budget.d.ts.map +1 -1
  10. package/dist/commands/budget.js +119 -3
  11. package/dist/commands/budget.js.map +1 -1
  12. package/dist/commands/connect.d.ts +10 -0
  13. package/dist/commands/connect.d.ts.map +1 -1
  14. package/dist/commands/connect.js +358 -48
  15. package/dist/commands/connect.js.map +1 -1
  16. package/dist/commands/credentials.d.ts +31 -0
  17. package/dist/commands/credentials.d.ts.map +1 -0
  18. package/dist/commands/credentials.js +134 -0
  19. package/dist/commands/credentials.js.map +1 -0
  20. package/dist/commands/decision.d.ts +37 -0
  21. package/dist/commands/decision.d.ts.map +1 -0
  22. package/dist/commands/decision.js +56 -0
  23. package/dist/commands/decision.js.map +1 -0
  24. package/dist/commands/doctor.d.ts +38 -1
  25. package/dist/commands/doctor.d.ts.map +1 -1
  26. package/dist/commands/doctor.js +228 -18
  27. package/dist/commands/doctor.js.map +1 -1
  28. package/dist/commands/enforce.d.ts +33 -0
  29. package/dist/commands/enforce.d.ts.map +1 -0
  30. package/dist/commands/enforce.js +150 -0
  31. package/dist/commands/enforce.js.map +1 -0
  32. package/dist/commands/enterprise.d.ts +29 -0
  33. package/dist/commands/enterprise.d.ts.map +1 -0
  34. package/dist/commands/enterprise.js +141 -0
  35. package/dist/commands/enterprise.js.map +1 -0
  36. package/dist/commands/env.d.ts +7 -0
  37. package/dist/commands/env.d.ts.map +1 -0
  38. package/dist/commands/env.js +55 -0
  39. package/dist/commands/env.js.map +1 -0
  40. package/dist/commands/exec.d.ts +38 -2
  41. package/dist/commands/exec.d.ts.map +1 -1
  42. package/dist/commands/exec.js +247 -10
  43. package/dist/commands/exec.js.map +1 -1
  44. package/dist/commands/findings.d.ts +84 -0
  45. package/dist/commands/findings.d.ts.map +1 -0
  46. package/dist/commands/findings.js +329 -0
  47. package/dist/commands/findings.js.map +1 -0
  48. package/dist/commands/gateway.d.ts +62 -0
  49. package/dist/commands/gateway.d.ts.map +1 -0
  50. package/dist/commands/gateway.js +298 -0
  51. package/dist/commands/gateway.js.map +1 -0
  52. package/dist/commands/guardrails.d.ts +81 -0
  53. package/dist/commands/guardrails.d.ts.map +1 -0
  54. package/dist/commands/guardrails.js +735 -0
  55. package/dist/commands/guardrails.js.map +1 -0
  56. package/dist/commands/init.d.ts +8 -0
  57. package/dist/commands/init.d.ts.map +1 -1
  58. package/dist/commands/init.js +14 -2
  59. package/dist/commands/init.js.map +1 -1
  60. package/dist/commands/install-daemon.d.ts +70 -3
  61. package/dist/commands/install-daemon.d.ts.map +1 -1
  62. package/dist/commands/install-daemon.js +482 -47
  63. package/dist/commands/install-daemon.js.map +1 -1
  64. package/dist/commands/integrity.d.ts +205 -0
  65. package/dist/commands/integrity.d.ts.map +1 -0
  66. package/dist/commands/integrity.js +620 -0
  67. package/dist/commands/integrity.js.map +1 -0
  68. package/dist/commands/judge.d.ts +31 -0
  69. package/dist/commands/judge.d.ts.map +1 -0
  70. package/dist/commands/judge.js +118 -0
  71. package/dist/commands/judge.js.map +1 -0
  72. package/dist/commands/org.d.ts +31 -0
  73. package/dist/commands/org.d.ts.map +1 -0
  74. package/dist/commands/org.js +159 -0
  75. package/dist/commands/org.js.map +1 -0
  76. package/dist/commands/policy.d.ts +138 -4
  77. package/dist/commands/policy.d.ts.map +1 -1
  78. package/dist/commands/policy.js +538 -97
  79. package/dist/commands/policy.js.map +1 -1
  80. package/dist/commands/predict-cost.d.ts +45 -0
  81. package/dist/commands/predict-cost.d.ts.map +1 -0
  82. package/dist/commands/predict-cost.js +123 -0
  83. package/dist/commands/predict-cost.js.map +1 -0
  84. package/dist/commands/rollback.d.ts +5 -0
  85. package/dist/commands/rollback.d.ts.map +1 -0
  86. package/dist/commands/rollback.js +142 -0
  87. package/dist/commands/rollback.js.map +1 -0
  88. package/dist/commands/routing.d.ts +62 -0
  89. package/dist/commands/routing.d.ts.map +1 -0
  90. package/dist/commands/routing.js +121 -0
  91. package/dist/commands/routing.js.map +1 -0
  92. package/dist/commands/setup.d.ts +62 -0
  93. package/dist/commands/setup.d.ts.map +1 -0
  94. package/dist/commands/setup.js +238 -0
  95. package/dist/commands/setup.js.map +1 -0
  96. package/dist/commands/skill.d.ts +268 -1
  97. package/dist/commands/skill.d.ts.map +1 -1
  98. package/dist/commands/skill.js +744 -39
  99. package/dist/commands/skill.js.map +1 -1
  100. package/dist/commands/sops.d.ts +95 -0
  101. package/dist/commands/sops.d.ts.map +1 -1
  102. package/dist/commands/sops.js +334 -34
  103. package/dist/commands/sops.js.map +1 -1
  104. package/dist/commands/start.d.ts.map +1 -1
  105. package/dist/commands/start.js +1 -18
  106. package/dist/commands/start.js.map +1 -1
  107. package/dist/commands/status.d.ts.map +1 -1
  108. package/dist/commands/status.js +44 -1
  109. package/dist/commands/status.js.map +1 -1
  110. package/dist/commands/team.d.ts +38 -0
  111. package/dist/commands/team.d.ts.map +1 -0
  112. package/dist/commands/team.js +140 -0
  113. package/dist/commands/team.js.map +1 -0
  114. package/dist/commands/traces.d.ts +8 -1
  115. package/dist/commands/traces.d.ts.map +1 -1
  116. package/dist/commands/traces.js +114 -15
  117. package/dist/commands/traces.js.map +1 -1
  118. package/dist/commands/whoami.d.ts.map +1 -1
  119. package/dist/commands/whoami.js +2 -1
  120. package/dist/commands/whoami.js.map +1 -1
  121. package/dist/config/keychain.d.ts +10 -2
  122. package/dist/config/keychain.d.ts.map +1 -1
  123. package/dist/config/keychain.js +83 -14
  124. package/dist/config/keychain.js.map +1 -1
  125. package/dist/config/paths.d.ts +27 -0
  126. package/dist/config/paths.d.ts.map +1 -1
  127. package/dist/config/paths.js +37 -6
  128. package/dist/config/paths.js.map +1 -1
  129. package/dist/config/store.d.ts.map +1 -1
  130. package/dist/config/store.js +19 -3
  131. package/dist/config/store.js.map +1 -1
  132. package/dist/harness/ag2.d.ts +22 -0
  133. package/dist/harness/ag2.d.ts.map +1 -0
  134. package/dist/harness/ag2.js +34 -0
  135. package/dist/harness/ag2.js.map +1 -0
  136. package/dist/harness/agentcore.d.ts +55 -0
  137. package/dist/harness/agentcore.d.ts.map +1 -0
  138. package/dist/harness/agentcore.js +119 -0
  139. package/dist/harness/agentcore.js.map +1 -0
  140. package/dist/harness/agenticOrchestrator.d.ts +52 -0
  141. package/dist/harness/agenticOrchestrator.d.ts.map +1 -0
  142. package/dist/harness/agenticOrchestrator.js +115 -0
  143. package/dist/harness/agenticOrchestrator.js.map +1 -0
  144. package/dist/harness/aiSdkHarness.d.ts +30 -0
  145. package/dist/harness/aiSdkHarness.d.ts.map +1 -0
  146. package/dist/harness/aiSdkHarness.js +51 -0
  147. package/dist/harness/aiSdkHarness.js.map +1 -0
  148. package/dist/harness/aiSdkWorkflow.d.ts +26 -0
  149. package/dist/harness/aiSdkWorkflow.d.ts.map +1 -0
  150. package/dist/harness/aiSdkWorkflow.js +39 -0
  151. package/dist/harness/aiSdkWorkflow.js.map +1 -0
  152. package/dist/harness/autogen.d.ts +24 -0
  153. package/dist/harness/autogen.d.ts.map +1 -0
  154. package/dist/harness/autogen.js +36 -0
  155. package/dist/harness/autogen.js.map +1 -0
  156. package/dist/harness/base.js.map +1 -1
  157. package/dist/harness/continue.d.ts.map +1 -1
  158. package/dist/harness/continue.js +2 -1
  159. package/dist/harness/continue.js.map +1 -1
  160. package/dist/harness/crewai.d.ts +15 -0
  161. package/dist/harness/crewai.d.ts.map +1 -0
  162. package/dist/harness/crewai.js +26 -0
  163. package/dist/harness/crewai.js.map +1 -0
  164. package/dist/harness/detector.d.ts +1 -1
  165. package/dist/harness/detector.d.ts.map +1 -1
  166. package/dist/harness/detector.js +47 -1
  167. package/dist/harness/detector.js.map +1 -1
  168. package/dist/harness/dsh.d.ts +19 -0
  169. package/dist/harness/dsh.d.ts.map +1 -0
  170. package/dist/harness/dsh.js +93 -0
  171. package/dist/harness/dsh.js.map +1 -0
  172. package/dist/harness/eve.d.ts +40 -0
  173. package/dist/harness/eve.d.ts.map +1 -0
  174. package/dist/harness/eve.js +67 -0
  175. package/dist/harness/eve.js.map +1 -0
  176. package/dist/harness/googleAdk.d.ts +18 -0
  177. package/dist/harness/googleAdk.d.ts.map +1 -0
  178. package/dist/harness/googleAdk.js +29 -0
  179. package/dist/harness/googleAdk.js.map +1 -0
  180. package/dist/harness/goose.d.ts.map +1 -1
  181. package/dist/harness/goose.js +5 -1
  182. package/dist/harness/goose.js.map +1 -1
  183. package/dist/harness/grok.d.ts +16 -0
  184. package/dist/harness/grok.d.ts.map +1 -0
  185. package/dist/harness/grok.js +78 -0
  186. package/dist/harness/grok.js.map +1 -0
  187. package/dist/harness/jsSdkGatedAdapter.d.ts +102 -0
  188. package/dist/harness/jsSdkGatedAdapter.d.ts.map +1 -0
  189. package/dist/harness/jsSdkGatedAdapter.js +139 -0
  190. package/dist/harness/jsSdkGatedAdapter.js.map +1 -0
  191. package/dist/harness/langchain.d.ts +22 -0
  192. package/dist/harness/langchain.d.ts.map +1 -0
  193. package/dist/harness/langchain.js +33 -0
  194. package/dist/harness/langchain.js.map +1 -0
  195. package/dist/harness/langgraph.d.ts +22 -0
  196. package/dist/harness/langgraph.d.ts.map +1 -0
  197. package/dist/harness/langgraph.js +80 -0
  198. package/dist/harness/langgraph.js.map +1 -0
  199. package/dist/harness/mastra.d.ts +21 -0
  200. package/dist/harness/mastra.d.ts.map +1 -0
  201. package/dist/harness/mastra.js +33 -0
  202. package/dist/harness/mastra.js.map +1 -0
  203. package/dist/harness/muse.d.ts +22 -0
  204. package/dist/harness/muse.d.ts.map +1 -0
  205. package/dist/harness/muse.js +92 -0
  206. package/dist/harness/muse.js.map +1 -0
  207. package/dist/harness/n8n.d.ts.map +1 -1
  208. package/dist/harness/n8n.js +36 -11
  209. package/dist/harness/n8n.js.map +1 -1
  210. package/dist/harness/openaiAgents.d.ts +40 -0
  211. package/dist/harness/openaiAgents.d.ts.map +1 -0
  212. package/dist/harness/openaiAgents.js +107 -0
  213. package/dist/harness/openaiAgents.js.map +1 -0
  214. package/dist/harness/opencode.d.ts +24 -0
  215. package/dist/harness/opencode.d.ts.map +1 -0
  216. package/dist/harness/opencode.js +97 -0
  217. package/dist/harness/opencode.js.map +1 -0
  218. package/dist/harness/pydanticAi.d.ts +19 -0
  219. package/dist/harness/pydanticAi.d.ts.map +1 -0
  220. package/dist/harness/pydanticAi.js +30 -0
  221. package/dist/harness/pydanticAi.js.map +1 -0
  222. package/dist/harness/sdkGatedAdapter.d.ts +55 -0
  223. package/dist/harness/sdkGatedAdapter.d.ts.map +1 -0
  224. package/dist/harness/sdkGatedAdapter.js +85 -0
  225. package/dist/harness/sdkGatedAdapter.js.map +1 -0
  226. package/dist/harness/smolagents.d.ts +22 -0
  227. package/dist/harness/smolagents.d.ts.map +1 -0
  228. package/dist/harness/smolagents.js +33 -0
  229. package/dist/harness/smolagents.js.map +1 -0
  230. package/dist/harness/strands.d.ts +22 -0
  231. package/dist/harness/strands.d.ts.map +1 -0
  232. package/dist/harness/strands.js +35 -0
  233. package/dist/harness/strands.js.map +1 -0
  234. package/dist/harness/trueforge.d.ts +25 -0
  235. package/dist/harness/trueforge.d.ts.map +1 -0
  236. package/dist/harness/trueforge.js +40 -0
  237. package/dist/harness/trueforge.js.map +1 -0
  238. package/dist/harness/types.d.ts.map +1 -1
  239. package/dist/harness/types.js +70 -0
  240. package/dist/harness/types.js.map +1 -1
  241. package/dist/harness/vercelAiSdk.d.ts +31 -0
  242. package/dist/harness/vercelAiSdk.d.ts.map +1 -0
  243. package/dist/harness/vercelAiSdk.js +44 -0
  244. package/dist/harness/vercelAiSdk.js.map +1 -0
  245. package/dist/harness/xirp.d.ts +43 -0
  246. package/dist/harness/xirp.d.ts.map +1 -0
  247. package/dist/harness/xirp.js +95 -0
  248. package/dist/harness/xirp.js.map +1 -0
  249. package/dist/lib/api.d.ts +68 -0
  250. package/dist/lib/api.d.ts.map +1 -1
  251. package/dist/lib/api.js +108 -67
  252. package/dist/lib/api.js.map +1 -1
  253. package/dist/lib/authMessages.d.ts +19 -0
  254. package/dist/lib/authMessages.d.ts.map +1 -0
  255. package/dist/lib/authMessages.js +20 -0
  256. package/dist/lib/authMessages.js.map +1 -0
  257. package/dist/lib/binaryChecksum.d.ts +12 -0
  258. package/dist/lib/binaryChecksum.d.ts.map +1 -0
  259. package/dist/lib/binaryChecksum.js +45 -0
  260. package/dist/lib/binaryChecksum.js.map +1 -0
  261. package/dist/lib/binaryOnPath.d.ts +24 -0
  262. package/dist/lib/binaryOnPath.d.ts.map +1 -0
  263. package/dist/lib/binaryOnPath.js +31 -0
  264. package/dist/lib/binaryOnPath.js.map +1 -0
  265. package/dist/lib/caTrust.d.ts +69 -0
  266. package/dist/lib/caTrust.d.ts.map +1 -0
  267. package/dist/lib/caTrust.js +169 -0
  268. package/dist/lib/caTrust.js.map +1 -0
  269. package/dist/lib/ciscoScanner.d.ts +178 -0
  270. package/dist/lib/ciscoScanner.d.ts.map +1 -0
  271. package/dist/lib/ciscoScanner.js +292 -0
  272. package/dist/lib/ciscoScanner.js.map +1 -0
  273. package/dist/lib/decisionsLogRefresh.d.ts +28 -0
  274. package/dist/lib/decisionsLogRefresh.d.ts.map +1 -0
  275. package/dist/lib/decisionsLogRefresh.js +54 -0
  276. package/dist/lib/decisionsLogRefresh.js.map +1 -0
  277. package/dist/lib/deviceReport.d.ts +26 -0
  278. package/dist/lib/deviceReport.d.ts.map +1 -0
  279. package/dist/lib/deviceReport.js +55 -0
  280. package/dist/lib/deviceReport.js.map +1 -0
  281. package/dist/lib/elevation.d.ts +58 -0
  282. package/dist/lib/elevation.d.ts.map +1 -0
  283. package/dist/lib/elevation.js +83 -0
  284. package/dist/lib/elevation.js.map +1 -0
  285. package/dist/lib/enforcementState.d.ts +69 -0
  286. package/dist/lib/enforcementState.d.ts.map +1 -0
  287. package/dist/lib/enforcementState.js +113 -0
  288. package/dist/lib/enforcementState.js.map +1 -0
  289. package/dist/lib/ensureValkey.d.ts.map +1 -1
  290. package/dist/lib/ensureValkey.js +2 -2
  291. package/dist/lib/ensureValkey.js.map +1 -1
  292. package/dist/lib/envInjector.d.ts.map +1 -1
  293. package/dist/lib/envInjector.js +22 -4
  294. package/dist/lib/envInjector.js.map +1 -1
  295. package/dist/lib/gitHooks.d.ts +7 -2
  296. package/dist/lib/gitHooks.d.ts.map +1 -1
  297. package/dist/lib/gitHooks.js +180 -13
  298. package/dist/lib/gitHooks.js.map +1 -1
  299. package/dist/lib/gracefulShutdown.d.ts +37 -0
  300. package/dist/lib/gracefulShutdown.d.ts.map +1 -0
  301. package/dist/lib/gracefulShutdown.js +57 -0
  302. package/dist/lib/gracefulShutdown.js.map +1 -0
  303. package/dist/lib/graphIdentity.d.ts +80 -0
  304. package/dist/lib/graphIdentity.d.ts.map +1 -0
  305. package/dist/lib/graphIdentity.js +120 -0
  306. package/dist/lib/graphIdentity.js.map +1 -0
  307. package/dist/lib/localTraces.d.ts +61 -0
  308. package/dist/lib/localTraces.d.ts.map +1 -0
  309. package/dist/lib/localTraces.js +173 -0
  310. package/dist/lib/localTraces.js.map +1 -0
  311. package/dist/lib/mdmManifest.d.ts +73 -0
  312. package/dist/lib/mdmManifest.d.ts.map +1 -0
  313. package/dist/lib/mdmManifest.js +190 -0
  314. package/dist/lib/mdmManifest.js.map +1 -0
  315. package/dist/lib/onboarding.d.ts.map +1 -1
  316. package/dist/lib/onboarding.js +60 -1
  317. package/dist/lib/onboarding.js.map +1 -1
  318. package/dist/lib/otelPropagation.d.ts +26 -0
  319. package/dist/lib/otelPropagation.d.ts.map +1 -0
  320. package/dist/lib/otelPropagation.js +40 -0
  321. package/dist/lib/otelPropagation.js.map +1 -0
  322. package/dist/lib/policySnapshot.d.ts +92 -0
  323. package/dist/lib/policySnapshot.d.ts.map +1 -0
  324. package/dist/lib/policySnapshot.js +173 -0
  325. package/dist/lib/policySnapshot.js.map +1 -0
  326. package/dist/lib/process.d.ts.map +1 -1
  327. package/dist/lib/process.js +60 -0
  328. package/dist/lib/process.js.map +1 -1
  329. package/dist/lib/providerProbe.d.ts +28 -0
  330. package/dist/lib/providerProbe.d.ts.map +1 -0
  331. package/dist/lib/providerProbe.js +57 -0
  332. package/dist/lib/providerProbe.js.map +1 -0
  333. package/dist/lib/proxyBinary.d.ts +19 -0
  334. package/dist/lib/proxyBinary.d.ts.map +1 -0
  335. package/dist/lib/proxyBinary.js +30 -0
  336. package/dist/lib/proxyBinary.js.map +1 -0
  337. package/dist/lib/sandbox/firecracker.d.ts +89 -0
  338. package/dist/lib/sandbox/firecracker.d.ts.map +1 -0
  339. package/dist/lib/sandbox/firecracker.js +135 -0
  340. package/dist/lib/sandbox/firecracker.js.map +1 -0
  341. package/dist/lib/sandbox/index.d.ts +34 -0
  342. package/dist/lib/sandbox/index.d.ts.map +1 -0
  343. package/dist/lib/sandbox/index.js +54 -0
  344. package/dist/lib/sandbox/index.js.map +1 -0
  345. package/dist/lib/sandbox/oci.d.ts +38 -0
  346. package/dist/lib/sandbox/oci.d.ts.map +1 -0
  347. package/dist/lib/sandbox/oci.js +108 -0
  348. package/dist/lib/sandbox/oci.js.map +1 -0
  349. package/dist/lib/sandbox/types.d.ts +48 -0
  350. package/dist/lib/sandbox/types.d.ts.map +1 -0
  351. package/dist/lib/sandbox/types.js +12 -0
  352. package/dist/lib/sandbox/types.js.map +1 -0
  353. package/dist/lib/sopFrontMatter.d.ts +50 -0
  354. package/dist/lib/sopFrontMatter.d.ts.map +1 -0
  355. package/dist/lib/sopFrontMatter.js +129 -0
  356. package/dist/lib/sopFrontMatter.js.map +1 -0
  357. package/package.json +11 -6
@@ -0,0 +1,119 @@
1
+ /**
2
+ * agentcore.ts — AWS Bedrock AgentCore Runtime adapter (detection-only, no
3
+ * config file of its own).
4
+ *
5
+ * AgentCore (GA 2025-10) is a 13-module platform, not one thing. This
6
+ * adapter covers exactly one module: **Runtime**, a managed hosting
7
+ * environment that runs a customer's OWN agent code (any framework)
8
+ * unchanged. Because it is just running the customer's own code, the
9
+ * blocking tool-call gate is whichever ALREADY-SUPPORTED framework adapter
10
+ * that code uses — Strands (strands.ts), LangGraph (langgraph.ts), CrewAI
11
+ * (crewai.ts), etc. This adapter's `writeConfig` is therefore a no-op, the
12
+ * same shape as xirp.ts/agenticOrchestrator.ts: it exists so
13
+ * `intutic status`/`intutic init` can report "this workspace deploys to
14
+ * AgentCore Runtime" and point at the deployment-target caveats documented
15
+ * in apps/docs/integrations/agentcore.md (environment-variable caps, VPC/NAT
16
+ * egress topology, Bedrock's SigV4 traffic not being proxyable) — none of
17
+ * which belong in a repo-written file, since the actual proxy env vars are
18
+ * already written by whichever inner framework's own adapter detects.
19
+ *
20
+ * UNLIKE Xirp/Agentic Orchestrator, Runtime does not spawn an
21
+ * already-installed CLI harness as a subprocess — it hosts framework-SDK
22
+ * code as a deployment target. If that code uses no framework this registry
23
+ * supports (raw boto3, a hand-rolled tool loop), coverage is genuinely zero
24
+ * — an honest gap, stated rather than papered over.
25
+ *
26
+ * # Detection signals (all live-verified against real published artifacts —
27
+ * see packages/shared-types/src/enums.ts's HarnessType.AGENTCORE_RUNTIME doc
28
+ * for exactly how)
29
+ *
30
+ * 1. `bedrock-agentcore` in a Python manifest (pyproject.toml/
31
+ * requirements.txt/uv.lock) — the PyPI SDK package (CONFIRMED 1.22.0).
32
+ * 2. `bedrock-agentcore-starter-toolkit` in a Python manifest — the optional
33
+ * CLI/dev-loop toolkit (CONFIRMED 0.3.11); a weaker signal than #1 since a
34
+ * project can depend on the SDK without the starter toolkit, but not the
35
+ * reverse in practice.
36
+ * 3. `bedrock-agentcore` or `@aws/agentcore` in package.json dependencies —
37
+ * the npm TypeScript SDK (CONFIRMED 0.4.3) and CLI (CONFIRMED 0.27.0).
38
+ * 4. `.bedrock_agentcore.yaml` at the workspace root — the config file the
39
+ * Python starter toolkit's `agentcore configure`/`agentcore launch`
40
+ * commands write (confirmed via `bedrock_agentcore_starter_toolkit/cli/
41
+ * runtime/_configure_impl.py` and every other CLI subcommand module that
42
+ * reads it).
43
+ * 5. `agentcore/agentcore.json` or `aws-targets.json` at the workspace root —
44
+ * the config files the npm `@aws/agentcore` CLI writes (confirmed via the
45
+ * literal strings in the published `dist/cli/index.mjs` bundle).
46
+ *
47
+ * No ReDoS surface: every check below is a plain substring/property test
48
+ * over locally-read files, never a regex over untrusted network input.
49
+ *
50
+ * HLD §3.14 — Harness Onboarding Matrix
51
+ * @module
52
+ */
53
+ import { access, readFile } from 'node:fs/promises';
54
+ import { join } from 'node:path';
55
+ import { HarnessType } from '@intutic/shared-types';
56
+ /** Python manifests scanned for the SDK/toolkit package names. */
57
+ const PYTHON_MANIFESTS = ['pyproject.toml', 'requirements.txt', 'uv.lock'];
58
+ /** Config files the `agentcore` CLIs (npm + Python starter toolkit) write. */
59
+ const CONFIG_FILE_SIGNALS = ['.bedrock_agentcore.yaml', 'agentcore/agentcore.json', 'aws-targets.json'];
60
+ async function hasAnyConfigFile(workspaceRoot) {
61
+ for (const rel of CONFIG_FILE_SIGNALS) {
62
+ try {
63
+ await access(join(workspaceRoot, rel));
64
+ return true;
65
+ }
66
+ catch {
67
+ /* not here */
68
+ }
69
+ }
70
+ return false;
71
+ }
72
+ async function hasPythonManifestSignal(workspaceRoot) {
73
+ for (const manifest of PYTHON_MANIFESTS) {
74
+ try {
75
+ const content = (await readFile(join(workspaceRoot, manifest), 'utf-8')).toLowerCase();
76
+ if (content.includes('bedrock-agentcore') || content.includes('bedrock_agentcore'))
77
+ return true;
78
+ }
79
+ catch {
80
+ /* manifest not present */
81
+ }
82
+ }
83
+ return false;
84
+ }
85
+ async function hasNodeManifestSignal(workspaceRoot) {
86
+ try {
87
+ const raw = await readFile(join(workspaceRoot, 'package.json'), 'utf-8');
88
+ const manifest = JSON.parse(raw);
89
+ const deps = { ...manifest.peerDependencies, ...manifest.devDependencies, ...manifest.dependencies };
90
+ return 'bedrock-agentcore' in deps || '@aws/agentcore' in deps;
91
+ }
92
+ catch {
93
+ return false; // no package.json, or unparseable
94
+ }
95
+ }
96
+ export const agentcoreAdapter = {
97
+ type: HarnessType.AGENTCORE_RUNTIME,
98
+ // No config file of its own — see module doc. The proxy env vars a
99
+ // customer's deployed agent needs are already written by whichever inner
100
+ // framework's own adapter (strands.ts, langgraph.ts, ...) detects.
101
+ configFileName: '',
102
+ async detect(workspaceRoot) {
103
+ if (await hasAnyConfigFile(workspaceRoot))
104
+ return true;
105
+ if (await hasPythonManifestSignal(workspaceRoot))
106
+ return true;
107
+ return hasNodeManifestSignal(workspaceRoot);
108
+ },
109
+ // AgentCore Runtime introduces no config format of its own to gate — see
110
+ // module doc. Nothing to write; whichever inner framework's own adapter is
111
+ // present (if any) is what writes real governance content.
112
+ async writeConfig(_workspaceRoot, _sops, _proxyUrl) {
113
+ return null;
114
+ },
115
+ async readCurrentHash(_workspaceRoot) {
116
+ return null;
117
+ },
118
+ };
119
+ //# sourceMappingURL=agentcore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentcore.js","sourceRoot":"","sources":["../../src/harness/agentcore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAEH,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAInD,kEAAkE;AAClE,MAAM,gBAAgB,GAAG,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,SAAS,CAAU,CAAA;AAEnF,8EAA8E;AAC9E,MAAM,mBAAmB,GAAG,CAAC,yBAAyB,EAAE,0BAA0B,EAAE,kBAAkB,CAAU,CAAA;AAEhH,KAAK,UAAU,gBAAgB,CAAC,aAAqB;IACnD,KAAK,MAAM,GAAG,IAAI,mBAAmB,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAA;YACtC,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,MAAM,CAAC;YACP,cAAc;QAChB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,aAAqB;IAC1D,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;YACtF,IAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBAAE,OAAO,IAAI,CAAA;QACjG,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAQD,KAAK,UAAU,qBAAqB,CAAC,aAAqB;IACxD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAA;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAA;QACnD,MAAM,IAAI,GAAG,EAAE,GAAG,QAAQ,CAAC,gBAAgB,EAAE,GAAG,QAAQ,CAAC,eAAe,EAAE,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAA;QACpG,OAAO,mBAAmB,IAAI,IAAI,IAAI,gBAAgB,IAAI,IAAI,CAAA;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA,CAAC,kCAAkC;IACjD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAoB;IAC/C,IAAI,EAAE,WAAW,CAAC,iBAAiB;IACnC,mEAAmE;IACnE,yEAAyE;IACzE,mEAAmE;IACnE,cAAc,EAAE,EAAE;IAElB,KAAK,CAAC,MAAM,CAAC,aAAqB;QAChC,IAAI,MAAM,gBAAgB,CAAC,aAAa,CAAC;YAAE,OAAO,IAAI,CAAA;QACtD,IAAI,MAAM,uBAAuB,CAAC,aAAa,CAAC;YAAE,OAAO,IAAI,CAAA;QAC7D,OAAO,qBAAqB,CAAC,aAAa,CAAC,CAAA;IAC7C,CAAC;IAED,yEAAyE;IACzE,2EAA2E;IAC3E,2DAA2D;IAC3D,KAAK,CAAC,WAAW,CAAC,cAAsB,EAAE,KAAqB,EAAE,SAAiB;QAChF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,cAAsB;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;CACF,CAAA"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * agenticOrchestrator.ts — DoorDash "Agentic Orchestrator" adapter (binary
3
+ * `agentico`, Go, Apache-2.0, `doordash-oss/agentic-orchestrator`).
4
+ *
5
+ * Agentic Orchestrator is NOT itself an AI agent — it is a desktop app +
6
+ * CLI that turns a feature prompt into a multi-phase workflow (research,
7
+ * planning, implementation, review, PR publish), delegating the actual
8
+ * model-driving work to ALREADY-INSTALLED CLI backends: Claude Code, Codex,
9
+ * and OpenCode (confirmed via `agentico server --help`'s `--providers`
10
+ * flag: "Available: claude, codex, opencode"). Each feature runs in its own
11
+ * `git worktree` under `~/.agentic-orchestrator/worktrees/` (confirmed via
12
+ * the project's own README), the same "one workflow, one worktree" shape
13
+ * Xirp uses — so the sync daemon's existing worktree propagation
14
+ * (`services/sync-daemon/src/lib/gitWorktrees.ts`) already covers these
15
+ * worktrees too, with no changes needed: `git worktree list --porcelain`
16
+ * enumerates every worktree of a watched repo regardless of where under the
17
+ * filesystem it lives.
18
+ *
19
+ * Unlike Xirp, this project's facts were LIVE-VERIFIED against the real
20
+ * released artifact, not just its README: the actual `agentico` binary
21
+ * (darwin_arm64, v0.152.0) was downloaded from a GitHub release and run
22
+ * directly (`agentico --version`, `agentico --help`, `agentico server
23
+ * --help`) during this integration's research. `--help`'s documented
24
+ * defaults for `--config` (`~/.agentic-orchestrator/config.yaml`) and
25
+ * `--state-dir` (`~/.agentic-orchestrator/features`) matched the README
26
+ * exactly, with no env-var override for either path documented anywhere in
27
+ * the binary's own help text (unlike Xirp's guessed `$XIRP_HOME`).
28
+ *
29
+ * `writeConfig` is a no-op for the same reason as Xirp's: this integration
30
+ * introduces no config format of its own to gate. `config.yaml`'s
31
+ * `defaults.models.*` keys select WHICH model each phase uses, not how that
32
+ * phase's chosen backend reaches its LLM provider — that routing is each
33
+ * wrapped backend's own concern (Claude Code's `.claude/settings.json` +
34
+ * env vars, Codex's `~/.codex/config.toml`, OpenCode's own config), exactly
35
+ * as it already is when those backends run standalone.
36
+ *
37
+ * All three wrapped backends have adapters of their own (`claudeCode.ts`,
38
+ * `codex.ts`, `opencode.ts` — the last since TD-397 closed on 2026-09-23),
39
+ * so a feature run against any `--providers` value is governed by that
40
+ * backend's gate inside the worktree. This adapter only detects that
41
+ * Agentic Orchestrator itself is present.
42
+ *
43
+ * See `services/sync-daemon/__tests__/harness/gateRegistry.ts`'s NO_GATE
44
+ * row for `agentic-orchestrator` for the full governance rationale, and
45
+ * `apps/docs/integrations/agentic-orchestrator.md` for user-facing docs.
46
+ *
47
+ * HLD §3.14 — Harness Onboarding Matrix
48
+ * @module
49
+ */
50
+ import type { IHarnessAdapter } from './types.js';
51
+ export declare const agenticOrchestratorAdapter: IHarnessAdapter;
52
+ //# sourceMappingURL=agenticOrchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agenticOrchestrator.d.ts","sourceRoot":"","sources":["../../src/harness/agenticOrchestrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAQH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAQjD,eAAO,MAAM,0BAA0B,EAAE,eAyDxC,CAAA"}
@@ -0,0 +1,115 @@
1
+ /**
2
+ * agenticOrchestrator.ts — DoorDash "Agentic Orchestrator" adapter (binary
3
+ * `agentico`, Go, Apache-2.0, `doordash-oss/agentic-orchestrator`).
4
+ *
5
+ * Agentic Orchestrator is NOT itself an AI agent — it is a desktop app +
6
+ * CLI that turns a feature prompt into a multi-phase workflow (research,
7
+ * planning, implementation, review, PR publish), delegating the actual
8
+ * model-driving work to ALREADY-INSTALLED CLI backends: Claude Code, Codex,
9
+ * and OpenCode (confirmed via `agentico server --help`'s `--providers`
10
+ * flag: "Available: claude, codex, opencode"). Each feature runs in its own
11
+ * `git worktree` under `~/.agentic-orchestrator/worktrees/` (confirmed via
12
+ * the project's own README), the same "one workflow, one worktree" shape
13
+ * Xirp uses — so the sync daemon's existing worktree propagation
14
+ * (`services/sync-daemon/src/lib/gitWorktrees.ts`) already covers these
15
+ * worktrees too, with no changes needed: `git worktree list --porcelain`
16
+ * enumerates every worktree of a watched repo regardless of where under the
17
+ * filesystem it lives.
18
+ *
19
+ * Unlike Xirp, this project's facts were LIVE-VERIFIED against the real
20
+ * released artifact, not just its README: the actual `agentico` binary
21
+ * (darwin_arm64, v0.152.0) was downloaded from a GitHub release and run
22
+ * directly (`agentico --version`, `agentico --help`, `agentico server
23
+ * --help`) during this integration's research. `--help`'s documented
24
+ * defaults for `--config` (`~/.agentic-orchestrator/config.yaml`) and
25
+ * `--state-dir` (`~/.agentic-orchestrator/features`) matched the README
26
+ * exactly, with no env-var override for either path documented anywhere in
27
+ * the binary's own help text (unlike Xirp's guessed `$XIRP_HOME`).
28
+ *
29
+ * `writeConfig` is a no-op for the same reason as Xirp's: this integration
30
+ * introduces no config format of its own to gate. `config.yaml`'s
31
+ * `defaults.models.*` keys select WHICH model each phase uses, not how that
32
+ * phase's chosen backend reaches its LLM provider — that routing is each
33
+ * wrapped backend's own concern (Claude Code's `.claude/settings.json` +
34
+ * env vars, Codex's `~/.codex/config.toml`, OpenCode's own config), exactly
35
+ * as it already is when those backends run standalone.
36
+ *
37
+ * All three wrapped backends have adapters of their own (`claudeCode.ts`,
38
+ * `codex.ts`, `opencode.ts` — the last since TD-397 closed on 2026-09-23),
39
+ * so a feature run against any `--providers` value is governed by that
40
+ * backend's gate inside the worktree. This adapter only detects that
41
+ * Agentic Orchestrator itself is present.
42
+ *
43
+ * See `services/sync-daemon/__tests__/harness/gateRegistry.ts`'s NO_GATE
44
+ * row for `agentic-orchestrator` for the full governance rationale, and
45
+ * `apps/docs/integrations/agentic-orchestrator.md` for user-facing docs.
46
+ *
47
+ * HLD §3.14 — Harness Onboarding Matrix
48
+ * @module
49
+ */
50
+ import { access } from 'node:fs/promises';
51
+ import { accessSync } from 'node:fs';
52
+ import { join } from 'node:path';
53
+ import { homedir } from 'node:os';
54
+ import { HarnessType } from '@intutic/shared-types';
55
+ /** Confirmed default (via `agentico server --help`) — not a guess. */
56
+ const AGENTIC_ORCHESTRATOR_HOME_FRAGMENT = '.agentic-orchestrator';
57
+ /** Confirmed default install path for the macOS desktop app (README's
58
+ * `xattr -dr com.apple.quarantine /Applications/Agentico.app` note). */
59
+ const AGENTIC_ORCHESTRATOR_APP_PATH = '/Applications/Agentico.app';
60
+ export const agenticOrchestratorAdapter = {
61
+ type: HarnessType.AGENTIC_ORCHESTRATOR,
62
+ // No config file of its own — see module doc. Matches xirp.ts's/goose.ts's
63
+ // convention of an empty HARNESS_CONFIG_FILES entry for a harness whose
64
+ // governance-relevant writes are not a single named workspace-relative
65
+ // file (in this case: no writes of its own at all, same as Xirp).
66
+ configFileName: '',
67
+ async detect(_workspaceRoot) {
68
+ // 1. `~/.agentic-orchestrator` — confirmed default home directory (holds
69
+ // config.yaml, the features/ state dir, and worktrees/). Cross-
70
+ // platform: unlike xirp.ts, no `process.platform !== 'darwin'` guard
71
+ // here, since Agentic Orchestrator ships for both macOS and Linux
72
+ // (confirmed via the project's own release artifacts: darwin/linux,
73
+ // amd64/arm64).
74
+ try {
75
+ await access(join(homedir(), AGENTIC_ORCHESTRATOR_HOME_FRAGMENT));
76
+ return true;
77
+ }
78
+ catch { /* fall through */ }
79
+ // 2. `agentico` on PATH — the same PATH-scan convention dsh.ts/grok.ts
80
+ // use for CLI-distributed binaries (Homebrew, a prebuilt release
81
+ // tarball extracted onto PATH, or `go install`).
82
+ const pathDirs = (process.env.PATH ?? '').split(process.platform === 'win32' ? ';' : ':');
83
+ for (const dir of pathDirs) {
84
+ try {
85
+ accessSync(join(dir, 'agentico'));
86
+ return true;
87
+ }
88
+ catch { /* not here */ }
89
+ }
90
+ // 3. `Agentico.app` installed in /Applications — the desktop app, macOS
91
+ // only. Confirmed path (see module doc); guarded to darwin only
92
+ // since this specific check is platform-specific even though the
93
+ // harness as a whole is not.
94
+ if (process.platform === 'darwin') {
95
+ try {
96
+ await access(AGENTIC_ORCHESTRATOR_APP_PATH);
97
+ return true;
98
+ }
99
+ catch { /* fall through */ }
100
+ }
101
+ return false;
102
+ },
103
+ // Agentic Orchestrator introduces no config format of its own — see
104
+ // module doc. Nothing to write; each wrapped backend's own adapter
105
+ // (claudeCode.ts / codex.ts / opencode.ts) is what writes real governance
106
+ // content, once per worktree Agentic Orchestrator creates (the sync
107
+ // daemon's worktree propagation, not this adapter).
108
+ async writeConfig(_workspaceRoot, _sops, _proxyUrl) {
109
+ return null;
110
+ },
111
+ async readCurrentHash(_workspaceRoot) {
112
+ return null;
113
+ },
114
+ };
115
+ //# sourceMappingURL=agenticOrchestrator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agenticOrchestrator.js","sourceRoot":"","sources":["../../src/harness/agenticOrchestrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAInD,sEAAsE;AACtE,MAAM,kCAAkC,GAAG,uBAAuB,CAAA;AAClE;yEACyE;AACzE,MAAM,6BAA6B,GAAG,4BAA4B,CAAA;AAElE,MAAM,CAAC,MAAM,0BAA0B,GAAoB;IACzD,IAAI,EAAE,WAAW,CAAC,oBAAoB;IACtC,2EAA2E;IAC3E,wEAAwE;IACxE,uEAAuE;IACvE,kEAAkE;IAClE,cAAc,EAAE,EAAE;IAElB,KAAK,CAAC,MAAM,CAAC,cAAsB;QACjC,yEAAyE;QACzE,mEAAmE;QACnE,wEAAwE;QACxE,qEAAqE;QACrE,uEAAuE;QACvE,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,kCAAkC,CAAC,CAAC,CAAA;YACjE,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAE9B,uEAAuE;QACvE,oEAAoE;QACpE,oDAAoD;QACpD,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACzF,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAA;gBACjC,OAAO,IAAI,CAAA;YACb,CAAC;YAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;QAC5B,CAAC;QAED,wEAAwE;QACxE,mEAAmE;QACnE,oEAAoE;QACpE,gCAAgC;QAChC,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAA;gBAC3C,OAAO,IAAI,CAAA;YACb,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAED,oEAAoE;IACpE,mEAAmE;IACnE,0EAA0E;IAC1E,oEAAoE;IACpE,oDAAoD;IACpD,KAAK,CAAC,WAAW,CAAC,cAAsB,EAAE,KAAqB,EAAE,SAAiB;QAChF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,cAAsB;QAC1C,OAAO,IAAI,CAAA;IACb,CAAC;CACF,CAAA"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * aiSdkHarness.ts — Vercel `@ai-sdk/harness` adapter (env-file config,
3
+ * SDK-side gate).
4
+ *
5
+ * Same shape as mastra.ts/vercelAiSdk.ts (see jsSdkGatedAdapter.ts), for
6
+ * Vercel's sandboxed coding-agent runtime (`HarnessAgent`): detected via
7
+ * `@ai-sdk/harness` itself, any `@ai-sdk/harness-*` runtime adapter
8
+ * (harness-claude-code, harness-grok-build, ...), or any `@ai-sdk/sandbox-*`
9
+ * provider in `package.json` — each family independently signals the
10
+ * framework, hence `requiresAnyPrefix` rather than a single required package.
11
+ *
12
+ * TWO DOCUMENTED LIMITATIONS carried into the generated `.env.intutic`
13
+ * (both confirmed against `@ai-sdk/harness@1.0.75`'s shipped types — see
14
+ * `@intutic/gate/harness`'s module doc for the full record):
15
+ *
16
+ * 1. Tool execution is SERVER-SIDE, in Vercel Sandbox microVMs — the
17
+ * local Intutic proxy never sees sandbox egress, so the written
18
+ * base-URL vars govern only LLM calls the CALLER's own process makes.
19
+ * Egress governance for the sandbox itself is the sandbox's own
20
+ * network policy (coarse, host-level), recommended via
21
+ * `recommendedHarnessSettings()`.
22
+ * 2. Built-in sandbox tools (read/write/edit/bash/...) are governed only
23
+ * by `permissionMode`, which DEFAULTS to `'allow-all'` — the gate can
24
+ * only reach custom host-executed tools, via the approval flow.
25
+ *
26
+ * HLD §3.14 — Harness Onboarding Matrix
27
+ * @module
28
+ */
29
+ export declare const aiSdkHarnessAdapter: import("./types.js").IHarnessAdapter;
30
+ //# sourceMappingURL=aiSdkHarness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiSdkHarness.d.ts","sourceRoot":"","sources":["../../src/harness/aiSdkHarness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAKH,eAAO,MAAM,mBAAmB,sCAqB9B,CAAA"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * aiSdkHarness.ts — Vercel `@ai-sdk/harness` adapter (env-file config,
3
+ * SDK-side gate).
4
+ *
5
+ * Same shape as mastra.ts/vercelAiSdk.ts (see jsSdkGatedAdapter.ts), for
6
+ * Vercel's sandboxed coding-agent runtime (`HarnessAgent`): detected via
7
+ * `@ai-sdk/harness` itself, any `@ai-sdk/harness-*` runtime adapter
8
+ * (harness-claude-code, harness-grok-build, ...), or any `@ai-sdk/sandbox-*`
9
+ * provider in `package.json` — each family independently signals the
10
+ * framework, hence `requiresAnyPrefix` rather than a single required package.
11
+ *
12
+ * TWO DOCUMENTED LIMITATIONS carried into the generated `.env.intutic`
13
+ * (both confirmed against `@ai-sdk/harness@1.0.75`'s shipped types — see
14
+ * `@intutic/gate/harness`'s module doc for the full record):
15
+ *
16
+ * 1. Tool execution is SERVER-SIDE, in Vercel Sandbox microVMs — the
17
+ * local Intutic proxy never sees sandbox egress, so the written
18
+ * base-URL vars govern only LLM calls the CALLER's own process makes.
19
+ * Egress governance for the sandbox itself is the sandbox's own
20
+ * network policy (coarse, host-level), recommended via
21
+ * `recommendedHarnessSettings()`.
22
+ * 2. Built-in sandbox tools (read/write/edit/bash/...) are governed only
23
+ * by `permissionMode`, which DEFAULTS to `'allow-all'` — the gate can
24
+ * only reach custom host-executed tools, via the approval flow.
25
+ *
26
+ * HLD §3.14 — Harness Onboarding Matrix
27
+ * @module
28
+ */
29
+ import { HarnessType } from '@intutic/shared-types';
30
+ import { makeJsSdkGatedAdapter } from './jsSdkGatedAdapter.js';
31
+ export const aiSdkHarnessAdapter = makeJsSdkGatedAdapter({
32
+ type: HarnessType.AI_SDK_HARNESS,
33
+ label: 'AI SDK Harness',
34
+ requires: [],
35
+ requiresAnyPrefix: ['@ai-sdk/harness', '@ai-sdk/sandbox-'],
36
+ npmInstall: '@intutic/gate',
37
+ envPreamble: [
38
+ 'These env vars govern LLM egress from THIS process only. AI SDK Harness',
39
+ 'agents execute their tools server-side in Vercel Sandbox microVMs — that',
40
+ 'traffic never crosses this proxy, and no config or hook file can gate the',
41
+ 'sandbox from here. The blocking tool gate (custom host-executed tools',
42
+ 'only) ships SDK-side:',
43
+ ],
44
+ importLine: "import { intuticApprovalResponder, intuticStaticApprovals, recommendedHarnessSettings } from '@intutic/gate/harness'",
45
+ usageSummary: "toolApproval: intuticStaticApprovals(tools) routes every custom tool through the approval flow; " +
46
+ 'answer pauses with intuticApprovalResponder(). NOTE: built-in sandbox tools ignore toolApproval ' +
47
+ "entirely — set permissionMode (defaults to 'allow-all') via recommendedHarnessSettings(); sandbox " +
48
+ 'egress never crosses this proxy — set a sandbox networkPolicy.',
49
+ docsSlug: 'ai-sdk-harness',
50
+ });
51
+ //# sourceMappingURL=aiSdkHarness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiSdkHarness.js","sourceRoot":"","sources":["../../src/harness/aiSdkHarness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;IACvD,IAAI,EAAE,WAAW,CAAC,cAAc;IAChC,KAAK,EAAE,gBAAgB;IACvB,QAAQ,EAAE,EAAE;IACZ,iBAAiB,EAAE,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;IAC1D,UAAU,EAAE,eAAe;IAC3B,WAAW,EAAE;QACX,yEAAyE;QACzE,0EAA0E;QAC1E,2EAA2E;QAC3E,uEAAuE;QACvE,uBAAuB;KACxB;IACD,UAAU,EACR,sHAAsH;IACxH,YAAY,EACV,kGAAkG;QAClG,kGAAkG;QAClG,oGAAoG;QACpG,gEAAgE;IAClE,QAAQ,EAAE,gBAAgB;CAC3B,CAAC,CAAA"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * aiSdkWorkflow.ts — Vercel `@ai-sdk/workflow` adapter (env-file config,
3
+ * SDK-side gate).
4
+ *
5
+ * Same shape as mastra.ts/vercelAiSdk.ts (see jsSdkGatedAdapter.ts), for
6
+ * Vercel's durable workflow-agent runtime (`WorkflowAgent`): detected via
7
+ * `@ai-sdk/workflow` in `package.json`. The unscoped `workflow` package
8
+ * (the Workflow DevKit runtime, `workflow`/`wf` CLI) is deliberately NOT a
9
+ * detection trigger on its own: the bare name is far too generic to treat as
10
+ * framework evidence (any package named "workflow" in any stack would
11
+ * false-positive), and the durable runtime without `@ai-sdk/workflow` has no
12
+ * WorkflowAgent — nothing this integration's gate applies to. A workspace
13
+ * with both declares `@ai-sdk/workflow` anyway, which is the trigger.
14
+ *
15
+ * DOCUMENTED SEMANTICS carried into the generated `.env.intutic` (confirmed
16
+ * against `@ai-sdk/workflow@1.0.69` + `workflow@4.8.3` — see
17
+ * `@intutic/gate/workflow`'s module doc for the full record): WorkflowAgent
18
+ * has no agent-level approval option; the veto surface is per-tool
19
+ * `needsApproval`, and a refusal thrown from it must be FatalError-compatible
20
+ * or the durable runtime RETRIES the denial toward max attempts.
21
+ *
22
+ * HLD §3.14 — Harness Onboarding Matrix
23
+ * @module
24
+ */
25
+ export declare const aiSdkWorkflowAdapter: import("./types.js").IHarnessAdapter;
26
+ //# sourceMappingURL=aiSdkWorkflow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiSdkWorkflow.d.ts","sourceRoot":"","sources":["../../src/harness/aiSdkWorkflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAKH,eAAO,MAAM,oBAAoB,sCAY/B,CAAA"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * aiSdkWorkflow.ts — Vercel `@ai-sdk/workflow` adapter (env-file config,
3
+ * SDK-side gate).
4
+ *
5
+ * Same shape as mastra.ts/vercelAiSdk.ts (see jsSdkGatedAdapter.ts), for
6
+ * Vercel's durable workflow-agent runtime (`WorkflowAgent`): detected via
7
+ * `@ai-sdk/workflow` in `package.json`. The unscoped `workflow` package
8
+ * (the Workflow DevKit runtime, `workflow`/`wf` CLI) is deliberately NOT a
9
+ * detection trigger on its own: the bare name is far too generic to treat as
10
+ * framework evidence (any package named "workflow" in any stack would
11
+ * false-positive), and the durable runtime without `@ai-sdk/workflow` has no
12
+ * WorkflowAgent — nothing this integration's gate applies to. A workspace
13
+ * with both declares `@ai-sdk/workflow` anyway, which is the trigger.
14
+ *
15
+ * DOCUMENTED SEMANTICS carried into the generated `.env.intutic` (confirmed
16
+ * against `@ai-sdk/workflow@1.0.69` + `workflow@4.8.3` — see
17
+ * `@intutic/gate/workflow`'s module doc for the full record): WorkflowAgent
18
+ * has no agent-level approval option; the veto surface is per-tool
19
+ * `needsApproval`, and a refusal thrown from it must be FatalError-compatible
20
+ * or the durable runtime RETRIES the denial toward max attempts.
21
+ *
22
+ * HLD §3.14 — Harness Onboarding Matrix
23
+ * @module
24
+ */
25
+ import { HarnessType } from '@intutic/shared-types';
26
+ import { makeJsSdkGatedAdapter } from './jsSdkGatedAdapter.js';
27
+ export const aiSdkWorkflowAdapter = makeJsSdkGatedAdapter({
28
+ type: HarnessType.AI_SDK_WORKFLOW,
29
+ label: 'AI SDK Workflow',
30
+ requires: [{ name: '@ai-sdk/workflow' }],
31
+ npmInstall: '@intutic/gate',
32
+ importLine: "import { intuticNeedsApproval, withIntuticApproval } from '@intutic/gate/workflow'",
33
+ usageSummary: 'new WorkflowAgent({ ..., tools: withIntuticApproval(tools) }) — attaches an async needsApproval ' +
34
+ 'per tool (WorkflowAgent itself has no approval option). BLOCK throws a FatalError-compatible ' +
35
+ 'refusal so the durable runtime aborts instead of retry-looping the denial; ALLOW resolves ' +
36
+ "false (or true with { onAllow: 'human' } to keep the durable human-approval pause).",
37
+ docsSlug: 'ai-sdk-workflow',
38
+ });
39
+ //# sourceMappingURL=aiSdkWorkflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiSdkWorkflow.js","sourceRoot":"","sources":["../../src/harness/aiSdkWorkflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;IACxD,IAAI,EAAE,WAAW,CAAC,eAAe;IACjC,KAAK,EAAE,iBAAiB;IACxB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;IACxC,UAAU,EAAE,eAAe;IAC3B,UAAU,EAAE,oFAAoF;IAChG,YAAY,EACV,kGAAkG;QAClG,+FAA+F;QAC/F,4FAA4F;QAC5F,qFAAqF;IACvF,QAAQ,EAAE,iBAAiB;CAC5B,CAAC,CAAA"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * autogen.ts — AutoGen adapter (env-file config, SDK-side gate).
3
+ *
4
+ * Same shape as langgraph.ts (see sdkGatedAdapter.ts). Detected via any of
5
+ * the `autogen-agentchat` / `autogen-core` / `autogen-ext` packages — any one
6
+ * present is treated as "AutoGen is here".
7
+ *
8
+ * The blocking gate ships SDK-side via
9
+ * `intutic_clawde.gate.adapters.autogen.IntuticInterventionHandler`, an
10
+ * `autogen_core.InterventionHandler.on_send` — verified live against
11
+ * autogen-core==0.7.5 by driving a real `SingleThreadedAgentRuntime` end to
12
+ * end. IMPORTANT, documented in that module's own doc: `on_send` only sees
13
+ * `FunctionCall` messages explicitly routed through
14
+ * `runtime.send_message`/`publish_message` — `AssistantAgent`'s own tool
15
+ * calls never go through the runtime at all, so for `AssistantAgent`-based
16
+ * code the framework-agnostic `@guard`/`guard_tools` helpers (governing the
17
+ * tool objects directly) remain the applicable coverage, same as before this
18
+ * adapter existed (see TD-374).
19
+ *
20
+ * HLD §3.14 — Harness Onboarding Matrix
21
+ * @module
22
+ */
23
+ export declare const autogenAdapter: import("./types.js").IHarnessAdapter;
24
+ //# sourceMappingURL=autogen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autogen.d.ts","sourceRoot":"","sources":["../../src/harness/autogen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAKH,eAAO,MAAM,cAAc,sCAWzB,CAAA"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * autogen.ts — AutoGen adapter (env-file config, SDK-side gate).
3
+ *
4
+ * Same shape as langgraph.ts (see sdkGatedAdapter.ts). Detected via any of
5
+ * the `autogen-agentchat` / `autogen-core` / `autogen-ext` packages — any one
6
+ * present is treated as "AutoGen is here".
7
+ *
8
+ * The blocking gate ships SDK-side via
9
+ * `intutic_clawde.gate.adapters.autogen.IntuticInterventionHandler`, an
10
+ * `autogen_core.InterventionHandler.on_send` — verified live against
11
+ * autogen-core==0.7.5 by driving a real `SingleThreadedAgentRuntime` end to
12
+ * end. IMPORTANT, documented in that module's own doc: `on_send` only sees
13
+ * `FunctionCall` messages explicitly routed through
14
+ * `runtime.send_message`/`publish_message` — `AssistantAgent`'s own tool
15
+ * calls never go through the runtime at all, so for `AssistantAgent`-based
16
+ * code the framework-agnostic `@guard`/`guard_tools` helpers (governing the
17
+ * tool objects directly) remain the applicable coverage, same as before this
18
+ * adapter existed (see TD-374).
19
+ *
20
+ * HLD §3.14 — Harness Onboarding Matrix
21
+ * @module
22
+ */
23
+ import { HarnessType } from '@intutic/shared-types';
24
+ import { makeSdkGatedAdapter } from './sdkGatedAdapter.js';
25
+ export const autogenAdapter = makeSdkGatedAdapter({
26
+ type: HarnessType.AUTOGEN,
27
+ label: 'AutoGen',
28
+ keywords: ['autogen-agentchat', 'autogen-core', 'autogen-ext'],
29
+ pipInstall: 'intutic-clawde[autogen]',
30
+ importLine: 'from intutic_clawde.gate.adapters.autogen import IntuticInterventionHandler',
31
+ usageSummary: 'IntuticInterventionHandler vetoes a runtime-routed FunctionCall via on_send (see TD-374: ' +
32
+ 'invisible to AssistantAgent\'s own tool calls — wrap those tools with @guard/guard_tools ' +
33
+ 'instead).',
34
+ docsSlug: 'autogen',
35
+ });
36
+ //# sourceMappingURL=autogen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autogen.js","sourceRoot":"","sources":["../../src/harness/autogen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,CAAC,MAAM,cAAc,GAAG,mBAAmB,CAAC;IAChD,IAAI,EAAE,WAAW,CAAC,OAAO;IACzB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,CAAC,mBAAmB,EAAE,cAAc,EAAE,aAAa,CAAC;IAC9D,UAAU,EAAE,yBAAyB;IACrC,UAAU,EAAE,6EAA6E;IACzF,YAAY,EACV,2FAA2F;QAC3F,2FAA2F;QAC3F,WAAW;IACb,QAAQ,EAAE,SAAS;CACpB,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/harness/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAY,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,uDAAuD;AACvD,SAAS,WAAW;IAClB,OAAO;QACL,6CAA6C;QAC7C,gDAAgD;QAChD,gBAAgB,MAAM,EAAE,EAAE;QAC1B,EAAE;QACF,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,oBAAoB,CAAC,IAAoB,EAAE,QAAgB;IACzE,MAAM,MAAM,GAAG,WAAW,EAAE,CAAA;IAC5B,MAAM,YAAY,GAAG,sBAAsB,QAAQ,QAAQ,CAAA;IAC3D,MAAM,WAAW,GAAG,IAAI;SACrB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,KAAK,OAAO,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,IAAI,CAAC,aAAa,CAAC,CAAA;IACtB,OAAO,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,IAAI,CAAA;AACnD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAiB,EACjB,cAAsB;IAEtB,OAAO;QACL,IAAI;QACJ,cAAc;QAEd,KAAK,CAAC,MAAM,CAAC,aAAqB;YAChC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAA;gBACjD,OAAO,IAAI,CAAA;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QAED,KAAK,CAAC,WAAW,CAAC,aAAqB,EAAE,IAAoB,EAAE,QAAgB;YAC7E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;YACpD,MAAM,OAAO,GAAG,QAAQ,GAAG,cAAc,CAAA;YACzC,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACpD,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACnD,MAAM,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAC1C,MAAM,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YAC/B,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,eAAe,CAAC,aAAqB;YACzC,IAAI,CAAC;gBACH,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAA;YAC5D,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/harness/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,uDAAuD;AACvD,SAAS,WAAW;IAClB,OAAO;QACL,6CAA6C;QAC7C,gDAAgD;QAChD,gBAAgB,MAAM,EAAE,EAAE;QAC1B,EAAE;QACF,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACd,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,oBAAoB,CAAC,IAAoB,EAAE,QAAgB;IACzE,MAAM,MAAM,GAAG,WAAW,EAAE,CAAA;IAC5B,MAAM,YAAY,GAAG,sBAAsB,QAAQ,QAAQ,CAAA;IAC3D,MAAM,WAAW,GAAG,IAAI;SACrB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,KAAK,OAAO,GAAG,CAAC,OAAO,EAAE,CAAC;SACjD,IAAI,CAAC,aAAa,CAAC,CAAA;IACtB,OAAO,MAAM,GAAG,YAAY,GAAG,WAAW,GAAG,IAAI,CAAA;AACnD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAiB,EACjB,cAAsB;IAEtB,OAAO;QACL,IAAI;QACJ,cAAc;QAEd,KAAK,CAAC,MAAM,CAAC,aAAqB;YAChC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAA;gBACjD,OAAO,IAAI,CAAA;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAA;YACd,CAAC;QACH,CAAC;QAED,KAAK,CAAC,WAAW,CAAC,aAAqB,EAAE,IAAoB,EAAE,QAAgB;YAC7E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;YACpD,MAAM,OAAO,GAAG,QAAQ,GAAG,cAAc,CAAA;YACzC,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YACpD,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACnD,MAAM,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAC1C,MAAM,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YAC/B,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,KAAK,CAAC,eAAe,CAAC,aAAqB;YACzC,IAAI,CAAC;gBACH,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAA;YAC5D,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"continue.d.ts","sourceRoot":"","sources":["../../src/harness/continue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AASjD,eAAO,MAAM,eAAe,EAAE,eAgE7B,CAAA"}
1
+ {"version":3,"file":"continue.d.ts","sourceRoot":"","sources":["../../src/harness/continue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AASjD,eAAO,MAAM,eAAe,EAAE,eAiE7B,CAAA"}
@@ -40,7 +40,8 @@ export const continueAdapter = {
40
40
  },
41
41
  async writeConfig(_workspaceRoot, _sops, proxyUrl) {
42
42
  // Merge apiBase into each model entry in config.yaml
43
- let raw = '';
43
+ // Both branches below assign, so an initialiser here would always be dead.
44
+ let raw;
44
45
  try {
45
46
  raw = await readFile(CONFIG_YAML, 'utf-8');
46
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"continue.js","sourceRoot":"","sources":["../../src/harness/continue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"continue.js","sourceRoot":"","sources":["../../src/harness/continue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * crewai.ts — CrewAI adapter (env-file config, SDK-side gate).
3
+ *
4
+ * Same shape as langgraph.ts (see sdkGatedAdapter.ts). CrewAI tools are
5
+ * plain callables/CrewStructuredTool instances in the agent's own process —
6
+ * no on-disk hook/config file exists to gate a call, so the blocking gate
7
+ * ships SDK-side via `intutic_clawde.gate.adapters.crewai.install()`, which
8
+ * registers a `before_tool_call` hook (CrewAI's own documented interception
9
+ * point — verified live against crewai==1.15.16).
10
+ *
11
+ * HLD §3.14 — Harness Onboarding Matrix
12
+ * @module
13
+ */
14
+ export declare const crewaiAdapter: import("./types.js").IHarnessAdapter;
15
+ //# sourceMappingURL=crewai.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crewai.d.ts","sourceRoot":"","sources":["../../src/harness/crewai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,eAAO,MAAM,aAAa,sCAUxB,CAAA"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * crewai.ts — CrewAI adapter (env-file config, SDK-side gate).
3
+ *
4
+ * Same shape as langgraph.ts (see sdkGatedAdapter.ts). CrewAI tools are
5
+ * plain callables/CrewStructuredTool instances in the agent's own process —
6
+ * no on-disk hook/config file exists to gate a call, so the blocking gate
7
+ * ships SDK-side via `intutic_clawde.gate.adapters.crewai.install()`, which
8
+ * registers a `before_tool_call` hook (CrewAI's own documented interception
9
+ * point — verified live against crewai==1.15.16).
10
+ *
11
+ * HLD §3.14 — Harness Onboarding Matrix
12
+ * @module
13
+ */
14
+ import { HarnessType } from '@intutic/shared-types';
15
+ import { makeSdkGatedAdapter } from './sdkGatedAdapter.js';
16
+ export const crewaiAdapter = makeSdkGatedAdapter({
17
+ type: HarnessType.CREWAI,
18
+ label: 'CrewAI',
19
+ keywords: ['crewai'],
20
+ pipInstall: 'intutic-clawde[crewai]',
21
+ importLine: 'from intutic_clawde.gate.adapters.crewai import install',
22
+ usageSummary: 'install() registers a before_tool_call hook that refuses denied calls before the ' +
23
+ 'tool body runs.',
24
+ docsSlug: 'crewai',
25
+ });
26
+ //# sourceMappingURL=crewai.js.map