narai-primitives 2.1.3 → 2.3.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 (392) hide show
  1. package/README.md +20 -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 +142 -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 +77 -0
  45. package/dist/connectors/db/lib/grant-store.d.ts.map +1 -0
  46. package/dist/connectors/db/lib/grant-store.js +158 -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 +298 -74
  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 +639 -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 +45 -0
  272. package/plugins/db-connector/gates.strict-bare.json +13 -0
  273. package/plugins/{db-agent → db-connector}/hooks/guardrails.json +4 -2
  274. package/plugins/{aws-agent → db-connector}/hooks/hooks.json +15 -11
  275. package/plugins/{db-agent → db-connector}/package.json +1 -1
  276. package/plugins/db-connector/plugin-config.json +5 -0
  277. package/plugins/{db-agent/skills/db-agent → db-connector/skills/db-connector}/SKILL.md +5 -5
  278. package/plugins/{gcp-agent → gcp-connector}/.claude-plugin/plugin.json +1 -1
  279. package/plugins/{gcp-agent → gcp-connector}/README.md +5 -5
  280. package/plugins/{gcp-agent/bin/gcp-agent → gcp-connector/bin/gcp-connector} +3 -3
  281. package/plugins/gcp-connector/commands/gcp-connector.md +6 -0
  282. package/plugins/{github-agent → gcp-connector}/hooks/hooks.json +12 -11
  283. package/plugins/gcp-connector/package.json +9 -0
  284. package/plugins/gcp-connector/plugin-config.json +4 -0
  285. package/plugins/{gcp-agent/skills/gcp-agent → gcp-connector/skills/gcp-connector}/SKILL.md +5 -5
  286. package/plugins/git-connector/.claude-plugin/plugin.json +6 -0
  287. package/plugins/git-connector/CONTRIBUTING.md +117 -0
  288. package/plugins/git-connector/README.md +94 -0
  289. package/plugins/git-connector/SECURITY.md +143 -0
  290. package/plugins/git-connector/gates.json +67 -0
  291. package/plugins/git-connector/hooks/hooks.json +25 -0
  292. package/plugins/git-connector/package.json +9 -0
  293. package/plugins/git-connector/plugin-config.json +4 -0
  294. package/plugins/{github-agent → github-connector}/.claude-plugin/plugin.json +1 -1
  295. package/plugins/github-connector/README.md +48 -0
  296. package/plugins/{confluence-agent/bin/confluence-agent → github-connector/bin/github-connector} +3 -3
  297. package/plugins/github-connector/commands/github-connector.md +6 -0
  298. package/plugins/github-connector/hooks/hooks.json +50 -0
  299. package/plugins/{jira-agent → github-connector}/package.json +1 -1
  300. package/plugins/github-connector/plugin-config.json +4 -0
  301. package/plugins/github-connector/skills/github-connector/SKILL.md +106 -0
  302. package/plugins/gitlab-connector/.claude-plugin/plugin.json +6 -0
  303. package/plugins/gitlab-connector/README.md +62 -0
  304. package/plugins/{db-agent/bin/db-agent → gitlab-connector/bin/gitlab-connector} +3 -3
  305. package/plugins/gitlab-connector/commands/gitlab-connector.md +6 -0
  306. package/plugins/gitlab-connector/gates.json +18 -0
  307. package/plugins/gitlab-connector/hooks/hooks.json +50 -0
  308. package/plugins/{confluence-agent → gitlab-connector}/package.json +1 -1
  309. package/plugins/gitlab-connector/plugin-config.json +4 -0
  310. package/plugins/gitlab-connector/skills/gitlab-connector/SKILL.md +115 -0
  311. package/plugins/jira-connector/.claude-plugin/plugin.json +6 -0
  312. package/plugins/{jira-agent → jira-connector}/README.md +1 -1
  313. package/plugins/{jira-agent/bin/jira-agent → jira-connector/bin/jira-connector} +2 -2
  314. package/plugins/jira-connector/commands/jira-connector.md +6 -0
  315. package/plugins/jira-connector/gates.json +12 -0
  316. package/plugins/jira-connector/hooks/hooks.json +50 -0
  317. package/plugins/{github-agent → jira-connector}/package.json +1 -1
  318. package/plugins/jira-connector/plugin-config.json +4 -0
  319. package/plugins/jira-connector/skills/jira-connector/SKILL.md +146 -0
  320. package/plugins/linear-connector/.claude-plugin/plugin.json +6 -0
  321. package/plugins/linear-connector/README.md +29 -0
  322. package/plugins/linear-connector/bin/linear-connector +17 -0
  323. package/plugins/linear-connector/commands/linear-connector.md +6 -0
  324. package/plugins/linear-connector/hooks/hooks.json +50 -0
  325. package/plugins/linear-connector/package.json +8 -0
  326. package/plugins/linear-connector/plugin-config.json +4 -0
  327. package/plugins/linear-connector/skills/linear-connector/SKILL.md +159 -0
  328. package/plugins/notion-connector/.claude-plugin/plugin.json +6 -0
  329. package/plugins/{notion-agent → notion-connector}/README.md +5 -5
  330. package/plugins/{notion-agent/bin/notion-agent → notion-connector/bin/notion-connector} +2 -2
  331. package/plugins/notion-connector/commands/notion-connector.md +6 -0
  332. package/plugins/notion-connector/hooks/hooks.json +50 -0
  333. package/plugins/notion-connector/package.json +8 -0
  334. package/plugins/notion-connector/plugin-config.json +4 -0
  335. package/plugins/notion-connector/skills/notion-connector/SKILL.md +141 -0
  336. package/dist/connectors/confluence/lib/confluence_error.d.ts +0 -13
  337. package/dist/connectors/confluence/lib/confluence_error.d.ts.map +0 -1
  338. package/dist/connectors/confluence/lib/confluence_error.js +0 -19
  339. package/dist/connectors/confluence/lib/confluence_error.js.map +0 -1
  340. package/dist/connectors/github/lib/github_error.d.ts +0 -11
  341. package/dist/connectors/github/lib/github_error.d.ts.map +0 -1
  342. package/dist/connectors/github/lib/github_error.js +0 -17
  343. package/dist/connectors/github/lib/github_error.js.map +0 -1
  344. package/dist/connectors/jira/lib/jira_error.d.ts +0 -11
  345. package/dist/connectors/jira/lib/jira_error.d.ts.map +0 -1
  346. package/dist/connectors/jira/lib/jira_error.js +0 -17
  347. package/dist/connectors/jira/lib/jira_error.js.map +0 -1
  348. package/dist/connectors/notion/lib/notion_error.d.ts +0 -12
  349. package/dist/connectors/notion/lib/notion_error.d.ts.map +0 -1
  350. package/dist/connectors/notion/lib/notion_error.js +0 -18
  351. package/dist/connectors/notion/lib/notion_error.js.map +0 -1
  352. package/plugins/aws-agent/commands/aws-agent.md +0 -6
  353. package/plugins/aws-agent/hooks/reminder.mjs +0 -16
  354. package/plugins/aws-agent/package.json +0 -9
  355. package/plugins/confluence-agent/.claude-plugin/plugin.json +0 -6
  356. package/plugins/confluence-agent/commands/confluence-agent.md +0 -6
  357. package/plugins/confluence-agent/hooks/hooks.json +0 -49
  358. package/plugins/confluence-agent/hooks/reminder.mjs +0 -25
  359. package/plugins/confluence-agent/skills/confluence-agent/SKILL.md +0 -40
  360. package/plugins/create-connector/skills/create-connector/SKILL.md +0 -252
  361. package/plugins/db-agent/commands/db-agent.md +0 -6
  362. package/plugins/db-agent/hooks/db-guard.mjs +0 -110
  363. package/plugins/db-agent/hooks/hooks.json +0 -61
  364. package/plugins/db-agent/hooks/reminder.mjs +0 -16
  365. package/plugins/gcp-agent/commands/gcp-agent.md +0 -6
  366. package/plugins/gcp-agent/hooks/reminder.mjs +0 -16
  367. package/plugins/gcp-agent/package.json +0 -9
  368. package/plugins/github-agent/README.md +0 -13
  369. package/plugins/github-agent/commands/github-agent.md +0 -6
  370. package/plugins/github-agent/hooks/reminder.mjs +0 -16
  371. package/plugins/github-agent/skills/github-agent/SKILL.md +0 -41
  372. package/plugins/jira-agent/.claude-plugin/plugin.json +0 -6
  373. package/plugins/jira-agent/commands/jira-agent.md +0 -6
  374. package/plugins/jira-agent/hooks/reminder.mjs +0 -16
  375. package/plugins/jira-agent/skills/jira-agent/SKILL.md +0 -37
  376. package/plugins/notion-agent/.claude-plugin/plugin.json +0 -6
  377. package/plugins/notion-agent/commands/notion-agent.md +0 -6
  378. package/plugins/notion-agent/hooks/hooks.json +0 -49
  379. package/plugins/notion-agent/hooks/reminder.mjs +0 -17
  380. package/plugins/notion-agent/package.json +0 -8
  381. package/plugins/notion-agent/skills/notion-agent/SKILL.md +0 -48
  382. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/assets/templates/bin.tmpl +0 -0
  383. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/assets/templates/connector-SKILL.md.tmpl +0 -0
  384. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/assets/templates/index.mjs.tmpl +0 -0
  385. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/assets/templates/tests-example.mjs.tmpl +0 -0
  386. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/action-design.md +0 -0
  387. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/auth-patterns.md +0 -0
  388. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/connector-anatomy.md +0 -0
  389. /package/plugins/{create-connector/skills/create-connector/references/db-agent-pointer.md → connector-creator/skills/connector-creator/references/db-connector-pointer.md} +0 -0
  390. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/plugin-layer.md +0 -0
  391. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/template-sync.md +0 -0
  392. /package/plugins/{create-connector/skills/create-connector → connector-creator/skills/connector-creator}/references/verification.md +0 -0
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Connector-specific runtime knobs that sit outside the toolkit's
3
+ * policy/approval YAML. Today: `require_draft_pr` — when true, every
4
+ * `create_pull_request` call is rewritten to `draft: true` regardless of
5
+ * caller input.
6
+ *
7
+ * Precedence (highest wins):
8
+ * 1. GITHUB_REQUIRE_DRAFT_PR env var
9
+ * 2. <cwd>/.github-agent/config.yaml `github.require_draft_pr`
10
+ * 3. ~/.github-agent/config.yaml `github.require_draft_pr`
11
+ * 4. default: false
12
+ *
13
+ * Replicates the toolkit's discover-and-merge pattern locally (~25
14
+ * lines) so we don't depend on internals of `toolkit/policy/config.ts`
15
+ * that aren't part of its public surface.
16
+ */
17
+ import * as fs from "node:fs";
18
+ import * as os from "node:os";
19
+ import * as path from "node:path";
20
+ import * as yaml from "js-yaml";
21
+ const TRUTHY = new Set(["1", "true", "yes"]);
22
+ const FALSY = new Set(["0", "false", "no"]);
23
+ function readYamlFile(filePath) {
24
+ if (!fs.existsSync(filePath))
25
+ return null;
26
+ const raw = fs.readFileSync(filePath, "utf-8");
27
+ const parsed = yaml.load(raw);
28
+ if (parsed === null || parsed === undefined)
29
+ return {};
30
+ if (typeof parsed !== "object" || Array.isArray(parsed)) {
31
+ throw new Error(`github config: expected a YAML mapping at root of ${filePath}, got ${Array.isArray(parsed) ? "list" : typeof parsed}`);
32
+ }
33
+ return parsed;
34
+ }
35
+ function readGithubSectionFlag(configPath, key) {
36
+ const doc = readYamlFile(configPath);
37
+ if (doc === null)
38
+ return undefined;
39
+ const section = doc["github"];
40
+ if (section === undefined)
41
+ return undefined;
42
+ if (typeof section !== "object" || section === null || Array.isArray(section)) {
43
+ throw new Error(`github config: 'github:' section in ${configPath} must be a mapping`);
44
+ }
45
+ const value = section[key];
46
+ if (value === undefined)
47
+ return undefined;
48
+ if (typeof value !== "boolean") {
49
+ throw new Error(`github config: 'github.${key}' in ${configPath} must be a boolean, got ${typeof value}`);
50
+ }
51
+ return value;
52
+ }
53
+ function parseEnvOverride(raw) {
54
+ if (raw === undefined || raw === "")
55
+ return undefined;
56
+ const v = raw.toLowerCase();
57
+ if (TRUTHY.has(v))
58
+ return true;
59
+ if (FALSY.has(v))
60
+ return false;
61
+ throw new Error(`GITHUB_REQUIRE_DRAFT_PR: expected one of 1/0/true/false/yes/no, got ${JSON.stringify(raw)}`);
62
+ }
63
+ export function loadGithubBehavior(opts = {}) {
64
+ const home = opts.home ?? os.homedir();
65
+ const cwd = opts.cwd ?? process.cwd();
66
+ const env = opts.env ?? process.env;
67
+ let requireDraftPr = false;
68
+ const userVal = readGithubSectionFlag(path.join(home, ".github-agent", "config.yaml"), "require_draft_pr");
69
+ if (userVal !== undefined)
70
+ requireDraftPr = userVal;
71
+ const repoVal = readGithubSectionFlag(path.join(cwd, ".github-agent", "config.yaml"), "require_draft_pr");
72
+ if (repoVal !== undefined)
73
+ requireDraftPr = repoVal;
74
+ const envVal = parseEnvOverride(env["GITHUB_REQUIRE_DRAFT_PR"]);
75
+ if (envVal !== undefined)
76
+ requireDraftPr = envVal;
77
+ return { requireDraftPr };
78
+ }
79
+ //# sourceMappingURL=github_config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github_config.js","sourceRoot":"","sources":["../../../../src/connectors/github/lib/github_config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Zod field schemas shared across GitLab action modules. Each constraint
3
+ * mirrors what GitLab's API expects so that errors surface at the
4
+ * connector boundary rather than as 422s from upstream.
5
+ */
6
+ import { z } from "zod";
7
+ export declare const namespaceField: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
8
+ export declare const projectField: z.ZodString;
9
+ export declare const mrIidField: z.ZodNumber;
10
+ export declare const issueIidField: z.ZodNumber;
11
+ export declare const pipelineIdField: z.ZodNumber;
12
+ export declare const jobIdField: z.ZodNumber;
13
+ export declare const noteIdField: z.ZodNumber;
14
+ export declare const linkIdField: z.ZodNumber;
15
+ export declare const releaseTagField: z.ZodString;
16
+ /** Accepts branch names, tag names, and commit SHAs. */
17
+ export declare const refField: z.ZodString;
18
+ export declare const shaField: z.ZodString;
19
+ export declare const filePathField: z.ZodEffects<z.ZodString, string, string>;
20
+ //# sourceMappingURL=_fields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_fields.d.ts","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/_fields.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,cAAc,yEAWvB,CAAC;AAEL,eAAO,MAAM,YAAY,aAKtB,CAAC;AAEJ,eAAO,MAAM,UAAU,aAAqC,CAAC;AAC7D,eAAO,MAAM,aAAa,aAAqC,CAAC;AAChE,eAAO,MAAM,eAAe,aAAqC,CAAC;AAClE,eAAO,MAAM,UAAU,aAAqC,CAAC;AAC7D,eAAO,MAAM,WAAW,aAAqC,CAAC;AAC9D,eAAO,MAAM,WAAW,aAAqC,CAAC;AAE9D,eAAO,MAAM,eAAe,aAGkB,CAAC;AAE/C,wDAAwD;AACxD,eAAO,MAAM,QAAQ,aAGyD,CAAC;AAE/E,eAAO,MAAM,QAAQ,aAEoD,CAAC;AAE1E,eAAO,MAAM,aAAa,2CAStB,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Zod field schemas shared across GitLab action modules. Each constraint
3
+ * mirrors what GitLab's API expects so that errors surface at the
4
+ * connector boundary rather than as 422s from upstream.
5
+ */
6
+ import { z } from "zod";
7
+ export const namespaceField = z
8
+ .string()
9
+ .regex(/^[a-zA-Z0-9_.-][a-zA-Z0-9_./-]*$/, "namespace: alphanumeric, dots, dashes, underscores, or slash-separated subgroups (no leading/trailing slash)")
10
+ .refine((v) => !v.includes("//"), {
11
+ message: "namespace: consecutive slashes are not allowed",
12
+ })
13
+ .refine((v) => !v.endsWith("/"), {
14
+ message: "namespace: trailing slash is not allowed",
15
+ });
16
+ export const projectField = z
17
+ .string()
18
+ .regex(/^[a-zA-Z0-9_.-]+$/, "project: alphanumeric, dots, dashes, underscores only");
19
+ export const mrIidField = z.coerce.number().int().positive();
20
+ export const issueIidField = z.coerce.number().int().positive();
21
+ export const pipelineIdField = z.coerce.number().int().positive();
22
+ export const jobIdField = z.coerce.number().int().positive();
23
+ export const noteIdField = z.coerce.number().int().positive();
24
+ export const linkIdField = z.coerce.number().int().positive();
25
+ export const releaseTagField = z
26
+ .string()
27
+ .min(1)
28
+ .regex(/^[A-Za-z0-9._/+-]+$/, "Invalid tag");
29
+ /** Accepts branch names, tag names, and commit SHAs. */
30
+ export const refField = z
31
+ .string()
32
+ .min(1)
33
+ .regex(/^[A-Za-z0-9._/+-]+$/, "Invalid ref — must be a branch, tag, or SHA");
34
+ export const shaField = z
35
+ .string()
36
+ .regex(/^[a-f0-9]{7,40}$/, "Invalid SHA — must be 7-40 hex characters");
37
+ export const filePathField = z
38
+ .string()
39
+ .min(1, "get_file requires a non-empty 'path'")
40
+ .regex(/^[a-zA-Z0-9_./ -]+$/, "Invalid path — must be a valid file path")
41
+ .refine((p) => !p.includes(".."), {
42
+ message: "Path traversal not allowed — '..' is forbidden",
43
+ });
44
+ //# sourceMappingURL=_fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_fields.js","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/_fields.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,EAAE;KACR,KAAK,CACJ,kCAAkC,EAClC,8GAA8G,CAC/G;KACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;IAChC,OAAO,EAAE,gDAAgD;CAC1D,CAAC;KACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;IAC/B,OAAO,EAAE,0CAA0C;CACpD,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KAC1B,MAAM,EAAE;KACR,KAAK,CACJ,mBAAmB,EACnB,uDAAuD,CACxD,CAAC;AAEJ,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC7D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAChE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAClE,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC7D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAC9D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAE9D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,KAAK,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;AAE/C,wDAAwD;AACxD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC;KACtB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,KAAK,CAAC,qBAAqB,EAAE,6CAA6C,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC;KACtB,MAAM,EAAE;KACR,KAAK,CAAC,kBAAkB,EAAE,2CAA2C,CAAC,CAAC;AAE1E,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC;KAC3B,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,EAAE,sCAAsC,CAAC;KAC9C,KAAK,CACJ,qBAAqB,EACrB,0CAA0C,CAC3C;KACA,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;IAChC,OAAO,EAAE,gDAAgD;CAC1D,CAAC,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Paginate a GitLab listing endpoint: walks page=1,2,3... until maxResults
3
+ * is reached or a short page terminates. Throws ConnectorError on HTTP
4
+ * errors so the factory's mapError sees the canonical code.
5
+ *
6
+ * GitLab uses X-Next-Page header for pagination, but for simplicity we use
7
+ * the same short-page-detection approach as the GitHub paginator: stop when
8
+ * the server returns fewer items than requested (last page) or when we have
9
+ * accumulated enough results (truncate).
10
+ */
11
+ import { type HttpResult } from "narai-primitives/toolkit";
12
+ export declare const GITLAB_MAX_PER_PAGE = 100;
13
+ export declare const MAX_RESULTS_DEFAULT = 30;
14
+ export declare const MAX_RESULTS_CAP = 1000;
15
+ export declare function paginateGitlab<T>(maxResults: number, fetchPage: (page: number, perPage: number) => Promise<HttpResult<T[]>>): Promise<{
16
+ items: T[];
17
+ truncated: boolean;
18
+ }>;
19
+ //# sourceMappingURL=_pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_pagination.d.ts","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/_pagination.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE7E,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,mBAAmB,KAAK,CAAC;AACtC,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,wBAAsB,cAAc,CAAC,CAAC,EACpC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GACrE,OAAO,CAAC;IAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,CAAC,CAgB7C"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Paginate a GitLab listing endpoint: walks page=1,2,3... until maxResults
3
+ * is reached or a short page terminates. Throws ConnectorError on HTTP
4
+ * errors so the factory's mapError sees the canonical code.
5
+ *
6
+ * GitLab uses X-Next-Page header for pagination, but for simplicity we use
7
+ * the same short-page-detection approach as the GitHub paginator: stop when
8
+ * the server returns fewer items than requested (last page) or when we have
9
+ * accumulated enough results (truncate).
10
+ */
11
+ import { throwIfHttpError } from "narai-primitives/toolkit";
12
+ export const GITLAB_MAX_PER_PAGE = 100;
13
+ export const MAX_RESULTS_DEFAULT = 30;
14
+ export const MAX_RESULTS_CAP = 1000;
15
+ export async function paginateGitlab(maxResults, fetchPage) {
16
+ const perPage = Math.min(GITLAB_MAX_PER_PAGE, Math.max(1, maxResults));
17
+ const acc = [];
18
+ let truncated = false;
19
+ for (let page = 1;; page++) {
20
+ const result = await fetchPage(page, perPage);
21
+ throwIfHttpError(result);
22
+ const chunk = Array.isArray(result.data) ? result.data : [];
23
+ acc.push(...chunk);
24
+ if (chunk.length < perPage)
25
+ break;
26
+ if (acc.length >= maxResults) {
27
+ truncated = true;
28
+ break;
29
+ }
30
+ }
31
+ return { items: acc.slice(0, maxResults), truncated };
32
+ }
33
+ //# sourceMappingURL=_pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_pagination.js","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/_pagination.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,gBAAgB,EAAmB,MAAM,0BAA0B,CAAC;AAE7E,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AACtC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,UAAkB,EAClB,SAAsE;IAEtE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;IACvE,MAAM,GAAG,GAAQ,EAAE,CAAC;IACpB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,KAAK,IAAI,IAAI,GAAG,CAAC,GAAI,IAAI,EAAE,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9C,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;QACnB,IAAI,KAAK,CAAC,MAAM,GAAG,OAAO;YAAE,MAAM;QAClC,IAAI,GAAG,CAAC,MAAM,IAAI,UAAU,EAAE,CAAC;YAC7B,SAAS,GAAG,IAAI,CAAC;YACjB,MAAM;QACR,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;AACxD,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Shared types used by every GitLab action-module factory.
3
+ */
4
+ import type { ActionSpec } from "narai-primitives/toolkit";
5
+ import type { GitlabBehavior } from "../lib/gitlab_config.js";
6
+ import type { GitlabClient } from "../lib/gitlab_client.js";
7
+ export type GitlabActions = Record<string, ActionSpec<any, GitlabClient>>;
8
+ export interface GitlabActionDeps {
9
+ /** Runtime knobs (require_draft_mr, host, ...). */
10
+ behavior: GitlabBehavior;
11
+ }
12
+ //# sourceMappingURL=_types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_types.d.ts","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/_types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC;AAE1E,MAAM,WAAW,gBAAgB;IAC/B,mDAAmD;IACnD,QAAQ,EAAE,cAAc,CAAC;CAC1B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=_types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_types.js","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/_types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { GitlabActionDeps, GitlabActions } from "./_types.js";
2
+ export declare function buildIssuesActions(_deps: GitlabActionDeps): GitlabActions;
3
+ //# sourceMappingURL=issues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/issues.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAqDnE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,aAAa,CAqEzE"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Issue action specs: create / update / close.
3
+ * (get_issue is in reads.ts.)
4
+ *
5
+ * update_issue's zod schema rejects state_event=close so closures are
6
+ * always routed through close_issue, which carries the delete aspect.
7
+ * Labels are accepted as string[] in the schema and joined to CSV before
8
+ * being sent to GitLab (which expects comma-separated labels).
9
+ */
10
+ import { throwIfHttpError } from "narai-primitives/toolkit";
11
+ import { z } from "zod";
12
+ import { namespaceField, projectField, issueIidField } from "./_fields.js";
13
+ const projectParams = z.object({
14
+ namespace: namespaceField,
15
+ project: projectField,
16
+ });
17
+ const createIssueParams = projectParams.extend({
18
+ title: z.string().min(1),
19
+ description: z.string().optional(),
20
+ assignee_ids: z.array(z.number().int().positive()).optional(),
21
+ labels: z.array(z.string()).optional(),
22
+ milestone_id: z.number().int().positive().optional(),
23
+ due_date: z.string().optional(),
24
+ });
25
+ const updateIssueParams = projectParams.extend({
26
+ iid: issueIidField,
27
+ title: z.string().min(1).optional(),
28
+ description: z.string().optional(),
29
+ assignee_ids: z.array(z.number().int().positive()).optional(),
30
+ labels: z.array(z.string()).optional(),
31
+ milestone_id: z.number().int().positive().optional(),
32
+ due_date: z.string().optional(),
33
+ state_event: z
34
+ .enum(["reopen"], {
35
+ errorMap: () => ({
36
+ message: "update_issue only accepts state_event=reopen. Use close_issue to close.",
37
+ }),
38
+ })
39
+ .optional(),
40
+ });
41
+ const closeIssueParams = projectParams.extend({
42
+ iid: issueIidField,
43
+ });
44
+ function issueEnvelope(d) {
45
+ return {
46
+ iid: d.iid,
47
+ title: d.title,
48
+ state: d.state,
49
+ author: d.author?.username ?? "",
50
+ description: d.description ?? "",
51
+ labels: d.labels ?? [],
52
+ web_url: d.web_url ?? "",
53
+ updated_at: d.updated_at ?? null,
54
+ };
55
+ }
56
+ export function buildIssuesActions(_deps) {
57
+ return {
58
+ create_issue: {
59
+ description: "Create a new issue in a GitLab project",
60
+ params: createIssueParams,
61
+ classify: { kind: "write" },
62
+ handler: async (p, ctx) => {
63
+ const body = { title: p.title };
64
+ if (p.description !== undefined)
65
+ body.description = p.description;
66
+ if (p.assignee_ids !== undefined)
67
+ body.assignee_ids = p.assignee_ids;
68
+ if (p.labels !== undefined)
69
+ body.labels = p.labels.join(",");
70
+ if (p.milestone_id !== undefined)
71
+ body.milestone_id = p.milestone_id;
72
+ if (p.due_date !== undefined)
73
+ body.due_date = p.due_date;
74
+ const r = await ctx.sdk.createIssue(p.namespace, p.project, body);
75
+ throwIfHttpError(r);
76
+ return issueEnvelope(r.data);
77
+ },
78
+ },
79
+ update_issue: {
80
+ description: "Update a GitLab issue. Accepts state_event=reopen to reopen. Closing is a separate action.",
81
+ params: updateIssueParams,
82
+ classify: { kind: "write" },
83
+ handler: async (p, ctx) => {
84
+ const body = {};
85
+ if (p.title !== undefined)
86
+ body.title = p.title;
87
+ if (p.description !== undefined)
88
+ body.description = p.description;
89
+ if (p.assignee_ids !== undefined)
90
+ body.assignee_ids = p.assignee_ids;
91
+ if (p.labels !== undefined)
92
+ body.labels = p.labels.join(",");
93
+ if (p.milestone_id !== undefined)
94
+ body.milestone_id = p.milestone_id;
95
+ if (p.due_date !== undefined)
96
+ body.due_date = p.due_date;
97
+ if (p.state_event !== undefined)
98
+ body.state_event = p.state_event;
99
+ const r = await ctx.sdk.updateIssue(p.namespace, p.project, p.iid, body);
100
+ throwIfHttpError(r);
101
+ return issueEnvelope(r.data);
102
+ },
103
+ },
104
+ close_issue: {
105
+ description: "Close a GitLab issue (does not delete; REST has no hard-delete).",
106
+ params: closeIssueParams,
107
+ classify: { kind: "write", aspects: ["delete"] },
108
+ handler: async (p, ctx) => {
109
+ const r = await ctx.sdk.closeIssue(p.namespace, p.project, p.iid);
110
+ throwIfHttpError(r);
111
+ return {
112
+ ...issueEnvelope(r.data),
113
+ closed: true,
114
+ };
115
+ },
116
+ },
117
+ };
118
+ }
119
+ //# sourceMappingURL=issues.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/issues.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { GitlabActionDeps, GitlabActions } from "./_types.js";
2
+ export declare function buildMergesActions(deps: GitlabActionDeps): GitlabActions;
3
+ //# sourceMappingURL=merges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merges.d.ts","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/merges.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAmFnE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,aAAa,CAwHxE"}
@@ -0,0 +1,198 @@
1
+ /**
2
+ * Merge-request action specs: create / update / close / merge.
3
+ *
4
+ * Classification:
5
+ * - create_merge_request : write (require_draft_mr forces draft=true)
6
+ * - update_merge_request : write (schema rejects state_event=close)
7
+ * - close_merge_request : write + delete aspect
8
+ * - merge_merge_request : admin (operator opt-in via YAML)
9
+ *
10
+ * 405/406/409-on-merge: GitLab returns these when the MR is not in a
11
+ * mergeable state, pipeline gate fails, or the SHA changed. We surface
12
+ * them as a VALIDATION_ERROR via the CONFLICT code (mapped in Task 9).
13
+ */
14
+ import { ConnectorError, throwIfHttpError } from "narai-primitives/toolkit";
15
+ import { z } from "zod";
16
+ import { namespaceField, projectField, mrIidField, refField, shaField, } from "./_fields.js";
17
+ const createMrParams = z.object({
18
+ namespace: namespaceField,
19
+ project: projectField,
20
+ source_branch: refField,
21
+ target_branch: refField,
22
+ title: z.string().min(1),
23
+ description: z.string().optional(),
24
+ assignee_ids: z.array(z.number().int().positive()).optional(),
25
+ reviewer_ids: z.array(z.number().int().positive()).optional(),
26
+ labels: z.string().optional(),
27
+ milestone_id: z.number().int().positive().optional(),
28
+ remove_source_branch: z.boolean().optional(),
29
+ squash: z.boolean().optional(),
30
+ draft: z.boolean().default(false),
31
+ });
32
+ const updateMrParams = z.object({
33
+ namespace: namespaceField,
34
+ project: projectField,
35
+ mr_iid: mrIidField,
36
+ title: z.string().min(1).optional(),
37
+ description: z.string().optional(),
38
+ target_branch: refField.optional(),
39
+ assignee_ids: z.array(z.number().int().positive()).optional(),
40
+ reviewer_ids: z.array(z.number().int().positive()).optional(),
41
+ labels: z.string().optional(),
42
+ milestone_id: z.number().int().positive().optional(),
43
+ state_event: z
44
+ .enum(["reopen"], {
45
+ errorMap: () => ({
46
+ message: "update_merge_request only accepts state_event=reopen. Use close_merge_request to close.",
47
+ }),
48
+ })
49
+ .optional(),
50
+ remove_source_branch: z.boolean().optional(),
51
+ squash: z.boolean().optional(),
52
+ });
53
+ const closeMrParams = z.object({
54
+ namespace: namespaceField,
55
+ project: projectField,
56
+ mr_iid: mrIidField,
57
+ });
58
+ const mergeMrParams = z.object({
59
+ namespace: namespaceField,
60
+ project: projectField,
61
+ mr_iid: mrIidField,
62
+ merge_commit_message: z.string().optional(),
63
+ squash_commit_message: z.string().optional(),
64
+ should_remove_source_branch: z.boolean().optional(),
65
+ merge_when_pipeline_succeeds: z.boolean().optional(),
66
+ sha: shaField.optional(),
67
+ squash: z.boolean().optional(),
68
+ });
69
+ function mrEnvelope(d) {
70
+ return {
71
+ iid: d.iid,
72
+ title: d.title,
73
+ state: d.state,
74
+ draft: d.draft ?? false,
75
+ author: d.author?.username ?? "",
76
+ source_branch: d.source_branch ?? "",
77
+ target_branch: d.target_branch ?? "",
78
+ sha: d.sha ?? "",
79
+ description: d.description ?? "",
80
+ url: d.web_url ?? "",
81
+ updated_at: d.updated_at ?? null,
82
+ };
83
+ }
84
+ export function buildMergesActions(deps) {
85
+ return {
86
+ create_merge_request: {
87
+ description: "Open a new merge request. Honors the require_draft_mr config knob.",
88
+ params: createMrParams,
89
+ classify: { kind: "write" },
90
+ handler: async (p, ctx) => {
91
+ const requestedDraft = p.draft;
92
+ const draftToUse = deps.behavior.requireDraftMr ? true : requestedDraft;
93
+ const body = {
94
+ source_branch: p.source_branch,
95
+ target_branch: p.target_branch,
96
+ title: p.title,
97
+ draft: draftToUse,
98
+ };
99
+ if (p.description !== undefined)
100
+ body.description = p.description;
101
+ if (p.assignee_ids !== undefined)
102
+ body.assignee_ids = p.assignee_ids;
103
+ if (p.reviewer_ids !== undefined)
104
+ body.reviewer_ids = p.reviewer_ids;
105
+ if (p.labels !== undefined)
106
+ body.labels = p.labels;
107
+ if (p.milestone_id !== undefined)
108
+ body.milestone_id = p.milestone_id;
109
+ if (p.remove_source_branch !== undefined)
110
+ body.remove_source_branch = p.remove_source_branch;
111
+ if (p.squash !== undefined)
112
+ body.squash = p.squash;
113
+ const r = await ctx.sdk.createMergeRequest(p.namespace, p.project, body);
114
+ throwIfHttpError(r);
115
+ const envelope = mrEnvelope(r.data);
116
+ if (deps.behavior.requireDraftMr && !requestedDraft) {
117
+ return { ...envelope, draft_forced_by_config: true };
118
+ }
119
+ return envelope;
120
+ },
121
+ },
122
+ update_merge_request: {
123
+ description: "Update title, description, target_branch, or set state_event=reopen. Closing is a separate action.",
124
+ params: updateMrParams,
125
+ classify: { kind: "write" },
126
+ handler: async (p, ctx) => {
127
+ const body = {};
128
+ if (p.title !== undefined)
129
+ body.title = p.title;
130
+ if (p.description !== undefined)
131
+ body.description = p.description;
132
+ if (p.target_branch !== undefined)
133
+ body.target_branch = p.target_branch;
134
+ if (p.assignee_ids !== undefined)
135
+ body.assignee_ids = p.assignee_ids;
136
+ if (p.reviewer_ids !== undefined)
137
+ body.reviewer_ids = p.reviewer_ids;
138
+ if (p.labels !== undefined)
139
+ body.labels = p.labels;
140
+ if (p.milestone_id !== undefined)
141
+ body.milestone_id = p.milestone_id;
142
+ if (p.state_event !== undefined)
143
+ body.state_event = p.state_event;
144
+ if (p.remove_source_branch !== undefined)
145
+ body.remove_source_branch = p.remove_source_branch;
146
+ if (p.squash !== undefined)
147
+ body.squash = p.squash;
148
+ const r = await ctx.sdk.updateMergeRequest(p.namespace, p.project, p.mr_iid, body);
149
+ throwIfHttpError(r);
150
+ return mrEnvelope(r.data);
151
+ },
152
+ },
153
+ close_merge_request: {
154
+ description: "Close a merge request.",
155
+ params: closeMrParams,
156
+ classify: { kind: "write", aspects: ["delete"] },
157
+ handler: async (p, ctx) => {
158
+ const r = await ctx.sdk.closeMergeRequest(p.namespace, p.project, p.mr_iid);
159
+ throwIfHttpError(r);
160
+ return { ...mrEnvelope(r.data), closed: true };
161
+ },
162
+ },
163
+ merge_merge_request: {
164
+ description: "Merge a merge request. Admin-classified — operator must opt in via config.",
165
+ params: mergeMrParams,
166
+ classify: { kind: "admin" },
167
+ handler: async (p, ctx) => {
168
+ const body = {};
169
+ if (p.merge_commit_message !== undefined)
170
+ body.merge_commit_message = p.merge_commit_message;
171
+ if (p.squash_commit_message !== undefined)
172
+ body.squash_commit_message = p.squash_commit_message;
173
+ if (p.should_remove_source_branch !== undefined)
174
+ body.should_remove_source_branch = p.should_remove_source_branch;
175
+ if (p.merge_when_pipeline_succeeds !== undefined)
176
+ body.merge_when_pipeline_succeeds = p.merge_when_pipeline_succeeds;
177
+ if (p.sha !== undefined)
178
+ body.sha = p.sha;
179
+ if (p.squash !== undefined)
180
+ body.squash = p.squash;
181
+ const r = await ctx.sdk.mergeMergeRequest(p.namespace, p.project, p.mr_iid, body);
182
+ if (!r.ok && (r.status === 405 || r.status === 406 || r.status === 409)) {
183
+ throw new ConnectorError("CONFLICT", `merge_merge_request: MR not mergeable (${r.message})`, false);
184
+ }
185
+ throwIfHttpError(r);
186
+ return {
187
+ namespace: p.namespace,
188
+ project: p.project,
189
+ mr_iid: p.mr_iid,
190
+ merged: r.data.merged,
191
+ merge_sha: r.data.sha,
192
+ message: r.data.message,
193
+ };
194
+ },
195
+ },
196
+ };
197
+ }
198
+ //# sourceMappingURL=merges.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"merges.js","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/merges.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { GitlabActionDeps, GitlabActions } from "./_types.js";
2
+ export declare function buildNotesActions(_deps: GitlabActionDeps): GitlabActions;
3
+ //# sourceMappingURL=notes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notes.d.ts","sourceRoot":"","sources":["../../../../src/connectors/gitlab/actions/notes.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAiFnE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,gBAAgB,GAAG,aAAa,CAiFxE"}