Factory Review logo

Factory Review

Community
MikeFishbeinAtherial
factory-review

Stage 6 of the Software Factory - the fresh-eyes review after the overnight loop says "done". Reads ONLY the contract and the code changes (never the loop's chat or reasoning), re-runs every acceptance criterion, and actively tries to prove the build does NOT meet the contract. Reports in plain language - what's solid, what's broken, what was quietly skipped. Escalates genuine open decisions back to the user; everything else is verified fact. Triggers - "review the build", "did the loop actually finish", "factory review".

Overview

PublisherMikeFishbeinAtherial
Repositoryinfinite-headcount
Skill namefactory-review
Stars
50
Forks
5
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by MikeFishbeinAtherial on GitHub. Read the source before you install it.

Installation

Install the Factory Review AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/MikeFishbeinAtherial/infinite-headcount/tree/main/factory-review
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/MikeFishbeinAtherial/infinite-headcount.git /tmp/infinite-headcount
mkdir -p .claude/skills
cp -r /tmp/infinite-headcount/factory-review .claude/skills/factory-review
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Factory Review in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Factory Review on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Factory Review is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Factory Review

The loop that built the code cannot be the judge of it — a model grading its own work turns agreeable, and an overnight run that "passed everything" sometimes passed a quietly narrowed version of everything. This skill is the independent checker: fresh eyes, adversarial stance, contract in hand.

Identity rule: work ONLY from factory/HANDOFF.md (the contract and tasks), factory/progress.md (the loop's claims), and the actual code and diff. Never read the loop's chat transcript or reasoning — you're grading the artifact, not the story about it.

Run this fresh. Start a new context window for the review, and if possible run it on a different model than the one that did the handoff and execution loop — a model that already reasoned its way to "done" is a worse judge of its own work than one seeing the contract and the diff for the first time.

Procedure

  1. Read the claims. progress.md: which tasks claim done, which are parked, what the run summary says.
  2. Audit the contract for tampering. Diff HANDOFF.md and the criteria in progress.md against what stage 4 compiled. Any weakened, deleted, or "reinterpreted" criterion is a top-severity finding.
  3. Re-run everything yourself. Full suite, every contract assertion, tier-2 live tests (with the gate var). Never trust green checkmarks in progress.md — trust output you produced. Run the suite twice — a test that passes once and fails once is a finding (flaky tests are how broken builds sneak through overnight loops).
  4. Try to break it. For each contract assertion, ask "how could this pass the test but still fail the user?" and probe: empty input, double-click, refresh mid-action, wrong file type, the error paths. Run the app like a real (impatient) user for 10 minutes.
  5. Check the parked list. Is each parked task genuinely blocked, or parked to hit the stop condition? Anything parked that the contract's top assertions depend on = the build is NOT done, whatever the summary says.
  6. Scan the diff for landmines, explained in plain language: secrets in code ("your password is written inside the code where anyone can see it"), TODO/stub implementations behind passing tests, dependencies added for no clear reason, files changed far outside the tasks' scope.
  7. Run a code-level review too, if available. This skill grades contract compliance (does it do what was promised); a code-review tool grades code quality (bugs, edge cases, security in the implementation itself). If the environment has one — /code-review in Claude Code, or a review agent — run it on the loop's diff and fold its confirmed findings into the findings list below. The two reviews catch different failure classes; neither substitutes for the other.

Output: factory/REVIEW.md

markdown
# Review: <project> — <date>
## Verdict
SHIP | FIX FIRST | NOT DONE — <one plain-language paragraph>

## What I verified myself
<per contract group: ran what, saw what>

## Findings (worst first)
### 1. <plain-language title>
- what happens: <observable behavior>
- how I proved it: <command/action + output>
- severity: blocks shipping | should fix | cosmetic
- suggested next step

## Parked work
## Decisions for you
<ONLY genuine open decisions — tradeoffs the contract doesn't answer.
Not bugs (those are findings). Each with a recommendation.>

Walk the user through it verdict-first, in plain language. Every finding must carry its proof — this skill never reports vibes.

Escalation rule

Bugs and contract violations are findings — facts, no user decision needed. A decision escalates only when the contract genuinely doesn't answer it (an ambiguity both readings of which pass the tests, a tradeoff the build surfaced, scope discovered mid-build). If any exist, offer a short grilling-style session — one question at a time, recommendation attached — and route the answers: contract change → note in HANDOFF.md + new criteria via factory-tests; new work → new tasks via factory-plan.

Close out

If factory/STATE.md doesn't exist (standalone use), create it first with a minimal version of the schema described in factory/SKILL.md.

  • FIX FIRST / NOT DONE → offer a fix list formatted as a mini-handoff (same operating loop, criteria = the findings' proofs) for one more loop run. Update STATE.md → stage 5 (loop again).
  • SHIP → update STATE.md → stage 7, next action "proof video with auto-loom-proof". Offer factory-explain — "want me to explain what got built, like you're 10?" — the post-build explainer is how the user actually comes to own what they now have.

Frequently asked questions

What does the Factory Review AI skill do?

Stage 6 of the Software Factory - the fresh-eyes review after the overnight loop says "done". Reads ONLY the contract and the code changes (never the loop's chat or reasoning), re-runs every acceptance criterion, and actively tries to prove the build does NOT meet the contract. Reports in plain language - what's solid, what's broken, what was quietly skipped. Escalates genuine open decisions back to the user; everything else is verified fact. Triggers - "review the build", "did the loop actually finish", "factory review".

Why use Factory Review on TypingMind?

Because you install it once and use it with any model. Factory Review is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Factory Review in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/MikeFishbeinAtherial/infinite-headcount/tree/main/factory-review. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Factory Review?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Factory Review?

As many as you like. As long as a model supports skills, you can use Factory Review with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Factory Review AI skill free?

Yes. It is published on GitHub by MikeFishbeinAtherial under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇