Dev.to AI πŸ€– Ai πŸ‘ 0 πŸ“– 2 min read

Spec to Compile for coding agents: A-ISL (experimental)

Repo: fra00/a-isl-agents. I got tired of two extremes: one-shot prompts that disappear into the chat, and hand-written specs nobody maintains. A-ISL is an experiment in the middle: you describe the product in natural l

Repo: fra00/a-isl-agents.

I got tired of two extremes: one-shot prompts that disappear into the chat, and hand-written specs nobody maintains.

A-ISL is an experiment in the middle: you describe the product in natural language; a coding agent writes a reviewable Spec in classic ISL (.isl.md); you accept it; then you explicitly ask another skill to compile that Spec into bin-\<stack>/ (React, Blazor, WinForms, C# library, …).

The agentic part (easy to miss)

You do not hand-author ISL or the app.

  1. Skill a-isl-spec-author β†’ agent writes *.isl.md only
  2. You review (product sense first β€” you don’t need to know the grammar)
  3. Skill a-isl-compile β†’ agent regenerates bin-<stack>/ via a small runtime (builder β†’ queue β†’ packet β†’ lock)

Spec never auto-chains into bin/. That’s the whole point: human gate, not autopilot.

Same Spec can compile to more than one stack without rewriting intent β€” see the sheet demo (React / Blazor / WinForms).

Who decides what

A-ISL does not invent the product. You decide behavior and accept the Spec. Wrong Spec that compiles is still β€œfaithful.” That boundary is intentional.

What we measured

Internal bench (tariffe-v2, closed Domain/Logic rules, N=5):

Campaign Stack First full-pass Final
A-ISL react-js 5/5 5/5
Single prompt react-js 5/5 5/5
A-ISL csharp 5/5 5/5
Prompt (open DTO style) csharp 1/5 5/5
Prompt + same β€œprefer records” rule csharp 5/5 5/5

Regression check, not a leaderboard. On a small closed-rules task, Spec β†’ Compile matches a single prompt (5/5 vs 5/5 on JS). On C#, a prompt that left DTO style open dropped to 1/5 on first pass; adding the same β€œprefer records” rule closed the gap. The expected payoff is on large or multi-module projects and on change-via-Spec. This bench does not demonstrate that; it only supports non-regression on a small closed oracle.

Full honesty: evaluation.md.

Hosts

Runtime is agent-agnostic. Skills ship for Cursor, Claude Code, and GitHub Copilot (same text, synced). Day-to-day use and the bench were on Cursor; other hosts are not separately tested yet.

When it might pay off

Modules, evolution via Spec, multi-stack. For a one-shot script, a normal prompt is enough — Spec→Compile costs more turns on purpose.

Try it

Prerequisites: Node.js 18+; for Blazor / WinForms sheet demos, a .NET SDK (WinForms needs Windows targeting).

git clone https://github.com/fra00/a-isl-agents.git
cd a-isl-agents && npm install && npm --prefix runtime/lint install
# open in your agent β†’ /a-isl-spec-author β†’ review β†’ /a-isl-compile

Tutorial: docs/tutorial-first-project.md

πŸ“° Read the original article on Dev.to AI

Originally published by Dev.to AI. Aggregated on AIWithGhost for educational purposes β€” full credit and traffic to the original publisher.