narai-primitives 2.1.3 → 2.2.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 (389) hide show
  1. package/README.md +16 -4
  2. package/dist/config/load.d.ts.map +1 -1
  3. package/dist/config/load.js +12 -1
  4. package/dist/config/load.js.map +1 -1
  5. package/dist/connectors/confluence/index.d.ts +3 -1
  6. package/dist/connectors/confluence/index.d.ts.map +1 -1
  7. package/dist/connectors/confluence/index.js +246 -31
  8. package/dist/connectors/confluence/index.js.map +1 -1
  9. package/dist/connectors/confluence/lib/confluence_client.d.ts +50 -30
  10. package/dist/connectors/confluence/lib/confluence_client.d.ts.map +1 -1
  11. package/dist/connectors/confluence/lib/confluence_client.js +69 -225
  12. package/dist/connectors/confluence/lib/confluence_client.js.map +1 -1
  13. package/dist/connectors/db/connector.d.ts.map +1 -1
  14. package/dist/connectors/db/connector.js +12 -6
  15. package/dist/connectors/db/connector.js.map +1 -1
  16. package/dist/connectors/db/dispatcher.d.ts +3 -2
  17. package/dist/connectors/db/dispatcher.d.ts.map +1 -1
  18. package/dist/connectors/db/dispatcher.js +136 -40
  19. package/dist/connectors/db/dispatcher.js.map +1 -1
  20. package/dist/connectors/db/index.d.ts +9 -0
  21. package/dist/connectors/db/index.d.ts.map +1 -1
  22. package/dist/connectors/db/index.js +9 -0
  23. package/dist/connectors/db/index.js.map +1 -1
  24. package/dist/connectors/db/lib/audit.d.ts.map +1 -1
  25. package/dist/connectors/db/lib/audit.js +46 -4
  26. package/dist/connectors/db/lib/audit.js.map +1 -1
  27. package/dist/connectors/db/lib/drivers/dynamodb.d.ts.map +1 -1
  28. package/dist/connectors/db/lib/drivers/dynamodb.js +24 -4
  29. package/dist/connectors/db/lib/drivers/dynamodb.js.map +1 -1
  30. package/dist/connectors/db/lib/drivers/mysql.js +1 -1
  31. package/dist/connectors/db/lib/drivers/mysql.js.map +1 -1
  32. package/dist/connectors/db/lib/drivers/postgresql.js +1 -1
  33. package/dist/connectors/db/lib/drivers/postgresql.js.map +1 -1
  34. package/dist/connectors/db/lib/drivers/sqlite.d.ts.map +1 -1
  35. package/dist/connectors/db/lib/drivers/sqlite.js +9 -5
  36. package/dist/connectors/db/lib/drivers/sqlite.js.map +1 -1
  37. package/dist/connectors/db/lib/drivers/sqlserver.d.ts.map +1 -1
  38. package/dist/connectors/db/lib/drivers/sqlserver.js +66 -32
  39. package/dist/connectors/db/lib/drivers/sqlserver.js.map +1 -1
  40. package/dist/connectors/db/lib/environments.d.ts +16 -0
  41. package/dist/connectors/db/lib/environments.d.ts.map +1 -1
  42. package/dist/connectors/db/lib/environments.js +16 -0
  43. package/dist/connectors/db/lib/environments.js.map +1 -1
  44. package/dist/connectors/db/lib/grant-store.d.ts +70 -0
  45. package/dist/connectors/db/lib/grant-store.d.ts.map +1 -0
  46. package/dist/connectors/db/lib/grant-store.js +149 -0
  47. package/dist/connectors/db/lib/grant-store.js.map +1 -0
  48. package/dist/connectors/db/lib/plugin_config.d.ts +2 -0
  49. package/dist/connectors/db/lib/plugin_config.d.ts.map +1 -1
  50. package/dist/connectors/db/lib/plugin_config.js +23 -2
  51. package/dist/connectors/db/lib/plugin_config.js.map +1 -1
  52. package/dist/connectors/db/lib/policy.d.ts +50 -14
  53. package/dist/connectors/db/lib/policy.d.ts.map +1 -1
  54. package/dist/connectors/db/lib/policy.js +295 -73
  55. package/dist/connectors/db/lib/policy.js.map +1 -1
  56. package/dist/connectors/github/actions/_fields.d.ts +18 -0
  57. package/dist/connectors/github/actions/_fields.d.ts.map +1 -0
  58. package/dist/connectors/github/actions/_fields.js +29 -0
  59. package/dist/connectors/github/actions/_fields.js.map +1 -0
  60. package/dist/connectors/github/actions/_pagination.d.ts +12 -0
  61. package/dist/connectors/github/actions/_pagination.d.ts.map +1 -0
  62. package/dist/connectors/github/actions/_pagination.js +26 -0
  63. package/dist/connectors/github/actions/_pagination.js.map +1 -0
  64. package/dist/connectors/github/actions/_types.d.ts +14 -0
  65. package/dist/connectors/github/actions/_types.d.ts.map +1 -0
  66. package/dist/connectors/github/actions/_types.js +2 -0
  67. package/dist/connectors/github/actions/_types.js.map +1 -0
  68. package/dist/connectors/github/actions/comments.d.ts +3 -0
  69. package/dist/connectors/github/actions/comments.d.ts.map +1 -0
  70. package/dist/connectors/github/actions/comments.js +166 -0
  71. package/dist/connectors/github/actions/comments.js.map +1 -0
  72. package/dist/connectors/github/actions/issues.d.ts +3 -0
  73. package/dist/connectors/github/actions/issues.d.ts.map +1 -0
  74. package/dist/connectors/github/actions/issues.js +129 -0
  75. package/dist/connectors/github/actions/issues.js.map +1 -0
  76. package/dist/connectors/github/actions/pulls.d.ts +3 -0
  77. package/dist/connectors/github/actions/pulls.d.ts.map +1 -0
  78. package/dist/connectors/github/actions/pulls.js +182 -0
  79. package/dist/connectors/github/actions/pulls.js.map +1 -0
  80. package/dist/connectors/github/actions/reads.d.ts +3 -0
  81. package/dist/connectors/github/actions/reads.d.ts.map +1 -0
  82. package/dist/connectors/github/actions/reads.js +349 -0
  83. package/dist/connectors/github/actions/reads.js.map +1 -0
  84. package/dist/connectors/github/actions/releases.d.ts +3 -0
  85. package/dist/connectors/github/actions/releases.d.ts.map +1 -0
  86. package/dist/connectors/github/actions/releases.js +124 -0
  87. package/dist/connectors/github/actions/releases.js.map +1 -0
  88. package/dist/connectors/github/actions/workflows.d.ts +3 -0
  89. package/dist/connectors/github/actions/workflows.d.ts.map +1 -0
  90. package/dist/connectors/github/actions/workflows.js +224 -0
  91. package/dist/connectors/github/actions/workflows.js.map +1 -0
  92. package/dist/connectors/github/index.d.ts +13 -1
  93. package/dist/connectors/github/index.d.ts.map +1 -1
  94. package/dist/connectors/github/index.js +33 -396
  95. package/dist/connectors/github/index.js.map +1 -1
  96. package/dist/connectors/github/lib/github_client.d.ts +242 -29
  97. package/dist/connectors/github/lib/github_client.d.ts.map +1 -1
  98. package/dist/connectors/github/lib/github_client.js +202 -256
  99. package/dist/connectors/github/lib/github_client.js.map +1 -1
  100. package/dist/connectors/github/lib/github_config.d.ts +10 -0
  101. package/dist/connectors/github/lib/github_config.d.ts.map +1 -0
  102. package/dist/connectors/github/lib/github_config.js +79 -0
  103. package/dist/connectors/github/lib/github_config.js.map +1 -0
  104. package/dist/connectors/gitlab/actions/_fields.d.ts +20 -0
  105. package/dist/connectors/gitlab/actions/_fields.d.ts.map +1 -0
  106. package/dist/connectors/gitlab/actions/_fields.js +44 -0
  107. package/dist/connectors/gitlab/actions/_fields.js.map +1 -0
  108. package/dist/connectors/gitlab/actions/_pagination.d.ts +19 -0
  109. package/dist/connectors/gitlab/actions/_pagination.d.ts.map +1 -0
  110. package/dist/connectors/gitlab/actions/_pagination.js +33 -0
  111. package/dist/connectors/gitlab/actions/_pagination.js.map +1 -0
  112. package/dist/connectors/gitlab/actions/_types.d.ts +12 -0
  113. package/dist/connectors/gitlab/actions/_types.d.ts.map +1 -0
  114. package/dist/connectors/gitlab/actions/_types.js +2 -0
  115. package/dist/connectors/gitlab/actions/_types.js.map +1 -0
  116. package/dist/connectors/gitlab/actions/issues.d.ts +3 -0
  117. package/dist/connectors/gitlab/actions/issues.d.ts.map +1 -0
  118. package/dist/connectors/gitlab/actions/issues.js +119 -0
  119. package/dist/connectors/gitlab/actions/issues.js.map +1 -0
  120. package/dist/connectors/gitlab/actions/merges.d.ts +3 -0
  121. package/dist/connectors/gitlab/actions/merges.d.ts.map +1 -0
  122. package/dist/connectors/gitlab/actions/merges.js +198 -0
  123. package/dist/connectors/gitlab/actions/merges.js.map +1 -0
  124. package/dist/connectors/gitlab/actions/notes.d.ts +3 -0
  125. package/dist/connectors/gitlab/actions/notes.d.ts.map +1 -0
  126. package/dist/connectors/gitlab/actions/notes.js +145 -0
  127. package/dist/connectors/gitlab/actions/notes.js.map +1 -0
  128. package/dist/connectors/gitlab/actions/pipelines.d.ts +3 -0
  129. package/dist/connectors/gitlab/actions/pipelines.d.ts.map +1 -0
  130. package/dist/connectors/gitlab/actions/pipelines.js +136 -0
  131. package/dist/connectors/gitlab/actions/pipelines.js.map +1 -0
  132. package/dist/connectors/gitlab/actions/reads.d.ts +3 -0
  133. package/dist/connectors/gitlab/actions/reads.d.ts.map +1 -0
  134. package/dist/connectors/gitlab/actions/reads.js +422 -0
  135. package/dist/connectors/gitlab/actions/reads.js.map +1 -0
  136. package/dist/connectors/gitlab/actions/releases.d.ts +3 -0
  137. package/dist/connectors/gitlab/actions/releases.d.ts.map +1 -0
  138. package/dist/connectors/gitlab/actions/releases.js +99 -0
  139. package/dist/connectors/gitlab/actions/releases.js.map +1 -0
  140. package/dist/connectors/gitlab/cli.d.ts +3 -0
  141. package/dist/connectors/gitlab/cli.d.ts.map +1 -0
  142. package/dist/connectors/gitlab/cli.js +24 -0
  143. package/dist/connectors/gitlab/cli.js.map +1 -0
  144. package/dist/connectors/gitlab/index.d.ts +29 -0
  145. package/dist/connectors/gitlab/index.d.ts.map +1 -0
  146. package/dist/connectors/gitlab/index.js +95 -0
  147. package/dist/connectors/gitlab/index.js.map +1 -0
  148. package/dist/connectors/gitlab/lib/gitlab_client.d.ts +306 -0
  149. package/dist/connectors/gitlab/lib/gitlab_client.d.ts.map +1 -0
  150. package/dist/connectors/gitlab/lib/gitlab_client.js +249 -0
  151. package/dist/connectors/gitlab/lib/gitlab_client.js.map +1 -0
  152. package/dist/connectors/gitlab/lib/gitlab_config.d.ts +11 -0
  153. package/dist/connectors/gitlab/lib/gitlab_config.d.ts.map +1 -0
  154. package/dist/connectors/gitlab/lib/gitlab_config.js +115 -0
  155. package/dist/connectors/gitlab/lib/gitlab_config.js.map +1 -0
  156. package/dist/connectors/jira/index.d.ts +3 -1
  157. package/dist/connectors/jira/index.d.ts.map +1 -1
  158. package/dist/connectors/jira/index.js +299 -41
  159. package/dist/connectors/jira/index.js.map +1 -1
  160. package/dist/connectors/jira/lib/jira_client.d.ts +56 -41
  161. package/dist/connectors/jira/lib/jira_client.d.ts.map +1 -1
  162. package/dist/connectors/jira/lib/jira_client.js +71 -248
  163. package/dist/connectors/jira/lib/jira_client.js.map +1 -1
  164. package/dist/connectors/linear/cli.d.ts +3 -0
  165. package/dist/connectors/linear/cli.d.ts.map +1 -0
  166. package/dist/connectors/linear/cli.js +22 -0
  167. package/dist/connectors/linear/cli.js.map +1 -0
  168. package/dist/connectors/linear/index.d.ts +27 -0
  169. package/dist/connectors/linear/index.d.ts.map +1 -0
  170. package/dist/connectors/linear/index.js +496 -0
  171. package/dist/connectors/linear/index.js.map +1 -0
  172. package/dist/connectors/linear/lib/linear_client.d.ts +249 -0
  173. package/dist/connectors/linear/lib/linear_client.d.ts.map +1 -0
  174. package/dist/connectors/linear/lib/linear_client.js +154 -0
  175. package/dist/connectors/linear/lib/linear_client.js.map +1 -0
  176. package/dist/connectors/linear/lib/queries.d.ts +15 -0
  177. package/dist/connectors/linear/lib/queries.d.ts.map +1 -0
  178. package/dist/connectors/linear/lib/queries.js +188 -0
  179. package/dist/connectors/linear/lib/queries.js.map +1 -0
  180. package/dist/connectors/notion/index.d.ts +2 -1
  181. package/dist/connectors/notion/index.d.ts.map +1 -1
  182. package/dist/connectors/notion/index.js +213 -28
  183. package/dist/connectors/notion/index.js.map +1 -1
  184. package/dist/connectors/notion/lib/markdown_to_blocks.d.ts +21 -0
  185. package/dist/connectors/notion/lib/markdown_to_blocks.d.ts.map +1 -0
  186. package/dist/connectors/notion/lib/markdown_to_blocks.js +102 -0
  187. package/dist/connectors/notion/lib/markdown_to_blocks.js.map +1 -0
  188. package/dist/connectors/notion/lib/notion_blocks.d.ts +34 -0
  189. package/dist/connectors/notion/lib/notion_blocks.d.ts.map +1 -0
  190. package/dist/connectors/notion/lib/notion_blocks.js +87 -0
  191. package/dist/connectors/notion/lib/notion_blocks.js.map +1 -0
  192. package/dist/connectors/notion/lib/notion_client.d.ts +35 -25
  193. package/dist/connectors/notion/lib/notion_client.d.ts.map +1 -1
  194. package/dist/connectors/notion/lib/notion_client.js +63 -185
  195. package/dist/connectors/notion/lib/notion_client.js.map +1 -1
  196. package/dist/hub/index.d.ts.map +1 -1
  197. package/dist/hub/index.js +23 -3
  198. package/dist/hub/index.js.map +1 -1
  199. package/dist/toolkit/agent_resolver.d.ts +14 -4
  200. package/dist/toolkit/agent_resolver.d.ts.map +1 -1
  201. package/dist/toolkit/agent_resolver.js +38 -6
  202. package/dist/toolkit/agent_resolver.js.map +1 -1
  203. package/dist/toolkit/atlassian/adf_validator.d.ts +45 -0
  204. package/dist/toolkit/atlassian/adf_validator.d.ts.map +1 -0
  205. package/dist/toolkit/atlassian/adf_validator.js +83 -0
  206. package/dist/toolkit/atlassian/adf_validator.js.map +1 -0
  207. package/dist/toolkit/atlassian/index.d.ts +5 -0
  208. package/dist/toolkit/atlassian/index.d.ts.map +1 -0
  209. package/dist/toolkit/atlassian/index.js +5 -0
  210. package/dist/toolkit/atlassian/index.js.map +1 -0
  211. package/dist/toolkit/audit/writer.d.ts.map +1 -1
  212. package/dist/toolkit/audit/writer.js +45 -5
  213. package/dist/toolkit/audit/writer.js.map +1 -1
  214. package/dist/toolkit/connector_error.d.ts +12 -0
  215. package/dist/toolkit/connector_error.d.ts.map +1 -0
  216. package/dist/toolkit/connector_error.js +18 -0
  217. package/dist/toolkit/connector_error.js.map +1 -0
  218. package/dist/toolkit/guardrail.d.ts +12 -2
  219. package/dist/toolkit/guardrail.d.ts.map +1 -1
  220. package/dist/toolkit/guardrail.js +17 -3
  221. package/dist/toolkit/guardrail.js.map +1 -1
  222. package/dist/toolkit/http_client.d.ts +134 -0
  223. package/dist/toolkit/http_client.d.ts.map +1 -0
  224. package/dist/toolkit/http_client.js +385 -0
  225. package/dist/toolkit/http_client.js.map +1 -0
  226. package/dist/toolkit/index.d.ts +3 -0
  227. package/dist/toolkit/index.d.ts.map +1 -1
  228. package/dist/toolkit/index.js +5 -0
  229. package/dist/toolkit/index.js.map +1 -1
  230. package/dist/toolkit/usage/aggregate.d.ts.map +1 -1
  231. package/dist/toolkit/usage/aggregate.js +19 -3
  232. package/dist/toolkit/usage/aggregate.js.map +1 -1
  233. package/package.json +14 -2
  234. package/plugin-hooks/dispatcher.mjs +584 -0
  235. package/plugin-hooks/plugin-config.mjs +36 -0
  236. package/plugins/{aws-agent → aws-connector}/.claude-plugin/plugin.json +1 -1
  237. package/plugins/{aws-agent → aws-connector}/README.md +7 -7
  238. package/plugins/{aws-agent/bin/aws-agent → aws-connector/bin/aws-connector} +3 -3
  239. package/plugins/aws-connector/commands/aws-connector.md +6 -0
  240. package/plugins/{gcp-agent → aws-connector}/hooks/hooks.json +12 -11
  241. package/plugins/aws-connector/package.json +9 -0
  242. package/plugins/aws-connector/plugin-config.json +4 -0
  243. package/plugins/{aws-agent/skills/aws-agent → aws-connector/skills/aws-connector}/SKILL.md +5 -5
  244. package/plugins/confluence-connector/.claude-plugin/plugin.json +6 -0
  245. package/plugins/{confluence-agent → confluence-connector}/README.md +2 -2
  246. package/plugins/confluence-connector/bin/confluence-connector +17 -0
  247. package/plugins/confluence-connector/commands/confluence-connector.md +6 -0
  248. package/plugins/{jira-agent → confluence-connector}/hooks/hooks.json +12 -11
  249. package/plugins/confluence-connector/package.json +8 -0
  250. package/plugins/confluence-connector/plugin-config.json +4 -0
  251. package/plugins/confluence-connector/skills/confluence-connector/SKILL.md +146 -0
  252. package/plugins/{create-connector → connector-creator}/.claude-plugin/plugin.json +1 -1
  253. package/plugins/{create-connector → connector-creator}/README.md +2 -2
  254. package/plugins/connector-creator/skills/connector-creator/SKILL.md +412 -0
  255. package/plugins/connector-creator/skills/connector-creator/assets/templates/_runtime/connector-gate.mjs.tmpl +120 -0
  256. package/plugins/connector-creator/skills/connector-creator/assets/templates/composite/SKILL.md.tmpl +26 -0
  257. package/plugins/connector-creator/skills/connector-creator/assets/templates/composite/bin.tmpl +2 -0
  258. package/plugins/connector-creator/skills/connector-creator/assets/templates/composite/index.mjs.tmpl +35 -0
  259. package/plugins/connector-creator/skills/connector-creator/assets/templates/knowledge/SKILL.md.tmpl +23 -0
  260. package/plugins/connector-creator/skills/connector-creator/assets/templates/shell-gate/SKILL.md.tmpl +27 -0
  261. package/plugins/connector-creator/skills/connector-creator/assets/templates/shell-gate/gates.json.tmpl +5 -0
  262. package/plugins/connector-creator/skills/connector-creator/lib/connector-registry.mjs +43 -0
  263. package/plugins/connector-creator/skills/connector-creator/lib/settings-wiring.mjs +71 -0
  264. package/plugins/connector-creator/skills/connector-creator/references/connector-contract.md +79 -0
  265. package/plugins/connector-creator/skills/connector-creator/references/flavor-authoring.md +58 -0
  266. package/plugins/connector-creator/skills/connector-creator/references/research-patterns.md +51 -0
  267. package/plugins/{db-agent → db-connector}/.claude-plugin/plugin.json +3 -3
  268. package/plugins/{db-agent → db-connector}/README.md +2 -2
  269. package/plugins/{github-agent/bin/github-agent → db-connector/bin/db-connector} +3 -3
  270. package/plugins/db-connector/commands/db-connector.md +6 -0
  271. package/plugins/db-connector/gates.json +37 -0
  272. package/plugins/{db-agent → db-connector}/hooks/guardrails.json +4 -2
  273. package/plugins/{aws-agent → db-connector}/hooks/hooks.json +15 -11
  274. package/plugins/{db-agent → db-connector}/package.json +1 -1
  275. package/plugins/db-connector/plugin-config.json +5 -0
  276. package/plugins/{db-agent/skills/db-agent → db-connector/skills/db-connector}/SKILL.md +5 -5
  277. package/plugins/{gcp-agent → gcp-connector}/.claude-plugin/plugin.json +1 -1
  278. package/plugins/{gcp-agent → gcp-connector}/README.md +5 -5
  279. package/plugins/{gcp-agent/bin/gcp-agent → gcp-connector/bin/gcp-connector} +3 -3
  280. package/plugins/gcp-connector/commands/gcp-connector.md +6 -0
  281. package/plugins/{github-agent → gcp-connector}/hooks/hooks.json +12 -11
  282. package/plugins/gcp-connector/package.json +9 -0
  283. package/plugins/gcp-connector/plugin-config.json +4 -0
  284. package/plugins/{gcp-agent/skills/gcp-agent → gcp-connector/skills/gcp-connector}/SKILL.md +5 -5
  285. package/plugins/git-connector/.claude-plugin/plugin.json +6 -0
  286. package/plugins/git-connector/CONTRIBUTING.md +117 -0
  287. package/plugins/git-connector/README.md +94 -0
  288. package/plugins/git-connector/SECURITY.md +143 -0
  289. package/plugins/git-connector/gates.json +54 -0
  290. package/plugins/git-connector/hooks/hooks.json +25 -0
  291. package/plugins/git-connector/package.json +9 -0
  292. package/plugins/git-connector/plugin-config.json +4 -0
  293. package/plugins/{github-agent → github-connector}/.claude-plugin/plugin.json +1 -1
  294. package/plugins/github-connector/README.md +48 -0
  295. package/plugins/{confluence-agent/bin/confluence-agent → github-connector/bin/github-connector} +3 -3
  296. package/plugins/github-connector/commands/github-connector.md +6 -0
  297. package/plugins/github-connector/hooks/hooks.json +50 -0
  298. package/plugins/{jira-agent → github-connector}/package.json +1 -1
  299. package/plugins/github-connector/plugin-config.json +4 -0
  300. package/plugins/github-connector/skills/github-connector/SKILL.md +106 -0
  301. package/plugins/gitlab-connector/.claude-plugin/plugin.json +6 -0
  302. package/plugins/gitlab-connector/README.md +62 -0
  303. package/plugins/{db-agent/bin/db-agent → gitlab-connector/bin/gitlab-connector} +3 -3
  304. package/plugins/gitlab-connector/commands/gitlab-connector.md +6 -0
  305. package/plugins/gitlab-connector/hooks/hooks.json +50 -0
  306. package/plugins/{confluence-agent → gitlab-connector}/package.json +1 -1
  307. package/plugins/gitlab-connector/plugin-config.json +4 -0
  308. package/plugins/gitlab-connector/skills/gitlab-connector/SKILL.md +115 -0
  309. package/plugins/jira-connector/.claude-plugin/plugin.json +6 -0
  310. package/plugins/{jira-agent → jira-connector}/README.md +1 -1
  311. package/plugins/{jira-agent/bin/jira-agent → jira-connector/bin/jira-connector} +2 -2
  312. package/plugins/jira-connector/commands/jira-connector.md +6 -0
  313. package/plugins/jira-connector/hooks/hooks.json +50 -0
  314. package/plugins/{github-agent → jira-connector}/package.json +1 -1
  315. package/plugins/jira-connector/plugin-config.json +4 -0
  316. package/plugins/jira-connector/skills/jira-connector/SKILL.md +146 -0
  317. package/plugins/linear-connector/.claude-plugin/plugin.json +6 -0
  318. package/plugins/linear-connector/README.md +29 -0
  319. package/plugins/linear-connector/bin/linear-connector +17 -0
  320. package/plugins/linear-connector/commands/linear-connector.md +6 -0
  321. package/plugins/linear-connector/hooks/hooks.json +50 -0
  322. package/plugins/linear-connector/package.json +8 -0
  323. package/plugins/linear-connector/plugin-config.json +4 -0
  324. package/plugins/linear-connector/skills/linear-connector/SKILL.md +159 -0
  325. package/plugins/notion-connector/.claude-plugin/plugin.json +6 -0
  326. package/plugins/{notion-agent → notion-connector}/README.md +5 -5
  327. package/plugins/{notion-agent/bin/notion-agent → notion-connector/bin/notion-connector} +2 -2
  328. package/plugins/notion-connector/commands/notion-connector.md +6 -0
  329. package/plugins/notion-connector/hooks/hooks.json +50 -0
  330. package/plugins/notion-connector/package.json +8 -0
  331. package/plugins/notion-connector/plugin-config.json +4 -0
  332. package/plugins/notion-connector/skills/notion-connector/SKILL.md +141 -0
  333. package/dist/connectors/confluence/lib/confluence_error.d.ts +0 -13
  334. package/dist/connectors/confluence/lib/confluence_error.d.ts.map +0 -1
  335. package/dist/connectors/confluence/lib/confluence_error.js +0 -19
  336. package/dist/connectors/confluence/lib/confluence_error.js.map +0 -1
  337. package/dist/connectors/github/lib/github_error.d.ts +0 -11
  338. package/dist/connectors/github/lib/github_error.d.ts.map +0 -1
  339. package/dist/connectors/github/lib/github_error.js +0 -17
  340. package/dist/connectors/github/lib/github_error.js.map +0 -1
  341. package/dist/connectors/jira/lib/jira_error.d.ts +0 -11
  342. package/dist/connectors/jira/lib/jira_error.d.ts.map +0 -1
  343. package/dist/connectors/jira/lib/jira_error.js +0 -17
  344. package/dist/connectors/jira/lib/jira_error.js.map +0 -1
  345. package/dist/connectors/notion/lib/notion_error.d.ts +0 -12
  346. package/dist/connectors/notion/lib/notion_error.d.ts.map +0 -1
  347. package/dist/connectors/notion/lib/notion_error.js +0 -18
  348. package/dist/connectors/notion/lib/notion_error.js.map +0 -1
  349. package/plugins/aws-agent/commands/aws-agent.md +0 -6
  350. package/plugins/aws-agent/hooks/reminder.mjs +0 -16
  351. package/plugins/aws-agent/package.json +0 -9
  352. package/plugins/confluence-agent/.claude-plugin/plugin.json +0 -6
  353. package/plugins/confluence-agent/commands/confluence-agent.md +0 -6
  354. package/plugins/confluence-agent/hooks/hooks.json +0 -49
  355. package/plugins/confluence-agent/hooks/reminder.mjs +0 -25
  356. package/plugins/confluence-agent/skills/confluence-agent/SKILL.md +0 -40
  357. package/plugins/create-connector/skills/create-connector/SKILL.md +0 -252
  358. package/plugins/db-agent/commands/db-agent.md +0 -6
  359. package/plugins/db-agent/hooks/db-guard.mjs +0 -110
  360. package/plugins/db-agent/hooks/hooks.json +0 -61
  361. package/plugins/db-agent/hooks/reminder.mjs +0 -16
  362. package/plugins/gcp-agent/commands/gcp-agent.md +0 -6
  363. package/plugins/gcp-agent/hooks/reminder.mjs +0 -16
  364. package/plugins/gcp-agent/package.json +0 -9
  365. package/plugins/github-agent/README.md +0 -13
  366. package/plugins/github-agent/commands/github-agent.md +0 -6
  367. package/plugins/github-agent/hooks/reminder.mjs +0 -16
  368. package/plugins/github-agent/skills/github-agent/SKILL.md +0 -41
  369. package/plugins/jira-agent/.claude-plugin/plugin.json +0 -6
  370. package/plugins/jira-agent/commands/jira-agent.md +0 -6
  371. package/plugins/jira-agent/hooks/reminder.mjs +0 -16
  372. package/plugins/jira-agent/skills/jira-agent/SKILL.md +0 -37
  373. package/plugins/notion-agent/.claude-plugin/plugin.json +0 -6
  374. package/plugins/notion-agent/commands/notion-agent.md +0 -6
  375. package/plugins/notion-agent/hooks/hooks.json +0 -49
  376. package/plugins/notion-agent/hooks/reminder.mjs +0 -17
  377. package/plugins/notion-agent/package.json +0 -8
  378. package/plugins/notion-agent/skills/notion-agent/SKILL.md +0 -48
  379. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/assets/templates/bin.tmpl +0 -0
  380. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/assets/templates/connector-SKILL.md.tmpl +0 -0
  381. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/assets/templates/index.mjs.tmpl +0 -0
  382. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/assets/templates/tests-example.mjs.tmpl +0 -0
  383. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/action-design.md +0 -0
  384. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/auth-patterns.md +0 -0
  385. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/connector-anatomy.md +0 -0
  386. /package/plugins/{create-connector/skills/create-connector/references/db-agent-pointer.md → connector-creator/skills/connector-creator/references/db-connector-pointer.md} +0 -0
  387. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/plugin-layer.md +0 -0
  388. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/template-sync.md +0 -0
  389. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/verification.md +0 -0
@@ -11,10 +11,12 @@
11
11
  *
12
12
  * query — execute SQL against a backend (or return formatted SQL for
13
13
  * WRITE/DELETE via status=present_only). Params:
14
- * `{env|sqlite_path, sql, max_rows?, timeout_ms?,
15
- * approval_mode?, config_path?}`.
16
- * schema introspect table/column schema. Params: `{env|sqlite_path,
17
- * filter?, config_path?}`.
14
+ * `{server|sqlite_path, sql, max_rows?, timeout_ms?,
15
+ * approval_mode?, config_path?}`. `env` is accepted as a
16
+ * deprecated alias for `server` and emits a stderr warning.
17
+ * schema — introspect table/column schema. Params: `{server|sqlite_path,
18
+ * filter?, config_path?}`. `env` is accepted as a deprecated
19
+ * alias for `server` and emits a stderr warning.
18
20
  */
19
21
  import * as fs from "node:fs";
20
22
  import * as os from "node:os";
@@ -24,6 +26,7 @@ import { parseAgentArgs } from "narai-primitives/toolkit";
24
26
  import { loadResolvedConfig } from "narai-primitives/config";
25
27
  import { Policy, classifyStatements, } from "./lib/policy.js";
26
28
  import { executeQuery } from "./lib/query.js";
29
+ import { FileGrantStore, grantStorePathFor, shouldIssueReadGrant, } from "./lib/grant-store.js";
27
30
  import { SQLiteDriver } from "./lib/drivers/sqlite.js";
28
31
  import { parseConfig } from "./config.js";
29
32
  import { getEnvironment, registerEnvironment, clearEnvironments, } from "./lib/environments.js";
@@ -42,27 +45,55 @@ function toInt(value, fallback) {
42
45
  }
43
46
  return fallback;
44
47
  }
45
- function requireConnTarget(p) {
46
- const sqlite = typeof p["sqlite_path"] === "string" ? p["sqlite_path"] : undefined;
47
- const env = typeof p["env"] === "string" ? p["env"] : undefined;
48
- if (!sqlite && !env) {
49
- throw new Error("params must include one of 'sqlite_path' or 'env'");
48
+ function extractConnTarget(p) {
49
+ // Defense-in-depth: zod catches these at the framework layer, but
50
+ // legacy `dispatcherFetch` and CLI `--params` callers reach here
51
+ // directly. Reject malformed types up front so they can't slip into
52
+ // default-server fallback.
53
+ const sqliteRaw = p["sqlite_path"];
54
+ if (sqliteRaw !== undefined && (typeof sqliteRaw !== "string" || sqliteRaw.length === 0)) {
55
+ throw new Error("params 'sqlite_path' must be a non-empty string");
56
+ }
57
+ const sqlite = typeof sqliteRaw === "string" ? sqliteRaw : undefined;
58
+ const serverRaw = p["server"];
59
+ if (serverRaw !== undefined && (typeof serverRaw !== "string" || serverRaw.length === 0)) {
60
+ throw new Error("params 'server' must be a non-empty string");
61
+ }
62
+ const server = typeof serverRaw === "string" ? serverRaw : undefined;
63
+ const envRaw = p["env"];
64
+ if (envRaw !== undefined && (typeof envRaw !== "string" || envRaw.length === 0)) {
65
+ throw new Error("params 'env' must be a non-empty string");
66
+ }
67
+ const envAlias = typeof envRaw === "string" ? envRaw : undefined;
68
+ let effectiveServer = server;
69
+ if (envAlias !== undefined) {
70
+ process.stderr.write("warning: db connector param `env` is deprecated; use `server` instead\n");
71
+ if (server === undefined) {
72
+ effectiveServer = envAlias;
73
+ }
74
+ else if (server !== envAlias) {
75
+ throw new Error("params 'server' and 'env' (deprecated alias) are both set and differ; use only 'server'");
76
+ }
50
77
  }
51
- if (sqlite && env) {
52
- throw new Error("params 'sqlite_path' and 'env' are mutually exclusive");
78
+ if (sqlite && effectiveServer) {
79
+ throw new Error("params 'sqlite_path' and 'server' are mutually exclusive");
53
80
  }
54
- const config_path = typeof p["config_path"] === "string" ? p["config_path"] : undefined;
81
+ const configPathRaw = p["config_path"];
82
+ if (configPathRaw !== undefined && (typeof configPathRaw !== "string" || configPathRaw.length === 0)) {
83
+ throw new Error("params 'config_path' must be a non-empty string");
84
+ }
85
+ const config_path = typeof configPathRaw === "string" ? configPathRaw : undefined;
55
86
  const out = {};
56
87
  if (sqlite)
57
88
  out.sqlite_path = sqlite;
58
- if (env)
59
- out.env = env;
89
+ if (effectiveServer)
90
+ out.server = effectiveServer;
60
91
  if (config_path)
61
92
  out.config_path = config_path;
62
93
  return out;
63
94
  }
64
95
  function validateQueryParams(p) {
65
- const conn = requireConnTarget(p);
96
+ const conn = extractConnTarget(p);
66
97
  const sqlRaw = p["sql"];
67
98
  if (typeof sqlRaw !== "string" || sqlRaw.length === 0) {
68
99
  throw new Error("action 'query' requires a non-empty 'sql' string");
@@ -74,23 +105,29 @@ function validateQueryParams(p) {
74
105
  };
75
106
  if (conn.sqlite_path)
76
107
  v.sqlite_path = conn.sqlite_path;
77
- if (conn.env)
78
- v.env = conn.env;
108
+ if (conn.server)
109
+ v.server = conn.server;
79
110
  if (conn.config_path)
80
111
  v.config_path = conn.config_path;
81
112
  const approval = p["approval_mode"];
82
113
  if (typeof approval === "string" && approval.length > 0) {
83
114
  v.approval_mode = approval;
84
115
  }
116
+ // Truthy `approve_grant` (boolean true or the string "true") opts this run
117
+ // into issuing a read grant under grant_required. Anything else is ignored.
118
+ const approveGrant = p["approve_grant"];
119
+ if (approveGrant === true || approveGrant === "true") {
120
+ v.approve_grant = true;
121
+ }
85
122
  return v;
86
123
  }
87
124
  function validateSchemaParams(p) {
88
- const conn = requireConnTarget(p);
125
+ const conn = extractConnTarget(p);
89
126
  const v = {};
90
127
  if (conn.sqlite_path)
91
128
  v.sqlite_path = conn.sqlite_path;
92
- if (conn.env)
93
- v.env = conn.env;
129
+ if (conn.server)
130
+ v.server = conn.server;
94
131
  if (conn.config_path)
95
132
  v.config_path = conn.config_path;
96
133
  const filter = p["filter"];
@@ -113,7 +150,7 @@ function _expandUser(p) {
113
150
  * `getConnection()`, so a DROP TABLE against an unreachable production host
114
151
  * returns denied in ~1ms without any network traffic.
115
152
  */
116
- export function _preCheckPolicy(sql, approvalMode, rules) {
153
+ export function _preCheckPolicy(sql, approvalMode, rules, grantStore) {
117
154
  let ops;
118
155
  try {
119
156
  ops = classifyStatements(sql);
@@ -137,7 +174,10 @@ export function _preCheckPolicy(sql, approvalMode, rules) {
137
174
  return null;
138
175
  let policy;
139
176
  try {
140
- policy = new Policy(approvalMode, rules);
177
+ policy =
178
+ grantStore !== undefined
179
+ ? new Policy(approvalMode, rules, grantStore)
180
+ : new Policy(approvalMode, rules);
141
181
  }
142
182
  catch (e) {
143
183
  return {
@@ -362,18 +402,40 @@ async function runOnEnv(action, v) {
362
402
  execution_time_ms: 0,
363
403
  };
364
404
  }
365
- let envName;
405
+ let serverName;
366
406
  let approvalMode;
367
407
  let rules;
368
408
  let grantDurationHours;
369
409
  try {
370
410
  if (pluginCfg !== null) {
371
- if (!Object.prototype.hasOwnProperty.call(pluginCfg.servers, v.env)) {
411
+ // Resolve missing `server` against `default:` / single-entry / error.
412
+ let resolvedServerName = v.server;
413
+ if (resolvedServerName === undefined) {
414
+ if (pluginCfg.default !== undefined) {
415
+ resolvedServerName = pluginCfg.default;
416
+ }
417
+ else {
418
+ const serverNames = Object.keys(pluginCfg.servers);
419
+ if (serverNames.length === 1) {
420
+ resolvedServerName = serverNames[0];
421
+ }
422
+ else {
423
+ return {
424
+ status: "error",
425
+ error_code: "VALIDATION_ERROR",
426
+ error: `params must include 'server' (no default configured; ` +
427
+ `available: [${serverNames.join(", ")}])`,
428
+ execution_time_ms: 0,
429
+ };
430
+ }
431
+ }
432
+ }
433
+ if (!Object.prototype.hasOwnProperty.call(pluginCfg.servers, resolvedServerName)) {
372
434
  const available = Object.keys(pluginCfg.servers).join(", ");
373
435
  return {
374
436
  status: "error",
375
437
  error_code: "CONFIG_ERROR",
376
- error: `environment '${v.env}' not found in plugin config ` +
438
+ error: `server '${resolvedServerName}' not found in plugin config ` +
377
439
  `(servers: [${available || "none"}])`,
378
440
  execution_time_ms: 0,
379
441
  };
@@ -397,8 +459,8 @@ async function runOnEnv(action, v) {
397
459
  ...(gdh !== undefined ? { grant_duration_hours: gdh } : {}),
398
460
  });
399
461
  }
400
- envName = v.env;
401
- const env = getEnvironment(envName);
462
+ serverName = resolvedServerName;
463
+ const env = getEnvironment(serverName);
402
464
  const qv = v;
403
465
  approvalMode =
404
466
  qv.approval_mode ?? env.approval_mode.replace(/-/g, "_");
@@ -406,9 +468,17 @@ async function runOnEnv(action, v) {
406
468
  grantDurationHours = env.grant_duration_hours;
407
469
  }
408
470
  else {
471
+ if (v.server === undefined) {
472
+ return {
473
+ status: "error",
474
+ error_code: "VALIDATION_ERROR",
475
+ error: "params must include 'server' (or 'sqlite_path')",
476
+ execution_time_ms: 0,
477
+ };
478
+ }
409
479
  const configPath = v.config_path ?? "./wiki.config.yaml";
410
- const resolved = resolveEnv(v.env, configPath);
411
- envName = resolved.name;
480
+ const resolved = resolveEnv(v.server, configPath);
481
+ serverName = resolved.name;
412
482
  const qv = v;
413
483
  approvalMode = qv.approval_mode ?? resolved.approval_mode;
414
484
  rules = DEFAULT_POLICY;
@@ -424,12 +494,35 @@ async function runOnEnv(action, v) {
424
494
  execution_time_ms: 0,
425
495
  };
426
496
  }
497
+ // Durable grants for grant_required: back the policy with a file store
498
+ // keyed by server alias so a grant issued in one (short-lived) invocation
499
+ // is visible to the next, and distinct DB targets never share a grant.
500
+ // The SAME instance is passed to the pre-check and execution policies so
501
+ // they agree within this run. Other modes keep the default in-process
502
+ // store (behavior unchanged).
503
+ let grantStore;
504
+ if (approvalMode === "grant_required" || grantDurationHours !== undefined) {
505
+ grantStore = new FileGrantStore(grantStorePathFor(serverName));
506
+ }
507
+ // Issuance: an explicit `approve_grant` on this run is the human approval
508
+ // authorizing reads against this target for the window. Record the grant
509
+ // BEFORE the gate so the approved read is permitted to run and subsequent
510
+ // reads within the window need no re-prompt. Without the flag nothing is
511
+ // seeded, so the gate stands by default. Only `read` is ever granted.
512
+ if (action === "query" && grantStore !== undefined) {
513
+ const q = v;
514
+ if (shouldIssueReadGrant(approvalMode, q.approve_grant === true)) {
515
+ const ttlSeconds = grantDurationHours !== undefined ? grantDurationHours * 3600 : 300;
516
+ const issuer = new Policy(approvalMode, rules, grantStore);
517
+ issuer.addGrant("read", ttlSeconds);
518
+ }
519
+ }
427
520
  // Pre-connect policy gate: short-circuit deny/escalate/present_only
428
521
  // before we load any driver or open any connection. This is the
429
522
  // load-bearing invariant documented in CLAUDE.md and the plugin spec.
430
523
  if (action === "query") {
431
524
  const q = v;
432
- const short = _preCheckPolicy(q.sql, approvalMode, rules);
525
+ const short = _preCheckPolicy(q.sql, approvalMode, rules, grantStore);
433
526
  if (short !== null) {
434
527
  clearEnvironments();
435
528
  return short.response;
@@ -437,7 +530,7 @@ async function runOnEnv(action, v) {
437
530
  }
438
531
  let conn;
439
532
  try {
440
- conn = await getConnection(envName);
533
+ conn = await getConnection(serverName);
441
534
  }
442
535
  catch (e) {
443
536
  clearEnvironments();
@@ -451,14 +544,15 @@ async function runOnEnv(action, v) {
451
544
  try {
452
545
  if (action === "schema") {
453
546
  const sv = v;
454
- return await runSchema(conn.driver, conn.native, sv.filter ?? null, envName);
547
+ return await runSchema(conn.driver, conn.native, sv.filter ?? null, serverName);
455
548
  }
456
549
  const qv = v;
457
- const policy = new Policy(approvalMode, rules);
458
- // Silence unused-var lint for metadata we carry for future audit
459
- // enrichment — keeping the shape so callers can add grant checks later
460
- // without re-plumbing.
461
- void grantDurationHours;
550
+ // Under grant_required, share the same FileGrantStore the pre-check used
551
+ // so a persisted (or just-issued) read grant is honored here; other modes
552
+ // use the default in-process store.
553
+ const policy = grantStore !== undefined
554
+ ? new Policy(approvalMode, rules, grantStore)
555
+ : new Policy(approvalMode, rules);
462
556
  const queryable = adaptDriver(conn.driver, conn.native);
463
557
  return await executeQuery(queryable, qv.sql, policy, {
464
558
  max_rows: qv.max_rows,
@@ -466,7 +560,7 @@ async function runOnEnv(action, v) {
466
560
  });
467
561
  }
468
562
  finally {
469
- releaseConnection(envName, conn);
563
+ releaseConnection(serverName, conn);
470
564
  clearEnvironments();
471
565
  }
472
566
  }
@@ -517,14 +611,16 @@ options:
517
611
  JSON string of action parameters
518
612
 
519
613
  action 'query' params:
520
- {"env": "dev", "sql": "SELECT 1"} or
614
+ {"server": "dev", "sql": "SELECT 1"} or
521
615
  {"sqlite_path": "./test.db", "sql": "SELECT 1"}
522
616
  optional: max_rows (default 1000), timeout_ms (default 30000),
523
617
  approval_mode, config_path
618
+ deprecated: \`env\` is accepted as an alias for \`server\`.
524
619
 
525
620
  action 'schema' params:
526
- {"env": "dev"} or {"sqlite_path": "./test.db"}
621
+ {"server": "dev"} or {"sqlite_path": "./test.db"}
527
622
  optional: filter, config_path
623
+ deprecated: \`env\` is accepted as an alias for \`server\`.
528
624
 
529
625
  Writes/deletes (INSERT/UPDATE/DELETE/TRUNCATE/…) follow the configured
530
626
  policy. By default, WRITE escalates and DELETE/ADMIN return status="present_only"
@@ -1 +1 @@
1
- {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../../src/connectors/db/dispatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../../src/connectors/db/dispatcher.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,19 @@
5
5
  * `@narai/connector-toolkit`. Use `import connector from "narai-primitives/db"`
6
6
  * and call `connector.fetch(action, params)` / `connector.main(argv)`.
7
7
  *
8
+ * Multiple databases per environment: declare each one under
9
+ * `connectors.db.servers:` in `~/.connectors/config.yaml`; calls pass
10
+ * `server: "<alias>"`. An optional `connectors.db.default:` names the
11
+ * server used when the caller omits `server`. If `servers:` has exactly
12
+ * one entry, it's the implicit default.
13
+ *
8
14
  * Legacy surface: `fetch(action, params)` is re-exported from the internal
9
15
  * dispatcher for programmatic callers that want the pre-framework envelope
10
16
  * shape (`{status: "ok"|"denied"|..., rows, columns, ...}`). The framework
11
17
  * connector translates that into the canonical envelope at the boundary.
18
+ *
19
+ * Deprecated: the per-call `env` parameter is accepted as an alias for
20
+ * `server` for one minor cycle. Migrate.
12
21
  */
13
22
  import { buildDbConnector } from "./connector.js";
14
23
  declare const connector: import("../../toolkit/connector.js").Connector;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/connectors/db/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,QAAA,MAAM,SAAS,gDAAqB,CAAC;AACrC,eAAe,SAAS,CAAC;AACzB,eAAO,MAAQ,IAAI,gDAAE,KAAK,2FAAE,YAAY,qBAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAI5B,OAAO,EACL,KAAK,IAAI,eAAe,EACxB,aAAa,EACb,SAAS,EACT,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AAEzB,cAAc,gBAAgB,CAAC;AAI/B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACnB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,WAAW,EACX,KAAK,UAAU,EACf,uBAAuB,GACxB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/connectors/db/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,QAAA,MAAM,SAAS,gDAAqB,CAAC;AACrC,eAAe,SAAS,CAAC;AACzB,eAAO,MAAQ,IAAI,gDAAE,KAAK,2FAAE,YAAY,qBAAc,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAI5B,OAAO,EACL,KAAK,IAAI,eAAe,EACxB,aAAa,EACb,SAAS,EACT,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AAEzB,cAAc,gBAAgB,CAAC;AAI/B,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACnB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,WAAW,EACX,KAAK,UAAU,EACf,uBAAuB,GACxB,MAAM,aAAa,CAAC"}
@@ -5,10 +5,19 @@
5
5
  * `@narai/connector-toolkit`. Use `import connector from "narai-primitives/db"`
6
6
  * and call `connector.fetch(action, params)` / `connector.main(argv)`.
7
7
  *
8
+ * Multiple databases per environment: declare each one under
9
+ * `connectors.db.servers:` in `~/.connectors/config.yaml`; calls pass
10
+ * `server: "<alias>"`. An optional `connectors.db.default:` names the
11
+ * server used when the caller omits `server`. If `servers:` has exactly
12
+ * one entry, it's the implicit default.
13
+ *
8
14
  * Legacy surface: `fetch(action, params)` is re-exported from the internal
9
15
  * dispatcher for programmatic callers that want the pre-framework envelope
10
16
  * shape (`{status: "ok"|"denied"|..., rows, columns, ...}`). The framework
11
17
  * connector translates that into the canonical envelope at the boundary.
18
+ *
19
+ * Deprecated: the per-call `env` parameter is accepted as an alias for
20
+ * `server` for one minor cycle. Migrate.
12
21
  */
13
22
  import { buildDbConnector } from "./connector.js";
14
23
  const connector = buildDbConnector();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connectors/db/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;AACrC,eAAe,SAAS,CAAC;AACzB,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,sEAAsE;AACtE,+DAA+D;AAC/D,OAAO,EACL,KAAK,IAAI,eAAe,EACxB,aAAa,EACb,SAAS,GAIV,MAAM,iBAAiB,CAAC;AAEzB,cAAc,gBAAgB,CAAC;AAE/B,wEAAwE;AACxE,wCAAwC;AACxC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,GAKhB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,WAAW,EAEX,uBAAuB,GACxB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connectors/db/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;AACrC,eAAe,SAAS,CAAC;AACzB,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,sEAAsE;AACtE,+DAA+D;AAC/D,OAAO,EACL,KAAK,IAAI,eAAe,EACxB,aAAa,EACb,SAAS,GAIV,MAAM,iBAAiB,CAAC;AAEzB,cAAc,gBAAgB,CAAC;AAE/B,wEAAwE;AACxE,wCAAwC;AACxC,OAAO,EACL,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,GAKhB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,WAAW,EAEX,uBAAuB,GACxB,MAAM,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../../../src/connectors/db/lib/audit.ts"],"names":[],"mappings":"AAwBA;;;GAGG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAQ7E;AAED,6CAA6C;AAC7C,wBAAgB,YAAY,IAAI,IAAI,CAInC;AAiCD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAgBD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAInD;AAED,mCAAmC;AACnC,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAmBrD;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC1C;AAED,4DAA4D;AAC5D,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAUrD;AAED,uDAAuD;AACvD,wBAAgB,WAAW,IAAI;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAMA"}
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../../../src/connectors/db/lib/audit.ts"],"names":[],"mappings":"AAyBA;;;GAGG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAgB7E;AAED,6CAA6C;AAC7C,wBAAgB,YAAY,IAAI,IAAI,CAInC;AAiCD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AA+CD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgCnD;AAED,mCAAmC;AACnC,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAmBrD;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC1C;AAED,4DAA4D;AAC5D,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAUrD;AAED,uDAAuD;AACvD,wBAAgB,WAAW,IAAI;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAMA"}
@@ -14,6 +14,7 @@
14
14
  */
15
15
  import * as crypto from "node:crypto";
16
16
  import * as fs from "node:fs";
17
+ import * as path from "node:path";
17
18
  // Module-level state
18
19
  const _state = {
19
20
  enabled: false,
@@ -27,6 +28,15 @@ const _state = {
27
28
  export function enableAudit(filePath, sessionId) {
28
29
  _state.enabled = true;
29
30
  _state.path = filePath;
31
+ // Create the parent directory up front so the first append does not
32
+ // silently drop the record when the directory is missing. Wrapped so
33
+ // enableAudit preserves its never-throw contract.
34
+ try {
35
+ fs.mkdirSync(path.dirname(filePath), { recursive: true });
36
+ }
37
+ catch {
38
+ // best-effort; a write failure later is still swallowed in _writeRecord
39
+ }
30
40
  _state.sessionId =
31
41
  sessionId !== undefined && sessionId !== null
32
42
  ? sessionId
@@ -79,12 +89,44 @@ function _isoTimestamp() {
79
89
  * single/double-quoted literals — partial or concatenated literals are
80
90
  * out of scope.
81
91
  */
82
- const _SENSITIVE_LITERAL_SQUOTE_RE = /\b(password|passwd|pwd|token|api[_-]?key|secret|access[_-]?key|auth)\s*=\s*'[^']*'/gi;
83
- const _SENSITIVE_LITERAL_DQUOTE_RE = /\b(password|passwd|pwd|token|api[_-]?key|secret|access[_-]?key|auth)\s*=\s*"[^"]*"/gi;
92
+ // Key/separator are captured as distinct groups so the original separator
93
+ // (e.g. `:` for JSON, `=` for SQL/env) is preserved verbatim — hard-coding
94
+ // `=` would mangle `{"password":"x"}` into `{"password"='[REDACTED]'}` and
95
+ // break downstream consumers parsing events.jsonl as JSON-per-line.
96
+ //
97
+ // Leading/trailing `\b` keeps `mytoken='x'` and `notpassword='x'` from being
98
+ // spuriously redacted just because they end in a sensitive keyword.
99
+ //
100
+ // Value classes use `(?:\\.|[^Q\\])*` so `\"` and other escape sequences
101
+ // inside JSON-encoded values are skipped — without this, `"abc\"def"`
102
+ // terminates at the escaped quote and leaks the tail.
103
+ //
104
+ // AUTH redaction is split into two anchored patterns:
105
+ // QUOTED_RE — preceded by `"` or `'` (JSON key or string-value context);
106
+ // the unquoted-value branch's value class `[^"'\r\n]+` stops at any
107
+ // quote so it can't consume past the outer JSON closing quote.
108
+ // LINE_RE — anchored to `^` or `\r\n` (HTTP header / env line); value
109
+ // class is `[^\r\n]+` so Digest's embedded quoted params are
110
+ // fully consumed.
111
+ // Anchoring avoids the regression where a mid-string match on
112
+ // `{"message":"authorization: …"}` swallowed the trailing `"}` and
113
+ // produced unterminated JSON.
114
+ const _SENSITIVE_KEYS = "password|passwd|pwd|token|api[_-]?key|secret|access[_-]?key|auth";
115
+ const _SENSITIVE_LITERAL_SQUOTE_RE = new RegExp(`("?\\b(?:${_SENSITIVE_KEYS})\\b"?)(\\s*[:=]\\s*)'(?:[^'\\\\]|\\\\.)*'`, "gi");
116
+ const _SENSITIVE_LITERAL_DQUOTE_RE = new RegExp(`("?\\b(?:${_SENSITIVE_KEYS})\\b"?)(\\s*[:=]\\s*)"(?:[^"\\\\]|\\\\.)*"`, "gi");
117
+ const _SENSITIVE_AUTH_QUOTED_RE = /(?<=["'])(\bauthorization\b)("?)(\s*[:=]\s*)(?:(["'])((?:bearer|basic)\s+)?(?:\\.|[^\r\n\\])*?\4|((?:bearer|basic)\s+)?[^"'\r\n]+)/gi;
118
+ const _SENSITIVE_AUTH_LINE_RE = /(?:^|(?<=[\r\n]))(\bauthorization\b)(\s*[:=]\s*)((?:bearer|basic)\s+)?[^\r\n]+/gi;
84
119
  export function scrubSqlSecrets(sql) {
85
120
  return sql
86
- .replace(_SENSITIVE_LITERAL_SQUOTE_RE, (_m, key) => `${key}='[REDACTED]'`)
87
- .replace(_SENSITIVE_LITERAL_DQUOTE_RE, (_m, key) => `${key}="[REDACTED]"`);
121
+ .replace(_SENSITIVE_LITERAL_SQUOTE_RE, (_m, key, sep) => `${key}${sep}'[REDACTED]'`)
122
+ .replace(_SENSITIVE_LITERAL_DQUOTE_RE, (_m, key, sep) => `${key}${sep}"[REDACTED]"`)
123
+ .replace(_SENSITIVE_AUTH_QUOTED_RE, (_m, kw, keyQuote, sep, valQuote, schemeQ, schemeU) => {
124
+ if (valQuote !== undefined) {
125
+ return `${kw}${keyQuote}${sep}${valQuote}${schemeQ || ""}[REDACTED]${valQuote}`;
126
+ }
127
+ return `${kw}${keyQuote}${sep}${schemeU || ""}[REDACTED]`;
128
+ })
129
+ .replace(_SENSITIVE_AUTH_LINE_RE, (_m, kw, sep, scheme) => `${kw}${sep}${scheme || ""}[REDACTED]`);
88
130
  }
89
131
  /** Log a query execution event. */
90
132
  export function logQuery(params) {
@@ -1 +1 @@
1
- {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../../../src/connectors/db/lib/audit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../../../src/connectors/db/lib/audit.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dynamodb.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/db/lib/drivers/dynamodb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dynamodb.d.ts","sourceRoot":"","sources":["../../../../../src/connectors/db/lib/drivers/dynamodb.ts"],"names":[],"mappings":"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"}
@@ -80,6 +80,14 @@ const _DYNAMO_ADMIN_OPS = new Set([
80
80
  "UpdateTable", "UpdateTableCommand",
81
81
  ]);
82
82
  const READ_ONLY_OPS = new Set(["get", "query", "scan", "sample"]);
83
+ /**
84
+ * Concurrency cap for the chunked `DescribeTable` fan-out in `getSchemaAsync`.
85
+ * Sized to roughly match the per-account `DescribeTable` TPS the AWS SDK
86
+ * tolerates with its default `maxAttempts: 3` retry; values much above this
87
+ * tend to hit `ProvisionedThroughputExceededException` on cold caches.
88
+ * Tune here if a deployment needs a different balance.
89
+ */
90
+ const DESCRIBE_TABLE_CONCURRENCY = 10;
83
91
  export class DynamoDriver extends DatabaseDriver {
84
92
  _dynamoModule = null;
85
93
  _client = null;
@@ -275,11 +283,23 @@ export class DynamoDriver extends DatabaseDriver {
275
283
  tableFilter.replace(/[.+^${}()|[\]\\]/g, "\\$&").replace(/%/g, ".*") +
276
284
  "$")
277
285
  : null;
286
+ const filteredNames = names.filter((name) => filterRe === null || filterRe.test(name));
287
+ // Fan out DescribeTable in bounded-concurrency chunks. Promise.all per
288
+ // chunk preserves table ordering in `out`; chunk size is capped by
289
+ // DESCRIBE_TABLE_CONCURRENCY to stay within AWS per-account TPS. Errors
290
+ // bubble to the outer try/catch to keep the prior all-or-nothing
291
+ // semantics — a partial schema would be silently misleading.
292
+ const descResults = [];
293
+ for (let i = 0; i < filteredNames.length; i += DESCRIBE_TABLE_CONCURRENCY) {
294
+ const chunk = filteredNames.slice(i, i + DESCRIBE_TABLE_CONCURRENCY);
295
+ const chunkResults = await Promise.all(chunk.map(async (name) => {
296
+ const desc = (await client.send(new module.DescribeTableCommand({ TableName: name })));
297
+ return { name, desc };
298
+ }));
299
+ descResults.push(...chunkResults);
300
+ }
278
301
  const out = [];
279
- for (const name of names) {
280
- if (filterRe !== null && !filterRe.test(name))
281
- continue;
282
- const desc = (await client.send(new module.DescribeTableCommand({ TableName: name })));
302
+ for (const { name, desc } of descResults) {
283
303
  const table = desc.Table;
284
304
  if (table === undefined)
285
305
  continue;