Skip to content

Releases: egagofur/ai-engineering-loop

v1.0.19

Choose a tag to compare

@egagofur egagofur released this 30 Aug 07:20

AI Engineering Loop 1.0.19

Maker intern is picked from the host catalog, not typed.

  • Grok CLI: grok models
  • Other agent CLIs: /models if that slash command exists
  • Numbered options plus none. Imagine/video ids are dropped
  • No custom endpoint. Unknown id → parent Maker

After install, run npx ai-engineering-loop@1.0.19 sync-hosts then start a new session.

v1.0.18

Choose a tag to compare

@egagofur egagofur released this 30 Aug 06:47

AI Engineering Loop 1.0.18

Host compact map over the 8-stage OS: Specify (0-1), Make (2-4), Review (5-7), Deliver (8). Not a second OS.

Also in this release:

  • Sloppy prompts draft a Goal Contract and wait for freeze
  • Claimed vs Reality table gates Devil's Advocate
  • Optional maker intern overlay label (any host-native model; default none)

After install, run npx ai-engineering-loop@1.0.18 sync-hosts then start a new session.

v1.0.15

Choose a tag to compare

@egagofur egagofur released this 29 Aug 18:23

Redact internal DOT adapter examples and ship task-impact-inquiry to Claude, Grok, and Gemini.

  • Replace real client tickets, GitLab URLs, schema names, and PIC handles with fictional samples
  • Add a leak-guard test so those fingerprints cannot return
  • Upsert task-impact-inquiry onto Claude, Grok, and Gemini for Stage 1 blast-radius grill

After install: npx ai-engineering-loop@1.0.15 sync-hosts then start a new agent session.

v1.0.14 — failure table: AC is not the happy path

Choose a tag to compare

@egagofur egagofur released this 29 Aug 17:15

Goal Contract AC is a failure table (happy, empty/omit, boundary, sibling, error), not sunny path only. Grill cannot freeze a happy-path-only contract. Maker writes one red test per AC row. Coverage is a map of untested AC branches, not a 90% score.

Devil's Advocate treats a happy-path-only suite vs a written failure table as Spec. Judge ITERATE if verification is happy-path-only while the contract lists empty, boundary, sibling, or error rows. Coverage percent and source grep are not AC proof.

After install: npx ai-engineering-loop@1.0.14 sync-hosts then start a new session.

v1.0.13 — freeze gate: chat is not the Goal Contract

Choose a tag to compare

@egagofur egagofur released this 29 Aug 16:55

Stage 1 idea requests list a short menu and wait; they do not implement. Chat `setuju` does not freeze AC. Every user-visible grill decision must be a numbered AC in the Goal Contract file.

Judge PASSes only against that file (including CONTEXT_ISOLATION_ONLY). ITERATE if evidence is source-grep or a different artifact than the AC names (for example a /tmp build vs the sample the user opens).

After install: `npx ai-engineering-loop@1.0.13 sync-hosts` then start a new session.

v1.0.12 — grill, DOT Stage 8, and sync-hosts

Choose a tag to compare

@egagofur egagofur released this 29 Aug 15:35

Grill, TDD, glossary, RCA, and two-axis DA/Judge sit inside the existing 8 stages (not extra slash commands).

On DOT, ai-engineering-loop is the engineering OS. dot-dev-workflow is Stage 8 delivery only after Judge PASS. Stage 1 grill includes task-impact-inquiry; do not run a second interview.

npx ai-engineering-loop sync-hosts copies package skills/agents/commands into ~/.claude, ~/.grok, ~/.gemini, and ~/.agents. Stage 0 and run call it so a published bump updates global host files. Start a new session after a copy so skill text reloads.

Also adds the Antigravity Gemini host skill and living context files (glossary.md, adrs/).

v1.0.11 — identical DA/Judge flow on all hosts

Choose a tag to compare

@egagofur egagofur released this 26 Aug 05:11

DA and Judge instruction bodies are now byte-identical on Claude Code, Grok, and Antigravity (agents/shared/). Only YAML frontmatter (tool names) differs. Tests fail if a host drifts. Restart the host to reload agents.

v1.0.10 — Judge budget on Claude, Grok, Antigravity

Choose a tag to compare

@egagofur egagofur released this 26 Aug 05:07

Judge (and DA) review budget on all three hosts

Same hard stop everywhere (policies/review-budget.md):

Role Cap Input Background
Devil's Advocate 8 tool calls diff file + at most 8 paths wait
Judge 4 tool calls ledger + Goal Contract only wait

Skip css/generated. No git log. No repo roaming.

Host files

  • Claude Code: .claude/agents/judge.md
  • Grok: .grok/agents/judge.md
  • Antigravity: .agents/judge.md + .agents/workflows/ai-engineering-loop.md (never browser_subagent)

Restart the host so named agent types reload.

v1.0.9 — faster Devil's Advocate

Choose a tag to compare

@egagofur egagofur released this 26 Aug 05:01

Faster Devil's Advocate

A DA pass that took ~26 minutes was cold-start + reading huge reporter/CSS files + background Task.

Changes

  • Parent writes git diff to .ai-engineering-loop/tasks/current.diff and passes that path
  • Task waits (run_in_background: false when the schema has it)
  • DA hard stop: 8 tool calls, no git log, skip *.css / report-css / generated
  • Judge cap: 4 tool calls
  • Prefer subagent_type: devil-advocate, not general-purpose

Restart Claude Code so .claude/agents/devil-advocate.md reloads.

v1.0.8 — Kiro auto-mode Bash 400

Choose a tag to compare

@egagofur egagofur released this 26 Aug 04:09

Fix: Kiro 400 after npm run typecheck

The skill already loaded. Read/Grep worked. The first Bash (npm run typecheck) hit Claude Code auto-mode safety classification via kr/claude-sonnet-5. That classifier request 400s, then the session dies with REQUEST_BODY_INVALID.

What changed

  • Skill and slash command allowed-tools pre-allow Bash(npm run *), Bash(npm test *), Bash(npx *), Bash(git *) so they skip the classifier.
  • Skill instructs: do not retry Bash/Write after "cannot determine the safety" or HTTP 400.
  • Template: templates/repo-config/claude-permissions.json

How to run on sitemap-qa

  1. Quit Claude Code and start a new session (skills load at start).
  2. .claude/settings.local.json now includes those Bash allow rules.
  3. If auto mode still 400s, switch permission mode to default (not auto) and retry.