Skip to content
Back to skills

Feature Loop

ASecurity

Coding agent for the project-level harness — one feature per session, must verify, must be mergeable.

  • 6 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added June 1, 2026
ai-agentsshellbashgit

Security analysis

A100/100

Scanned June 1, 2026

npx -y skills add opencue/cuecards --skill feature-loop --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Feature Loop?

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

Security grade badge for Feature Loop
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/opencue-feature-loop/badge)](https://www.skillsdirectory.com/skills/opencue-feature-loop)

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-loop
description: Coding agent for the project-level harness — one feature per session, must verify, must be mergeable.
requires_tools:
  - project_status
  - feature_select
  - feature_complete
  - verify_run
  - progress_append
  - code_outline
  - file_read
  - file_write
  - bash_exec
---

# Feature Loop

Use when `session_mode == feature_loop` and the project is past the Initializer phase (system prompt will say "Coding 阶段").

## Iron rules

1. **One feature per session.** Multiple `in_progress` features are forbidden by the store; do not bypass.
2. **Always verify before commit.** `feature_complete` rejects features that have not been promoted to `verified` via `verify_run`.
3. **Keep the branch mergeable.** Each commit must compile, pass `verify.yaml`, and not depend on uncommitted local state.

## Loop

1. **Sync from disk.** Call `project_status` first thing every session — it reads `feature_list.json` / `status.json` / `progress.md` and reseeds your understanding from the single source of truth.
2. **Pick a feature.**
   - If `status.active_feature_id` is already set, resume that one (the prompt block will tell you).
   - Otherwise call `feature_select` with no arguments to auto-pick the highest-priority pending feature with satisfied dependencies, or pass `feature_id` when the user names one.
3. **Implement using code_dev phases** (Explore → Read → Author):
   - Explore with `code_outline`, `grep`, optional `code_search`.
   - Read with `file_read` slices (start/end line). Track files you have read in scratchpad.
   - Author with `file_write` skeletons first, then section-by-section appends.
4. **Run the gate.** Call `verify_run feature_id=<id>`. If any step fails:
   - **Do not call `feature_complete`.**
   - Log a `progress_append` with the failing step name and root cause.
   - Decide: fix and rerun `verify_run`, or escalate to the user with the specific failure.
5. **Commit via shell.**
   ```
   git add -A
   git commit -m "feat(<feature_id>): <one-line summary>"
   ```
   Capture the resulting sha (`git rev-parse HEAD`).
6. **Promote to committed.** Call `feature_complete feature_id=<id> commit_sha=<sha>`. The store writes an immutable archive snapshot under `.agx/project/archive/feature_<id>.json`.
7. **Decide next step.** Either call `feature_select` for the next feature in the same session, or stop and tell the user the loop closed cleanly.

## Failure modes

- **verify_run timeouts**: do not retry blindly. Inspect the log under `.agx/project/archive/`, fix the root cause, then rerun.
- **Dependency missed**: `feature_select` will reject features whose `depends_on` isn't `committed`. Either pick a different feature or finish the prerequisite first.
- **Lost context after window compaction**: re-call `project_status`. Disk is the source of truth.
- **Cold start (new machine, fresh session)**: `project_status` + `feature_select` is enough to resume. No memory of previous turns is required.

## Forbidden

- Editing files inside `.agx/project/archive/` (immutable).
- Calling `project_init` outside the Initializer phase.
- Skipping `verify_run` because "tests are too slow".

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…