Back to Skills

goms-klm-analysis

raintree-technology
Updated 5 days ago
78
9
78
View on GitHub
Designautomationdesign

About

This skill performs GOMS and Keystroke-Level Model (KLM) analysis to model and evaluate UI workflows by decomposing them into goals, operators, and methods. It's used to compare task flows, count interaction costs like clicks and keystrokes, and estimate expert execution time for redesigning interfaces. Developers should apply it for analyzing repeatable, procedural tasks to optimize performance and reduce cognitive load.

Quick Install

Claude Code

Recommended
Primary
npx skills add raintree-technology/claude-starter -a claude-code
Plugin CommandAlternative
/plugin add https://github.com/raintree-technology/claude-starter
Git CloneAlternative
git clone https://github.com/raintree-technology/claude-starter.git ~/.claude/skills/goms-klm-analysis

Copy and paste this command in Claude Code to install this skill

Documentation

GOMS / KLM Analysis

Use this skill when the useful artifact is an explicit workflow model. It is best for repeatable tasks with known steps, such as dashboard triage, form submission, search/refine/open flows, command palettes, editor workflows, and mobile settings tasks.

Choose The Model

  • Use KLM when the task is procedural and the user already knows what to do. It estimates expert, error-free execution time.
  • Use GOMS when there are meaningful alternatives, decision rules, or multiple methods to achieve the same goal.
  • Use a lightweight cognitive walkthrough when the risk is discoverability, comprehension, or first-time use rather than speed.

KLM Operators

Start with these operator families and adjust for the product context:

  • K: keystroke, tap, click, button press, or discrete command.
  • P: point to or visually acquire a target.
  • M: mental preparation before a chunk of action.
  • H: hand movement between input devices or postures.
  • R: system response wait time.
  • V: visual verification or reading needed to continue.

Do not overfit exact timings. Count removed operators and wait states first; add timings only when comparison needs a rough total.

Workflow

  1. Name the task and user expertise level.
  2. Capture the current method as numbered user actions.
  3. Mark operators for each action.
  4. Insert mental operators before decisions, strategy shifts, mode changes, or non-obvious commands.
  5. Insert response waits only when the UI blocks the next action.
  6. Build the proposed method with the same operator rules.
  7. Compare operator counts, waits, and error-prone transitions.
  8. Recommend the smallest UI changes that remove operators or make the selected method obvious.

Selection Rules

For GOMS, make selection rules explicit:

  • If the user knows the exact item name, use search.
  • If the item is recent or spatially stable, use recents or pinned navigation.
  • If the task requires comparison, use a list/table with persistent controls.
  • If the task is destructive, use a slower method only when it reduces error risk.

Bad selection rules reveal design problems. If the rules depend on hidden knowledge, redesign the flow instead of documenting the rule.

Output

For a single flow:

Task:
User:
Current method:
Operator model:
Findings:
Recommendations:

For alternatives:

Option A:
- Operators:
- Waits:
- Error-prone transitions:

Option B:
- Operators:
- Waits:
- Error-prone transitions:

Decision:

Guardrails

  • KLM models skilled, error-free performance; do not use it as the only lens for onboarding, accessibility, or confusing flows.
  • Do not count implementation steps. Count user-observable operations.
  • Keep safety and confidence in the model. A slower confirmation can be correct for irreversible actions.
  • If the design is for an Apple platform, pair this skill with Apple HIG guidance for platform conventions.

GitHub Repository

raintree-technology/claude-starter
Path: templates/.claude/skills/goms-klm-analysis
0
ai-toolsanthropicclaudeclaude-aiclaude-codedeveloper-tools

Related Skills

executing-plans

Design

Use the executing-plans skill when you have a complete implementation plan to execute in controlled batches with review checkpoints. It loads and critically reviews the plan, then executes tasks in small batches (default 3 tasks) while reporting progress between each batch for architect review. This ensures systematic implementation with built-in quality control checkpoints.

View skill

requesting-code-review

Design

This skill dispatches a code-reviewer subagent to analyze code changes against requirements before proceeding. It should be used after completing tasks, implementing major features, or before merging to main. The review helps catch issues early by comparing the current implementation with the original plan.

View skill

connect-mcp-server

Design

This skill provides a comprehensive guide for developers to connect MCP servers to Claude Code using HTTP, stdio, or SSE transports. It covers installation, configuration, authentication, and security for integrating external services like GitHub, Notion, and custom APIs. Use it when setting up MCP integrations, configuring external tools, or working with Claude's Model Context Protocol.

View skill

web-cli-teleport

Design

This skill helps developers choose between Claude Code Web and CLI interfaces based on task analysis, then enables seamless session teleportation between these environments. It optimizes workflow by managing session state and context when switching between web, CLI, or mobile. Use it for complex projects requiring different tools at various stages.

View skill