design-an-interface

Generates multiple radically different interface designs for a module using parallel sub-agents.

Updated Apr 6, 2026
One-click install
npx skills add https://github.com/toderian/project_template --skill design-an-interface-toderian
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: design-an-interface
Source: https://github.com/toderian/project_template/tree/main/plugins/agents-extras/skills/design-an-interface
Command: npx skills add https://github.com/toderian/project_template --skill design-an-interface-toderian

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? First interface ideas are rarely the best, yet teams often commit to them without exploring alternatives. This Skill applies the "Design It Twice" principle from A Philosophy of Software Design, forcing exploration of multiple radically different module shapes before committing to one. ## Core Features & Use Cases - Parallel Design Generation: Spawns 3+ independent sub-agents (via the Task tool on Claude Code or Codex multi-agent tools), each constrained to produce a radically different interface, such as minimal method count versus maximum flexibility. - Structured Comparison: Compares designs on depth, locality, and seam placement, plus ease of correct use versus ease of misuse, ending with a concrete recommendation rather than a menu. - Synthesis: Combines the strongest elements of competing designs into a hybrid when appropriate. - Use Case: When designing a new API or module boundary, ask for three contrasting interface shapes and receive signatures, usage examples, hidden complexity, and trade-offs for each before choosing. ## Quick Start Ask the agent to design three radically different interfaces for your module and compare their trade-offs.

Frequently Asked Questions about design-an-interface

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate multiple interface designs for a module?

Describe the module, its callers, and key operations, then the Skill spawns parallel sub-agents, each given a different constraint such as minimizing method count or maximizing flexibility. Each returns a signature, usage example, hidden internals, and trade-offs.

What is the Design It Twice approach to API design?

Design It Twice, from A Philosophy of Software Design, says your first interface idea is unlikely to be the best, so you should produce several radically different designs and compare them. This Skill operationalizes that with independent sub-agent passes.

Does this work without parallel sub-agent support?

Yes. If no subagent runtime is available, the Skill runs three isolated main-thread passes, keeping each pass blind to the others until the comparison stage so the designs stay genuinely different.

How are the generated interface designs compared?

Designs are compared on depth, locality, and seam placement, plus ease of correct use versus ease of misuse and whether the shape permits an efficient implementation. The comparison is prose-based and ends with a concrete recommendation.

When should I not use parallel interface design exploration?

Avoid it when the interface is trivial or already constrained by an existing pattern, since the value comes from contrasting genuinely different shapes. The Skill also never implements code; it only explores interface shape.