Agent skill

Mental Model System Vs Interaction

by hashgraph-online in hashgraph-online/awesome-codex-plugins

A skill your agent uses when distinguishing the two mental-model types — system models (how the user thinks the system works) and interaction models (how the user thinks they should use it).

Apache-2.0Auto-check passed

Install Mental Model System Vs Interaction

skills CLI
$ npx skills add hashgraph-online/awesome-codex-plugins --skill mental-model-system-vs-interaction -a claude-code

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

GitHub CLI
$ gh skill install hashgraph-online/awesome-codex-plugins mental-model-system-vs-interaction --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/hashgraph-online/awesome-codex-plugins.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/HDeibler/universal-design-principles/plugins/cognition-and-learnability-principles/skills/mental-model-system-vs-interaction .claude/skills/mental-model-system-vs-interaction && 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
mental-model-system-vs-interaction
GitHub stars
1.2k
Token cost
~1.6k tokens
SKILL.md length
838 words
Files
2 (incl. references)
Skills in repo
686
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when distinguishing the two mental-model types — system models (how the user thinks the system works) and interaction models (how the user thinks they should use it).

  • Works in 3 steps: The "what model do users need?" check.… → The user-test-vs-self-test. Designers… → The first-error analysis. When a user…
  • Designing onboarding (which model to teach)
  • SKILL.md covers System models, Interaction models, Asymmetry between designers… and How to design for each, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Mental Model System Vs Interaction is an agent skill from hashgraph-online/awesome-codex-plugins. Use this skill when distinguishing the two mental-model types — system models (how the user thinks the system works) and interaction models (how the user thinks they should use it). Trigger when designing onboarding (which model to teach), reviewing user confusion (which model is wrong), or building documentation (which model to explain). Sub-aspect of mental-model; read that first.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/two-models-research.md`).

The repository describes itself as: A curated list of awesome OpenAI Codex / ChatGPT plugins, skills, and resources. The 1 Codex Marketplace. See live plugins at: https://hol.org/plugins/best-codex-plugins. The licence is Apache-2.0.

When your agent uses it

  • Designing onboarding (which model to teach)
  • Reviewing user confusion (which model is wrong)
  • Building documentation (which model to explain)

Example prompts

  • “/mental-model-system-vs-interaction”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. The "what model do users need?" check. For each feature, ask: what does the user need to know about how this works (system) vs. how to use…
  2. The user-test-vs-self-test. Designers walking through their own design test the designer's model, not the user's. Watch real users.
  3. The first-error analysis. When a user encounters their first error, was it a system-model failure (they didn't know how it works) or…

What it can do on your machine

Read from SKILL.md and the folder at commit 78497e5. 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.

    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

Mental Model System Vs Interaction loads about 1.6k tokens when it runs, and up to ~2k if it reads all its reference files. Until then it costs about 106 tokens; SKILL.md has 838 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~106
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2k

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 hashgraph-online/awesome-codex-plugins at commit 78497e5, republished under its Apache-2.0 licence (© hashgraph-online). 838 words, ~1,617 tokens.

Download SKILL.mdSave it as .claude/skills/mental-model-system-vs-interaction/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
mental-model-system-vs-interaction
description
Use this skill when distinguishing the two mental-model types — system models (how the user thinks the system works) and interaction models (how the user thinks they should use it). Trigger when designing onboarding (which model to teach), reviewing user confusion (which model is wrong), or building documentation (which model to explain). Sub-aspect of `mental-model`; read that first.

System models vs. interaction models

The book's distinction matters in practice because the two model types are formed differently and need different design responses.

System models

How the user thinks the system works internally. Components, mechanisms, causal logic.

Examples:

  • "The cloud" stores my files; they're somewhere on the internet.
  • "The recommendation algorithm" looks at what I clicked.
  • "Two-factor authentication" sends a code to verify it's me.

System models are often inaccurate without consequence. Most users don't know how email actually routes (SMTP, MX records); their model — "I type address, click send, message arrives" — is sufficient. The system doesn't need an accurate user system model unless the user must reason about edge cases.

When system models matter:

  • Troubleshooting — when something goes wrong, users with better system models recover faster.
  • Privacy and security — users with realistic models of how their data flows make better choices.
  • Power use — users with accurate models can use features beyond the basic.

Designers tend to have rich system models (they built it); users tend to have simplified or wrong ones. The gap is acceptable up to a point.

Interaction models

How the user thinks they should use the system. Actions, sequences, expected responses.

Examples:

  • To save: Cmd-S or click File → Save.
  • To navigate: click links, use back button.
  • To delete: select item, press Delete or click trash icon.

Interaction models are what designers must align to. A system whose interaction model the user can't form is unusable, regardless of how cleverly its system model is conceived.

When interaction models matter:

  • Always. Every interaction is a moment when the user's interaction model is tested.
  • Particularly for first-use; subsequent use refines the model through experience.
  • Critically for destructive or irreversible actions.

Users tend to have weak interaction models initially; with use, they accumulate accurate models through trial. Designers often have weak interaction models because they know "how it really works" rather than "how to use it." Bridging the gap requires user testing.

Asymmetry between designers and users

The book makes this point compactly: designers tend to have complete system models but weak interaction models. Users have weak system models but, with use, develop accurate interaction models.

The implication: designers can't infer the user's interaction model from their own. They must test with real users.

How to design for each

For system models
  • Faithful system images that surface the system's actual state.
  • Conceptual onboarding that teaches the model when accuracy matters.
  • Documentation that explains underlying mechanisms for users who care.
  • Visualizations of internal state when relevant (sync status, processing pipelines).
For interaction models
  • Conventional patterns so users transfer prior interaction models.
  • Affordances that signal what to do.
  • Feedback that confirms the action did what the user expected.
  • Recovery when the interaction didn't match expectation.

When to invest in which

For most products, interaction models are the higher-priority investment. Most users don't need accurate system models; all users need accurate interaction models.

Exceptions:

  • Power-user tools (developer tools, admin consoles) — power users benefit from system-model accuracy.
  • Privacy-sensitive products — users need to understand the system to consent meaningfully.
  • Educational products — teaching the system model is the point.
Show full SKILL.md (324 more words)Show less

Worked examples

Example 1: a calendar app

System model: events stored in a database; synced across devices via cloud.

Interaction model: click date to create event; drag to move; click event to edit.

Most users only need the interaction model. The system model can be opaque ("it just syncs"). Investment: interaction-model design and testing.

Example 2: a developer tool

System model: code runs in a sandboxed environment; logs stream from server; deploys are versioned.

Interaction model: type code in editor; click run; see output; click deploy.

Power users (developers) benefit from the system model. Investment: both. The IDE's UI handles interaction; documentation, error messages, and visible state handle the system model.

Example 3: a privacy-affecting feature

System model: data is shared with third parties for ad personalization.

Interaction model: toggle in settings.

Users must understand the system model to consent meaningfully. Investment: clear explanation of what the toggle actually does, in plain language, at the point of decision.

Anti-patterns

  • Optimizing for system-model purity at the expense of interaction usability. "Our metaphor is technically accurate but users can't find anything."
  • Hiding the system model when users need it. Privacy disclosures buried; sync status invisible; error messages that don't explain causes.
  • Designer's interaction model substituted for user's. Designers ship a clever flow that they themselves can navigate; users can't.

Heuristics

  1. The "what model do users need?" check. For each feature, ask: what does the user need to know about how this works (system) vs. how to use it (interaction)?
  2. The user-test-vs-self-test. Designers walking through their own design test the designer's model, not the user's. Watch real users.
  3. The first-error analysis. When a user encounters their first error, was it a system-model failure (they didn't know how it works) or interaction-model failure (they didn't know what to do)? Different fixes.
  • mental-model (parent).
  • mental-model-mismatch-and-onboarding — bridging the gaps when models diverge.
  • affordance — interaction models at the per-element level.
  • mimicry — borrowing models from familiar systems.

© hashgraph-online, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in plugins/HDeibler/universal-design-principles/plugins/cognition-and-learnability-principles/skills/mental-model-system-vs-interaction of hashgraph-online/awesome-codex-plugins.

  • SKILL.md
  • references/two-models-research.md

Open the folder on GitHubat commit 78497e5

Compare with similar skills

Mental Model System Vs Interaction 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.

Mental Model System Vs Interaction compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Mental Model System Vs Interaction this skillhashgraph-online/awesome-codex-plugins1.2k—~1.6kAutomated safety check: PassApache-2.0
Rust Path Typesopeninterpreter/openinterpreter69k2 repos~605Automated safety check: PassApache-2.0
Python Type Safetywshobson/agents40k—~1.4kAutomated safety check: PassMIT
Pyrefly Type Coveragepytorch/pytorch104k—~3kAutomated safety check: PassCustom licence
Typescript Advanced Typesrolling-scopes/rsschool-app10k25 repos~4.2kAutomated safety check: PassMPL-2.0
API Typessupabase/supabase111k—~557Automated safety check: PassApache-2.0

Similar skills

  • Rust Path Types

    openinterpreter/openinterpreter

    Rules for choosing Rust types for filesystem paths in new Codex code, covering protocol types, internal use and model tool arguments.

    69k GitHub starsUsed in 2 repos~605 tokens
    DevelopmentAuto-check passed
  • Python Type Safety

    wshobson/agents

    Python type safety with type hints, generics, protocols, and strict type checking.

    40k GitHub stars~1.4k tokensUpdated 4 days ago
    DevelopmentAuto-check passed
  • Pyrefly Type Coverage

    pytorch/pytorch

    Migrate a file to use stricter Pyrefly type checking with annotations required for all functions, classes, and attributes.

    104k GitHub stars~3k tokensUpdated today
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    rolling-scopes/rsschool-app

    Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.

    10k GitHub starsUsed in 25 repos~4.2k tokens
    DevelopmentAuto-check passed
  • API Types

    supabase/supabase

    Official

    Maintain Supabase API types. An agent skill from supabase/supabase.

    111k GitHub stars~557 tokensUpdated today
    Backend & APIsAuto-check passed
  • Walks through the first of six steps for adding a syncable entity to Twenty's server: metadata name, TypeORM entity, flat types and central constants.

    58k GitHub stars~2.8k tokensUpdated today
    DevelopmentAuto-check passed

More from hashgraph-online/awesome-codex-plugins

All 686 skills in this repo
  • Anime Reaction Gif

    hashgraph-online/awesome-codex-plugins

    Create original anime-style reaction stickers as looping GIFs and MP4 previews, using generated character pose sheets and timed key poses.

    1.2k GitHub stars~922 tokensUpdated today
    Auto-check passed
  • Calibredb

    hashgraph-online/awesome-codex-plugins

    Manage and query Calibre libraries with the calibredb CLI (local paths or Calibre Content server URLs).

    1.2k GitHub stars~1k tokensUpdated today
    Auto-check passed
  • Rust API Test Harness

    hashgraph-online/awesome-codex-plugins

    A skill your agent uses when adding, changing, testing, or debugging Rust HTTP APIs and services, especially when Codex needs black-box integration tests, random-port app startup, real database test…

    1.2k GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • Art

    hashgraph-online/awesome-codex-plugins

    Make a studio's game look like something at build time — a cover from a real frame of the game (free), painted covers, backdrops, textures and character plates from image models through the…

    1.2k GitHub stars~2.4k tokensUpdated today
    Auto-check passed
  • Game Balance Economy

    hashgraph-online/awesome-codex-plugins

    Balance game difficulty, resources, rewards, probability, progression, economies, and dominant strategies.

    1.2k GitHub stars~618 tokensUpdated today
    Auto-check passed
  • Manuscript Engagement Analytics

    hashgraph-online/awesome-codex-plugins

    Analyze nonfiction manuscripts for reader engagement signals, including heading-level word counts, slow starts, long slogs, weak takeaway titles, value pacing, beta-reader comment dropoff, and…

    1.2k GitHub stars~875 tokensUpdated today
    Auto-check passed

Questions about Mental Model System Vs Interaction

What does Mental Model System Vs Interaction do?

A skill your agent uses when distinguishing the two mental-model types — system models (how the user thinks the system works) and interaction models (how the user thinks they should use it). Mental Model System Vs Interaction is an agent skill from hashgraph-online/awesome-codex-plugins. Use this skill when distinguishing the two mental-model types — system models (how the user thinks the system works) and interaction models (how the user thinks they should use it).

When should I use Mental Model System Vs Interaction?

Mental Model System Vs Interaction fits situations like: designing onboarding (which model to teach); reviewing user confusion (which model is wrong); building documentation (which model to explain).

How do I install Mental Model System Vs Interaction in Claude Code?

Run `npx skills add hashgraph-online/awesome-codex-plugins --skill mental-model-system-vs-interaction -a claude-code`. Or copy the skill folder (plugins/HDeibler/universal-design-principles/plugins/cognition-and-learnability-principles/skills/mental-model-system-vs-interaction in hashgraph-online/awesome-codex-plugins) into .claude/skills/mental-model-system-vs-interaction in your project. Claude Code loads it when a task matches its description.

How do I install Mental Model System Vs Interaction in Codex?

Run `npx skills add hashgraph-online/awesome-codex-plugins --skill mental-model-system-vs-interaction -a codex`. Or copy the skill folder (plugins/HDeibler/universal-design-principles/plugins/cognition-and-learnability-principles/skills/mental-model-system-vs-interaction in hashgraph-online/awesome-codex-plugins) into .agents/skills/mental-model-system-vs-interaction in your project. Codex loads it when a task matches its description.

Can I use Mental Model System Vs Interaction 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 hashgraph-online/awesome-codex-plugins --skill mental-model-system-vs-interaction -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mental-model-system-vs-interaction, .gemini/skills/mental-model-system-vs-interaction, .github/skills/mental-model-system-vs-interaction and .opencode/skills/mental-model-system-vs-interaction in your project.

What does Mental Model System Vs Interaction need to run?

SKILL.md names no scripts, command-line tools or credentials: Mental Model System Vs Interaction is instructions for the agent only.

Does Mental Model System Vs Interaction 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 Mental Model System Vs Interaction 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 Mental Model System Vs Interaction use?

Mental Model System Vs Interaction is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Mental Model System Vs Interaction use?

About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 403 tokens, read only when the agent opens those files.

What are the alternatives to Mental Model System Vs Interaction?

Skills that share tags, products or a category with Mental Model System Vs Interaction: Rust Path Types (openinterpreter/openinterpreter, 69k stars), Python Type Safety (wshobson/agents, 40k stars), Pyrefly Type Coverage (pytorch/pytorch, 104k stars) and Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Mental Model System Vs Interaction?

hashgraph-online (a GitHub organization) maintains it in hashgraph-online/awesome-codex-plugins, which has 1,242 GitHub stars. The repository holds 686 skills in this directory. The repository was last updated on October 8, 2026.

Source: hashgraph-online/awesome-codex-plugins on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.