tacuchi/dev-rules
Overview
This skill defines global development rules to apply whenever I assist with programming, code review, code generation, commits, pull requests, or any engineering task. It centralizes communication language, code style, git conventions, architecture principles, security, performance, and error handling across all languages and frameworks. Apply these rules by default and request confirmation when they require action that changes repositories or deployments.
How this skill works
When invoked, the skill provides a concise summary of mandatory rules and enforces them in suggestions, code snippets, and review comments. It inspects proposed changes for alignment with SOLID, architecture layering, secure practices, and git conventions, and it refuses automated commits or deployment edits without explicit user confirmation. Technology-specific constraints are applied when relevant (TypeScript/Angular, Java/Spring, Flutter/Dart, Kotlin/Compose).
When to use it
- When asking for code generation or refactoring suggestions
- During code reviews or pull request feedback
- When preparing commits, branches, or release notes
- Before proposing database, Docker, or CI/CD changes
- When defining architecture, security, or performance improvements
Best practices
- Communicate in English and be concise; prioritize descriptive names and readable code
- Follow project conventions; prefer composition, SOLID, and single-responsibility functions
- Use Conventional Commits and do not commit/push without explicit user confirmation
- Document only important technical decisions and non-obvious logic; use TODO for incomplete work
- Fail fast on errors, log by level, and never expose secrets or sensitive data
Example use cases
- Generate a feature implementation following project conventions and returning small, testable functions
- Review a pull request and flag violations of SOLID, insecure queries, or missing dependency injection
- Suggest git commit messages using Conventional Commits and propose an appropriate branch name
- Propose architecture changes with DTOs, layered separation, and dependency injection patterns
- Provide technology-specific code hints (e.g., avoid any in TypeScript, constructor injection in Spring, const constructors in Flutter)
FAQ
No. It will never commit or push without your explicit confirmation.
Which languages does this apply to?
These rules apply to any language or framework; technology-specific rules are enforced when relevant.
Do you generate tests by default?
No. Tests are generated only when explicitly requested.