Skip to content

Commit f549ca3

Browse files
committed
chore: add Cursor/Claude Code configuration
Added based on Feb 2026 Cursor New Features Session recommendations: - .cursorrules: Simple one-liner rules (GPG signing, commit format, testing) - .cursorignore: Exclude large files from AI context (improves performance) - .claude/: Folder structure for AI working files (gitignored) - README.md: Documentation for folder structure - context/cursor-claude-best-practices.md: Best practices from meetings Key improvements: - Better AI context management (excludes models, screenshots, lock files) - Clear separation: rules (simple) vs skills (complex workflows) - PM-thinking approach from Amit meeting integrated - Follows Cursor's rules → skills migration path Related: W-21315032
1 parent 065c469 commit f549ca3

2 files changed

Lines changed: 108 additions & 0 deletions

File tree

.cursorignore

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# Cursor Ignore - Exclude from AI context for better performance
2+
3+
# Build outputs
4+
dist/
5+
coverage/
6+
demo/vendor.js
7+
8+
# Dependencies
9+
node_modules/
10+
11+
# Generated AMF models (except specific test models)
12+
demo/models/*.json
13+
demo/models/flattened/*.json
14+
!demo/models/jldAsync26.json
15+
!demo/models/avro.json
16+
!demo/models/avro2.json
17+
!demo/models/grpc-test.json
18+
!demo/models/grpc-test-compact.json
19+
!demo/models/product-order-deep-allof.json
20+
21+
# IDE configs (keep lightweight)
22+
.vscode/*
23+
!.vscode/settings.json
24+
.idea/
25+
26+
# OS files
27+
.DS_Store
28+
Thumbs.db
29+
*.stackdump
30+
31+
# Git internals
32+
.git/
33+
34+
# Large log files
35+
*.log
36+
npm-debug.log*
37+
38+
# Test screenshots (visual regression baselines - too many files)
39+
test/visual/screenshots/
40+
41+
# Package lock files (too large, let Cursor use package.json)
42+
package-lock.json
43+
44+
# Temporary files
45+
*.tmp
46+
*.swp
47+
*~

.cursorrules

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Cursor Rules for api-console v6
2+
3+
## Repository Context
4+
- This is api-console v6, built with LitElement and Web Components
5+
- Open source project (CPAL-1.0 license)
6+
- Part of MuleSoft's API Console ecosystem
7+
8+
## Git & Commit Rules
9+
- NEVER commit directly to master/main (ALWAYS create feature branch first)
10+
- ALWAYS run `mulesoft-git` before committing (GPG sign with alexperez@mulesoft.com)
11+
- Use Conventional Commits format: `<type>(<scope>): <subject>`
12+
- Valid types: feat, fix, docs, style, refactor, test, chore, perf, ci, build, revert
13+
14+
## Branch Naming Conventions
15+
- Component fixes: `fix/W-XXXXXXXX-description`
16+
- Features: `feat/W-XXXXXXXX-description` or `feat/description`
17+
- Releases: `build/X.X.X` (api-console only)
18+
- Chores: `chore/description`
19+
20+
## Code Style
21+
- Use @web/test-runner for testing (NOT Jest - poor Shadow DOM support)
22+
- Use AmfHelperMixin utilities for AMF queries (NOT direct JSON access)
23+
- Custom events for component communication (NOT direct method calls)
24+
- Shadow DOM with CSS custom properties for theming
25+
- No `any` types in TypeScript
26+
- Prefer Edit tool over Write for existing files
27+
28+
## Testing
29+
- Write tests immediately after implementing feature (TDD approach)
30+
- Run `npm test` before creating PR (must pass)
31+
- Update visual regression baselines when UI changes intentionally: `npm run test:visual:update`
32+
33+
## Build & Verification
34+
- DO NOT run build after every small change (saves tokens, avoids loops)
35+
- Order: Implement → Tests → Build → Fix compilation errors
36+
- Only build when: user asks explicitly, before PR, or after major type changes
37+
38+
## AMF Model Architecture
39+
- API Console does NOT parse API specs directly (requires AMF model)
40+
- Models are JSON-LD format (AMF v4.0+)
41+
- Generate models: `npm run build:models`
42+
- Load via `amf` property or `modelLocation` (URL to JSON)
43+
44+
## Common Pitfalls
45+
- Don't parse API files directly (use AMF models)
46+
- Don't import CodeMirror/crypto as ES modules (use vendor.js)
47+
- Don't expose Entities in API responses (use DTOs)
48+
- Don't put business logic in Controllers (use Service layer)
49+
- Don't modify AMF model structure (external standard)
50+
51+
## Quick Commands
52+
- `npm run prepare` - Build vendor.js + generate AMF models (after clone)
53+
- `npm start` - Dev server
54+
- `npm test` - Run all tests
55+
- `npm run build:vendor` - Rebuild non-ES6 dependencies
56+
57+
## Related Documentation
58+
- CLAUDE.md - Full project context
59+
- docs/team/patterns/ - Architectural decisions
60+
- docs/team/runbooks/ - Operational procedures
61+
- docs/team/onboarding/ - New team member guide

0 commit comments

Comments
 (0)