Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By xiaolai
Scan, lint, grade, and enforce quality standards on natural language programming artifacts for Claude Code plugins, including skills, agents, commands, and hooks. Detect security risks, vocabulary drift, and cross-component inconsistencies across your plugin directory.
npx claudepluginhub xiaolai/nlpm-for-claude --plugin nlpmCheck cross-component consistency — reference integrity, orphans, contradictions
Auto-fix fixable issues in NL artifacts — missing fields, heading gaps, field renames
Initialize NLPM for this project — detect artifacts, set lint strictness, capture baseline trend snapshot
Discover and inventory all natural language programming artifacts in a repository
Render a self-contained HTML report — per-file scores, score trend, cross-component graph, vocabulary noun-verb map, drift candidates, and findings — into .claude/nlpm-reports/. Opens directly via file://. No server, no build, no network.
Cross-component consistency analyzer for NL programming artifacts. Checks reference integrity, detects orphans, finds behavioral contradictions, and identifies terminology drift across plugin components. <example> Context: User runs /nlpm:check on a plugin directory user: "/nlpm:check" assistant: "I'll use the checker to verify cross-component consistency." </example> <example> Context: Developer renamed a skill directory and wants to verify no broken references assistant: "I'll dispatch the checker to find any broken skill references across agents and commands." </example>
Discover and classify all NL programming artifacts in a repository. <example> Context: User wants to inventory their NL artifacts user: "/nlpm:scan" assistant: "I'll use the scanner to discover all NL artifacts." </example> <example> Context: User wants to check a specific project user: "/nlpm:scan ~/github/myproject" assistant: "I'll scan that project for NL programming artifacts." </example>
Scores NL programming artifacts on a 100-point scale using deterministic penalties. Use this agent when scoring plugin components, checking artifact quality, or running quality analysis on commands, agents, skills, rules, hooks, or CLAUDE.md. <example> Context: User runs /nlpm:score on a directory assistant: "I'll use the scorer to analyze and score these artifacts." </example> <example> Context: Quality check before a plugin release assistant: "I'll dispatch the scorer to verify all artifacts meet the threshold." </example> <example> Context: Fix command needs to identify issues before applying repairs assistant: "I'll use the scorer to identify issues and their penalties." </example>
Scan Claude Code plugins for security risks in executable artifacts: hooks, scripts, MCP configs, dependencies, and prompt injection surfaces. <example> Context: Auditing an external plugin before submitting PRs user: "Scan this plugin for security issues" assistant: "I'll use the security-scanner agent to check all executable artifacts." <commentary> Pre-contribution security gate. Must pass before any PRs are submitted to external repos. </commentary> </example> <example> Context: User wants to vet a plugin before installing user: "Is this plugin safe to install?" assistant: "I'll use the security-scanner agent to check for dangerous patterns." <commentary> Safety check for plugin consumers. Reports execution surfaces and risk level. </commentary> </example>
Evaluate NL artifacts against test specifications. Predicts trigger accuracy, checks output format expectations, validates frontmatter, and scores against thresholds. <example> Context: Developer wrote a spec for a new agent and wants to check if it passes user: "/nlpm:test" assistant: "I'll use the tester to evaluate your artifacts against their specs." </example> <example> Context: Developer is doing TDD — wrote the spec first, artifact doesn't exist yet user: "/nlpm:test agents/my-agent.spec.md" assistant: "I'll use the tester to check — the artifact doesn't exist yet, so this will be RED." </example>
Use when writing, reviewing, or validating Claude Code plugin artifacts — check frontmatter schemas, hook event names, naming conventions, prompt structure, or reference syntax. Loaded by the NLPM scorer and checker agents for schema validation.
Multi-agent workflow patterns for Claude Code -- parallel dispatch, sequential pipelines, QC gates, retry loops, shared partials. Use when designing systems with multiple agents, commands, or processing stages.
Use when writing or reviewing NL artifacts and need to check for anti-patterns — vague quantifiers, prohibitions without alternatives, oversized skills, write-on-read-only agents, monolithic prompts, or linter-duplicating rules.
The 50 rules of natural language programming. Loaded when writing, reviewing, or improving any NL artifact — skills, agents, commands, rules, hooks, prompts, plugins, CLAUDE.md. The definitive style guide for NL code quality.
Use when scoring NL artifact quality, applying penalties, or calibrating lint judgment — contains the 100-point rubric with penalty tables per artifact type and 4 worked calibration examples.
Modifies files
Hook triggers on file write and edit operations
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Audit Claude Code plugins and skills for best practices, deprecations, compatibility, usability, coverage gaps, duplication, and workflow optimization
Audit and optimize Claude Code configurations with dynamic best-practice research
Validates Claude Code plugin structure against official Anthropic spec and Intent Solutions enterprise standard
No description provided.
Complete plugin development toolkit for creating, refactoring, and validating Claude Code plugins and agents. Use when creating new plugins/skills/agents, refactoring existing plugins/skills, validating frontmatter, or restructuring plugin components. Includes specialized agents for assessment, planning, execution, and validation workflows.
Local-only skill quality and security evaluator for Claude Code/OpenClaw. Scores six dimensions, runs local validators, and stores reports and snapshots under .skill-compass/.
A 260-token system prompt that overrides three structural presumptions every RLHF-trained LLM inherits from training: that you want confirmation, that old scarcity still applies, that best practices are ceilings.
English language coach for non-native speakers — auto-corrects prompts, translates non-English, refines with :: prefix, tracks improvement over time
Initialize a multi-agent workspace with shared configuration for Claude Code, Codex CLI, and Gemini CLI
Documentation quality and freshness enforcer — detect staleness, check accuracy, measure coverage, and auto-generate docs
Recursive governance for Executable Operating Units (EOUs). Faceted classification, generating-EOU constraints, ECP-governed change, no-self-approval. Install in any project that needs to turn messy workflows into auditable, retirable operating units.
Natural-Language Programming Manager -- discover, score, check, and fix NL artifacts with Claude-native intelligence.
Part of the xiaolai Claude plugin marketplace.
NLPM is the only validator in the Claude Code plugin ecosystem that systematically checks manifest-vs-disk consistency — the bug class where a SKILL.md exists on disk but is silently missing from plugin.json (and therefore invisible after claude plugin install). Verified across 8+ tools including Anthropic's official plugin-validator and the Linux Foundation's skills-ref. See analysis/ecosystem-gap.md for the research.
NLPM treats natural language artifacts as programs that can be linted. Just as ESLint scores JavaScript and ruff scores Python, NLPM scores the markdown files that drive AI behavior: skills, agents, commands, rules, hooks, prompts, CLAUDE.md, and memory files.
Eight commands, each doing one thing:
| Command | What it does |
|---|---|
/nlpm:ls | Discover and inventory all NL artifacts in a repo |
/nlpm:score | Score artifact quality (100-point scale) |
/nlpm:check | Cross-component consistency checks |
/nlpm:fix | Auto-fix fixable issues |
/nlpm:trend | Track quality score trends over time |
/nlpm:test | Run NL artifact tests against spec files (TDD) |
/nlpm:init | Initialize NLPM for a project |
/nlpm:security-scan | Scan plugins for security risks in executable artifacts |
Claude-native slash commands (no API keys, no Codex, no external models) plus a standalone Python 3.11+ validator for pre-commit hooks and CI.
NLPM also runs as a self-evolving GitHub Actions pipeline that audits real plugin repos, contributes fix PRs, harvests teaching examples from clean ones, and feeds learnings back into its own rule catalog:
auditor/exemplars/ — 62 published so far, covering 31 of the 50 Rules with real-world positive references. See the gallery.auditor-cite-exemplars.yml runs weekly and opens a human-gated PR adding > Real-world example: [<repo>] links to skills/nlpm/rules/SKILL.md, so each rule documents both the bad case (in the rule body) and the good case (in a real repo).auditor/scripts/validate-rule-ids.py re-validates every audit's rule_id against the rubric (type drift) and the rule's title keywords (semantic drift). The 2026-05-13 sweep found 990 mislabeled rule_ids across 128 historical audits; the validator is now wired as a soft-warn telemetry step in every new audit so future drift is caught immediately.auditor/scripts/rule-health.py reports validated_hits per rule (raw hits minus drift hits) and exemplars_count per rule, so the "needs attention" view is calibrated against actual rule violations rather than scorer noise.# Project scope (recommended)
claude plugin install nlpm@xiaolai --scope project
# Global (all projects)
claude plugin install nlpm@xiaolai --scope user
Install fails with "Plugin not found in marketplace 'xiaolai'"? Your local marketplace clone is stale. Run
claude plugin marketplace update xiaolaiand retry —plugin installdoes not auto-refresh.
In Claude Code:
/nlpm:ls # see what NL artifacts you have
/nlpm:score # score them all
/nlpm:score agents/ # score just agents
/nlpm:score --changed # score only git-changed files
/nlpm:check # check cross-component consistency
/nlpm:fix # auto-fix what's fixable
/nlpm:trend # track score history over time
/nlpm:test # run NL-TDD specs
From CI or a pre-commit hook (no Claude Code required):
curl -fsSL -o /usr/local/bin/nlpm-check \
https://raw.githubusercontent.com/xiaolai/nlpm-for-claude/main/bin/nlpm-check
chmod +x /usr/local/bin/nlpm-check
nlpm-check . # exit 1 on high-confidence findings