uat

User acceptance testing (UAT) is checking a change in a real device environment against the conditions written in an issue. This command plans, reviews, runs, and reports those checks.

In plain words
What is it for?
Use it to verify an issue on real devices, starting from its acceptance conditions and ending with a written test report.
Why use it?
It removes the need to organize the test setup, review steps, execution, and shutdown by hand.

Command for Claude Code

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/kewton/commandmate/uat
Clone the repo
git clone --depth 1 https://github.com/Kewton/CommandMate

Made for: Claude Code.

Per session 24 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 3,821 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00024 $0.03821
Opus 5 $0.00012 $0.01911
Sonnet 5 $0.00005 $0.00764
Haiku 4.5 $0.00002 $0.00382

Measured 2d ago against content hash 7586dad8df8d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

uat scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -s http://localhost:{UAT_PORT}/api/worktrees | head -c 100
.claude/commands/uat.md · 439 lines

How it starts

The opening of the file, as written. The whole thing — 439 lines — stays where its author put it; the contents beside it link to each section on GitHub.

実機受入テスト(UAT)コマンド

概要

Issueの受入条件に基づき、実機環境での受入テスト(User Acceptance Test)を計画・レビュー・実行・報告する自動化コマンドです。テスト環境のセットアップから停止まで一貫して実行します。

使用方法

/uat [Issue番号]
/uat [Issue番号] --repo /path/to/test/repo

:

/uat 518
/uat 518 --repo /Users/user/projects/test-repo

実行内容

あなたはQAエンジニアとして、実機での受入テストを統括します。以下のフェーズを順次実行し、各フェーズの完了を確認しながら進めてください。

パラメータ

  • issue_number: テスト対象のIssue番号(必須)
  • --repo: テストに使用するリポジトリパス(任意。コマンドによってはユーザーに確認)

実行フェーズ

Phase 0: 初期設定

0-1. TodoWriteで作業計画作成
- [ ] Phase 1: テスト計画立案
- [ ] Phase 2: テスト計画レビュー(1回目)
- [ ] Phase 3: レビュー指摘対応
- [ ] Phase 4: テスト計画レビュー(2回目)
- [ ] Phase 5: テスト環境セットアップ
- [ ] Phase 6: 実機受入テスト実行
- [ ] Phase 7: テスト報告書作成
- [ ] Phase 8: テスト環境停止
0-2. ディレクトリ構造作成
mkdir -p dev-reports/issue/{issue_number}/uat
0-3. Issue情報取得
gh issue view {issue_number} --json number,title,body

Phase 1: テスト計画立案

1-1. Issueの受入条件を抽出

Issue本文から以下を抽出:

  • 受入条件 (## 受入条件 / ## 受け入れ条件 / ## Acceptance Criteria セクション)
  • 実装対象 (## 実装対象 / ## 実装対象コマンド セクション)
  • 共通仕様 (## 共通仕様 セクション)
  • 技術的な注意点 (## 技術的な注意点 セクション)
1-2. 実装ファイルの確認

Issueで変更・追加されたファイルを特定し、テスト対象の機能を把握する。 必要に応じてコードを読み、テスト可能な動作を特定する。

1-3. テスト計画書の作成

ファイルパス: dev-reports/issue/{issue_number}/uat/test-plan.md

以下の観点でテストケースを設計する:

  1. 正常系テスト: 各機能が仕様通りに動作すること
  2. 異常系テスト: エラー時に適切なメッセージと終了コードが返ること
  3. オプション・フラグテスト: 各オプションが正しく機能すること
  4. 統合テスト: 複数機能の連携が正しく動作すること
  5. 既存機能への影響確認: 既存機能が壊れていないこと

テスト計画書の形式:

# Issue #{issue_number} 実機受入テスト計画

## テスト概要
- Issue: #{issue_number} {title}
- テスト日: {date}
- テスト環境: CommandMate サーバー (localhost:{port})

## 前提条件
- テストに必要なリポジトリ/データ
- 環境変数設定

## テストケース一覧

### TC-001: {テスト名}
- **テスト内容**: {何を確認するか}
- **前提条件**: {テスト実行前に必要な状態}
- **実行手順**: {具体的なコマンドまたは操作}
- **期待結果**: {正常時の出力・終了コード}
- **確認観点**: {Issueのどの受入条件に対応するか}

### TC-002: ...
1-4. 不明点の確認

テスト計画作成中に以下の不明点がある場合、AskUserQuestion ツールでユーザーに確認する

  • テストに使用するリポジトリパス(--repo 未指定時)
  • テストデータの準備方法
  • テスト対象外とすべき項目
  • 実機でのテストが困難な項目の代替手段

Read the full file on GitHub · 439 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 439 lines · 24 tokens per session scan A 7586dad8df8d

Subscribe to this mod's changes

uat is a command published in the GitHub repository Kewton/CommandMate (39 stars, last pushed 2d ago), licensed MIT. It adds 24 tokens to every session and 3,821 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.