skills/information-software-design/SKILL.md
Design principles from Bret Victor's "Magic Ink" for building information software. Use when designing dashboards, search results, calendars, finance apps, or any interface where users seek answers rather than manipulate objects. Ask "what can the user learn?" not "what can the user do?"
npx skillsauth add madeyexz/ian-skills-agents information-software-designInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
A skill for designing information software based on Bret Victor's "Magic Ink" principles.
Use this skill when the user is designing or building software where the primary purpose is to help users learn, understand, compare, and make decisions - such as dashboards, search results, calendars, finance apps, recommendation systems, listings, or any interface where users seek answers rather than manipulate objects.
When helping the user design information software:
Start by asking: "What questions is the user trying to answer?"
Don't ask "what features should it have" or "what can the user do." Instead:
Example questions for a movie listings app:
Example questions for a calendar app:
The core insight: Information software design is the design of context-sensitive graphics.
Software should infer context from three sources (in order of preference):
If interaction is unavoidable:
Apply Edward Tufte's first rule: Show the data.
Ask: Does this interface present enough information to answer the user's questions?
Anti-pattern (Amazon 2006):
Better pattern:
Use the two spatial dimensions meaningfully.
Anti-pattern (Yahoo Movies 2006):
Better pattern:
Key principle: Compare by eye (spatial), not by memory (temporal navigation)
Excise = effort demanded by the tool not directly in pursuit of the goal.
Navigation is almost always pure excise. The user doesn't want to navigate; she wants answers.
Reduce excise by:
When reviewing an information software design:
Software designers often ask "What functions must it perform?" instead of "What will it look like?"
Fix: Start with the graphic design. What information appears? How is it arranged? The interaction model comes last.
If users are clicking through multiple screens to find answers, the design has failed.
Fix: Show more information upfront. Use context to filter. Make a single screen answer the question.
When everything looks the same, nothing stands out.
Fix: Use typography, color, and whitespace to create hierarchy. Critical info in bold, supplementary info in grey.
Stateful software where users can "get lost" creates anxiety.
Fix: Reduce state. Make it trivial to return to sensible starting points. Navigation should be correction, not construction.
If clicking a button doesn't immediately change what the user sees, the interaction is meaningless.
Fix: Every interaction should produce visible change to a context-sensitive graphic.
Old mindset: "What can the user do with this software?"
New mindset: "What can the user learn from this software?"
Most software exists to help people learn:
When you approach design this way, interaction becomes a last resort, and the primary challenge becomes: How do I present this information so clearly that the user's questions are answered at a glance?
Based on Bret Victor's "Magic Ink: Information Software and the Graphical Interface" (2006) http://worrydream.com/MagicInk/
tools
Add before/after comparison screenshots to a PR using browser automation. Captures UI on the base branch and the PR branch, saves to docs/screenshot/, and updates the PR body with a side-by-side comparison table using GitHub CDN URLs.
testing
Workflow for translating entire books using AI agents. Split markdown books into chapters, batch translate 5 at a time, and verify completeness. Works with any language pair.
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.
development
Maintainer workflow for OpenClaw releases, prereleases, changelog release notes, and publish validation. Use when Codex needs to prepare or verify stable or beta release steps, align version naming, assemble release notes, check release auth requirements, or validate publish-time commands and artifacts.