Install
openclaw skills install featurelintStatically analyze code for feature flag hygiene issues like stale flags, SDK misuse, safety risks, and architecture problems before production deployment.
openclaw skills install featurelintFeature flag hygiene analyzer that catches stale flags, SDK misuse, safety risks, and architecture problems before they reach production.
Emoji: flag Homepage: https://featurelint.pages.dev Product: featurelint Accent: #e84393
FeatureLint statically analyzes your codebase for feature flag hygiene issues across six categories:
90 total patterns with POSIX ERE regex matching, severity levels, and actionable recommendations.
# lefthook.yml
pre-commit:
commands:
featurelint:
glob: "*.{js,jsx,ts,tsx,py,rb,java,go,rs}"
run: bash path/to/featurelint/scripts/dispatcher.sh staged --severity error
# Scan a directory
bash scripts/dispatcher.sh scan ./src
# Scan with JSON output
bash scripts/dispatcher.sh scan --format json --output report.json ./src
# Analyze staged files
bash scripts/dispatcher.sh staged
# Single file analysis
bash scripts/dispatcher.sh file ./src/flags.ts
# Health check
bash scripts/dispatcher.sh health
| Tier | Patterns | Categories | Price |
|---|---|---|---|
| Free | 30 | Stale Flags + Flag Complexity | $0 |
| Pro | 60 | + Flag Safety + SDK Misuse | $9/month |
| Team | 90 | + Flag Lifecycle + Flag Architecture | $29/month |
Activate a tier by setting your license key:
export FEATURELINT_LICENSE_KEY="FEATURELINT-XXXX-XXXX-XXXX-XXXX"
| Command | Description |
|---|---|
scan | Analyze a directory for feature flag issues |
file | Analyze a single file |
staged | Analyze git staged files (for pre-commit hooks) |
baseline | Create a baseline snapshot of current findings |
compare | Compare current findings against the baseline |
health | Run self-diagnostic health check |
version | Print version information |
help | Show usage and available options |
| Flag | Description | Default |
|---|---|---|
-f, --format <fmt> | Output format: text, json, csv, markdown | text |
-o, --output <file> | Write report to file | (stdout) |
-s, --severity <lvl> | Minimum severity: error, warning, info, all | all |
-c, --category <cat> | Filter by category code | all |
-t, --tier <tier> | License tier: free, pro, team | free |
-j, --jobs <n> | Parallel scan workers | 4 |
-i, --include <glob> | Include files matching pattern | (all) |
-e, --exclude <regex> | Exclude files matching pattern | (none) |
-C, --context <n> | Context lines around findings | 2 |
--scan-hidden | Include hidden files and directories | false |
--warn-exit | Exit code 1 on warnings | false |
-v, --verbose | Increase verbosity (-vv for trace) | 0 |
-q, --quiet | Suppress non-essential output | false |
| Variable | Description |
|---|---|
FEATURELINT_LICENSE_KEY | License key for tier activation |
FEATURELINT_TIER | Override tier directly |
FEATURELINT_FORMAT | Default output format |
FEATURELINT_SEVERITY | Default severity filter |
FEATURELINT_JOBS | Default parallel job count |
Human-readable terminal output with color-coded severity, file grouping, code context, and actionable fix recommendations.
Structured output for CI/CD integration. Includes metadata, summary counters, and a findings array with file, line, severity, check ID, description, and recommendation.
Spreadsheet-compatible output for tracking and reporting. One row per finding with all fields.
Report template with summary tables, category breakdown, severity distribution, and a findings table. Uses the report.md.tmpl template when available.
JavaScript, TypeScript, Python, Ruby, Java, Kotlin, Scala, Go, Rust, C#, F#, PHP, Swift, Dart, Vue, Svelte, Elixir, Clojure, Lua, R, YAML, JSON, TOML, XML, Terraform/HCL, and Shell.
featurelint/
scripts/
dispatcher.sh # CLI entry point and argument parsing
analyzer.sh # Core analysis engine and output formatters
patterns.sh # 90 patterns across 6 categories
license.sh # License validation and tier gating
config/
lefthook.yml # Git hook configuration
templates/
report.md.tmpl # Markdown report template
SKILL.md # This file
- name: FeatureLint
run: |
bash featurelint/scripts/dispatcher.sh scan \
--format json \
--output featurelint-report.json \
--severity warning \
./src
# Create initial baseline
bash scripts/dispatcher.sh baseline ./src
# After making changes, compare
bash scripts/dispatcher.sh compare ./src
bash scripts/dispatcher.sh staged --severity error
Commercial software. Free tier available with 30 patterns. See https://featurelint.pages.dev for pricing and terms.