Model-routing data-classification linter for Manolii agent frontmatter, PR bodies, and routing config.
Project description
manolii-routing-lint
Model-routing data-classification linter for the Manolii ecosystem. Wraps
scripts/lint-agent-routing.py (master) as an installable uv workspace member,
consumed downstream by pinned git ref (no registry).
Install (consumer)
# consumer pyproject.toml
[project]
dependencies = ["manolii-routing-lint"]
[tool.uv.sources]
manolii-routing-lint = { git = "https://github.com/manolii-org/master", subdirectory = "packages/manolii-routing-lint", tag = "manolii-routing-lint-v0.2.0" }
Use
manolii-routing-lint # lint all .claude/agents/*.md in the cwd repo
manolii-routing-lint --list-oss # enumerate OSS-routed model identifiers
manolii-routing-lint --check-pr-body BODY.md
python -m manolii_routing_lint --skills
Config resolution
The linter reads .claude/model-routing.json from the repo being linted.
Because an installed package cannot use __file__-relative paths, resolution is
deterministic (no ancestor walk, so a governance gate never binds to a nested
submodule/worktree config):
| Precedence | Source |
|---|---|
| 1 | MODEL_ROUTING_CONFIG env (explicit file path) |
| 2 | MANOLII_REPO_ROOT env → <root>/.claude/model-routing.json |
| 3 | <cwd>/.claude/model-routing.json |
If none resolves, the linter fails closed (exit 2) rather than guessing.
Dual-run / parity
During the migration the original scripts/lint-agent-routing.py stays in place
(synced to consumer repos, used by pre-commit/CI). Byte-equivalence between the
script and this package is enforced by scripts/tests/test_routing_lint_parity.py.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file manolii_routing_lint-0.2.1.tar.gz.
File metadata
- Download URL: manolii_routing_lint-0.2.1.tar.gz
- Upload date:
- Size: 31.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c13856bf74cd667077ac5dbc71dc09909224149cea2ff6831db2586a7ee460b
|
|
| MD5 |
50fe7b3a1db2bc1ec545ae9117d106a7
|
|
| BLAKE2b-256 |
63079384523e3a0b1c3763cbe28e922e9023d1fa0d4582e2a57df7918df01206
|
Provenance
The following attestation bundles were made for manolii_routing_lint-0.2.1.tar.gz:
Publisher:
publish-routing-lint.yml on Manolii-org/master
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
manolii_routing_lint-0.2.1.tar.gz -
Subject digest:
4c13856bf74cd667077ac5dbc71dc09909224149cea2ff6831db2586a7ee460b - Sigstore transparency entry: 2193994513
- Sigstore integration time:
-
Permalink:
Manolii-org/master@971cad2a0606cbeb68fdfb085253e71723fc5f70 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/Manolii-org
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-routing-lint.yml@971cad2a0606cbeb68fdfb085253e71723fc5f70 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file manolii_routing_lint-0.2.1-py3-none-any.whl.
File metadata
- Download URL: manolii_routing_lint-0.2.1-py3-none-any.whl
- Upload date:
- Size: 24.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d41725dfc1dd1d897f1de92fad8bfe97568029d9b3879a114913e3cb5d6c76c8
|
|
| MD5 |
a8b7432272e62efe4f9494f7302e9b53
|
|
| BLAKE2b-256 |
3b2562ea8788a5ea3fea5ec158797cd88b16a46e09654f7ae58e463b7e110cd3
|
Provenance
The following attestation bundles were made for manolii_routing_lint-0.2.1-py3-none-any.whl:
Publisher:
publish-routing-lint.yml on Manolii-org/master
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
manolii_routing_lint-0.2.1-py3-none-any.whl -
Subject digest:
d41725dfc1dd1d897f1de92fad8bfe97568029d9b3879a114913e3cb5d6c76c8 - Sigstore transparency entry: 2193994519
- Sigstore integration time:
-
Permalink:
Manolii-org/master@971cad2a0606cbeb68fdfb085253e71723fc5f70 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/Manolii-org
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-routing-lint.yml@971cad2a0606cbeb68fdfb085253e71723fc5f70 -
Trigger Event:
workflow_dispatch
-
Statement type: