Coding Rules Generator
Generate architecture-aware coding rules that AI coding tools (Claude Code, Cursor, GitHub Copilot) enforce automatically across every session. Optionally generates hard enforcement tooling (ESLint, dependency-cruiser, pre-commit hooks, architecture tests).
Input: SDL document
Output: CLAUDE.md, .cursorrules, .github/copilot-instructions.md, per-project CLAUDE.md, optional enforcement configs
What It Generates
Advisory Rules (CLAUDE.md / .cursorrules / copilot-instructions.md)
A single markdown file (output to 3 locations for tool coverage) containing architecture-derived coding rules organized by category:
| Category |
Source SDL Section |
Example Rules |
| Architecture |
architecture.style |
Module boundary rules, service isolation, communication patterns |
| File Structure |
architecture.projects |
Framework conventions, ORM patterns, folder organization |
| Data Access |
data |
Repository pattern, database query rules, search engine usage |
| API Patterns |
architecture.projects.backend |
REST/GraphQL/gRPC conventions, versioning, service base paths |
| Authentication |
auth |
Provider-specific rules (Clerk/Auth0/Cognito), token handling, RBAC |
| Error Handling |
errorHandling |
Error format, global handler, circuit breaker, retry patterns |
| Integrations |
integrations |
Service client isolation, webhook handling, payment/email patterns |
| Testing |
testing |
Framework-specific rules, coverage targets, test structure |
| Observability |
observability |
Logging rules, tracing, metrics collection |
| Security |
nonFunctional.security |
PII handling, encryption, audit logging, OWASP compliance |
| Caching |
data.cache |
Cache invalidation, TTL, cache-aside pattern |
| Queues |
data.queues |
Message handling, idempotency, dead letter queues |
| Code Quality |
(always generated) |
SOLID principles, naming, DRY, single responsibility |
| Design Patterns |
(always generated) |
Framework-appropriate patterns (repository, factory, strategy) |
| File Size & Structure |
(always generated) |
Max file length, function complexity, extraction rules |
| API Design Quality |
(always generated) |
Pagination, filtering, consistent responses, HATEOAS |
| Database Queries |
(always generated) |
N+1 prevention, indexing, query optimization |
| Testing Quality |
(always generated) |
AAA pattern, test naming, mocking boundaries |
| Performance |
(always generated) |
Lazy loading, pagination, connection pooling |
| Import Organization |
(always generated) |
Import ordering, barrel exports, circular dependency prevention |
| Tech Debt Avoidance |
(always generated) |
TODO tracking, deprecation patterns, refactoring triggers |
| Resilience |
(always generated) |
Retry policies, timeouts, fallbacks, circuit breakers |
| Input Validation |
(always generated) |
Schema validation, sanitization, boundary validation |
| Concurrency |
(always generated) |
Race conditions, locking, atomic operations |
| Configuration |
(always generated) |
Env var patterns, secrets management, feature flags |
| Migration Safety |
(always generated) |
Backward compatibility, zero-downtime deploys, rollback |
| Documentation |
(always generated) |
When to document, inline comments, API docs |
| Git Workflow |
(always generated) |
Branch naming, commit messages, PR conventions |
Conditional Categories (added when applicable)
| Category |
Condition |
Rules |
| Accessibility |
Frontend projects exist |
WCAG compliance, ARIA, keyboard navigation, color contrast |
| State Management |
Frontend projects exist |
Framework-specific state rules (React Context, Redux, Zustand) |
| Mobile |
Mobile projects exist |
Platform guidelines, navigation, permissions, offline |
| Internationalization |
Multiple regions defined |
i18n patterns, locale handling, RTL support |
Per-Project Rules
For monorepo setups, generates {project-name}/CLAUDE.md with project-specific rules:
- Backend: framework conventions, API style, ORM patterns, port assignment
- Frontend: rendering mode, styling approach, component library, state management
Enforcement Tooling (Optional)
When coding-rules-enforcement is in artifacts.generate, produces hard gates:
| File |
Purpose |
Language |
.eslintrc.sdl.js |
Custom ESLint rules from architecture |
TypeScript/JS |
pyproject.sdl.toml |
Ruff/flake8 config from architecture |
Python |
.golangci.sdl.yml |
golangci-lint config from architecture |
Go |
.dependency-cruiser.sdl.cjs |
Module boundary enforcement |
TypeScript/JS |
.lintstagedrc.sdl.json |
Pre-commit hook config |
All |
tests/architecture.test.ts |
Architecture conformance tests |
TypeScript |
How Rules Are Generated
Rules are deterministic — same SDL input always produces identical output. The generator:
- Reads architecture style, projects, data layer, auth, integrations from SDL
- Applies framework-specific rule templates (e.g., Express error handling vs FastAPI exception handlers)
- Adds conditional categories based on project composition
- Generates per-project overlays for monorepo setups
- Renders all rules into a single markdown document
Framework-Aware Rules
The generator tailors rules to the specific tech stack:
| Framework |
Tailored Rules |
| Node.js/Express |
Middleware patterns, async/await error handling, route organization |
| Python/FastAPI |
Pydantic models, dependency injection, async endpoints |
| Go |
Interface-based design, error wrapping, goroutine safety |
| .NET 8 |
Controller patterns, DI container, middleware pipeline |
| Java/Spring |
Bean lifecycle, AOP patterns, Spring Security |
| Next.js |
App Router conventions, Server Components, RSC boundaries |
| React |
Hook rules, component composition, render optimization |
When to Use
- After
/architect:scaffold — generate rules that match the scaffolded project structure
- After SDL changes — regenerate to keep rules in sync with architecture evolution
- When onboarding AI tools — drop
CLAUDE.md into any project for instant architecture awareness
- When adding enforcement — use
coding-rules-enforcement artifact for CI/CD gates
Integration
The coding rules generator is available as an SDL artifact type:
artifacts:
generate:
- coding-rules # Advisory rules (CLAUDE.md, .cursorrules, copilot-instructions)
- coding-rules-enforcement # Hard gates (ESLint, dependency-cruiser, pre-commit, arch tests)
Both are generated via the generate_from_sdl agent tool or the /api/sdl/generate endpoint.
Source: navraj007in/architecture-cowork-plugin — distributed by TomeVault.
1---2name: coding-rules-23description: Generate AI-consumable coding rules (CLAUDE.md, .cursorrules, copilot-instructions) and enforcement tooling from SDL Use when this capability is needed.4---56# Coding Rules Generator78Generate **architecture-aware coding rules** that AI coding tools (Claude Code, Cursor, GitHub Copilot) enforce automatically across every session. Optionally generates hard enforcement tooling (ESLint, dependency-cruiser, pre-commit hooks, architecture tests).910**Input**: SDL document11**Output**: `CLAUDE.md`, `.cursorrules`, `.github/copilot-instructions.md`, per-project `CLAUDE.md`, optional enforcement configs1213---1415## What It Generates1617### Advisory Rules (CLAUDE.md / .cursorrules / copilot-instructions.md)1819A single markdown file (output to 3 locations for tool coverage) containing architecture-derived coding rules organized by category:2021| Category | Source SDL Section | Example Rules |22|---|---|---|23| Architecture | `architecture.style` | Module boundary rules, service isolation, communication patterns |24| File Structure | `architecture.projects` | Framework conventions, ORM patterns, folder organization |25| Data Access | `data` | Repository pattern, database query rules, search engine usage |26| API Patterns | `architecture.projects.backend` | REST/GraphQL/gRPC conventions, versioning, service base paths |27| Authentication | `auth` | Provider-specific rules (Clerk/Auth0/Cognito), token handling, RBAC |28| Error Handling | `errorHandling` | Error format, global handler, circuit breaker, retry patterns |29| Integrations | `integrations` | Service client isolation, webhook handling, payment/email patterns |30| Testing | `testing` | Framework-specific rules, coverage targets, test structure |31| Observability | `observability` | Logging rules, tracing, metrics collection |32| Security | `nonFunctional.security` | PII handling, encryption, audit logging, OWASP compliance |33| Caching | `data.cache` | Cache invalidation, TTL, cache-aside pattern |34| Queues | `data.queues` | Message handling, idempotency, dead letter queues |35| Code Quality | (always generated) | SOLID principles, naming, DRY, single responsibility |36| Design Patterns | (always generated) | Framework-appropriate patterns (repository, factory, strategy) |37| File Size & Structure | (always generated) | Max file length, function complexity, extraction rules |38| API Design Quality | (always generated) | Pagination, filtering, consistent responses, HATEOAS |39| Database Queries | (always generated) | N+1 prevention, indexing, query optimization |40| Testing Quality | (always generated) | AAA pattern, test naming, mocking boundaries |41| Performance | (always generated) | Lazy loading, pagination, connection pooling |42| Import Organization | (always generated) | Import ordering, barrel exports, circular dependency prevention |43| Tech Debt Avoidance | (always generated) | TODO tracking, deprecation patterns, refactoring triggers |44| Resilience | (always generated) | Retry policies, timeouts, fallbacks, circuit breakers |45| Input Validation | (always generated) | Schema validation, sanitization, boundary validation |46| Concurrency | (always generated) | Race conditions, locking, atomic operations |47| Configuration | (always generated) | Env var patterns, secrets management, feature flags |48| Migration Safety | (always generated) | Backward compatibility, zero-downtime deploys, rollback |49| Documentation | (always generated) | When to document, inline comments, API docs |50| Git Workflow | (always generated) | Branch naming, commit messages, PR conventions |5152### Conditional Categories (added when applicable)5354| Category | Condition | Rules |55|---|---|---|56| Accessibility | Frontend projects exist | WCAG compliance, ARIA, keyboard navigation, color contrast |57| State Management | Frontend projects exist | Framework-specific state rules (React Context, Redux, Zustand) |58| Mobile | Mobile projects exist | Platform guidelines, navigation, permissions, offline |59| Internationalization | Multiple regions defined | i18n patterns, locale handling, RTL support |6061### Per-Project Rules6263For monorepo setups, generates `{project-name}/CLAUDE.md` with project-specific rules:64- Backend: framework conventions, API style, ORM patterns, port assignment65- Frontend: rendering mode, styling approach, component library, state management6667### Enforcement Tooling (Optional)6869When `coding-rules-enforcement` is in `artifacts.generate`, produces hard gates:7071| File | Purpose | Language |72|---|---|---|73| `.eslintrc.sdl.js` | Custom ESLint rules from architecture | TypeScript/JS |74| `pyproject.sdl.toml` | Ruff/flake8 config from architecture | Python |75| `.golangci.sdl.yml` | golangci-lint config from architecture | Go |76| `.dependency-cruiser.sdl.cjs` | Module boundary enforcement | TypeScript/JS |77| `.lintstagedrc.sdl.json` | Pre-commit hook config | All |78| `tests/architecture.test.ts` | Architecture conformance tests | TypeScript |7980---8182## How Rules Are Generated8384Rules are **deterministic** — same SDL input always produces identical output. The generator:85861. Reads architecture style, projects, data layer, auth, integrations from SDL872. Applies framework-specific rule templates (e.g., Express error handling vs FastAPI exception handlers)883. Adds conditional categories based on project composition894. Generates per-project overlays for monorepo setups905. Renders all rules into a single markdown document9192### Framework-Aware Rules9394The generator tailors rules to the specific tech stack:9596| Framework | Tailored Rules |97|---|---|98| Node.js/Express | Middleware patterns, async/await error handling, route organization |99| Python/FastAPI | Pydantic models, dependency injection, async endpoints |100| Go | Interface-based design, error wrapping, goroutine safety |101| .NET 8 | Controller patterns, DI container, middleware pipeline |102| Java/Spring | Bean lifecycle, AOP patterns, Spring Security |103| Next.js | App Router conventions, Server Components, RSC boundaries |104| React | Hook rules, component composition, render optimization |105106---107108## When to Use109110- After `/architect:scaffold` — generate rules that match the scaffolded project structure111- After SDL changes — regenerate to keep rules in sync with architecture evolution112- When onboarding AI tools — drop `CLAUDE.md` into any project for instant architecture awareness113- When adding enforcement — use `coding-rules-enforcement` artifact for CI/CD gates114115## Integration116117The coding rules generator is available as an SDL artifact type:118```yaml119artifacts:120 generate:121 - coding-rules # Advisory rules (CLAUDE.md, .cursorrules, copilot-instructions)122 - coding-rules-enforcement # Hard gates (ESLint, dependency-cruiser, pre-commit, arch tests)123```124125Both are generated via the `generate_from_sdl` agent tool or the `/api/sdl/generate` endpoint.126127---128> Source: [navraj007in/architecture-cowork-plugin](https://github.com/navraj007in/architecture-cowork-plugin) — distributed by [TomeVault](https://tomevault.io).129<!-- tomevault:4.0:skill_md:2026-05-23 -->