Skip to Content
Introduction

Design how it works.

Lamina is a headless product-design skill for AI coding agents. It specs how your app works — states, roles, flows, edge cases, permission matrices — into a contract your agent implements, then verifies your live build with parallel persona walks.

UI skills dress the app. Lamina designs how it behaves.

Lamina does not activate passively. Install it in your shell, run Lamina slash commands in your coding agent, and use ordinary coding prompts when it is time to edit app source.

Three interaction contexts

ContextWhereWhat you do
ShellTerminalInstall Lamina once
Agent chatCursor, Claude Code, Codex, Pi, etc.Run /lamina-init, /lamina-design, /lamina-verify
Ordinary coding modeSame or new agent sessionImplement from implement.md; apply fixes from fix.md

Lamina slash commands never edit application source. When a phase hands off to implementation or fixes, switch to an ordinary coding prompt — a fresh session is optional, but the mode change is required.

Canonical journey

SHELL npx skills install aryaniyaps/lamina AGENT CHAT — start a fresh session in your project /lamina-init <your product domain and primary users> /lamina-design <one feature or flow> ORDINARY CODING MODE Implement from .lamina/runs/<run_id>/implement.md Start the product AGENT CHAT /lamina-verify <one feature or flow> at <base_url> ORDINARY CODING MODE Apply fix.md when findings remain AGENT CHAT /lamina-verify <one feature or flow> at <base_url> again

Run /lamina-init once per project or domain. Use /lamina-init update only when the business use case, market, scope, or actor cast materially changes.

Not sure which command to run? /lamina <what you are trying to do> is an optional router — not a required setup step.

/lamina-init → business-context.md + personas.json /lamina-design → run.json + run.md + implement.md (ready_to_build) Your agent implements (ordinary coding mode) /lamina-verify guest checkout at http://localhost:3000 → report.md + fix.md (+ optional walkthrough/) Your agent fixes (ordinary coding mode) → /lamina-verify guest checkout at http://localhost:3000 again (agent chat) until zero open product or contract findings
StepWhoOutput
0. InitLaminaValidated .lamina/business-context.md, .lamina/personas.json
1. DesignLamina.lamina/runs/<id>/run.json, run.md, implement.md at ready_to_build
2. BuildYour coding agentApp source — any stack
3. VerifyLaminaUpdated run.json, report.md, fix.md; optional walkthrough/
4. FixYour coding agentProduct fixes from fix.md
5. Re-verifyLaminaConfirm fixes; contract gaps → /lamina-design; fix_target: ops stays in report.md only

Who it’s for

Lamina is for developers who build with AI coding agents and want product behavior designed before app code ships. You keep your stack, UI library, and agent — Lamina adds a design → implement → verify loop that catches impossible states, skipped dependencies, and dead-end flows that UI-only skills miss.

See the HavenStay demo for a side-by-side build with and without Lamina.

Get started

Primary path: Quickstart — one bounded flow from init through verify.

You are…Start here
New to LaminaQuickstart
Installing in your agentInstallation
Working on an existing appBrownfield and greenfield
Need schema detailsrun.json schema
Exploring the demoDemo: HavenStay
Pairing with other toolsWhat to pair

What Lamina is not

  • Not a UI library — Lamina never writes app source or picks your component library
  • Not an app builder — it does not generate stack-locked apps like v0 or Lovable
  • Not a pixel skill — Impeccable and frontend-design polish how it looks; Lamina designs how it works

Fits your stack

Lamina slots into whatever you already use — any AI coding tool, framework, database, language, and UI library. See Any stack.

Source: github.com/aryaniyaps/lamina  (Apache-2.0)

Last updated on