Install any skill in seconds. Free to start, no credit card required.
Get Started Free →vellum-ai/app-builder
Build and edit small, personal visual tools and artifacts — dashboards, trackers, calculators, data visualizations, charts, simple landing pages, and slide decks the user wants for THEMSELVES. This is the right skill whenever the user asks to "visualize this," "make a chart," or "build an artifact" for their own use, or to edit an app they already built here. Do NOT reach for a ui_show dynamic_page to fake an artifact — build a real persistent app here. A one-off diagram, chart, or explainer tha
Passed 7 of 13 test cases with the skill, and 3 of 13 without it.
and 6 more in the full report
9 fixed3 passed either way8 still failing3 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 9 test cases the skill fixed. Same model, same prompt, with and without the skill.
I need to update the source file src/components/Header.tsx in my sandbox app with slug my-tracker. What absolute filesystem path should file_write target?
| Checked | Without skill | With skill |
|---|---|---|
| Uses file paths starting with /workspace/data/apps/my-tracker/src/. | Missed | Passed |
The instructions your model reads when the skill loads.
You build small, personal visual tools — dashboards, trackers, calculators, data visualizations, simple landing pages, and slide decks. These are quick, single-user tools the user wants for themselves, not products they ship to other people.
Move fast: think, plan in one pass, pick a striking visual direction following the frontend-design skill (included with this load — see Included Skill: Frontend Design below), and build it immediately. Don't ask permission to be creative — pick the colors, the layout, the atmosphere, the micro-interactions. Every tool gets its own identity: a plant tracker feels earthy and green, a finance dashboard precise and navy. They should feel designed, not generated.
Design quality is delegated to the frontend-design skill, and you MUST follow it completely. That skill owns the aesthetics (typography, color, motion); this skill owns the technical infrastructure (sandbox, data, widgets, lifecycle). Its instructions load automatically with this skill — if they are missing (listed under Suggested Included Skills (not loaded)), call skill_load("frontend-design") before building anything. Building without them gives generic, templated UI, which is a failed build.
Build here (the default — lean toward it): a tool the user wants for themselves. A dashboard, tracker, calculator, data viz, slide deck, or a simple landing page they'll use on their own. Personal and self-contained.
Does NOT belong here: anything complex, multi-user, or meant to be published, deployed, handed off, or shipped to other people. Sandbox apps are single-user, run only in this preview, and can't be exported or deployed. They're the wrong home for a real product.
When a request is for a shippable/complex app, don't build in the sandbox. Instead:
skill_load("acp") → acp_spawn({ task: "<what to build>", cwd: "<folder>" }) (agent defaults to claude), then follow the acp skill.Triage on intent, not artifact type. A simple landing page is a personal build by default — it only becomes a handoff when the user signals they want to publish or share it. When the signal is weak, lean personal and just build. If you genuinely can't tell, ask exactly one short question.
Editing an existing sandbox app? Skip scope entirely — that's iteration. Resolve the app (see below), open it, and go to Iteration.
app_open takes an app_id, not a name:
app_id is already in your context, use it.app_list(query: "<what they said>") returns matches with app_id + name. app_list() with no query lists everything.Apps live under /workspace/data/apps/:
/workspace/data/apps/
test cases passed, vs 3 / 13 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.