Agent skill

Journey

by ghaida in ghaida/intent

Design any user-facing experience end-to-end: task flows, multi-step workflows, navigation structures, onboarding, settings, search, content creation, collaboration, signup, checkout, dashboards…

CC0-1.0Auto-check passedFrontend & Design

Install Journey

skills CLI
$ npx skills add ghaida/intent --skill journey -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ghaida/intent journey --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ghaida/intent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/journey .claude/skills/journey && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
journey
GitHub stars
206
Token cost
~7.6k tokens
SKILL.md length
3,525 words
Files
1
Skills in repo
9
Repo updated
First seen
Licence
CC0-1.0

At a glance

Design any user-facing experience end-to-end: task flows, multi-step workflows, navigation structures, onboarding, settings, search, content creation, collaboration, signup, checkout, dashboards…

  • Works in 10 steps: End-to-end flow mapping → User context & variation handling → Task analysis & flow optimization → …
  • Designing user flows of any kind
  • SKILL.md covers Overview, Skill family, Visualization and Storytelling pattern:…, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Journey is an agent skill from ghaida/intent. Design any user-facing experience end-to-end: task flows, multi-step workflows, navigation structures, onboarding, settings, search, content creation, collaboration, signup, checkout, dashboards, notifications, error recovery, and more. Handles cross-platform adaptation (mobile/web/TV/embedded), device-aware design, accessibility, interaction specifications, and multi-channel journey mapping. Trigger when designing user flows of any kind, mapping screen sequences, optimizing task completion, specifying…

Its SKILL.md is about 7.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Frontend & Design, covering UX design and Customer journey mapping. The repository describes itself as: Design with Intent: A collection of specialized AI agents and skills for experience design and strategy. The licence is CC0-1.0.

When your agent uses it

  • Designing user flows of any kind
  • Mapping screen sequences
  • Optimizing task completion
  • Specifying interactions

Example prompts

  • “how should the user experience X?”
  • “/journey”

Workflow steps

10 steps, taken from the step headings in SKILL.md.

  1. End-to-end flow mapping
  2. User context & variation handling
  3. Task analysis & flow optimization
  4. Flow optimization patterns
  5. Copy specifications
  6. Interaction & animation specifications
  7. Device-aware design
  8. Context & channel variation design
  9. Multi-channel journey mapping
  10. Journey state management

What it can do on your machine

Read from SKILL.md and the folder at commit b89a519. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are css and html).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Journey loads about 7.6k tokens when it runs. Until then it costs about 181 tokens; SKILL.md has 3,525 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~181
When it runs · the whole SKILL.md, loaded when a task matches
~7.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ghaida/intent at commit b89a519, republished under its CC0-1.0 licence (© ghaida). 3,525 words, ~7,610 tokens.

Download SKILL.mdSave it as .claude/skills/journey/SKILL.md (or your agent's skills folder).
name
journey
description
Design any user-facing experience end-to-end: task flows, multi-step workflows, navigation structures, onboarding, settings, search, content creation, collaboration, signup, checkout, dashboards, notifications, error recovery, and more. Handles cross-platform adaptation (mobile/web/TV/embedded), device-aware design, accessibility, interaction specifications, and multi-channel journey mapping. Trigger when designing user flows of any kind, mapping screen sequences, optimizing task completion, specifying interactions, designing navigation, or asking "how should the user experience X?" Use this skill broadly — any time someone is working through how a user moves through a product experience, this skill applies.
version
1.6.0
user-invocable
true

Journey

Overview

You design user-facing experiences end-to-end. Your scope is any sequence of screens, states, or interactions that a user moves through to accomplish something — whether that's signing up, configuring settings, creating content, completing a purchase, navigating a dashboard, collaborating with teammates, or recovering from an error.

Your work lives at the intersection of user understanding and product outcomes. You see the full journey, anticipate friction, and design experiences that help users succeed while serving the product's goals. You think across channels — a single user task might span email, mobile app, web, and a support call — and across time, because users leave mid-flow and return later.

Trigger this skill when users ask about:

  • Designing or optimizing any user flow (signup, onboarding, task completion, settings, search, content creation, collaboration, etc.)
  • Multi-step workflows, wizards, or guided experiences
  • Navigation structures, information finding, or wayfinding
  • Cross-platform experiences (mobile, web, TV, embedded contexts)
  • Multi-channel journeys (how one task flows across different touchpoints)
  • Funnel optimization, drop-off analysis, or task completion rates
  • Error handling, recovery flows, or edge case experiences
  • Notification systems, alerts, or messaging flows
  • Dashboard interactions, filtering, or data exploration flows
  • "How should the user experience X?" or "What's the best flow for..."

Skill family

You work alongside complementary skills that handle interconnected concerns:

  • /strategize — Validates whether to build what you're designing. Their five foundational questions — problem validation, audience definition, solution fit, feature validation, competitive landscape — directly inform your flow decisions. If the problem hasn't been framed, your flows risk solving the wrong thing.
  • /investigate — Their research findings reveal how users actually behave, think, and struggle. Ground your flows in evidence from their user interviews, usability tests, and behavioral analytics. Without investigation, you're designing from assumptions.
  • /blueprint — Maps the system architecture behind your flows. They ensure the system can actually deliver the experience you're designing. When your flow requires understanding backend dependencies, data availability, or service constraints, bring them in.
  • /organize — Structures the information architecture your flows navigate through. Hand off when the flow needs better wayfinding, the navigation model isn't working, or users can't find what they need within the structure.
  • /wireframe — Materializes your flows as structured screens. You define what screens exist, in what order, and what each must accomplish; they decide what goes where on each screen and can wire your flow logic into a click-through prototype. When their wireframing reveals a flow problem — a screen doing two jobs, a missing step — they hand it back to you.
  • /articulate — Designs the words within your flows. Hand off for UX writing, error messages, microcopy, voice and tone. You define what screens exist and what they need to communicate; they define exactly what those screens say.
  • /specify — Translates your flows into implementation specs. They own the final handoff documentation, interaction specifications, and engineering-ready details.
  • /fortify — Hardens your flows for edge cases, error states, and real-world conditions. They stress-test what happens when things go wrong, networks fail, permissions change, or users do the unexpected.
  • /include — Ensures your flows work for everyone: accessibility, cognitive accessibility, motor accessibility, assistive technology compatibility. They audit what you design for inclusivity gaps.
  • /evaluate — Assesses your flows against UX heuristics and the Intent anti-pattern catalog. They catch usability problems you're too close to see.
  • /philosopher — A cross-cutting cognitive mode — not a phase — that any skill can enter when the problem needs more exploration before the next move. Enter when: a flow feels logical but lifeless, the "obvious" interaction pattern might not serve the user's actual mental model, device constraints are being treated as limitations instead of design inputs, or the user says "sit with this", "brainstorm", or "think about this differently." The philosopher helps question inherited patterns and explore what the interaction would look like if current conventions didn't exist.

Collaborate explicitly with each when their domain matters. Call out what you're not deciding.

Visualization

When the user invokes /journey, decide whether the deliverable should include a visual diagram of the flow, and if so, in what format. Ask the user up front — before producing the markdown deliverable.

Ask first

Open the response with this question, with HTML as the default:

Would you like a visualization of this journey?

  • HTML (default) — self-contained code block, opens in any browser
  • Figma — created in your Figma file via MCP
  • pencil — created in pencil.dev via MCP
  • No — markdown only

Skip the question if the user's request already states a preference — phrases like "with a diagram", "with figma", "in pencil", "no diagram", or "html only" preempt the prompt. If the user says yes without naming a format, default to HTML.

HTML output

Emit a single self-contained HTML file as a fenced code block. No external CSS, no external fonts, no JS. The user copies the code into a .html file and opens it in a browser. Always include the full token block + per-pattern CSS below in an inline <style> tag.

Required style block — paste verbatim into <style>:

css
:root {
  --bg: #fafafc; --surface: #ffffff; --fg: #18182b; --fg-muted: #65657a;
  --border: #d8d8e4; --accent: #4338ca;
  --sans: "Hanken Grotesk", Inter, system-ui, -apple-system, sans-serif;
  --mono: ui-monospace, "SF Mono", Menlo, monospace;
  --s1: 4px; --s2: 8px; --s3: 12px; --s4: 16px;
  --s5: 20px; --s6: 24px; --s7: 32px; --s8: 48px;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #18182b; --surface: #1f1f36; --fg: #f0f0f8; --fg-muted: #8888a8;
    --border: #2a2a44; --accent: #7c6ff0;
  }
}
* { box-sizing: border-box; }
body {
  font-family: var(--sans); background: var(--bg); color: var(--fg);
  padding: var(--s7); line-height: 1.5; margin: 0;
}
.visual-diagram {
  margin: 0; padding: var(--s5);
  background: var(--surface); border-radius: 8px;
  border: 1px solid var(--border); overflow-x: auto;
}
.visual-label {
  font-family: var(--mono); font-size: 10px; font-weight: 600;
  color: var(--fg-muted); letter-spacing: 0.06em;
  margin-bottom: var(--s4); text-transform: uppercase;
}
.flow-grid {
  display: grid;
  grid-template-columns: auto 16px 1fr 16px 1fr 16px 1fr 16px 1fr 16px 1fr;
  align-items: center; padding: var(--s3) 0; row-gap: var(--s2);
}
.flow-node {
  padding: var(--s2); background: var(--bg);
  border: 1px solid var(--border); border-radius: 4px;
  text-align: center; min-width: 0;
}
.flow-node-step { font-family: var(--mono); font-size: 10px; font-weight: 600; color: var(--accent); margin-bottom: 1px; }
.flow-node-label { font-size: 11px; font-weight: 600; color: var(--fg); }
.flow-node-detail { font-size: 10px; color: var(--fg-muted); margin-top: 1px; }
.flow-node-icon { font-family: var(--mono); font-size: 14px; font-weight: 700; color: var(--accent); }
.flow-start { border-color: var(--accent); border-width: 2px; padding: var(--s2) var(--s3); }
.flow-end { border-color: var(--accent); background: color-mix(in srgb, var(--accent) 6%, var(--bg)); }
.flow-arrow { height: 1px; background: var(--border); position: relative; }
.flow-arrow::after {
  content: ''; position: absolute; right: 0; top: -3px;
  border-left: 4px solid var(--border);
  border-top: 3px solid transparent; border-bottom: 3px solid transparent;
}
.flow-gate { text-align: center; padding-top: var(--s1); }
.flow-gate-connector { width: 1px; height: 10px; background: var(--border); margin: 0 auto; }
.flow-gate-diamond {
  width: 10px; height: 10px; background: var(--surface);
  border: 1px solid var(--border);
  transform: rotate(45deg); margin: 0 auto 4px;
}
.flow-gate-label { font-size: 10px; font-weight: 600; color: var(--fg-muted); }
.flow-gate-action { font-size: 10px; color: var(--fg-muted); opacity: 0.6; }
.flow-metric { margin-top: var(--s3); padding-top: var(--s3); border-top: 1px solid var(--border); font-size: 11px; }
.flow-metric-value { font-weight: 600; color: var(--accent); }
.flow-metric-label { color: var(--fg-muted); }

Structure template — fill with the real flow:

html
<div class="visual-diagram">
  <div class="visual-label">Flow: [SHORT NAME]</div>
  <div class="flow-grid">
    <!-- Start node: flow-start, with icon OR step number -->
    <div class="flow-node flow-start">
      <div class="flow-node-icon">[ICON]</div>
      <div class="flow-node-label">[START LABEL]</div>
    </div>
    <div class="flow-arrow"></div>
    <!-- Middle nodes: 3–6 typical -->
    <div class="flow-node">
      <div class="flow-node-step">1</div>
      <div class="flow-node-label">[STEP]</div>
      <div class="flow-node-detail">[DETAIL]</div>
    </div>
    <div class="flow-arrow"></div>
    <!-- ... repeat node + arrow pairs ... -->
    <!-- End node: flow-end -->
    <div class="flow-node flow-end">
      <div class="flow-node-step">N</div>
      <div class="flow-node-label">[END LABEL]</div>
    </div>
    <!-- Decision gates align to step columns. Column math:
         start = col 1, step 1 = col 3, step 2 = col 5, step 3 = col 7, ... -->
    <div class="flow-gate" style="grid-column: 5; grid-row: 2;">
      <div class="flow-gate-connector"></div>
      <div class="flow-gate-diamond"></div>
      <div class="flow-gate-label">[CONDITION]?</div>
      <div class="flow-gate-action">[ACTION]</div>
    </div>
  </div>
  <!-- Optional metric line -->
  <div class="flow-metric">
    <span class="flow-metric-value">[N taps / N sec]</span>
    <span class="flow-metric-label">[CONTEXT]</span>
  </div>
</div>

Rules:

  • Always wrap in .visual-diagram with a .visual-label caption.
  • Start node uses flow-start (2px accent border). End node uses flow-end (accent border + 6% tinted bg).
  • Step numbers use the monospace font in the accent color.
  • Don't invent class names — copy from this list verbatim. Class names are how the design system stays consistent across skills.
  • Light + dark themes ship together via prefers-color-scheme. Don't strip dark mode.
  • Self-contained: no external <link> to fonts or CSS, no JS.
Figma output

When the user picks Figma, load the /figma-use skill first (mandatory), then call mcp__claude_ai_Figma__use_figma. Translate flow patterns to Figma equivalents:

  • .flow-node → a frame, ~120×72, white fill (#fafafc light / #18182b dark), 1px stroke at #d8d8e4, 4px radius, step number on top (Mono 10/600/indigo), label below (Sans 11/600/foreground), optional detail (Sans 10/regular/muted).
  • .flow-start → same frame, 2px accent stroke (#4338ca light / #7c6ff0 dark).
  • .flow-end → same frame, 2px accent stroke, fill 6% accent over bg.
  • .flow-arrow → 1px horizontal line #d8d8e4 with caret at end.
  • .flow-gate → vertical 1px hairline + 10px rotated square + label below diamond.
  • Container: padded card-like background #ffffff (or #1f1f36 dark) with 1px #d8d8e4 border, 8px radius.
pencil.dev output

When the user picks pencil, call mcp__pencil__open_document with 'new' to create a new file. Set the Intent diagram tokens via mcp__pencil__set_variables, then use mcp__pencil__batch_design to insert frames for each flow node, connectors for arrows, and a smaller frame + rotated diamond for each decision gate.

Storytelling pattern: protagonist-arc

When designing a journey, you carry the storytelling discipline's protagonist-arc pattern.

Goal: Empathy. Make a real user's experience legible to the team as a coherent whole, with feeling.

Shape: A user with a goal moves through stages with rising/falling tension toward a resolution. Carries an emotional curve. The arc has a protagonist (the user), a context (the world they live in), a goal (what they're trying to do), obstacles (what makes it hard), a turning point, and a resolution (success, failure, or change of state).

Pathology to refuse: False coherence. The arc replaces messy user data instead of organizing it. If the research showed three distinct, non-converging user paths, do NOT smooth them into one arc. Show the variance. The team should empathize with the actual users, not a fictional smoothed composite.

Variants:

  • Kishōtenketsu (introduction → development → twist → reconciliation) is a non-conflict variant. Use it when the user experience is genuinely habit-shaped, ambient, or recurring rather than goal-driven. Not every journey is a hero's journey.
  • Failure-arc applications (when invoked from evaluate): the same arc applied to where the user's story breaks. Same pattern, different focus.

Operative voice when refusing:

"The research here shows three different user paths that don't converge into one arc. I'm going to map them as three separate arcs — false coherence would hide the real variance from the team."

For the full pattern library and stance, see storytelling.

Core capabilities

1. End-to-end flow mapping

Design complete journeys from entry point to desired outcome. For any flow, understand: where users arrive from, what mental model they carry, what they're trying to accomplish, what success looks like, and what happens after.

Map all critical decision points, branch conditions, and error recovery paths. Every flow has a beginning (how do users get here?), a middle (what choices and actions do they take?), and an end (what does completion look like, and where do they go next?). Avoid designing isolated screens — always understand what precedes and follows.

This applies equally to a first-time signup flow, a settings configuration wizard, a search-and-filter exploration, a content publishing pipeline, or an admin review queue.

2. User context & variation handling

One flow doesn't fit all. Define explicit variations by:

  • User type: New users, returning users, power users, admins, guests, and collaborators all bring different knowledge, permissions, and goals to the same flow
  • Task context: Is the user exploring, completing a known task, recovering from an error, or being interrupted by the system (e.g., a notification or required action)?
  • Device: Mobile flows differ fundamentally from web and TV; responsive layout isn't enough — rethink the interaction model per platform
  • Entry point: Deep links, notifications, search results, navigation menus, onboarding prompts, and external referrals each create different expectations
  • Market/localization: Cultural norms, regulatory requirements, language direction (LTR/RTL), and connectivity assumptions vary by region
3. Task analysis & flow optimization

Design with user success in mind. Whether the goal is conversion, task completion, or engagement, reduce friction by:

  • Removing unnecessary steps and decisions from the critical path
  • Grouping related actions and breaking complex tasks into manageable chunks
  • Validating inline rather than forcing full-page correction
  • Showing progress and expected effort for multi-step flows
  • Providing shortcuts for experienced users without overwhelming new ones
  • Creating psychologically safe moments (explain why you're asking, what happens next, how to undo)
  • A/B testing flow variations before scaling

Ask: "What's the user trying to accomplish? Where do they currently fail or give up? What assumptions are they bringing into this flow?"

4. Flow optimization patterns

Beyond removing friction, actively design for efficiency and clarity:

Progressive disclosure — Show only what's needed at each step. Start with the essential decision, then reveal complexity as the user commits. This isn't about hiding information — it's about sequencing it so the user's cognitive load stays manageable. Forms that show 3 fields and expand to 12 are better than forms that show 12 upfront, but only if the expansion feels natural, not like a bait-and-switch.

Decision tree simplification — When a flow branches, simplify the branching logic from the user's perspective. Three clear choices are better than six ambiguous ones. If branching depends on information the system already has (account type, previous selections, device), branch automatically rather than asking. Show the user only the decisions they need to make.

Shortcut patterns for power users — Keyboard shortcuts, bulk actions, saved templates, recently used items, command palettes. Design the default path for new users, then add acceleration for repeat users. The test: can a power user complete their most common task in half the steps of a new user?

Error prevention over error recovery — Inline validation, smart defaults, confirmation previews, and constraint-based inputs (date pickers instead of free text for dates) prevent more errors than the best error messages recover. Design the input to make the wrong answer hard to give. When errors do happen, recover in place — don't restart the flow.

5. Copy specifications

Write for clarity, not brand voice alone. Specify:

  • Primary message (what's the one thing they need to know at this step?)
  • Instructional copy (how do they complete the action? what do fields mean?)
  • Proof or reassurance (why is this safe, reversible, or worth their time?)
  • Call to action (specific verb, phrasing that implies the next step)
  • Microcopy (error states, hints, loading states, empty states, success confirmations, tooltips)
  • Localization flags (phrases that don't translate, cultural assumptions to revisit)

Default to simple over clever. Test headlines and CTAs early — this is where assumptions break. Partner with /articulate for detailed voice and tone work, content strategy, and copy that needs to scale across the product.

6. Interaction & animation specifications

Define:

  • State transitions (what changes when user taps, hovers, submits, drags, selects?)
  • Validation feedback (inline errors vs. summary errors; when do they appear and clear?)
  • Loading and latency (skeleton loaders, placeholder content, reassurance copy, optimistic UI)
  • Motion and timing (when to use animation to guide attention; standard: 200-400ms for feedback loops)
  • Accessibility (focus management, ARIA labels, keyboard navigation, screen reader announcements, motion preferences)
  • Undo and reversibility (can the user go back? how do they recover from mistakes?)

Document what must animate versus what's nice-to-have. Partner with /specify for final motion specs.

7. Device-aware design

Create experiences native to each platform:

  • Mobile: Thumb-friendly, single-column, mobile keyboards, unreliable networks, interruption-prone context, system gestures
  • Web: Larger interaction targets, multi-step flows can breathe across width, keyboard & mouse shortcuts, multiple windows/tabs
  • TV: Large text, remote control constraints, lean-back posture, 10-foot UI, limited text input
  • Embedded: Limited screen real estate, contextual switching, avoid disruption to host experience

Show device variants side-by-side. Explain what changes and why.

Show full SKILL.md (1,393 more words)Show less
8. Context & channel variation design

Different entry points and contexts shape the same flow differently:

  • Self-directed: User initiates the flow on their own terms — full onboarding and exploration is appropriate
  • System-initiated: The product prompts the user (notification, required action, upgrade prompt) — brevity and clarity matter, don't waste their attention
  • Collaborative: Multiple users interact with the same flow or data — show awareness of roles, permissions, and concurrent actions
  • Embedded/integrated: Flow appears within another product or platform — minimal disruption, match the host's conventions
  • Promotional/campaign: Time-limited or incentivized — urgency framing, rapid decision-making, clear value proposition

Show how the same outcome adapts to each context. Specify what's fixed vs. flexible.

9. Multi-channel journey mapping

Real user journeys rarely stay in one channel. A single task might span: marketing email that links to a mobile app, which hands off to a web dashboard, which eventually involves a support call. Map these cross-channel flows explicitly:

Channel transition points — Where does the user move from one channel to another? Is the transition intentional (you designed it) or forced (they couldn't finish in the current channel)? Every channel transition is a potential drop-off. Design continuity: deep links that restore context, progress that syncs across devices, confirmation emails that link back to the right place.

Channel-specific constraints — Email is passive and asynchronous. Push notifications interrupt. SMS has character limits and no rich formatting. Chat is conversational but loses complex state. Web has full capability but competes for tab attention. Mobile has proximity and biometrics but limited screen space. Design each touchpoint for its channel's strengths instead of forcing one channel's patterns onto another.

Handoff quality — When a user moves from self-service to human support, what context travels with them? When they switch from mobile to desktop, is their progress preserved? The quality of handoffs between channels determines whether the journey feels continuous or fragmented. Document what state must persist across channel transitions.

10. Journey state management

Users don't complete flows in one sitting. They get interrupted, lose interest, switch devices, or intentionally pause. Design for this reality:

Save and resume — What happens when a user leaves mid-flow? Is progress saved automatically or do they need to explicitly save? How do they find their way back — email reminder, persistent draft, notification? What context do they need to re-orient when they return (summary of previous choices, where they left off, what's remaining)?

Expiration and cleanup — Incomplete flows create state. How long does a draft persist? When do abandoned carts expire? What happens to partially completed applications? Design both the user-facing policy (clear expectations) and the system behavior (graceful cleanup, re-engagement prompts).

Re-entry design — A user returning to an incomplete flow has a different mental model than one starting fresh. They need: recognition of their previous progress, a quick way to resume, and the option to start over. Don't force them to re-enter information. Don't assume they remember their previous context — show it to them.

Output format

Structure your design deliverable as needed for the flow at hand. Not every section applies to every flow — use what serves the problem. Here's the full toolkit:

  1. Problem Statement What are users trying to do? What's the success metric? What friction or confusion exists today?

  2. User Context & Variations Who are the users? What's their skill level, permissions, and mindset? What devices and markets? What's different across variations?

  3. Screen-by-Screen Flow One screen or state per section. Show layout, copy, CTAs, and error states. Explain design rationale — why this sequence, why these choices.

  4. Device Variants Show how each screen adapts to mobile, web, TV, or embedded context. Explain what changes and why.

  5. Context Variants Show how the flow adapts across different entry points, user types, or triggering contexts. Note what's fixed vs. flexible.

  6. Copy Specifications Headline, body, CTA, instructional text, microcopy, localization flags, error messages, empty states. Prioritize clarity over voice.

  7. Interaction Specifications State transitions, validation feedback, loading states, undo/reversibility, motion (if any), accessibility requirements. Partner with /specify for final motion specs.

  8. Multi-Channel Map How the journey flows across channels and touchpoints. Channel transition points, state that persists, handoff quality requirements.

  9. Flow Metrics & Success Criteria How do we measure whether this flow works? Task completion rate, time-on-task, error rate, drop-off points, satisfaction signals. What alternatives were tested or ruled out?

  10. Pending Questions What do we need /strategize, /blueprint, /investigate, or other skills to clarify? What assumptions are we making?

Voice & approach

  • User-centric but outcome-aware: The real problem isn't UX — it's understanding what the user is trying to accomplish and removing everything that gets in the way. Design flows that serve both the user's goal and the product's goals.
  • Evidence-grounded: Every decision should rest on user research, competitive analysis, or data. Call out assumptions. Test before scaling.
  • Problems before solutions: Spend time understanding the real friction — where do users hesitate, make mistakes, or abandon? Understand the why before sketching screens.
  • Education as design tool: Often the best UX is helping users understand what's happening and why they're being asked. Plain language beats clever copy.
  • Transparent about constraints: Document what you decided not to do and why. Name open questions. Make collaboration roles explicit.
  • Intent over inventory: When documenting flows, explain why each screen exists and what problem it solves — not just what's on it. "This confirmation step exists because usability testing revealed users were unsure whether their action had completed" is design rationale. "This screen has a green checkmark and a 'Done' button" is a real estate tour. Every screen in a flow should justify its existence.

Scope boundaries

You own:

  • Complete user journeys and screen flows of any type
  • Variation by user type, context, device, entry point, and market
  • Copy direction, CTAs, instructional text, and microcopy guidance
  • Interaction specs and state transitions
  • Task flow optimization and friction reduction
  • Mobile, web, TV, and embedded adaptations
  • Validation, error recovery, undo, and retry flows
  • Multi-channel journey mapping and cross-channel continuity
  • Journey state management (save, resume, re-entry)

You don't own:

  • Information architecture, navigation structure, and taxonomy (/organize owns the navigation and taxonomy structure your flows move through)
  • Screen-level structural layout at wireframe fidelity (/wireframe owns what goes where on each screen; you define what screens exist and what they must accomplish)
  • Detailed UX copy, voice frameworks, and content strategy (/articulate owns the detailed copy and voice work)
  • Edge case hardening and failure mode analysis (/fortify owns edge case hardening)
  • Deep cross-platform adaptation (/transpose owns the rethinking of experiences across platforms — mobile, TV, kiosk, embedded — when it goes beyond responsive layout)
  • Backend systems architecture (partner with /blueprint)
  • Whether to build the feature at all (partner with /strategize)
  • Final implementation details or code (partner with /specify)
  • Accessibility auditing and inclusive design review (partner with /include)
  • Visual design, layout, and typography (that's visual design territory)

When markets conflict: If different markets have requirements that fundamentally clash (e.g., GDPR consent rules vs. other regions' expectations), document each market's constraints explicitly, design the "core" flow that works everywhere, and flag market-specific deviations as variants. Don't force one market's assumptions onto another — design for the divergence, not around it.

When complexity escalates: If a flow requires understanding of backend service dependencies, process handoffs between teams, or failure mode analysis that goes beyond the user-facing experience, flag it and bring in /blueprint. A good rule of thumb: if you're designing what the system does rather than what the user sees, you've crossed the boundary.

Always ask:

  • What is the user trying to accomplish, and what's their context when they start?
  • What does success look like for the user? For the product?
  • What devices and platforms matter?
  • What user types, permission levels, or experience levels need to be accounted for?
  • Where do users currently struggle, hesitate, or abandon?
  • What comes before this flow, and where does the user go after?
  • Are we solving the real problem, or just the surface problem?
  • Does this journey span multiple channels, and if so, what needs to persist across transitions?
  • What happens when the user leaves mid-flow and comes back?

Working with this skill

Provide context upfront: the user segment, the product goal, existing data on where users struggle, and what you've already tried. The more you know about the user's world — their alternatives, their mental models, their device habits, their level of expertise — the better the design.

Expect challenges on your assumptions. Evidence beats intuition. If something feels right but data says otherwise, we redesign.

© ghaida, CC0-1.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/journey of ghaida/intent.

Open the folder on GitHubat commit b89a519

Compare with similar skills

Journey next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Journey compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Journey this skillghaida/intent206—~7.6kAutomated safety check: PassCC0-1.0
Bmad UXaj-geddes/claude-code-bmad-skills488—~2kAutomated safety check: NotesCustom licence
Prototypeplugin87/ux-ui-agent-skills1.6k—~614Automated safety check: PassMIT
User Flow DiagramOwl-Listener/designer-skills2.9k1 repos~448Automated safety check: PassMIT
Product UX Expertmajiayu000/spellbook287—~3.1kAutomated safety check: PassMIT
Draft Flowjeremylongshore/tons-of-skills-marketplace2.8k—~898Automated safety check: NotesMIT

Similar skills

  • Bmad UX

    aj-geddes/claude-code-bmad-skills

    Solutioning-phase UX planning skill (optional; activate when the project has a UI).

    488 GitHub stars~2k tokensUpdated 3 mo ago
    Frontend & DesignAuto-check: notes
  • Prototype

    plugin87/ux-ui-agent-skills

    Move an idea up the fidelity ladder (content-first → wireframe → low-fi → high-fi → code) with a validation plan at each level, plus user-journey mapping and usability-testing scripts.

    1.6k GitHub stars~614 tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • User Flow Diagram

    Owl-Listener/designer-skills

    Diagram screen-level paths, decision points, and branch logic.

    2.9k GitHub starsUsed in 1 repo~448 tokens
    Frontend & DesignAuto-check passed
  • Product UX Expert

    majiayu000/spellbook

    Product interaction and UX expert. An agent skill from majiayu000/spellbook.

    287 GitHub stars~3.1k tokensUpdated yesterday
    Frontend & DesignAuto-check passed
  • Draft Flow

    jeremylongshore/tons-of-skills-marketplace

    A skill your agent uses when asked to design a user flow, map how a user moves through a feature, create a wireframe or flow diagram, or document interaction design for a product brief.

    2.8k GitHub stars~898 tokensUpdated yesterday
    Frontend & DesignAuto-check: notes
  • Assistive Technology Scenarios

    Owl-Listener/inclusive-design-skills

    Writes usage scenarios, use cases and storyboards that show real people using screen readers, switches, voice control and other assistive technology to finish tasks.

    104 GitHub stars~1.1k tokensUpdated 4 mo ago
    Frontend & DesignAuto-check passed

More from ghaida/intent

All 9 skills in this repo
  • Intent

    ghaida/intent

    The entry point for Intent, a UX and design strategy system.

    206 GitHub stars~11k tokensUpdated 2 mo ago
    Auto-check passed
  • Specify

    ghaida/intent

    Bridges design and engineering by producing detailed specs, organized handoff packages, asset inventories, and cross-functional documentation.

    206 GitHub stars~3.9k tokensUpdated 2 mo ago
    Auto-check passed
  • Blueprint

    ghaida/intent

    Map, analyze, and redesign the systems behind product experiences.

    206 GitHub stars~7.2k tokensUpdated 2 mo ago
    Auto-check passed
  • Evaluate

    ghaida/intent

    Structured UX evaluation that produces quantitative assessments, identifies specific issues, and routes to the right Intent skill for resolution.

    206 GitHub stars~6.8k tokensUpdated 2 mo ago
    Auto-check passed
  • Include

    ghaida/intent

    Design for everyone by treating accessibility as a first-class design discipline, not a compliance checklist.

    206 GitHub stars~7.9k tokensUpdated 2 mo ago
    Auto-check passed
  • Investigate

    ghaida/intent

    Guide and conduct user research — from planning through synthesis.

    206 GitHub stars~7.3k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Journey

What does Journey do?

Design any user-facing experience end-to-end: task flows, multi-step workflows, navigation structures, onboarding, settings, search, content creation, collaboration, signup, checkout, dashboards…. Journey is an agent skill from ghaida/intent. Design any user-facing experience end-to-end: task flows, multi-step workflows, navigation structures, onboarding, settings, search, content creation, collaboration, signup, checkout, dashboards, notifications, error recovery, and more.

When should I use Journey?

Journey fits situations like: designing user flows of any kind; mapping screen sequences; optimizing task completion; specifying interactions.

How do I install Journey in Claude Code?

Run `npx skills add ghaida/intent --skill journey -a claude-code`. Or copy the skill folder (skills/journey in ghaida/intent) into .claude/skills/journey in your project. Claude Code loads it when a task matches its description.

How do I install Journey in Codex?

Run `npx skills add ghaida/intent --skill journey -a codex`. Or copy the skill folder (skills/journey in ghaida/intent) into .agents/skills/journey in your project. Codex loads it when a task matches its description.

Can I use Journey in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ghaida/intent --skill journey -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/journey, .gemini/skills/journey, .github/skills/journey and .opencode/skills/journey in your project.

What does Journey need to run?

SKILL.md names no scripts, command-line tools or credentials: Journey is instructions for the agent only.

Does Journey access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Journey safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Journey use?

Journey is published under the CC0-1.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Journey use?

About 7.6k tokens (SKILL.md is roughly 30k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Journey?

Skills that share tags, products or a category with Journey: Bmad UX (aj-geddes/claude-code-bmad-skills, 488 stars), Prototype (plugin87/ux-ui-agent-skills, 1.6k stars), User Flow Diagram (Owl-Listener/designer-skills, 2.9k stars) and Product UX Expert (majiayu000/spellbook, 287 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Journey?

ghaida (a GitHub user) maintains it in ghaida/intent, which has 206 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on July 17, 2026.

Source: ghaida/intent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.