coding
General Coding Best Practices
Overview
This skill provides a set of core principles and practices for software development. Use this when implementing new features, refactoring existing code, or reviewing code to ensure high quality and maintainability.
Core Principles
- DRY (Don't Repeat Yourself): Avoid logic duplication. If you find yourself writing the same code twice, abstract it.
- KISS (Keep It Simple, Stupid): Prefer simple, straightforward solutions over complex ones. Avoid over-engineering.
- YAGNI (You Ain't Gonna Need It): Don't implement features or abstractions until they are actually needed.
- SOLID Principles:
- Single Responsibility: A class/function should have one reason to change.
- Open/Closed: Software entities should be open for extension but closed for modification.
- Liskov Substitution: Subtypes must be substitutable for their base types.
- Interface Segregation: Many client-specific interfaces are better than one general-purpose interface.
- Dependency Inversion: Depend on abstractions, not concretions.
- Existing Guidelines: - Follow existing guidelines in the project (e.g. CLAUDE.md, AGENT.md, etc.)
More from davidkiss/smart-ai-skills
reflection
MUST use this skill when user provides feedback / ask to do things in certain way, or when a tool call fails - for self-improvement - to learn user preferences and store them in AGENT.md / CLAUDE.md, and to propose improvements to skills.
621task-breakdown
Use when you have specs or requirements for a multi-step task to break it down into detailed tasks, before executing it
155subagent-task-execution
Use when executing tasks from a task breakdown document in the current session.
133brainstorming
You MUST use this skill before any creative or complex work. Explores user intent, requirements and design before actually executing on the task.
112skill-editor
Creates, updates, and manages Agent Skills following the Claude Code style. Use this skill when the user wants to add a new capability, create a new skill, or modify an existing skill.
96investigator
Use this skill when the user asks to "analyze", "research", "how do I", or "what's the best way" to understand project context, impact of potential actions, and root causes of issues.
1