@copado/agentia-cli 1.2.0 → 1.4.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/CHANGELOG.md +58 -1
- package/README.md +2299 -1615
- package/dist/commands/auth/get.js +21 -1
- package/dist/commands/auth/set.js +13 -0
- package/dist/commands/auth/unset.js +37 -0
- package/dist/commands/cicd/cloud/commit.js +6 -5
- package/dist/commands/cicd/cloud/promote.js +44 -8
- package/dist/commands/cicd/credential/auth/status.js +2 -2
- package/dist/commands/cicd/credential/auth/web/login.js +2 -2
- package/dist/commands/cicd/credential/create.js +2 -2
- package/dist/commands/cicd/credential/list.js +4 -3
- package/dist/commands/cicd/credential/open.js +2 -2
- package/dist/commands/cicd/credential/update.js +2 -2
- package/dist/commands/cicd/data/commit/create.js +2 -2
- package/dist/commands/cicd/data/commit/list.js +2 -2
- package/dist/commands/cicd/data/dataset-file/content.js +2 -2
- package/dist/commands/cicd/data/dataset-file/list.js +2 -2
- package/dist/commands/cicd/data/filter/add.js +2 -2
- package/dist/commands/cicd/data/filter/delete.js +2 -2
- package/dist/commands/cicd/data/filter/list.js +2 -2
- package/dist/commands/cicd/data/filter/update.js +2 -2
- package/dist/commands/cicd/data/formula/create.js +2 -2
- package/dist/commands/cicd/data/formula/list.js +2 -2
- package/dist/commands/cicd/data/formula/update.js +2 -2
- package/dist/commands/cicd/data/records/match.js +2 -2
- package/dist/commands/cicd/data/records/search.js +2 -2
- package/dist/commands/cicd/data/sobject/fields.js +2 -2
- package/dist/commands/cicd/data/sobject/relationships.js +2 -2
- package/dist/commands/cicd/data/sync/apply.js +2 -2
- package/dist/commands/cicd/data/sync/preview-updates.js +2 -2
- package/dist/commands/cicd/data/template/convert-old.js +2 -2
- package/dist/commands/cicd/data/template/create.js +2 -2
- package/dist/commands/cicd/data/template/delete.js +2 -2
- package/dist/commands/cicd/data/template/get-detail.js +2 -2
- package/dist/commands/cicd/data/template/get.js +2 -2
- package/dist/commands/cicd/data/template/list.js +2 -2
- package/dist/commands/cicd/data/template/open.js +2 -2
- package/dist/commands/cicd/data/template/save-detail.js +2 -2
- package/dist/commands/cicd/environment/auth/status.js +2 -2
- package/dist/commands/cicd/environment/auth/web/login.js +2 -2
- package/dist/commands/cicd/environment/create.js +2 -2
- package/dist/commands/cicd/environment/get.js +2 -2
- package/dist/commands/cicd/environment/list.js +4 -3
- package/dist/commands/cicd/environment/open.js +2 -2
- package/dist/commands/cicd/environment/update.js +2 -2
- package/dist/commands/cicd/extension/create.js +2 -2
- package/dist/commands/cicd/extension/install.js +2 -2
- package/dist/commands/cicd/extension/package.js +2 -2
- package/dist/commands/cicd/extension/publish.js +2 -2
- package/dist/commands/cicd/extension/uninstall.js +2 -2
- package/dist/commands/cicd/extension/validate.js +2 -2
- package/dist/commands/cicd/extension-configuration/get.js +2 -2
- package/dist/commands/cicd/extension-configuration/list.js +4 -3
- package/dist/commands/cicd/extension-configuration/open.js +2 -2
- package/dist/commands/cicd/function/defaults.js +2 -2
- package/dist/commands/cicd/function/delete.js +2 -2
- package/dist/commands/cicd/function/get.js +2 -2
- package/dist/commands/cicd/function/list.js +12 -15
- package/dist/commands/cicd/function/open.js +2 -2
- package/dist/commands/cicd/function/result/get.js +2 -2
- package/dist/commands/cicd/function/result/log/get.js +2 -2
- package/dist/commands/cicd/function/run-local.js +2 -2
- package/dist/commands/cicd/function/run.js +2 -2
- package/dist/commands/cicd/function/upsert.js +2 -2
- package/dist/commands/cicd/health-check.js +2 -2
- package/dist/commands/cicd/job/get.js +2 -2
- package/dist/commands/cicd/job/kill.js +2 -2
- package/dist/commands/cicd/job/list.js +4 -3
- package/dist/commands/cicd/job/log/get.js +2 -2
- package/dist/commands/cicd/job/open.js +2 -2
- package/dist/commands/cicd/job/pause.js +2 -2
- package/dist/commands/cicd/job/result-file/get.js +13 -8
- package/dist/commands/cicd/job/result-file/list.js +2 -2
- package/dist/commands/cicd/job/resume.js +2 -2
- package/dist/commands/cicd/job/run.js +2 -2
- package/dist/commands/cicd/metadata/content/compare.js +2 -2
- package/dist/commands/cicd/metadata/content/get.js +2 -2
- package/dist/commands/cicd/metadata/dependency/list.js +44 -21
- package/dist/commands/cicd/metadata/explore.js +2 -2
- package/dist/commands/cicd/metadata/index/compare.js +2 -2
- package/dist/commands/cicd/metadata/list.js +2 -2
- package/dist/commands/cicd/metadata/refresh/deleted.js +2 -2
- package/dist/commands/cicd/metadata/refresh/run.js +2 -2
- package/dist/commands/cicd/metadata/refresh/status.js +2 -2
- package/dist/commands/cicd/notification/configure.js +2 -2
- package/dist/commands/cicd/notification/get.js +2 -2
- package/dist/commands/cicd/pipeline/automation/activate.js +2 -2
- package/dist/commands/cicd/pipeline/automation/create.js +2 -2
- package/dist/commands/cicd/pipeline/automation/deactivate.js +2 -2
- package/dist/commands/cicd/pipeline/automation/delete.js +2 -2
- package/dist/commands/cicd/pipeline/automation/get.js +2 -2
- package/dist/commands/cicd/pipeline/automation/list.js +4 -3
- package/dist/commands/cicd/pipeline/automation/open.js +2 -2
- package/dist/commands/cicd/pipeline/automation/update.js +2 -2
- package/dist/commands/cicd/pipeline/connection/create.js +2 -2
- package/dist/commands/cicd/pipeline/connection/delete.js +2 -2
- package/dist/commands/cicd/pipeline/connection/list.js +2 -2
- package/dist/commands/cicd/pipeline/connection/open.js +2 -2
- package/dist/commands/cicd/pipeline/connection/update.js +2 -2
- package/dist/commands/cicd/pipeline/create.js +2 -2
- package/dist/commands/cicd/pipeline/get.js +2 -2
- package/dist/commands/cicd/pipeline/list.js +4 -3
- package/dist/commands/cicd/pipeline/open.js +2 -2
- package/dist/commands/cicd/pipeline/quality-gate/activate.js +2 -2
- package/dist/commands/cicd/pipeline/quality-gate/create.js +2 -2
- package/dist/commands/cicd/pipeline/quality-gate/deactivate.js +2 -2
- package/dist/commands/cicd/pipeline/quality-gate/delete.js +2 -2
- package/dist/commands/cicd/pipeline/quality-gate/get.js +2 -2
- package/dist/commands/cicd/pipeline/quality-gate/list.js +4 -3
- package/dist/commands/cicd/pipeline/quality-gate/open.js +2 -2
- package/dist/commands/cicd/pipeline/quality-gate/update.js +2 -2
- package/dist/commands/cicd/pipeline/stage-connection/create.js +2 -2
- package/dist/commands/cicd/pipeline/stage-connection/delete.js +2 -2
- package/dist/commands/cicd/pipeline/stage-connection/list.js +2 -2
- package/dist/commands/cicd/pipeline/stage-connection/open.js +2 -2
- package/dist/commands/cicd/pipeline/stage-connection/update.js +2 -2
- package/dist/commands/cicd/pipeline/update.js +2 -2
- package/dist/commands/cicd/project/create.js +2 -2
- package/dist/commands/cicd/project/default/get.js +2 -2
- package/dist/commands/cicd/project/default/set.js +2 -2
- package/dist/commands/cicd/project/default/unset.js +2 -2
- package/dist/commands/cicd/project/delete.js +2 -2
- package/dist/commands/cicd/project/get.js +2 -2
- package/dist/commands/cicd/project/list.js +4 -3
- package/dist/commands/cicd/project/open.js +2 -2
- package/dist/commands/cicd/project/update.js +2 -2
- package/dist/commands/cicd/promotion/conflict/get.js +2 -2
- package/dist/commands/cicd/promotion/conflict/list.js +2 -2
- package/dist/commands/cicd/promotion/conflict/resolve.js +2 -2
- package/dist/commands/cicd/promotion/conflict/unresolve.js +2 -2
- package/dist/commands/cicd/promotion/get.js +2 -2
- package/dist/commands/cicd/promotion/job-step/update.js +2 -2
- package/dist/commands/cicd/promotion/list.js +4 -3
- package/dist/commands/cicd/promotion/open.js +2 -2
- package/dist/commands/cicd/promotion/queue/list.js +28 -0
- package/dist/commands/cicd/promotion/queue/remove.js +37 -0
- package/dist/commands/cicd/promotion/run.js +2 -2
- package/dist/commands/cicd/promotion/status.js +29 -0
- package/dist/commands/cicd/repository/auth/https/configure.js +2 -2
- package/dist/commands/cicd/repository/auth/oauth/login.js +2 -2
- package/dist/commands/cicd/repository/auth/setup.js +2 -2
- package/dist/commands/cicd/repository/auth/ssh/configure.js +2 -2
- package/dist/commands/cicd/repository/create.js +2 -2
- package/dist/commands/cicd/repository/delete.js +2 -2
- package/dist/commands/cicd/repository/get.js +2 -2
- package/dist/commands/cicd/repository/list.js +7 -10
- package/dist/commands/cicd/repository/open.js +2 -2
- package/dist/commands/cicd/repository/reset.js +2 -2
- package/dist/commands/cicd/repository/update.js +2 -2
- package/dist/commands/cicd/repository/validate.js +2 -2
- package/dist/commands/cicd/stage/create.js +2 -2
- package/dist/commands/cicd/stage/delete.js +2 -2
- package/dist/commands/cicd/stage/get.js +2 -2
- package/dist/commands/cicd/stage/list.js +4 -3
- package/dist/commands/cicd/stage/open.js +2 -2
- package/dist/commands/cicd/stage/update.js +2 -2
- package/dist/commands/cicd/template/defaults.js +2 -2
- package/dist/commands/cicd/template/delete.js +2 -2
- package/dist/commands/cicd/template/get.js +2 -2
- package/dist/commands/cicd/template/list.js +11 -14
- package/dist/commands/cicd/template/upsert.js +2 -2
- package/dist/commands/cicd/user/get.js +2 -2
- package/dist/commands/cicd/work/ahead-behind.js +2 -2
- package/dist/commands/cicd/work/create.js +2 -2
- package/dist/commands/cicd/work/delete.js +4 -4
- package/dist/commands/cicd/work/deployment-step/create.js +2 -2
- package/dist/commands/cicd/work/deployment-step/delete.js +2 -2
- package/dist/commands/cicd/work/deployment-step/list.js +2 -2
- package/dist/commands/cicd/work/deployment-step/reorder.js +2 -2
- package/dist/commands/cicd/work/deployment-step/salesforce-flows.js +2 -2
- package/dist/commands/cicd/work/deployment-step/types.js +2 -2
- package/dist/commands/cicd/work/deployment-step/update.js +2 -2
- package/dist/commands/cicd/work/done.js +2 -2
- package/dist/commands/cicd/work/environment-sync.js +140 -64
- package/dist/commands/cicd/work/get.js +4 -4
- package/dist/commands/cicd/work/list.js +4 -3
- package/dist/commands/cicd/work/open.js +2 -2
- package/dist/commands/cicd/work/promote.js +2 -2
- package/dist/commands/cicd/work/publish.js +2 -2
- package/dist/commands/cicd/work/push.js +2 -2
- package/dist/commands/cicd/work/set.js +2 -2
- package/dist/commands/cicd/work/status.js +2 -2
- package/dist/commands/cicd/work/submit.js +2 -2
- package/dist/commands/cicd/work/test/apex.js +20 -35
- package/dist/commands/cicd/work/test.js +116 -11
- package/dist/commands/cicd/work/update.js +4 -4
- package/dist/commands/help-agent.js +15 -0
- package/dist/commands/help.js +38 -0
- package/dist/commands/history/clear.js +42 -0
- package/dist/commands/history/list.js +50 -0
- package/dist/commands/support.js +15 -0
- package/dist/commands/testing/browser/execute.js +49 -0
- package/dist/commands/testing/browser/history.js +49 -0
- package/dist/commands/testing/browser/inspect.js +35 -0
- package/dist/commands/testing/browser/recorder.js +52 -0
- package/dist/commands/testing/browser/screenshot.js +27 -0
- package/dist/commands/testing/browser/set-options.js +35 -0
- package/dist/commands/testing/browser/start.js +51 -0
- package/dist/commands/testing/browser/status.js +26 -0
- package/dist/commands/testing/browser/stop.js +34 -0
- package/dist/commands/testing/browser/view.js +35 -0
- package/dist/commands/testing/job/runs/abort.js +1 -1
- package/dist/commands/testing/job/runs/get.js +1 -1
- package/dist/commands/testing/job/runs/list.js +1 -1
- package/dist/commands/testing/job/runs/logs.js +1 -1
- package/dist/commands/testing/job/runs/search.js +1 -1
- package/dist/hooks/init/cicd-connection.js +59 -0
- package/dist/lib/agentia-command.js +69 -6
- package/dist/lib/cicd-command.js +3 -0
- package/dist/lib/cicd-connection.js +22 -0
- package/dist/lib/cicd-gateway.js +2 -1
- package/dist/lib/command-history-sanitization.js +9 -0
- package/dist/lib/command-history.js +11 -0
- package/dist/lib/command-output-buffer.js +6 -1
- package/dist/lib/defaults-store.js +5 -1
- package/dist/lib/dependency-from-changes.js +3 -1
- package/dist/lib/dependency-source-context.js +3 -0
- package/dist/lib/function-list.js +3 -0
- package/dist/lib/git-worktree.js +4 -1
- package/dist/lib/help-agent-command.js +3 -0
- package/dist/lib/help-agent-interaction-history.js +10 -0
- package/dist/lib/help-agent-session.js +3 -0
- package/dist/lib/job-get.js +2 -1
- package/dist/lib/job-types.js +2 -1
- package/dist/lib/list-pagination.js +6 -1
- package/dist/lib/local-quality-gates.js +4 -1
- package/dist/lib/mcp/result.js +41 -3
- package/dist/lib/mcp/server.js +3 -2
- package/dist/lib/mcp/testing-browser-tools.js +179 -0
- package/dist/lib/mcp/testing-tools.js +4 -3
- package/dist/lib/mcp/tool-annotations.js +31 -12
- package/dist/lib/mcp/tools.js +115 -59
- package/dist/lib/mcp/work-tools.js +100 -47
- package/dist/lib/promotion-queue.js +5 -0
- package/dist/lib/promotion-run.js +4 -1
- package/dist/lib/promotion-status.js +12 -0
- package/dist/lib/quality-gates.js +13 -0
- package/dist/lib/repository-list.js +3 -0
- package/dist/lib/runtime.js +1 -1
- package/dist/lib/stock-quality-gates.js +2 -1
- package/dist/lib/support-ai-context.js +11 -0
- package/dist/lib/support-ai-stream-parser.js +4 -0
- package/dist/lib/support-ai.js +9 -0
- package/dist/lib/template-list.js +3 -0
- package/dist/lib/testing-browser-command.js +6 -0
- package/dist/lib/testing-browser-operations.js +16 -0
- package/dist/lib/testing-browser-requests.js +11 -0
- package/dist/lib/testing-browser-robot.js +9 -0
- package/dist/lib/testing-browser-session.js +13 -0
- package/dist/lib/testing-browser-state.js +17 -0
- package/dist/lib/testing-browser-stream.js +7 -0
- package/dist/lib/testing-browser-types.js +3 -0
- package/dist/lib/testing-browser-viewer-key.js +7 -0
- package/dist/lib/testing-gateway.js +2 -1
- package/dist/lib/testing-operations.js +21 -1
- package/dist/lib/testing-sanitization.js +2 -1
- package/dist/lib/work-apex-test-failures.js +2 -1
- package/dist/lib/work-environment-sync-ready.js +7 -1
- package/dist/lib/work-environment-sync.js +8 -1
- package/dist/lib/work-local-run-tests.js +2 -1
- package/dist/lib/work-promote-deploy.js +3 -1
- package/dist/lib/work-promote.js +2 -1
- package/dist/lib/work-types.js +3 -1
- package/oclif.manifest.json +3544 -1828
- package/package.json +11 -4
- package/templates/skills/agentia-ai/SKILL.md +6 -2
- package/templates/skills/agentia-ai/references/ai-agents.md +19 -1
- package/templates/skills/agentia-cicd/SKILL.md +6 -5
- package/templates/skills/agentia-cicd/references/environments-and-credentials.md +16 -0
- package/templates/skills/agentia-cicd/references/jobs.md +3 -2
- package/templates/skills/agentia-cicd/references/promotions.md +26 -5
- package/templates/skills/agentia-cicd/references/work.md +25 -11
- package/templates/skills/agentia-metadata/SKILL.md +9 -3
- package/templates/skills/agentia-metadata/references/metadata-dependency.md +70 -0
- package/templates/skills/agentia-metadata/references/metadata-explore.md +8 -4
- package/templates/skills/agentia-testing/SKILL.md +9 -4
- package/templates/skills/agentia-testing/references/browser-testing.md +92 -0
- package/templates/skills/agentia-testing/references/flow-automation.md +112 -0
- package/templates/skills/agentia-testing/references/qforce.md +88 -0
- package/templates/skills/agentia-testing/references/qweb.md +103 -0
- package/templates/skills/agentia-testing/references/tests.md +17 -9
- package/vendor/java/var-replace-command.jar +0 -0
- package/dist/commands/testing/live/continue.js +0 -16
- package/dist/commands/testing/live/execute.js +0 -43
- package/dist/commands/testing/live/history.js +0 -40
- package/dist/commands/testing/live/inspect.js +0 -31
- package/dist/commands/testing/live/interrupt.js +0 -16
- package/dist/commands/testing/live/recorder.js +0 -42
- package/dist/commands/testing/live/reports.js +0 -31
- package/dist/commands/testing/live/screenshot.js +0 -25
- package/dist/commands/testing/live/set-options.js +0 -35
- package/dist/commands/testing/live/start.js +0 -58
- package/dist/commands/testing/live/status.js +0 -24
- package/dist/commands/testing/live/stop.js +0 -36
- package/dist/commands/testing/live/view.js +0 -36
- package/dist/lib/mcp/testing-live-tools.js +0 -226
- package/dist/lib/testing-live-command.js +0 -8
- package/dist/lib/testing-live-operations.js +0 -25
- package/dist/lib/testing-live-recorder.js +0 -11
- package/dist/lib/testing-live-robot.js +0 -9
- package/dist/lib/testing-live-state.js +0 -12
- package/dist/lib/testing-live-types.js +0 -3
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
import {modules} from './runtime.js';
|
|
2
|
+
const EXPIRED_LIST_CURSOR_CATEGORY = modules["list-pagination.js"]["EXPIRED_LIST_CURSOR_CATEGORY"]
|
|
3
|
+
const EXPIRED_LIST_CURSOR_WARNING = modules["list-pagination.js"]["EXPIRED_LIST_CURSOR_WARNING"]
|
|
2
4
|
const LIST_PAGE_SIZE_MAX = modules["list-pagination.js"]["LIST_PAGE_SIZE_MAX"]
|
|
3
5
|
const LIST_PAGE_SIZE_MIN = modules["list-pagination.js"]["LIST_PAGE_SIZE_MIN"]
|
|
4
6
|
const appendListPaginationQueryParams = modules["list-pagination.js"]["appendListPaginationQueryParams"]
|
|
5
7
|
const buildListPaginationQuery = modules["list-pagination.js"]["buildListPaginationQuery"]
|
|
6
8
|
const buildPaginatedListResult = modules["list-pagination.js"]["buildPaginatedListResult"]
|
|
7
9
|
const displayListPagination = modules["list-pagination.js"]["displayListPagination"]
|
|
10
|
+
const emitPaginatedListWarnings = modules["list-pagination.js"]["emitPaginatedListWarnings"]
|
|
8
11
|
const formatListContinuationHint = modules["list-pagination.js"]["formatListContinuationHint"]
|
|
9
12
|
const formatListPageFooter = modules["list-pagination.js"]["formatListPageFooter"]
|
|
13
|
+
const isExpiredListCursorError = modules["list-pagination.js"]["isExpiredListCursorError"]
|
|
10
14
|
const listPaginationFlags = modules["list-pagination.js"]["listPaginationFlags"]
|
|
11
15
|
const listPaginationZodFields = modules["list-pagination.js"]["listPaginationZodFields"]
|
|
12
16
|
const mcpPaginatedListPayload = modules["list-pagination.js"]["mcpPaginatedListPayload"]
|
|
13
17
|
const paginatedResultFromNestedData = modules["list-pagination.js"]["paginatedResultFromNestedData"]
|
|
14
18
|
const paginatedResultFromPage = modules["list-pagination.js"]["paginatedResultFromPage"]
|
|
15
19
|
const pickCursorPageMeta = modules["list-pagination.js"]["pickCursorPageMeta"]
|
|
16
|
-
|
|
20
|
+
const withExpiredListCursorRetry = modules["list-pagination.js"]["withExpiredListCursorRetry"]
|
|
21
|
+
export {EXPIRED_LIST_CURSOR_CATEGORY, EXPIRED_LIST_CURSOR_WARNING, LIST_PAGE_SIZE_MAX, LIST_PAGE_SIZE_MIN, appendListPaginationQueryParams, buildListPaginationQuery, buildPaginatedListResult, displayListPagination, emitPaginatedListWarnings, formatListContinuationHint, formatListPageFooter, isExpiredListCursorError, listPaginationFlags, listPaginationZodFields, mcpPaginatedListPayload, paginatedResultFromNestedData, paginatedResultFromPage, pickCursorPageMeta, withExpiredListCursorRetry};
|
|
@@ -2,10 +2,13 @@ import {modules} from './runtime.js';
|
|
|
2
2
|
const AGENTIA_APEX_RERUN_FAILED_ENV = modules["local-quality-gates.js"]["AGENTIA_APEX_RERUN_FAILED_ENV"]
|
|
3
3
|
const AGENTIA_APEX_RERUN_FAILED_FLAG = modules["local-quality-gates.js"]["AGENTIA_APEX_RERUN_FAILED_FLAG"]
|
|
4
4
|
const AGENTIA_APEX_TEST_CLASSES_ENV = modules["local-quality-gates.js"]["AGENTIA_APEX_TEST_CLASSES_ENV"]
|
|
5
|
+
const AGENTIA_BASE_BRANCH_ENV = modules["local-quality-gates.js"]["AGENTIA_BASE_BRANCH_ENV"]
|
|
6
|
+
const AGENTIA_QUALITY_GATES_ACTIVE_ENV = modules["local-quality-gates.js"]["AGENTIA_QUALITY_GATES_ACTIVE_ENV"]
|
|
5
7
|
const LocalQualityGatesError = modules["local-quality-gates.js"]["LocalQualityGatesError"]
|
|
6
8
|
const QUALITY_GATES_SCRIPT_UNIX = modules["local-quality-gates.js"]["QUALITY_GATES_SCRIPT_UNIX"]
|
|
7
9
|
const QUALITY_GATES_SCRIPT_WINDOWS = modules["local-quality-gates.js"]["QUALITY_GATES_SCRIPT_WINDOWS"]
|
|
8
10
|
const buildQualityGatesCommand = modules["local-quality-gates.js"]["buildQualityGatesCommand"]
|
|
11
|
+
const isInsideQualityGatesScript = modules["local-quality-gates.js"]["isInsideQualityGatesScript"]
|
|
9
12
|
const parseQualityGatesEnvAssignments = modules["local-quality-gates.js"]["parseQualityGatesEnvAssignments"]
|
|
10
13
|
const qualityGatesScriptName = modules["local-quality-gates.js"]["qualityGatesScriptName"]
|
|
11
14
|
const resetLocalQualityGatesForTests = modules["local-quality-gates.js"]["resetLocalQualityGatesForTests"]
|
|
@@ -13,4 +16,4 @@ const resolveLocalQualityGatesScript = modules["local-quality-gates.js"]["resolv
|
|
|
13
16
|
const runLocalQualityGates = modules["local-quality-gates.js"]["runLocalQualityGates"]
|
|
14
17
|
const setLocalQualityGatesExistsSyncForTests = modules["local-quality-gates.js"]["setLocalQualityGatesExistsSyncForTests"]
|
|
15
18
|
const setLocalQualityGatesSpawnForTests = modules["local-quality-gates.js"]["setLocalQualityGatesSpawnForTests"]
|
|
16
|
-
export {AGENTIA_APEX_RERUN_FAILED_ENV, AGENTIA_APEX_RERUN_FAILED_FLAG, AGENTIA_APEX_TEST_CLASSES_ENV, LocalQualityGatesError, QUALITY_GATES_SCRIPT_UNIX, QUALITY_GATES_SCRIPT_WINDOWS, buildQualityGatesCommand, parseQualityGatesEnvAssignments, qualityGatesScriptName, resetLocalQualityGatesForTests, resolveLocalQualityGatesScript, runLocalQualityGates, setLocalQualityGatesExistsSyncForTests, setLocalQualityGatesSpawnForTests};
|
|
19
|
+
export {AGENTIA_APEX_RERUN_FAILED_ENV, AGENTIA_APEX_RERUN_FAILED_FLAG, AGENTIA_APEX_TEST_CLASSES_ENV, AGENTIA_BASE_BRANCH_ENV, AGENTIA_QUALITY_GATES_ACTIVE_ENV, LocalQualityGatesError, QUALITY_GATES_SCRIPT_UNIX, QUALITY_GATES_SCRIPT_WINDOWS, buildQualityGatesCommand, isInsideQualityGatesScript, parseQualityGatesEnvAssignments, qualityGatesScriptName, resetLocalQualityGatesForTests, resolveLocalQualityGatesScript, runLocalQualityGates, setLocalQualityGatesExistsSyncForTests, setLocalQualityGatesSpawnForTests};
|
package/dist/lib/mcp/result.js
CHANGED
|
@@ -1,14 +1,52 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';
|
|
2
|
+
import { runWithCicdConnectionOverride } from '../cicd-connection.js';
|
|
1
3
|
import { createTransactionId, runWithGatewayTransactionContext } from '../cicd-gateway.js';
|
|
4
|
+
import { recordMcpToolHistory } from '../command-history.js';
|
|
2
5
|
import { mcpCommandIdFromToolName, mcpToolNameFromHandler } from './command-id.js';
|
|
3
6
|
import { redactErrorMessage, redactSecrets } from './redaction.js';
|
|
7
|
+
const require = createRequire(import.meta.url);
|
|
8
|
+
const packageJson = require('../../../package.json');
|
|
4
9
|
export { mcpToolNameFromHandler } from './command-id.js';
|
|
5
|
-
export function runWithMcpToolContext(toolName, fn) {
|
|
6
|
-
|
|
10
|
+
export function runWithMcpToolContext(toolName, fn, options = {}) {
|
|
11
|
+
const transactionId = createTransactionId();
|
|
12
|
+
const executionId = createTransactionId();
|
|
13
|
+
const commandId = mcpCommandIdFromToolName(toolName);
|
|
14
|
+
const startedAtMs = Date.now();
|
|
15
|
+
return runWithGatewayTransactionContext({ origin: 'mcp', referer: commandId, transactionId }, async () => {
|
|
16
|
+
let error;
|
|
17
|
+
try {
|
|
18
|
+
return await runWithCicdConnectionOverride(options.cicdConnection, fn);
|
|
19
|
+
}
|
|
20
|
+
catch (error_) {
|
|
21
|
+
error = error_;
|
|
22
|
+
throw error_;
|
|
23
|
+
}
|
|
24
|
+
finally {
|
|
25
|
+
await recordMcpToolHistory({
|
|
26
|
+
cliVersion: packageJson.version,
|
|
27
|
+
commandId,
|
|
28
|
+
error,
|
|
29
|
+
executionId,
|
|
30
|
+
startedAtMs,
|
|
31
|
+
transactionId,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
export function cicdConnectionFromToolArgs(args) {
|
|
37
|
+
const first = args[0];
|
|
38
|
+
if (first === null || typeof first !== 'object' || Array.isArray(first))
|
|
39
|
+
return undefined;
|
|
40
|
+
const value = first.cicdConnection;
|
|
41
|
+
return typeof value === 'string' && value.trim().length > 0 ? value.trim() : undefined;
|
|
7
42
|
}
|
|
8
43
|
export function wrapMcpToolHandlers(handlers) {
|
|
9
44
|
return Object.fromEntries(Object.entries(handlers).map(([name, handler]) => [
|
|
10
45
|
name,
|
|
11
|
-
(...args) =>
|
|
46
|
+
(...args) => {
|
|
47
|
+
const cicdConnection = cicdConnectionFromToolArgs(args);
|
|
48
|
+
return runWithMcpToolContext(mcpToolNameFromHandler(name), () => handler(...args), { cicdConnection });
|
|
49
|
+
},
|
|
12
50
|
]));
|
|
13
51
|
}
|
|
14
52
|
export function toolResult(data) {
|
package/dist/lib/mcp/server.js
CHANGED
|
@@ -7,7 +7,7 @@ import { logVerboseDebug } from '../debug.js';
|
|
|
7
7
|
import { migrateUserSettingsFromProjectConfig } from '../defaults-store.js';
|
|
8
8
|
import { applyProjectRoot, hasExplicitProjectRoot } from '../project-root.js';
|
|
9
9
|
import { runWithMcpRequestSignal } from './request-context.js';
|
|
10
|
-
import { runWithMcpToolContext } from './result.js';
|
|
10
|
+
import { cicdConnectionFromToolArgs, runWithMcpToolContext } from './result.js';
|
|
11
11
|
import { withToolAnnotations } from './tool-annotations.js';
|
|
12
12
|
import { registerAgentiaMcpTools } from './tools.js';
|
|
13
13
|
const require = createRequire(import.meta.url);
|
|
@@ -105,10 +105,11 @@ function wrapMcpToolRegistration(server, lifecycleSignal, projectContextReady =
|
|
|
105
105
|
server.registerTool = ((name, config, handler) => registerTool(name, withToolAnnotations(name, config), (...args) => {
|
|
106
106
|
const extra = args.at(-1);
|
|
107
107
|
const { dispose, signal } = combineSignals(extra?.signal, lifecycleSignal);
|
|
108
|
+
const cicdConnection = cicdConnectionFromToolArgs(args);
|
|
108
109
|
return runWithMcpRequestSignal(signal, async () => {
|
|
109
110
|
try {
|
|
110
111
|
await projectContextReady;
|
|
111
|
-
return await runWithMcpToolContext(name, async () => handler(...args));
|
|
112
|
+
return await runWithMcpToolContext(name, async () => handler(...args), { cicdConnection });
|
|
112
113
|
}
|
|
113
114
|
finally {
|
|
114
115
|
dispose();
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { mkdtemp } from 'node:fs/promises';
|
|
2
|
+
import { tmpdir } from 'node:os';
|
|
3
|
+
import { join } from 'node:path';
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
import { executeTestingLive, getTestingLiveHistory, getTestingLiveStatus, inspectTestingLive, saveTestingLiveScreenshot, setTestingLiveOptions, startTestingLive, stopTestingLive, } from '../testing-browser-operations.js';
|
|
6
|
+
import { assertTestingLiveStopConfirmed, normalizeTestingLiveExecuteSource, normalizeTestingLiveRecorderOptions, normalizeTestingLiveStartScreen, shapeTestingLiveHistoryResult, } from '../testing-browser-requests.js';
|
|
7
|
+
import { TESTING_LIVE_LIBRARIES } from '../testing-browser-types.js';
|
|
8
|
+
import { safelyHandleTool } from './result.js';
|
|
9
|
+
async function testingBrowserStart(args) {
|
|
10
|
+
const screen = normalizeTestingLiveStartScreen(args);
|
|
11
|
+
return {
|
|
12
|
+
result: await startTestingLive({
|
|
13
|
+
japIme: args.japIme,
|
|
14
|
+
jobId: args.job,
|
|
15
|
+
library: args.library,
|
|
16
|
+
noBootstrap: args.noBootstrap,
|
|
17
|
+
noBrowser: args.noBrowser,
|
|
18
|
+
projectId: args.project,
|
|
19
|
+
screen,
|
|
20
|
+
timeoutMs: args.timeoutSeconds === undefined ? undefined : args.timeoutSeconds * 1000,
|
|
21
|
+
}),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
async function testingBrowserStop(args) {
|
|
25
|
+
assertTestingLiveStopConfirmed(args.confirm);
|
|
26
|
+
return { result: await stopTestingLive({ jobId: args.job, projectId: args.project, sessionId: args.sessionId }) };
|
|
27
|
+
}
|
|
28
|
+
async function testingBrowserStatus(args) {
|
|
29
|
+
return { result: await getTestingLiveStatus({ jobId: args.job, projectId: args.project, sessionId: args.sessionId }) };
|
|
30
|
+
}
|
|
31
|
+
async function testingBrowserExecute(args) {
|
|
32
|
+
normalizeTestingLiveExecuteSource({ keyword: args.keyword, lines: args.line }, { keyword: 'keyword', line: 'line' });
|
|
33
|
+
return {
|
|
34
|
+
result: await executeTestingLive({
|
|
35
|
+
args: args.argument,
|
|
36
|
+
jobId: args.job,
|
|
37
|
+
keyword: args.keyword,
|
|
38
|
+
lines: args.line,
|
|
39
|
+
projectId: args.project,
|
|
40
|
+
raw: args.raw,
|
|
41
|
+
sessionId: args.sessionId,
|
|
42
|
+
}),
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
async function testingBrowserInspect(args) {
|
|
46
|
+
return {
|
|
47
|
+
result: await inspectTestingLive({
|
|
48
|
+
jobId: args.job,
|
|
49
|
+
projectId: args.project,
|
|
50
|
+
sessionId: args.sessionId,
|
|
51
|
+
}),
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
async function testingBrowserScreenshot(args) {
|
|
55
|
+
const outputDir = await mkdtemp(join(tmpdir(), 'agentia-mcp-browser-screenshot-'));
|
|
56
|
+
return {
|
|
57
|
+
result: await saveTestingLiveScreenshot({
|
|
58
|
+
jobId: args.job,
|
|
59
|
+
output: join(outputDir, 'screenshot.png'),
|
|
60
|
+
projectId: args.project,
|
|
61
|
+
sessionId: args.sessionId,
|
|
62
|
+
}),
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
async function testingBrowserSetOptions(args) {
|
|
66
|
+
return {
|
|
67
|
+
result: await setTestingLiveOptions({
|
|
68
|
+
jobId: args.job,
|
|
69
|
+
projectId: args.project,
|
|
70
|
+
recorder: normalizeTestingLiveRecorderOptions(args.recorder),
|
|
71
|
+
sessionId: args.sessionId,
|
|
72
|
+
}),
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
async function testingBrowserHistory(args) {
|
|
76
|
+
const result = await getTestingLiveHistory({
|
|
77
|
+
includeFailed: args.includeFailed,
|
|
78
|
+
jobId: args.job,
|
|
79
|
+
keyword: args.keyword,
|
|
80
|
+
limit: args.limit,
|
|
81
|
+
projectId: args.project,
|
|
82
|
+
status: args.status,
|
|
83
|
+
});
|
|
84
|
+
return { result: shapeTestingLiveHistoryResult(result, args.linesOnly === true) };
|
|
85
|
+
}
|
|
86
|
+
export const testingBrowserMcpHandlers = {
|
|
87
|
+
testingBrowserExecute,
|
|
88
|
+
testingBrowserHistory,
|
|
89
|
+
testingBrowserInspect,
|
|
90
|
+
testingBrowserScreenshot,
|
|
91
|
+
testingBrowserSetOptions,
|
|
92
|
+
testingBrowserStart,
|
|
93
|
+
testingBrowserStatus,
|
|
94
|
+
testingBrowserStop,
|
|
95
|
+
};
|
|
96
|
+
const liveSessionSchema = {
|
|
97
|
+
job: z.number().int().positive().optional().describe('Optional CRT job ID.'),
|
|
98
|
+
project: z.number().int().positive().describe('CRT project ID.'),
|
|
99
|
+
sessionId: z.number().int().positive().optional().describe('Optional active CRT browser session ID.'),
|
|
100
|
+
};
|
|
101
|
+
const liveRecorderOptionsSchema = z.object({
|
|
102
|
+
enabled: z.boolean(),
|
|
103
|
+
enableHealingContext: z.boolean(),
|
|
104
|
+
enableHoverText: z.boolean(),
|
|
105
|
+
enableScrollText: z.boolean(),
|
|
106
|
+
enableSystemState: z.boolean(),
|
|
107
|
+
enableVerifyText: z.boolean(),
|
|
108
|
+
preferTableKeywords: z.boolean(),
|
|
109
|
+
});
|
|
110
|
+
export function registerTestingLiveMcpTools(server) {
|
|
111
|
+
server.registerTool('agentia_testing_browser_start', {
|
|
112
|
+
description: 'Start and bootstrap a CRT browser session.',
|
|
113
|
+
inputSchema: {
|
|
114
|
+
japIme: z.boolean().optional(),
|
|
115
|
+
job: z.number().int().positive().describe('CRT job ID.'),
|
|
116
|
+
library: z.enum(TESTING_LIVE_LIBRARIES).optional(),
|
|
117
|
+
noBootstrap: z.boolean().optional(),
|
|
118
|
+
noBrowser: z.boolean().optional(),
|
|
119
|
+
project: z.number().int().positive().describe('CRT project ID.'),
|
|
120
|
+
screen: z.string().max(100).optional(),
|
|
121
|
+
screenDepth: z.number().int().min(8).max(32).optional(),
|
|
122
|
+
screenHeight: z.number().int().min(240).max(4320).optional(),
|
|
123
|
+
screenWidth: z.number().int().min(320).max(7680).optional(),
|
|
124
|
+
timeoutSeconds: z.number().int().min(1).max(600).optional(),
|
|
125
|
+
viewport: z.string().max(100).optional(),
|
|
126
|
+
},
|
|
127
|
+
title: 'Agentia Testing Browser Start',
|
|
128
|
+
}, (args) => safelyHandleTool(() => testingBrowserStart(args)));
|
|
129
|
+
server.registerTool('agentia_testing_browser_stop', {
|
|
130
|
+
description: 'Stop the active CRT browser session. Requires explicit confirmation.',
|
|
131
|
+
inputSchema: { confirm: z.boolean().describe('Must be true to stop the session.'), ...liveSessionSchema },
|
|
132
|
+
title: 'Agentia Testing Browser Stop',
|
|
133
|
+
}, (args) => safelyHandleTool(() => testingBrowserStop(args)));
|
|
134
|
+
server.registerTool('agentia_testing_browser_status', {
|
|
135
|
+
description: 'Read status for the active CRT browser session.',
|
|
136
|
+
inputSchema: liveSessionSchema,
|
|
137
|
+
title: 'Agentia Testing Browser Status',
|
|
138
|
+
}, (args) => safelyHandleTool(() => testingBrowserStatus(args)));
|
|
139
|
+
server.registerTool('agentia_testing_browser_execute', {
|
|
140
|
+
description: 'Execute Robot Framework keywords in the active CRT browser session.',
|
|
141
|
+
inputSchema: {
|
|
142
|
+
argument: z.array(z.string().max(16_384)).max(100).optional(),
|
|
143
|
+
keyword: z.string().max(16_384).optional(),
|
|
144
|
+
line: z.array(z.string().max(16_384)).max(500).optional(),
|
|
145
|
+
raw: z.boolean().optional(),
|
|
146
|
+
...liveSessionSchema,
|
|
147
|
+
},
|
|
148
|
+
title: 'Agentia Testing Browser Execute',
|
|
149
|
+
}, (args) => safelyHandleTool(() => testingBrowserExecute(args)));
|
|
150
|
+
server.registerTool('agentia_testing_browser_inspect', {
|
|
151
|
+
description: 'Inspect page state from the active CRT browser session.',
|
|
152
|
+
inputSchema: liveSessionSchema,
|
|
153
|
+
title: 'Agentia Testing Browser Inspect',
|
|
154
|
+
}, (args) => safelyHandleTool(() => testingBrowserInspect(args)));
|
|
155
|
+
server.registerTool('agentia_testing_browser_screenshot', {
|
|
156
|
+
description: 'Save a CRT browser screenshot to a temporary path.',
|
|
157
|
+
inputSchema: liveSessionSchema,
|
|
158
|
+
title: 'Agentia Testing Browser Screenshot',
|
|
159
|
+
}, (args) => safelyHandleTool(() => testingBrowserScreenshot(args)));
|
|
160
|
+
server.registerTool('agentia_testing_browser_set_options', {
|
|
161
|
+
description: 'Set CRT browser recorder options.',
|
|
162
|
+
inputSchema: { recorder: liveRecorderOptionsSchema, ...liveSessionSchema },
|
|
163
|
+
title: 'Agentia Testing Browser Set Options',
|
|
164
|
+
}, (args) => safelyHandleTool(() => testingBrowserSetOptions(args)));
|
|
165
|
+
server.registerTool('agentia_testing_browser_history', {
|
|
166
|
+
description: 'Read local CRT browser execution history.',
|
|
167
|
+
inputSchema: {
|
|
168
|
+
includeFailed: z.boolean().optional().describe('Include failed keyword executions.'),
|
|
169
|
+
job: z.number().int().positive().optional().describe('CRT job ID; defaults to the active session.'),
|
|
170
|
+
keyword: z.string().max(200).optional().describe('Filter by Robot Framework keyword name.'),
|
|
171
|
+
limit: z.number().int().min(1).max(500).optional(),
|
|
172
|
+
linesOnly: z.boolean().optional().describe('Flatten history into replayable keyword lines.'),
|
|
173
|
+
project: z.number().int().positive().describe('CRT project ID.'),
|
|
174
|
+
status: z.enum(['completed', 'failed', 'recorded']).optional(),
|
|
175
|
+
},
|
|
176
|
+
title: 'Agentia Testing Browser History',
|
|
177
|
+
}, (args) => safelyHandleTool(() => testingBrowserHistory(args)));
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=testing-browser-tools.js.map
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/* eslint-disable unicorn/text-encoding-identifier-case -- CRT file APIs require the literal utf-8 enum. */
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { createTestingDataTable, deleteTestingDataTable, getTestingDataTable, listTestingDataTables, TESTING_DATA_MAX_CELL_BYTES, TESTING_DATA_MAX_COLUMNS, TESTING_DATA_MAX_ROWS, updateTestingDataTable, } from '../testing-data-table.js';
|
|
4
|
+
import { abortTestingBuild, countTestingBuilds, executeTestingBuildRun, getTestingBuild, getTestingBuildLogs, listTestingBuilds, searchTestingBuilds, } from '../testing-execution.js';
|
|
4
5
|
import { buildTestingRunOptions } from '../testing-flags.js';
|
|
5
|
-
import {
|
|
6
|
+
import { createTestingJob, createTestingProject, createTestingRobot, createTestingUserParameter, createTestingVariable, deleteTestingJob, deleteTestingProject, deleteTestingRobot, deleteTestingUserParameter, deleteTestingVariable, downloadTestingJobFiles, getTestingJob, getTestingJobRefs, getTestingJobScheduleStatus, getTestingProject, getTestingProjectPermission, getTestingRobot, getTestingUserParameter, getTestingVariable, listTestingJobFiles, listTestingJobs, listTestingProjectPermissions, listTestingProjects, listTestingRobots, listTestingUserParameters, listTestingVariables, removeTestingJobSchedule, setTestingJobSchedule, setTestingProjectPermission, updateTestingJob, updateTestingProject, updateTestingRobot, updateTestingUserParameter, updateTestingVariable, uploadTestingJobFiles, } from '../testing-operations.js';
|
|
6
7
|
import { sanitizeTestingOutput } from '../testing-sanitization.js';
|
|
7
8
|
import { TESTING_BUILD_STATUSES, TESTING_CONSOLE_COLORS, TESTING_JOB_PARALLEL_MODES, TESTING_JOB_SUITE_TYPES, TESTING_RECORD_BUILD_OPTIONS, TESTING_ROBOT_ACCEPTED_RUN_ENVIRONMENTS, TESTING_ROBOT_REPORTING, TESTING_ROBOT_REPORTING_DESCRIPTION, TESTING_ROBOT_RUN_ENVIRONMENT_DESCRIPTION, TESTING_ROBOT_TYPE_DESCRIPTION, TESTING_ROBOT_TYPES, TESTING_RUN_TYPES, TESTING_VARIABLE_TYPES, } from '../testing-types.js';
|
|
8
9
|
import { safelyHandleTool } from './result.js';
|
|
9
|
-
import { registerTestingLiveMcpTools,
|
|
10
|
+
import { registerTestingLiveMcpTools, testingBrowserMcpHandlers } from './testing-browser-tools.js';
|
|
10
11
|
const projectIdSchema = z.number().int().positive().describe('CRT project ID.');
|
|
11
12
|
const jobIdSchema = z.number().int().positive().describe('CRT job ID.');
|
|
12
13
|
const optionalJobIdSchema = z.number().int().positive().optional().describe('CRT job ID.');
|
|
@@ -444,7 +445,7 @@ export const agentiaMcpTestingToolHandlers = {
|
|
|
444
445
|
testingVariableGet,
|
|
445
446
|
testingVariableList,
|
|
446
447
|
testingVariableUpdate,
|
|
447
|
-
...
|
|
448
|
+
...testingBrowserMcpHandlers,
|
|
448
449
|
};
|
|
449
450
|
export function registerAgentiaMcpTestingTools(server) {
|
|
450
451
|
server.registerTool('agentia_testing_project_list', {
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* Every tool is classified here explicitly. `test/lib/mcp/tool-annotations.test.ts` fails when a
|
|
8
8
|
* registered tool is missing from the table, so new tools must be classified when they are added.
|
|
9
9
|
*/
|
|
10
|
+
import { z } from 'zod';
|
|
10
11
|
/** MCP spec: destructive means the tool may overwrite or remove existing state, not only add. */
|
|
11
12
|
const CLASS_ANNOTATIONS = {
|
|
12
13
|
// Runs or triggers something with side effects; repeating it repeats the effect.
|
|
@@ -47,10 +48,8 @@ const ACTION_TOOLS = [
|
|
|
47
48
|
'agentia_promotion_run',
|
|
48
49
|
'agentia_testing_job_runs_abort',
|
|
49
50
|
'agentia_testing_job_run',
|
|
50
|
-
'
|
|
51
|
-
'
|
|
52
|
-
'agentia_testing_live_interrupt',
|
|
53
|
-
'agentia_testing_live_stop',
|
|
51
|
+
'agentia_testing_browser_execute',
|
|
52
|
+
'agentia_testing_browser_stop',
|
|
54
53
|
'agentia_work_commit',
|
|
55
54
|
'agentia_work_done',
|
|
56
55
|
'agentia_work_publish',
|
|
@@ -82,7 +81,7 @@ const CREATE_TOOLS = [
|
|
|
82
81
|
'agentia_testing_data_table_create',
|
|
83
82
|
'agentia_testing_job_create',
|
|
84
83
|
'agentia_testing_job_files_download',
|
|
85
|
-
'
|
|
84
|
+
'agentia_testing_browser_start',
|
|
86
85
|
'agentia_testing_project_create',
|
|
87
86
|
'agentia_testing_robot_create',
|
|
88
87
|
'agentia_testing_user_parameter_create',
|
|
@@ -103,6 +102,7 @@ const DELETE_TOOLS = [
|
|
|
103
102
|
'agentia_project_delete',
|
|
104
103
|
'agentia_repository_delete',
|
|
105
104
|
'agentia_repository_reset',
|
|
105
|
+
'agentia_promotion_queue_remove',
|
|
106
106
|
'agentia_stage_delete',
|
|
107
107
|
'agentia_testing_data_table_delete',
|
|
108
108
|
'agentia_testing_job_delete',
|
|
@@ -161,6 +161,7 @@ const READ_TOOLS = [
|
|
|
161
161
|
'agentia_job_get',
|
|
162
162
|
'agentia_job_list',
|
|
163
163
|
'agentia_job_log_get',
|
|
164
|
+
'agentia_promotion_queue_list',
|
|
164
165
|
'agentia_job_result_file_get',
|
|
165
166
|
'agentia_job_result_file_list',
|
|
166
167
|
'agentia_metadata_content_compare',
|
|
@@ -202,11 +203,10 @@ const READ_TOOLS = [
|
|
|
202
203
|
'agentia_testing_job_list',
|
|
203
204
|
'agentia_testing_job_refs',
|
|
204
205
|
'agentia_testing_job_schedule_get',
|
|
205
|
-
'
|
|
206
|
-
'
|
|
207
|
-
'
|
|
208
|
-
'
|
|
209
|
-
'agentia_testing_live_status',
|
|
206
|
+
'agentia_testing_browser_history',
|
|
207
|
+
'agentia_testing_browser_inspect',
|
|
208
|
+
'agentia_testing_browser_screenshot',
|
|
209
|
+
'agentia_testing_browser_status',
|
|
210
210
|
'agentia_testing_project_get',
|
|
211
211
|
'agentia_testing_project_list',
|
|
212
212
|
'agentia_testing_project_permission_get',
|
|
@@ -258,7 +258,7 @@ const UPDATE_TOOLS = [
|
|
|
258
258
|
'agentia_testing_job_schedule_set',
|
|
259
259
|
'agentia_testing_job_update',
|
|
260
260
|
'agentia_testing_job_files_upload',
|
|
261
|
-
'
|
|
261
|
+
'agentia_testing_browser_set_options',
|
|
262
262
|
'agentia_testing_project_permission_set',
|
|
263
263
|
'agentia_testing_project_permission_update',
|
|
264
264
|
'agentia_testing_project_update',
|
|
@@ -294,12 +294,31 @@ export function getToolAnnotations(toolName) {
|
|
|
294
294
|
return undefined;
|
|
295
295
|
return { ...CLASS_ANNOTATIONS[toolClass], openWorldHint: !LOCAL_ONLY_TOOLS.has(toolName) };
|
|
296
296
|
}
|
|
297
|
+
const cicdConnectionSchemaField = z
|
|
298
|
+
.string()
|
|
299
|
+
.optional()
|
|
300
|
+
.describe('Named CICD connection for this call only (see agentia auth set --connection). Does not change stored default auth.');
|
|
301
|
+
function usesCicdGateway(toolName) {
|
|
302
|
+
if (LOCAL_ONLY_TOOLS.has(toolName))
|
|
303
|
+
return false;
|
|
304
|
+
if (toolName.startsWith('agentia_testing_'))
|
|
305
|
+
return false;
|
|
306
|
+
if (toolName.startsWith('agentia_ai_'))
|
|
307
|
+
return false;
|
|
308
|
+
if (toolName.startsWith('agentia_adv_'))
|
|
309
|
+
return false;
|
|
310
|
+
return true;
|
|
311
|
+
}
|
|
297
312
|
/** Returns the tool config with default annotations; annotations already set on the tool win. */
|
|
298
313
|
export function withToolAnnotations(toolName, config) {
|
|
299
314
|
const defaults = getToolAnnotations(toolName);
|
|
300
315
|
if (defaults === undefined || typeof config !== 'object' || config === null)
|
|
301
316
|
return config;
|
|
302
317
|
const existing = config.annotations;
|
|
303
|
-
|
|
318
|
+
const inputSchema = config.inputSchema;
|
|
319
|
+
const withConnection = usesCicdGateway(toolName) && inputSchema !== undefined && inputSchema.cicdConnection === undefined
|
|
320
|
+
? { inputSchema: { ...inputSchema, cicdConnection: cicdConnectionSchemaField } }
|
|
321
|
+
: {};
|
|
322
|
+
return { ...config, ...withConnection, annotations: { ...defaults, ...existing } };
|
|
304
323
|
}
|
|
305
324
|
//# sourceMappingURL=tool-annotations.js.map
|