@commandable/integration-data 0.4.0 → 0.4.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 (665) hide show
  1. package/dist/credentials-index.d.ts +7 -2
  2. package/dist/credentials-index.d.ts.map +1 -1
  3. package/dist/credentials-index.js +677 -11
  4. package/dist/credentials-index.js.map +1 -1
  5. package/dist/index.d.ts +2 -2
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/loader.d.ts +119 -1
  10. package/dist/loader.d.ts.map +1 -1
  11. package/dist/loader.js +178 -63
  12. package/dist/loader.js.map +1 -1
  13. package/dist/tools.d.ts +1 -1
  14. package/dist/tools.d.ts.map +1 -1
  15. package/integrations/README.md +52 -0
  16. package/integrations/__tests__/liveHarness.ts +97 -0
  17. package/integrations/__tests__/usageParity.ts +54 -0
  18. package/integrations/airtable/.env.test.example +11 -0
  19. package/integrations/airtable/README.md +27 -0
  20. package/integrations/airtable/__tests__/get_handlers.test.ts +187 -0
  21. package/integrations/airtable/__tests__/usage_parity.test.ts +9 -0
  22. package/integrations/airtable/__tests__/write_and_admin_handlers.test.ts +116 -0
  23. package/integrations/airtable/credentials.json +26 -0
  24. package/integrations/airtable/credentials_hint.md +4 -0
  25. package/integrations/airtable/handlers/create_record.js +12 -0
  26. package/integrations/airtable/handlers/delete_record.js +7 -0
  27. package/integrations/airtable/handlers/get_record.js +4 -0
  28. package/integrations/airtable/handlers/get_table_schema.js +6 -0
  29. package/integrations/airtable/handlers/list_bases.js +4 -0
  30. package/integrations/airtable/handlers/list_records.js +25 -0
  31. package/integrations/airtable/handlers/list_table_fields.js +6 -0
  32. package/integrations/airtable/handlers/list_tables.js +4 -0
  33. package/integrations/airtable/handlers/list_views.js +6 -0
  34. package/integrations/airtable/handlers/search_records.js +6 -0
  35. package/integrations/airtable/handlers/update_record.js +11 -0
  36. package/integrations/airtable/manifest.json +84 -0
  37. package/integrations/airtable/schemas/create_record.json +12 -0
  38. package/integrations/airtable/schemas/delete_record.json +11 -0
  39. package/integrations/airtable/schemas/empty.json +6 -0
  40. package/integrations/airtable/schemas/get_record.json +11 -0
  41. package/integrations/airtable/schemas/id_base.json +9 -0
  42. package/integrations/airtable/schemas/id_base_table.json +10 -0
  43. package/integrations/airtable/schemas/list_records.json +26 -0
  44. package/integrations/airtable/schemas/search_records.json +12 -0
  45. package/integrations/airtable/schemas/update_record.json +13 -0
  46. package/integrations/confluence/.env.test.example +36 -0
  47. package/integrations/confluence/README.md +28 -0
  48. package/integrations/confluence/__tests__/get_handlers.test.ts +121 -0
  49. package/integrations/confluence/__tests__/usage_parity.test.ts +14 -0
  50. package/integrations/confluence/__tests__/write_handlers.test.ts +131 -0
  51. package/integrations/confluence/credentials.json +39 -0
  52. package/integrations/confluence/credentials_hint.md +4 -0
  53. package/integrations/confluence/credentials_hint_api_token.md +9 -0
  54. package/integrations/confluence/credentials_hint_oauth_token.md +8 -0
  55. package/integrations/confluence/handlers/add_comment.js +19 -0
  56. package/integrations/confluence/handlers/add_label.js +16 -0
  57. package/integrations/confluence/handlers/create_page.js +22 -0
  58. package/integrations/confluence/handlers/delete_page.js +17 -0
  59. package/integrations/confluence/handlers/get_comments.js +33 -0
  60. package/integrations/confluence/handlers/get_page_children.js +30 -0
  61. package/integrations/confluence/handlers/get_space.js +22 -0
  62. package/integrations/confluence/handlers/list_spaces.js +39 -0
  63. package/integrations/confluence/handlers/read_page.js +49 -0
  64. package/integrations/confluence/handlers/search_pages.js +42 -0
  65. package/integrations/confluence/handlers/update_page.js +42 -0
  66. package/integrations/confluence/manifest.json +85 -0
  67. package/integrations/confluence/prompt.md +55 -0
  68. package/integrations/confluence/schemas/add_comment.json +22 -0
  69. package/integrations/confluence/schemas/add_label.json +19 -0
  70. package/integrations/confluence/schemas/create_page.json +33 -0
  71. package/integrations/confluence/schemas/delete_page.json +23 -0
  72. package/integrations/confluence/schemas/empty.json +6 -0
  73. package/integrations/confluence/schemas/get_comments.json +24 -0
  74. package/integrations/confluence/schemas/get_page_children.json +28 -0
  75. package/integrations/confluence/schemas/get_space.json +18 -0
  76. package/integrations/confluence/schemas/list_spaces.json +36 -0
  77. package/integrations/confluence/schemas/read_page.json +28 -0
  78. package/integrations/confluence/schemas/search_pages.json +26 -0
  79. package/integrations/confluence/schemas/update_page.json +31 -0
  80. package/integrations/github/.env.test.example +17 -0
  81. package/integrations/github/README.md +75 -0
  82. package/integrations/github/__tests__/get_handlers.test.ts +305 -0
  83. package/integrations/github/__tests__/usage_parity.test.ts +22 -0
  84. package/integrations/github/__tests__/write_handlers.test.ts +496 -0
  85. package/integrations/github/credentials.json +47 -0
  86. package/integrations/github/credentials_hint.md +7 -0
  87. package/integrations/github/credentials_hint_classic_pat.md +8 -0
  88. package/integrations/github/credentials_hint_fine_grained_pat.md +9 -0
  89. package/integrations/github/handlers/add_labels_to_issue.js +12 -0
  90. package/integrations/github/handlers/close_issue.js +5 -0
  91. package/integrations/github/handlers/comment_on_issue.js +5 -0
  92. package/integrations/github/handlers/create_branch.js +33 -0
  93. package/integrations/github/handlers/create_commit.js +84 -0
  94. package/integrations/github/handlers/create_file.js +46 -0
  95. package/integrations/github/handlers/create_issue.js +10 -0
  96. package/integrations/github/handlers/create_or_update_file.js +21 -0
  97. package/integrations/github/handlers/create_pull_request.js +16 -0
  98. package/integrations/github/handlers/create_pull_request_review.js +10 -0
  99. package/integrations/github/handlers/create_release.js +14 -0
  100. package/integrations/github/handlers/create_repo.js +11 -0
  101. package/integrations/github/handlers/delete_branch.js +8 -0
  102. package/integrations/github/handlers/delete_file.js +22 -0
  103. package/integrations/github/handlers/delete_repo.js +6 -0
  104. package/integrations/github/handlers/edit_file.js +52 -0
  105. package/integrations/github/handlers/edit_files.js +107 -0
  106. package/integrations/github/handlers/fork_repo.js +10 -0
  107. package/integrations/github/handlers/get_commit.js +8 -0
  108. package/integrations/github/handlers/get_file_contents.js +21 -0
  109. package/integrations/github/handlers/get_issue.js +4 -0
  110. package/integrations/github/handlers/get_job_logs.js +6 -0
  111. package/integrations/github/handlers/get_latest_release.js +4 -0
  112. package/integrations/github/handlers/get_me.js +4 -0
  113. package/integrations/github/handlers/get_pull_request.js +4 -0
  114. package/integrations/github/handlers/get_pull_request_diff.js +8 -0
  115. package/integrations/github/handlers/get_repo.js +4 -0
  116. package/integrations/github/handlers/get_repo_tree.js +12 -0
  117. package/integrations/github/handlers/get_workflow_run.js +4 -0
  118. package/integrations/github/handlers/list_branches.js +9 -0
  119. package/integrations/github/handlers/list_commits.js +11 -0
  120. package/integrations/github/handlers/list_issue_comments.js +8 -0
  121. package/integrations/github/handlers/list_issues.js +11 -0
  122. package/integrations/github/handlers/list_labels.js +8 -0
  123. package/integrations/github/handlers/list_pull_request_comments.js +8 -0
  124. package/integrations/github/handlers/list_pull_request_files.js +8 -0
  125. package/integrations/github/handlers/list_pull_requests.js +13 -0
  126. package/integrations/github/handlers/list_releases.js +8 -0
  127. package/integrations/github/handlers/list_repos_install.js +4 -0
  128. package/integrations/github/handlers/list_repos_user.js +16 -0
  129. package/integrations/github/handlers/list_tags.js +8 -0
  130. package/integrations/github/handlers/list_workflow_runs.js +11 -0
  131. package/integrations/github/handlers/merge_pull_request.js +14 -0
  132. package/integrations/github/handlers/request_pull_request_reviewers.js +10 -0
  133. package/integrations/github/handlers/search_code.js +8 -0
  134. package/integrations/github/handlers/search_issues.js +8 -0
  135. package/integrations/github/handlers/search_pull_requests.js +8 -0
  136. package/integrations/github/handlers/search_repos.js +10 -0
  137. package/integrations/github/handlers/update_issue.js +15 -0
  138. package/integrations/github/handlers/update_pull_request.js +13 -0
  139. package/integrations/github/manifest.json +92 -0
  140. package/integrations/github/prompt.md +36 -0
  141. package/integrations/github/schemas/add_labels_to_issue.json +12 -0
  142. package/integrations/github/schemas/close_issue.json +10 -0
  143. package/integrations/github/schemas/comment_on_issue.json +11 -0
  144. package/integrations/github/schemas/create_branch.json +12 -0
  145. package/integrations/github/schemas/create_commit.json +25 -0
  146. package/integrations/github/schemas/create_file.json +13 -0
  147. package/integrations/github/schemas/create_issue.json +13 -0
  148. package/integrations/github/schemas/create_or_update_file.json +15 -0
  149. package/integrations/github/schemas/create_pull_request.json +15 -0
  150. package/integrations/github/schemas/create_pull_request_review.json +17 -0
  151. package/integrations/github/schemas/create_release.json +16 -0
  152. package/integrations/github/schemas/create_repo.json +12 -0
  153. package/integrations/github/schemas/delete_branch.json +10 -0
  154. package/integrations/github/schemas/delete_file.json +13 -0
  155. package/integrations/github/schemas/delete_repo.json +10 -0
  156. package/integrations/github/schemas/edit_file.json +26 -0
  157. package/integrations/github/schemas/edit_files.json +39 -0
  158. package/integrations/github/schemas/empty.json +5 -0
  159. package/integrations/github/schemas/fork_repo.json +11 -0
  160. package/integrations/github/schemas/get_commit.json +12 -0
  161. package/integrations/github/schemas/get_file_contents.json +11 -0
  162. package/integrations/github/schemas/get_issue.json +10 -0
  163. package/integrations/github/schemas/get_job_logs.json +10 -0
  164. package/integrations/github/schemas/get_pull_request.json +10 -0
  165. package/integrations/github/schemas/get_pull_request_diff.json +10 -0
  166. package/integrations/github/schemas/get_repo.json +9 -0
  167. package/integrations/github/schemas/get_repo_tree.json +12 -0
  168. package/integrations/github/schemas/get_workflow_run.json +10 -0
  169. package/integrations/github/schemas/list_branches.json +12 -0
  170. package/integrations/github/schemas/list_commits.json +14 -0
  171. package/integrations/github/schemas/list_issue_comments.json +12 -0
  172. package/integrations/github/schemas/list_issues.json +14 -0
  173. package/integrations/github/schemas/list_labels.json +11 -0
  174. package/integrations/github/schemas/list_pull_request_comments.json +12 -0
  175. package/integrations/github/schemas/list_pull_request_files.json +12 -0
  176. package/integrations/github/schemas/list_pull_requests.json +16 -0
  177. package/integrations/github/schemas/list_releases.json +11 -0
  178. package/integrations/github/schemas/list_tags.json +11 -0
  179. package/integrations/github/schemas/list_workflow_runs.json +18 -0
  180. package/integrations/github/schemas/merge_pull_request.json +14 -0
  181. package/integrations/github/schemas/owner_repo.json +9 -0
  182. package/integrations/github/schemas/request_pull_request_reviewers.json +20 -0
  183. package/integrations/github/schemas/search_code.json +10 -0
  184. package/integrations/github/schemas/search_issues.json +10 -0
  185. package/integrations/github/schemas/search_pull_requests.json +10 -0
  186. package/integrations/github/schemas/search_repos.json +12 -0
  187. package/integrations/github/schemas/update_issue.json +15 -0
  188. package/integrations/github/schemas/update_pull_request.json +15 -0
  189. package/integrations/google-calendar/.env.test.example +11 -0
  190. package/integrations/google-calendar/README.md +41 -0
  191. package/integrations/google-calendar/__tests__/get_handlers.test.ts +120 -0
  192. package/integrations/google-calendar/__tests__/usage_parity.test.ts +9 -0
  193. package/integrations/google-calendar/__tests__/write_and_admin_handlers.test.ts +155 -0
  194. package/integrations/google-calendar/credentials.json +59 -0
  195. package/integrations/google-calendar/credentials_hint.md +9 -0
  196. package/integrations/google-calendar/credentials_hint_oauth_token.md +8 -0
  197. package/integrations/google-calendar/credentials_hint_service_account.md +10 -0
  198. package/integrations/google-calendar/handlers/create_event.js +6 -0
  199. package/integrations/google-calendar/handlers/delete_acl.js +6 -0
  200. package/integrations/google-calendar/handlers/delete_event.js +7 -0
  201. package/integrations/google-calendar/handlers/freebusy_query.js +4 -0
  202. package/integrations/google-calendar/handlers/get_acl.js +5 -0
  203. package/integrations/google-calendar/handlers/get_calendar.js +4 -0
  204. package/integrations/google-calendar/handlers/get_event.js +9 -0
  205. package/integrations/google-calendar/handlers/insert_acl.js +6 -0
  206. package/integrations/google-calendar/handlers/list_acl.js +5 -0
  207. package/integrations/google-calendar/handlers/list_calendars.js +4 -0
  208. package/integrations/google-calendar/handlers/list_colors.js +4 -0
  209. package/integrations/google-calendar/handlers/list_events.js +23 -0
  210. package/integrations/google-calendar/handlers/list_settings.js +4 -0
  211. package/integrations/google-calendar/handlers/move_event.js +6 -0
  212. package/integrations/google-calendar/handlers/patch_event.js +5 -0
  213. package/integrations/google-calendar/handlers/quick_add.js +6 -0
  214. package/integrations/google-calendar/handlers/update_acl.js +7 -0
  215. package/integrations/google-calendar/manifest.json +36 -0
  216. package/integrations/google-calendar/prompt.md +68 -0
  217. package/integrations/google-calendar/schemas/create_event.json +34 -0
  218. package/integrations/google-calendar/schemas/delete_acl.json +9 -0
  219. package/integrations/google-calendar/schemas/empty.json +1 -0
  220. package/integrations/google-calendar/schemas/freebusy_query.json +13 -0
  221. package/integrations/google-calendar/schemas/get_acl.json +9 -0
  222. package/integrations/google-calendar/schemas/id_calendar.json +8 -0
  223. package/integrations/google-calendar/schemas/id_calendar_event.json +11 -0
  224. package/integrations/google-calendar/schemas/insert_acl.json +18 -0
  225. package/integrations/google-calendar/schemas/list_events.json +17 -0
  226. package/integrations/google-calendar/schemas/move_event.json +10 -0
  227. package/integrations/google-calendar/schemas/patch_event.json +10 -0
  228. package/integrations/google-calendar/schemas/quick_add.json +9 -0
  229. package/integrations/google-calendar/schemas/update_acl.json +10 -0
  230. package/integrations/google-docs/README.md +30 -0
  231. package/integrations/google-docs/__tests__/get_handlers.test.ts +83 -0
  232. package/integrations/google-docs/__tests__/usage_parity.test.ts +9 -0
  233. package/integrations/google-docs/__tests__/write_handlers.test.ts +238 -0
  234. package/integrations/google-docs/credentials.json +57 -0
  235. package/integrations/google-docs/credentials_hint.md +9 -0
  236. package/integrations/google-docs/credentials_hint_oauth_token.md +8 -0
  237. package/integrations/google-docs/credentials_hint_service_account.md +10 -0
  238. package/integrations/google-docs/handlers/append_text.js +12 -0
  239. package/integrations/google-docs/handlers/batch_update.js +13 -0
  240. package/integrations/google-docs/handlers/create_document.js +9 -0
  241. package/integrations/google-docs/handlers/delete_first_match.js +50 -0
  242. package/integrations/google-docs/handlers/insert_inline_image_after_first_match.js +41 -0
  243. package/integrations/google-docs/handlers/insert_page_break_after_first_match.js +49 -0
  244. package/integrations/google-docs/handlers/insert_table_after_first_match.js +49 -0
  245. package/integrations/google-docs/handlers/insert_text_after_first_match.js +51 -0
  246. package/integrations/google-docs/handlers/read_document.js +189 -0
  247. package/integrations/google-docs/handlers/replace_all_text.js +8 -0
  248. package/integrations/google-docs/handlers/style_first_match.js +42 -0
  249. package/integrations/google-docs/handlers/update_document_style.js +8 -0
  250. package/integrations/google-docs/handlers/update_paragraph_style_for_first_match.js +48 -0
  251. package/integrations/google-docs/manifest.json +44 -0
  252. package/integrations/google-docs/prompt.md +49 -0
  253. package/integrations/google-docs/schemas/append_text.json +10 -0
  254. package/integrations/google-docs/schemas/apply_text_style.json +13 -0
  255. package/integrations/google-docs/schemas/batch_update.json +16 -0
  256. package/integrations/google-docs/schemas/create_document.json +8 -0
  257. package/integrations/google-docs/schemas/delete_content_range.json +11 -0
  258. package/integrations/google-docs/schemas/delete_first_match.json +10 -0
  259. package/integrations/google-docs/schemas/insert_inline_image.json +12 -0
  260. package/integrations/google-docs/schemas/insert_inline_image_after_first_match.json +12 -0
  261. package/integrations/google-docs/schemas/insert_page_break.json +10 -0
  262. package/integrations/google-docs/schemas/insert_page_break_after_first_match.json +11 -0
  263. package/integrations/google-docs/schemas/insert_table.json +12 -0
  264. package/integrations/google-docs/schemas/insert_table_after_first_match.json +13 -0
  265. package/integrations/google-docs/schemas/insert_text_after_first_match.json +12 -0
  266. package/integrations/google-docs/schemas/insert_text_at.json +11 -0
  267. package/integrations/google-docs/schemas/read_document.json +12 -0
  268. package/integrations/google-docs/schemas/replace_all_text.json +12 -0
  269. package/integrations/google-docs/schemas/style_first_match.json +12 -0
  270. package/integrations/google-docs/schemas/update_document_style.json +11 -0
  271. package/integrations/google-docs/schemas/update_paragraph_style.json +13 -0
  272. package/integrations/google-docs/schemas/update_paragraph_style_for_first_match.json +12 -0
  273. package/integrations/google-docs/todo.md +18 -0
  274. package/integrations/google-drive/README.md +26 -0
  275. package/integrations/google-drive/__tests__/handlers.test.ts +145 -0
  276. package/integrations/google-drive/__tests__/usage_parity.test.ts +9 -0
  277. package/integrations/google-drive/credentials.json +59 -0
  278. package/integrations/google-drive/credentials_hint_oauth_token.md +8 -0
  279. package/integrations/google-drive/credentials_hint_service_account.md +10 -0
  280. package/integrations/google-drive/handlers/create_file.js +15 -0
  281. package/integrations/google-drive/handlers/create_folder.js +15 -0
  282. package/integrations/google-drive/handlers/delete_file.js +14 -0
  283. package/integrations/google-drive/handlers/get_file.js +5 -0
  284. package/integrations/google-drive/handlers/get_file_content.js +41 -0
  285. package/integrations/google-drive/handlers/list_files.js +15 -0
  286. package/integrations/google-drive/handlers/move_file.js +12 -0
  287. package/integrations/google-drive/handlers/search_files.js +20 -0
  288. package/integrations/google-drive/handlers/share_file.js +20 -0
  289. package/integrations/google-drive/manifest.json +70 -0
  290. package/integrations/google-drive/prompt.md +59 -0
  291. package/integrations/google-drive/schemas/create_file.json +12 -0
  292. package/integrations/google-drive/schemas/create_folder.json +11 -0
  293. package/integrations/google-drive/schemas/delete_file.json +10 -0
  294. package/integrations/google-drive/schemas/get_file.json +10 -0
  295. package/integrations/google-drive/schemas/get_file_content.json +11 -0
  296. package/integrations/google-drive/schemas/list_files.json +12 -0
  297. package/integrations/google-drive/schemas/move_file.json +12 -0
  298. package/integrations/google-drive/schemas/search_files.json +14 -0
  299. package/integrations/google-drive/schemas/share_file.json +23 -0
  300. package/integrations/google-gmail/.env.test.example +11 -0
  301. package/integrations/google-gmail/README.md +49 -0
  302. package/integrations/google-gmail/__tests__/get_handlers.test.ts +134 -0
  303. package/integrations/google-gmail/__tests__/usage_parity.test.ts +9 -0
  304. package/integrations/google-gmail/__tests__/write_and_admin_handlers.test.ts +211 -0
  305. package/integrations/google-gmail/credentials.json +59 -0
  306. package/integrations/google-gmail/credentials_hint_oauth_token.md +8 -0
  307. package/integrations/google-gmail/credentials_hint_service_account.md +10 -0
  308. package/integrations/google-gmail/handlers/create_draft_email.js +27 -0
  309. package/integrations/google-gmail/handlers/create_label.js +12 -0
  310. package/integrations/google-gmail/handlers/delete_draft.js +13 -0
  311. package/integrations/google-gmail/handlers/delete_label.js +13 -0
  312. package/integrations/google-gmail/handlers/delete_message.js +13 -0
  313. package/integrations/google-gmail/handlers/delete_thread.js +13 -0
  314. package/integrations/google-gmail/handlers/get_draft.js +6 -0
  315. package/integrations/google-gmail/handlers/get_label.js +6 -0
  316. package/integrations/google-gmail/handlers/get_message.js +14 -0
  317. package/integrations/google-gmail/handlers/get_profile.js +5 -0
  318. package/integrations/google-gmail/handlers/get_thread.js +14 -0
  319. package/integrations/google-gmail/handlers/list_drafts.js +15 -0
  320. package/integrations/google-gmail/handlers/list_labels.js +5 -0
  321. package/integrations/google-gmail/handlers/list_messages.js +19 -0
  322. package/integrations/google-gmail/handlers/list_threads.js +19 -0
  323. package/integrations/google-gmail/handlers/modify_message.js +11 -0
  324. package/integrations/google-gmail/handlers/modify_thread.js +11 -0
  325. package/integrations/google-gmail/handlers/read_email.js +56 -0
  326. package/integrations/google-gmail/handlers/send_draft.js +15 -0
  327. package/integrations/google-gmail/handlers/send_email.js +22 -0
  328. package/integrations/google-gmail/handlers/trash_message.js +6 -0
  329. package/integrations/google-gmail/handlers/trash_thread.js +6 -0
  330. package/integrations/google-gmail/handlers/untrash_message.js +6 -0
  331. package/integrations/google-gmail/handlers/untrash_thread.js +6 -0
  332. package/integrations/google-gmail/handlers/update_label.js +15 -0
  333. package/integrations/google-gmail/manifest.json +45 -0
  334. package/integrations/google-gmail/prompt.md +52 -0
  335. package/integrations/google-gmail/schemas/create_draft_email.json +16 -0
  336. package/integrations/google-gmail/schemas/create_label.json +26 -0
  337. package/integrations/google-gmail/schemas/get_message.json +20 -0
  338. package/integrations/google-gmail/schemas/get_profile.json +11 -0
  339. package/integrations/google-gmail/schemas/get_thread.json +20 -0
  340. package/integrations/google-gmail/schemas/id_draft.json +16 -0
  341. package/integrations/google-gmail/schemas/id_label.json +16 -0
  342. package/integrations/google-gmail/schemas/id_message.json +16 -0
  343. package/integrations/google-gmail/schemas/id_thread.json +16 -0
  344. package/integrations/google-gmail/schemas/list_drafts.json +30 -0
  345. package/integrations/google-gmail/schemas/list_labels.json +11 -0
  346. package/integrations/google-gmail/schemas/list_messages.json +35 -0
  347. package/integrations/google-gmail/schemas/list_threads.json +35 -0
  348. package/integrations/google-gmail/schemas/modify_message.json +24 -0
  349. package/integrations/google-gmail/schemas/modify_thread.json +24 -0
  350. package/integrations/google-gmail/schemas/read_email.json +10 -0
  351. package/integrations/google-gmail/schemas/send_draft.json +29 -0
  352. package/integrations/google-gmail/schemas/send_email.json +17 -0
  353. package/integrations/google-gmail/schemas/update_label.json +33 -0
  354. package/integrations/google-sheet/README.md +27 -0
  355. package/integrations/google-sheet/__tests__/get_handlers.test.ts +76 -0
  356. package/integrations/google-sheet/__tests__/usage_parity.test.ts +9 -0
  357. package/integrations/google-sheet/__tests__/write_handlers.test.ts +153 -0
  358. package/integrations/google-sheet/credentials.json +57 -0
  359. package/integrations/google-sheet/credentials_hint.md +9 -0
  360. package/integrations/google-sheet/credentials_hint_oauth_token.md +8 -0
  361. package/integrations/google-sheet/credentials_hint_service_account.md +10 -0
  362. package/integrations/google-sheet/handlers/append_values.js +18 -0
  363. package/integrations/google-sheet/handlers/batch_clear_values.js +6 -0
  364. package/integrations/google-sheet/handlers/batch_update.js +14 -0
  365. package/integrations/google-sheet/handlers/batch_update_values.js +16 -0
  366. package/integrations/google-sheet/handlers/clear_values.js +6 -0
  367. package/integrations/google-sheet/handlers/copy_to_spreadsheet.js +6 -0
  368. package/integrations/google-sheet/handlers/create_spreadsheet.js +5 -0
  369. package/integrations/google-sheet/handlers/get_spreadsheet.js +14 -0
  370. package/integrations/google-sheet/handlers/read_sheet.js +75 -0
  371. package/integrations/google-sheet/handlers/update_values.js +16 -0
  372. package/integrations/google-sheet/manifest.json +77 -0
  373. package/integrations/google-sheet/prompt.md +49 -0
  374. package/integrations/google-sheet/schemas/append_values.json +16 -0
  375. package/integrations/google-sheet/schemas/batch_clear_values.json +10 -0
  376. package/integrations/google-sheet/schemas/batch_update.json +13 -0
  377. package/integrations/google-sheet/schemas/batch_update_values.json +25 -0
  378. package/integrations/google-sheet/schemas/clear_values.json +10 -0
  379. package/integrations/google-sheet/schemas/copy_to_spreadsheet.json +11 -0
  380. package/integrations/google-sheet/schemas/create_spreadsheet.json +11 -0
  381. package/integrations/google-sheet/schemas/get_spreadsheet.json +16 -0
  382. package/integrations/google-sheet/schemas/read_sheet.json +21 -0
  383. package/integrations/google-sheet/schemas/update_values.json +15 -0
  384. package/integrations/google-slides/README.md +28 -0
  385. package/integrations/google-slides/__tests__/get_handlers.test.ts +74 -0
  386. package/integrations/google-slides/__tests__/usage_parity.test.ts +9 -0
  387. package/integrations/google-slides/__tests__/write_handlers.test.ts +131 -0
  388. package/integrations/google-slides/credentials.json +57 -0
  389. package/integrations/google-slides/credentials_hint.md +9 -0
  390. package/integrations/google-slides/credentials_hint_oauth_token.md +8 -0
  391. package/integrations/google-slides/credentials_hint_service_account.md +10 -0
  392. package/integrations/google-slides/handlers/append_text_to_title_of_first_slide.js +17 -0
  393. package/integrations/google-slides/handlers/batch_update.js +15 -0
  394. package/integrations/google-slides/handlers/create_presentation.js +8 -0
  395. package/integrations/google-slides/handlers/create_slide_after_first_match.js +20 -0
  396. package/integrations/google-slides/handlers/get_page_thumbnail.js +12 -0
  397. package/integrations/google-slides/handlers/insert_image_after_first_match.js +19 -0
  398. package/integrations/google-slides/handlers/insert_shape_after_first_match.js +21 -0
  399. package/integrations/google-slides/handlers/read_presentation.js +51 -0
  400. package/integrations/google-slides/handlers/replace_text_first_match.js +9 -0
  401. package/integrations/google-slides/handlers/set_background_color_for_slide_index.js +15 -0
  402. package/integrations/google-slides/handlers/style_text_first_match.js +48 -0
  403. package/integrations/google-slides/manifest.json +42 -0
  404. package/integrations/google-slides/prompt.md +56 -0
  405. package/integrations/google-slides/schemas/append_text_to_title_of_first_slide.json +11 -0
  406. package/integrations/google-slides/schemas/batch_update.json +13 -0
  407. package/integrations/google-slides/schemas/create_presentation.json +8 -0
  408. package/integrations/google-slides/schemas/create_slide_after_first_match.json +11 -0
  409. package/integrations/google-slides/schemas/get_page_thumbnail.json +12 -0
  410. package/integrations/google-slides/schemas/get_presentation.json +9 -0
  411. package/integrations/google-slides/schemas/insert_image_after_first_match.json +13 -0
  412. package/integrations/google-slides/schemas/insert_shape_after_first_match.json +13 -0
  413. package/integrations/google-slides/schemas/replace_text_first_match.json +12 -0
  414. package/integrations/google-slides/schemas/set_background_color_for_slide_index.json +11 -0
  415. package/integrations/google-slides/schemas/style_text_first_match.json +12 -0
  416. package/integrations/hubspot/.env.test.example +20 -0
  417. package/integrations/hubspot/README.md +48 -0
  418. package/integrations/hubspot/__tests__/get_handlers.test.ts +151 -0
  419. package/integrations/hubspot/__tests__/usage_parity.test.ts +10 -0
  420. package/integrations/hubspot/__tests__/write_handlers.test.ts +244 -0
  421. package/integrations/hubspot/credentials.json +50 -0
  422. package/integrations/hubspot/credentials_hint.md +20 -0
  423. package/integrations/hubspot/credentials_hint_oauth_token.md +16 -0
  424. package/integrations/hubspot/handlers/archive_company.js +13 -0
  425. package/integrations/hubspot/handlers/archive_contact.js +13 -0
  426. package/integrations/hubspot/handlers/archive_deal.js +13 -0
  427. package/integrations/hubspot/handlers/archive_ticket.js +13 -0
  428. package/integrations/hubspot/handlers/create_association.js +18 -0
  429. package/integrations/hubspot/handlers/create_company.js +13 -0
  430. package/integrations/hubspot/handlers/create_contact.js +14 -0
  431. package/integrations/hubspot/handlers/create_deal.js +16 -0
  432. package/integrations/hubspot/handlers/create_note.js +44 -0
  433. package/integrations/hubspot/handlers/create_task.js +48 -0
  434. package/integrations/hubspot/handlers/create_ticket.js +15 -0
  435. package/integrations/hubspot/handlers/get_associations.js +14 -0
  436. package/integrations/hubspot/handlers/get_company.js +18 -0
  437. package/integrations/hubspot/handlers/get_contact.js +18 -0
  438. package/integrations/hubspot/handlers/get_deal.js +18 -0
  439. package/integrations/hubspot/handlers/get_ticket.js +20 -0
  440. package/integrations/hubspot/handlers/list_owners.js +12 -0
  441. package/integrations/hubspot/handlers/list_pipelines.js +5 -0
  442. package/integrations/hubspot/handlers/list_properties.js +11 -0
  443. package/integrations/hubspot/handlers/remove_association.js +22 -0
  444. package/integrations/hubspot/handlers/search_companies.js +43 -0
  445. package/integrations/hubspot/handlers/search_contacts.js +43 -0
  446. package/integrations/hubspot/handlers/search_deals.js +43 -0
  447. package/integrations/hubspot/handlers/search_notes.js +43 -0
  448. package/integrations/hubspot/handlers/search_tasks.js +43 -0
  449. package/integrations/hubspot/handlers/search_tickets.js +43 -0
  450. package/integrations/hubspot/handlers/update_company.js +13 -0
  451. package/integrations/hubspot/handlers/update_contact.js +14 -0
  452. package/integrations/hubspot/handlers/update_deal.js +16 -0
  453. package/integrations/hubspot/handlers/update_task.js +17 -0
  454. package/integrations/hubspot/handlers/update_ticket.js +15 -0
  455. package/integrations/hubspot/manifest.json +231 -0
  456. package/integrations/hubspot/prompt.md +69 -0
  457. package/integrations/hubspot/schemas/archive_company.json +13 -0
  458. package/integrations/hubspot/schemas/archive_contact.json +13 -0
  459. package/integrations/hubspot/schemas/archive_deal.json +9 -0
  460. package/integrations/hubspot/schemas/archive_ticket.json +9 -0
  461. package/integrations/hubspot/schemas/create_association.json +24 -0
  462. package/integrations/hubspot/schemas/create_company.json +14 -0
  463. package/integrations/hubspot/schemas/create_contact.json +15 -0
  464. package/integrations/hubspot/schemas/create_deal.json +20 -0
  465. package/integrations/hubspot/schemas/create_note.json +37 -0
  466. package/integrations/hubspot/schemas/create_task.json +51 -0
  467. package/integrations/hubspot/schemas/create_ticket.json +16 -0
  468. package/integrations/hubspot/schemas/empty.json +6 -0
  469. package/integrations/hubspot/schemas/get_associations.json +30 -0
  470. package/integrations/hubspot/schemas/get_company.json +27 -0
  471. package/integrations/hubspot/schemas/get_contact.json +27 -0
  472. package/integrations/hubspot/schemas/get_deal.json +20 -0
  473. package/integrations/hubspot/schemas/get_ticket.json +20 -0
  474. package/integrations/hubspot/schemas/list_owners.json +25 -0
  475. package/integrations/hubspot/schemas/list_pipelines.json +13 -0
  476. package/integrations/hubspot/schemas/list_properties.json +17 -0
  477. package/integrations/hubspot/schemas/remove_association.json +24 -0
  478. package/integrations/hubspot/schemas/search_companies.json +56 -0
  479. package/integrations/hubspot/schemas/search_contacts.json +56 -0
  480. package/integrations/hubspot/schemas/search_deals.json +43 -0
  481. package/integrations/hubspot/schemas/search_notes.json +43 -0
  482. package/integrations/hubspot/schemas/search_tasks.json +43 -0
  483. package/integrations/hubspot/schemas/search_tickets.json +43 -0
  484. package/integrations/hubspot/schemas/update_company.json +20 -0
  485. package/integrations/hubspot/schemas/update_contact.json +21 -0
  486. package/integrations/hubspot/schemas/update_deal.json +19 -0
  487. package/integrations/hubspot/schemas/update_task.json +31 -0
  488. package/integrations/hubspot/schemas/update_ticket.json +18 -0
  489. package/integrations/jira/.env.test.example +41 -0
  490. package/integrations/jira/README.md +46 -0
  491. package/integrations/jira/__tests__/get_handlers.test.ts +193 -0
  492. package/integrations/jira/__tests__/usage_parity.test.ts +14 -0
  493. package/integrations/jira/__tests__/write_handlers.test.ts +157 -0
  494. package/integrations/jira/credentials.json +39 -0
  495. package/integrations/jira/credentials_hint.md +4 -0
  496. package/integrations/jira/credentials_hint_api_token.md +6 -0
  497. package/integrations/jira/credentials_hint_oauth_token.md +6 -0
  498. package/integrations/jira/handlers/add_comment.js +9 -0
  499. package/integrations/jira/handlers/assign_issue.js +11 -0
  500. package/integrations/jira/handlers/create_issue.js +37 -0
  501. package/integrations/jira/handlers/create_sprint.js +19 -0
  502. package/integrations/jira/handlers/delete_issue.js +10 -0
  503. package/integrations/jira/handlers/get_backlog_issues.js +13 -0
  504. package/integrations/jira/handlers/get_board.js +6 -0
  505. package/integrations/jira/handlers/get_issue.js +63 -0
  506. package/integrations/jira/handlers/get_issue_comments.js +31 -0
  507. package/integrations/jira/handlers/get_myself.js +14 -0
  508. package/integrations/jira/handlers/get_project.js +28 -0
  509. package/integrations/jira/handlers/get_sprint.js +5 -0
  510. package/integrations/jira/handlers/get_sprint_issues.js +13 -0
  511. package/integrations/jira/handlers/get_transitions.js +23 -0
  512. package/integrations/jira/handlers/list_boards.js +34 -0
  513. package/integrations/jira/handlers/list_projects.js +29 -0
  514. package/integrations/jira/handlers/list_sprints.js +29 -0
  515. package/integrations/jira/handlers/move_issues_to_sprint.js +11 -0
  516. package/integrations/jira/handlers/search_issues.js +43 -0
  517. package/integrations/jira/handlers/search_users.js +21 -0
  518. package/integrations/jira/handlers/transition_issue.js +44 -0
  519. package/integrations/jira/handlers/update_issue.js +40 -0
  520. package/integrations/jira/handlers/update_sprint.js +20 -0
  521. package/integrations/jira/manifest.json +204 -0
  522. package/integrations/jira/prompt.md +80 -0
  523. package/integrations/jira/schemas/add_comment.json +16 -0
  524. package/integrations/jira/schemas/assign_issue.json +16 -0
  525. package/integrations/jira/schemas/create_issue.json +49 -0
  526. package/integrations/jira/schemas/create_sprint.json +29 -0
  527. package/integrations/jira/schemas/delete_issue.json +12 -0
  528. package/integrations/jira/schemas/empty.json +6 -0
  529. package/integrations/jira/schemas/get_backlog_issues.json +33 -0
  530. package/integrations/jira/schemas/get_board.json +13 -0
  531. package/integrations/jira/schemas/get_issue.json +23 -0
  532. package/integrations/jira/schemas/get_issue_comments.json +23 -0
  533. package/integrations/jira/schemas/get_project.json +17 -0
  534. package/integrations/jira/schemas/get_sprint.json +13 -0
  535. package/integrations/jira/schemas/get_sprint_issues.json +33 -0
  536. package/integrations/jira/schemas/get_transitions.json +12 -0
  537. package/integrations/jira/schemas/list_boards.json +27 -0
  538. package/integrations/jira/schemas/list_projects.json +22 -0
  539. package/integrations/jira/schemas/list_sprints.json +29 -0
  540. package/integrations/jira/schemas/move_issues_to_sprint.json +19 -0
  541. package/integrations/jira/schemas/search_issues.json +28 -0
  542. package/integrations/jira/schemas/search_users.json +18 -0
  543. package/integrations/jira/schemas/transition_issue.json +38 -0
  544. package/integrations/jira/schemas/update_issue.json +47 -0
  545. package/integrations/jira/schemas/update_sprint.json +33 -0
  546. package/integrations/new_integration_prompt.md +216 -0
  547. package/integrations/notion/.env.test.example +13 -0
  548. package/integrations/notion/README.md +42 -0
  549. package/integrations/notion/__tests__/get_handlers.test.ts +156 -0
  550. package/integrations/notion/__tests__/usage_parity.test.ts +9 -0
  551. package/integrations/notion/__tests__/write_and_admin_handlers.test.ts +186 -0
  552. package/integrations/notion/credentials.json +27 -0
  553. package/integrations/notion/credentials_hint.md +5 -0
  554. package/integrations/notion/handlers/append_block_children.js +7 -0
  555. package/integrations/notion/handlers/create_comment.js +10 -0
  556. package/integrations/notion/handlers/create_database.js +11 -0
  557. package/integrations/notion/handlers/create_page.js +13 -0
  558. package/integrations/notion/handlers/delete_block.js +8 -0
  559. package/integrations/notion/handlers/get_me.js +4 -0
  560. package/integrations/notion/handlers/list_block_children.js +10 -0
  561. package/integrations/notion/handlers/list_comments.js +14 -0
  562. package/integrations/notion/handlers/list_users.js +10 -0
  563. package/integrations/notion/handlers/query_database.js +10 -0
  564. package/integrations/notion/handlers/retrieve_block.js +4 -0
  565. package/integrations/notion/handlers/retrieve_database.js +4 -0
  566. package/integrations/notion/handlers/retrieve_page.js +4 -0
  567. package/integrations/notion/handlers/retrieve_page_property_item.js +10 -0
  568. package/integrations/notion/handlers/retrieve_user.js +4 -0
  569. package/integrations/notion/handlers/search.js +11 -0
  570. package/integrations/notion/handlers/update_block.js +7 -0
  571. package/integrations/notion/handlers/update_database.js +10 -0
  572. package/integrations/notion/handlers/update_page_properties.js +10 -0
  573. package/integrations/notion/manifest.json +169 -0
  574. package/integrations/notion/prompt.md +26 -0
  575. package/integrations/notion/schemas/append_block_children.json +10 -0
  576. package/integrations/notion/schemas/create_comment.json +18 -0
  577. package/integrations/notion/schemas/create_database.json +18 -0
  578. package/integrations/notion/schemas/create_page.json +22 -0
  579. package/integrations/notion/schemas/delete_block.json +9 -0
  580. package/integrations/notion/schemas/empty.json +6 -0
  581. package/integrations/notion/schemas/id_block.json +9 -0
  582. package/integrations/notion/schemas/id_database.json +9 -0
  583. package/integrations/notion/schemas/id_page.json +9 -0
  584. package/integrations/notion/schemas/id_user.json +9 -0
  585. package/integrations/notion/schemas/list_block_children.json +11 -0
  586. package/integrations/notion/schemas/list_comments.json +15 -0
  587. package/integrations/notion/schemas/list_users.json +9 -0
  588. package/integrations/notion/schemas/query_database.json +13 -0
  589. package/integrations/notion/schemas/retrieve_page_property_item.json +12 -0
  590. package/integrations/notion/schemas/search.json +27 -0
  591. package/integrations/notion/schemas/update_block.json +10 -0
  592. package/integrations/notion/schemas/update_database.json +13 -0
  593. package/integrations/notion/schemas/update_page_properties.json +13 -0
  594. package/integrations/trello/.env.test.example +9 -0
  595. package/integrations/trello/README.md +50 -0
  596. package/integrations/trello/__tests__/get_handlers.test.ts +225 -0
  597. package/integrations/trello/__tests__/usage_parity.test.ts +9 -0
  598. package/integrations/trello/__tests__/write_and_admin_handlers.test.ts +171 -0
  599. package/integrations/trello/credentials.json +32 -0
  600. package/integrations/trello/credentials_hint.md +4 -0
  601. package/integrations/trello/handlers/add_checklist_to_card.js +5 -0
  602. package/integrations/trello/handlers/add_member_to_card.js +5 -0
  603. package/integrations/trello/handlers/archive_list.js +5 -0
  604. package/integrations/trello/handlers/close_board.js +6 -0
  605. package/integrations/trello/handlers/create_board.js +11 -0
  606. package/integrations/trello/handlers/create_card.js +13 -0
  607. package/integrations/trello/handlers/create_list.js +7 -0
  608. package/integrations/trello/handlers/delete_board.js +13 -0
  609. package/integrations/trello/handlers/delete_card.js +9 -0
  610. package/integrations/trello/handlers/get_board.js +4 -0
  611. package/integrations/trello/handlers/get_board_cards.js +4 -0
  612. package/integrations/trello/handlers/get_board_custom_fields.js +4 -0
  613. package/integrations/trello/handlers/get_board_labels.js +4 -0
  614. package/integrations/trello/handlers/get_board_lists.js +4 -0
  615. package/integrations/trello/handlers/get_board_members.js +4 -0
  616. package/integrations/trello/handlers/get_board_memberships.js +4 -0
  617. package/integrations/trello/handlers/get_card.js +4 -0
  618. package/integrations/trello/handlers/get_card_actions.js +4 -0
  619. package/integrations/trello/handlers/get_card_attachments.js +4 -0
  620. package/integrations/trello/handlers/get_card_checklists.js +4 -0
  621. package/integrations/trello/handlers/get_card_custom_field_items.js +4 -0
  622. package/integrations/trello/handlers/get_card_members.js +4 -0
  623. package/integrations/trello/handlers/get_list.js +4 -0
  624. package/integrations/trello/handlers/get_list_cards.js +4 -0
  625. package/integrations/trello/handlers/get_member.js +4 -0
  626. package/integrations/trello/handlers/get_member_boards.js +4 -0
  627. package/integrations/trello/handlers/get_member_organizations.js +4 -0
  628. package/integrations/trello/handlers/get_organization.js +4 -0
  629. package/integrations/trello/handlers/get_organization_boards.js +4 -0
  630. package/integrations/trello/handlers/move_card_to_list.js +5 -0
  631. package/integrations/trello/handlers/remove_member_from_card.js +9 -0
  632. package/integrations/trello/handlers/search.js +5 -0
  633. package/integrations/trello/handlers/update_card.js +19 -0
  634. package/integrations/trello/handlers/update_list.js +11 -0
  635. package/integrations/trello/manifest.json +245 -0
  636. package/integrations/trello/schemas/add_checklist_to_card.json +10 -0
  637. package/integrations/trello/schemas/add_member_to_card.json +10 -0
  638. package/integrations/trello/schemas/archive_list.json +9 -0
  639. package/integrations/trello/schemas/close_board.json +10 -0
  640. package/integrations/trello/schemas/create_board.json +12 -0
  641. package/integrations/trello/schemas/create_card.json +13 -0
  642. package/integrations/trello/schemas/create_list.json +11 -0
  643. package/integrations/trello/schemas/delete_board.json +10 -0
  644. package/integrations/trello/schemas/delete_card.json +9 -0
  645. package/integrations/trello/schemas/display_trello_cards.json +45 -0
  646. package/integrations/trello/schemas/empty.json +5 -0
  647. package/integrations/trello/schemas/get_member.json +5 -0
  648. package/integrations/trello/schemas/id_board.json +8 -0
  649. package/integrations/trello/schemas/id_card.json +8 -0
  650. package/integrations/trello/schemas/id_list.json +8 -0
  651. package/integrations/trello/schemas/id_org.json +8 -0
  652. package/integrations/trello/schemas/move_card_to_list.json +10 -0
  653. package/integrations/trello/schemas/remove_member_from_card.json +10 -0
  654. package/integrations/trello/schemas/search.json +8 -0
  655. package/integrations/trello/schemas/update_card.json +16 -0
  656. package/integrations/trello/schemas/update_list.json +12 -0
  657. package/package.json +4 -3
  658. package/dist/generated/registry.d.ts +0 -3
  659. package/dist/generated/registry.d.ts.map +0 -1
  660. package/dist/generated/registry.js +0 -11889
  661. package/dist/generated/registry.js.map +0 -1
  662. package/dist/types.d.ts +0 -88
  663. package/dist/types.d.ts.map +0 -1
  664. package/dist/types.js +0 -2
  665. package/dist/types.js.map +0 -1
@@ -0,0 +1,8 @@
1
+ async (input) => {
2
+ const params = new URLSearchParams()
3
+ if (input.page) params.set('page', String(input.page))
4
+ if (input.per_page) params.set('per_page', String(input.per_page))
5
+ const query = params.toString() ? `?${params.toString()}` : ''
6
+ const res = await integration.fetch(`/repos/${input.owner}/${input.repo}/tags${query}`)
7
+ return await res.json()
8
+ }
@@ -0,0 +1,11 @@
1
+ async (input) => {
2
+ const params = new URLSearchParams()
3
+ if (input.branch) params.set('branch', input.branch)
4
+ if (input.status) params.set('status', input.status)
5
+ if (input.event) params.set('event', input.event)
6
+ if (input.page) params.set('page', String(input.page))
7
+ if (input.per_page) params.set('per_page', String(input.per_page))
8
+ const query = params.toString() ? `?${params.toString()}` : ''
9
+ const res = await integration.fetch(`/repos/${input.owner}/${input.repo}/actions/runs${query}`)
10
+ return await res.json()
11
+ }
@@ -0,0 +1,14 @@
1
+ async (input) => {
2
+ const body = {
3
+ commit_title: input.commit_title,
4
+ commit_message: input.commit_message,
5
+ merge_method: input.merge_method || 'merge',
6
+ }
7
+
8
+ const res = await integration.fetch(`/repos/${input.owner}/${input.repo}/pulls/${input.pull_number}/merge`, {
9
+ method: 'PUT',
10
+ body
11
+ })
12
+ return await res.json()
13
+ }
14
+
@@ -0,0 +1,10 @@
1
+ async (input) => {
2
+ const body = {}
3
+ if (input.reviewers) body.reviewers = input.reviewers
4
+ if (input.team_reviewers) body.team_reviewers = input.team_reviewers
5
+ const res = await integration.fetch(
6
+ `/repos/${input.owner}/${input.repo}/pulls/${input.pull_number}/requested_reviewers`,
7
+ { method: 'POST', body }
8
+ )
9
+ return await res.json()
10
+ }
@@ -0,0 +1,8 @@
1
+ async (input) => {
2
+ const params = new URLSearchParams()
3
+ params.set('q', input.query)
4
+ if (input.page) params.set('page', String(input.page))
5
+ if (input.per_page) params.set('per_page', String(input.per_page))
6
+ const res = await integration.fetch(`/search/code?${params.toString()}`)
7
+ return await res.json()
8
+ }
@@ -0,0 +1,8 @@
1
+ async (input) => {
2
+ const params = new URLSearchParams()
3
+ params.set('q', input.query)
4
+ if (input.page) params.set('page', String(input.page))
5
+ if (input.per_page) params.set('per_page', String(input.per_page))
6
+ const res = await integration.fetch(`/search/issues?${params.toString()}`)
7
+ return await res.json()
8
+ }
@@ -0,0 +1,8 @@
1
+ async (input) => {
2
+ const params = new URLSearchParams()
3
+ params.set('q', input.query)
4
+ if (input.page) params.set('page', String(input.page))
5
+ if (input.per_page) params.set('per_page', String(input.per_page))
6
+ const res = await integration.fetch(`/search/issues?${params.toString()}`)
7
+ return await res.json()
8
+ }
@@ -0,0 +1,10 @@
1
+ async (input) => {
2
+ const params = new URLSearchParams()
3
+ params.set('q', input.query)
4
+ if (input.sort) params.set('sort', input.sort)
5
+ if (input.order) params.set('order', input.order)
6
+ if (input.page) params.set('page', String(input.page))
7
+ if (input.per_page) params.set('per_page', String(input.per_page))
8
+ const res = await integration.fetch(`/search/repositories?${params.toString()}`)
9
+ return await res.json()
10
+ }
@@ -0,0 +1,15 @@
1
+ async (input) => {
2
+ const body = {}
3
+ if (input.title !== undefined)
4
+ body.title = input.title
5
+ if (input.body !== undefined)
6
+ body.body = input.body
7
+ if (input.state !== undefined)
8
+ body.state = input.state
9
+ if (input.assignees !== undefined)
10
+ body.assignees = input.assignees
11
+ if (input.labels !== undefined)
12
+ body.labels = input.labels
13
+ const res = await integration.fetch(`/repos/${input.owner}/${input.repo}/issues/${input.issue_number}`, { method: 'PATCH', body })
14
+ return await res.json()
15
+ }
@@ -0,0 +1,13 @@
1
+ async (input) => {
2
+ const body = {}
3
+ if (input.title !== undefined) body.title = input.title
4
+ if (input.body !== undefined) body.body = input.body
5
+ if (input.state !== undefined) body.state = input.state
6
+ if (input.base !== undefined) body.base = input.base
7
+ if (input.draft !== undefined) body.draft = input.draft
8
+ const res = await integration.fetch(
9
+ `/repos/${input.owner}/${input.repo}/pulls/${input.pull_number}`,
10
+ { method: 'PATCH', body }
11
+ )
12
+ return await res.json()
13
+ }
@@ -0,0 +1,92 @@
1
+ {
2
+ "name": "github",
3
+ "version": "0.3.0",
4
+ "baseUrl": "https://api.github.com",
5
+ "toolsets": {
6
+ "code": {
7
+ "label": "Code & Files",
8
+ "description": "Read, search, and manage repository code and branches"
9
+ },
10
+ "issues": {
11
+ "label": "Issues",
12
+ "description": "Create, search, and manage GitHub issues"
13
+ },
14
+ "pull_requests": {
15
+ "label": "Pull Requests",
16
+ "description": "Create, review, and merge pull requests"
17
+ },
18
+ "ci": {
19
+ "label": "CI / Actions",
20
+ "description": "Monitor GitHub Actions workflows and debug failures"
21
+ },
22
+ "releases": {
23
+ "label": "Releases & Tags",
24
+ "description": "Manage releases and view tags"
25
+ },
26
+ "repo_admin": {
27
+ "label": "Repository Management",
28
+ "description": "Create, delete, fork, and discover repositories"
29
+ }
30
+ },
31
+ "tools": [
32
+ { "name": "get_me", "description": "Get the authenticated user's profile. Use this to find out who you are authenticated as before performing operations.", "inputSchema": "schemas/empty.json", "handler": "handlers/get_me.js", "scope": "read", "toolset": "repo_admin" },
33
+ { "name": "list_repos", "description": "List repositories for the authenticated user. Use get_repo for full metadata.", "inputSchema": "schemas/empty.json", "handler": "handlers/list_repos_user.js", "scope": "read", "toolset": "repo_admin" },
34
+ { "name": "get_repo", "description": "Get details for a repository (description, default branch, visibility, topics, stats).", "inputSchema": "schemas/get_repo.json", "handler": "handlers/get_repo.js", "scope": "read", "toolset": "code" },
35
+ { "name": "search_repos", "description": "Search GitHub repositories. Supports stars, forks, language, topic, and user filters (e.g. 'topic:react stars:>1000 language:javascript'). Use this to discover repos.", "inputSchema": "schemas/search_repos.json", "handler": "handlers/search_repos.js", "scope": "read", "toolset": "repo_admin" },
36
+
37
+ { "name": "get_file_contents", "description": "Get the content of a file from a repository. Returns decoded UTF-8 text. Use ref to read from a specific branch, tag, or commit. Call get_repo_tree first to discover file paths.", "inputSchema": "schemas/get_file_contents.json", "handler": "handlers/get_file_contents.js", "scope": "read", "toolset": "code" },
38
+ { "name": "get_repo_tree", "description": "Get the full file/directory tree of a repository. Returns all paths and types. Use path_filter to scope to a subdirectory (e.g. 'src/'). Use this before get_file_contents to discover what files exist.", "inputSchema": "schemas/get_repo_tree.json", "handler": "handlers/get_repo_tree.js", "scope": "read", "toolset": "code" },
39
+ { "name": "search_code", "description": "Search for code across GitHub repositories using GitHub's code search syntax. Examples: 'useState language:typescript repo:facebook/react', 'console.error path:src/'. Returns file paths and matched fragments.", "inputSchema": "schemas/search_code.json", "handler": "handlers/search_code.js", "scope": "read", "toolset": "code" },
40
+
41
+ { "name": "list_branches", "description": "List branches in a repository. Supports pagination and filtering by protection status.", "inputSchema": "schemas/list_branches.json", "handler": "handlers/list_branches.js", "scope": "read", "toolset": "code" },
42
+ { "name": "list_commits", "description": "List commits for a repository. Filter by branch/tag (sha), file path, or author. Paginate with page/per_page.", "inputSchema": "schemas/list_commits.json", "handler": "handlers/list_commits.js", "scope": "read", "toolset": "code" },
43
+ { "name": "get_commit", "description": "Get the full details of a specific commit including its message, author, file changes, and diff stats.", "inputSchema": "schemas/get_commit.json", "handler": "handlers/get_commit.js", "scope": "read", "toolset": "code" },
44
+ { "name": "list_tags", "description": "List tags for a repository. Use this to see available versions before creating a release.", "inputSchema": "schemas/list_tags.json", "handler": "handlers/list_tags.js", "scope": "read", "toolset": "code" },
45
+
46
+ { "name": "list_issues", "description": "List issues for a repository. Filter by state (open/closed/all), labels (comma-separated), and assignee. Paginate with page/per_page. Note: this also returns pull requests; use search_issues to exclude them.", "inputSchema": "schemas/list_issues.json", "handler": "handlers/list_issues.js", "scope": "read", "toolset": "issues" },
47
+ { "name": "get_issue", "description": "Get full details of a specific issue including its body, labels, assignees, and milestone.", "inputSchema": "schemas/get_issue.json", "handler": "handlers/get_issue.js", "scope": "read", "toolset": "issues" },
48
+ { "name": "list_issue_comments", "description": "List all comments on an issue. Use this to read the full discussion thread before replying.", "inputSchema": "schemas/list_issue_comments.json", "handler": "handlers/list_issue_comments.js", "scope": "read", "toolset": "issues" },
49
+ { "name": "search_issues", "description": "Search issues using GitHub search syntax (e.g. 'is:open is:issue label:bug repo:owner/repo', 'is:issue no:assignee milestone:v2.0'). More powerful than list_issues for finding specific issues.", "inputSchema": "schemas/search_issues.json", "handler": "handlers/search_issues.js", "scope": "read", "toolset": "issues" },
50
+ { "name": "list_labels", "description": "List all labels available in a repository. Call this before add_labels_to_issue to see which labels exist.", "inputSchema": "schemas/list_labels.json", "handler": "handlers/list_labels.js", "scope": "read", "toolset": "issues" },
51
+
52
+ { "name": "list_pull_requests", "description": "List pull requests for a repository. Filter by state, head branch, base branch. Sort and paginate results.", "inputSchema": "schemas/list_pull_requests.json", "handler": "handlers/list_pull_requests.js", "scope": "read", "toolset": "pull_requests" },
53
+ { "name": "get_pull_request", "description": "Get full details of a specific pull request including title, body, state, merge status, head/base refs, reviewers, and labels.", "inputSchema": "schemas/get_pull_request.json", "handler": "handlers/get_pull_request.js", "scope": "read", "toolset": "pull_requests" },
54
+ { "name": "get_pull_request_diff", "description": "Get the raw unified diff for a pull request. Returns the complete diff of all changes. For per-file details, use list_pull_request_files instead.", "inputSchema": "schemas/get_pull_request_diff.json", "handler": "handlers/get_pull_request_diff.js", "scope": "read", "toolset": "pull_requests" },
55
+ { "name": "list_pull_request_files", "description": "List the files changed in a pull request with their status (added/modified/deleted) and patch diff per file. Essential for code review.", "inputSchema": "schemas/list_pull_request_files.json", "handler": "handlers/list_pull_request_files.js", "scope": "read", "toolset": "pull_requests" },
56
+ { "name": "list_pull_request_comments", "description": "List inline review comments on a pull request (comments attached to specific lines of code).", "inputSchema": "schemas/list_pull_request_comments.json", "handler": "handlers/list_pull_request_comments.js", "scope": "read", "toolset": "pull_requests" },
57
+ { "name": "search_pull_requests", "description": "Search pull requests using GitHub search syntax. Use 'is:pr' to scope to PRs (e.g. 'is:pr is:open author:octocat', 'is:pr review:required label:bug'). Returns matching PRs across repos.", "inputSchema": "schemas/search_pull_requests.json", "handler": "handlers/search_pull_requests.js", "scope": "read", "toolset": "pull_requests" },
58
+
59
+ { "name": "list_releases", "description": "List all releases for a repository, newest first.", "inputSchema": "schemas/list_releases.json", "handler": "handlers/list_releases.js", "scope": "read", "toolset": "releases" },
60
+ { "name": "get_latest_release", "description": "Get the latest published release for a repository. Use this to quickly check the current version.", "inputSchema": "schemas/owner_repo.json", "handler": "handlers/get_latest_release.js", "scope": "read", "toolset": "releases" },
61
+
62
+ { "name": "list_workflow_runs", "description": "List GitHub Actions workflow runs for a repository. Filter by branch, status (e.g. 'failure', 'success'), or triggering event. Use this to check CI status.", "inputSchema": "schemas/list_workflow_runs.json", "handler": "handlers/list_workflow_runs.js", "scope": "read", "toolset": "ci" },
63
+ { "name": "get_workflow_run", "description": "Get details of a specific GitHub Actions workflow run including its status, conclusion, timing, and associated commit.", "inputSchema": "schemas/get_workflow_run.json", "handler": "handlers/get_workflow_run.js", "scope": "read", "toolset": "ci" },
64
+ { "name": "get_job_logs", "description": "Get the log output for a specific GitHub Actions workflow job. Use this to diagnose CI failures. Get job_id from the GitHub Actions UI or the jobs list of a workflow run.", "inputSchema": "schemas/get_job_logs.json", "handler": "handlers/get_job_logs.js", "scope": "read", "toolset": "ci" },
65
+
66
+ { "name": "create_repo", "description": "Create a new GitHub repository under the authenticated user's account.", "inputSchema": "schemas/create_repo.json", "handler": "handlers/create_repo.js", "scope": "write", "credentialVariants": ["classic_pat"], "toolset": "repo_admin" },
67
+ { "name": "delete_repo", "description": "Permanently delete a repository. This is irreversible. Requires the delete_repo scope on classic PATs.", "inputSchema": "schemas/delete_repo.json", "handler": "handlers/delete_repo.js", "scope": "write", "credentialVariants": ["classic_pat"], "toolset": "repo_admin" },
68
+ { "name": "fork_repo", "description": "Fork a repository into your account or an organization. The fork is created asynchronously; the response returns immediately with the new repo details.", "inputSchema": "schemas/fork_repo.json", "handler": "handlers/fork_repo.js", "scope": "write", "toolset": "repo_admin" },
69
+
70
+ { "name": "create_branch", "description": "Create a new branch in a repository, branching from the repo's default branch by default.", "inputSchema": "schemas/create_branch.json", "handler": "handlers/create_branch.js", "scope": "write", "toolset": "code" },
71
+ { "name": "delete_branch", "description": "Delete a branch. Typically used after a pull request is merged. Use list_branches to find the branch name first.", "inputSchema": "schemas/delete_branch.json", "handler": "handlers/delete_branch.js", "scope": "write", "toolset": "code" },
72
+
73
+ { "name": "edit_file", "description": "Edit a file using search/replace. Fetches the file, applies edits, and commits the result. Each old_text must match the file content exactly, including whitespace and indentation. Use get_file_contents to verify content before editing. For multi-file atomic changes, use edit_files instead.", "inputSchema": "schemas/edit_file.json", "handler": "handlers/edit_file.js", "scope": "write", "toolset": "code" },
74
+ { "name": "edit_files", "description": "Create, edit, and delete multiple files in a single atomic commit. Use action 'create' with content for new files, 'edit' with old_text/new_text search/replace pairs for existing files, 'delete' to remove files. All changes are committed together. For single-file edits, use edit_file instead.", "inputSchema": "schemas/edit_files.json", "handler": "handlers/edit_files.js", "scope": "write", "toolset": "code" },
75
+ { "name": "create_file", "description": "Create a new file or overwrite an existing file's content in a single commit. Handles SHA resolution internally -- no need to fetch the file first. For partial edits to existing files, use edit_file instead.", "inputSchema": "schemas/create_file.json", "handler": "handlers/create_file.js", "scope": "write", "toolset": "code" },
76
+ { "name": "delete_file", "description": "Delete a file from a repository. The file's SHA is fetched automatically. Creates a commit with the deletion.", "inputSchema": "schemas/delete_file.json", "handler": "handlers/delete_file.js", "scope": "write", "toolset": "code" },
77
+
78
+ { "name": "create_pull_request", "description": "Open a new pull request from a head branch into a base branch.", "inputSchema": "schemas/create_pull_request.json", "handler": "handlers/create_pull_request.js", "scope": "write", "toolset": "pull_requests" },
79
+ { "name": "update_pull_request", "description": "Edit a pull request's title, body, state (open/closed), base branch, or draft status.", "inputSchema": "schemas/update_pull_request.json", "handler": "handlers/update_pull_request.js", "scope": "write", "toolset": "pull_requests" },
80
+ { "name": "merge_pull_request", "description": "Merge a pull request. Supports merge, squash, and rebase merge methods.", "inputSchema": "schemas/merge_pull_request.json", "handler": "handlers/merge_pull_request.js", "scope": "write", "toolset": "pull_requests" },
81
+ { "name": "request_pull_request_reviewers", "description": "Request specific users or teams to review a pull request.", "inputSchema": "schemas/request_pull_request_reviewers.json", "handler": "handlers/request_pull_request_reviewers.js", "scope": "write", "toolset": "pull_requests" },
82
+ { "name": "create_pull_request_review", "description": "Submit a pull request review. Use event=APPROVE to approve, REQUEST_CHANGES to request changes, or COMMENT to leave a comment-only review.", "inputSchema": "schemas/create_pull_request_review.json", "handler": "handlers/create_pull_request_review.js", "scope": "write", "toolset": "pull_requests" },
83
+
84
+ { "name": "create_issue", "description": "Create a new issue in a repository. Optionally assign users and add labels.", "inputSchema": "schemas/create_issue.json", "handler": "handlers/create_issue.js", "scope": "write", "toolset": "issues" },
85
+ { "name": "update_issue", "description": "Update fields on an existing issue (title, body, state, assignees, labels, milestone).", "inputSchema": "schemas/update_issue.json", "handler": "handlers/update_issue.js", "scope": "write", "toolset": "issues" },
86
+ { "name": "close_issue", "description": "Close an issue.", "inputSchema": "schemas/close_issue.json", "handler": "handlers/close_issue.js", "scope": "write", "toolset": "issues" },
87
+ { "name": "comment_on_issue", "description": "Add a comment to an issue or pull request (GitHub PRs share the issue comment thread). Use list_issue_comments to read existing comments first.", "inputSchema": "schemas/comment_on_issue.json", "handler": "handlers/comment_on_issue.js", "scope": "write", "toolset": "issues" },
88
+ { "name": "add_labels_to_issue", "description": "Add labels to an issue or pull request. Use list_labels to discover available labels before calling this.", "inputSchema": "schemas/add_labels_to_issue.json", "handler": "handlers/add_labels_to_issue.js", "scope": "write", "toolset": "issues" },
89
+
90
+ { "name": "create_release", "description": "Create a new release from a tag. Can auto-generate release notes from commits. Set draft=true to save without publishing, prerelease=true for alpha/beta/rc versions.", "inputSchema": "schemas/create_release.json", "handler": "handlers/create_release.js", "scope": "write", "toolset": "releases" }
91
+ ]
92
+ }
@@ -0,0 +1,36 @@
1
+ # GitHub coding workflow
2
+
3
+ ## Branch-based workflow
4
+
5
+ Always work on a feature branch, never commit directly to main:
6
+
7
+ 1. `create_branch` from the default branch
8
+ 2. Make changes with `edit_file`, `edit_files`, `create_file`, or `delete_file` -- each call auto-commits to the branch
9
+ 3. `create_pull_request` when done
10
+ 4. `merge_pull_request` with `merge_method: "squash"` to collapse all commits into one clean commit on main
11
+
12
+ Multiple small commits on a feature branch are fine -- they get squash-merged into a single commit.
13
+
14
+ ## Choosing the right write tool
15
+
16
+ - **`edit_file`** -- Surgical edits to a single existing file. Use for most code changes. Each call is a commit.
17
+ - **`edit_files`** -- Atomic multi-file changes (create + edit + delete in one commit). Use when files must change together to stay consistent (e.g. renaming across files, adding a module + updating imports).
18
+ - **`create_file`** -- Create a new file or completely replace an existing file's content. Use for new files or full rewrites.
19
+ - **`delete_file`** -- Remove a file.
20
+
21
+ ## Search/replace rules for edit_file and edit_files
22
+
23
+ The `old_text` field must be an **exact match** of the text currently in the file:
24
+
25
+ - Whitespace matters: spaces, tabs, and indentation must match exactly
26
+ - Line breaks matter: include the exact newline characters
27
+ - Include enough surrounding context to uniquely identify the location
28
+ - Each edit replaces the **first occurrence** only. To replace multiple occurrences, use separate edits.
29
+
30
+ **Before editing**, call `get_file_contents` to see the file's current content. This avoids failed edits from stale or incorrect assumptions about file content.
31
+
32
+ ## Reading before writing
33
+
34
+ - Use `get_repo_tree` to discover the project structure and file paths
35
+ - Use `get_file_contents` to read a file before editing it
36
+ - Use `search_code` to find where something is defined or used across the repo
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "The account owner of the repository" },
5
+ "repo": { "type": "string", "description": "The name of the repository" },
6
+ "issue_number": { "type": "number", "description": "The number of the issue" },
7
+ "labels": { "type": "array", "items": { "type": "string" }, "description": "The names of the labels to add" }
8
+ },
9
+ "required": ["owner", "repo", "issue_number", "labels"],
10
+ "additionalProperties": false
11
+ }
12
+
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string" },
5
+ "repo": { "type": "string" },
6
+ "issue_number": { "type": "integer", "minimum": 1 }
7
+ },
8
+ "required": ["owner", "repo", "issue_number"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string" },
5
+ "repo": { "type": "string" },
6
+ "issue_number": { "type": "integer", "minimum": 1 },
7
+ "body": { "type": "string" }
8
+ },
9
+ "required": ["owner", "repo", "issue_number", "body"],
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "The account owner of the repository" },
5
+ "repo": { "type": "string", "description": "The name of the repository" },
6
+ "branch": { "type": "string", "description": "The name of the new branch" },
7
+ "from_branch": { "type": "string", "description": "The branch to create from. Defaults to the repository's default branch" }
8
+ },
9
+ "required": ["owner", "repo", "branch"],
10
+ "additionalProperties": false
11
+ }
12
+
@@ -0,0 +1,25 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "The account owner of the repository" },
5
+ "repo": { "type": "string", "description": "The name of the repository" },
6
+ "branch": { "type": "string", "description": "The branch to commit to" },
7
+ "message": { "type": "string", "description": "The commit message" },
8
+ "files": {
9
+ "type": "array",
10
+ "description": "Array of files to add/update/delete in this commit",
11
+ "items": {
12
+ "type": "object",
13
+ "properties": {
14
+ "path": { "type": "string", "description": "File path in the repository" },
15
+ "content": { "type": "string", "description": "Plain text file content (omit to delete). Do NOT base64; encoding handled internally." },
16
+ "mode": { "type": "string", "enum": ["100644", "100755", "040000", "160000", "120000"], "description": "File mode (100644 for regular files, 100755 for executable)" }
17
+ },
18
+ "required": ["path"]
19
+ }
20
+ }
21
+ },
22
+ "required": ["owner", "repo", "branch", "message", "files"],
23
+ "additionalProperties": false
24
+ }
25
+
@@ -0,0 +1,13 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Branch to commit to" },
7
+ "path": { "type": "string", "description": "File path to create (e.g. 'src/utils/helpers.ts')" },
8
+ "content": { "type": "string", "description": "Plain text file content" },
9
+ "message": { "type": "string", "description": "Commit message" }
10
+ },
11
+ "required": ["owner", "repo", "branch", "path", "content", "message"],
12
+ "additionalProperties": false
13
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string" },
5
+ "repo": { "type": "string" },
6
+ "title": { "type": "string" },
7
+ "body": { "type": "string" },
8
+ "assignees": { "type": "array", "items": { "type": "string" } },
9
+ "labels": { "type": "array", "items": { "type": "string" } }
10
+ },
11
+ "required": ["owner", "repo", "title"],
12
+ "additionalProperties": false
13
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "The account owner of the repository" },
5
+ "repo": { "type": "string", "description": "The name of the repository" },
6
+ "path": { "type": "string", "description": "Path to the file in the repository" },
7
+ "message": { "type": "string", "description": "The commit message" },
8
+ "content": { "type": "string", "description": "Plain text file content. Do NOT base64; encoding handled internally." },
9
+ "branch": { "type": "string", "description": "The branch name. Defaults to the repository's default branch" },
10
+ "sha": { "type": "string", "description": "Required if updating an existing file. The blob SHA of the file being replaced" }
11
+ },
12
+ "required": ["owner", "repo", "path", "message", "content"],
13
+ "additionalProperties": false
14
+ }
15
+
@@ -0,0 +1,15 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "The account owner of the repository" },
5
+ "repo": { "type": "string", "description": "The name of the repository" },
6
+ "title": { "type": "string", "description": "The title of the pull request" },
7
+ "body": { "type": "string", "description": "The contents of the pull request" },
8
+ "head": { "type": "string", "description": "The name of the branch where your changes are implemented" },
9
+ "base": { "type": "string", "description": "The name of the branch you want the changes pulled into" },
10
+ "draft": { "type": "boolean", "description": "Whether to create the pull request as a draft" }
11
+ },
12
+ "required": ["owner", "repo", "title", "head", "base"],
13
+ "additionalProperties": false
14
+ }
15
+
@@ -0,0 +1,17 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "pull_number": { "type": "integer", "description": "Pull request number" },
7
+ "event": {
8
+ "type": "string",
9
+ "enum": ["APPROVE", "REQUEST_CHANGES", "COMMENT"],
10
+ "description": "Review action: APPROVE to approve, REQUEST_CHANGES to request changes, COMMENT to leave a comment only"
11
+ },
12
+ "body": { "type": "string", "description": "Review summary comment (required when event is REQUEST_CHANGES or COMMENT)" },
13
+ "commit_id": { "type": "string", "description": "SHA of the commit to review. Defaults to the latest commit on the PR." }
14
+ },
15
+ "required": ["owner", "repo", "pull_number", "event"],
16
+ "additionalProperties": false
17
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "tag_name": { "type": "string", "description": "Tag to create the release from (e.g. 'v1.2.0'). The tag must already exist or target_commitish must be provided." },
7
+ "name": { "type": "string", "description": "Release title (defaults to tag_name)" },
8
+ "body": { "type": "string", "description": "Release notes in markdown" },
9
+ "draft": { "type": "boolean", "description": "Create as an unpublished draft release", "default": false },
10
+ "prerelease": { "type": "boolean", "description": "Mark as a pre-release (alpha, beta, rc, etc.)", "default": false },
11
+ "target_commitish": { "type": "string", "description": "Branch name or commit SHA to tag from (defaults to the repo's default branch). Required if the tag does not yet exist." },
12
+ "generate_release_notes": { "type": "boolean", "description": "Auto-generate release notes from commits merged since the previous release", "default": false }
13
+ },
14
+ "required": ["owner", "repo", "tag_name"],
15
+ "additionalProperties": false
16
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "name": { "type": "string", "description": "The name of the repository" },
5
+ "description": { "type": "string", "description": "A short description of the repository" },
6
+ "private": { "type": "boolean", "description": "Whether the repository is private", "default": false },
7
+ "auto_init": { "type": "boolean", "description": "Pass true to create an initial commit with empty README", "default": false }
8
+ },
9
+ "required": ["name"],
10
+ "additionalProperties": false
11
+ }
12
+
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Branch name to delete (e.g. 'feature/my-feature')" }
7
+ },
8
+ "required": ["owner", "repo", "branch"],
9
+ "additionalProperties": false
10
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "path": { "type": "string", "description": "Path of the file to delete (e.g. 'src/old-file.js')" },
7
+ "message": { "type": "string", "description": "Commit message" },
8
+ "sha": { "type": "string", "description": "Optional blob SHA. If omitted, the SHA is fetched automatically." },
9
+ "branch": { "type": "string", "description": "Branch to delete the file from (defaults to the repo's default branch)" }
10
+ },
11
+ "required": ["owner", "repo", "path", "message"],
12
+ "additionalProperties": false
13
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "The account owner of the repository" },
5
+ "repo": { "type": "string", "description": "The name of the repository" }
6
+ },
7
+ "required": ["owner", "repo"],
8
+ "additionalProperties": false
9
+ }
10
+
@@ -0,0 +1,26 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Branch to commit to" },
7
+ "path": { "type": "string", "description": "Path of the file to edit (e.g. 'src/index.ts')" },
8
+ "edits": {
9
+ "type": "array",
10
+ "description": "Search/replace operations applied in order. Each old_text must match the file content exactly, including whitespace and indentation.",
11
+ "items": {
12
+ "type": "object",
13
+ "properties": {
14
+ "old_text": { "type": "string", "description": "Exact text to find in the file" },
15
+ "new_text": { "type": "string", "description": "Text to replace it with" }
16
+ },
17
+ "required": ["old_text", "new_text"],
18
+ "additionalProperties": false
19
+ },
20
+ "minItems": 1
21
+ },
22
+ "message": { "type": "string", "description": "Commit message" }
23
+ },
24
+ "required": ["owner", "repo", "branch", "path", "edits", "message"],
25
+ "additionalProperties": false
26
+ }
@@ -0,0 +1,39 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "branch": { "type": "string", "description": "Branch to commit to" },
7
+ "message": { "type": "string", "description": "Commit message" },
8
+ "files": {
9
+ "type": "array",
10
+ "description": "Files to create, edit, or delete in this commit",
11
+ "items": {
12
+ "type": "object",
13
+ "properties": {
14
+ "path": { "type": "string", "description": "File path in the repository" },
15
+ "action": { "type": "string", "enum": ["create", "edit", "delete"], "description": "'create': new file or overwrite with content. 'edit': apply search/replace edits to existing file. 'delete': remove the file." },
16
+ "content": { "type": "string", "description": "Full file content (required for 'create' action)" },
17
+ "edits": {
18
+ "type": "array",
19
+ "description": "Search/replace pairs (required for 'edit' action). Each old_text must match exactly, including whitespace.",
20
+ "items": {
21
+ "type": "object",
22
+ "properties": {
23
+ "old_text": { "type": "string", "description": "Exact text to find" },
24
+ "new_text": { "type": "string", "description": "Text to replace it with" }
25
+ },
26
+ "required": ["old_text", "new_text"],
27
+ "additionalProperties": false
28
+ }
29
+ }
30
+ },
31
+ "required": ["path", "action"],
32
+ "additionalProperties": false
33
+ },
34
+ "minItems": 1
35
+ }
36
+ },
37
+ "required": ["owner", "repo", "branch", "message", "files"],
38
+ "additionalProperties": false
39
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {},
4
+ "additionalProperties": false
5
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner to fork from" },
5
+ "repo": { "type": "string", "description": "Repository name to fork" },
6
+ "organization": { "type": "string", "description": "Organization to fork into (defaults to the authenticated user's account)" },
7
+ "name": { "type": "string", "description": "New name for the forked repository (defaults to the original name)" }
8
+ },
9
+ "required": ["owner", "repo"],
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "owner": { "type": "string", "description": "Repository owner" },
5
+ "repo": { "type": "string", "description": "Repository name" },
6
+ "sha": { "type": "string", "description": "Commit SHA, branch name, or tag name" },
7
+ "page": { "type": "integer", "default": 1, "description": "Page for paginating large diffs (when a commit touches many files)" },
8
+ "per_page": { "type": "integer", "default": 30, "maximum": 100 }
9
+ },
10
+ "required": ["owner", "repo", "sha"],
11
+ "additionalProperties": false
12
+ }