Skip to content

Repository files navigation

ProvenanceLint

Supply-chain linting and integrity manifests for agent instructions, skills, and MCP configuration.

Agent behavior can change without application code changing. AGENTS.md, SKILL.md, editor rules, and MCP configuration are executable context in practice—so ProvenanceLint treats them like a supply chain.

30-second demo

python -m pip install -e .
provenancelint scan .
provenancelint manifest . --output provenancelint.lock.json
provenancelint verify provenancelint.lock.json

What it catches

  • Private keys and common live-token shapes in instruction surfaces.
  • Invisible Unicode and bidirectional control characters.
  • Download-and-execute shell pipelines.
  • Instruction-override and approval-bypass phrases.
  • Unauthorized addition, removal, or modification of instruction files.

Discovery includes AGENTS.md, CLAUDE.md, GEMINI.md, SKILL.md, .skill.md, .cursor/rules/*.mdc, Copilot instructions, and MCP JSON files. Build and dependency directories are ignored.

CI and code scanning

provenancelint scan . --format sarif --output provenancelint.sarif

JSON output has stable finding fingerprints; SARIF output can be uploaded to GitHub code scanning. Use --fail-on medium|high|critical|none to select the gate.

Integrity lock

The manifest command hashes only discovered instruction surfaces. Review and commit the lock file, then run verify before trusting a new checkout or agent session:

provenancelint manifest . --output provenancelint.lock.json
git add provenancelint.lock.json

Exit codes: 0 clean, 1 threshold reached, 5 manifest drift, 2 invalid input.

Security scope

ProvenanceLint is a fast static signal, not proof that an instruction is safe. Findings are deliberately narrow and reviewable. A clean result should be combined with repository permissions, pinned dependencies, and runtime tool controls.

Development

python -m pip install -e .
python -m unittest discover -s tests -v

Project origin

Created and maintained by SamAlpha1. The canonical origin is SamAlpha1/ProvenanceLint; see .provenance/origin.json, NOTICE, and the immutable Git history.

MIT licensed. Copies must preserve the copyright and license notice.

About

Static security linter for agent instructions, skills, and MCP configurations.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages