kyaulabs/prism/systems-design

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Use when designing a non-trivial change — a new module, a data model, a cross-cutting decision, or a system boundary. Decides ADR vs RFC, applies C4-lite notation, deep-modules heuristic, and interface-design checks.

Install

npx vskill@latest install kyaulabs/prism/systems-design

SKILL.md

Decide: ADR, RFC, or neither?

SignalArtifact
Hard-to-reverse or expensive-to-change decisionADR (see adr skill)
Forecloses other options, cross-cuttingADR
Large, still-being-explored design needing feedbackRFC (see packages/prism-core/docs/design.md)
Routine implementation, naming, or refactor extractionNeither — just commit + PR

When in doubt, write an ADR. They are cheap and future readers thank you.

C4-lite notation

Three zoom levels. Sketch in the ADR/RFC; don't aim for completeness.

  1. Context — the system and its external actors/users. One box, arrows in/out.
  2. Container — major deployable/runnable units (the app, the DB, the CDN,

any worker). One box each, with the tech noted inside.

  1. Component — within a container, the key modules/classes and their

dependencies. Only draw the ones touched by the decision.

Use ASCII or Mermaid in the ADR. Keep diagrams legible in plain text.

Deep modules heuristic (Ousterhout)

A module's value is its interface relative to its implementation.

  • Deep module: small interface, hides significant complexity. Good.
  • Shallow module: interface as complex as the implementation. Bad — it

adds indirection without abstraction. Merge or deepen it.

When designing a new class or boundary, ask: is the interface materially smaller than the implementation? If not, redesign or merge.

Interface-design checklist

Before committing a new public interface (a class API, a backend function, a URL, a DB schema):

  • [ ] Hides a decision that could change.
  • [ ] Interface is the smallest expression of the capability.
  • [ ] Does not leak internals (types, error shapes, ordering, state).
  • [ ] Errors are part of the interface — documented, typed, narrow.
  • [ ] One responsibility; if you describe it with "and", split it.
  • [ ] Testable at the boundary if it touches the outside world (see the

tdd skill's boundary-mocking discipline and the active adapter's mocking guide, if one exists).

  • [ ] Named using the project's ubiquitous language (see CONTEXT.md).

Cross-refs

  • adr skill — format and status transitions.
  • packages/prism-core/docs/design.md — RFC template and when a design doc

is required.

  • tdd skill — boundary-interface and mocking discipline.
  • domain-context skill — read CONTEXT.md before designing.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
5

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/kyaulabs/prism/systems-design/badge)](https://verified-skill.com/skills/kyaulabs/prism/systems-design)

Something wrong with this skill or its page? Tell us.