@zackbart/connecta 0.34.0 → 0.35.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 (428) hide show
  1. package/CHANGELOG.md +393 -0
  2. package/README.md +62 -105
  3. package/SECURITY.md +3 -2
  4. package/bin/connecta.mjs +41 -16
  5. package/bin/version.mjs +1 -1
  6. package/dist/access-tokens.d.ts +2 -1
  7. package/dist/access-tokens.js +66 -30
  8. package/dist/activity.d.ts +1 -1
  9. package/dist/activity.js +2 -0
  10. package/dist/agent-config.d.ts +23 -0
  11. package/dist/agent-config.js +59 -0
  12. package/dist/agent-description.js +16 -0
  13. package/dist/agent-identity.js +4 -4
  14. package/dist/agent-observation.js +39 -0
  15. package/dist/auth/clerk-sdk/client.d.ts +2 -0
  16. package/dist/auth/clerk-sdk/generated.js +554 -563
  17. package/dist/auth/clerk-transport.js +70 -3
  18. package/dist/auth/clerk.d.ts +13 -0
  19. package/dist/auth/clerk.js +653 -246
  20. package/dist/auth/cloudflare-access.js +46 -42
  21. package/dist/auth/downstream-client-metadata.js +2 -2
  22. package/dist/auth/downstream-oauth.js +2051 -1160
  23. package/dist/auth/downstream-revocation.js +88 -88
  24. package/dist/auth/native-call.js +20 -0
  25. package/dist/auth/native.js +184 -0
  26. package/dist/auth/oauth-start-reset.js +11 -5
  27. package/dist/auth/oauth-token-response.js +121 -102
  28. package/dist/auth/oauth-v2-migration.js +97 -78
  29. package/dist/auth/renewable-grant.js +10 -0
  30. package/dist/auth/static-oauth.js +663 -271
  31. package/dist/auth/vercel-agent.js +266 -0
  32. package/dist/auth-admission.js +204 -0
  33. package/dist/auth-elicitation.js +350 -241
  34. package/dist/authorization-handoff.js +164 -90
  35. package/dist/call-admission-context.js +3 -10
  36. package/dist/call-admission.js +2 -0
  37. package/dist/call-classification.js +9 -0
  38. package/dist/call-recovery.js +32 -13
  39. package/dist/canonical-json.js +8 -0
  40. package/dist/catalog-cache.js +369 -213
  41. package/dist/catalog-service.js +659 -530
  42. package/dist/catalog.js +5 -1
  43. package/dist/concurrency.js +0 -25
  44. package/dist/config-defaults.d.ts +1 -0
  45. package/dist/config-defaults.js +1 -0
  46. package/dist/config-schema.d.ts +3 -1
  47. package/dist/config-schema.js +13 -3
  48. package/dist/config.d.ts +40 -6
  49. package/dist/config.js +40 -26
  50. package/dist/connector-caller.d.ts +4 -0
  51. package/dist/connector-caller.js +17 -4
  52. package/dist/connectors/api-connector.d.ts +15 -7
  53. package/dist/connectors/api-connector.js +147 -57
  54. package/dist/connectors/guarded-fetch.d.ts +51 -17
  55. package/dist/connectors/guarded-fetch.js +215 -121
  56. package/dist/connectors/negotiation-cache.js +20 -10
  57. package/dist/connectors/option-shapes.js +1 -1
  58. package/dist/connectors/remote-mcp.d.ts +12 -30
  59. package/dist/connectors/remote-mcp.js +960 -564
  60. package/dist/d1.js +10 -243
  61. package/dist/derived-context.js +5 -0
  62. package/dist/describe-config.d.ts +5 -1
  63. package/dist/describe-config.js +3 -0
  64. package/dist/downstream-input.js +347 -260
  65. package/dist/errors.d.ts +87 -6
  66. package/dist/errors.js +114 -4
  67. package/dist/execute.js +87 -50
  68. package/dist/executor-admission.js +3 -0
  69. package/dist/executors/quickjs.js +163 -112
  70. package/dist/guarded-transport.js +50 -0
  71. package/dist/guest-runtime.js +1 -1
  72. package/dist/http/client.js +439 -0
  73. package/dist/http/errors.js +558 -0
  74. package/dist/http/fields.js +49 -0
  75. package/dist/http/hatch-paging.js +318 -0
  76. package/dist/http/hatch.js +1279 -0
  77. package/dist/http/json-schema.js +267 -0
  78. package/dist/http/node-transport.js +241 -0
  79. package/dist/http/oauth.js +162 -0
  80. package/dist/http/paging.js +228 -0
  81. package/dist/http/provider.js +221 -0
  82. package/dist/http/safety.js +82 -0
  83. package/dist/http/services.js +79 -0
  84. package/dist/http/tools.js +383 -0
  85. package/dist/http/vendor-index.js +138 -0
  86. package/dist/http/vendor.js +448 -0
  87. package/dist/http/write-request.js +66 -0
  88. package/dist/http-policy.d.ts +11 -0
  89. package/dist/http-policy.js +45 -0
  90. package/dist/inbound-credential.js +1 -1
  91. package/dist/index.d.ts +2 -2
  92. package/dist/index.js +4 -0
  93. package/dist/invocation-auth.js +30 -19
  94. package/dist/invocation.js +221 -87
  95. package/dist/mcp-result.js +0 -4
  96. package/dist/membership.d.ts +4 -0
  97. package/dist/meta-output.js +1 -1
  98. package/dist/meta-tools.js +534 -408
  99. package/dist/native-recovery.js +52 -0
  100. package/dist/native-tools.js +382 -0
  101. package/dist/node.d.ts +4 -3
  102. package/dist/node.js +45 -8
  103. package/dist/oauth-handoff.js +177 -104
  104. package/dist/oauth-partition.js +6 -20
  105. package/dist/oauth-sealing.js +6 -7
  106. package/dist/operation-vocabulary.js +101 -0
  107. package/dist/operator-record.d.ts +2 -2
  108. package/dist/operator-record.js +17 -4
  109. package/dist/operator-ui/agents.d.ts +5 -4
  110. package/dist/operator-ui/agents.js +17 -7
  111. package/dist/operator-ui/config-summary.js +8 -4
  112. package/dist/operator-ui/connection-map.js +9 -6
  113. package/dist/operator-ui/contract.d.ts +7 -3
  114. package/dist/operator-ui/endpoints.js +5 -14
  115. package/dist/operator-ui/fix-prompts.d.ts +1 -1
  116. package/dist/operator-ui/fix-prompts.js +0 -8
  117. package/dist/operator-ui/generated.js +3 -3
  118. package/dist/operator-ui/health.js +52 -0
  119. package/dist/operator-ui/model.d.ts +2 -3
  120. package/dist/operator-ui/overview.js +11 -19
  121. package/dist/operator-ui/setup-commands.js +0 -4
  122. package/dist/operator-ui/view.d.ts +5 -29
  123. package/dist/operator-ui/view.js +3 -59
  124. package/dist/program-writes.js +47 -26
  125. package/dist/provider-call-facts.d.ts +115 -0
  126. package/dist/provider-call-facts.js +182 -0
  127. package/dist/provider-call.d.ts +112 -0
  128. package/dist/provider-call.js +271 -0
  129. package/dist/provider.d.ts +71 -32
  130. package/dist/provider.js +134 -40
  131. package/dist/providers/_shared/google/hatch.js +91 -0
  132. package/dist/providers/_shared/google/kit.js +537 -0
  133. package/dist/providers/_shared/google/result-size.js +15 -2
  134. package/dist/providers/_shared/google/service-account.d.ts +2 -1
  135. package/dist/providers/_shared/google/service-account.js +8 -4
  136. package/dist/providers/_shared/google/workspace.d.ts +8 -209
  137. package/dist/providers/_shared/google/workspace.js +7 -426
  138. package/dist/providers/_shared/rest/compact-index.js +86 -0
  139. package/dist/providers/_shared/rest/dispatch.js +3 -23
  140. package/dist/providers/_shared/rest/kit.js +546 -0
  141. package/dist/providers/_shared/rest/operation-index.js +230 -14
  142. package/dist/providers/_shared/rest/response-media.js +11 -0
  143. package/dist/providers/_shared/rest/tools.js +101 -78
  144. package/dist/providers/_shared/rest/value-safety.js +353 -195
  145. package/dist/providers/_shared/sensitive-fields.js +27 -0
  146. package/dist/providers/breeze/api.js +584 -0
  147. package/dist/providers/breeze/index.d.ts +3 -3
  148. package/dist/providers/breeze/index.js +67 -1420
  149. package/dist/providers/breeze/openapi.generated.js +60 -0
  150. package/dist/providers/breeze/skill.generated.js +2 -6
  151. package/dist/providers/breeze/tools.js +696 -0
  152. package/dist/providers/ccb/api.js +496 -0
  153. package/dist/providers/ccb/index.d.ts +17 -37
  154. package/dist/providers/ccb/index.js +77 -1702
  155. package/dist/providers/ccb/lib/constants.d.ts +34 -0
  156. package/dist/providers/ccb/lib/constants.js +74 -0
  157. package/dist/providers/ccb/lib/guide.js +9 -0
  158. package/dist/providers/ccb/lib/verdicts.js +387 -0
  159. package/dist/providers/ccb/openapi.generated.js +397 -0
  160. package/dist/providers/ccb/safety.js +295 -0
  161. package/dist/providers/ccb/skill.generated.js +2 -6
  162. package/dist/providers/ccb/tools.js +853 -0
  163. package/dist/providers/cloudflare/api.js +1066 -0
  164. package/dist/providers/cloudflare/index.d.ts +7 -22
  165. package/dist/providers/cloudflare/index.js +80 -194
  166. package/dist/providers/cloudflare/lib/config.d.ts +16 -0
  167. package/dist/providers/cloudflare/lib/config.js +2 -0
  168. package/dist/providers/cloudflare/lib/discovery.js +29 -0
  169. package/dist/providers/cloudflare/{graphql.js → lib/graphql.js} +1 -1
  170. package/dist/providers/cloudflare/lib/hatch.js +103 -0
  171. package/dist/providers/cloudflare/lib/path-bounds.js +28 -0
  172. package/dist/providers/cloudflare/lib/response-media.js +75 -0
  173. package/dist/providers/cloudflare/openapi.generated.js +3299 -3208
  174. package/dist/providers/cloudflare/{value-safety.js → safety.js} +538 -18
  175. package/dist/providers/cloudflare/skill.generated.js +2 -10
  176. package/dist/providers/cloudflare/tools.js +360 -0
  177. package/dist/providers/docs/api.js +51 -0
  178. package/dist/providers/docs/index.d.ts +1 -12
  179. package/dist/providers/docs/index.js +53 -1165
  180. package/dist/providers/docs/lib/constants.d.ts +18 -0
  181. package/dist/providers/docs/lib/constants.js +18 -0
  182. package/dist/providers/docs/lib/discovery.js +26 -0
  183. package/dist/providers/docs/lib/requests.js +48 -0
  184. package/dist/providers/docs/lib/schemas.js +168 -0
  185. package/dist/providers/docs/openapi.generated.js +16 -0
  186. package/dist/providers/docs/safety.js +54 -0
  187. package/dist/providers/docs/skill.generated.js +2 -6
  188. package/dist/providers/docs/tools.js +802 -0
  189. package/dist/providers/drive/api.js +177 -0
  190. package/dist/providers/drive/index.d.ts +1 -12
  191. package/dist/providers/drive/index.js +38 -1448
  192. package/dist/providers/drive/lib/constants.d.ts +6 -0
  193. package/dist/providers/drive/lib/constants.js +6 -0
  194. package/dist/providers/drive/lib/contracts.js +532 -0
  195. package/dist/providers/drive/lib/hatch.js +197 -0
  196. package/dist/providers/drive/openapi.generated.js +77 -0
  197. package/dist/providers/drive/safety.js +90 -0
  198. package/dist/providers/drive/skill.generated.js +2 -6
  199. package/dist/providers/drive/tools.js +1290 -0
  200. package/dist/providers/forms/api.js +71 -0
  201. package/dist/providers/forms/index.d.ts +1 -12
  202. package/dist/providers/forms/index.js +49 -1145
  203. package/dist/providers/forms/lib/constants.d.ts +14 -0
  204. package/dist/providers/forms/lib/constants.js +19 -0
  205. package/dist/providers/forms/lib/hatch.js +72 -0
  206. package/dist/providers/forms/openapi.generated.js +23 -0
  207. package/dist/providers/forms/safety.js +34 -0
  208. package/dist/providers/forms/skill.generated.js +2 -8
  209. package/dist/providers/forms/tools.js +1024 -0
  210. package/dist/providers/github/api.js +150 -0
  211. package/dist/providers/github/index.d.ts +4 -5
  212. package/dist/providers/github/index.js +30 -87
  213. package/dist/providers/github/{auth.d.ts → lib/auth.d.ts} +5 -3
  214. package/dist/providers/github/{auth.js → lib/auth.js} +40 -43
  215. package/dist/providers/github/lib/discovery.js +132 -0
  216. package/dist/providers/github/lib/operations.js +58 -0
  217. package/dist/providers/github/{scope.d.ts → lib/scope.d.ts} +2 -0
  218. package/dist/providers/github/{scope.js → lib/scope.js} +25 -1
  219. package/dist/providers/github/openapi.generated.js +1216 -0
  220. package/dist/providers/github/safety.js +216 -0
  221. package/dist/providers/github/skill.generated.js +2 -5
  222. package/dist/providers/github/tools.js +506 -0
  223. package/dist/providers/gmail/api.js +114 -0
  224. package/dist/providers/gmail/index.d.ts +1 -12
  225. package/dist/providers/gmail/index.js +73 -1621
  226. package/dist/providers/gmail/lib/constants.d.ts +13 -0
  227. package/dist/providers/gmail/lib/constants.js +16 -0
  228. package/dist/providers/gmail/lib/index.js +173 -0
  229. package/dist/providers/gmail/lib/schemas.js +176 -0
  230. package/dist/providers/gmail/lib/threading.js +120 -0
  231. package/dist/providers/gmail/openapi.generated.js +92 -0
  232. package/dist/providers/gmail/safety.js +21 -0
  233. package/dist/providers/gmail/skill.generated.js +2 -6
  234. package/dist/providers/gmail/tools.js +1435 -0
  235. package/dist/providers/overflow/api.js +1008 -0
  236. package/dist/providers/overflow/index.d.ts +3 -17
  237. package/dist/providers/overflow/index.js +60 -1488
  238. package/dist/providers/overflow/skill.generated.js +2 -5
  239. package/dist/providers/overflow/tools.js +873 -0
  240. package/dist/providers/planning-center/api.js +467 -0
  241. package/dist/providers/planning-center/index.d.ts +6 -35
  242. package/dist/providers/planning-center/index.js +69 -2445
  243. package/dist/providers/planning-center/lib/constants.d.ts +58 -0
  244. package/dist/providers/planning-center/lib/constants.js +83 -0
  245. package/dist/providers/planning-center/lib/discovery.js +40 -0
  246. package/dist/providers/planning-center/lib/guide.js +39 -0
  247. package/dist/providers/planning-center/lib/json-api.js +83 -0
  248. package/dist/providers/planning-center/lib/verdicts.js +1758 -0
  249. package/dist/providers/planning-center/openapi.generated.js +1764 -0
  250. package/dist/providers/planning-center/safety.js +188 -0
  251. package/dist/providers/planning-center/skill.generated.js +2 -27
  252. package/dist/providers/planning-center/tools.js +1010 -0
  253. package/dist/providers/sheets/api.js +133 -0
  254. package/dist/providers/sheets/index.d.ts +4 -16
  255. package/dist/providers/sheets/index.js +61 -1172
  256. package/dist/providers/sheets/lib/constants.d.ts +14 -0
  257. package/dist/providers/sheets/lib/constants.js +14 -0
  258. package/dist/providers/sheets/lib/hatch.js +163 -0
  259. package/dist/providers/sheets/lib/requests.js +105 -0
  260. package/dist/providers/sheets/lib/schemas.js +138 -0
  261. package/dist/providers/sheets/openapi.generated.js +30 -0
  262. package/dist/providers/sheets/safety.js +27 -0
  263. package/dist/providers/sheets/skill.generated.js +2 -7
  264. package/dist/providers/sheets/tools.js +734 -0
  265. package/dist/providers/slides/api.js +147 -0
  266. package/dist/providers/slides/index.d.ts +2 -10
  267. package/dist/providers/slides/index.js +48 -2555
  268. package/dist/providers/slides/lib/constants.d.ts +11 -0
  269. package/dist/providers/slides/lib/constants.js +11 -0
  270. package/dist/providers/slides/lib/requests.js +60 -0
  271. package/dist/providers/slides/lib/schemas.js +565 -0
  272. package/dist/providers/slides/openapi.generated.js +18 -0
  273. package/dist/providers/slides/skill.generated.js +2 -6
  274. package/dist/providers/slides/tools.js +1968 -0
  275. package/dist/providers/stripe/api.js +401 -0
  276. package/dist/providers/stripe/index.d.ts +7 -27
  277. package/dist/providers/stripe/index.js +75 -191
  278. package/dist/providers/stripe/lib/config.d.ts +4 -0
  279. package/dist/providers/stripe/lib/config.js +2 -0
  280. package/dist/providers/stripe/openapi.generated.js +4 -3
  281. package/dist/providers/stripe/{value-safety.js → safety.js} +5 -5
  282. package/dist/providers/stripe/skill.generated.js +2 -10
  283. package/dist/providers/stripe/tools.js +77 -0
  284. package/dist/providers/tithely/api.js +531 -0
  285. package/dist/providers/tithely/index.d.ts +19 -0
  286. package/dist/providers/tithely/index.js +86 -965
  287. package/dist/providers/tithely/skill.generated.js +2 -5
  288. package/dist/providers/tithely/tools.js +426 -0
  289. package/dist/providers/vercel/api.js +551 -0
  290. package/dist/providers/vercel/index.d.ts +11 -25
  291. package/dist/providers/vercel/index.js +67 -261
  292. package/dist/providers/vercel/lib/config.d.ts +2 -0
  293. package/dist/providers/vercel/lib/config.js +2 -0
  294. package/dist/providers/vercel/lib/index.js +117 -0
  295. package/dist/providers/vercel/lib/logs.js +100 -0
  296. package/dist/providers/vercel/lib/pin.js +270 -0
  297. package/dist/providers/vercel/openapi.generated.js +398 -376
  298. package/dist/providers/vercel/{value-safety.js → safety.js} +261 -42
  299. package/dist/providers/vercel/skill.generated.js +2 -7
  300. package/dist/providers/vercel/tools.js +642 -0
  301. package/dist/redaction-identity.js +47 -0
  302. package/dist/redaction-marker.js +125 -0
  303. package/dist/registry.d.ts +30 -28
  304. package/dist/registry.js +446 -413
  305. package/dist/routes/access-tokens.js +1 -1
  306. package/dist/routes/actor-labels.js +1 -1
  307. package/dist/routes/connect.js +1 -1
  308. package/dist/routes/dispatch.js +103 -0
  309. package/dist/routes/mcp.js +170 -79
  310. package/dist/routes/oauth.js +3 -1
  311. package/dist/routes/operator.js +2 -2
  312. package/dist/routes/shared.d.ts +5 -4
  313. package/dist/routes/shared.js +244 -177
  314. package/dist/routes/skills.js +10 -8
  315. package/dist/routes/ui-config.js +27 -3
  316. package/dist/routes/ui-data.js +29 -22
  317. package/dist/routes/ui.js +1 -1
  318. package/dist/runtime/call-admission.js +0 -26
  319. package/dist/runtime/call-entry.js +30 -0
  320. package/dist/runtime/call.js +556 -0
  321. package/dist/runtime/connector-scope.js +7 -0
  322. package/dist/runtime/credential-probe.js +34 -0
  323. package/dist/runtime/executor.js +40 -0
  324. package/dist/runtime/native-storage.js +63 -0
  325. package/dist/runtime/registry.js +27 -0
  326. package/dist/runtime/request-scope.js +72 -0
  327. package/dist/runtime/run.js +15 -7
  328. package/dist/runtime/shared-read.js +34 -5
  329. package/dist/runtime/storage.js +34 -21
  330. package/dist/sent-secrets.d.ts +194 -37
  331. package/dist/sent-secrets.js +1743 -340
  332. package/dist/server.js +5 -56
  333. package/dist/skills.js +330 -224
  334. package/dist/sqlite.js +15 -14
  335. package/dist/storage/d1-copy.js +255 -0
  336. package/dist/storage/d1-driver.js +15 -0
  337. package/dist/storage/keys.js +28 -0
  338. package/dist/storage/sql-driver.js +88 -0
  339. package/dist/storage/sql-native.js +544 -0
  340. package/dist/storage/sql-schema.d.ts +6 -0
  341. package/dist/storage/sql-schema.js +15 -0
  342. package/dist/storage/sql.d.ts +14 -20
  343. package/dist/storage/sql.js +29 -535
  344. package/dist/timeout.js +0 -26
  345. package/dist/tool-safety.js +20 -10
  346. package/dist/types.d.ts +11 -99
  347. package/dist/upward.js +3 -0
  348. package/dist/usage-guide.js +3 -1
  349. package/dist/validate.d.ts +4 -2
  350. package/dist/validate.js +86 -9
  351. package/dist/version.d.ts +1 -1
  352. package/dist/version.js +1 -1
  353. package/dist/worker.js +312 -292
  354. package/dist/workspace-subject.js +5 -1
  355. package/dist/write-outcome.js +454 -34
  356. package/documentation/README.md +27 -7
  357. package/documentation/architecture.md +2550 -186
  358. package/documentation/auth.md +821 -98
  359. package/documentation/code-mode.md +56 -21
  360. package/documentation/deploying.md +164 -20
  361. package/documentation/hosted-mcp-migration.md +460 -0
  362. package/documentation/integrating.md +144 -105
  363. package/documentation/meta-tools.md +411 -34
  364. package/documentation/operating.md +28 -4
  365. package/documentation/operator-tests.md +11 -2
  366. package/documentation/operator-ui.md +103 -33
  367. package/documentation/provider-auth-migration.md +38 -63
  368. package/documentation/provider-migration-0.29.md +10 -5
  369. package/documentation/provider-migration-0.35.md +975 -0
  370. package/documentation/providers.md +965 -0
  371. package/examples/worker/AGENTS.md +23 -9
  372. package/examples/worker/README.md +254 -135
  373. package/examples/worker/alchemy.run.ts +116 -0
  374. package/examples/worker/gitignore +10 -0
  375. package/examples/worker/src/connecta.config.ts +23 -21
  376. package/examples/worker/wrangler.jsonc +14 -5
  377. package/guides/connecting-agents.md +157 -0
  378. package/guides/how-it-works.md +156 -0
  379. package/guides/safety-and-trust.md +153 -0
  380. package/package.json +27 -42
  381. package/templates/node/.env.example +3 -0
  382. package/templates/node/README.md +22 -2
  383. package/templates/node/docker-compose.yml +1 -0
  384. package/templates/node/package.json +3 -2
  385. package/templates/node/src/connecta.config.ts +8 -0
  386. package/dist/catalog-drift.d.ts +0 -134
  387. package/dist/catalog-drift.js +0 -493
  388. package/dist/providers/_shared/request-token.js +0 -83
  389. package/dist/providers/_shared/rest/operation-index.d.ts +0 -133
  390. package/dist/providers/_shared/rest/tools.d.ts +0 -141
  391. package/dist/providers/_shared/rest/value-safety.d.ts +0 -201
  392. package/dist/providers/basecamp/index.d.ts +0 -43
  393. package/dist/providers/basecamp/index.js +0 -997
  394. package/dist/providers/basecamp/skill.generated.js +0 -9
  395. package/dist/providers/cloudflare/rest.d.ts +0 -37
  396. package/dist/providers/cloudflare/rest.js +0 -1078
  397. package/dist/providers/github/hosted.js +0 -218
  398. package/dist/providers/github/rest.js +0 -321
  399. package/dist/providers/infisical/index.d.ts +0 -7
  400. package/dist/providers/infisical/index.js +0 -713
  401. package/dist/providers/infisical/skill.generated.js +0 -8
  402. package/dist/providers/linear/index.d.ts +0 -55
  403. package/dist/providers/linear/index.js +0 -352
  404. package/dist/providers/linear/skill.generated.js +0 -8
  405. package/dist/providers/mixpanel/index.d.ts +0 -57
  406. package/dist/providers/mixpanel/index.js +0 -468
  407. package/dist/providers/mixpanel/operations.js +0 -20
  408. package/dist/providers/mixpanel/rest.js +0 -603
  409. package/dist/providers/mixpanel/skill.generated.js +0 -10
  410. package/dist/providers/mixpanel/value-safety.js +0 -16
  411. package/dist/providers/notion/index.d.ts +0 -65
  412. package/dist/providers/notion/index.js +0 -368
  413. package/dist/providers/notion/openapi.generated.js +0 -75
  414. package/dist/providers/notion/rest.d.ts +0 -24
  415. package/dist/providers/notion/rest.js +0 -1226
  416. package/dist/providers/notion/skill.generated.js +0 -11
  417. package/dist/providers/notion/value-safety.js +0 -56
  418. package/dist/providers/revenuecat/index.d.ts +0 -49
  419. package/dist/providers/revenuecat/index.js +0 -557
  420. package/dist/providers/revenuecat/skill.generated.js +0 -11
  421. package/dist/providers/stripe/rest.d.ts +0 -14
  422. package/dist/providers/stripe/rest.js +0 -402
  423. package/dist/providers/vercel/rest.d.ts +0 -20
  424. package/dist/providers/vercel/rest.js +0 -1020
  425. package/dist/providers/wispr-flow/index.d.ts +0 -14
  426. package/dist/providers/wispr-flow/index.js +0 -117
  427. package/dist/providers/wispr-flow/skill.generated.js +0 -8
  428. /package/dist/providers/github/{key.js → lib/key.js} +0 -0
@@ -0,0 +1,295 @@
1
+ export const CCB_VALUE_SAFETY = {
2
+ "title": "CCB",
3
+ "operations": {
4
+ "PUT /events/{event_id}/attendance_grouping": {
5
+ "verdict": "safe",
6
+ "reason": "Reviewed public names denote background-check records, event settings, serving rotations or musical metadata; no authentication credential is returned.",
7
+ "keep": [],
8
+ },
9
+ "PUT /events/{id}/invitation_settings": {
10
+ "verdict": "safe",
11
+ "reason": "Reviewed public names denote background-check records, event settings, serving rotations or musical metadata; no authentication credential is returned.",
12
+ "keep": [],
13
+ },
14
+ "PUT /events/{id}/shared_campuses/{campus_id}": {
15
+ "verdict": "safe",
16
+ "reason": "Reviewed public names denote background-check records, event settings, serving rotations or musical metadata; no authentication credential is returned.",
17
+ "keep": [],
18
+ },
19
+ "GET /individuals/background_checks": {
20
+ "verdict": "safe",
21
+ "reason": "Reviewed public names denote background-check records, event settings, serving rotations or musical metadata; no authentication credential is returned.",
22
+ "keep": [],
23
+ },
24
+ "GET /individuals/{id}/background_checks": {
25
+ "verdict": "safe",
26
+ "reason": "Reviewed public names denote background-check records, event settings, serving rotations or musical metadata; no authentication credential is returned.",
27
+ "keep": [],
28
+ },
29
+ "PUT /needs/{id}/coordinator": {
30
+ "verdict": "safe",
31
+ "reason": "Reviewed public names denote background-check records, event settings, serving rotations or musical metadata; no authentication credential is returned.",
32
+ "keep": [],
33
+ },
34
+ "POST /oauth/token": {
35
+ "verdict": "refuse",
36
+ "reason": "OAuth token exchange and password reset belong to the connection grant or the vendor application.",
37
+ },
38
+ "POST /reset_password": {
39
+ "verdict": "refuse",
40
+ "reason": "OAuth token exchange and password reset belong to the connection grant or the vendor application.",
41
+ },
42
+ "PUT /scheduling/events/{event_id}/serving_rotations/{serving_rotation_id}": {
43
+ "verdict": "redact",
44
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
45
+ "paths": ["event_files[].url"],
46
+ "keep": [],
47
+ },
48
+ "GET /scheduling/songs/{song_id}": {
49
+ "verdict": "safe",
50
+ "reason": "Reviewed public names denote background-check records, event settings, serving rotations or musical metadata; no authentication credential is returned.",
51
+ "keep": ["time_signature"],
52
+ },
53
+ "POST /search/songs/results": {
54
+ "verdict": "safe",
55
+ "reason": "Reviewed public names denote background-check records, event settings, serving rotations or musical metadata; no authentication credential is returned.",
56
+ "keep": ["[].song_keys", "[].time_signature"],
57
+ },
58
+ "POST /files": {
59
+ "verdict": "redact",
60
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
61
+ "paths": ["url"],
62
+ "keep": [],
63
+ },
64
+ "GET /files/{id}": {
65
+ "verdict": "redact",
66
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
67
+ "paths": ["url"],
68
+ "keep": [],
69
+ },
70
+ "GET /individuals/{id}/files": {
71
+ "verdict": "redact",
72
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
73
+ "paths": ["[].file.url"],
74
+ "keep": [],
75
+ },
76
+ "POST /individuals/{id}/files": {
77
+ "verdict": "redact",
78
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
79
+ "paths": ["[].file.url"],
80
+ "keep": [],
81
+ },
82
+ "POST /individuals/{id}/files/{file_id}": {
83
+ "verdict": "redact",
84
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
85
+ "paths": ["[].file.url"],
86
+ "keep": [],
87
+ },
88
+ "GET /forms/{id}": {
89
+ "verdict": "redact",
90
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
91
+ "paths": ["files[].url"],
92
+ "keep": [],
93
+ },
94
+ "GET /groups/{id}/messages": {
95
+ "verdict": "redact",
96
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
97
+ "paths": ["[].files.url", "[].recent_comments.files.url"],
98
+ "keep": [],
99
+ },
100
+ "GET /messages/{id}": {
101
+ "verdict": "redact",
102
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
103
+ "paths": ["files.url", "recent_comments.files.url"],
104
+ "keep": [],
105
+ },
106
+ "PUT /messages/{id}": {
107
+ "verdict": "redact",
108
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
109
+ "paths": ["files.url", "recent_comments.files.url"],
110
+ "keep": [],
111
+ },
112
+ "GET /messages/{id}/comments": {
113
+ "verdict": "redact",
114
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
115
+ "paths": ["[].files.url"],
116
+ "keep": [],
117
+ },
118
+ "POST /messages/{id}/comments": {
119
+ "verdict": "redact",
120
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
121
+ "paths": ["files.url"],
122
+ "keep": [],
123
+ },
124
+ "PUT /messages/{id}/comments/{comment_id}": {
125
+ "verdict": "redact",
126
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
127
+ "paths": ["files.url"],
128
+ "keep": [],
129
+ },
130
+ "GET /scheduling/categories/{id}/schedules": {
131
+ "verdict": "redact",
132
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
133
+ "paths": ["[].events[].event_files[].url"],
134
+ "keep": [],
135
+ },
136
+ "POST /scheduling/categories/{id}/schedules": {
137
+ "verdict": "redact",
138
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
139
+ "paths": ["[].events[].event_files[].url"],
140
+ "keep": [],
141
+ },
142
+ "POST /scheduling/categories/{id}/files": {
143
+ "verdict": "redact",
144
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
145
+ "paths": ["url"],
146
+ "keep": [],
147
+ },
148
+ "GET /scheduling/categories/{id}/events": {
149
+ "verdict": "redact",
150
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
151
+ "paths": ["[].event_files[].url"],
152
+ "keep": [],
153
+ },
154
+ "GET /scheduling/schedules/{id}": {
155
+ "verdict": "redact",
156
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
157
+ "paths": ["events[].event_files[].url"],
158
+ "keep": [],
159
+ },
160
+ "PUT /scheduling/schedules/{id}": {
161
+ "verdict": "redact",
162
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
163
+ "paths": ["events[].event_files[].url"],
164
+ "keep": [],
165
+ },
166
+ "PUT /scheduling/events/{event_id}/event_position_associated_times": {
167
+ "verdict": "redact",
168
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
169
+ "paths": ["event_files[].url"],
170
+ "keep": [],
171
+ },
172
+ "GET /scheduling/events/{id}": {
173
+ "verdict": "redact",
174
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
175
+ "paths": ["event_files[].url"],
176
+ "keep": [],
177
+ },
178
+ "PUT /scheduling/events/{id}": {
179
+ "verdict": "redact",
180
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
181
+ "paths": ["event_files[].url"],
182
+ "keep": [],
183
+ },
184
+ "PUT /scheduling/events/{id}/copy_assignments": {
185
+ "verdict": "redact",
186
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
187
+ "paths": ["[].event_files[].url"],
188
+ "keep": [],
189
+ },
190
+ "PUT /scheduling/events/{id}/copy_assignments/{copyFromEventId}": {
191
+ "verdict": "redact",
192
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
193
+ "paths": ["event_files[].url"],
194
+ "keep": [],
195
+ },
196
+ "POST /scheduling/events/{id}/files": {
197
+ "verdict": "redact",
198
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
199
+ "paths": ["[].url"],
200
+ "keep": [],
201
+ },
202
+ "GET /scheduling/categories/{id}/service_plans": {
203
+ "verdict": "redact",
204
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
205
+ "paths": ["[].items[].files[].url"],
206
+ "keep": [],
207
+ },
208
+ "POST /scheduling/categories/{id}/service_plans": {
209
+ "verdict": "redact",
210
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
211
+ "paths": ["items[].files[].url"],
212
+ "keep": [],
213
+ },
214
+ "PUT /scheduling/service_plans/{id}": {
215
+ "verdict": "redact",
216
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
217
+ "paths": ["[].items[].files[].url"],
218
+ "keep": [],
219
+ },
220
+ "PUT /scheduling/service_plans/{id}/items": {
221
+ "verdict": "redact",
222
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
223
+ "paths": ["items[].files[].url"],
224
+ "keep": [],
225
+ },
226
+ "POST /scheduling/service_plans/{id}/items": {
227
+ "verdict": "redact",
228
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
229
+ "paths": ["items[].files[].url"],
230
+ "keep": [],
231
+ },
232
+ "PUT /scheduling/service_plan_items/{id}": {
233
+ "verdict": "redact",
234
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
235
+ "paths": ["files[].url"],
236
+ "keep": [],
237
+ },
238
+ "GET /scheduling/individuals/{id}/open_event_positions/{event_position_id}": {
239
+ "verdict": "redact",
240
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
241
+ "paths": ["schedule.events[].event_files[].url"],
242
+ "keep": [],
243
+ },
244
+ "POST /search/assignments/results": {
245
+ "verdict": "redact",
246
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
247
+ "paths": ["[].schedule.events[].event_files[].url"],
248
+ "keep": [],
249
+ },
250
+ "POST /search/organizers/results": {
251
+ "verdict": "redact",
252
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
253
+ "paths": ["[].schedule.events[].event_files[].url"],
254
+ "keep": [],
255
+ },
256
+ "POST /search/schedules/results": {
257
+ "verdict": "redact",
258
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
259
+ "paths": ["[].events[].event_files[].url"],
260
+ "keep": [],
261
+ },
262
+ "POST /search/scheduling_files/results": {
263
+ "verdict": "redact",
264
+ "reason": "File destinations can be private bearer download links; withhold them regardless of URL signing spelling.",
265
+ "paths": ["[].url"],
266
+ "keep": [],
267
+ },
268
+ },
269
+ "fields": {
270
+ "calendar_ical": {
271
+ "verdict": "redact",
272
+ "reason": "Private calendar feed destination, never returned through configuration.",
273
+ },
274
+ "payment_url": {
275
+ "verdict": "redact",
276
+ "reason": "Payment-session destination may convey access; use the vendor application.",
277
+ },
278
+ "time_signature": {
279
+ "verdict": "keep",
280
+ "reason": "Musical time signature, not an authentication signature.",
281
+ },
282
+ "song_keys": {
283
+ "verdict": "keep",
284
+ "reason": "Musical song keys, not stored credentials.",
285
+ },
286
+ "access_token": {
287
+ "verdict": "redact",
288
+ "reason": "OAuth access credential is permanently withheld.",
289
+ },
290
+ "refresh_token": {
291
+ "verdict": "redact",
292
+ "reason": "OAuth refresh credential is permanently withheld.",
293
+ },
294
+ },
295
+ };
@@ -1,9 +1,5 @@
1
1
  // Generated by scripts/generate-providers.mjs; do not edit.
2
2
  export const skill = {
3
- "content": "\n\n## Resolve ids before acting\n\n- Every record is addressed by an integer id. Read it from a list tool and\n pass it back; never guess one. `list_individuals` finds people by partial\n name, phone, or email; `familyId`, `groupId`, `eventId`, form, process,\n queue, and category ids come from their own list tools.\n- Events are series with dated occurrences. `list_events` returns\n `eventId` plus `occurrence`; the attendance tools need both.\n- Campus and membership-type ids resolve through `ccb_api_get` on\n `/campuses` and `/church/membership_types`.\n\n## Sensitive data stays out of results\n\nProjections drop allergies, giving numbers and dates, attendance prayer\nrequests and leader notes, and form payment details; `raw: true` returns\nCCB's full row. Notes, pledges, giving metrics, background checks, and\nfinancial settings are pastoral or financial: read them inside\n`execute_code` and return only the reduced answer the task needs.\n\nGiving in v2 is counts per period (`get_giving_metrics`), pledges, scheduled\ngifts, and financial settings. Transactions, batches, and amounts per gift\nlive only in CCB's legacy v1 XML API, which this connector does not reach.\n\n## Paging\n\nLists take `page` (1-based) and `perPage` (25, 50, 75, or 100 only) and\nreturn `page.hasMore`, `page.nextPage`, and `page.total`. Field names are\nCCB's snake_case turned camelCase.\n\n## Rate limits\n\nCCB allows each endpoint about one call a second after a burst of 60, per API\nclient. This connector keeps a per-runtime 60-per-minute window per endpoint\n— an approximation, not an enforcement. `get_individual` (1/s),\n`list_schedules` (1 per 2 s), and individuals advanced search (1 per 5 s)\nallow no burst: page a list instead of looping a get, and space those calls.\nA `rate_limited` failure carries CCB's wait.\n\n## Raw access\n\n`ccb_api_get` reaches any GET path; `ccb_api_search` runs advanced searches,\nwhich CCB serves as POST but are reads.",
4
- "instructionsHeading": "Church instructions",
5
- "fragments": {
6
- "guide_0": "\n\n## Resolve ids before acting\n\n- Every record is addressed by an integer id. Read it from a list tool and\n pass it back; never guess one. `list_individuals` finds people by partial\n name, phone, or email; `familyId`, `groupId`, `eventId`, form, process,\n queue, and category ids come from their own list tools.\n- Events are series with dated occurrences. `list_events` returns\n `eventId` plus `occurrence`; the attendance tools need both.\n- Campus and membership-type ids resolve through `ccb_api_get` on\n `/campuses` and `/church/membership_types`.\n",
7
- "guide_1": "\n## Sensitive data stays out of results\n\nProjections drop allergies, giving numbers and dates, attendance prayer\nrequests and leader notes, and form payment details; `raw: true` returns\nCCB's full row. Notes, pledges, giving metrics, background checks, and\nfinancial settings are pastoral or financial: read them inside\n`execute_code` and return only the reduced answer the task needs.\n\nGiving in v2 is counts per period (`get_giving_metrics`), pledges, scheduled\ngifts, and financial settings. Transactions, batches, and amounts per gift\nlive only in CCB's legacy v1 XML API, which this connector does not reach.\n\n## Paging\n\nLists take `page` (1-based) and `perPage` (25, 50, 75, or 100 only) and\nreturn `page.hasMore`, `page.nextPage`, and `page.total`. Field names are\nCCB's snake_case turned camelCase.\n\n## Rate limits\n\nCCB allows each endpoint about one call a second after a burst of 60, per API\nclient. This connector keeps a per-runtime 60-per-minute window per endpoint\n— an approximation, not an enforcement. `get_individual` (1/s),\n`list_schedules` (1 per 2 s), and individuals advanced search (1 per 5 s)\nallow no burst: page a list instead of looping a get, and space those calls.\nA `rate_limited` failure carries CCB's wait.\n\n## Raw access\n\n`ccb_api_get` reaches any GET path; `ccb_api_search` runs advanced searches,\nwhich CCB serves as POST but are reads."
8
- }
3
+ "content": "## People, households and groups\n\nCCB v2 addresses records by integer ids. Resolve a person from the individual\nlist and a household from families; never guess ids. Family membership and\nchurch group membership join by individual id. A membership role belongs to\nthat group, rather than being a property of the person everywhere.\n\nIdentity Auth acts with the signed-in person's permissions. A permission\nrefusal can mean that person lacks access even when the connection is healthy.\n\n## Events and attendance\n\nAn event is a series; its dated occurrence is a separate identity. Attendance\njoins need both the event id and occurrence. Preserve the vendor's date and\ntime-zone meaning instead of treating every occurrence as UTC midnight.\n\n## Pastoral and financial records\n\nNotes, background checks, pledges and giving metrics can be sensitive. Read\nonly what the task needs and reduce those records inside execute_code before\nreturning an answer. Gift metrics are counts by period, with a range of at\nmost twelve months. Per-gift transactions and amounts belong to the legacy\nv1 XML API, which this v2 connector does not reach.\n\n## Vendor call rates and recovery\n\nCCB meters endpoints separately per API client. Individual profile reads have\nno burst; individual advanced searches allow one call per five seconds, and\ncategory schedule lists allow one per two seconds. Prefer list pages over a\nloop of individual gets. Other deployments sharing the client spend from the\nsame vendor allowance.\n\nFor a profile edit, resolve the individual first and preserve fields outside\nthe requested change. Use `ccb_api_write` for the edit; the host may ask the\nuser to confirm. After an ambiguous update, read that profile to determine\nwhat actually changed before deciding whether another write is needed.\n\n## Conventions\n\n- **Paging:** while `page.hasMore` is true, continue with `page.nextCursor` unchanged. For `ccb_api_details`, `ccb_api_read`, `ccb_api_search`, `list_event_attendees`, `list_events`, `list_families`, `list_group_members`, `list_groups`, `list_individual_groups`, `list_individual_notes`, `list_individuals`, `search_records`, pass it as the top-level `cursor`; omit raw paging anchors on continuations. Keep the original method, path, filters, page size, fields and headers. Paged `list_*` and `search_*` reads take `limit` (default 25, at most 100). The last page has no `nextCursor`. If `page.hasMore` is true without a cursor, the data is incomplete and continuation was withheld. When approaching execute_code's per-program call limit, return page.nextCursor before the call that would exceed it and continue in the next program; don't restart.\n- **Results:** `fields` narrows a read's result to the dot paths you name. `truncated` lists the dot paths a result cut for size; the ids that fetch what was cut stay in the result.\n- **Hatch:** `ccb_api_search` finds this API's operations and reads no account data, `ccb_api_details` shows one operation's contract, and `ccb_api_read` calls a reviewed read. `ccb_api_write` calls a reviewed write; the host may ask the user to confirm it. An operation without a reviewed verdict is refused. 14 operations are refused by design; use `ccb_api_details` with the method and path to inspect the original operation summary and its separate refusal. Use details for refused methods outside the read/write call schemas; those methods remain unavailable.\n- **Writes:** a write is sent once and never retried. When its outcome is unknown, read the target before repeating it. Writes take no idempotency key.\n- **Errors:** codes come from the vendor's statuses and error facts, never its prose. `not_found` means the record does not exist; this API tells absence from a permission gap. It documents no conflict.\n- **Withheld values:** a value withheld for safety reads `\"[redacted]\"`. Writes refuse whole marker values and withheld links; longer prose may mention the marker. Paths and queries refuse any containment.",
4
+ "instructionsHeading": "Church instructions"
9
5
  };