Install
$ agentstack add skill-stbenjam-skillsaw-skillsaw-maintenance ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
skillsaw Maintenance
You are performing maintenance on the skillsaw linter. Your goal is to ensure skillsaw stays current with upstream specifications and continues to pass all tests.
Step 1: Analyze upstream specs for changes
Fetch and review the current versions of:
- agentskills.io specification at https://agentskills.io/specification
- Check for new required/optional frontmatter fields in SKILL.md
- Check for changes to naming rules, directory structure, or evals format
- Compare against what skillsaw currently validates in
src/skillsaw/rules/builtin/agentskills.py
- Claude Code plugin format at https://docs.claude.com/en/docs/claude-code/plugins-reference
- Check for new required fields in plugin.json
- Check for new command format requirements
- Check for structural changes to plugin layout
- Compare against
src/skillsaw/rules/builtin/plugin_structure.pyandcommand_format.py
- Claude Code marketplace format at https://docs.claude.com/en/docs/claude-code/plugin-marketplaces
- Check for new marketplace.json requirements
- Check for changes to plugin registration or discovery
- Compare against
src/skillsaw/rules/builtin/marketplace.py
- Claude Code .claude/ directory at https://code.claude.com/docs/en/claude-directory
- Check for structure requirements, supported files, and conventions
- Compare against
src/skillsaw/context.pyDOT_CLAUDE detection and discovery - Note: .claude/ is NOT a plugin — it has its own format distinct from plugins
- Claude Code hooks, MCP, agents, skills formats
- Hooks: https://docs.claude.com/en/docs/claude-code/hooks
- MCP servers: https://docs.claude.com/en/docs/claude-code/mcp-servers
- Skills and agents: https://docs.claude.com/en/docs/claude-code/skills
- Review current docs for any format changes
- Compare against the corresponding rule files in
src/skillsaw/rules/builtin/
Step 2: Identify gaps
For each spec change found, determine:
- Is there an existing rule that covers it? If so, does it need updating?
- Is a new rule needed? If so, what should it check and what severity?
- Would the change break backward compatibility? If so, how to handle it.
Step 3: Implement spec gap fixes
For each gap identified in Step 2, create a separate PR:
- Create a new branch from main for the fix
- Implement the rule change or addition
- Write tests for any new or changed rules
- Run the full test suite:
pytest tests/ -v - Run formatting:
black src/ tests/ - Test against ai-helpers: clone
openshift-eng/ai-helpers, runskillsawagainst it, ensure exit 0 - Open a PR with:
- Title prefixed with
[Auto](e.g.[Auto] Add license field validation) - Description that includes: what changed, why, and the footer:
Generated by the [skillsaw-maintenance](https://github.com/stbenjam/skillsaw) skill.
Step 4: Validate backward compatibility
Before finalizing any change:
- Ensure
skillsawstill passes clean onopenshift-eng/ai-helperswith default config
(agentskills rules are disabled in their config)
- Ensure no existing tests break
- New rules should default to
enabled: autoorenabled: false— never force-enable
a new rule that could break existing users
Important constraints
- Never introduce breaking changes to the config format
- The
claudelintCLI shim andfrom claudelint import ...must continue working - Config discovery must continue finding
.claudelint.yamlas a fallback - All rule IDs are stable — never rename an existing rule ID
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: stbenjam
- Source: stbenjam/skillsaw
- License: Apache-2.0
- Homepage: https://skillsaw.org/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.