Skip to content

Releases: rafagomes/ai-workflow

v0.6.3 — /design Paper fidelity protocol

Choose a tag to compare

@rafagomes rafagomes released this 23 Apr 03:20

Fixed

/design now enforces an Implementation Fidelity Protocol in every generated docs/design/DESIGN_SYSTEM.md.

Problem: downstream skills (/feature, /factory, /fix) were reading the design system doc and implementing UI from markdown + memory, producing pixel drift vs. Paper.

Fix: the generated doc now opens with:

  • A non-negotiable "read before writing any UI code" checklist that forces mcp__paper__get_jsx / get_computed_styles on the target node before implementation.
  • A Paper Canvas Map table listing every artboard + its node ID + what it covers.
  • A 📐 Paper reference line at the end of every component block pointing to its exact canvas location.
  • Screenshots explicitly demoted to lowest-trust input.

Rule 1 in /design now codifies: Paper is the pixel-perfect source of truth; the doc is the rules layer. Component templates in the generated doc all carry the reference line.

Net effect: implementers stop eyeballing from PNGs and always resolve exact values from Paper via MCP.

v0.6.2 — /verify-design single-pass + model fit

Choose a tag to compare

@rafagomes rafagomes released this 21 Apr 15:13

Fixed

  • `/verify-design` documents itself as a single-pass fidelity-fix skill, not a review-only gate. Empirically, dispatching it as review + separate fix doubles Paper MCP and Playwright load for the same outcome — the skill already does review + fix + re-verify in one pass.
  • Adds a model-fit matrix for parent agents that dispatch this skill to sub-agents:
    • Sonnet for first-pass delta work on a new/changed PR
    • Haiku for re-verify against a known delta list
    • Opus only for from-scratch design + implementation
  • Direct user invocations run at the user's chosen model — no auto-downgrade for cost.

v0.6.0 — factory milestone scope, reviewer loops, CLAUDE.md split

Choose a tag to compare

@rafagomes rafagomes released this 19 Apr 16:27

Highlights

/factory repositioned to single-milestone/phase scope

  • Now requires a phase or milestone: /factory <phase-name> or /factory --milestone <N>
  • Convention: roadmap phase file docs/roadmap/<NNN>_<name>.md ↔ GitHub milestone titled <NNN>_<name> (filed by /issues)
  • Source of work is open issues in the milestone (closed = done, excluded). Bare /factory is rejected — use /autopilot for multi-phase runs
  • Adds file-overlap-aware batching (greedy bin-packer ported from /autopilot): no two features in a writer batch may touch the same file, so 10 PRs from a milestone open as 2-3 conflict-free batches

Per-PR review loop (factory) + fresh-context reviewer (/feature)

  • Writers no longer self-review. The previous in-context code-review skill call violated writer/reviewer separation and has been removed from both skills
  • Fresh-context sonnet reviewer per PR (factory) or per implementation (/feature), with bounded scope: diff + spec + ≤3 files
  • On FIX_REQUIRED, the writer agent is resumed via SendMessage (warm context — re-spawning a fresh fixer would re-pay the spec/files read cost) with action items only
  • Hard cap of 2 fix cycles, then escalates to PR comment as NEEDS_HUMAN. Spec-ambiguity is auto-detected when the same finding survives a cycle
  • Final verdict posted to the PR via gh pr review. No auto-merge — factory stops with PRs open and reviewed for human merge

CLAUDE.md split

  • The repo-root CLAUDE.md was serving two purposes (global defaults + ai-workflow-only project rules) — anything ai-workflow-specific leaked into every project
  • Now split:
    • dotfiles/CLAUDE.md — global defaults, symlinked to ~/.claude/CLAUDE.md by install.sh
    • CLAUDE.md (repo root) — ai-workflow-only rules: edit sources not symlinks, re-run install.sh on skill changes, always update relevant docs in the same change, versioning + release flow
  • install.sh, adapters/codex/install.sh, and adapters/cursor/install.sh updated to read from dotfiles/CLAUDE.md

Token shape (review loops)

  • /feature: +10-15% common case, +25-40% worst case (2 cycles) for substantially higher quality before your eyes
  • /factory: +20-30% common case, +60-80% worst case per PR — but reviewers run parallel across PRs, so wall-clock is barely affected

Full changelog

See CHANGELOG.md.

v0.5.8

Choose a tag to compare

@rafagomes rafagomes released this 19 Apr 15:30
  • /feature #<N> resolves directly from a GitHub issue number: fetches the issue, scans docs/specs/ for a matching Issue: #<N> field, and proceeds. If no spec is linked, asks whether to spec first or build inline.

v0.5.7

Choose a tag to compare

@rafagomes rafagomes released this 19 Apr 14:53

What's Changed

  • /feature gains --commit and --pr flags for hands-free finishing.
    • --commit: auto-commits after completion using /commit's grouping logic, skipping plan presentation. Outputs only git log --oneline -N.
    • --pr: implies --commit — also pushes and opens a PR without draft presentation. Outputs only the log lines and PR URL.
    • All other output is suppressed when either flag is active.

v0.5.6

Choose a tag to compare

@rafagomes rafagomes released this 19 Apr 02:51

Fixed

  • `/rlabs-design` — surface-specific kit loading is now mandatory (slides → `slides/index.html`; website → all `ui_kits/website/` components; app → all `ui_kits/app/` components), and `assets/` + `preview/` specimen files are enumerated as first-class references. Reading only `colors_and_type.css`/`tokens.css` was producing off-brand output because tokens alone don't convey component composition or spacing rhythm.
  • `/rlabs-design` — Playwright fidelity check is now required after applying the design: screenshot the matching reference `index.html` and the output at 1440×900 (and 390×844 if mobile in scope), compare against an explicit brand-rule checklist (typography, palette, radii, spacing, borders, motion, copy), fix drift in place, then report. Falls back to a stated manual check if Playwright is unavailable.

v0.5.4 — NNN prefixes for specs

Choose a tag to compare

@rafagomes rafagomes released this 19 Apr 00:59

Fixed

  • /spec now prefixes every spec with a zero-padded NNN that mirrors the roadmap phase number (docs/specs/002_jira-sync.md), with .A/.B letter suffixes when a phase has multiple specs. Sliced specs use the directory form docs/specs/NNN_<feature>/ with README.md + MMM_<slice>.md inside — the directory itself is how "sliced" is identified, no extra marker. Previously spec filenames carried no ordering signal, so reading docs/specs/ gave no hint which came first or how specs mapped back to roadmap phases. /roadmap, /feature, and /issues updated to reference the new prefixed paths.

v0.5.3 — /feature and /fix stop after verification

Choose a tag to compare

@rafagomes rafagomes released this 18 Apr 22:40

Fixed

  • /feature and /fix no longer commit, push, or open PRs. Both stop after implementation, verification, and self-review with a structured report (files changed, lint/typecheck/test tail, security verdict, slice metadata, suggested commit subjects). The previous --pr flag and auto-commit step quietly turned every run into a shipped PR before the user could read the diff. The user reviews the working tree, then ships via /commit + /pr.
  • Orchestrators (/autopilot, /factory) keep their auto-commit/PR behavior — that is where it earns its keep.
  • /feature Asking the user questions rule now requires the AskUserQuestion tool for every mid-flight decision (missing spec, slice-size override, split shape, ambiguous metadata).

Changed

  • Canonical feature flow in CLAUDE.md now reads: /spec → (slice if >200 lines) → /issues → /feature <spec> → review the diff → /commit → /pr → /review → merge → cleanup.
  • docs/TRUNK_BASED_WORKFLOW.md and docs/REFERENCE.md recipes updated to drop --pr from /feature and /fix.

v0.5.2

Choose a tag to compare

@rafagomes rafagomes released this 18 Apr 21:53

Fixed

  • /issues now uses the AskUserQuestion tool for every interactive decision — drift/gone reconciliation, dry-run confirmation, roadmap-index horizon, and the per-milestone "proceed to next phase?" loop. Free-text confirmations were easy to miss and ambiguous to parse ("ok", "sure", "go"); structured options make each decision one click with an explicit recommended default, and batch the horizon + dry-run prompts into a single call on roadmap-index runs.

Full changelog: https://github.com/0xrafasec/ai-workflow/blob/main/CHANGELOG.md#052---2026-04-18

v0.5.1 — /issues two-milestone horizon pacing

Choose a tag to compare

@rafagomes rafagomes released this 18 Apr 21:48

Added

  • /issues two-milestone horizon — on a roadmap-index input, /issues now proposes filing only the current phase + the next phase (not the entire roadmap), names the phases it's skipping, and asks before filing more. Rolling forward is idempotent: re-running advances the window once phases complete.

This is the team practice that translates cleanly to solo work — it gives team discipline (issue-per-PR, milestone-scoped) without team overhead (stale labels, multi-quarter backlogs, triage meetings).

Changed

  • /issues "After writing" guidance now reinforces the horizon: when the current phase is roughly halfway done, re-run to file the next-next phase.

See CHANGELOG.md.