| name | claude-specific |
| description | Claude Code specific instructions for working with this CDK monorepo. General guidance on code generation, refactoring, and feature additions. |
Claude-Specific Instructions
Overview
This document provides Claude-specific instructions for working with this CDK constructs library monorepo.
Project Context
When working with Claude, be aware of:
- Monorepo Structure: This is a workspace with multiple packages
- Build Order: Packages must be built in dependency order
- Workspace Dependencies: Use
"*" for internal package references
- No Circular Dependencies: Always check dependency structure
Key Guidelines
Code Generation
When generating code:
- Always follow import conventions (explicit named imports)
- Include JSDoc comments for all public APIs
- Use proper naming conventions
- Follow construct patterns from existing code
- Ensure environment-aware configurations
Refactoring
When refactoring:
- Check dependency order in
tsconfig.build.json
- Verify no circular dependencies are created
- Update all affected packages
- Run
npm run build:workspaces to verify
- Run
npm run lint to check for issues
Adding Features
When adding new features:
- Determine if it belongs in root or a subpackage
- Follow the subpackage structure if creating new package
- Add proper tests and documentation
- Update relevant documentation files
- Ensure proper exports from index.ts
Available Skills
Claude Code has access to specialized skills for this project:
repository-structure - Project structure and architecture
import-conventions - Import rules and ordering
naming-conventions - Naming standards
construct-development - Construct patterns and best practices
package-management - Package configuration and dependencies
build-and-deployment - Build process and commands
testing - Testing requirements and examples
common-tasks - Step-by-step guides for common tasks
formatting-standards - Code formatting rules
Important Reminders
- New constructs go in subpackages, not the root package
- Always use explicit imports, never wildcards
- Match CDK versions across all packages
- Include environment in resource names to prevent collisions
- Gate expensive features to production environments
- Export everything from
src/index.ts
- Create test files for all constructs
- Add JSDoc comments to all public APIs
- Run lint and format before committing
- Follow dependency order when adding packages