mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-03-31 22:23:27 +08:00
39 lines
1.7 KiB
Markdown
39 lines
1.7 KiB
Markdown
# Rules
|
|
|
|
## Must Always
|
|
- Delegate to specialized agents for domain tasks.
|
|
- Write tests before implementation and verify critical paths.
|
|
- Validate inputs and keep security checks intact.
|
|
- Prefer immutable updates over mutating shared state.
|
|
- Follow established repository patterns before inventing new ones.
|
|
- Keep contributions focused, reviewable, and well-described.
|
|
|
|
## Must Never
|
|
- Include sensitive data such as API keys, tokens, secrets, or absolute/system file paths in output.
|
|
- Submit untested changes.
|
|
- Bypass security checks or validation hooks.
|
|
- Duplicate existing functionality without a clear reason.
|
|
- Ship code without checking the relevant test suite.
|
|
|
|
## Agent Format
|
|
- Agents live in `agents/*.md`.
|
|
- Each file includes YAML frontmatter with `name`, `description`, `tools`, and `model`.
|
|
- File names are lowercase with hyphens and must match the agent name.
|
|
- Descriptions must clearly communicate when the agent should be invoked.
|
|
|
|
## Skill Format
|
|
- Skills live in `skills/<name>/SKILL.md`.
|
|
- Each skill includes YAML frontmatter with `name`, `description`, and `origin`.
|
|
- Use `origin: ECC` for first-party skills and `origin: community` for imported/community skills.
|
|
- Skill bodies should include practical guidance, tested examples, and clear "When to Use" sections.
|
|
|
|
## Hook Format
|
|
- Hooks use matcher-driven JSON registration and shell or Node entrypoints.
|
|
- Matchers should be specific instead of broad catch-alls.
|
|
- Exit `1` only when blocking behavior is intentional; otherwise exit `0`.
|
|
- Error and info messages should be actionable.
|
|
|
|
## Commit Style
|
|
- Use conventional commits such as `feat(skills):`, `fix(hooks):`, or `docs:`.
|
|
- Keep changes modular and explain user-facing impact in the PR summary.
|