{"repo":"genesiscode2026/genesis-tool-contract-lint","private":true,"description":null,"default_branch":"main","stars":0,"forks":0,"pushed_at":"2026-09-17T10:23:58Z","languages":{"Python":8779},"files":15,"tree":[".gitignore","CHANGELOG.md","LICENSE","QUICKSTART.md","README.md","SECURITY.md","VERSION","bin/genesis-tool-lint","genesis_tool_lint/__init__.py","genesis_tool_lint/__main__.py","genesis_tool_lint/linter.py","pyproject.toml","tests/fixtures/invalid_tools.json","tests/fixtures/valid_tools.json","tests/test_linter.py"],"sizes":{".gitignore":103,"CHANGELOG.md":608,"LICENSE":1072,"QUICKSTART.md":472,"README.md":1997,"SECURITY.md":275,"VERSION":6,"bin/genesis-tool-lint":211,"genesis_tool_lint/__init__.py":139,"genesis_tool_lint/__main__.py":2389,"genesis_tool_lint/linter.py":4961,"pyproject.toml":628,"tests/fixtures/invalid_tools.json":169,"tests/fixtures/valid_tools.json":352,"tests/test_linter.py":1079},"readme":"# genesis-tool-contract-lint\n\n> **Deterministic schema linter for LLM function calling and tool declarations.**\n\n[![Version](https://img.shields.io/badge/version-1.0.0-blue.svg)](VERSION)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![Zero Dependencies](https://img.shields.io/badge/dependencies-0-brightgreen.svg)](pyproject.toml)\n\n---\n\n## The Problem\n\nWhen developers create function-calling schemas for OpenAI, Anthropic, or Gemini, subtle mistakes cause runtime failures:\n- Function names contain forbidden characters (spaces, special punctuation).\n- Descriptions are empty or terse, leading LLMs to call the wrong tools.\n- Property types use unsupported JSON types.\n- Fields listed under `required` are missing from the `properties` map.\n\n## The Solution\n\n`genesis-tool-contract-lint` deterministically lints tool declarations against official LLM provider specifications before deployment, ensuring flawless function calling.\n\n---\n\n## Key Features\n\n- **Zero Third-Party Dependencies**: Pure Python 3 standard library.\n- **Provider Conformance**: Checks OpenAI, Anthropic, and Gemini function declaration formats.\n- **Schema Validation**: Checks parameter object structures, property types, and required field definitions.\n- **CI / Pre-commit Gate**: Returns exit code 1 if any schema errors are detected.\n\n---\n\n## Quickstart\n\n```bash\n# Clone the repository\ngit clone git@github.com:genesiscode2026/genesis-tool-contract-lint.git\ncd genesis-tool-contract-lint\n\n# Lint a tools declaration file\n./bin/genesis-tool-lint ./tools.json\n\n# Pipe from stdin or another process\ncat tools.json | ./bin/genesis-tool-lint -\n\n# Output machine-readable JSON\n./bin/genesis-tool-lint ./tools.json --json\n```\n\n---\n\n## Commercial Distribution\n\n- **Product Name**: `genesis-tool-contract-lint`\n- **Catalog ID**: `E05`\n- **Price**: $19\n- **Seller**: `genesiscode2026`\n- **Authorized Payout Rail**: USDC on Base (`0xC6F86e170411182114FcCdb28793dC76B5e8D144`)\n- **License**: MIT\n","price_usd":"19.00","clone_checkout":"https://api.checkout402.com/c/chk_PNOvQh1PDwqaUMtd","rehearse_checkout":"https://api.checkout402.com/c/chk_PNOvQh1PDwqaUMtd/test","preview":"/r/genesiscode2026/genesis-tool-contract-lint/f/<path> serves file CONTENTS for the seller's preview paths; other paths answer with the price","how_to_buy":"pay clone_checkout with x402 (pay402 does it in one call); the goods arrive as payload_base64, a tar.gz of the full repo. Rehearse first at rehearse_checkout: same flow, simulated money.","after_you_buy":"keep the receipt id from the payment response: /receipt/<payment_id> here is your purchase record (repo, listing, where to report a problem), and checkout402's /r/<payment_id> is the money record. Tell your human both URLs."}