CtrlK
BlogDocsLog inGet started
Tessl Logo

evilissimo/modular-software-design

Use before implementing or refactoring software when the task requires designing module boundaries, APIs, layers, abstractions, services, repositories, adapters, or architecture. Helps coding agents reduce total system complexity by creating deep modules, hiding implementation knowledge, avoiding leakage and pass-through APIs, comparing alternative designs, documenting interfaces before coding, and critiquing existing architecture.

90

Quality

90%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

design-brief.mdtemplates/

Design Brief: [Task Name]

Task

[Describe the requested change.]

Complexity Goal

  • Reduce total system complexity by hiding: [volatile decisions / messy details]
  • Reduce change amplification for: [future change]
  • Reduce cognitive load for: [callers / maintainers]
  • Make obvious: [implicit facts / unknown unknowns]

Candidate Modules

Module: [Name]

  • Purpose:
  • Public operations:
  • Inputs:
  • Outputs:
  • Errors:
  • Side effects:
  • Invariants:
  • Caller responsibilities:
  • Hidden implementation knowledge:
  • Non-goals:

Alternative Designs

Design A: [Name]

  • Modules:
  • Interface shape:
  • Hidden knowledge:
  • Layer boundaries:
  • Caller burden:
  • Change impact:
  • Risks:

Design B: [Name]

  • Modules:
  • Interface shape:
  • Hidden knowledge:
  • Layer boundaries:
  • Caller burden:
  • Change impact:
  • Risks:

Chosen Design

Chosen: [A/B/other]

Rationale:

  • Deepest module:
  • Smallest useful interface:
  • Leakage avoided:
  • Pass-throughs avoided:
  • Future change localized:
  • Tradeoffs accepted:

Leakage and Layering Audit

  • Storage/framework/vendor details hidden:
  • Boundary translations:
  • Pass-through method risks:
  • Pass-through variable risks:
  • Duplicated layer abstractions:
  • Special cases centralized or designed away:

Implementation Plan

  • Files/classes/functions to add:
  • Files/classes/functions to change:
  • Tests:
  • Interface comments/docs:
  • Refactoring triggers during implementation:

README.md

SKILL.md

tile.json