AGENT → COMMAND
There was a chat window here. Now there is a command.
The hosted agent has been retired. Asking for a component is now something you do from the editor you already work in, with the same execution cycle and one command instead of another tab to keep open.
Ask for a token
Access is invite-only while the knowledge base settles.
THE COMMAND, END TO END
- 01
Install the skill
Writes one skill file and a gitignored config into your project. No dependency is added, and nothing else is touched.
npx @frontendag/create --token=<token> - 02
Ask for a component
Your editor session collects the assembled context for the request and writes one React file, on your own subscription.
/frontendag "a combobox for picking a country" - 03
Grade what came back
Syntax, accessibility, Tailwind and motion rules. Your own type-check still covers your project's imports.
frontendag check components/ui/combobox.tsx
Install once per project. After that, a request in plain language is the whole interface.
Runs where your code is
The component is written in the session that already has your project open, so it lands against your real imports and conventions.
No API key to hand over
Generation happens on your own subscription. Nothing here holds a key on your behalf and nothing meters your requests.
Same verified knowledge
The specs, guidance and design anchors behind a request are assembled and served from here, exactly as the hosted agent used them.
WHAT STANDS BEHIND ONE REQUEST
1,037
compiled rules in the knowledge base, selected per request
58
approved design fingerprints, 672 recorded decisions
28
compiled skills, 310 doctrine lines, 6 always on
90%
cheaper input after the first request: 3,183 frozen tokens are cached, not re-sent
Retrieved, not dumped. A request receives only the verified specs it needs: 3 components carrying 55 rules, antipatterns and accessibility requirements, plus the doctrine its intent triggers and a handful of fingerprints. Everything else stays out of the prompt, which is why depth here does not read as cost.
Frozen, hashed, cached. The shared prefix is compiled once, checked against its hash at boot and re-read from cache on every request after the first. Volatile context rides behind it, so the cached bytes never move. No Base UI import or prop is written that a verified spec does not carry.
Still a brief in, validated code out.
Only the surface changed. See the execution cycle.