Get the FREE Ultimate OpenClaw Setup Guide →

qa-iteration

Scanned
npx machina-cli add skill blisspixel/primr/qa-iteration --openclaw
Files (1)
SKILL.md
2.9 KB

QA Iteration

Primr grades reports on a 0-100 scale across four dimensions. See references/scoring.md for the scoring framework and common issues.

Operational Capabilities

Run Quality Assessment

run_qa(company="Acme Corp")
run_qa(file_path="output/acme_corp/report.docx")
run_qa(company="Acme Corp", detailed=True)

Interpret Results

The result includes an overall score, per-dimension scores (clarity, completeness, insight depth, accuracy), and per-section feedback with specific issues.

Section Refinement

For sections scoring below 70:

  1. Identify specific issues from feedback
  2. Determine if additional research is needed
  3. Either request targeted deep research or suggest manual edits

Refinement Workflow

Automatic (via QAGateHook): Runs after report generation. If score < 70, logs a warning and includes feedback in the result. User decides on action.

Manual (user-triggered):

  1. User requests QA: run_qa(company)
  2. Review scores and feedback
  3. For low-scoring sections, identify root cause and suggest approach
  4. Execute refinement if approved

Section Priorities

When refining, address sections in this order:

  1. Executive Summary -- sets tone for entire report
  2. Financial Analysis -- factual accuracy is critical
  3. Competitive Landscape -- highest strategic value
  4. SWOT Analysis -- synthesis quality matters

Example Workflow

User: "Check the quality of the Acme Corp report"

1. run_qa("Acme Corp")

   Results:
   Overall: 72 (B)
   - Clarity: 85
   - Completeness: 65
   - Insight Depth: 75
   - Accuracy: 63

2. Present findings:
   "The Acme Corp report scores 72/100 (B grade).

   Strong: Clarity (85), Insight Depth (75)

   Needs work:
   - Completeness (65): Missing competitor TechCorp
   - Accuracy (63): Revenue figures need citations

   Would you like me to:
   1. Run targeted research on TechCorp?
   2. Find citations for financial claims?
   3. Both?"

3. If user approves research:
   research_company(company="TechCorp", url="https://techcorp.com", mode="scrape")

4. After additional research:
   "I've gathered information on TechCorp.
    The report can now be updated with:
    - TechCorp's market position
    - Competitive comparison

    Shall I regenerate the Competitive Landscape section?"

Constraints

  • Threshold: Default QA gate threshold is 70
  • Iteration Limit: Max 2 refinement cycles recommended
  • Cost Awareness: Each refinement may incur API costs
  • User Approval: Always get approval before re-research

Source

git clone https://github.com/blisspixel/primr/blob/main/skills/qa-iteration/SKILL.mdView on GitHub

Overview

QA Iteration grades research reports on a 0-100 scale across four dimensions: clarity, completeness, insight depth, and accuracy. It provides an overall score, per-dimension scores, and per-section feedback to guide targeted refinements, especially when sections fall below the 70 threshold.

How This Skill Works

Use run_qa to evaluate a report file or a company. The tool returns an overall score, per-dimension scores, and detailed section feedback. For sections scoring below 70, it identifies issues and suggests targeted deep research or manual edits; refinements can be automatic after generation via QAGateHook or manual per user request, following the priority order (Executive Summary, Financial Analysis, Competitive Landscape, SWOT).

When to Use It

  • User asks to check, grade, review, or improve a research report.
  • You need to verify report quality after generation before submission.
  • A section scores below 70 and requires targeted refinement.
  • You want to decide whether to perform targeted deep research or manual edits.
  • Planning refinement cycles with user approval and awareness of potential API costs.

Quick Start

  1. Step 1: Run QA on the report: run_qa(company="Acme Corp") or run_qa(file_path="output/acme_corp/report.docx")
  2. Step 2: Review the results and identify sections scoring below 70 with concrete issues
  3. Step 3: With user approval, perform targeted research or manual edits and regenerate affected sections

Best Practices

  • Run with detailed per-section results by using detailed=True to surface issues.
  • Address sections in priority order: Executive Summary, Financial Analysis, Competitive Landscape, SWOT.
  • For low-scoring sections, identify root causes from feedback before taking action.
  • Obtain explicit user approval before performing re-research or edits.
  • Limit refinement cycles to two, and monitor potential costs.

Example Use Cases

  • User: 'Check the quality of the Acme Corp report' → run_qa("Acme Corp"), results show Overall 72; discuss actionable next steps and request targeted research for missing data in Competitive Landscape.
  • Automatic QA gate: After report generation, run_qa triggers a warning if score < 70 and surfaces detailed feedback for reviewer decision.
  • Targeted research: For a missing competitor data point in Financial Analysis, call research_company and then insert citations and figures after approval.
  • Section regeneration: After adding TechCorp data, regenerate the Competitive Landscape section to reflect new insights and improved accuracy.
  • Approval-driven refinement: User approves a second refinement cycle only after reviewing root causes and expected impact.

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers