narai-primitives 2.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +64 -0
  3. package/dist/config/bootstrap.d.ts +28 -0
  4. package/dist/config/bootstrap.d.ts.map +1 -0
  5. package/dist/config/bootstrap.js +80 -0
  6. package/dist/config/bootstrap.js.map +1 -0
  7. package/dist/config/index.d.ts +13 -0
  8. package/dist/config/index.d.ts.map +1 -0
  9. package/dist/config/index.js +12 -0
  10. package/dist/config/index.js.map +1 -0
  11. package/dist/config/load.d.ts +37 -0
  12. package/dist/config/load.d.ts.map +1 -0
  13. package/dist/config/load.js +99 -0
  14. package/dist/config/load.js.map +1 -0
  15. package/dist/config/resolve.d.ts +23 -0
  16. package/dist/config/resolve.d.ts.map +1 -0
  17. package/dist/config/resolve.js +198 -0
  18. package/dist/config/resolve.js.map +1 -0
  19. package/dist/config/secrets.d.ts +20 -0
  20. package/dist/config/secrets.d.ts.map +1 -0
  21. package/dist/config/secrets.js +43 -0
  22. package/dist/config/secrets.js.map +1 -0
  23. package/dist/config/types.d.ts +104 -0
  24. package/dist/config/types.d.ts.map +1 -0
  25. package/dist/config/types.js +11 -0
  26. package/dist/config/types.js.map +1 -0
  27. package/dist/connectors/aws/cli.d.ts +3 -0
  28. package/dist/connectors/aws/cli.d.ts.map +1 -0
  29. package/dist/connectors/aws/cli.js +27 -0
  30. package/dist/connectors/aws/cli.js.map +1 -0
  31. package/dist/connectors/aws/index.d.ts +27 -0
  32. package/dist/connectors/aws/index.d.ts.map +1 -0
  33. package/dist/connectors/aws/index.js +281 -0
  34. package/dist/connectors/aws/index.js.map +1 -0
  35. package/dist/connectors/aws/lib/aws_client.d.ts +140 -0
  36. package/dist/connectors/aws/lib/aws_client.d.ts.map +1 -0
  37. package/dist/connectors/aws/lib/aws_client.js +196 -0
  38. package/dist/connectors/aws/lib/aws_client.js.map +1 -0
  39. package/dist/connectors/aws/lib/aws_error.d.ts +10 -0
  40. package/dist/connectors/aws/lib/aws_error.d.ts.map +1 -0
  41. package/dist/connectors/aws/lib/aws_error.js +15 -0
  42. package/dist/connectors/aws/lib/aws_error.js.map +1 -0
  43. package/dist/connectors/confluence/cli.d.ts +3 -0
  44. package/dist/connectors/confluence/cli.d.ts.map +1 -0
  45. package/dist/connectors/confluence/cli.js +24 -0
  46. package/dist/connectors/confluence/cli.js.map +1 -0
  47. package/dist/connectors/confluence/index.d.ts +15 -0
  48. package/dist/connectors/confluence/index.d.ts.map +1 -0
  49. package/dist/connectors/confluence/index.js +295 -0
  50. package/dist/connectors/confluence/index.js.map +1 -0
  51. package/dist/connectors/confluence/lib/confluence_client.d.ts +135 -0
  52. package/dist/connectors/confluence/lib/confluence_client.d.ts.map +1 -0
  53. package/dist/connectors/confluence/lib/confluence_client.js +329 -0
  54. package/dist/connectors/confluence/lib/confluence_client.js.map +1 -0
  55. package/dist/connectors/confluence/lib/confluence_error.d.ts +13 -0
  56. package/dist/connectors/confluence/lib/confluence_error.d.ts.map +1 -0
  57. package/dist/connectors/confluence/lib/confluence_error.js +19 -0
  58. package/dist/connectors/confluence/lib/confluence_error.js.map +1 -0
  59. package/dist/connectors/db/cli.d.ts +5 -0
  60. package/dist/connectors/db/cli.d.ts.map +1 -0
  61. package/dist/connectors/db/cli.js +34 -0
  62. package/dist/connectors/db/cli.js.map +1 -0
  63. package/dist/connectors/db/config.d.ts +18 -0
  64. package/dist/connectors/db/config.d.ts.map +1 -0
  65. package/dist/connectors/db/config.js +142 -0
  66. package/dist/connectors/db/config.js.map +1 -0
  67. package/dist/connectors/db/connector.d.ts +31 -0
  68. package/dist/connectors/db/connector.d.ts.map +1 -0
  69. package/dist/connectors/db/connector.js +175 -0
  70. package/dist/connectors/db/connector.js.map +1 -0
  71. package/dist/connectors/db/dispatcher.d.ts +36 -0
  72. package/dist/connectors/db/dispatcher.d.ts.map +1 -0
  73. package/dist/connectors/db/dispatcher.js +597 -0
  74. package/dist/connectors/db/dispatcher.js.map +1 -0
  75. package/dist/connectors/db/index.d.ts +22 -0
  76. package/dist/connectors/db/index.d.ts.map +1 -0
  77. package/dist/connectors/db/index.js +26 -0
  78. package/dist/connectors/db/index.js.map +1 -0
  79. package/dist/connectors/db/lib/audit.d.ts +32 -0
  80. package/dist/connectors/db/lib/audit.d.ts.map +1 -0
  81. package/dist/connectors/db/lib/audit.js +130 -0
  82. package/dist/connectors/db/lib/audit.js.map +1 -0
  83. package/dist/connectors/db/lib/connection.d.ts +61 -0
  84. package/dist/connectors/db/lib/connection.d.ts.map +1 -0
  85. package/dist/connectors/db/lib/connection.js +326 -0
  86. package/dist/connectors/db/lib/connection.js.map +1 -0
  87. package/dist/connectors/db/lib/credentials.d.ts +60 -0
  88. package/dist/connectors/db/lib/credentials.d.ts.map +1 -0
  89. package/dist/connectors/db/lib/credentials.js +117 -0
  90. package/dist/connectors/db/lib/credentials.js.map +1 -0
  91. package/dist/connectors/db/lib/drivers/base.d.ts +83 -0
  92. package/dist/connectors/db/lib/drivers/base.d.ts.map +1 -0
  93. package/dist/connectors/db/lib/drivers/base.js +46 -0
  94. package/dist/connectors/db/lib/drivers/base.js.map +1 -0
  95. package/dist/connectors/db/lib/drivers/dynamodb.d.ts +108 -0
  96. package/dist/connectors/db/lib/drivers/dynamodb.d.ts.map +1 -0
  97. package/dist/connectors/db/lib/drivers/dynamodb.js +468 -0
  98. package/dist/connectors/db/lib/drivers/dynamodb.js.map +1 -0
  99. package/dist/connectors/db/lib/drivers/mongodb.d.ts +60 -0
  100. package/dist/connectors/db/lib/drivers/mongodb.d.ts.map +1 -0
  101. package/dist/connectors/db/lib/drivers/mongodb.js +371 -0
  102. package/dist/connectors/db/lib/drivers/mongodb.js.map +1 -0
  103. package/dist/connectors/db/lib/drivers/mysql.d.ts +45 -0
  104. package/dist/connectors/db/lib/drivers/mysql.d.ts.map +1 -0
  105. package/dist/connectors/db/lib/drivers/mysql.js +265 -0
  106. package/dist/connectors/db/lib/drivers/mysql.js.map +1 -0
  107. package/dist/connectors/db/lib/drivers/oracle.d.ts +53 -0
  108. package/dist/connectors/db/lib/drivers/oracle.d.ts.map +1 -0
  109. package/dist/connectors/db/lib/drivers/oracle.js +350 -0
  110. package/dist/connectors/db/lib/drivers/oracle.js.map +1 -0
  111. package/dist/connectors/db/lib/drivers/postgresql.d.ts +65 -0
  112. package/dist/connectors/db/lib/drivers/postgresql.d.ts.map +1 -0
  113. package/dist/connectors/db/lib/drivers/postgresql.js +294 -0
  114. package/dist/connectors/db/lib/drivers/postgresql.js.map +1 -0
  115. package/dist/connectors/db/lib/drivers/register.d.ts +16 -0
  116. package/dist/connectors/db/lib/drivers/register.d.ts.map +1 -0
  117. package/dist/connectors/db/lib/drivers/register.js +111 -0
  118. package/dist/connectors/db/lib/drivers/register.js.map +1 -0
  119. package/dist/connectors/db/lib/drivers/sqlite.d.ts +11 -0
  120. package/dist/connectors/db/lib/drivers/sqlite.d.ts.map +1 -0
  121. package/dist/connectors/db/lib/drivers/sqlite.js +147 -0
  122. package/dist/connectors/db/lib/drivers/sqlite.js.map +1 -0
  123. package/dist/connectors/db/lib/drivers/sqlserver.d.ts +58 -0
  124. package/dist/connectors/db/lib/drivers/sqlserver.d.ts.map +1 -0
  125. package/dist/connectors/db/lib/drivers/sqlserver.js +274 -0
  126. package/dist/connectors/db/lib/drivers/sqlserver.js.map +1 -0
  127. package/dist/connectors/db/lib/environments.d.ts +68 -0
  128. package/dist/connectors/db/lib/environments.d.ts.map +1 -0
  129. package/dist/connectors/db/lib/environments.js +53 -0
  130. package/dist/connectors/db/lib/environments.js.map +1 -0
  131. package/dist/connectors/db/lib/index.d.ts +28 -0
  132. package/dist/connectors/db/lib/index.d.ts.map +1 -0
  133. package/dist/connectors/db/lib/index.js +30 -0
  134. package/dist/connectors/db/lib/index.js.map +1 -0
  135. package/dist/connectors/db/lib/plugin_config.d.ts +64 -0
  136. package/dist/connectors/db/lib/plugin_config.d.ts.map +1 -0
  137. package/dist/connectors/db/lib/plugin_config.js +287 -0
  138. package/dist/connectors/db/lib/plugin_config.js.map +1 -0
  139. package/dist/connectors/db/lib/policy.d.ts +162 -0
  140. package/dist/connectors/db/lib/policy.d.ts.map +1 -0
  141. package/dist/connectors/db/lib/policy.js +581 -0
  142. package/dist/connectors/db/lib/policy.js.map +1 -0
  143. package/dist/connectors/db/lib/query.d.ts +22 -0
  144. package/dist/connectors/db/lib/query.d.ts.map +1 -0
  145. package/dist/connectors/db/lib/query.js +93 -0
  146. package/dist/connectors/db/lib/query.js.map +1 -0
  147. package/dist/connectors/db/lib/schema.d.ts +13 -0
  148. package/dist/connectors/db/lib/schema.d.ts.map +1 -0
  149. package/dist/connectors/db/lib/schema.js +80 -0
  150. package/dist/connectors/db/lib/schema.js.map +1 -0
  151. package/dist/connectors/gcp/cli.d.ts +3 -0
  152. package/dist/connectors/gcp/cli.d.ts.map +1 -0
  153. package/dist/connectors/gcp/cli.js +24 -0
  154. package/dist/connectors/gcp/cli.js.map +1 -0
  155. package/dist/connectors/gcp/index.d.ts +24 -0
  156. package/dist/connectors/gcp/index.d.ts.map +1 -0
  157. package/dist/connectors/gcp/index.js +205 -0
  158. package/dist/connectors/gcp/index.js.map +1 -0
  159. package/dist/connectors/gcp/lib/gcp_client.d.ts +88 -0
  160. package/dist/connectors/gcp/lib/gcp_client.d.ts.map +1 -0
  161. package/dist/connectors/gcp/lib/gcp_client.js +434 -0
  162. package/dist/connectors/gcp/lib/gcp_client.js.map +1 -0
  163. package/dist/connectors/gcp/lib/gcp_error.d.ts +10 -0
  164. package/dist/connectors/gcp/lib/gcp_error.d.ts.map +1 -0
  165. package/dist/connectors/gcp/lib/gcp_error.js +15 -0
  166. package/dist/connectors/gcp/lib/gcp_error.js.map +1 -0
  167. package/dist/connectors/github/cli.d.ts +3 -0
  168. package/dist/connectors/github/cli.d.ts.map +1 -0
  169. package/dist/connectors/github/cli.js +23 -0
  170. package/dist/connectors/github/cli.js.map +1 -0
  171. package/dist/connectors/github/index.d.ts +23 -0
  172. package/dist/connectors/github/index.d.ts.map +1 -0
  173. package/dist/connectors/github/index.js +462 -0
  174. package/dist/connectors/github/index.js.map +1 -0
  175. package/dist/connectors/github/lib/github_client.d.ts +181 -0
  176. package/dist/connectors/github/lib/github_client.d.ts.map +1 -0
  177. package/dist/connectors/github/lib/github_client.js +383 -0
  178. package/dist/connectors/github/lib/github_client.js.map +1 -0
  179. package/dist/connectors/github/lib/github_error.d.ts +11 -0
  180. package/dist/connectors/github/lib/github_error.d.ts.map +1 -0
  181. package/dist/connectors/github/lib/github_error.js +17 -0
  182. package/dist/connectors/github/lib/github_error.js.map +1 -0
  183. package/dist/connectors/jira/cli.d.ts +3 -0
  184. package/dist/connectors/jira/cli.d.ts.map +1 -0
  185. package/dist/connectors/jira/cli.js +24 -0
  186. package/dist/connectors/jira/cli.js.map +1 -0
  187. package/dist/connectors/jira/index.d.ts +13 -0
  188. package/dist/connectors/jira/index.d.ts.map +1 -0
  189. package/dist/connectors/jira/index.js +287 -0
  190. package/dist/connectors/jira/index.js.map +1 -0
  191. package/dist/connectors/jira/lib/adf.d.ts +25 -0
  192. package/dist/connectors/jira/lib/adf.d.ts.map +1 -0
  193. package/dist/connectors/jira/lib/adf.js +105 -0
  194. package/dist/connectors/jira/lib/adf.js.map +1 -0
  195. package/dist/connectors/jira/lib/jira_client.d.ts +143 -0
  196. package/dist/connectors/jira/lib/jira_client.d.ts.map +1 -0
  197. package/dist/connectors/jira/lib/jira_client.js +355 -0
  198. package/dist/connectors/jira/lib/jira_client.js.map +1 -0
  199. package/dist/connectors/jira/lib/jira_error.d.ts +11 -0
  200. package/dist/connectors/jira/lib/jira_error.d.ts.map +1 -0
  201. package/dist/connectors/jira/lib/jira_error.js +17 -0
  202. package/dist/connectors/jira/lib/jira_error.js.map +1 -0
  203. package/dist/connectors/notion/cli.d.ts +3 -0
  204. package/dist/connectors/notion/cli.d.ts.map +1 -0
  205. package/dist/connectors/notion/cli.js +22 -0
  206. package/dist/connectors/notion/cli.js.map +1 -0
  207. package/dist/connectors/notion/index.d.ts +20 -0
  208. package/dist/connectors/notion/index.d.ts.map +1 -0
  209. package/dist/connectors/notion/index.js +317 -0
  210. package/dist/connectors/notion/index.js.map +1 -0
  211. package/dist/connectors/notion/lib/notion_client.d.ts +117 -0
  212. package/dist/connectors/notion/lib/notion_client.d.ts.map +1 -0
  213. package/dist/connectors/notion/lib/notion_client.js +377 -0
  214. package/dist/connectors/notion/lib/notion_client.js.map +1 -0
  215. package/dist/connectors/notion/lib/notion_error.d.ts +12 -0
  216. package/dist/connectors/notion/lib/notion_error.d.ts.map +1 -0
  217. package/dist/connectors/notion/lib/notion_error.js +18 -0
  218. package/dist/connectors/notion/lib/notion_error.js.map +1 -0
  219. package/dist/hub/cli.d.ts +4 -0
  220. package/dist/hub/cli.d.ts.map +1 -0
  221. package/dist/hub/cli.js +93 -0
  222. package/dist/hub/cli.js.map +1 -0
  223. package/dist/hub/dispatch.d.ts +33 -0
  224. package/dist/hub/dispatch.d.ts.map +1 -0
  225. package/dist/hub/dispatch.js +297 -0
  226. package/dist/hub/dispatch.js.map +1 -0
  227. package/dist/hub/index.d.ts +9 -0
  228. package/dist/hub/index.d.ts.map +1 -0
  229. package/dist/hub/index.js +215 -0
  230. package/dist/hub/index.js.map +1 -0
  231. package/dist/hub/plan.d.ts +24 -0
  232. package/dist/hub/plan.d.ts.map +1 -0
  233. package/dist/hub/plan.js +103 -0
  234. package/dist/hub/plan.js.map +1 -0
  235. package/dist/hub/types.d.ts +65 -0
  236. package/dist/hub/types.d.ts.map +1 -0
  237. package/dist/hub/types.js +3 -0
  238. package/dist/hub/types.js.map +1 -0
  239. package/dist/toolkit/_optional.d.ts +14 -0
  240. package/dist/toolkit/_optional.d.ts.map +1 -0
  241. package/dist/toolkit/_optional.js +96 -0
  242. package/dist/toolkit/_optional.js.map +1 -0
  243. package/dist/toolkit/agent_cli.d.ts +33 -0
  244. package/dist/toolkit/agent_cli.d.ts.map +1 -0
  245. package/dist/toolkit/agent_cli.js +62 -0
  246. package/dist/toolkit/agent_cli.js.map +1 -0
  247. package/dist/toolkit/agent_resolver.d.ts +46 -0
  248. package/dist/toolkit/agent_resolver.d.ts.map +1 -0
  249. package/dist/toolkit/agent_resolver.js +78 -0
  250. package/dist/toolkit/agent_resolver.js.map +1 -0
  251. package/dist/toolkit/audit/events.d.ts +45 -0
  252. package/dist/toolkit/audit/events.d.ts.map +1 -0
  253. package/dist/toolkit/audit/events.js +8 -0
  254. package/dist/toolkit/audit/events.js.map +1 -0
  255. package/dist/toolkit/audit/writer.d.ts +16 -0
  256. package/dist/toolkit/audit/writer.d.ts.map +1 -0
  257. package/dist/toolkit/audit/writer.js +73 -0
  258. package/dist/toolkit/audit/writer.js.map +1 -0
  259. package/dist/toolkit/cli/usage-report.d.ts +3 -0
  260. package/dist/toolkit/cli/usage-report.d.ts.map +1 -0
  261. package/dist/toolkit/cli/usage-report.js +76 -0
  262. package/dist/toolkit/cli/usage-report.js.map +1 -0
  263. package/dist/toolkit/connector.d.ts +142 -0
  264. package/dist/toolkit/connector.d.ts.map +1 -0
  265. package/dist/toolkit/connector.js +593 -0
  266. package/dist/toolkit/connector.js.map +1 -0
  267. package/dist/toolkit/extract_binary.d.ts +45 -0
  268. package/dist/toolkit/extract_binary.d.ts.map +1 -0
  269. package/dist/toolkit/extract_binary.js +342 -0
  270. package/dist/toolkit/extract_binary.js.map +1 -0
  271. package/dist/toolkit/extract_multimodal.d.ts +22 -0
  272. package/dist/toolkit/extract_multimodal.d.ts.map +1 -0
  273. package/dist/toolkit/extract_multimodal.js +209 -0
  274. package/dist/toolkit/extract_multimodal.js.map +1 -0
  275. package/dist/toolkit/fetch_attachment.d.ts +21 -0
  276. package/dist/toolkit/fetch_attachment.d.ts.map +1 -0
  277. package/dist/toolkit/fetch_attachment.js +169 -0
  278. package/dist/toolkit/fetch_attachment.js.map +1 -0
  279. package/dist/toolkit/fetch_helper.d.ts +47 -0
  280. package/dist/toolkit/fetch_helper.d.ts.map +1 -0
  281. package/dist/toolkit/fetch_helper.js +124 -0
  282. package/dist/toolkit/fetch_helper.js.map +1 -0
  283. package/dist/toolkit/guardrail.d.ts +63 -0
  284. package/dist/toolkit/guardrail.d.ts.map +1 -0
  285. package/dist/toolkit/guardrail.js +166 -0
  286. package/dist/toolkit/guardrail.js.map +1 -0
  287. package/dist/toolkit/hardship/curate.d.ts +47 -0
  288. package/dist/toolkit/hardship/curate.d.ts.map +1 -0
  289. package/dist/toolkit/hardship/curate.js +113 -0
  290. package/dist/toolkit/hardship/curate.js.map +1 -0
  291. package/dist/toolkit/hardship/patterns.d.ts +32 -0
  292. package/dist/toolkit/hardship/patterns.d.ts.map +1 -0
  293. package/dist/toolkit/hardship/patterns.js +98 -0
  294. package/dist/toolkit/hardship/patterns.js.map +1 -0
  295. package/dist/toolkit/hardship/preamble.d.ts +13 -0
  296. package/dist/toolkit/hardship/preamble.d.ts.map +1 -0
  297. package/dist/toolkit/hardship/preamble.js +47 -0
  298. package/dist/toolkit/hardship/preamble.js.map +1 -0
  299. package/dist/toolkit/hardship/read.d.ts +34 -0
  300. package/dist/toolkit/hardship/read.d.ts.map +1 -0
  301. package/dist/toolkit/hardship/read.js +116 -0
  302. package/dist/toolkit/hardship/read.js.map +1 -0
  303. package/dist/toolkit/hardship/record.d.ts +43 -0
  304. package/dist/toolkit/hardship/record.d.ts.map +1 -0
  305. package/dist/toolkit/hardship/record.js +74 -0
  306. package/dist/toolkit/hardship/record.js.map +1 -0
  307. package/dist/toolkit/hardship/scope.d.ts +20 -0
  308. package/dist/toolkit/hardship/scope.d.ts.map +1 -0
  309. package/dist/toolkit/hardship/scope.js +56 -0
  310. package/dist/toolkit/hardship/scope.js.map +1 -0
  311. package/dist/toolkit/index.d.ts +42 -0
  312. package/dist/toolkit/index.d.ts.map +1 -0
  313. package/dist/toolkit/index.js +51 -0
  314. package/dist/toolkit/index.js.map +1 -0
  315. package/dist/toolkit/plugin/curate-cmd.d.ts +22 -0
  316. package/dist/toolkit/plugin/curate-cmd.d.ts.map +1 -0
  317. package/dist/toolkit/plugin/curate-cmd.js +72 -0
  318. package/dist/toolkit/plugin/curate-cmd.js.map +1 -0
  319. package/dist/toolkit/plugin/prefs.d.ts +15 -0
  320. package/dist/toolkit/plugin/prefs.d.ts.map +1 -0
  321. package/dist/toolkit/plugin/prefs.js +78 -0
  322. package/dist/toolkit/plugin/prefs.js.map +1 -0
  323. package/dist/toolkit/plugin/reminder.d.ts +28 -0
  324. package/dist/toolkit/plugin/reminder.d.ts.map +1 -0
  325. package/dist/toolkit/plugin/reminder.js +103 -0
  326. package/dist/toolkit/plugin/reminder.js.map +1 -0
  327. package/dist/toolkit/policy/approval.d.ts +24 -0
  328. package/dist/toolkit/policy/approval.d.ts.map +1 -0
  329. package/dist/toolkit/policy/approval.js +56 -0
  330. package/dist/toolkit/policy/approval.js.map +1 -0
  331. package/dist/toolkit/policy/config.d.ts +38 -0
  332. package/dist/toolkit/policy/config.d.ts.map +1 -0
  333. package/dist/toolkit/policy/config.js +172 -0
  334. package/dist/toolkit/policy/config.js.map +1 -0
  335. package/dist/toolkit/policy/gate.d.ts +28 -0
  336. package/dist/toolkit/policy/gate.d.ts.map +1 -0
  337. package/dist/toolkit/policy/gate.js +126 -0
  338. package/dist/toolkit/policy/gate.js.map +1 -0
  339. package/dist/toolkit/policy/types.d.ts +106 -0
  340. package/dist/toolkit/policy/types.d.ts.map +1 -0
  341. package/dist/toolkit/policy/types.js +22 -0
  342. package/dist/toolkit/policy/types.js.map +1 -0
  343. package/dist/toolkit/security_check.d.ts +15 -0
  344. package/dist/toolkit/security_check.d.ts.map +1 -0
  345. package/dist/toolkit/security_check.js +109 -0
  346. package/dist/toolkit/security_check.js.map +1 -0
  347. package/dist/toolkit/usage/aggregate-cross-session.d.ts +36 -0
  348. package/dist/toolkit/usage/aggregate-cross-session.d.ts.map +1 -0
  349. package/dist/toolkit/usage/aggregate-cross-session.js +142 -0
  350. package/dist/toolkit/usage/aggregate-cross-session.js.map +1 -0
  351. package/dist/toolkit/usage/aggregate.d.ts +4 -0
  352. package/dist/toolkit/usage/aggregate.d.ts.map +1 -0
  353. package/dist/toolkit/usage/aggregate.js +105 -0
  354. package/dist/toolkit/usage/aggregate.js.map +1 -0
  355. package/dist/toolkit/usage/index.d.ts +11 -0
  356. package/dist/toolkit/usage/index.d.ts.map +1 -0
  357. package/dist/toolkit/usage/index.js +7 -0
  358. package/dist/toolkit/usage/index.js.map +1 -0
  359. package/dist/toolkit/usage/parse.d.ts +5 -0
  360. package/dist/toolkit/usage/parse.d.ts.map +1 -0
  361. package/dist/toolkit/usage/parse.js +19 -0
  362. package/dist/toolkit/usage/parse.js.map +1 -0
  363. package/dist/toolkit/usage/record.d.ts +8 -0
  364. package/dist/toolkit/usage/record.d.ts.map +1 -0
  365. package/dist/toolkit/usage/record.js +18 -0
  366. package/dist/toolkit/usage/record.js.map +1 -0
  367. package/dist/toolkit/usage/retention.d.ts +6 -0
  368. package/dist/toolkit/usage/retention.d.ts.map +1 -0
  369. package/dist/toolkit/usage/retention.js +71 -0
  370. package/dist/toolkit/usage/retention.js.map +1 -0
  371. package/dist/toolkit/usage/tokenize.d.ts +11 -0
  372. package/dist/toolkit/usage/tokenize.d.ts.map +1 -0
  373. package/dist/toolkit/usage/tokenize.js +24 -0
  374. package/dist/toolkit/usage/tokenize.js.map +1 -0
  375. package/dist/toolkit/usage/types.d.ts +34 -0
  376. package/dist/toolkit/usage/types.d.ts.map +1 -0
  377. package/dist/toolkit/usage/types.js +2 -0
  378. package/dist/toolkit/usage/types.js.map +1 -0
  379. package/package.json +124 -0
  380. package/plugin-hooks/session-summary.mjs +138 -0
  381. package/plugin-hooks/stale-summarize.mjs +70 -0
  382. package/plugin-hooks/usage-record.mjs +112 -0
  383. package/plugins/aws-agent/.claude-plugin/plugin.json +6 -0
  384. package/plugins/aws-agent/README.md +46 -0
  385. package/plugins/aws-agent/bin/aws-agent +22 -0
  386. package/plugins/aws-agent/commands/aws-agent.md +6 -0
  387. package/plugins/aws-agent/hooks/hooks.json +49 -0
  388. package/plugins/aws-agent/hooks/reminder.mjs +16 -0
  389. package/plugins/aws-agent/package.json +9 -0
  390. package/plugins/aws-agent/skills/aws-agent/SKILL.md +70 -0
  391. package/plugins/confluence-agent/.claude-plugin/plugin.json +6 -0
  392. package/plugins/confluence-agent/README.md +15 -0
  393. package/plugins/confluence-agent/bin/confluence-agent +17 -0
  394. package/plugins/confluence-agent/commands/confluence-agent.md +6 -0
  395. package/plugins/confluence-agent/hooks/hooks.json +49 -0
  396. package/plugins/confluence-agent/hooks/reminder.mjs +25 -0
  397. package/plugins/confluence-agent/package.json +8 -0
  398. package/plugins/confluence-agent/skills/confluence-agent/SKILL.md +40 -0
  399. package/plugins/db-agent/.claude-plugin/plugin.json +20 -0
  400. package/plugins/db-agent/README.md +13 -0
  401. package/plugins/db-agent/bin/db-agent +17 -0
  402. package/plugins/db-agent/commands/db-agent.md +6 -0
  403. package/plugins/db-agent/hooks/db-guard.mjs +110 -0
  404. package/plugins/db-agent/hooks/guardrails.json +26 -0
  405. package/plugins/db-agent/hooks/hooks.json +61 -0
  406. package/plugins/db-agent/hooks/reminder.mjs +16 -0
  407. package/plugins/db-agent/package.json +8 -0
  408. package/plugins/db-agent/skills/db-agent/SKILL.md +50 -0
  409. package/plugins/gcp-agent/.claude-plugin/plugin.json +6 -0
  410. package/plugins/gcp-agent/README.md +31 -0
  411. package/plugins/gcp-agent/bin/gcp-agent +18 -0
  412. package/plugins/gcp-agent/commands/gcp-agent.md +6 -0
  413. package/plugins/gcp-agent/hooks/hooks.json +49 -0
  414. package/plugins/gcp-agent/hooks/reminder.mjs +16 -0
  415. package/plugins/gcp-agent/package.json +9 -0
  416. package/plugins/gcp-agent/skills/gcp-agent/SKILL.md +54 -0
  417. package/plugins/github-agent/.claude-plugin/plugin.json +6 -0
  418. package/plugins/github-agent/README.md +13 -0
  419. package/plugins/github-agent/bin/github-agent +17 -0
  420. package/plugins/github-agent/commands/github-agent.md +6 -0
  421. package/plugins/github-agent/hooks/hooks.json +49 -0
  422. package/plugins/github-agent/hooks/reminder.mjs +16 -0
  423. package/plugins/github-agent/package.json +8 -0
  424. package/plugins/github-agent/skills/github-agent/SKILL.md +41 -0
  425. package/plugins/jira-agent/.claude-plugin/plugin.json +6 -0
  426. package/plugins/jira-agent/README.md +15 -0
  427. package/plugins/jira-agent/bin/jira-agent +17 -0
  428. package/plugins/jira-agent/commands/jira-agent.md +6 -0
  429. package/plugins/jira-agent/hooks/hooks.json +49 -0
  430. package/plugins/jira-agent/hooks/reminder.mjs +16 -0
  431. package/plugins/jira-agent/package.json +8 -0
  432. package/plugins/jira-agent/skills/jira-agent/SKILL.md +37 -0
  433. package/plugins/notion-agent/.claude-plugin/plugin.json +6 -0
  434. package/plugins/notion-agent/README.md +23 -0
  435. package/plugins/notion-agent/bin/notion-agent +17 -0
  436. package/plugins/notion-agent/commands/notion-agent.md +6 -0
  437. package/plugins/notion-agent/hooks/hooks.json +49 -0
  438. package/plugins/notion-agent/hooks/reminder.mjs +17 -0
  439. package/plugins/notion-agent/package.json +8 -0
  440. package/plugins/notion-agent/skills/notion-agent/SKILL.md +48 -0
@@ -0,0 +1,434 @@
1
+ /**
2
+ * gcp_client.ts — read-only GCP facade that shells out to `gcloud` / `bq`
3
+ * with Application Default Credentials.
4
+ *
5
+ * Security notes:
6
+ * - Uses `execFileSync` — **never** a shell string — so arguments are not
7
+ * word-split or glob-expanded.
8
+ * - Enforces a whitelist of permitted commands; anything else raises.
9
+ * - Validates project IDs and flag values against conservative regexes.
10
+ * - Read-only flags enforced at the argv level: for example `bq query`
11
+ * always runs with `--use_legacy_sql=false --max_rows=…`.
12
+ */
13
+ import { execFileSync, } from "node:child_process";
14
+ const DEFAULT_CONNECT_TIMEOUT_MS = 10_000;
15
+ const DEFAULT_READ_TIMEOUT_MS = 30_000;
16
+ const DEFAULT_RATE_LIMIT_PER_MIN = 60;
17
+ const ALLOWED_BINARIES = new Set(["gcloud", "bq"]);
18
+ // Only these sub-commands may be invoked by the client.
19
+ const ALLOWED_SUBCOMMANDS = new Set([
20
+ "gcloud services list",
21
+ "gcloud sql instances describe",
22
+ "gcloud pubsub topics list",
23
+ "gcloud logging read",
24
+ "bq query",
25
+ ]);
26
+ const PROJECT_ID_SAFE = /^[a-z][a-z0-9-]{4,28}[a-z0-9]$/;
27
+ const ALPHANUM_DASH = /^[a-zA-Z0-9._-]+$/;
28
+ export class GcpClient {
29
+ _rateLimitPerMin;
30
+ _connectTimeoutMs;
31
+ _readTimeoutMs;
32
+ _runner;
33
+ _sleep;
34
+ _timestamps = [];
35
+ _defaultProjectId = null;
36
+ _defaultRegion = null;
37
+ constructor(opts = {}) {
38
+ this._rateLimitPerMin = opts.rateLimitPerMin ?? DEFAULT_RATE_LIMIT_PER_MIN;
39
+ this._connectTimeoutMs = opts.connectTimeoutMs ?? DEFAULT_CONNECT_TIMEOUT_MS;
40
+ this._readTimeoutMs = opts.readTimeoutMs ?? DEFAULT_READ_TIMEOUT_MS;
41
+ this._runner = opts.runner ?? execFileSync;
42
+ this._sleep =
43
+ opts.sleepImpl ??
44
+ ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));
45
+ this._defaultProjectId = opts.defaultProjectId ?? null;
46
+ this._defaultRegion = opts.defaultRegion ?? null;
47
+ }
48
+ get defaultProjectId() {
49
+ return this._defaultProjectId;
50
+ }
51
+ get defaultRegion() {
52
+ return this._defaultRegion;
53
+ }
54
+ async _throttle() {
55
+ const now = Date.now();
56
+ const cutoff = now - 60_000;
57
+ this._timestamps = this._timestamps.filter((t) => t > cutoff);
58
+ if (this._timestamps.length >= this._rateLimitPerMin) {
59
+ const oldest = this._timestamps[0] ?? now;
60
+ const waitMs = Math.max(0, 60_000 - (now - oldest));
61
+ if (waitMs > 0)
62
+ await this._sleep(waitMs);
63
+ this._timestamps = this._timestamps.filter((t) => t > Date.now() - 60_000);
64
+ }
65
+ this._timestamps.push(Date.now());
66
+ }
67
+ _run(binary, subcommand, args) {
68
+ if (!ALLOWED_BINARIES.has(binary)) {
69
+ return {
70
+ ok: false,
71
+ code: "FORBIDDEN_BINARY",
72
+ message: `Binary ${binary} is not permitted`,
73
+ retriable: false,
74
+ };
75
+ }
76
+ if (!ALLOWED_SUBCOMMANDS.has(`${binary} ${subcommand}`)) {
77
+ return {
78
+ ok: false,
79
+ code: "FORBIDDEN_COMMAND",
80
+ message: `Command not whitelisted: ${binary} ${subcommand}`,
81
+ retriable: false,
82
+ };
83
+ }
84
+ // Block shell metacharacters in every arg — execFile avoids the shell
85
+ // but a belt-and-braces validation short-circuits any future leakage.
86
+ //
87
+ // `bq query` accepts the SQL body as the final positional argument;
88
+ // that content is validated at the call site (bqQuery) and may
89
+ // legitimately contain `;` inside string literals or as a single
90
+ // trailing terminator, so we skip the blocklist for it specifically.
91
+ const isBqQuery = binary === "bq" && subcommand === "query";
92
+ const lastIndex = args.length - 1;
93
+ for (let idx = 0; idx < args.length; idx++) {
94
+ if (isBqQuery && idx === lastIndex)
95
+ continue;
96
+ const arg = args[idx] ?? "";
97
+ if (/[;|&`$<>\n]/.test(arg)) {
98
+ return {
99
+ ok: false,
100
+ code: "UNSAFE_ARG",
101
+ message: `Refusing unsafe argument: ${arg}`,
102
+ retriable: false,
103
+ };
104
+ }
105
+ }
106
+ try {
107
+ const stdout = this._runner(binary, [...subcommand.split(" "), ...args], {
108
+ encoding: "utf-8",
109
+ timeout: this._connectTimeoutMs + this._readTimeoutMs,
110
+ maxBuffer: 16 * 1024 * 1024,
111
+ });
112
+ return { ok: true, data: stdout };
113
+ }
114
+ catch (err) {
115
+ const raw = err instanceof Error ? err.message : String(err);
116
+ // gcloud failures mostly come back from execFileSync as the entire stderr
117
+ // appended to a "Command failed: ..." preamble. Pull out the bit users
118
+ // actually want, classify common auth/credential failures separately
119
+ // from generic exec errors, and trim the noise.
120
+ return classifyGcloudError(raw);
121
+ }
122
+ }
123
+ async listServices(projectId) {
124
+ if (!PROJECT_ID_SAFE.test(projectId)) {
125
+ return {
126
+ ok: false,
127
+ code: "INVALID_PROJECT",
128
+ message: `Invalid project_id '${projectId}'`,
129
+ retriable: false,
130
+ };
131
+ }
132
+ await this._throttle();
133
+ const raw = this._run("gcloud", "services list", [
134
+ "--project",
135
+ projectId,
136
+ "--enabled",
137
+ "--format=json",
138
+ ]);
139
+ if (!raw.ok)
140
+ return raw;
141
+ return parseJsonArray(raw.data);
142
+ }
143
+ async describeSqlInstance(projectId, instanceId) {
144
+ if (!PROJECT_ID_SAFE.test(projectId)) {
145
+ return {
146
+ ok: false,
147
+ code: "INVALID_PROJECT",
148
+ message: `Invalid project_id '${projectId}'`,
149
+ retriable: false,
150
+ };
151
+ }
152
+ if (!ALPHANUM_DASH.test(instanceId)) {
153
+ return {
154
+ ok: false,
155
+ code: "INVALID_INSTANCE",
156
+ message: `Invalid instance_id '${instanceId}'`,
157
+ retriable: false,
158
+ };
159
+ }
160
+ await this._throttle();
161
+ const raw = this._run("gcloud", "sql instances describe", [
162
+ instanceId,
163
+ "--project",
164
+ projectId,
165
+ "--format=json",
166
+ ]);
167
+ if (!raw.ok)
168
+ return raw;
169
+ return parseJsonObject(raw.data);
170
+ }
171
+ async listPubsubTopics(projectId) {
172
+ if (!PROJECT_ID_SAFE.test(projectId)) {
173
+ return {
174
+ ok: false,
175
+ code: "INVALID_PROJECT",
176
+ message: `Invalid project_id '${projectId}'`,
177
+ retriable: false,
178
+ };
179
+ }
180
+ await this._throttle();
181
+ const raw = this._run("gcloud", "pubsub topics list", [
182
+ "--project",
183
+ projectId,
184
+ "--format=json",
185
+ ]);
186
+ if (!raw.ok)
187
+ return raw;
188
+ return parseJsonArray(raw.data);
189
+ }
190
+ async queryLogs(projectId, filter, hours, maxResults) {
191
+ if (!PROJECT_ID_SAFE.test(projectId)) {
192
+ return {
193
+ ok: false,
194
+ code: "INVALID_PROJECT",
195
+ message: `Invalid project_id '${projectId}'`,
196
+ retriable: false,
197
+ };
198
+ }
199
+ if (/[;'"\n]/.test(filter)) {
200
+ return {
201
+ ok: false,
202
+ code: "INVALID_FILTER",
203
+ message: "Filter contains forbidden characters",
204
+ retriable: false,
205
+ };
206
+ }
207
+ if (!Number.isFinite(hours) || hours <= 0 || hours > 168) {
208
+ return {
209
+ ok: false,
210
+ code: "INVALID_FILTER",
211
+ message: "hours must be in (0, 168]",
212
+ retriable: false,
213
+ };
214
+ }
215
+ await this._throttle();
216
+ const raw = this._run("gcloud", "logging read", [
217
+ filter,
218
+ "--project",
219
+ projectId,
220
+ "--limit",
221
+ String(Math.min(Math.max(1, Math.trunc(maxResults)), 1000)),
222
+ "--freshness",
223
+ `${Math.trunc(hours)}h`,
224
+ "--format=json",
225
+ ]);
226
+ if (!raw.ok)
227
+ return raw;
228
+ return parseJsonArray(raw.data);
229
+ }
230
+ async bqQuery(projectId, sql, maxRows) {
231
+ if (!PROJECT_ID_SAFE.test(projectId)) {
232
+ return {
233
+ ok: false,
234
+ code: "INVALID_PROJECT",
235
+ message: `Invalid project_id '${projectId}'`,
236
+ retriable: false,
237
+ };
238
+ }
239
+ if (!/^\s*SELECT\b/i.test(sql)) {
240
+ return {
241
+ ok: false,
242
+ code: "WRITE_FORBIDDEN",
243
+ message: "Only SELECT statements are permitted",
244
+ retriable: false,
245
+ };
246
+ }
247
+ // Reject multi-statement scripts. BigQuery accepts scripts like
248
+ // `SELECT 1; DROP TABLE x` when `--use_legacy_sql=false`, so a
249
+ // SELECT-prefix check alone is not enough. Strip quoted string
250
+ // literals first so legitimate semicolons inside strings pass.
251
+ const stripped = stripSqlStringLiterals(sql);
252
+ const trailingStripped = stripped.replace(/\s*;\s*$/, "");
253
+ if (trailingStripped.includes(";")) {
254
+ return {
255
+ ok: false,
256
+ code: "WRITE_FORBIDDEN",
257
+ message: "Multi-statement scripts are not permitted",
258
+ retriable: false,
259
+ };
260
+ }
261
+ await this._throttle();
262
+ const raw = this._run("bq", "query", [
263
+ `--project_id=${projectId}`,
264
+ "--use_legacy_sql=false",
265
+ `--max_rows=${Math.max(1, Math.trunc(maxRows))}`,
266
+ "--format=json",
267
+ "--quiet",
268
+ sql,
269
+ ]);
270
+ if (!raw.ok)
271
+ return raw;
272
+ const parsed = parseJsonArray(raw.data);
273
+ if (!parsed.ok)
274
+ return parsed;
275
+ return { ok: true, data: { rows: parsed.data, row_count: parsed.data.length } };
276
+ }
277
+ }
278
+ function parseJsonArray(raw) {
279
+ try {
280
+ const trimmed = raw.trim() || "[]";
281
+ const parsed = JSON.parse(trimmed);
282
+ if (!Array.isArray(parsed)) {
283
+ return {
284
+ ok: false,
285
+ code: "PARSE_ERROR",
286
+ message: "Expected JSON array from gcloud output",
287
+ retriable: false,
288
+ };
289
+ }
290
+ return { ok: true, data: parsed };
291
+ }
292
+ catch (err) {
293
+ return {
294
+ ok: false,
295
+ code: "PARSE_ERROR",
296
+ message: `Failed to parse JSON: ${err.message}`,
297
+ retriable: false,
298
+ };
299
+ }
300
+ }
301
+ function parseJsonObject(raw) {
302
+ try {
303
+ const parsed = JSON.parse(raw.trim());
304
+ if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
305
+ return {
306
+ ok: false,
307
+ code: "PARSE_ERROR",
308
+ message: "Expected JSON object from gcloud output",
309
+ retriable: false,
310
+ };
311
+ }
312
+ return { ok: true, data: parsed };
313
+ }
314
+ catch (err) {
315
+ return {
316
+ ok: false,
317
+ code: "PARSE_ERROR",
318
+ message: `Failed to parse JSON: ${err.message}`,
319
+ retriable: false,
320
+ };
321
+ }
322
+ }
323
+ /**
324
+ * Replace SQL string literals with empty markers so downstream semicolon
325
+ * detection ignores any `;` that lives inside a quoted string.
326
+ * Handles single-quoted, double-quoted, and backtick-quoted runs; SQL-style
327
+ * `''` / `""` escapes are consumed as part of the enclosing literal.
328
+ */
329
+ function stripSqlStringLiterals(sql) {
330
+ let out = "";
331
+ let i = 0;
332
+ while (i < sql.length) {
333
+ const ch = sql[i];
334
+ if (ch === "'" || ch === '"' || ch === "`") {
335
+ const quote = ch;
336
+ i++;
337
+ while (i < sql.length) {
338
+ if (sql[i] === quote) {
339
+ if (sql[i + 1] === quote) {
340
+ i += 2;
341
+ continue;
342
+ }
343
+ i++;
344
+ break;
345
+ }
346
+ if (sql[i] === "\\" && i + 1 < sql.length) {
347
+ i += 2;
348
+ continue;
349
+ }
350
+ i++;
351
+ }
352
+ out += " ";
353
+ continue;
354
+ }
355
+ out += ch;
356
+ i++;
357
+ }
358
+ return out;
359
+ }
360
+ /**
361
+ * Classify a raw error message from `gcloud` (as surfaced by execFileSync).
362
+ *
363
+ * `gcloud` writes structured ERROR lines to stderr — Node's execFileSync
364
+ * appends them to a "Command failed: …" preamble. The raw message is
365
+ * actionable for an interactive operator but verbose for an envelope:
366
+ * we'd rather emit a stable code (`AUTH_ERROR` / `NOT_FOUND` / `TIMEOUT` /
367
+ * `EXEC_ERROR`) and a normalized one-line message that points at the fix.
368
+ */
369
+ function classifyGcloudError(raw) {
370
+ if (/timeout/i.test(raw)) {
371
+ return { ok: false, code: "TIMEOUT", message: "gcloud command timed out", retriable: true };
372
+ }
373
+ // Auth failures — the most common gcloud failure mode and the one most worth
374
+ // distinguishing from a generic "exec error". gcloud emits stable phrases:
375
+ // "You do not currently have an active account selected"
376
+ // "Reauthentication required"
377
+ // "Your credentials are invalid"
378
+ // "Application Default Credentials are not available"
379
+ if (/do not currently have an active account/i.test(raw) ||
380
+ /reauthentication/i.test(raw) ||
381
+ /credentials are invalid/i.test(raw) ||
382
+ /Application Default Credentials are not available/i.test(raw) ||
383
+ /Could not load (the )?default credentials/i.test(raw)) {
384
+ return {
385
+ ok: false,
386
+ code: "AUTH_ERROR",
387
+ message: "gcloud is not authenticated. Run `gcloud auth application-default login` or set GOOGLE_APPLICATION_CREDENTIALS.",
388
+ retriable: false,
389
+ };
390
+ }
391
+ // Not-found surfaces with stable strings as well — `(NOT_FOUND)` or
392
+ // "was not found" or "does not exist".
393
+ if (/\(NOT_FOUND\)|was not found|does not exist/i.test(raw)) {
394
+ const summary = (raw.split("\n").find((l) => /ERROR|NOT_FOUND/.test(l)) ?? "").trim();
395
+ return {
396
+ ok: false,
397
+ code: "NOT_FOUND",
398
+ message: summary || "gcloud reported NOT_FOUND",
399
+ retriable: false,
400
+ };
401
+ }
402
+ // Permission / quota / rate-limit
403
+ if (/PERMISSION_DENIED|forbidden/i.test(raw)) {
404
+ return { ok: false, code: "PERMISSION_DENIED", message: "gcloud reports permission denied", retriable: false };
405
+ }
406
+ if (/RATE_LIMIT|quota exceeded|RESOURCE_EXHAUSTED/i.test(raw)) {
407
+ return { ok: false, code: "RATE_LIMITED", message: "gcloud reports rate limit / quota exhausted", retriable: true };
408
+ }
409
+ // Generic fallback: keep the first ERROR line, drop the "Command failed: …"
410
+ // preamble. If no ERROR line, take the last non-empty line.
411
+ const lines = raw.split("\n").map((l) => l.trim()).filter(Boolean);
412
+ const errLine = lines.find((l) => l.startsWith("ERROR")) ?? lines[lines.length - 1] ?? raw;
413
+ return {
414
+ ok: false,
415
+ code: "EXEC_ERROR",
416
+ message: errLine.length > 240 ? errLine.slice(0, 237) + "…" : errLine,
417
+ retriable: /ECONNRESET/i.test(raw),
418
+ };
419
+ }
420
+ /** Detect whether gcloud/bq are available on PATH. Returns `null` on detection failure. */
421
+ export function detectGcloudAvailable(runner = execFileSync) {
422
+ try {
423
+ runner("gcloud", ["--version"], {
424
+ encoding: "utf-8",
425
+ timeout: 5000,
426
+ maxBuffer: 1024 * 1024,
427
+ });
428
+ return true;
429
+ }
430
+ catch {
431
+ return false;
432
+ }
433
+ }
434
+ //# sourceMappingURL=gcp_client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gcp_client.js","sourceRoot":"","sources":["../../../../src/connectors/gcp/lib/gcp_client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Bridges GcpClient's `{ok: false, code, ...}` result shape to the
3
+ * handler-throws-an-Error contract the factory expects.
4
+ */
5
+ export declare class GcpCliError extends Error {
6
+ readonly code: string;
7
+ readonly retriable: boolean;
8
+ constructor(code: string, message: string, retriable: boolean);
9
+ }
10
+ //# sourceMappingURL=gcp_error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gcp_error.d.ts","sourceRoot":"","sources":["../../../../src/connectors/gcp/lib/gcp_error.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,WAAY,SAAQ,KAAK;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;gBAEhB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;CAM9D"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Bridges GcpClient's `{ok: false, code, ...}` result shape to the
3
+ * handler-throws-an-Error contract the factory expects.
4
+ */
5
+ export class GcpCliError extends Error {
6
+ code;
7
+ retriable;
8
+ constructor(code, message, retriable) {
9
+ super(message);
10
+ this.name = "GcpCliError";
11
+ this.code = code;
12
+ this.retriable = retriable;
13
+ }
14
+ }
15
+ //# sourceMappingURL=gcp_error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gcp_error.js","sourceRoot":"","sources":["../../../../src/connectors/gcp/lib/gcp_error.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,IAAI,CAAS;IACb,SAAS,CAAU;IAE5B,YAAY,IAAY,EAAE,OAAe,EAAE,SAAkB;QAC3D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/connectors/github/cli.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Thin bin entry. Library code lives in index.ts.
4
+ *
5
+ * Reads `~/.connectors/config.yaml` (or `NARAI_CONFIG_BLOB`, when injected
6
+ * by `@narai/connector-hub`) before `main()` runs and applies any configured
7
+ * GitHub token / default owner to `process.env`. Existing exports win —
8
+ * the bootstrap only fills in undefined entries.
9
+ */
10
+ import { loadConnectorEnvironment } from "narai-primitives/config";
11
+ import connector from "./index.js";
12
+ const GITHUB_ENV_MAPPING = {
13
+ token: "GITHUB_TOKEN",
14
+ owner: "GITHUB_OWNER",
15
+ };
16
+ async function run() {
17
+ await loadConnectorEnvironment("github", { envMapping: GITHUB_ENV_MAPPING });
18
+ return connector.main(process.argv.slice(2));
19
+ }
20
+ void run().then((code) => {
21
+ process.exit(code);
22
+ });
23
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/connectors/github/cli.ts"],"names":[],"mappings":";AACA;;;;;;;GAOG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,MAAM,kBAAkB,GAA2B;IACjD,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,cAAc;CACtB,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,MAAM,wBAAwB,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC7E,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;IACvB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { type Connector } from "narai-primitives/toolkit";
2
+ import { GithubClient } from "./lib/github_client.js";
3
+ export interface BuildOptions {
4
+ sdk?: () => Promise<GithubClient>;
5
+ credentials?: () => Promise<Record<string, unknown>>;
6
+ }
7
+ /**
8
+ * Scope callback installed into the toolkit config. Returns
9
+ * `${host}/${defaultOwner}` when a tenant owner is configured, otherwise
10
+ * `null` (global tier). Exported for unit testing.
11
+ */
12
+ export declare function githubScope(ctx: {
13
+ sdk: GithubClient;
14
+ action: string;
15
+ params: unknown;
16
+ }): string | null;
17
+ export declare function buildGithubConnector(overrides?: BuildOptions): Connector;
18
+ declare const connector: Connector;
19
+ export default connector;
20
+ export declare const main: (argv: readonly string[]) => Promise<number>, fetch: (action: string, params: unknown) => Promise<import("narai-primitives/toolkit").Envelope>, validActions: ReadonlySet<string>;
21
+ export { GithubClient, loadGithubCredentials, type GithubClientOptions, type GithubResult, } from "./lib/github_client.js";
22
+ export { GithubError } from "./lib/github_error.js";
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/connectors/github/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAKL,KAAK,SAAS,EAEf,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,YAAY,EAGb,MAAM,wBAAwB,CAAC;AAyKhC,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACtD;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE;IAC/B,GAAG,EAAE,YAAY,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB,GAAG,MAAM,GAAG,IAAI,CAIhB;AAED,wBAAgB,oBAAoB,CAAC,SAAS,GAAE,YAAiB,GAAG,SAAS,CAiV5E;AAGD,QAAA,MAAM,SAAS,WAAyB,CAAC;AACzC,eAAe,SAAS,CAAC;AACzB,eAAO,MAAQ,IAAI,gDAAE,KAAK,6FAAE,YAAY,qBAAc,CAAC;AAEvD,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,YAAY,GAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC"}