Back to Discover

temper

plugin

galando

Temper is a plugin for Claude Code that closes the quality gap in AI-generated code

View on GitHub
14 starsMITSynced Aug 15, 2026

Install to Claude Code

/plugin marketplace add galando/temper

README

Temper

Your AI writes fast. Temper makes it last.

Deterministic quality gates, blast radius analysis, and intent-driven development for AI-generated code

Version License: MIT Claude Code Plugin DeepWiki Eval Fixtures

Website · Getting Started · Releases

Quick Start: /plugin marketplace add galando/temper then /temper "add password reset" — one command for the full pipeline.

Headless / CI (claude -p): use the fully-qualified name, /temper:temper "..." — the bare /temper alias only resolves in an interactive session.

The Problem

AI writes code fast. But "fast" without "right" creates bugs, technical debt, and features that miss the point. AI-generated code has structural failure patterns: happy paths that work while edge cases are never implemented, features nobody asked for, factories for something used once, calls to methods that don't exist, correct code that was never wired in.

Most AI tools check whether code compiles. Temper checks whether it solves the right problem — and it checks mechanically, not by asking the model to grade its own work.

The Catch

The rate-limiting bug that vanilla AI always misses:

Scenario: Rate limiting on reset requests
  Given a user has requested 3 resets in 10 minutes
  When they request another reset
  Then the request is rejected with 429

AI built password reset. All tests passed. Temper's scenario coverage gate caught the gap: no test for rate limiting. Build wrote the test, it failed, Build implemented rate limiting. Without the gate, it would never have been built.

More: Evidence Gallery

How It Works

Three methodologies, one contract file (intent.md):

intent.md
|
+-- Intent (IDD)           WHY are we building this?
|   Problem, success criteria, constraints
|
+-- Scenarios (BDD)        WHAT should it do?
|   Gherkin Given/When/Then, derived BEFORE architecture
|
+-- /temper:build (TDD)    HOW do we build it?
    Tests from scenarios, RED → GREEN → REFACTOR

Scenarios are derived before architecture, so the file plan follows from what the system must do. That prevents over-engineering structurally.

Full methodology: docs/methodology.md

Deterministic Gates

Every gate verdict — Plan, Build, Review, Check, Commit — is computed by a small CLI (scripts/temper) from an evidence ledger, never asserted by a model:

> temper gate check
temper gate check -> PASS
  [v] tests pass — 24 green test run(s) recorded
  [v] coverage >= threshold — 87.0% >= 80% threshold
  • Every claim carries proof. temper evidence add records a command, exit code, and artifact. PROVEN is mechanically re-checked — a missing artifact or nonzero exit auto-downgrades it to HEURISTIC.
  • git commit is physically blocked while any gate is FAIL and unoverridden, by a real pre-commit hook. A human can always override (recorded, never erased); a confused model can't talk past a red gate.
  • Gate logic is ~20-30 lines of readable shell per stage, unit-tested in scripts/tests/test-temper.sh. To know what "Check passed" means, read the function — not 1,000 lines of prompt.
  • Seeded-defect fixtures prove it catches real bugs — 3/3, verified live. Three projects, each with one planted defect (missing rate limiting, a hallucinated API call, a component never wired in). A gate must mechanically FAIL naming the defect; "some text roughly matches" doesn't count. Full story: evals/README.md.

Design rationale: docs/plans/v7-deterministic-spine.md

Autonomous Continuation (opt-in)

After you approve the plan, /temper can run the remaining stages unattended and leave a report. It never pushes or merges, never re-plans on its own, and parks before commit — enforced by the same temper gate mechanism as the interactive path.

First run: pre-allow your build/test commands in settings.json, or the run parks on the first unpermitted command. No config yet? /temper:init seeds one.

Commands

CommandPurpose
/temperFull pipeline: plan → design? → build → review → check
/temper:planBlast radius + BDD scenarios + architecture
/temper:designSystem design (complex/medium features)
/temper:buildScenario-driven TDD + coverage gate
/temper:reviewIntent validation + confidence scoring
/temper:checkStack-aware validation pipeline
/temper:fixRoot cause analysis + regression test
/temper:packManage quality packs
/temper:statusQuality dashboard + gate ledger
/temper:initSeed .claude/temper.config + .temper/ (idempotent)

Quality Packs

Rule sets enforced during generation and review. Three-tier resolution: project-local → global → built-in.

PackWhat It Enforces
qualityMethod length, DRY, naming, complexity
tddRED-GREEN-REFACTOR, coverage
securityOWASP Top 10, no secrets in code
performanceN+1 detection, pagination, Core Web Vitals
api-designAdditive extension, idempotency, consistent naming
architecture-depthModule depth: seams, adapters, locality, leverage

Create custom packs with /temper:pack or add a rules.md to .claude/packs/your-pack/.

Security & Trust

Temper is Markdown and ~500 lines of auditable shell — every command, skill, pack, and gate is a file you can read in this repository.

  • No network calls, no telemetry. The only shell commands it runs are your project's own build/test/lint commands plus its gate script, under Claude Code's normal permission prompts.
  • Writes stay in your project.claude/temper.config (only with your approval) and working files under .temper/.
  • The commit gate is mechanical, not advisory. See Deterministic Gates.
  • Autonomous Continuation is opt-in and fenced. Armed per-run at the plan gate. Never commits, pushes, or merges.

Installation

/plugin marketplace add galando/temper
/plugin install temper
bash "$CLAUDE_PLUGIN_ROOT/scripts/hooks/install.sh"   # installs the commit gate

Recommended Setup

Temper works out of the box. Optional MCP servers upgrade heuristic analysis to mechanically verified findings:

ServerProvidesInstall
code-review-graphAST-level dependency graphs, call chains, impact radiuspip install code-review-graph
semgrepSAST scanning, security vulnerabilitiesbrew install semgrep
open-code-reviewExternal LLM-powered defect detection (Alibaba)npm install -g @alibaba-group/open-code-review
claude mcp add code-review-graph -- code-review-graph
claude mcp add semgrep -- semgrep --mcp

Every finding carries an evidence label — PROVEN, HEURISTIC, SEMANTIC, or OCR — recorded in .temper/evidence/.

Full setup: docs/recommended-setup.md

Supported Stacks

StackDetectionAuto-Commands
Spring Bootpom.xml / build.gradlemvn compile, mvn test
React + TSpackage.json + tsconfig.jsonnpm test, npm run build
Node/Expresspackage.json + expressnpm test, npm run lint
FastAPIpyproject.toml + fastapipytest, ruff check
Gogo.modgo test, golangci-lint
RustCargo.tomlcargo test, cargo clippy

Documentation

Contributing

See CONTRIBUTING.md for guidelines.

License

MIT (c) Gal Naor


Back to Top

Made with care for the AI coding community

Rendered live from galando/temper's GitHub README — not stored, always reflects the source repo.

1 Plugin

NameDescriptionCategorySource
temperAI writes the code. Temper makes sure it's actually ready to ship../

0 Comments

Login required
Log in to post a comment or update on this repo.

No comments yet — be the first to share an update.