What it is: A feature list is a structured file (almost always JSON, almost always named feature_list.json) that enumerates every feature the project will ship, with verification steps per item. The AI agent reads it at session start and updates only the ‘passing’ flag — never the description or verification steps.
Who it is for: Developers using AI coding agents on real projects who’ve seen scope drift, “while-I’m-here” refactors, and surprise rewrites.
Best if: You want a short reference on what a feature list is and the role it plays in a working agent harness.
Skip if: You only use AI for single-edit tasks. Read our full guide if you want depth. Want one practical AI workflow every morning? Subscribe to our free daily newsletter.
What is Feature List (for AI agents)?
A feature list is a structured file — almost always JSON, almost always named feature_list.json — that enumerates every feature the project will ship. Each entry has at minimum a description and a list of verification steps. The agent reads the file at the start of every session, picks exactly one feature to work on, runs the verification steps, and flips the passes boolean from false to true only when every step verifies. Anthropic uses this exact pattern in their three-agent harness.
Why does Feature List (for AI agents) matter?
Feature lists are the structural fix for scope drift. Without one, agents reinterpret the goal as the conversation grows — refactoring adjacent code, adding analytics, rewriting working components. With a feature list, the agent has an external anchor it can return to at the start of every session. Anthropic also noticed something specific about format: “the model is less likely to inappropriately change or overwrite JSON files compared to Markdown files.” JSON discourages rewrites; Markdown invites them.
How does Feature List (for AI agents) work?
The canonical Anthropic schema per feature: category, description, steps (array of verification steps), and passes (boolean). Community extensions add id, dependencies, status enum, files, and effort. The file usually has a top-level out_of_scope array listing things the agent should explicitly refuse.
The agent’s discipline: read first, pick one with passes: false and dependencies satisfied, implement, verify, flip passes. Never edit description or steps. Refuse or escalate if asked for something not on the list. See our full guide for the complete pattern and a copy-paste sample.
Related terms
Learn more on Beginners in AI
- Feature Lists for AI Coding Agents (full guide)
- Harness Engineering for Beginners
- Claude Code Best Practices
Sources and further reading
- Anthropic — Effective harnesses for long-running agents
- GitHub Spec Kit
- Walking Labs — Learn Harness Engineering
Last reviewed: May 2026. AI terminology evolves quickly — verify specifics on the official source pages above.
Get Smarter About AI Every Morning
Free daily newsletter — one term, one tool, one tip. Plain English.
Free forever. Unsubscribe anytime.
You may also like
- Feature Lists for AI Coding Agents (full guide)
- Harness Engineering for Beginners
- Claude Code Best Practices
- AGENTS.md
- CLAUDE.md
- Harness engineering
- AI Glossary
Two ways to go further
The AI Prompt Library
1,000+ ready-to-use prompts for Claude, ChatGPT, and Gemini. Stop staring at a blank box.
Get it for $39 →2-Hour Live AI Crash Course
A private, beginner-friendly session across Claude, ChatGPT, Gemini, and the wider landscape.
Book for $125 →