[IMPORTANT] Use
TaskCreateto break ALL work into small tasks BEFORE starting — including tasks for each file read. This prevents context loss from long files. For simple tasks, AI MUST ATTENTION ask user whether to skip.
Prerequisites:
<!-- SYNC:understand-code-first --><!-- /SYNC:understand-code-first --> <!-- SYNC:evidence-based-reasoning -->Understand Code First — HARD-GATE: Do NOT write, plan, or fix until you READ existing code.
- Search 3+ similar patterns (
grep/glob) — citefile:lineevidence- Read existing files in target area — understand structure, base classes, conventions
- Run
python .claude/scripts/code_graph trace <file> --direction both --jsonwhen.code-graph/graph.dbexists- Map dependencies via
connectionsorcallers_of— know what depends on your target- Write investigation to
.ai/workspace/analysis/for non-trivial tasks (3+ files)- Re-read analysis file before implementing — never work from memory alone
- NEVER invent new patterns when existing ones work — match exactly or document deviation
BLOCKED until:
- [ ]Read target files- [ ]Grep 3+ patterns- [ ]Graph trace (if graph.db exists)- [ ]Assumptions verified with evidence
<!-- /SYNC:evidence-based-reasoning -->Evidence-Based Reasoning — Speculation is FORBIDDEN. Every claim needs proof.
- Cite
file:line, grep results, or framework docs for EVERY claim- Declare confidence: >80% act freely, 60-80% verify first, <60% DO NOT recommend
- Cross-service validation required for architectural changes
- "I don't have enough evidence" is valid and expected output
BLOCKED until:
- [ ]Evidence file path (file:line)- [ ]Grep search performed- [ ]3+ similar patterns found- [ ]Confidence level statedForbidden without proof: "obviously", "I think", "should be", "probably", "this is because" If incomplete → output:
"Insufficient evidence. Verified: [...]. Not verified: [...]."
docs/project-reference/domain-entities-reference.md— Domain entity catalog, relationships, cross-service sync (read when task involves business entities/models) (content auto-injected by hook — check for [Injected: ...] header before reading)
Quick Summary
Goal: Implement new features or enhancements with comprehensive knowledge graph analysis and external memory management.
MANDATORY IMPORTANT MUST ATTENTION Plan ToDo Task to READ the following project-specific reference doc:
project-structure-reference.md-- project patterns and structureIf file not found, search for: project documentation, coding standards, architecture docs.
Workflow:
- Phase 1A: Discovery — Initialize analysis file, semantic/grep search, build file list
- Phase 1B: Knowledge Graph — Analyze files in batches of 10, document business context, dependencies
- Phase 1C: Overall Analysis — Comprehensive end-to-end workflow summary
- Phase 2: Plan Generation — Detailed implementation plan following project patterns
- Phase 3: Approval Gate — Present plan, await user confirmation
- Phase 4: Execution — Implement with safeguards, update external memory
Key Rules:
- External Memory: All analysis in
.ai/workspace/analysis/{task}.analysis.md - Evidence-Based: grep/search to verify assumptions, never assume service ownership
- High Priority: Domain Entities, Commands, Queries, EventHandlers, Controllers, BackgroundJobs, Consumers, Components MUST ATTENTION be analyzed
- Approval Required: STOP at Phase 3, do NOT proceed without user confirmation
- New Tech/Lib Gate: If implementation requires new packages/libraries not in project,
TaskCreateto evaluate top 3 alternatives → compare → recommend with confidence % →AskUserQuestionto confirm before installing
Be skeptical. Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence percentages (Idea should be more than 80%).
Skill Variant: Use this skill for interactive feature development where the user is actively engaged and can provide feedback. For investigating existing features without changes, use
feature-investigation.
Implementing a New Feature or Enhancement
You are to operate as an expert full-stack dotnet angular principal developer, software architecture to implement the new requirements in [task-description-or-task-info-file-path].
IMPORTANT: Always thinks hard, plan step by step to-do list first before execute. Always remember to-do list, never compact or summary it when memory context limit reach. Always preserve and carry your to-do list through every operation. Todo list must cover all phases, from start to end, include child tasks in each phases too, everything is flatted out into a long detailed todo list.
PHASE 1: EXTERNAL MEMORY-DRIVEN KNOWLEDGE MODEL CONSTRUCTION
Your sole objective is to build a structured knowledge model in a Markdown analysis file at .ai/workspace/analysis/[some-sort-semantic-name-of-this-task].analysis.md with systematic external memory management.
PHASE 1A: INITIALIZATION AND DISCOVERY
First, initialize the analysis file with a ## Metadata heading and under it is the full original prompt in a markdown box, like this: markdown [content of metadata in here] (MUST ATTENTION 5 chars for start and end of markdown box), then continue add the task description and full details of the Source Code Structure from docs/project-reference/backend-patterns-reference.md and docs/project-reference/frontend-patterns-reference.md into this ## Metadata section, with all content in ## Metadata section must be in a markdown box, like this: markdown [content of metadata in here] (MUST ATTENTION 6 chars for start and end of markdown box).
You MANDATORY IMPORTANT MUST ATTENTION also create the following top-level headings:
## Progress## Errors## Assumption Validations## Performance Metrics## Memory Management## Processed Files## File List## Knowledge Graph
Populate the ## Progress section with:
- Phase: 1
- Items Processed: 0
- Total Items: 0
- Current Operation: "initialization"
- Current Focus: "[original task summary]"
Next, do semantic search and grep search all keywords of the task to find all related files, prioritizing the discovery of core logic files like Domain Entities, Commands, Queries, Event Handlers, Controllers, Background Jobs, Consumers and front-end Components .ts.
CRITICAL: Save ALL file paths immediately as a numbered list under a ## File List heading.
After semantic search, perform additional targeted searches to ensure no critical infrastructure is missed:
grep searchwith patterns:.*EventHandler.*{EntityName}|{EntityName}.*EventHandlergrep searchwith patterns:.*BackgroundJob.*{EntityName}|{EntityName}.*BackgroundJobgrep searchwith patterns:.*Consumer.*{EntityName}|{EntityName}.*Consumergrep searchwith patterns:.*Service.*{EntityName}|{EntityName}.*Servicegrep searchwith patterns:.*Helper.*{EntityName}|{EntityName}.*Helper- All files (include pattern:
**/*.{cs,ts,html})
High Priority files MUST ATTENTION be analyzed: Domain Entities, Commands, Queries, Event Handlers, Controllers, Background Jobs, Consumers and front-end Components .ts.
Update the Total Items count in the ## Progress section.
PHASE 1B: KNOWLEDGE GRAPH CONSTRUCTION
IMPORTANT MUST ATTENTION DO WITH TODO LIST
Count total files in file list, split it into many batches of 10 files in priority order, each group insert in the current todo list new task for Analyze each batch of files group for all of files in file list.
CRITICAL: You must analyze all files in the file list identified as belonging to the highest IMPORTANT priority categories: Domain Entities, Commands, Queries, Event Handlers, Controllers, Background Jobs, Consumers and front-end Components .ts.
For each file in the ## File List (following the prioritized order if applicable), read and analyze it, add result into ## Knowledge Graph section. The heading of each analyzed file must have the item order number in heading. Each file analyzing result detail the following information:
Core Fields:
filePath: The full path to the filetype: The component's classificationarchitecturalPattern: The main design pattern usedcontent: A summary of purpose and logicsymbols: Important classes, interfaces, methodsdependencies: All imported modules orusingstatementsbusinessContext: Comprehensive detail all business logic, how it contributes to the requirementsreferenceFiles: Other files that use this file's symbolsrelevanceScore: A numerical score (1-10)evidenceLevel: "verified" or "inferred"uncertainties: Any aspects you are unsure aboutframeworkAbstractions: Any framework base classes usedserviceContext: Which microservice this file belongs todependencyInjection: Any DI registrationsgenericTypeParameters: Generic type relationships
For Consumer Files (CRITICAL):
messageBusAnalysis: When analyzing any Consumer file (files ending withConsumer.csthat extend the project message bus consumer base class), identify the*BusMessagetype used. Then perform a grep search across ALL services to find files that send/publish this message type. List all producer files and their service locations in themessageBusProducersfield. This analysis is crucial for understanding cross-service integration.
Targeted Aspect Analysis:
Populate specificAspects: key with deeper analysis:
- For Front-End items:
componentHierarchy,routeConfig,routeGuards,stateManagementStores,dataBindingPatterns,validationStrategies - For Back-End items:
authorizationPolicies,commands,queries,domainEntities,repositoryPatterns,businessRuleImplementations - For Consumer items:
messageBusMessage,messageBusProducers,crossServiceIntegration,handleLogicWorkflow
MANDATORY PROGRESS TRACKING: After processing every 10 files, you MANDATORY IMPORTANT MUST ATTENTION update Items Processed in ## Progress, run a CONTEXT_ANCHOR_CHECK, and explicitly state your progress. After each file, add its path to the ## Processed Files list.
PHASE 1C: OVERALL ANALYSIS
Write comprehensive overallAnalysis: summary showing:
- Complete end-to-end workflows discovered
- Key architectural patterns and relationships
- All business logic work flow: From front-end to back-end. (Example: Front-end Component => Controller Api Service => Command/Query => EventHandler => Others (Send email, producer bus message); From background job => event handler => others)
- Integration points and dependencies
PHASE 2: PLAN GENERATION
You MUST ATTENTION ensure all files are analyzed. Then read the ENTIRE Markdown analysis notes file. Then Generate a detailed implementation plan under a ## Plan heading. Your plan MANDATORY IMPORTANT MUST ATTENTION follow coding convention and patterns in docs/project-reference/backend-patterns-reference.md and docs/project-reference/frontend-patterns-reference.md, must ultrathink and think step-by-step todo list to make code changes, for each step must read these pattern references to follow code convention and patterns.
PHASE 2.1: VERIFY AND REFACTOR
First, verify and ensure your implementation plan that code patterns, solution must follow code patterns and example in these files:
docs/project-reference/backend-patterns-reference.mddocs/project-reference/frontend-patterns-reference.mddocs/project-reference/code-review-rules.md
Then verify and ensure your implementation plan satisfies clean code rules in docs/project-reference/code-review-rules.md
PHASE 3: APPROVAL GATE
You must present the plan for my explicit approval. DO NOT proceed without it.
Format for Approval Request:
## Implementation Plan Complete - Approval Required
### Summary
[Brief description of what will be implemented]
### Files to Create
1. `path/to/file.cs` - [purpose]
2. `path/to/file.ts` - [purpose]
### Files to Modify
1. `path/to/existing.cs:line` - [change description]
2. `path/to/existing.ts:line` - [change description]
### Implementation Order
1. [Step 1]
2. [Step 2]
3. [Step N]
### Risks & Considerations
- [Risk 1]
- [Risk 2]
**Awaiting approval to proceed with implementation.**
PHASE 4: EXECUTION
Once approved, execute the plan. Before creating or modifying ANY file, you MANDATORY IMPORTANT MUST ATTENTION first load its relevant entry from your ## Knowledge Graph. Use all EXECUTION_SAFEGUARDS. If any step fails, HALT, report the failure, and return to the APPROVAL GATE.
EXECUTION_SAFEGUARDS:
- Verify file exists before modification
- Read current content before editing
- Check for conflicts with existing code
- Validate changes against project patterns
SUCCESS VALIDATION
Before completion, verify the implementation against all requirements. Document this under a ## Success Validation heading and summarize changes in changelog.md.
Coding Guidelines
- Evidence-based approach: Use
grepand semantic search to verify assumptions - Service boundary discovery: Find endpoints before assuming responsibilities
- Never assume service ownership: Verify patterns with code evidence
- Project-patterns-first approach: Use established templates
- Cross-service sync: Use an event bus, not direct database access
- CQRS adherence: Follow established Command/Query patterns
- Clean architecture respect: Maintain proper layer dependencies
Architecture Reference
Backend Layers
Presentation: Controllers, API endpoints
Application: Commands, Queries, EventHandlers, DTOs
Domain: Entities, ValueObjects, Expressions
Infrastructure: Repositories, External services, Messaging
Key CQRS Flow
Controller → Command/Query → Handler → Repository → Entity
↓
EventHandler → Side Effects (notifications, external APIs)
Message Bus Flow
Service A: EntityEventProducer → message broker → Service B: Consumer
Frontend Flow
Component → Store.effect() → ApiService → Backend
↑ ↓
Template ← Store.state
Project Framework Patterns (see docs/project-reference/backend-patterns-reference.md)
// Command/Query handlers — search for: CqrsCommandApplicationHandler, CqrsQueryApplicationHandler
// Entity event handlers (for side effects) — search for: EntityEventApplicationHandler
// Message bus consumers — search for: MessageBusConsumer
// Repositories — search for: service-specific repository interface
Frontend Patterns
// Component hierarchy
project base component (search for: base component class) // Simple display
project store component base (search for: store component base class) // State management
project form component base (search for: form component base class) // Forms with validation
// Store pattern
project store base (search for: store base class)<TState>
effectSimple(() => api.call().pipe(tapResponse(...)))
See Also
.claude/docs/AI-DEBUGGING-PROTOCOL.md- Debugging protocoldocs/project-reference/backend-patterns-reference.md- Backend patterns and contextdocs/project-reference/frontend-patterns-reference.md- Frontend patterns and contextCLAUDE.md- Codebase instructionsfeature-investigationskill - For exploring existing features (READ-ONLY)
Related
planningcode-reviewtest-spec
Closing Reminders
- MANDATORY IMPORTANT MUST ATTENTION break work into small todo tasks using
TaskCreateBEFORE starting - MANDATORY IMPORTANT MUST ATTENTION search codebase for 3+ similar patterns before creating new code
- MANDATORY IMPORTANT MUST ATTENTION cite
file:lineevidence for every claim (confidence >80% to act) - MANDATORY IMPORTANT MUST ATTENTION add a final review todo task to verify work quality MANDATORY IMPORTANT MUST ATTENTION READ the following files before starting: <!-- SYNC:understand-code-first:reminder -->
- MANDATORY IMPORTANT MUST ATTENTION search 3+ existing patterns and read code BEFORE any modification. Run graph trace when graph.db exists. <!-- /SYNC:understand-code-first:reminder -->