| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- # claude-mods justfile
- # Run tasks with: just <task>
- # Default: list available tasks
- default:
- @just --list
- # Run all validation tests
- test:
- @echo "Running claude-mods validation..."
- @bash tests/validate.sh
- # Validate YAML frontmatter only
- validate-yaml:
- @bash tests/validate.sh --yaml-only
- # Check file naming conventions
- validate-names:
- @bash tests/validate.sh --names-only
- # Windows test runner
- test-win:
- powershell -ExecutionPolicy Bypass -File tests/validate.ps1
- # Count extensions
- stats:
- @echo "Agents: $(find agents -name '*.md' | wc -l)"
- @echo "Commands: $(find commands -name '*.md' | wc -l)"
- @echo "Skills: $(find skills -name 'SKILL.md' | wc -l)"
- @echo "Rules: $(find templates/rules -name '*.md' 2>/dev/null | wc -l)"
- # List all agents
- list-agents:
- @ls -1 agents/*.md | xargs -n1 basename | sed 's/\.md$//'
- # List all commands
- list-commands:
- @find commands -name '*.md' -not -path '*/\.*' | xargs -n1 basename | sed 's/\.md$//' | sort -u
- # List all skills
- list-skills:
- @ls -1 skills/*/SKILL.md | xargs -n1 dirname | xargs -n1 basename
- # List all rules
- list-rules:
- @find templates/rules -name '*.md' 2>/dev/null | xargs -n1 basename | sed 's/\.md$//' || echo "(none)"
- # Validate settings template
- validate-settings:
- @echo "Validating settings template..."
- @jq empty templates/settings.local.json && echo "Valid JSON" || echo "Invalid JSON"
- # Validate plugin + marketplace manifests (.claude-plugin/)
- # Uses the authoritative `claude plugin validate` when available.
- validate-plugin:
- @echo "Validating plugin manifests..."
- @test ! -f marketplace.json || (echo "ERROR: stray marketplace.json at repo root - move to .claude-plugin/" && exit 1)
- @claude plugin validate .
- @tmp="$(mktemp -d)"; mkdir -p "$tmp/.claude-plugin"; cp .claude-plugin/plugin.json "$tmp/.claude-plugin/plugin.json"; claude plugin validate "$tmp"; rm -rf "$tmp"
|