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