uat-generate
Discover MCP tools and generate a phased UAT plan with agent-executable test specifications
Best use case
uat-generate is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
It is a strong fit for teams already working in Codex.
Discover MCP tools and generate a phased UAT plan with agent-executable test specifications
Teams using uat-generate should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/uat-generate/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How uat-generate Compares
| Feature / Agent | uat-generate | Standard Approach |
|---|---|---|
| Platform Support | Codex | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Discover MCP tools and generate a phased UAT plan with agent-executable test specifications
Which AI agents support this skill?
This skill is designed for Codex.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
Cursor vs Codex for AI Workflows
Compare Cursor and Codex for AI coding workflows, repository assistance, debugging, refactoring, and reusable developer skills.
AI Agents for Marketing
Discover AI agents for marketing workflows, from SEO and content production to campaign research, outreach, and analytics.
SKILL.md Source
# UAT Generate
Generate a phased User Acceptance Test plan by discovering tools from connected MCP servers and producing agent-executable test specifications.
## Usage
```bash
# Generate UAT plan from all connected MCP servers (default: --mode mcp)
/uat-generate
# Explicit MCP mode
/uat-generate --mode mcp
# Target specific server
/uat-generate --mode mcp --server gitea
# Quick smoke test plan
/uat-generate --execution-mode quick
# Full comprehensive plan
/uat-generate --execution-mode full
# Custom output path
/uat-generate --output .aiwg/testing/uat/my-plan.md
# Interactive — ask questions about scope and priorities
/uat-generate --interactive
```
## Parameters
### --mode (default: mcp)
Test mode. Currently only `mcp` is supported. Future modes: `api`, `ui`.
### --server (optional)
Target a specific MCP server by name. If omitted, discovers tools from all connected servers.
### --output (optional)
Output path for the generated plan. Default: `.aiwg/testing/uat/plan-{server}-{timestamp}.md`
### --execution-mode (default: standard)
Controls the breadth of generated tests:
| Mode | Description |
|------|-------------|
| `quick` | Preflight + 1 happy path per tool. Minimal, fast. |
| `standard` | Happy paths + key edge cases + negative tests. Balanced. |
| `full` | All paths including exhaustive negative tests and E2E chains. Comprehensive. |
### --interactive (optional)
Prompt for scope decisions before generating:
- Which tool categories to include/exclude
- Priority ordering of phases
- Whether to generate negative tests
- Custom test data values
## Workflow
### Step 1: Discover MCP Tools
Enumerate all tools from connected MCP servers:
```
Discovering MCP tools...
Server: gitea (mcp__gitea__*)
Found 78 tools
Server: filesystem (mcp__fs__*)
Found 12 tools
Total: 90 tools across 2 servers
```
For each tool, capture:
- Tool name and description
- Parameter schema (required/optional, types, defaults)
- Return type description
- Any documented constraints or side effects
### Step 2: Categorize Tools
Group tools into logical categories:
```
Categories:
Repository Management: 15 tools (create, get, list, update, delete, fork, ...)
Issue Tracking: 12 tools (create, get, list, edit, comment, close, ...)
User & Org: 8 tools (get_user, search_users, get_orgs, ...)
Actions/CI: 14 tools (list_runs, get_job, dispatch, ...)
Labels & Milestones: 9 tools (create_label, edit_label, ...)
Wiki: 5 tools (create, get, update, delete, list)
Release & Tags: 8 tools (create_release, list_tags, ...)
File Operations: 5 tools (get_file, create_file, update_file, ...)
Misc: 2 tools (get_version, get_user_info)
```
### Step 3: Design Phases
Apply the standard phase structure:
1. **Phase 0: Preflight** — Connectivity, auth, server version
2. **Phase 1: Seed Data** — Create test entities needed by later phases
3. **Phases 2-N: Per-Category** — One phase per tool category
4. **Phase N+1: E2E Chains** — Cross-category workflows
5. **Phase N+2: Cleanup** — Delete all seeded data
### Step 4: Generate Test Specs
For each tool in each phase, generate test cases following the `uat-test-case.md` template:
- **Happy path**: Standard usage with valid inputs
- **Edge cases**: Boundary values, empty strings, max lengths (standard and full modes)
- **Negative tests**: Missing required params, invalid types, unauthorized access (standard and full modes)
- **E2E chains**: Multi-tool workflows (full mode only)
### Step 5: Wire Variables
Connect phases via stored variables:
```markdown
Phase 1 (Seed): create_repo → Store: TEST_REPO_NAME
Phase 3 (Issues): create_issue(repo: ${TEST_REPO_NAME}) → Store: ISSUE_INDEX
Phase 4 (Comments): create_issue_comment(index: ${ISSUE_INDEX})
Phase N (Cleanup): delete_repo(name: ${TEST_REPO_NAME})
```
### Step 6: Output Plan
Write the complete UAT plan to the output path. Display summary:
```
UAT Plan Generated
Server: gitea
Tools: 78
Phases: 12
Test cases: 165
Negative tests: 32 (isolated)
Estimated duration: ~20 minutes
Output: .aiwg/testing/uat/plan-gitea-20260227.md
Review the plan, then execute with:
/uat-execute .aiwg/testing/uat/plan-gitea-20260227.md
```
## Plan Output Format
The generated plan follows the `uat-phase.md` template. See `templates/uat-phase.md` for the full format.
## Error Handling
### No MCP Servers Connected
```
No MCP servers detected.
To use UAT-MCP, you need at least one MCP server connection.
Check your MCP configuration and try again.
```
### Server Discovery Fails
```
Failed to discover tools from server: {name}
Error: {details}
Continuing with remaining servers...
```
### Zero Tools Found
```
No tools discovered from {server_name}.
The server is connected but exposes no tools.
This may indicate a configuration issue.
```
## References
- Agent: @$AIWG_ROOT/agentic/code/addons/uat-mcp/agents/uat-planner.md
- Template: @$AIWG_ROOT/agentic/code/addons/uat-mcp/templates/uat-phase.md
- Schema: @$AIWG_ROOT/agentic/code/addons/uat-mcp/schemas/uat-plan.yamlRelated Skills
setup-generate
Generate a `setup.manifest.yaml` file for a project using the `setup.aiwg.io/v1`
hook-regenerate
Rebuild AIWG hook files from currently installed framework manifests
generate-tests
Generate comprehensive test suite for $ARGUMENTS following project testing conventions and best practices.
generate-realization
Generate behavioral specifications (Layer 3) from use cases and architecture documents using multi-agent orchestration
generate-factory
Auto-generate test data factories from schemas, types, or models. Use when creating test data infrastructure, setting up fixtures, or reducing test setup boilerplate.
aiwg-regenerate
Regenerate platform context file with preserved team directives
aiwg-regenerate-windsurfrules
Regenerate .windsurfrules for Windsurf with preserved team directives
aiwg-regenerate-warp
Regenerate WARP.md for Warp Terminal with preserved team directives
aiwg-regenerate-opencode
Regenerate OpenCode context file (.opencode/context.md) with AIWG framework content
aiwg-regenerate-factory
Regenerate AGENTS.md for Factory AI with hook file architecture
aiwg-regenerate-cursorrules
Regenerate .cursorrules for Cursor with preserved team directives
aiwg-regenerate-copilot
Regenerate copilot-instructions.md for GitHub Copilot with vendor-specific content only