# software-architecture

A skill that hands the agent coding rules: early returns, splitting long functions, domain names instead of utils. Useful when the agent writes or reviews project code.

- skill · `type=skill` · Claude Code · 1769 installs
- Author: davila7
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/davila7/claude-code-templates/tree/HEAD/cli-tool/components/skills/development/software-architecture
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/skills/software-architecture

## What it does

The skill builds on Clean Architecture and Domain Driven Design. The agent gets a style guide: early returns over nested conditions, arrow functions, splitting components past 80 lines and files past 200 lines. Duplicated code should move into reusable functions and modules.

A separate section covers libraries. Before writing anything custom, the agent looks for an existing answer: an npm package, a third-party service, an API. Hand-rolled code is justified for domain logic, performance-critical paths and security-sensitive parts that need full control. The description names `cockatiel` as the pick for retry logic instead of writing your own.

There is also a list of anti-patterns. Names like `utils`, `helpers`, `common` and `shared` count as bad practice; `OrderCalculator` or `InvoiceGenerator` are what the skill expects. Business logic should not sit inside UI components, and database queries do not belong in controllers. Nesting stops at three levels, functions at 50 lines. The rules are strict, so on a large legacy codebase the agent will start proposing refactors you never asked for.

## Install

### Claude Code (native platform)

1. **claude-code-templates**
```bash
npx claude-code-templates@latest --skill development/software-architecture
```

2. **Skills CLI (Vercel)**
```bash
npx skills add davila7/claude-code-templates --skill software-architecture -a claude-code
```

3. **Manually: put the files in place**
- File: `~/.claude/skills/software-architecture/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/software-architecture/

### Codex

**Manually: put the files in place**
- File: `.agents/skills/software-architecture/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

**Manually: put the files in place**
- File: `.cursor/skills/software-architecture/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install davila7/claude-code-templates software-architecture
```

2. **Manually: put the files in place**
- File: `.github/skills/software-architecture/SKILL.md`

### Gemini CLI

**Platform CLI**
```bash
gemini skills install https://github.com/davila7/claude-code-templates --path cli-tool/components/skills/development/software-architecture
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/software-architecture/SKILL.md` — The legacy .windsurf/skills/ path still works

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/davila7/claude-code-templates/tree/HEAD/cli-tool/components/skills/development/software-architecture

## When to use it
- separate business logic from framework code
- move database queries out of controllers
- rename `utils` and `helpers` into domain terms
- split a function before it grows out of hand
- pick an existing library instead of building your own

## Example prompts
- Design the order checkout module following Clean Architecture
- Go through this file and point out where business logic mixes with UI
- Check the code for anti-patterns and suggest what to extract into a module

## Similar
- [architecture-patterns](https://affpapa.org/en/nevibecode/skills/secondsky-architecture-patterns.md) — skill · 493 installs
- [architecture-advisor](https://affpapa.org/en/nevibecode/skills/architecture-advisor.md) — skill · 2800 installs
- [clean-architecture](https://affpapa.org/en/nevibecode/skills/pproenca-clean-architecture.md) — skill · 2000 installs
- [V3 DDD Architecture](https://affpapa.org/en/nevibecode/skills/v3-ddd-architecture.md) — skill · 1100 installs
- [plan](https://affpapa.org/en/nevibecode/skills/plan.md) — skill · 2800 installs
- [architecture-review](https://affpapa.org/en/nevibecode/skills/decebals-architecture-review.md) — skill · 338 installs

From the same set: [davila7/claude-code-templates](https://affpapa.org/en/nevibecode/by/davila7/claude-code-templates.md) — 495 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
