From d56d17854d91b7d2286406f19a22c10ac514f7c8 Mon Sep 17 00:00:00 2001 From: Harivansh Rathi Date: Wed, 14 Jan 2026 13:58:05 -0800 Subject: [PATCH] implement --- skills/implement/SKILL.md | 148 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 148 insertions(+) create mode 100644 skills/implement/SKILL.md diff --git a/skills/implement/SKILL.md b/skills/implement/SKILL.md new file mode 100644 index 0000000..ae03247 --- /dev/null +++ b/skills/implement/SKILL.md @@ -0,0 +1,148 @@ +--- +name: implement +description: Implement iOS/SwiftUI features from eval specs. Use when building iOS features. Triggers on "/implement", "build ios feature", or "implement [feature] for ios". +allowed-tools: Read, Write, Edit, Bash, Grep, Glob, Task +--- + +# Implement Skill (iOS/SwiftUI) + +I implement iOS features from eval specs. I build - I do NOT verify. + +## Critical Rule + +**NEVER test or verify my own work.** After implementation, I spawn the `eval-verifier` agent to check my work. This separation ensures honest verification. + +## Workflow + +``` +Read eval spec -> Implement -> Spawn eval-verifier -> Report results +``` + +### Step 1: Find Eval Spec + +Look for the eval in `.claude/evals/.yaml` + +If no eval exists, tell user to create one first: +``` +No eval spec found for "". +Run: /eval +to create the building and verification spec first. +``` + +### Step 2: Read Building Spec + +Extract from eval YAML: +- `building_spec.description` - what to build +- `building_spec.requirements` - specific requirements +- `building_spec.constraints` - rules to follow +- `building_spec.files` - suggested file paths + +### Step 3: Reference SwiftUI Guide + +Before implementing, check `.claude/axiom-skills-guide.md` for: +- SwiftUI patterns and conventions +- Project-specific iOS guidelines +- Architecture preferences (MVVM, etc.) + +If guide doesn't exist, use standard SwiftUI best practices. + +### Step 4: Implement + +Build the feature following: +1. Requirements from eval spec +2. Constraints from eval spec +3. SwiftUI best practices +4. Project conventions + +**iOS/SwiftUI Guidelines:** +- Use `@State`, `@Binding`, `@ObservedObject` appropriately +- Prefer `async/await` over completion handlers +- Use `@MainActor` for UI updates +- Keep Views small and composable +- Extract reusable components +- Use proper error handling with `Result` or `throws` + +### Step 5: Spawn Verifier + +After implementation complete, spawn the eval-verifier agent: + +``` +Task tool call: + subagent_type: general-purpose + prompt: | + You are the eval-verifier agent. Read the agent instructions from: + agents/eval-verifier.md + + Then verify the implementation against: + .claude/evals/.yaml + + Run all verification checks, collect evidence, and report pass/fail. +``` + +### Step 6: Handle Results + +**If verifier passes:** +``` +Implementation complete: +All checks passed. + +Files created: + + path/to/file.swift + +Files modified: + ~ path/to/existing.swift +``` + +**If verifier fails:** +Read failure feedback, fix specific issues, re-spawn verifier. +Max 5 iterations. + +## Output Format + +``` +Implementing: +--- + +[Reading eval spec...] + +Building Spec: + - Requirement 1 + - Requirement 2 + +[Implementing...] + +Files Created: + + Sources/Features/Login/LoginView.swift + + Sources/Features/Login/LoginViewModel.swift + +Files Modified: + ~ Sources/App/ContentView.swift + +[Spawning verifier...] + +--- +Verification Results: + [verifier output here] +``` + +## Example + +User: `/implement auth` + +1. Read `.claude/evals/auth.yaml` +2. Check `.claude/axiom-skills-guide.md` for iOS patterns +3. Implement: + - `LoginView.swift` - SwiftUI form + - `LoginViewModel.swift` - business logic + - `AuthService.swift` - API calls +4. Spawn eval-verifier +5. Report results + +## What I Do NOT Do + +- Skip reading the eval spec +- Verify my own work (verifier does this) +- Collect evidence (verifier does this) +- Generate tests (verifier does this) +- Add features not in the spec +- Assume verification passed without running verifier