From testany-bot
Manages Testany pipeline triggers: creates/updates Plans for scheduling, Gatekeepers for webhooks, Manual Triggers, and ad-hoc immediate executions. Use for automating pipeline runs via MCP tools.
npx claudepluginhub testany-io/testany-agent-skills --plugin testany-botThis skill uses the workspace's default tool permissions.
管理 Testany 平台上的 **trigger**,并负责 **即时发起一次 pipeline execution**。
Manages Testany test pipelines: CRUD via API, create from automation designs/case keys, view YAML/details, list by workspace, update configs, validate syntax.
Scaffolds CI/CD quality pipelines with test execution. Useful when setting up CI pipelines or creating quality gates.
Automates CircleCI via Rube MCP: triggers pipelines by project slug/branch/tag, monitors workflows/jobs, retrieves artifacts/test metadata. Requires active CircleCI connection.
Share bugs, ideas, or general feedback.
管理 Testany 平台上的 trigger,并负责 即时发起一次 pipeline execution。
用户输入: $ARGUMENTS
在开始之前,先按 automation-model.md 理解边界:
pipeline 是执行与编排单元trigger 是执行入口trigger 决定“如何发起 execution”execution 发起之后的观测与管理属于 testany-execution重要结论:
长期存在、可重复复用的执行入口:
PlanManual TriggerGatekeeper一次性即时触发:
testany_execute_pipeline它会直接返回 execution_key,后续观测与管理交给 testany-execution。
| 类型 | 平台能力 | 当前 MCP 支持 | 本 skill 的处理方式 |
|---|---|---|---|
| Plan | 完整 | 有 | 直接通过 MCP CRUD |
| Gatekeeper | 完整 | 有(含 pipeline 绑定与 webhook URL) | 直接通过 MCP 完成全流程 |
| Manual Trigger | 平台已支持 | 当前未看到对应 MCP tools | 明确纳入 trigger 体系;若当前宿主/MCP 无工具,则指导用户走 UI fallback |
| Run Now | 完整 | 有 (testany_execute_pipeline) | 直接执行一次并返回 execution_key |
| 用户意图 | 操作类型 | MCP 工具 |
|---|---|---|
| 列出 Gatekeepers | Read | testany_list_gatekeepers |
| 查看 Gatekeeper 详情 | Read | testany_get_gatekeeper |
| 创建 Gatekeeper | Create | testany_create_gatekeeper(可同时绑定 pipelines) |
| 查看 Gatekeeper 绑定的 Pipelines | Read | testany_get_gatekeeper_pipelines |
| 绑定/替换 Gatekeeper 的 Pipelines | Update | testany_bind_gatekeeper_pipelines |
| 更新 Gatekeeper 字段 | Update | testany_update_gatekeeper |
| 删除 Gatekeeper | Delete | testany_delete_gatekeeper |
| 列出 Plans | Read | testany_list_plans |
| 查看 Plan 详情 | Read | testany_get_plan |
| 创建 Plan | Create | testany_create_plan |
| 更新 Plan | Update | testany_update_plan |
| 删除 Plan | Delete | testany_delete_plan |
| 转移 Plan Owner | Update | testany_assign_plan |
常用辅助:
testany_get_my_workspacestestany_list_pipelines| 用户意图 | MCP 工具 |
|---|---|
| 立即执行一次 pipeline | testany_execute_pipeline |
| 方式 | 适用场景 |
|---|---|
| Plan | 固定时间自动执行,如夜间回归、定时巡检 |
| Manual Trigger | 人工按需执行,如修复后复测、发布前验收 |
| Gatekeeper | 外部事件驱动执行,如 CI/CD、告警、Webhook |
| Run Now | 现在立刻执行一次,不沉淀长期 trigger 资源 |
testany_get_my_workspacestestany_list_pipelinestestany_execute_pipelineexecution_keytestany-execution如有需要,可同时传:
environmentparameters但不要把这些一次性参数误写成长期 trigger 配置。
Plan 用于按固定 schedule 自动触发一个或多个 pipeline。
testany_get_my_workspaces → 选择 workspacetestany_list_pipelines → 选择要定时执行的 pipelinestestany_create_plan → 创建计划建议同时填写:
schedule_exprtimezoneschedule_strwatchersPlan 更新应视为高风险“覆盖式更新”:
testany_get_plan 先读取现有配置testany_update_planManual Trigger 用于按需执行一个或多个 pipeline,不依赖定时调度,也不依赖外部 webhook。
如果当前 MCP/宿主没有 Manual Trigger 工具:
Gatekeeper 通过 Webhook 触发一个 pipeline group 的执行。
方式一:创建时直接绑定(推荐)
testany_get_my_workspaces → 选择 workspacetestany_list_pipelines → 选择要触发的 pipelinestestany_create_gatekeeper(workspace, name, pipelines=[...]) → 创建并绑定testany_get_gatekeeper → 获取 hook_urltestany_update_gatekeeper → 配置 trigger_method / trigger_name / trigger_condition / watchers / owned_by方式二:先创建,再绑定
testany_create_gatekeeper → 创建 Gatekeepertestany_bind_gatekeeper_pipelines → 绑定 pipelinestestany_get_gatekeeper_pipelines → 确认绑定结果通过 testany_get_gatekeeper 获取详情即可拿到 hook_url。如果用户无编辑权限,hook_url 会是 null。
- name: Trigger Testany Gatekeeper
run: |
curl -X POST "${{ secrets.TESTANY_GATEKEEPER_WEBHOOK_URL }}" \
-H "Content-Type: application/json" \
-d '{"source":"github-actions"}'
stage('Quality Gate') {
steps {
sh '''
curl -X POST "${TESTANY_GATEKEEPER_WEBHOOK_URL}" \
-H "Content-Type: application/json" \
-d '{"source":"jenkins"}'
'''
}
}
任务完成后,向用户汇报:
Plan / Manual Trigger / Gatekeeper / Run Nowexecution_keytestany-execution