Agent skill

Feature List JSON

by Archive228 in Archive228/loopkit

Enumerate every end-to-end feature as strict JSON entries with passes:false, editable-passes-only discipline, and priority order.

MITAuto-check passedTesting & QA

Install Feature List JSON

skills CLI
$ npx skills add Archive228/loopkit --skill feature-list-json -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Archive228/loopkit feature-list-json --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Archive228/loopkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/feature-list-json .claude/skills/feature-list-json && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
feature-list-json
GitHub stars
755
Token cost
~1.2k tokens
SKILL.md length
564 words
Files
1
Skills in repo
43
Repo updated
First seen
Licence
MIT

At a glance

Enumerate every end-to-end feature as strict JSON entries with passes:false, editable-passes-only discipline, and priority order.

  • Works in 5 steps: Enumerate every user-observable behavior… → Write each as one entry. description is… → Order the array so an agent walking… → …
  • Tasks that involve End-to-end testing
  • SKILL.md covers When to apply, Procedure — initializer, Procedure — coding agent and Anti-patterns, plus 3 more sections
  • Calls jq and git

What it does

Feature List JSON is an agent skill from Archive228/loopkit. Enumerate every end-to-end feature as strict JSON entries with passes:false, editable-passes-only discipline, and priority order. The ledger fresh-context sessions read to know what's done, what's next, and what they're forbidden to touch.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA, covering End-to-end testing. The repository describes itself as: 33 battle-tested skills + minimal .claude harness for any coding agent (Claude Code, Cursor, Codex, Gemini CLI). The licence is MIT.

When your agent uses it

  • Tasks that involve End-to-end testing

Example prompts

  • “s done, what”
  • “/feature-list-json”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Enumerate every user-observable behavior the spec implies. Login, list rendering, empty states, error states, keyboard shortcuts, mobile…
  2. Write each as one entry. description is one sentence, steps is a user's actual action sequence (not implementation notes).
  3. Order the array so an agent walking top-to-bottom builds prerequisites before dependents.
  4. Every passes starts false. No exceptions, not even for the smoke test.
  5. Validate: jq '. | length' returns your count; jq '[.[] | select(.passes==true)] | length' returns 0.

What it can do on your machine

Read from SKILL.md and the folder at commit 5ae033e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • jq
    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Feature List JSON loads about 1.2k tokens when it runs. Until then it costs about 64 tokens; SKILL.md has 564 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~64
When it runs · the whole SKILL.md, loaded when a task matches
~1.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Archive228/loopkit at commit 5ae033e, republished under its MIT licence (© Archive228). 564 words, ~1,241 tokens.

Download SKILL.mdSave it as .claude/skills/feature-list-json/SKILL.md (or your agent's skills folder).
name
feature-list-json
description
Enumerate every end-to-end feature as strict JSON entries with passes:false, editable-passes-only discipline, and priority order. The ledger fresh-context sessions read to know what's done, what's next, and what they're forbidden to touch.
when_to_use
initializer agent building the master feature list at scaffold time, coding agent flipping a single passes field after E2E verification, auditing that…

feature_list.json

The ledger of every feature the product will eventually have. Fresh-context sessions read it to pick work; they flip exactly one boolean when done. JSON, not Markdown — the syntactic strictness is load-bearing. Prose gets edited freely; data gets edited carefully.

Format per entry:

json
{
  "category": "functional",
  "description": "New chat button creates a fresh conversation",
  "steps": [
    "Navigate to main interface",
    "Click the 'New Chat' button",
    "Verify a new conversation is created",
    "Check that chat area shows welcome state",
    "Verify conversation appears in sidebar"
  ],
  "passes": false
}

Categories: functional, ux, data, infra. Order the array in implementation order — the top is the next thing to build.

When to apply

  • Initializer agent at scaffold time: produce the full list, every entry passes: false. Aim for breadth — 200 well-scoped entries beats 30 vague ones.
  • Coding agent at end of session: after end-to-end verification, flip exactly one passes from false to true.
  • Any session at start: jq '[.[] | select(.passes==false)] | length' to see remaining work; pick the topmost unblocked entry.

Procedure — initializer

  1. Enumerate every user-observable behavior the spec implies. Login, list rendering, empty states, error states, keyboard shortcuts, mobile layout — all of it.
  2. Write each as one entry. description is one sentence, steps is a user's actual action sequence (not implementation notes).
  3. Order the array so an agent walking top-to-bottom builds prerequisites before dependents.
  4. Every passes starts false. No exceptions, not even for the smoke test.
  5. Validate: jq '. | length' returns your count; jq '[.[] | select(.passes==true)] | length' returns 0.

Procedure — coding agent

  1. Read the file. Do not edit yet.
  2. Pick the topmost entry with passes: false and satisfied prerequisites. If the top is blocked, drop to the deepest unblocked entry.
  3. Implement. Test. Verify end-to-end via the runtime path (browser automation, HTTP, CLI) — not unit tests alone. See [[broken-window-check]] for what E2E means.
  4. Only after E2E green: flip that single entry's passes to true.
  5. Diff the file. The diff must be exactly one false → true. Nothing else.
Show full SKILL.md (278 more words)Show less

Anti-patterns

  • Editing description, steps, or category — it is unacceptable to remove or edit these fields because it lets missing functionality slip past future sessions. The ledger is append-only in every field except passes.
  • Flipping passes: true on unit-test evidence — unit tests pass while routes are misrouted, CORS is broken, or the button is unwired. Only end-to-end evidence flips the bit. See [[verification-before-completion]].
  • Flipping multiple entries in one session — the single-feature-per-session rule (see [[one-feature-per-session]]) exists because packed sessions ship everything half-done. One flip per session.
  • Adding new entries mid-project without spec change — if scope grew, note it in [[shift-notes]] and flag for a re-scope, don't quietly extend the ledger.
  • Deleting "obsolete" entries — if a feature is no longer needed, leave it and mark it passes: true with a note, or negotiate removal explicitly. Silent deletion breaks priority counting.
  • Markdown or YAML instead of JSON — measured in shift-work agent runs, JSON cuts spurious field edits ~7x vs. Markdown and premature-pass marking ~2x. The strictness does the work.

Audit check

At session end, before committing:

bash
git diff feature_list.json | grep -E '^[-+]' | grep -v 'passes'

If this prints anything other than the file header, you edited a forbidden field. Revert those hunks. Only "passes": false ↔ "passes": true lines are allowed to change.

When NOT to apply

  • Projects under ~20 features — the overhead of writing the list exceeds the benefit; a flat TODO in [[shift-notes]] is enough.
  • Solo one-shot sessions with no handoff — the ledger's whole purpose is cross-session discipline.
  • [[shift-notes]] — the prose companion; feature_list.json holds state, shift-notes holds context.
  • [[broken-window-check]] — what "end-to-end verified" means before you flip a bit.
  • [[one-feature-per-session]] — the rule that limits you to one flip per session.
  • [[verification-before-completion]] — the general form of "no bit-flip without runtime evidence".

© Archive228, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/feature-list-json of Archive228/loopkit.

Open the folder on GitHubat commit 5ae033e

Compare with similar skills

Feature List JSON next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Feature List JSON compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Feature List JSON this skillArchive228/loopkit755—~1.2kAutomated safety check: PassMIT
Web Application Testinganthropics/skills180k51 repos~966Automated safety check: PassApache-2.0
TDD WorkflowhellangleZ/burn-in-cceverywhere-ralph11211 repos~2.4kAutomated safety check: PassNone
Uloop Replay Inputkurotu/VRCQuestTools3733 repos~615Automated safety check: PassMIT
Ui4 Convert Testspayloadcms/payload45k—~3.5kAutomated safety check: PassMIT
E2Estackia/rtp2httpd2.2k—~517Automated safety check: PassGPL-2.0

Similar skills

  • Web Application Testing

    anthropics/skills

    Official

    Tests local web applications with Python Playwright scripts, checking frontend behavior, capturing screenshots and reading browser console logs.

    180k GitHub starsUsed in 51 repos~966 tokens
    Testing & QAAuto-check passed
  • TDD Workflow

    hellangleZ/burn-in-cceverywhere-ralph

    A skill your agent uses when writing new features, fixing bugs, or refactoring code.

    112 GitHub starsUsed in 11 repos~2.4k tokens
    Testing & QAAuto-check passed
  • Uloop Replay Input

    kurotu/VRCQuestTools

    Replay recorded PlayMode keyboard and mouse input. An agent skill from kurotu/VRCQuestTools.

    373 GitHub starsUsed in 3 repos~615 tokens
    Testing & QAAuto-check passed
  • Ui4 Convert Tests

    payloadcms/payload

    A skill your agent uses when UI changes are complete and e2e tests need updating.

    45k GitHub stars~3.5k tokensUpdated today
    Testing & QAAuto-check passed
  • E2E

    stackia/rtp2httpd

    Write, run, review, or debug rtp2httpd E2E tests and their harness in e2e/ and scripts/run-e2e.sh.

    2.2k GitHub stars~517 tokensUpdated 7 days ago
    Testing & QAAuto-check passed
  • Moav E2E

    MotherofallVPNs/MoaV

    Run and debug MoaV's end-to-end tests — real protocol connectivity (client-test.sh) and the moav CLI smoke test — against a LIVE server, via the self-hosted e2e workflow or a local test VPS.

    448 GitHub stars~1.9k tokensUpdated 2 days ago
    Testing & QAAuto-check: notes

More from Archive228/loopkit

All 43 skills in this repo
  • Hitl Escalate

    Archive228/loopkit

    Escalate blocked runs to a human via configured channel or fallback to BLOCKED.md and exit the loop.

    755 GitHub stars~1.2k tokensUpdated 2 mo ago
    Auto-check passed
  • Structured Output

    Archive228/loopkit

    Get JSON out of the model reliably. An agent skill from Archive228/loopkit.

    755 GitHub stars~830 tokensUpdated 2 mo ago
    Auto-check passed
  • Using Loopkit

    Archive228/loopkit

    A skill your agent uses when starting any conversation in a loopkit-enabled project - establishes how to find and use loopkit's 49 skills, requiring skill invocation before ANY response including…

    755 GitHub stars~1.4k tokensUpdated 2 mo ago
    Auto-check passed
  • Active Memory Reminder

    Archive228/loopkit

    Before compaction Loopkit extracts decisions into claude-decisions.json (machine-readable).

    755 GitHub stars~1.2k tokensUpdated 2 mo ago
    Auto-check passed
  • Eval Harness

    Archive228/loopkit

    Build a repeatable eval loop that grades agent output with an LLM judge, so prompt/skill changes get scored against a baseline instead of eyeballed.

    755 GitHub stars~876 tokensUpdated 2 mo ago
    Auto-check passed
  • Prompt Caching

    Archive228/loopkit

    Cache the parts of the prompt that don't change so a long-running loop stops paying full price on every turn.

    755 GitHub stars~735 tokensUpdated 2 mo ago
    Auto-check passed

Categories

Questions about Feature List JSON

What does Feature List JSON do?

Enumerate every end-to-end feature as strict JSON entries with passes:false, editable-passes-only discipline, and priority order. Feature List JSON is an agent skill from Archive228/loopkit. Enumerate every end-to-end feature as strict JSON entries with passes:false, editable-passes-only discipline, and priority order.

When should I use Feature List JSON?

Feature List JSON fits situations like: tasks that involve End-to-end testing.

How do I install Feature List JSON in Claude Code?

Run `npx skills add Archive228/loopkit --skill feature-list-json -a claude-code`. Or copy the skill folder (skills/feature-list-json in Archive228/loopkit) into .claude/skills/feature-list-json in your project. Claude Code loads it when a task matches its description.

How do I install Feature List JSON in Codex?

Run `npx skills add Archive228/loopkit --skill feature-list-json -a codex`. Or copy the skill folder (skills/feature-list-json in Archive228/loopkit) into .agents/skills/feature-list-json in your project. Codex loads it when a task matches its description.

Can I use Feature List JSON in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Archive228/loopkit --skill feature-list-json -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/feature-list-json, .gemini/skills/feature-list-json, .github/skills/feature-list-json and .opencode/skills/feature-list-json in your project.

What does Feature List JSON need to run?

Going by SKILL.md and its folder, Feature List JSON needs the command-line tools its instructions call (jq and git).

Does Feature List JSON access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Feature List JSON safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Feature List JSON use?

Feature List JSON is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Feature List JSON use?

About 1.2k tokens (SKILL.md is roughly 5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Feature List JSON?

Skills that share tags, products or a category with Feature List JSON: Web Application Testing (anthropics/skills, 180k stars), TDD Workflow (hellangleZ/burn-in-cceverywhere-ralph, 112 stars), Uloop Replay Input (kurotu/VRCQuestTools, 373 stars) and Ui4 Convert Tests (payloadcms/payload, 45k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Feature List JSON?

Archive228 (a GitHub user) maintains it in Archive228/loopkit, which has 755 GitHub stars. The repository holds 43 skills in this directory. The repository was last updated on July 14, 2026.

Source: Archive228/loopkit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.