@vicoa/cli 1.3.10 → 1.3.11-linux-x64
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/bin/_internal/81d243bd2c585b0f4821__mypyc.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/_cffi_backend.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/aiofile-3.9.0.dist-info/INSTALLER +1 -0
- package/bin/_internal/aiofile-3.9.0.dist-info/LICENCE +195 -0
- package/bin/_internal/aiofile-3.9.0.dist-info/LICENCE.md +195 -0
- package/bin/_internal/aiofile-3.9.0.dist-info/METADATA +492 -0
- package/bin/_internal/aiofile-3.9.0.dist-info/RECORD +15 -0
- package/bin/_internal/aiofile-3.9.0.dist-info/WHEEL +4 -0
- package/bin/_internal/aiohttp/_http_parser.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/aiohttp/_http_writer.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/aiohttp/_websocket/mask.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/aiohttp/_websocket/reader_c.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/attrs-26.1.0.dist-info/INSTALLER +1 -0
- package/bin/_internal/attrs-26.1.0.dist-info/METADATA +199 -0
- package/bin/_internal/attrs-26.1.0.dist-info/RECORD +55 -0
- package/bin/_internal/attrs-26.1.0.dist-info/WHEEL +4 -0
- package/bin/_internal/attrs-26.1.0.dist-info/licenses/LICENSE +21 -0
- package/bin/_internal/base_library.zip +0 -0
- package/bin/_internal/caio/linux_aio.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/caio/thread_aio.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/certifi/cacert.pem +4494 -0
- package/bin/_internal/certifi/py.typed +0 -0
- package/bin/_internal/charset_normalizer/cd.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/charset_normalizer/md.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/click-8.3.2.dist-info/INSTALLER +1 -0
- package/bin/_internal/click-8.3.2.dist-info/METADATA +84 -0
- package/bin/_internal/click-8.3.2.dist-info/RECORD +40 -0
- package/bin/_internal/click-8.3.2.dist-info/WHEEL +4 -0
- package/bin/_internal/click-8.3.2.dist-info/licenses/LICENSE.txt +28 -0
- package/bin/_internal/cryptography/hazmat/bindings/_rust.abi3.so +0 -0
- package/bin/_internal/cryptography-46.0.7.dist-info/INSTALLER +1 -0
- package/bin/_internal/cryptography-46.0.7.dist-info/METADATA +139 -0
- package/bin/_internal/cryptography-46.0.7.dist-info/RECORD +180 -0
- package/bin/_internal/cryptography-46.0.7.dist-info/WHEEL +5 -0
- package/bin/_internal/cryptography-46.0.7.dist-info/licenses/LICENSE +3 -0
- package/bin/_internal/cryptography-46.0.7.dist-info/licenses/LICENSE.APACHE +202 -0
- package/bin/_internal/cryptography-46.0.7.dist-info/licenses/LICENSE.BSD +27 -0
- package/bin/_internal/email_validator-2.3.0.dist-info/INSTALLER +1 -0
- package/bin/_internal/email_validator-2.3.0.dist-info/METADATA +466 -0
- package/bin/_internal/email_validator-2.3.0.dist-info/RECORD +27 -0
- package/bin/_internal/email_validator-2.3.0.dist-info/WHEEL +5 -0
- package/bin/_internal/email_validator-2.3.0.dist-info/entry_points.txt +2 -0
- package/bin/_internal/email_validator-2.3.0.dist-info/licenses/LICENSE +27 -0
- package/bin/_internal/email_validator-2.3.0.dist-info/top_level.txt +1 -0
- package/bin/_internal/frozenlist/_frozenlist.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/importlib_metadata-8.7.1.dist-info/INSTALLER +1 -0
- package/bin/_internal/importlib_metadata-8.7.1.dist-info/METADATA +133 -0
- package/bin/_internal/importlib_metadata-8.7.1.dist-info/RECORD +33 -0
- package/bin/_internal/importlib_metadata-8.7.1.dist-info/WHEEL +5 -0
- package/bin/_internal/importlib_metadata-8.7.1.dist-info/licenses/LICENSE +73 -0
- package/bin/_internal/importlib_metadata-8.7.1.dist-info/top_level.txt +1 -0
- package/bin/_internal/integrations/cli_wrappers/IMPORTANT_USE_CASES.md +33 -0
- package/bin/_internal/integrations/github/claude-code-action/CLAUDE.md +136 -0
- package/bin/_internal/integrations/github/claude-code-action/CODE_OF_CONDUCT.md +128 -0
- package/bin/_internal/integrations/github/claude-code-action/CONTRIBUTING.md +116 -0
- package/bin/_internal/integrations/github/claude-code-action/LICENSE +21 -0
- package/bin/_internal/integrations/github/claude-code-action/README.md +53 -0
- package/bin/_internal/integrations/github/claude-code-action/ROADMAP.md +20 -0
- package/bin/_internal/integrations/github/claude-code-action/SECURITY.md +15 -0
- package/bin/_internal/integrations/github/claude-code-action/action.yml +294 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/CLAUDE.md +60 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/CODE_OF_CONDUCT.md +128 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/CONTRIBUTING.md +136 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/LICENSE +21 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/MIRROR_DISCLAIMER.md +11 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/README.md +521 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/action.yml +149 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/bun.lock +54 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/examples/issue-triage.yml +108 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/package.json +23 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/scripts/install-hooks.sh +13 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/scripts/pre-push +46 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/src/index.ts +82 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/src/prepare-prompt.ts +82 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/src/run-claude.ts +257 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/src/run-vicoa.ts +301 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/src/setup-claude-code-settings.ts +68 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/src/validate-env.ts +54 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/test-local.sh +12 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/test-mcp-local.sh +18 -0
- package/bin/_internal/integrations/github/claude-code-action/base-action/tsconfig.json +30 -0
- package/bin/_internal/integrations/github/claude-code-action/bun.lock +384 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/capabilities-and-limitations.md +33 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/cloud-providers.md +99 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/configuration.md +345 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/custom-automations.md +113 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/experimental.md +128 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/faq.md +205 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/migration-guide.md +261 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/security.md +38 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/setup.md +146 -0
- package/bin/_internal/integrations/github/claude-code-action/docs/usage.md +213 -0
- package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci/auto-fix-ci.yml +97 -0
- package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci/commands/fix-ci.md +127 -0
- package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci-signed/auto-fix-ci-signed.yml +97 -0
- package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci-signed/commands/fix-ci-signed.md +148 -0
- package/bin/_internal/integrations/github/claude-code-action/examples/issue-deduplication.yml +63 -0
- package/bin/_internal/integrations/github/claude-code-action/examples/issue-triage.yml +75 -0
- package/bin/_internal/integrations/github/claude-code-action/examples/vicoa.yml +75 -0
- package/bin/_internal/integrations/github/claude-code-action/package.json +31 -0
- package/bin/_internal/integrations/github/claude-code-action/scripts/install-hooks.sh +13 -0
- package/bin/_internal/integrations/github/claude-code-action/scripts/pre-commit +46 -0
- package/bin/_internal/integrations/github/claude-code-action/scripts/setup-network-restrictions.sh +123 -0
- package/bin/_internal/integrations/github/claude-code-action/src/create-prompt/index.ts +799 -0
- package/bin/_internal/integrations/github/claude-code-action/src/create-prompt/types.ts +102 -0
- package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/collect-inputs.ts +58 -0
- package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/format-turns.ts +465 -0
- package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/prepare.ts +98 -0
- package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/update-comment-link.ts +245 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/api/client.ts +23 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/api/config.ts +4 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/api/queries/github.ts +117 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/context.ts +277 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/data/fetcher.ts +233 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/data/formatter.ts +144 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/operations/branch-cleanup.ts +132 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/operations/branch.ts +163 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comment-logic.ts +203 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/common.ts +33 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/create-initial.ts +111 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/update-claude-comment.ts +70 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/update-with-branch.ts +57 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/operations/git-config.ts +62 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/token.ts +108 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/types.ts +98 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/utils/image-downloader.ts +246 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/utils/sanitizer.ts +100 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/validation/actor.ts +64 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/validation/permissions.ts +47 -0
- package/bin/_internal/integrations/github/claude-code-action/src/github/validation/trigger.ts +148 -0
- package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-actions-server.ts +279 -0
- package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-comment-server.ts +101 -0
- package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-file-ops-server.ts +677 -0
- package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-inline-comment-server.ts +184 -0
- package/bin/_internal/integrations/github/claude-code-action/src/mcp/install-mcp-server.ts +201 -0
- package/bin/_internal/integrations/github/claude-code-action/src/modes/agent/index.ts +152 -0
- package/bin/_internal/integrations/github/claude-code-action/src/modes/agent/parse-tools.ts +22 -0
- package/bin/_internal/integrations/github/claude-code-action/src/modes/detector.ts +66 -0
- package/bin/_internal/integrations/github/claude-code-action/src/modes/registry.ts +54 -0
- package/bin/_internal/integrations/github/claude-code-action/src/modes/tag/index.ts +187 -0
- package/bin/_internal/integrations/github/claude-code-action/src/modes/types.ts +100 -0
- package/bin/_internal/integrations/github/claude-code-action/src/prepare/index.ts +20 -0
- package/bin/_internal/integrations/github/claude-code-action/src/prepare/types.ts +20 -0
- package/bin/_internal/integrations/github/claude-code-action/src/utils/retry.ts +40 -0
- package/bin/_internal/integrations/github/claude-code-action/tsconfig.json +30 -0
- package/bin/_internal/integrations/n8n/LICENSE +21 -0
- package/bin/_internal/integrations/n8n/README.md +298 -0
- package/bin/_internal/integrations/n8n/package-lock.json +2989 -0
- package/bin/_internal/integrations/n8n/package.json +68 -0
- package/bin/_internal/integrations/n8n/src/credentials/OmnaraApi.credentials.ts +52 -0
- package/bin/_internal/integrations/n8n/src/nodes/Omnara/Omnara.node.json +35 -0
- package/bin/_internal/integrations/n8n/src/nodes/Omnara/Omnara.node.ts +304 -0
- package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/index.ts +37 -0
- package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/send.operation.ts +151 -0
- package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/sendAndWait.operation.ts +252 -0
- package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/session/end.operation.ts +56 -0
- package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/session/index.ts +29 -0
- package/bin/_internal/integrations/n8n/src/nodes/Omnara/vicoa.png +0 -0
- package/bin/_internal/integrations/n8n/src/utils/GenericFunctions.ts +93 -0
- package/bin/_internal/integrations/n8n/src/utils/sendAndWait/configureWaitTillDate.ts +42 -0
- package/bin/_internal/integrations/n8n/src/utils/sendAndWait/descriptions.ts +20 -0
- package/bin/_internal/integrations/n8n/src/utils/sendAndWaitWebhook.ts +72 -0
- package/bin/_internal/integrations/n8n/tsconfig.json +20 -0
- package/bin/_internal/jiter/jiter.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/jsonschema/benchmarks/issue232/issue.json +2653 -0
- package/bin/_internal/jsonschema-4.26.0.dist-info/INSTALLER +1 -0
- package/bin/_internal/jsonschema-4.26.0.dist-info/METADATA +170 -0
- package/bin/_internal/jsonschema-4.26.0.dist-info/RECORD +82 -0
- package/bin/_internal/jsonschema-4.26.0.dist-info/WHEEL +4 -0
- package/bin/_internal/jsonschema-4.26.0.dist-info/entry_points.txt +2 -0
- package/bin/_internal/jsonschema-4.26.0.dist-info/licenses/COPYING +19 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/metaschema.json +42 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/applicator +56 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/content +17 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/core +57 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/format +14 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/meta-data +37 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft201909/vocabularies/validation +98 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/metaschema.json +58 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/applicator +48 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/content +17 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/core +51 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/format-annotation +14 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/format-assertion +14 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/meta-data +37 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/unevaluated +15 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft202012/vocabularies/validation +98 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft3/metaschema.json +172 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft4/metaschema.json +149 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft6/metaschema.json +153 -0
- package/bin/_internal/jsonschema_specifications/schemas/draft7/metaschema.json +166 -0
- package/bin/_internal/libbz2.so.1.0 +0 -0
- package/bin/_internal/libcrypto.so.3 +0 -0
- package/bin/_internal/libffi.so.8 +0 -0
- package/bin/_internal/libgcc_s.so.1 +0 -0
- package/bin/_internal/liblzma.so.5 +0 -0
- package/bin/_internal/libpython3.12.so.1.0 +0 -0
- package/bin/_internal/libreadline.so.8 +0 -0
- package/bin/_internal/libssl.so.3 +0 -0
- package/bin/_internal/libstdc++.so.6 +0 -0
- package/bin/_internal/libtinfo.so.6 +0 -0
- package/bin/_internal/libuuid.so.1 +0 -0
- package/bin/_internal/libz.so.1 +0 -0
- package/bin/_internal/mcp-1.27.0.dist-info/INSTALLER +1 -0
- package/bin/_internal/mcp-1.27.0.dist-info/METADATA +230 -0
- package/bin/_internal/mcp-1.27.0.dist-info/RECORD +226 -0
- package/bin/_internal/mcp-1.27.0.dist-info/WHEEL +4 -0
- package/bin/_internal/mcp-1.27.0.dist-info/entry_points.txt +2 -0
- package/bin/_internal/mcp-1.27.0.dist-info/licenses/LICENSE +21 -0
- package/bin/_internal/multidict/_multidict.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/opentelemetry_api-1.41.0.dist-info/INSTALLER +1 -0
- package/bin/_internal/opentelemetry_api-1.41.0.dist-info/METADATA +45 -0
- package/bin/_internal/opentelemetry_api-1.41.0.dist-info/RECORD +81 -0
- package/bin/_internal/opentelemetry_api-1.41.0.dist-info/WHEEL +4 -0
- package/bin/_internal/opentelemetry_api-1.41.0.dist-info/entry_points.txt +15 -0
- package/bin/_internal/opentelemetry_api-1.41.0.dist-info/licenses/LICENSE +201 -0
- package/bin/_internal/propcache/_helpers_c.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/pydantic-2.13.2.dist-info/INSTALLER +1 -0
- package/bin/_internal/pydantic-2.13.2.dist-info/METADATA +1269 -0
- package/bin/_internal/pydantic-2.13.2.dist-info/RECORD +217 -0
- package/bin/_internal/pydantic-2.13.2.dist-info/WHEEL +4 -0
- package/bin/_internal/pydantic-2.13.2.dist-info/licenses/LICENSE +21 -0
- package/bin/_internal/pydantic_core/_pydantic_core.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_asyncio.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_bisect.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_blake2.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_bz2.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_codecs_cn.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_codecs_hk.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_codecs_iso2022.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_codecs_jp.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_codecs_kr.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_codecs_tw.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_contextvars.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_csv.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_ctypes.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_datetime.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_decimal.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_hashlib.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_heapq.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_json.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_lzma.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_md5.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_multibytecodec.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_multiprocessing.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_opcode.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_pickle.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_posixshmem.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_posixsubprocess.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_queue.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_random.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_sha1.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_sha2.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_sha3.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_socket.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_ssl.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_statistics.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_struct.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_uuid.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/_zoneinfo.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/array.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/binascii.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/fcntl.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/grp.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/math.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/mmap.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/pyexpat.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/readline.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/resource.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/select.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/syslog.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/termios.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/unicodedata.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/python3.12/lib-dynload/zlib.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/rpds/rpds.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/setuptools/_vendor/jaraco/text/Lorem ipsum.txt +2 -0
- package/bin/_internal/vicoa/_bin/README.md +28 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/INSTALLER +1 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/METADATA +311 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/RECORD +11 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/REQUESTED +0 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/WHEEL +5 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/direct_url.json +1 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/entry_points.txt +2 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/licenses/LICENSE +201 -0
- package/bin/_internal/vicoa-1.3.10.dist-info/top_level.txt +3 -0
- package/bin/_internal/watchfiles/_rust_notify.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/websockets/speedups.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/websockets-16.0.dist-info/INSTALLER +1 -0
- package/bin/_internal/websockets-16.0.dist-info/METADATA +179 -0
- package/bin/_internal/websockets-16.0.dist-info/RECORD +108 -0
- package/bin/_internal/websockets-16.0.dist-info/WHEEL +7 -0
- package/bin/_internal/websockets-16.0.dist-info/entry_points.txt +2 -0
- package/bin/_internal/websockets-16.0.dist-info/licenses/LICENSE +24 -0
- package/bin/_internal/websockets-16.0.dist-info/top_level.txt +1 -0
- package/bin/_internal/yaml/_yaml.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/_internal/yarl/_quoting_c.cpython-312-x86_64-linux-gnu.so +0 -0
- package/bin/vicoa +0 -0
- package/package.json +10 -16
- package/README.md +0 -82
- package/bin/vicoa.js +0 -38
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Prepare the Claude action by checking trigger conditions, verifying human actor,
|
|
5
|
+
* and creating the initial tracking comment
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import * as core from "@actions/core";
|
|
9
|
+
import { setupGitHubToken } from "../github/token";
|
|
10
|
+
import { checkWritePermissions } from "../github/validation/permissions";
|
|
11
|
+
import { createOctokit } from "../github/api/client";
|
|
12
|
+
import { parseGitHubContext, isEntityContext } from "../github/context";
|
|
13
|
+
import { getMode } from "../modes/registry";
|
|
14
|
+
import { prepare } from "../prepare";
|
|
15
|
+
import { collectActionInputsPresence } from "./collect-inputs";
|
|
16
|
+
|
|
17
|
+
async function run() {
|
|
18
|
+
try {
|
|
19
|
+
collectActionInputsPresence();
|
|
20
|
+
|
|
21
|
+
// Parse GitHub context first to enable mode detection
|
|
22
|
+
const context = parseGitHubContext();
|
|
23
|
+
|
|
24
|
+
// Auto-detect mode based on context
|
|
25
|
+
const mode = getMode(context);
|
|
26
|
+
|
|
27
|
+
// Setup GitHub token
|
|
28
|
+
const githubToken = await setupGitHubToken();
|
|
29
|
+
const octokit = createOctokit(githubToken);
|
|
30
|
+
|
|
31
|
+
// Step 3: Check write permissions (only for entity contexts)
|
|
32
|
+
if (isEntityContext(context)) {
|
|
33
|
+
const hasWritePermissions = await checkWritePermissions(
|
|
34
|
+
octokit.rest,
|
|
35
|
+
context,
|
|
36
|
+
);
|
|
37
|
+
if (!hasWritePermissions) {
|
|
38
|
+
throw new Error(
|
|
39
|
+
"Actor does not have write permissions to the repository",
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// Check trigger conditions
|
|
45
|
+
const containsTrigger = mode.shouldTrigger(context);
|
|
46
|
+
|
|
47
|
+
// Debug logging
|
|
48
|
+
console.log(`Mode: ${mode.name}`);
|
|
49
|
+
console.log(`Context prompt: ${context.inputs?.prompt || "NO PROMPT"}`);
|
|
50
|
+
console.log(`Trigger result: ${containsTrigger}`);
|
|
51
|
+
|
|
52
|
+
// Set output for action.yml to check
|
|
53
|
+
core.setOutput("contains_trigger", containsTrigger.toString());
|
|
54
|
+
|
|
55
|
+
if (!containsTrigger) {
|
|
56
|
+
console.log("No trigger found, skipping remaining steps");
|
|
57
|
+
// Still set github_token output even when skipping
|
|
58
|
+
core.setOutput("github_token", githubToken);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// Step 5: Use the new modular prepare function
|
|
63
|
+
const result = await prepare({
|
|
64
|
+
context,
|
|
65
|
+
octokit,
|
|
66
|
+
mode,
|
|
67
|
+
githubToken,
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
// MCP config is handled by individual modes (tag/agent) and included in their claude_args output
|
|
71
|
+
|
|
72
|
+
// Expose the GitHub token (Claude App token) as an output
|
|
73
|
+
core.setOutput("github_token", githubToken);
|
|
74
|
+
|
|
75
|
+
// Step 6: Get system prompt from mode if available
|
|
76
|
+
if (mode.getSystemPrompt) {
|
|
77
|
+
const modeContext = mode.prepareContext(context, {
|
|
78
|
+
commentId: result.commentId,
|
|
79
|
+
baseBranch: result.branchInfo.baseBranch,
|
|
80
|
+
claudeBranch: result.branchInfo.claudeBranch,
|
|
81
|
+
});
|
|
82
|
+
const systemPrompt = mode.getSystemPrompt(modeContext);
|
|
83
|
+
if (systemPrompt) {
|
|
84
|
+
core.exportVariable("APPEND_SYSTEM_PROMPT", systemPrompt);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
} catch (error) {
|
|
88
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
89
|
+
core.setFailed(`Prepare step failed with error: ${errorMessage}`);
|
|
90
|
+
// Also output the clean error message for the action to capture
|
|
91
|
+
core.setOutput("prepare_error", errorMessage);
|
|
92
|
+
process.exit(1);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
if (import.meta.main) {
|
|
97
|
+
run();
|
|
98
|
+
}
|
package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/update-comment-link.ts
ADDED
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
#!/usr/bin/env bun
|
|
2
|
+
|
|
3
|
+
import { createOctokit } from "../github/api/client";
|
|
4
|
+
import * as fs from "fs/promises";
|
|
5
|
+
import {
|
|
6
|
+
updateCommentBody,
|
|
7
|
+
type CommentUpdateInput,
|
|
8
|
+
} from "../github/operations/comment-logic";
|
|
9
|
+
import {
|
|
10
|
+
parseGitHubContext,
|
|
11
|
+
isPullRequestReviewCommentEvent,
|
|
12
|
+
isEntityContext,
|
|
13
|
+
} from "../github/context";
|
|
14
|
+
import { GITHUB_SERVER_URL } from "../github/api/config";
|
|
15
|
+
import { checkAndCommitOrDeleteBranch } from "../github/operations/branch-cleanup";
|
|
16
|
+
import { updateClaudeComment } from "../github/operations/comments/update-claude-comment";
|
|
17
|
+
|
|
18
|
+
async function run() {
|
|
19
|
+
try {
|
|
20
|
+
const commentId = parseInt(process.env.CLAUDE_COMMENT_ID!);
|
|
21
|
+
const githubToken = process.env.GITHUB_TOKEN!;
|
|
22
|
+
const claudeBranch = process.env.CLAUDE_BRANCH;
|
|
23
|
+
const baseBranch = process.env.BASE_BRANCH || "main";
|
|
24
|
+
const triggerUsername = process.env.TRIGGER_USERNAME;
|
|
25
|
+
|
|
26
|
+
const context = parseGitHubContext();
|
|
27
|
+
|
|
28
|
+
// This script is only called for entity-based events
|
|
29
|
+
if (!isEntityContext(context)) {
|
|
30
|
+
throw new Error("update-comment-link requires an entity context");
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const { owner, repo } = context.repository;
|
|
34
|
+
|
|
35
|
+
const octokit = createOctokit(githubToken);
|
|
36
|
+
|
|
37
|
+
const serverUrl = GITHUB_SERVER_URL;
|
|
38
|
+
const jobUrl = `${serverUrl}/${owner}/${repo}/actions/runs/${process.env.GITHUB_RUN_ID}`;
|
|
39
|
+
|
|
40
|
+
let comment;
|
|
41
|
+
let isPRReviewComment = false;
|
|
42
|
+
|
|
43
|
+
try {
|
|
44
|
+
// GitHub has separate ID namespaces for review comments and issue comments
|
|
45
|
+
// We need to use the correct API based on the event type
|
|
46
|
+
if (isPullRequestReviewCommentEvent(context)) {
|
|
47
|
+
// For PR review comments, use the pulls API
|
|
48
|
+
console.log(`Fetching PR review comment ${commentId}`);
|
|
49
|
+
const { data: prComment } = await octokit.rest.pulls.getReviewComment({
|
|
50
|
+
owner,
|
|
51
|
+
repo,
|
|
52
|
+
comment_id: commentId,
|
|
53
|
+
});
|
|
54
|
+
comment = prComment;
|
|
55
|
+
isPRReviewComment = true;
|
|
56
|
+
console.log("Successfully fetched as PR review comment");
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// For all other event types, use the issues API
|
|
60
|
+
if (!comment) {
|
|
61
|
+
console.log(`Fetching issue comment ${commentId}`);
|
|
62
|
+
const { data: issueComment } = await octokit.rest.issues.getComment({
|
|
63
|
+
owner,
|
|
64
|
+
repo,
|
|
65
|
+
comment_id: commentId,
|
|
66
|
+
});
|
|
67
|
+
comment = issueComment;
|
|
68
|
+
isPRReviewComment = false;
|
|
69
|
+
console.log("Successfully fetched as issue comment");
|
|
70
|
+
}
|
|
71
|
+
} catch (finalError) {
|
|
72
|
+
// If all attempts fail, try to determine more information about the comment
|
|
73
|
+
console.error("Failed to fetch comment. Debug info:");
|
|
74
|
+
console.error(`Comment ID: ${commentId}`);
|
|
75
|
+
console.error(`Event name: ${context.eventName}`);
|
|
76
|
+
console.error(`Entity number: ${context.entityNumber}`);
|
|
77
|
+
console.error(`Repository: ${context.repository.full_name}`);
|
|
78
|
+
|
|
79
|
+
// Try to get the PR info to understand the comment structure
|
|
80
|
+
try {
|
|
81
|
+
const { data: pr } = await octokit.rest.pulls.get({
|
|
82
|
+
owner,
|
|
83
|
+
repo,
|
|
84
|
+
pull_number: context.entityNumber,
|
|
85
|
+
});
|
|
86
|
+
console.log(`PR state: ${pr.state}`);
|
|
87
|
+
console.log(`PR comments count: ${pr.comments}`);
|
|
88
|
+
console.log(`PR review comments count: ${pr.review_comments}`);
|
|
89
|
+
} catch {
|
|
90
|
+
console.error("Could not fetch PR info for debugging");
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
throw finalError;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
const currentBody = comment.body ?? "";
|
|
97
|
+
|
|
98
|
+
// Check if we need to add branch link for new branches
|
|
99
|
+
const useCommitSigning = process.env.USE_COMMIT_SIGNING === "true";
|
|
100
|
+
const { shouldDeleteBranch, branchLink } =
|
|
101
|
+
await checkAndCommitOrDeleteBranch(
|
|
102
|
+
octokit,
|
|
103
|
+
owner,
|
|
104
|
+
repo,
|
|
105
|
+
claudeBranch,
|
|
106
|
+
baseBranch,
|
|
107
|
+
useCommitSigning,
|
|
108
|
+
);
|
|
109
|
+
|
|
110
|
+
// Check if we need to add PR URL when we have a new branch
|
|
111
|
+
let prLink = "";
|
|
112
|
+
// If claudeBranch is set, it means we created a new branch (for issues or closed/merged PRs)
|
|
113
|
+
if (claudeBranch && !shouldDeleteBranch) {
|
|
114
|
+
// Check if comment already contains a PR URL
|
|
115
|
+
const serverUrlPattern = serverUrl.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
116
|
+
const prUrlPattern = new RegExp(
|
|
117
|
+
`${serverUrlPattern}\\/.+\\/compare\\/${baseBranch.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}\\.\\.\\.`,
|
|
118
|
+
);
|
|
119
|
+
const containsPRUrl = currentBody.match(prUrlPattern);
|
|
120
|
+
|
|
121
|
+
if (!containsPRUrl) {
|
|
122
|
+
// Check if there are changes to the branch compared to the default branch
|
|
123
|
+
try {
|
|
124
|
+
const { data: comparison } =
|
|
125
|
+
await octokit.rest.repos.compareCommitsWithBasehead({
|
|
126
|
+
owner,
|
|
127
|
+
repo,
|
|
128
|
+
basehead: `${baseBranch}...${claudeBranch}`,
|
|
129
|
+
});
|
|
130
|
+
|
|
131
|
+
// If there are changes (commits or file changes), add the PR URL
|
|
132
|
+
if (
|
|
133
|
+
comparison.total_commits > 0 ||
|
|
134
|
+
(comparison.files && comparison.files.length > 0)
|
|
135
|
+
) {
|
|
136
|
+
const entityType = context.isPR ? "PR" : "Issue";
|
|
137
|
+
const prTitle = encodeURIComponent(
|
|
138
|
+
`${entityType} #${context.entityNumber}: Changes from Claude`,
|
|
139
|
+
);
|
|
140
|
+
const prBody = encodeURIComponent(
|
|
141
|
+
`This PR addresses ${entityType.toLowerCase()} #${context.entityNumber}\n\nGenerated with [Claude Code](https://claude.ai/code)`,
|
|
142
|
+
);
|
|
143
|
+
const prUrl = `${serverUrl}/${owner}/${repo}/compare/${baseBranch}...${claudeBranch}?quick_pull=1&title=${prTitle}&body=${prBody}`;
|
|
144
|
+
prLink = `\n[Create a PR](${prUrl})`;
|
|
145
|
+
}
|
|
146
|
+
} catch (error) {
|
|
147
|
+
console.error("Error checking for changes in branch:", error);
|
|
148
|
+
// Don't fail the entire update if we can't check for changes
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
// Check if action failed and read output file for execution details
|
|
154
|
+
let executionDetails: {
|
|
155
|
+
cost_usd?: number;
|
|
156
|
+
duration_ms?: number;
|
|
157
|
+
duration_api_ms?: number;
|
|
158
|
+
} | null = null;
|
|
159
|
+
let actionFailed = false;
|
|
160
|
+
let errorDetails: string | undefined;
|
|
161
|
+
|
|
162
|
+
// First check if prepare step failed
|
|
163
|
+
const prepareSuccess = process.env.PREPARE_SUCCESS !== "false";
|
|
164
|
+
const prepareError = process.env.PREPARE_ERROR;
|
|
165
|
+
|
|
166
|
+
if (!prepareSuccess && prepareError) {
|
|
167
|
+
actionFailed = true;
|
|
168
|
+
errorDetails = prepareError;
|
|
169
|
+
} else {
|
|
170
|
+
// Check for existence of output file and parse it if available
|
|
171
|
+
try {
|
|
172
|
+
const outputFile = process.env.OUTPUT_FILE;
|
|
173
|
+
if (outputFile) {
|
|
174
|
+
const fileContent = await fs.readFile(outputFile, "utf8");
|
|
175
|
+
const outputData = JSON.parse(fileContent);
|
|
176
|
+
|
|
177
|
+
// Output file is an array, get the last element which contains execution details
|
|
178
|
+
if (Array.isArray(outputData) && outputData.length > 0) {
|
|
179
|
+
const lastElement = outputData[outputData.length - 1];
|
|
180
|
+
if (
|
|
181
|
+
lastElement.type === "result" &&
|
|
182
|
+
"cost_usd" in lastElement &&
|
|
183
|
+
"duration_ms" in lastElement
|
|
184
|
+
) {
|
|
185
|
+
executionDetails = {
|
|
186
|
+
cost_usd: lastElement.cost_usd,
|
|
187
|
+
duration_ms: lastElement.duration_ms,
|
|
188
|
+
duration_api_ms: lastElement.duration_api_ms,
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
// Check if the Claude action failed
|
|
195
|
+
const claudeSuccess = process.env.CLAUDE_SUCCESS !== "false";
|
|
196
|
+
actionFailed = !claudeSuccess;
|
|
197
|
+
} catch (error) {
|
|
198
|
+
console.error("Error reading output file:", error);
|
|
199
|
+
// If we can't read the file, check for any failure markers
|
|
200
|
+
actionFailed = process.env.CLAUDE_SUCCESS === "false";
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
// Prepare input for updateCommentBody function
|
|
205
|
+
const commentInput: CommentUpdateInput = {
|
|
206
|
+
currentBody,
|
|
207
|
+
actionFailed,
|
|
208
|
+
executionDetails,
|
|
209
|
+
jobUrl,
|
|
210
|
+
branchLink,
|
|
211
|
+
prLink,
|
|
212
|
+
branchName: shouldDeleteBranch || !branchLink ? undefined : claudeBranch,
|
|
213
|
+
triggerUsername,
|
|
214
|
+
errorDetails,
|
|
215
|
+
};
|
|
216
|
+
|
|
217
|
+
const updatedBody = updateCommentBody(commentInput);
|
|
218
|
+
|
|
219
|
+
try {
|
|
220
|
+
await updateClaudeComment(octokit.rest, {
|
|
221
|
+
owner,
|
|
222
|
+
repo,
|
|
223
|
+
commentId,
|
|
224
|
+
body: updatedBody,
|
|
225
|
+
isPullRequestReviewComment: isPRReviewComment,
|
|
226
|
+
});
|
|
227
|
+
console.log(
|
|
228
|
+
`✅ Updated ${isPRReviewComment ? "PR review" : "issue"} comment ${commentId} with job link`,
|
|
229
|
+
);
|
|
230
|
+
} catch (updateError) {
|
|
231
|
+
console.error(
|
|
232
|
+
`Failed to update ${isPRReviewComment ? "PR review" : "issue"} comment:`,
|
|
233
|
+
updateError,
|
|
234
|
+
);
|
|
235
|
+
throw updateError;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
process.exit(0);
|
|
239
|
+
} catch (error) {
|
|
240
|
+
console.error("Error updating comment with job link:", error);
|
|
241
|
+
process.exit(1);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
run();
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Octokit } from "@octokit/rest";
|
|
2
|
+
import { graphql } from "@octokit/graphql";
|
|
3
|
+
import { GITHUB_API_URL } from "./config";
|
|
4
|
+
|
|
5
|
+
export type Octokits = {
|
|
6
|
+
rest: Octokit;
|
|
7
|
+
graphql: typeof graphql;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export function createOctokit(token: string): Octokits {
|
|
11
|
+
return {
|
|
12
|
+
rest: new Octokit({
|
|
13
|
+
auth: token,
|
|
14
|
+
baseUrl: GITHUB_API_URL,
|
|
15
|
+
}),
|
|
16
|
+
graphql: graphql.defaults({
|
|
17
|
+
baseUrl: GITHUB_API_URL,
|
|
18
|
+
headers: {
|
|
19
|
+
authorization: `token ${token}`,
|
|
20
|
+
},
|
|
21
|
+
}),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
// GraphQL queries for GitHub data
|
|
2
|
+
|
|
3
|
+
export const PR_QUERY = `
|
|
4
|
+
query($owner: String!, $repo: String!, $number: Int!) {
|
|
5
|
+
repository(owner: $owner, name: $repo) {
|
|
6
|
+
pullRequest(number: $number) {
|
|
7
|
+
title
|
|
8
|
+
body
|
|
9
|
+
author {
|
|
10
|
+
login
|
|
11
|
+
}
|
|
12
|
+
baseRefName
|
|
13
|
+
headRefName
|
|
14
|
+
headRefOid
|
|
15
|
+
createdAt
|
|
16
|
+
additions
|
|
17
|
+
deletions
|
|
18
|
+
state
|
|
19
|
+
commits(first: 100) {
|
|
20
|
+
totalCount
|
|
21
|
+
nodes {
|
|
22
|
+
commit {
|
|
23
|
+
oid
|
|
24
|
+
message
|
|
25
|
+
author {
|
|
26
|
+
name
|
|
27
|
+
email
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
files(first: 100) {
|
|
33
|
+
nodes {
|
|
34
|
+
path
|
|
35
|
+
additions
|
|
36
|
+
deletions
|
|
37
|
+
changeType
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
comments(first: 100) {
|
|
41
|
+
nodes {
|
|
42
|
+
id
|
|
43
|
+
databaseId
|
|
44
|
+
body
|
|
45
|
+
author {
|
|
46
|
+
login
|
|
47
|
+
}
|
|
48
|
+
createdAt
|
|
49
|
+
isMinimized
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
reviews(first: 100) {
|
|
53
|
+
nodes {
|
|
54
|
+
id
|
|
55
|
+
databaseId
|
|
56
|
+
author {
|
|
57
|
+
login
|
|
58
|
+
}
|
|
59
|
+
body
|
|
60
|
+
state
|
|
61
|
+
submittedAt
|
|
62
|
+
comments(first: 100) {
|
|
63
|
+
nodes {
|
|
64
|
+
id
|
|
65
|
+
databaseId
|
|
66
|
+
body
|
|
67
|
+
path
|
|
68
|
+
line
|
|
69
|
+
author {
|
|
70
|
+
login
|
|
71
|
+
}
|
|
72
|
+
createdAt
|
|
73
|
+
isMinimized
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
`;
|
|
82
|
+
|
|
83
|
+
export const ISSUE_QUERY = `
|
|
84
|
+
query($owner: String!, $repo: String!, $number: Int!) {
|
|
85
|
+
repository(owner: $owner, name: $repo) {
|
|
86
|
+
issue(number: $number) {
|
|
87
|
+
title
|
|
88
|
+
body
|
|
89
|
+
author {
|
|
90
|
+
login
|
|
91
|
+
}
|
|
92
|
+
createdAt
|
|
93
|
+
state
|
|
94
|
+
comments(first: 100) {
|
|
95
|
+
nodes {
|
|
96
|
+
id
|
|
97
|
+
databaseId
|
|
98
|
+
body
|
|
99
|
+
author {
|
|
100
|
+
login
|
|
101
|
+
}
|
|
102
|
+
createdAt
|
|
103
|
+
isMinimized
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
`;
|
|
110
|
+
|
|
111
|
+
export const USER_QUERY = `
|
|
112
|
+
query($login: String!) {
|
|
113
|
+
user(login: $login) {
|
|
114
|
+
name
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
`;
|