Skip to content
Back to skills

Feature State Machine

ASecurity

Add or maintain a machine-readable feature state list for agent work. Use when a repo needs WIP=1 control, feature states, verification commands, pass-state evidence, or docs/features/feature_list.json.

  • 3 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 12, 2026
tools

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 12, 2026

npx -y skills add pax-k/pax-fullstack-harness --skill feature-state-machine --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Feature State Machine?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Feature State Machine
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/pax-k-feature-state-machine/badge)](https://www.skillsdirectory.com/skills/pax-k-feature-state-machine)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: feature-state-machine
description: Add or maintain a machine-readable feature state list for agent work. Use when a repo needs WIP=1 control, feature states, verification commands, pass-state evidence, or docs/features/feature_list.json.
---

# Feature State Machine

## Purpose

Make feature scope executable by tracking one active work item, explicit verification, and evidence-backed state transitions.

## Inspect First

- existing specs, OpenSpec changes, task docs, issue lists, `PROGRESS.md`, validation scripts, and current work-in-progress
- whether the repo has multi-session or multi-feature agent work that justifies a feature state file

## Procedure

1. Define the feature list.
   - Create or update `docs/features/feature_list.json` only when feature tracking adds value.
   - Use `assets/templates/feature-list.json.tmpl` for the initial shape.
   - Preserve existing IDs and evidence.

2. Enforce advisory WIP control.
   - Default `wip_limit` is `1`.
   - Only one feature should be `active`.
   - Do not mark a feature `passing` without executable evidence.

3. Make each feature checkable.
   - Include `id`, `title`, `behavior`, `verification`, `state`, `evidence`, `dependencies`, and `notes`.
   - Verification should be a real command or focused validation path.
   - Link feature IDs to OpenSpec tasks or lightweight specs when present.

4. Add local checks.
   - Create or recommend `scripts/check-feature-state`.
   - Use `scripts/check_feature_state.py` from this plugin for deterministic validation.
   - Wire into `scripts/validate` only when the repo wants feature-state checks in baseline validation.

5. Route implementation.
   - Use `task-planning-and-pr-protocol` for task planning.
   - Use `termination-gatekeeper` before declaring a feature complete.
   - Use `session-continuity-harness` for handoff after partial work.
   - Use `project-local-skill-generator` to create `project-feature-workflow` when this repo should expose feature state as a local Codex skill.

## Validation

- Run `./scripts/check-feature-state` when present.
- Confirm no more than `wip_limit` features are active.
- Confirm every feature has behavior and verification text.
- Confirm every `passing` feature has evidence.

## Completion Criteria

- The repo has a usable feature state surface or a documented reason it is unnecessary.
- Active work, blockers, passing evidence, and next work are unambiguous to a fresh agent session.

Files in this skill

  • SKILL.md2.4 KB
  • agents/openai.yaml233 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.