Automated summary
This skill counts features marked as @failing in Gherkin feature files and writes the count to a JSON file.
Strengths
- Automates termination decision in autonomous coding loops
- Integrates with Gherkin feature files
- Simple tag-based status detection
Limitations
- Only handles @failing and @passing tags
- Requires files to follow a specific format
- Does not support multiple tags per feature
Use this skill to check if all features in a BDD project have been implemented successfully.
Avoid this skill if you are using a non-Gherkin test format or need more detailed reporting.
Security analysis
SafeThe skill only uses Glob, Read, and Write to scan text files and output a local JSON file. It performs no destructive operations, network calls, code execution, or data exfiltration.
No concerns found
How this analysis is madeExamples
Run the feature-status skill to count all @failing features in the current directory.Use feature-status to determine if the coding loop should continue by reading feature-status.json.name: feature-status description: Count features marked as @failing and write to status JSON file. Used to determine when the autonomous coding loop should end. allowed-tools: Glob, Read, Write
Feature Status Skill
Purpose
This skill counts the number of features marked as @failing and writes the count to a JSON file. This is used by the autonomous coding harness to determine when the implementation loop should end (when failing_count reaches 0).
Output File
File: feature-status.json
Format:
{
"failing_count": 3
}
Loop Termination Logic:
- If
failing_count > 0→ Continue coding sessions - If
failing_count == 0→ All features implemented, end loop
How It Works
Step 1: Find Feature Files
Use Glob to find all Gherkin feature files:
Pattern: gherkin.feature_*.feature
Step 2: Count @failing Tags
For each feature file:
- Read the first few lines
- Look for
@failingtag - If found, increment the failing counter
Tag Detection:
@failing
Feature: Some Feature Name
...
Read lines until you find either:
@failing→ Count this feature as failing@passing→ Skip (not failing)Feature:line → Stop searching (assume no tag = passing)
Step 3: Write JSON
Write feature-status.json with just the failing count:
{
"failing_count": <count>
}
Usage
Simply invoke the skill:
/feature-status
This will:
- Scan all
gherkin.feature_*.featurefiles in the current directory - Count how many have
@failingtags - Write the count to
feature-status.json
Example Implementation
# Pseudocode for reference
def count_failing_features(directory):
failing_count = 0
# Find all feature files
feature_files = glob("gherkin.feature_*.feature")
for file in feature_files:
with open(file) as f:
for line in f:
line = line.strip()
if line.startswith("@failing"):
failing_count += 1
break
elif line.startswith("@passing"):
break
elif line.startswith("Feature:"):
# No tag found, assume passing
break
return failing_count
Integration with Autonomous Coding Harness
The harness can check the status file to decide whether to continue:
import json
def should_continue_loop():
with open("feature-status.json") as f:
status = json.load(f)
return status["failing_count"] > 0
Best Practices
- Run after each coding session to update the failing count
- Commit the status file to track progress over time
- Check before starting a new session to avoid unnecessary runs
- Use as a termination condition in automation scripts
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/feature-status-counter-mmbizizu/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/feature-status-counter-mmbizizu' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/feature-status-counter-mmbizizu/download' --output '.skill-downloads/feature-status-counter-mmbizizu/SKILL.md.part' && mv '.skill-downloads/feature-status-counter-mmbizizu/SKILL.md.part' '.skill-downloads/feature-status-counter-mmbizizu/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Tools declared by the author (check availability in your agent): Glob, Read, Write
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/feature-status-counter-mmbizizu/SKILL.md' && test -s '.skill-downloads/feature-status-counter-mmbizizu/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/feature-status' && cp -R '.skill-downloads/feature-status-counter-mmbizizu' '.claude/skills/feature-status'Cursor
test -f '.skill-downloads/feature-status-counter-mmbizizu/SKILL.md' && test -s '.skill-downloads/feature-status-counter-mmbizizu/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/feature-status' && cp -R '.skill-downloads/feature-status-counter-mmbizizu' '.cursor/skills/feature-status'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/feature-status-counter-mmbizizu'openskills read 'feature-status-counter-mmbizizu'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/feature-status-counter-mmbizizu/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
ClickHouse Performance Comparison
Testing
Evaluate ClickHouse performance test results, check PR performance changes, compare with history, and assess whether a result is actionable.
Analyze CI Performance Reports
Testing
Analyze CI performance comparison reports for a ClickHouse PR. Cross-references master history to distinguish real regressions from flaky tests.
Santa Method
Testing
Multi-agent adversarial verification with two independent reviewers. Output is checked twice and iteratively fixed until both pass before shipping.