uat-execute
Execute a UAT plan against live MCP connections, tracking pass/fail per test and filing issues on failure
What this skill does
# UAT Execute
Execute a UAT plan against live MCP connections. Runs each phase sequentially, tracks pass/fail per test, files issues for failures, and always runs cleanup.
## Usage
```bash
# Execute a UAT plan
/uat-execute .aiwg/testing/uat/plan-gitea-20260227.md
# Dry run — show what would be executed without making calls
/uat-execute .aiwg/testing/uat/plan.md --dry-run
# Skip issue filing
/uat-execute .aiwg/testing/uat/plan.md --no-issues
# Resume from a specific phase (after fixing a blocker)
/uat-execute .aiwg/testing/uat/plan.md --resume-from 3
# Override execution mode (run only quick smoke subset)
/uat-execute .aiwg/testing/uat/plan.md --execution-mode quick
```
## Parameters
### plan_path (required)
Path to the UAT plan document generated by `/uat-generate`.
### --mode (default: mcp)
Test mode. Must match the plan's mode. Currently only `mcp` is supported.
### --execution-mode (optional)
Override the plan's execution mode. Useful for running a quick smoke test from a full plan.
### --dry-run (optional)
Parse the plan and show what would be executed without making any MCP calls.
### --no-issues (optional)
Disable automatic issue filing for failures. Results are still recorded.
### --resume-from (optional)
Resume execution from a specific phase number. Useful after fixing a blocker found mid-execution. Previous phase results are loaded from the checkpoint file.
## Workflow
### Step 1: Parse Plan
Read the UAT plan and extract:
- Phase list with prerequisites
- Test cases per phase with MCP call specs
- Variable wiring requirements
- Negative test isolation flags
```
Parsing UAT Plan...
Plan: plan-gitea-20260227.md
Phases: 12
Test cases: 165
Negative tests: 32 (will be isolated)
Variables: 18 cross-phase references
```
### Step 2: Preflight Check
Before executing tests, verify:
- MCP server(s) are reachable
- Required tools are available
- Authentication is valid
```
Preflight Check...
Server: gitea — Connected
Tools available: 78/78
Auth: Valid (user: roctibot)
Ready to execute.
```
### Step 3: Execute Phases
For each phase in order:
```
═══════════════════════════════════════
Phase 3: Issue Tracking (12 tests)
═══════════════════════════════════════
P03-001: Create Issue (Happy Path)
Tool: mcp__gitea__create_issue
Parameters: {owner: "test-org", repo: "test-repo", title: "UAT Test Issue", body: "..."}
Response: {number: 1, title: "UAT Test Issue", state: "open"}
✅ Criterion 1: Returns issue with number field — PASS
✅ Criterion 2: title matches — PASS
✅ Criterion 3: state is "open" — PASS
Stored: ISSUE_INDEX = 1
Result: PASS (3/3)
P03-002: Get Issue by Index
Tool: mcp__gitea__get_issue_by_index
Parameters: {owner: "test-org", repo: "test-repo", index: 1}
Response: {number: 1, title: "UAT Test Issue", ...}
✅ Criterion 1: Returns issue matching ISSUE_INDEX — PASS
✅ Criterion 2: title is "UAT Test Issue" — PASS
Result: PASS (2/2)
P03-003: Create Issue — Missing Title (Negative)
[Isolation: single call]
Tool: mcp__gitea__create_issue
Parameters: {owner: "test-org", repo: "test-repo", body: "No title"}
Response: {error: "validation failed"}
✅ Criterion 1: Returns error — PASS
✅ Criterion 2: Error indicates missing title — PASS
Result: PASS (2/2)
Phase 3 Summary: 12/12 passed (0 failed, 0 skipped)
Duration: 45 seconds
```
### Step 4: Handle Failures
On test failure:
1. Record the failure with full details
2. File an issue (unless `--no-issues`)
3. Continue to next test (don't stop)
4. If a stored variable was expected but not captured, mark dependent tests as `error`
```
P04-007: Update Repository Description
Tool: mcp__gitea__update_repo
Parameters: {owner: "test-org", repo: "test-repo", description: "Updated"}
Response: {error: "not found", message: "repository not found"}
❌ Criterion 1: Returns updated repository — FAIL
Result: FAIL (0/1)
Issue filed: #415 "UAT: P04-007 — Update Repository returns not found"
```
### Step 5: Cleanup Phase
The cleanup phase ALWAYS runs, even if earlier phases failed:
```
═══════════════════════════════════════
Phase 11: Cleanup (always runs)
═══════════════════════════════════════
P11-001: Delete Test Repository
Tool: mcp__gitea__delete_repo (if available)
...
P11-002: Delete Test Organization
...
Cleanup complete. 3/3 test entities removed.
```
### Step 6: Save Results
Write results to `.aiwg/testing/uat/results/` following the `uat-result.yaml` schema:
```
Results saved:
File: .aiwg/testing/uat/results/results-gitea-20260227-143022.yaml
Checkpoint: .aiwg/testing/uat/results/checkpoint-gitea-20260227.yaml
Generate report with:
/uat-report .aiwg/testing/uat/results/results-gitea-20260227-143022.yaml
```
### Step 7: Summary
```
═══════════════════════════════════════════
UAT Execution Complete
═══════════════════════════════════════════
Plan: plan-gitea-20260227.md
Duration: 8 minutes 32 seconds
Results:
Total tests: 165
Passed: 159 (96.4%)
Failed: 4 (2.4%)
Skipped: 1 (0.6%)
Errors: 1 (0.6%)
Issues filed: 4
#415: P04-007 — Update Repository returns not found
#416: P06-003 — Wiki page creation timeout
#417: P08-002 — Release tag not created
#418: P09-011 — Search returns stale results
Coverage: 76/78 tools tested (97.4%)
Untested: mcp__gitea__cancel_repo_action_run (no active runs)
mcp__gitea__stop_stopwatch (no active stopwatch)
═══════════════════════════════════════════
```
## Error Handling
### Plan Not Found
```
Error: UAT plan not found at {path}
Generate a plan first:
/uat-generate --mode mcp
```
### MCP Server Unavailable
```
Error: MCP server {name} is not reachable.
The UAT plan requires this server. Check your MCP configuration.
Retry with: /uat-execute {plan_path}
```
### Checkpoint Recovery
If execution crashes mid-run, results are checkpointed per-phase:
```
Checkpoint detected: .aiwg/testing/uat/results/checkpoint-gitea-20260227.yaml
Phases completed: 0-5
Phases remaining: 6-11
Resume with: /uat-execute {plan_path} --resume-from 6
```
## References
- Agent: @$AIWG_ROOT/agentic/code/addons/uat-mcp/agents/uat-executor.md
- Schema: @$AIWG_ROOT/agentic/code/addons/uat-mcp/schemas/uat-result.yaml
- Template: @$AIWG_ROOT/agentic/code/addons/uat-mcp/templates/uat-executor-guide.md
Related in AI Agents
skill-development
IncludedComprehensive meta-skill for creating, managing, validating, auditing, and distributing Claude Code skills and slash commands (unified in v2.1.3+). Provides skill templates, creation workflows, validation patterns, audit checklists, naming conventions, YAML frontmatter guidance, progressive disclosure examples, and best practices lookup. Use when creating new skills, validating existing skills, auditing skill quality, understanding skill architecture, needing skill templates, learning about YAML frontmatter requirements, progressive disclosure patterns, tool restrictions (allowed-tools), skill composition, skill naming conventions, troubleshooting skill activation issues, creating custom slash commands, configuring command frontmatter, using command arguments ($ARGUMENTS, $1, $2), bash execution in commands, file references in commands, command namespacing, plugin commands, MCP slash commands, Skill tool configuration, or deciding between skills vs slash commands. Delegates to docs-management skill for official documentation.
reprompter
IncludedTransform messy prompts into well-structured, effective prompts — single or multi-agent. Use when: "reprompt", "reprompt this", "clean up this prompt", "structure my prompt", rough text needing XML tags and best practices, "reprompter teams", "repromptception", "run with quality", "smart run", "smart agents", multi-agent tasks, audits, parallel work, anything going to agent teams. Don't use when: simple Q&A, pure chat, immediate execution-only tasks. See "Don't Use When" section for details. Outputs: Structured XML/Markdown prompt, quality score (before/after), optional team brief + per-agent sub-prompts, agent team output files. Success criteria: Single mode quality score ≥ 7/10; Repromptception per-agent prompt quality score 8+/10; all required sections present, actionable and specific.
adaptive-compaction
IncludedAdaptive add-on policy and recovery layer that decides WHEN to compact, prune, snapshot, or fork -- replacing fixed-percent auto-compaction across Claude Code, Codex, and MCP-capable hosts. Trigger on auto-compact timing or damage: "when should I compact", "is it safe to compact now or start a fresh session", "auto-compact fires too early/mid-task", "switching to an unrelated task but the window still has space", "context rot", "answers get worse the longer the session runs", "the agent forgot the plan or my decisions after it summarized", "add a layer on top that manages context without changing the agent", raising autoCompactWindow to give the policy room, or installing/tuning a cross-tool compaction policy or PreCompact hook -- even when "compaction" is never said but the problem is context-window pressure or post-summarization memory loss. Do NOT use to summarize a conversation, build RAG, write a summarization prompt (decides WHEN not HOW), or answer max-context-length trivia.
agent-skill-creator
IncludedCreate cross-platform agent skills from workflow descriptions. Activates when users ask to create an agent, automate a repetitive workflow, create a custom skill, or need advanced agent creation. Triggers on phrases like create agent for, automate workflow, create skill for, every day I have to, daily I need to, turn process into agent, need to automate, create a cross-platform skill, validate this skill, export this skill, migrate this skill. Supports single skills, multi-agent suites, transcript processing, template-based creation, interactive configuration, cross-platform export, and spec validation.
llm-wiki
IncludedUse when building or maintaining a persistent personal knowledge base (second brain) in Obsidian where an LLM incrementally ingests sources, updates entity/concept pages, maintains cross-references, and keeps a synthesis current. Triggers include "second brain", "Obsidian wiki", "personal knowledge management", "ingest this paper/article/book", "build a research wiki", "compound knowledge", "Memex", or whenever the user wants knowledge to accumulate across sessions instead of being re-derived by RAG on every query.
skill-master
IncludedAgent Skills authoring, evaluation, and optimization. Create, edit, validate, benchmark, and improve skills following the agentskills.io specification. Use when designing SKILL.md files, structuring skill folders (references, scripts, assets), ingesting external documentation into skills, running trigger evals, benchmarking skill quality, optimizing descriptions, or performing blind A/B comparisons. Keywords: agentskills.io, SKILL.md, skill authoring, eval, benchmark, trigger optimization.