EasyPlatform feature
[Implementation] Use when the user asks to implement a new feature, enhancement, add functionality, build something new, or create new capabilities. Triggers on keywords like "implement", "add feature", "build", "create new", "develop", "enhancement".
git clone https://github.com/duc01226/EasyPlatform
T=$(mktemp -d) && git clone --depth=1 https://github.com/duc01226/EasyPlatform "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/feature" ~/.claude/skills/duc01226-easyplatform-feature && rm -rf "$T"
.claude/skills/feature/SKILL.md<!-- SYNC:critical-thinking-mindset -->[IMPORTANT] Use
to 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.TaskCreate
<!-- /SYNC:critical-thinking-mindset --> <!-- SYNC:ai-mistake-prevention -->Critical Thinking Mindset — Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence >80% to act. Anti-hallucination: Never present guess as fact — cite sources for every claim, admit uncertainty freely, self-check output for errors, cross-reference independently, stay skeptical of own confidence — certainty without evidence root of all hallucination.
<!-- /SYNC:ai-mistake-prevention -->AI Mistake Prevention — Failure modes to avoid on every task:
- Check downstream references before deleting. Deleting components causes documentation and code staleness cascades. Map all referencing files before removal.
- Verify AI-generated content against actual code. AI hallucinates APIs, class names, and method signatures. Always grep to confirm existence before documenting or referencing.
- Trace full dependency chain after edits. Changing a definition misses downstream variables and consumers derived from it. Always trace the full chain.
- Trace ALL code paths when verifying correctness. Confirming code exists is not confirming it executes. Always trace early exits, error branches, and conditional skips — not just happy path.
- When debugging, ask "whose responsibility?" before fixing. Trace whether bug is in caller (wrong data) or callee (wrong handling). Fix at responsible layer — never patch symptom site.
- Assume existing values are intentional — ask WHY before changing. Before changing any constant, limit, flag, or pattern: read comments, check git blame, examine surrounding code.
- Verify ALL affected outputs, not just the first. Changes touching multiple stacks require verifying EVERY output. One green check is not all green checks.
- Holistic-first debugging — resist nearest-attention trap. When investigating any failure, list EVERY precondition first (config, env vars, DB names, endpoints, DI registrations, data preconditions), then verify each against evidence before forming any code-layer hypothesis.
- Surgical changes — apply the diff test. Bug fix: every changed line must trace directly to the bug. Don't restyle or improve adjacent code. Enhancement task: implement improvements AND announce them explicitly.
- Surface ambiguity before coding — don't pick silently. If request has multiple interpretations, present each with effort estimate and ask. Never assume all-records, file-based, or more complex path.
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) — citeglobevidencefile:line- Read existing files in target area — understand structure, base classes, conventions
- Run
whenpython .claude/scripts/code_graph trace <file> --direction both --jsonexists.code-graph/graph.db- Map dependencies via
orconnections— know what depends on your targetcallers_of- Write investigation to
for non-trivial tasks (3+ files).ai/workspace/analysis/- 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
, grep results, or framework docs for EVERY claimfile:line- 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:lineGrep search performed- [ ]3+ similar patterns found- [ ]Confidence level stated- [ ]Forbidden without proof: "obviously", "I think", "should be", "probably", "this is because" If incomplete → output:
"Insufficient evidence. Verified: [...]. Not verified: [...]."
— 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)docs/project-reference/domain-entities-reference.md
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 patterns and structureproject-structure-reference.mdIf 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,
to evaluate top 3 alternatives → compare → recommend with confidence % →TaskCreate
to confirm before installingAskUserQuestion
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:
with patterns:grep search.*EventHandler.*{EntityName}|{EntityName}.*EventHandler
with patterns:grep search.*BackgroundJob.*{EntityName}|{EntityName}.*BackgroundJob
with patterns:grep search.*Consumer.*{EntityName}|{EntityName}.*Consumer
with patterns:grep search.*Service.*{EntityName}|{EntityName}.*Service
with patterns:grep search.*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:
: The full path to the filefilePath
: The component's classificationtype
: The main design pattern usedarchitecturalPattern
: A summary of purpose and logiccontent
: Important classes, interfaces, methodssymbols
: All imported modules ordependencies
statementsusing
: Comprehensive detail all business logic, how it contributes to the requirementsbusinessContext
: Other files that use this file's symbolsreferenceFiles
: A numerical score (1-10)relevanceScore
: "verified" or "inferred"evidenceLevel
: Any aspects you are unsure aboutuncertainties
: Any framework base classes usedframeworkAbstractions
: Which microservice this file belongs toserviceContext
: Any DI registrationsdependencyInjection
: Generic type relationshipsgenericTypeParameters
For Consumer Files (CRITICAL):
: When analyzing any Consumer file (files ending withmessageBusAnalysis
that extend the project message bus consumer base class), identify theConsumer.cs
type 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 the*BusMessage
field. This analysis is crucial for understanding cross-service integration.messageBusProducers
Targeted Aspect Analysis: Populate
specificAspects: key with deeper analysis:
- For Front-End items:
,componentHierarchy
,routeConfig
,routeGuards
,stateManagementStores
,dataBindingPatternsvalidationStrategies - For Back-End items:
,authorizationPolicies
,commands
,queries
,domainEntities
,repositoryPatternsbusinessRuleImplementations - For Consumer items:
,messageBusMessage
,messageBusProducers
,crossServiceIntegrationhandleLogicWorkflow
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
and semantic search to verify assumptionsgrep - 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
- Debugging protocol.claude/docs/AI-DEBUGGING-PROTOCOL.md
- Backend patterns and contextdocs/project-reference/backend-patterns-reference.md
- Frontend patterns and contextdocs/project-reference/frontend-patterns-reference.md
- Codebase instructionsCLAUDE.md
skill - For exploring existing features (READ-ONLY)feature-investigation
Related
planningcode-reviewtest-spec
Closing Reminders
- MANDATORY IMPORTANT MUST ATTENTION break work into small todo tasks using
BEFORE startingTaskCreate - MANDATORY IMPORTANT MUST ATTENTION search codebase for 3+ similar patterns before creating new code
- MANDATORY IMPORTANT MUST ATTENTION cite
evidence for every claim (confidence >80% to act)file:line - 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 --> <!-- SYNC:critical-thinking-mindset:reminder -->
- MUST ATTENTION apply critical thinking — every claim needs traced proof, confidence >80% to act. Anti-hallucination: never present guess as fact. <!-- /SYNC:critical-thinking-mindset:reminder --> <!-- SYNC:ai-mistake-prevention:reminder -->
- MUST ATTENTION apply AI mistake prevention — holistic-first debugging, fix at responsible layer, surface ambiguity before coding, re-read files after compaction. <!-- /SYNC:ai-mistake-prevention:reminder -->