ultraqa

GitHub

自动化QA循环工作流,通过测试、验证、修复的迭代过程确保质量目标达成。支持测试、构建、Lint及类型检查等场景,结合架构师诊断自动修复问题。

skills/ultraqa/SKILL.md Yeachan-Heo/oh-my-claudecode

Trigger Scenarios

需要反复运行测试并修复失败项 验证构建或代码规范是否通过 执行自动化质量保证循环

Install

npx skills add Yeachan-Heo/oh-my-claudecode --skill ultraqa -g -y
More Options

Use without installing

npx skills use Yeachan-Heo/oh-my-claudecode@ultraqa

指定 Agent (Claude Code)

npx skills add Yeachan-Heo/oh-my-claudecode --skill ultraqa -a claude-code -g -y

安装 repo 全部 skill

npx skills add Yeachan-Heo/oh-my-claudecode --all -g -y

预览 repo 内 skill

npx skills add Yeachan-Heo/oh-my-claudecode --list

SKILL.md

Frontmatter
{
    "name": "ultraqa",
    "level": 3,
    "description": "QA cycling workflow - test, verify, fix, repeat until goal met",
    "argument-hint": "[--tests|--build|--lint|--typecheck|--custom <pattern>] [--interactive]"
}

UltraQA Skill

[ULTRAQA ACTIVATED - AUTONOMOUS QA CYCLING]

Overview

You are now in ULTRAQA mode - an autonomous QA cycling workflow that runs until your quality goal is met.

Cycle: qa-tester → architect verification → fix → repeat

Relationship to /goal, Ralph, Team, and Ultragoal

UltraQA owns repeated quality-gate cycling only. Use the deterministic conflict policies refuse, adopt_existing, and artifact_only rather than non-deterministic warning handling. Use it after the target behavior is known and the remaining question is whether tests, build, lint, typecheck, or another explicit QA condition passes. If Claude Code /goal is active, UltraQA may produce visible command evidence for that goal, but must not describe the /goal evaluator as independently running commands or reading files. If Ralph or Team is active, UltraQA is a verification/fix sub-loop under that authority rather than a competing session loop. If no active loop is safe, record QA expectations and evidence in artifact-only Ultragoal notes instead of claiming automatic execution.

Goal Parsing

Parse the goal from arguments. Supported formats:

Invocation Goal Type What to Check
/oh-my-claudecode:ultraqa --tests tests All test suites pass
/oh-my-claudecode:ultraqa --build build Build succeeds with exit 0
/oh-my-claudecode:ultraqa --lint lint No lint errors
/oh-my-claudecode:ultraqa --typecheck typecheck No TypeScript errors
/oh-my-claudecode:ultraqa --custom "pattern" custom Custom success pattern in output

If no structured goal provided, interpret the argument as a custom goal.

Cycle Workflow

Cycle N (Max 5)

  1. RUN QA: Execute verification based on goal type

    • --tests: Run the project's test command
    • --build: Run the project's build command
    • --lint: Run the project's lint command
    • --typecheck: Run the project's type check command
    • --custom: Run appropriate command and check for pattern
    • --interactive: Use qa-tester for interactive CLI/service testing:
      Task(subagent_type="oh-my-claudecode:qa-tester", model="sonnet", prompt="TEST:
      Goal: [describe what to verify]
      Service: [how to start]
      Test cases: [specific scenarios to verify]")
      
  2. CHECK RESULT: Did the goal pass?

    • YES → Exit with success message
    • NO → Continue to step 3
  3. ARCHITECT DIAGNOSIS: Spawn architect to analyze failure

    Task(subagent_type="oh-my-claudecode:architect", model="opus", prompt="DIAGNOSE FAILURE:
    Goal: [goal type]
    Output: [test/build output]
    Provide root cause and specific fix recommendations.")
    
  4. FIX ISSUES: Apply architect's recommendations

    Task(subagent_type="oh-my-claudecode:executor", model="sonnet", prompt="FIX:
    Issue: [architect diagnosis]
    Files: [affected files]
    Apply the fix precisely as recommended.")
    
  5. REPEAT: Go back to step 1

Exit Conditions

Condition Action
Goal Met Exit with success: "ULTRAQA COMPLETE: Goal met after N cycles"
Cycle 5 Reached Exit with diagnosis: "ULTRAQA STOPPED: Max cycles. Diagnosis: ..."
Same Failure 3x Exit early: "ULTRAQA STOPPED: Same failure detected 3 times. Root cause: ..."
Environment Error Exit: "ULTRAQA ERROR: [tmux/port/dependency issue]"

Observability

Output progress each cycle:

[ULTRAQA Cycle 1/5] Running tests...
[ULTRAQA Cycle 1/5] FAILED - 3 tests failing
[ULTRAQA Cycle 1/5] Architect diagnosing...
[ULTRAQA Cycle 1/5] Fixing: auth.test.ts - missing mock
[ULTRAQA Cycle 2/5] Running tests...
[ULTRAQA Cycle 2/5] PASSED - All 47 tests pass
[ULTRAQA COMPLETE] Goal met after 2 cycles

State Tracking

Track state in .omc/ultraqa-state.json:

{
  "active": true,
  "goal_type": "tests",
  "goal_pattern": null,
  "cycle": 1,
  "max_cycles": 5,
  "failures": ["3 tests failing: auth.test.ts"],
  "started_at": "2024-01-18T12:00:00Z",
  "session_id": "uuid"
}

Cancellation

User can cancel with /oh-my-claudecode:cancel which clears the state file.

Important Rules

  1. PARALLEL when possible - Run diagnosis while preparing potential fixes
  2. TRACK failures - Record each failure to detect patterns
  3. EARLY EXIT on pattern - 3x same failure = stop and surface
  4. CLEAR OUTPUT - User should always know current cycle and status
  5. CLEAN UP - Clear state file on completion or cancellation

STATE CLEANUP ON COMPLETION

IMPORTANT: Delete state files on completion - do NOT just set active: false

When goal is met OR max cycles reached OR exiting early:

# Delete ultraqa state file
rm -f .omc/state/ultraqa-state.json

This ensures clean state for future sessions. Stale state files with active: false should not be left behind.

Parallel session caveats

  • Multi-repo workspace anchor: drop a .omc-workspace marker at the parent directory so multiple sessions across sub-repos share one .omc/. Resolution order: OMC_STATE_DIR > .omc-workspace > git > cwd. See docs/REFERENCE.md.
  • Session id source: OMC_SESSION_ID env var wins in CLI contexts; hook payload data.session_id wins in hook contexts.
  • Plan id (when applicable): UltraQA state is session-scoped. Mutual-exclusion with ralph applies only within the same session.
  • Parallel verdict: supported (session-scoped state)

Begin ULTRAQA cycling now. Parse the goal and start cycle 1.

Version History

  • 41a4c0f Current 2026-07-25 07:06

Same Skill Collection

skills/ai-slop-cleaner/SKILL.md
skills/ask/SKILL.md
skills/autopilot/SKILL.md
skills/autoresearch/SKILL.md
skills/cancel/SKILL.md
skills/ccg/SKILL.md
skills/configure-notifications/SKILL.md
skills/debug/SKILL.md
skills/deep-dive/SKILL.md
skills/deep-interview/SKILL.md
skills/deepinit/SKILL.md
skills/external-context/SKILL.md
skills/hud/SKILL.md
skills/learner/SKILL.md
skills/local-build-reminder/SKILL.md
skills/mcp-setup/SKILL.md
skills/merge-readiness/SKILL.md
skills/omc-doctor/SKILL.md
skills/omc-reference/SKILL.md
skills/omc-setup/SKILL.md
skills/omc-teams/SKILL.md
skills/plan/SKILL.md
skills/project-session-manager/SKILL.md
skills/ralph/SKILL.md
skills/ralplan/SKILL.md
skills/release/SKILL.md
skills/remember/SKILL.md
skills/sciomc/SKILL.md
skills/self-improve/SKILL.md
skills/setup/SKILL.md
skills/skill/SKILL.md
skills/skillify/SKILL.md
skills/team/SKILL.md
skills/trace/SKILL.md
skills/ultragoal/SKILL.md
skills/ultrawork/SKILL.md
skills/verify/SKILL.md
skills/visual-verdict/SKILL.md
skills/wiki/SKILL.md
skills/writer-memory/SKILL.md

Metadata

Files
0
Version
5aa678c
Hash
77279592
Indexed
2026-07-25 07:06

Главная - Вики-сайт
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-20 17:53
浙ICP备14020137号-1 $Гость$