CtrlK
BlogDocsLog inGet started
Tessl Logo

clean-architecture

Apply Clean Architecture principles to define layer boundaries, identify dependency violations, and structure domain vs infrastructure code. Use when designing service boundaries, separating business logic from infrastructure, evaluating hexagonal/onion/ports-and-adapters architecture, structuring module layout, or resolving dependency inversion and circular dependency issues.

68

Quality

83%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

The risk profile of this skill

SKILL.md
Quality
Evals
Security

Quality

Content

75%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, actionable skill body: sequenced steps with per-step outputs, concrete TypeScript examples, runnable detection commands, and an organized one-level-deep reference bundle. The main gaps are duplication between the workflow steps and the anti-patterns section, one orphaned reference file, and the absence of an explicit re-validation loop after refactoring a dependency violation.

Suggestions

Add a Step 2b or extend Step 2 with a feedback loop: after refactoring, re-run the rg dependency-direction and framework-leakage commands to confirm the violation is gone before proceeding.

Link references/comp-common-reuse.md in the Components row of the References section (or remove it) so every bundle file is discoverable.

Deduplicate the Anti-Patterns section against the steps and references (e.g., entity-framework leakage appears in Step 5 and anti-pattern 2; the port example appears in Step 4 and anti-pattern 6) — keep one-line pointers to the reference files instead of repeating examples.

DimensionReasoningScore

Conciseness

The body is prescriptive rather than explanatory — it never explains what Clean Architecture is, and sections like the layer list and step templates assume Claude's competence. It is not a 5 because there is noticeable duplication: entity-framework leakage appears in both Step 5's example and the second anti-pattern, interface contracts appear in Step 4 and the fourth anti-pattern, and the IOrderRepository port example appears in both Step 4 and the sixth anti-pattern.

4 / 5

Actionability

Most guidance is executable: concrete TypeScript interfaces for ports and adapters, a dependency-direction rg command, a framework-leakage rg command (`rg -n "@Entity|@Injectable|@Component" src/domain`), and an ADR template. It is not a 5 because some examples are illustrative rather than complete — PostgresOrderRepository.save has only a comment body ("// Map entity to ORM, persist") and the `nx graph` command is given without how to read its output for cycles.

4 / 5

Workflow Clarity

The six-step workflow is clearly sequenced with an explicit 'Output' per step, and Step 2 provides a verification checklist; the Quick Commands section supplies runnable detection steps. It is not a 5 because there is no feedback loop — no step says to re-run the dependency checks after a refactor to confirm the violation is resolved, so checkpoints are present but a validation-retry cycle is only implicit.

4 / 5

Progressive Disclosure

The body is an overview that defers detail to 28 real, one-level-deep reference files organized by category (Dependencies, Components, Boundaries, Entities, Use Cases, Adapters, Frameworks), and dep-inward-only.md is signalled inline where needed. It is not a 5 because comp-common-reuse.md exists in references/ but is never linked (an orphan), and the ~90-line Anti-Patterns section substantially duplicates material in the usecase-/dep-/frame- references that could be split out.

4 / 5

Total

16

/

20

Passed

Description

91%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description with concrete actions, explicit 'Use when' triggers including architecture-name synonyms, and a clear niche. The only improvement is porting the body's 'When Not to Use' distinctions (solid-principles, design-patterns, testable-design) into the description to reduce overlap with adjacent design skills.

Suggestions

Add a brief not-this-skill cue (e.g., 'For class-level SOLID or structural design patterns, use those skills instead') to lower conflict risk with solid-principles and design-patterns.

Mention designing ports/adapters or use-case boundaries in the 'what' clause so the action list fully covers the skill's workflow.

DimensionReasoningScore

Specificity

The description names three concrete actions — "define layer boundaries", "identify dependency violations", "structure domain vs infrastructure code" — which cover the skill's core capabilities with only minor gaps (e.g., adapter/port design is only implied via the 'Use when' clause). It lists several specific actions but is not fully comprehensive, matching the score-4 anchor rather than the 5 whose example enumerates a complete action set.

4 / 5

Completeness

Both 'what' ("Apply Clean Architecture principles to define layer boundaries, identify dependency violations, and structure domain vs infrastructure code") and an explicit 'when' ("Use when designing service boundaries... or resolving dependency inversion and circular dependency issues") are clearly stated with concrete trigger phrases, matching the score-5 anchor exactly; it is not the 4 because the 'when' clause is already explicit and specific.

5 / 5

Trigger Term Quality

Trigger phrases are natural user language with synonyms included: "designing service boundaries", "separating business logic from infrastructure", "hexagonal/onion/ports-and-adapters architecture", "structing module layout", "dependency inversion and circular dependency issues". Coverage includes the named-variant synonyms users actually say (hexagonal, onion, ports-and-adapters), matching the comprehensive score-5 anchor.

5 / 5

Distinctiveness Conflict Risk

The Clean Architecture / hexagonal framing carves a mostly distinct niche, but adjacent skills like solid-principles, design-patterns, and testable-design overlap on trigger phrases such as 'separating business logic' — the body's 'When Not to Use' disambiguation is not surfaced in the description. Minor overlap risk with closely related skills fits the score-4 anchor; it is not 5 because that disambiguation is missing.

4 / 5

Total

18

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
pantheon-org/tekhne
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.