ui-brief
Turn a vague UI idea into a structured product and design brief before any layout, component, or code work begins.
Skill by ThorStarlord
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/thorstarlord-ui-brief-500e33
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, frontend, testing, data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
ui-brief- Description
- Turn a vague UI idea into a structured product and design brief before any layout, component, or code work begins. Use this skill whenever a user describes a feature, screen, or product idea in loose terms ("I want to build a dashboard for...", "we need a login flow", "make a settings page") and wants to start designing or building. Always use it as the first step of any new UI work — even if the user seems eager to skip ahead to wireframes or code, because skipping the brief is the single most common cause of mismatched expectations between user and model.
- License
- MIT
- Instructions
- 180 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- openai.yaml · agents/
SKILL.md (first lines)
# UI Brief
A skill for converting vague feature ideas into a precise, testable brief that downstream UI work can be traced back to. This is the foundation of the UI Specification Kit. Everything else — blueprints, components, code — should reference a brief produced by this skill.
## When to use this skill
Use this skill when:
- The user describes a feature in loose terms and wants to start building.
- The user says things like "I want a screen that...", "we need a flow for...", "build me a UI for...".
- Earlier conversation has produced design or code without a brief and the result missed the user's intent — a brief should be reconstructed before continuing.
- **Spec Recovery:** A UI implementation already exists but no specification was created. In this case, use the brief to recover the missing product and design intent.
Do **not** use this skill when:
- A brief already exists and is current. Read it instead.
- The user is asking a narrow technical question that doesn't require a product framing (e.g. "what's the WCAG contrast minimum?").
## Core principle
**A brief is not a wishlist. It is a constraint document.** Its job is to make decisions explicit so that downstream work (layout, components, code) cannot drift. If the brief does not constrain a choice, expect the model to invent one — so either constrain it or mark it as an open question.
## Anti-vague vocabulary
These words are banned from briefs unless translated into concrete choices:
| Banned word | Ask instead |
|---|---|
| modern | What concrete properties? Sans-serif type? Generous whitespace? Flat surface style? Name 1–2 reference products. |
| clean | Same as above. "Clean" usually means low information density and minimal chrome — say so. |
| intuitive | Intuitive for whom? Someone who has used what other tool before? |
| user-friendly | Friendly for which user? In what context? On what device? |
| sleek / beautiful / elegant | Drop the adjective and describe a concrete visual property. |
| simple | Simple compared to what? Fewer fields? Fewer steps? Less density? |
| professional | What signals professionalism in this context? Muted palette? Serif type? Dense data tables? |
When the user uses one of these words, ask them to translate it before proceeding. If they can't, mark it as an assumption (see Assumptions protocol below).
## Observed vs. Target (Spec Recovery protocol)
When using this skill to recover a brief from an existing UI (Retrospective Specification), every section must distinguish between what is **Observed** (the current code/UI) and what is the **Target** (the recovered intent).
- **Observed:** What the current implementation actually does.
- **Target:** What the user intended or what the spec says it *should* do.
- **Issue/Gap:** Any mismatch between Observed and Target.
Use this pattern in your reasoning and, where appropriate, in the brief's sections to prevent accidental implementation choices from being silently promoted to "official" design decisions.
## Workflow
### Step 1 — Pre-flight check
Before drafting, confirm you have answers to these. If any are missing, ask the user. Do not invent defaults silently.
1. **Who is the primary user?** Role, context, technical literacy, device. (Not "everyone".)
2. **What is the single most important action they take on this UI?** (One verb. If the user names three, push back and rank.)
3. **What problem does completing that action solve for them?**
4. **What is the success criterion?** Measurable if possible. ("User completes signup in under 60 seconds" not "signup feels easy".)
5. **What constraints exist?** (Brand, platform, regulatory, technical, time.)
6. **What is explicitly out of scope?** (At least one non-goal.)
If the user says "I don't know" to a question, that is a valid answer — record it as an open question. Do not fabricate one.
### Step 2 — Draft the brief
Use the template in the next section. Do not deviate from the structure — downstream skills depend on it.
### Step 3 — Validate against the acceptance criteria
Before delivering the brief, check it against the "Acceptance criteria for this skill's output" section at the bottom of this file. If any criterion fails, revise.
### Step 4 — Confirm with the user
End with a numbered list of every assumption made and every open question. Ask the user to confirm or correct each one. Do not move on to `ui-blueprint` or any other skill until the user has signed off.
## Output template
Always produce output in this exact structure. Save it as `brief.md` inside a `<feature-name>/` spec package folder. The folder name carries the feature slug — the file name is always `brief.md`. Do not rename it to `brief-<slug>.md`; downstream skills look for the canonical name.
```markdown
---
spec_type: brief
spec_id: <short-slug, e.g. "billing-overview">
created: <YYYY-MM-DD>
status: draft
---
# Brief: <descriptive title>
## 1. Goal
<One sentence. What does this UI exist to do? Not "help users with X" — say what changes in the world after a user completes the primary action.>
## 2. Primary user
- **Role / context:** <who they are and what they're doing when they hit this UI>
- **Technical literacy:** <novice | intermediate | expert; with one sentence of justification>
- **Primary device:** <mobile | desktop | tablet | mixed; with reason>
- **Accessibility considerations:** <any known constraints — low vision, keyboard-only, screen reader, motor, cognitive>
## 3. Primary action
<One verb. The single most important thing the user does here. If you have to write "and", you have two actions — pick the more important one and demote the other.>
## 4. Secondary actions
<Bulleted list, ranked. Anything beyond ~5 means the screen is doing too much.>
## 5. Why it matters
<What problem this solves for the user. One short paragraph.>
## 6. Success criteria
- <Measurable, testable. e.g. "80% of users who land on this screen complete the primary action without leaving.">
- <At least one quantitative if possible.>
- <At least one qualitative if quantitative is impossible.>
## 7. Constraints
- **Brand:** <existing identity, palette, type system to honor — or "none, greenfield">
- **Platform:** <web, iOS, Android, cross-platform; framework if known>
- **Regulatory / compliance:** <GDPR, HIPAA, accessibility legal requirements, etc., or "none known">
- **Technical:** <integrations, data sources, performance budgets>
- **Time / scope:** <deadline or scope constraints>
## 8. Non-goals (what this is NOT)
- <Bulleted list. At least one item.>
- <Things you might be tempted to add but explicitly will not.>From ThorStarlord/interface-skills, MIT.
More from ThorStarlord/interface-skills
- 0.502score
repo-sensemaker
ThorStarlord
analyze a repository to produce a repository sensemaking brief.
SkillCFreshness: C★ 1Claude Code +9 - 0.502score
problem-framer
ThorStarlord
analyze a vague idea or repository fog to produce a structured problem frame.
SkillCFreshness: C★ 1Claude Code +9 - 0.499score
setup-interface-skills
ThorStarlord
Configure a repository for Interface Skills.
SkillCFreshness: C★ 1Claude Code +9 - 0.499score
prompt-handoff
ThorStarlord
convert a sensemaking artifact into a ready-to-copy prompt for the next specialized skill.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
handoff
ThorStarlord
Use when the user ends a session, asks for a session summary, or needs to create a handoff document for another agent to continue the work.
SkillCFreshness: C★ 1Claude Code +9 - 0.497score
ui-brief
ThorStarlord
Turn a vague UI idea into a structured product and design brief before any layout, component, or code work begins.
SkillCFreshness: C★ 1Claude Code +9 - 0.494score
sensemaking-docs-reconciler
ThorStarlord
challenge the sensemaking repository's architecture against its documentation, registries, templates, and examples.
SkillCFreshness: C★ 1Claude Code +9 - 0.477score
git-guardrails-claude-code
ThorStarlord
Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute.
SkillCFreshness: C★ 1Claude Code +9 - 0.477score
diagnose
ThorStarlord
Disciplined diagnosis loop for hard bugs and performance regressions.
SkillCFreshness: C★ 1Claude Code +9 - 0.472score
improve-codebase-architecture
ThorStarlord
Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/.
SkillCFreshness: C★ 1Claude Code +9 - 0.472score
grill-with-docs
ThorStarlord
Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as…
SkillCFreshness: C★ 1Claude Code +9 - 0.472score
caveman
ThorStarlord
Ultra-compressed communication mode.
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 9
- Last commit (this folder)
- May 10, 2026 (5 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/ThorStarlord/interface-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from ThorStarlord
- 0.570score
change-impact-analysis
ThorStarlord
analyze a bounded contemplated or completed repository change to identify decision-relevant affected…
SkillAFreshness: AClaude Code +9 - 0.529score
acceptance-criteria
ThorStarlord
Turn a bounded user story, feature rule, or delivery requirement into explicit testable acceptance scenarios covering happy paths, edge cases, errors, state…
SkillBFreshness: BClaude Code +9 - 0.529score
battlecard
ThorStarlord
Create an evidence-aware competitive battlecard for a named product, competitor, and segment using current market, product, pricing, review, and win-loss…
SkillBFreshness: BClaude Code +9 - 0.529score
competitive-analysis
ThorStarlord
Compare a product with named direct or indirect alternatives using source-dated market evidence, identify parity, gaps, strengths, weaknesses, threats, and…
SkillBFreshness: BClaude Code +9 - 0.529score
customer-journey
ThorStarlord
Map a bounded customer journey for a named persona or segment across relevant stages, touchpoints, actions, questions, emotions, pain points, opportunities…
SkillBFreshness: BClaude Code +9 - 0.529score
discovery
ThorStarlord
Frame an uncertain product problem into evidence-aware problem hypotheses, learning questions, validation approaches, and decision criteria.
SkillBFreshness: BClaude Code +9
Cite this page
ui-brief skill. Agent Mart. https://agentmart.dev/skills/thorstarlord-ui-brief-500e33 (last updated 2026-10-24)