{
  "markdown": "# NestJS Best Practices\n\n## I am back to NestJS, and have a few hours a week to get back to maintaining my few OSS repos. Sorry for the delay all! \n\n📖 [For Humans <3](https://kadajett.github.io/agent-nestjs-skills/)\n\nA structured repository for creating and maintaining NestJS Best Practices optimized for agents and LLMs.\n\n---\n\n<div align=\"center\">\n  <a href=\"https://semfora.ai\">\n    <img src=\"assets/semfora-logo.svg\" alt=\"Semfora\" width=\"380\">\n  </a>\n</div>\n\n> **From the maintainer:** I built this skill because agents write better NestJS when they can see real context. Context is also my day job: I founded [Semfora](https://semfora.ai), a semantic code analysis engine that hands coding agents call graphs, module maps, and change blast radius through nine MCP tools.\n>\n> Semfora launches on [Product Hunt on Tuesday, July 28](https://www.producthunt.com/products/semfora?launch=semfora). Support there on launch day means a lot.\n\n---\n\n## Installation\n\nInstall this skill using [skills](https://github.com/vercel-labs/skills):\n\n```bash\n# GitHub shorthand\nnpx skills add Kadajett/agent-nestjs-skills\n\n# Install globally (available across all projects)\nnpx skills add Kadajett/agent-nestjs-skills --global\n\n# Install for specific agents\nnpx skills add Kadajett/agent-nestjs-skills -a claude-code -a cursor\n```\n\n### Supported Agents\n\n- Claude Code\n- OpenCode\n- Codex\n- Cursor\n- Antigravity\n- Roo Code\n\n## Structure\n\n- `skills/nestjs-best-practices/` - The installable skill (this is what `skills add` copies into your project)\n  - `SKILL.md` - Skill entry point and quick reference\n  - `rules/` - Individual rule files (one per rule)\n    - `_sections.md` - Section metadata (titles, impacts, descriptions)\n    - `_template.md` - Template for creating new rules\n    - `area-description.md` - Individual rule files\n- `scripts/` - Build scripts and utilities\n- `metadata.json` - Document metadata (version, organization, abstract)\n- __`AGENTS.md`__ - Compiled output (generated)\n\n## Getting Started\n\n1. Install dependencies:\n   ```bash\n   cd scripts && npm install\n   ```\n\n2. Build AGENTS.md from rules:\n   ```bash\n   npm run build\n   # or\n   ./scripts/build.sh\n   ```\n\n## Creating a New Rule\n\n1. Copy `skills/nestjs-best-practices/rules/_template.md` to `skills/nestjs-best-practices/rules/area-description.md`\n2. Choose the appropriate area prefix:\n   - `arch-` for Architecture (Section 1)\n   - `di-` for Dependency Injection (Section 2)\n   - `error-` for Error Handling (Section 3)\n   - `security-` for Security (Section 4)\n   - `perf-` for Performance (Section 5)\n   - `test-` for Testing (Section 6)\n   - `db-` for Database & ORM (Section 7)\n   - `api-` for API Design (Section 8)\n   - `micro-` for Microservices (Section 9)\n   - `devops-` for DevOps & Deployment (Section 10)\n3. Fill in the frontmatter and content\n4. Ensure you have clear examples with explanations\n5. Run the build script to regenerate AGENTS.md\n\n## Rule File Structure\n\nEach rule file should follow this structure:\n\n```markdown\n---\ntitle: Rule Title Here\nimpact: MEDIUM\nimpactDescription: Optional description\ntags: tag1, tag2, tag3\n---\n\n## Rule Title Here\n\nBrief explanation of the rule and why it matters.\n\n**Incorrect (description of what's wrong):**\n\n```typescript\n// Bad code example\n```\n\n**Correct (description of what's right):**\n\n```typescript\n// Good code example\n```\n\nOptional explanatory text after examples.\n\nReference: [NestJS Documentation](https://docs.nestjs.com)\n\n\n## File Naming Convention\n\n- Files starting with `_` are special (excluded from build)\n- Rule files: `area-description.md` (e.g., `arch-avoid-circular-deps.md`)\n- Section is automatically inferred from filename prefix\n- Rules are sorted alphabetically by title within each section\n- IDs (e.g., 1.1, 1.2) are auto-generated during build\n\n## Impact Levels\n\n| Level | Description |\n|-------|-------------|\n| CRITICAL | Violations cause runtime errors, security vulnerabilities, or architectural breakdown |\n| HIGH | Significant impact on reliability, security, or maintainability |\n| MEDIUM-HIGH | Notable impact on quality and developer experience |\n| MEDIUM | Moderate impact on code quality and best practices |\n| LOW-MEDIUM | Minor improvements for consistency and maintainability |\n\n## Scripts\n\n- `npm run build` (in scripts/) - Compile rules into AGENTS.md\n\n## Contributing\n\nWhen adding or modifying rules:\n\n1. Use the correct filename prefix for your section\n2. Follow the `_template.md` structure\n3. Include clear bad/good examples with explanations\n4. Add appropriate tags\n5. Run the build script to regenerate AGENTS.md\n6. Rules are automatically sorted by title - no need to manage numbers!\n\n## Documentation Website\n\nThe documentation website source code lives on the [`docs` branch](https://github.com/Kadajett/agent-nestjs-skills/tree/docs/website). This separation keeps the skill installation lightweight while maintaining the full documentation site.\n\nTo contribute to the website:\n\n```bash\ngit checkout docs\ncd website\nnpm install\nnpm run dev\n```\n\n## Acknowledgments\n\n- Inspired by the [Vercel React Best Practices](https://github.com/vercel-labs/agent-skills) skill structure\n- Compatible with [skills](https://github.com/vercel-labs/skills) for easy installation across coding agents\n\n## Compatible Agents\n\nThese NestJS skills work with:\n\n- [Claude Code](https://claude.ai/code) - Anthropic's official CLI\n- [AdaL](https://sylph.ai/adal) - Self-evolving AI coding agent with MCP support\n\n",
  "bytes": 5467,
  "sha": "642b99b241fa0ac61d6dc3dc2076a1881fe1f6b75bad2757e2c0002f7c64cdc7",
  "repo_slug": "kadajett/agent-nestjs-skills",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/skl_kadajett_agent_nestjs_skills_nestjs_best_1a408e5d/readme"
}