-
Notifications
You must be signed in to change notification settings - Fork 11
Expand file tree
/
Copy path.cursorrules
More file actions
109 lines (84 loc) · 3.62 KB
/
.cursorrules
File metadata and controls
109 lines (84 loc) · 3.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# Cursor Rules for morphir-dotnet
This project uses **AGENTS.md** as the primary guidance file for all AI coding agents.
## 📚 Required Reading (in order)
1. **[AGENTS.md](./AGENTS.md)** - Primary guidance (START HERE)
- Sections 1-17: Universal guidance for all agents
- Section 18: Links to specialized topics
- Section 19: Resources and references
2. **[.agents/qa-testing.md](./.agents/qa-testing.md)** - For QA and testing tasks
- Test plans, playbooks, checklists
- BDD and unit testing guides
- Test scripts and automation
3. **[.agents/skills-reference.md](./.agents/skills-reference.md)** - For all specialized skills
- QA Tester, AOT Guru, Release Manager, Technical Writer
- Automation scripts and playbooks
- Decision trees and patterns
4. **[CLAUDE.md](./CLAUDE.md)** - For Claude Code-specific features (if using Claude)
- Also useful for understanding project patterns
## 🎯 Quick Reference
### Before Any Code Change
```bash
# 1. Format code
./build.sh Format
# 2. Run tests
./build.sh Test
# 3. Run full CI simulation
./build.sh DevWorkflow
```
### For Testing Tasks
- See `.agents/qa-testing.md` for comprehensive testing guidance
- Run smoke test: `dotnet fsi .claude/skills/qa-tester/smoke-test.fsx`
- Run regression test: `dotnet fsi .claude/skills/qa-tester/regression-test.fsx`
### For Documentation Tasks
- See `.claude/skills/technical-writer/SKILL.md` for documentation guidance
- Hugo troubleshooting, Docsy customization, Mermaid diagrams
- Link validation, style guide enforcement, API docs
### For New Features
- Follow TDD: RED → GREEN → REFACTOR (see AGENTS.md Section 9.1)
- Write BDD scenarios first (Reqnroll/Gherkin)
- Maintain >= 80% code coverage
## 🔧 Cursor-Specific Notes
When using Cursor with this project:
- **Agent Mode**: Best for multi-file changes
- **Ask Mode**: Best for questions and exploration
- **Manual Mode**: Best for precise, single-file edits
The guidance in AGENTS.md is tool-agnostic and works equally well with Cursor, Claude Code, GitHub Copilot, Windsurf, Aider, and other AI assistants.
## 📁 Project Structure
```
morphir-dotnet/
├── AGENTS.md # ← Start here
├── .agents/ # ← Specialized topics
│ ├── skills-reference.md # All skills documented
│ ├── qa-testing.md # QA guidance
│ └── README.md # Navigation
├── .claude/ # Claude Code-specific
│ └── skills/ # Skill implementations
│ ├── qa-tester/ # QA testing
│ ├── aot-guru/ # AOT optimization
│ ├── release-manager/ # Release lifecycle
│ └── technical-writer/ # Documentation
├── CLAUDE.md # Claude-specific features
├── src/ # Source code
├── tests/ # Tests
├── build/ # Nuke build system
└── docs/ # Documentation
```
## 🚀 Key Principles
From AGENTS.md:
- Immutability first
- ADTs: make illegal states unrepresentable
- Pure domain, effects at edges
- Strong testing: TUnit + Verify (snapshot testing) + Reqnroll
- TDD: Test first, then implement
## ⚠️ Escalate to Humans
Do NOT make these changes without human approval:
- Breaking public API changes
- IR/JSON compatibility changes
- Security/auth/crypto changes
- Destructive migrations
See AGENTS.md Section 2 for complete escalation rules.
---
**Navigation**:
- Questions about this project? Read [AGENTS.md](./AGENTS.md)
- QA or testing task? Read [.agents/qa-testing.md](./.agents/qa-testing.md)
- Using Claude Code? Also read [CLAUDE.md](./CLAUDE.md)