Current Task: $ARGUMENTS
APEX Methodology Skill
Analyze → Plan → Execute → eLicit → eXamine
Complete development workflow for features, fixes, and refactoring.
Step 0: Initialize Tracking (MANDATORY FIRST ACTION)
BEFORE anything else, run this command to initialize APEX tracking:
mkdir -p .claude/apex/docs && cat > .claude/apex/task.json << 'INITEOF' { "current_task": "1", "created_at": "'"$(date -u +"%Y-%m-%dT%H:%M:%SZ")"'", "tasks": { "1": { "status": "in_progress", "started_at": "'"$(date -u +"%Y-%m-%dT%H:%M:%SZ")"'", "doc_consulted": {} } } } INITEOF echo "✅ APEX tracking initialized in $(pwd)/.claude/apex/"
This creates:
-
.claude/apex/task.json
-
Tracks documentation consultation status
-
.claude/apex/docs/
-
Stores consulted documentation summaries
The PreToolUse hooks will BLOCK Write/Edit until documentation is consulted.
Workflow Overview
┌─────────────────────────────────────────────────────────────────┐ │ APEX WORKFLOW │ ├─────────────────────────────────────────────────────────────────┤ │ 00-init-branch → Create feature branch │ │ 00.5-brainstorm → Design-first questioning (B) ← NEW │ │ 01-analyze-code → Understand codebase (A) │ │ 02-features-plan → Plan implementation (P) │ │ 03-execution → Write code with TDD (E) ← UPDATED │ │ 03.5-elicit → Expert self-review (L) │ │ 03.7-verification → Functional resolution check (V) ← NEW │ │ 04-validation → Verify quality (X) │ │ 05-review → Self-review │ │ 06-fix-issue → Handle issues │ │ 07-add-test → Write tests (TDD cycle) │ │ 08-check-test → Run tests │ │ 09-create-pr → Create Pull Request │ └─────────────────────────────────────────────────────────────────┘
Skills Integration
Phase Skill Invocation
00.5 brainstorming
Questions → alternatives → design doc → approval
03 tdd
RED (test) → GREEN (code) → REFACTOR cycle
03.7 verification
Re-read request → check criteria → confirm resolution
Phase References
Phase File Purpose
00 references/00-init-branch.md
Create feature branch
01 references/01-analyze-code.md
Explore + Research (APEX A)
02 references/02-features-plan.md
TaskCreate planning (APEX P)
03 references/03-execution.md
Implementation (APEX E)
03.5 references/03.5-elicit.md
Expert self-review (APEX L) ← NEW
04 references/04-validation.md
sniper validation (APEX X)
05 references/05-review.md
Self-review checklist
06 references/06-fix-issue.md
Fix validation/review issues
07 references/07-add-test.md
Write unit/integration tests
08 references/08-check-test.md
Run and verify tests
09 references/09-create-pr.md
Create and merge PR
Quick Start
Standard Feature Flow
- 00-init-branch → git checkout -b feature/xxx
- 00.5-brainstorm → Ask questions, propose alternatives, get design approval
- 01-analyze-code → explore-codebase + research-expert
- 02-features-plan → TaskCreate task breakdown
- 03-execution → TDD: write test FIRST, then implement (files <100 lines)
- 03.5-elicit → Expert self-review (elicitation techniques)
- 03.7-verification → Verify functional resolution against original request
- 04-validation → sniper agent (code quality)
- 05-review → Self-review
- 09-create-pr → gh pr create
Bug Fix Flow
- 00-init-branch → git checkout -b fix/xxx
- 01-analyze-code → Understand bug context
- 07-add-test → TDD: write failing test FIRST (RED)
- 03-execution → Fix the bug (GREEN)
- 08-check-test → Verify test passes + no regressions
- 03.7-verification → Verify original bug is functionally resolved
- 04-validation → sniper agent
- 09-create-pr → gh pr create
Hotfix Flow
- 00-init-branch → git checkout -b hotfix/xxx
- 03-execution → Minimal fix only
- 03.7-verification → Verify fix resolves the issue
- 04-validation → sniper agent
- 08-check-test → Run tests
- 09-create-pr → Urgent merge
Core Rules
File Size (ABSOLUTE)
🚨 STOP at 90 lines → Split immediately ❌ NEVER exceed 100 lines 📊 Target: 50-80 lines per file
Interface Location
✅ src/interfaces/ (global) ✅ src/types/ (type definitions) ✅ Contracts/ (PHP/Laravel) ❌ NEVER in component files
Agent Usage
01-analyze: explore-codebase + research-expert (PARALLEL) 04-validate: sniper (MANDATORY after ANY change)
APEX Phases Explained
A - Analyze
ALWAYS run 2 agents in parallel:
-
explore-codebase → Map project structure → Find existing patterns → Identify change locations
-
research-expert → Verify official documentation → Confirm API methods → Check best practices
P - Plan
ALWAYS use TaskCreate:
- Break down into tasks
- Each task <100 lines
- Plan file splits FIRST
- Map dependencies (addBlockedBy)
E - Execute (with TDD)
FOLLOW plan strictly with TDD cycle:
- Create interfaces FIRST
- Write failing test (RED) → verify it fails
- Write minimal code (GREEN) → verify it passes
- Refactor → keep tests green
- Monitor file sizes (<100 lines)
- Write JSDoc/comments
- Atomic commits per task
See tdd skill for detailed RED-GREEN-REFACTOR rules.
V - Verify (Functional Resolution)
BEFORE sniper, verify functional correctness:
- Re-read original request
- List all acceptance criteria
- Verify each with evidence
- Check for regressions
- Confirm: "Problem is RESOLVED"
See verification skill for detailed checklist.
X - eXamine
ALWAYS run sniper:
6-phase validation:
- explore-codebase
- research-expert
- grep usages
- run linters
- apply fixes
- ZERO errors
Branching Strategy
Branch Naming
feature/ISSUE-123-short-description fix/ISSUE-456-bug-name hotfix/ISSUE-789-urgent-fix refactor/ISSUE-321-cleanup docs/ISSUE-654-readme test/ISSUE-987-coverage
Best Practices (2025)
✅ Short-lived branches (1-3 days) ✅ Small, focused changes ✅ Sync frequently with main ✅ Squash and merge
Commit Convention
Format
<type>(<scope>): <description>
Types: feat, fix, refactor, docs, test, chore Scope: component/feature name Description: imperative mood, <50 chars
Examples
feat(auth): add JWT authentication fix(cart): resolve quantity validation refactor(api): extract fetch utilities test(auth): add login component tests
Validation Requirements
Before PR
□ sniper passes (ZERO errors) □ All tests pass □ Build succeeds □ Self-review complete □ No console.logs □ No TODO unaddressed
Code Quality
□ Files <100 lines □ Interfaces in correct location □ JSDoc on all exports □ No any types □ Error handling complete
PR Guidelines
Title Format
feat(auth): add social login with Google fix(cart): resolve quantity update bug refactor(api): extract fetch utilities
Description Must Include
□ Summary (1-3 bullets) □ Changes (added/modified/removed) □ Related issues (Closes #xxx) □ Test plan (checkboxes) □ Screenshots (if UI changes)
Flow Diagram
START
│
▼
┌───────────────┐
│ 00-init-branch│
└───────┬───────┘
│
▼
┌───────────────┐
│ 00.5-brain- │ ← brainstorming skill (NEW)
│ storm │ questions → design → approval
└───────┬───────┘
│
▼
┌───────────────┐
│ 01-analyze │ ← explore + research
└───────┬───────┘
│
▼
┌───────────────┐
│ 02-plan │ ← TaskCreate
└───────┬───────┘
│
▼
┌───────────────┐
│ 03-execute │ ← TDD: test first (RED→GREEN)
└───────┬───────┘
│
▼
┌───────────────┐
│ 03.5-elicit │ ← expert self-review
└───────┬───────┘
│
▼
┌───────────────┐
│ 03.7-verify │ ← verification skill (NEW)
└───────┬───────┘ functional resolution check
│
▼
┌───────────────┐
│ 04-validate │ ← sniper (code quality)
└───────┬───────┘
│
▼
┌───────────────┐
│ 05-review │
└───────┬───────┘
│
▼
┌───────────────┐
│ 09-create-pr │
└───────┬───────┘
│
▼
DONE
NEVER
❌ Skip explore-codebase or research-expert ❌ Assume API syntax without verification ❌ Create files >100 lines ❌ Put interfaces in component files ❌ Skip sniper after changes ❌ Merge without tests ❌ Large PRs (>400 lines)
Reference Files
All detailed guides in references/ directory:
references/ ├── 00-init-branch.md # Branch creation ├── 01-analyze-code.md # Code analysis ├── 02-features-plan.md # Planning ├── 03-execution.md # Implementation ├── 04-validation.md # Validation ├── 05-review.md # Self-review ├── 06-fix-issue.md # Issue fixes ├── 07-add-test.md # Test writing ├── 08-check-test.md # Test running └── 09-create-pr.md # PR creation
Language-Specific References
Framework-specific APEX methodology guides:
Framework Directory Tools
Laravel references/laravel/
Pest, Larastan, Pint
Next.js references/nextjs/
Vitest, Playwright, ESLint
React references/react/
Vitest, Testing Library, Biome
Swift references/swift/
XCTest, SwiftLint, swift-format
Auto-Detection
Project Type → References Used ───────────────────────────────────── composer.json → references/laravel/ next.config.* → references/nextjs/ vite.config.* → references/react/ Package.swift → references/swift/ Default → references/ (generic)
Structure (Each Framework)
references/[framework]/ ├── 00-init-branch.md # Framework-specific branching ├── 01-analyze-code.md # Framework exploration tools ├── 02-features-plan.md # Planning patterns ├── 03-execution.md # SOLID implementation ├── 04-validation.md # Linters and formatters ├── 05-review.md # Framework checklist ├── 06-fix-issue.md # Common fixes ├── 07-add-test.md # Testing patterns ├── 08-check-test.md # Test commands └── 09-create-pr.md # PR template