cfn-vote-implement

MUST BE USED after cfn-dry-review or cfn-alpha-launch:manifest produces a manifest. Also the verification phase of /cfn-loop-task. Do not manually implement code review suggestions - always route through this skill. 3-agent specialized voting. Unanimous (3/3) auto-implemented with TDD. 2/3 routed to product-owner agent. 1/3 surfaced to user via AskUserQuestion (batched 4 per call, at end).

14 stars

Best use case

cfn-vote-implement is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

MUST BE USED after cfn-dry-review or cfn-alpha-launch:manifest produces a manifest. Also the verification phase of /cfn-loop-task. Do not manually implement code review suggestions - always route through this skill. 3-agent specialized voting. Unanimous (3/3) auto-implemented with TDD. 2/3 routed to product-owner agent. 1/3 surfaced to user via AskUserQuestion (batched 4 per call, at end).

Teams using cfn-vote-implement should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/cfn-vote-implement/SKILL.md --create-dirs "https://raw.githubusercontent.com/masharratt/claude-flow-novice/main/.claude/skills/cfn-vote-implement/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/cfn-vote-implement/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How cfn-vote-implement Compares

Feature / Agentcfn-vote-implementStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

MUST BE USED after cfn-dry-review or cfn-alpha-launch:manifest produces a manifest. Also the verification phase of /cfn-loop-task. Do not manually implement code review suggestions - always route through this skill. 3-agent specialized voting. Unanimous (3/3) auto-implemented with TDD. 2/3 routed to product-owner agent. 1/3 surfaced to user via AskUserQuestion (batched 4 per call, at end).

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# CFN Vote & Implement

**Purpose:** Three specialized agents independently review a manifest of code suggestions, vote on each, then auto-implement unanimous items with TDD and surface split decisions to the user.

## Inputs

- `$1`: Path to a review manifest JSON, or `latest` to use the most recent manifest in `<project-root>/.cfn-cache/manifests/`
- `--dry-run`: Show what would happen without implementing anything

### Accepted Manifest Sources

Any skill emitting the shared manifest schema works. Manifests live under
`<project-root>/.cfn-cache/manifests/` (auto-gitignored). Discovery glob for `latest`:
```
.cfn-cache/manifests/cfn-dry-review-*.json          # cfn-dry-review
.cfn-cache/manifests/cfn-review-alpha-*.json         # cfn-alpha-launch (v1)
.cfn-cache/manifests/cfn-review-alpha-v2-*.json      # cfn-alpha-launch-v2
```
Pick the most recent by mtime. Manifest's `source` field (if present) records the producing skill.

Filenames include nanosecond-precision timestamps to prevent collisions on rapid-fire runs.
Legacy `/tmp/cfn-*.json` paths are checked only as a fallback during transition.

## Outputs

- Implementations (with TDD) for unanimously approved suggestions
- User decisions requested for 1-2 vote items (one question per item)
- Summary report to stdout

## Voting Agents (Specialized Lenses)

| Agent | Lens | Evaluates |
|-------|------|-----------|
| **Correctness Agent** (code-reviewer) | Risk and correctness | Will this change break anything? Is the suggested approach technically sound? Are there edge cases or regressions? |
| **Consistency Agent** (code-standards-reviewer) | Codebase alignment | Does this follow existing patterns? Would it create a second way of doing something? Does the abstraction match the project's style? |
| **Feasibility Agent** (architect) | Implementation feasibility | Can this be done cleanly? Are there hidden dependencies? Does it fit the existing architecture? What's the real effort? |

## Voting Protocol

1. All 3 agents receive the full manifest simultaneously (parallel)
2. Each agent independently votes YES/NO per suggestion with 1-2 sentence reasoning
3. Votes are collected and tallied per suggestion:

| Votes (YES) | Action | Timing |
|-------------|--------|--------|
| **3/3** | Auto-implement via subagent with full TDD | Inline during vote pass |
| **2/3** | Spawn `product-owner` agent (GOAP) to decide IMPLEMENT / DEFER / REJECT | Inline during vote pass |
| **1/3** | Queue for batched user decision | Surfaced at end (after all 3/3 and 2/3 resolved) |
| **0/3** | Skip silently | n/a |

## Implementation Protocol (3/3 items)

Implemented sequentially (not parallel) since earlier changes affect later ones:

1. Write failing test that captures the improvement
2. Implement the change (minimal diff)
3. Verify test passes
4. Run existing test suite to catch regressions
5. Move to next item

## 2/3 Routing: Product Owner Agent

Spawn the `product-owner` agent (GOAP planner) one item at a time. Pass:

- The suggestion text + location
- The two YES votes (lens + reasoning)
- The one NO vote (lens + reasoning)
- Current project scope and any active epic context

Product Owner returns one of:

| Decision | Action |
|----------|--------|
| `IMPLEMENT` | Apply now via TDD protocol (same as 3/3) |
| `DEFER` | Log to backlog (`docs/BACKLOG.md`), do not implement |
| `REJECT` | Skip; mark manifest item `status: rejected` with PO reasoning |

The Product Owner is the ONLY decision maker for 2/3 items. Do not surface 2/3 items to the user.

## 1/3 Routing: Batched User Prompts

1/3 items accumulate during the vote pass. After every 3/3 and 2/3 item is resolved, surface them to the user.

**Batch protocol:**
- 4 questions per `AskUserQuestion` call (the tool's maximum)
- One decision per question
- Options per question: `Apply`, `Skip`, `Defer to backlog`
- Question body lists all three vote reasonings so the user understands the split

**Example question (one of 4 in a batch):**

```
Suggestion S007: Extract shared validation logic from auth.ts and billing.ts

Votes: 1/3 (Correctness: YES, Consistency: NO, Feasibility: NO)

Reasoning:
- Correctness (YES): "Both files duplicate the same email regex and null checks. Extracting prevents future drift."
- Consistency (NO): "Project convention prefers in-file validation; a shared module would be the only one of its kind."
- Feasibility (NO): "The two validators have subtly different error return types. Unifying requires a breaking change to billing's error contract."

Apply / Skip / Defer to backlog?
```

After each batch returns:
- `Apply` items: implement via TDD protocol immediately
- `Skip` items: mark `status: skipped`
- `Defer to backlog` items: append to `docs/BACKLOG.md`

Continue batching until 1/3 queue is empty.

## Manifest Resumability

The manifest tracks processing state. If interrupted:
- Already-implemented items are marked `"status": "implemented"`
- Already-skipped items are marked `"status": "skipped"`
- Re-running picks up from where it left off

## Usage

```bash
# Vote on the latest review
/cfn-vote-implement latest

# Vote on a specific manifest
/cfn-vote-implement .cfn-cache/manifests/cfn-dry-review-1712345678000000000.json

# Preview without implementing
/cfn-vote-implement latest --dry-run
```

## Related

- `/cfn-dry-review` - generates the DRY/modularity review manifest
- `/cfn-alpha-launch:manifest` - emits alpha-readiness fix-list as manifest
- `/cfn-alpha-launch-v2:manifest` - emits priority-group fix-list as manifest

Related Skills

supabase-schema-sync

14
from masharratt/claude-flow-novice

Introspects Supabase DB after migrations and updates project db-query skill with current schema. Run after any migration to keep agent context accurate.

commit

14
from masharratt/claude-flow-novice

Stage, commit, and push changes using a background github-commit-agent. Accepts optional args for message override or push control.

cfn-utilities

14
from masharratt/claude-flow-novice

Reusable bash utility functions for CFN Loop - logging, error handling, retry, file operations. Use when you need structured logging, atomic file operations, retry logic with exponential backoff, or standardized error handling in bash scripts.

CFN Test Runner Skill

14
from masharratt/claude-flow-novice

**Version:** 1.0.0

cfn-test-framework

14
from masharratt/claude-flow-novice

Test execution, running, and webapp testing for CFN

cfn-task-planning

14
from masharratt/claude-flow-novice

Classify tasks, initialize structured configs with scope boundaries, decompose complex tasks

Specialist Injection Skill

14
from masharratt/claude-flow-novice

## Purpose

!/bin/bash

14
from masharratt/claude-flow-novice

# cfn-task-intelligence.sh

Task Complexity Estimator

14
from masharratt/claude-flow-novice

**Version:** 1.0.0

task-classifier

14
from masharratt/claude-flow-novice

Analyzes task descriptions and classifies them into categories for agent selection

cfn-task-intelligence

14
from masharratt/claude-flow-novice

Classify tasks (type/domain), estimate complexity/iterations, recommend specialists from feedback themes

Sprint Planner Skill

14
from masharratt/claude-flow-novice

## Purpose