genesiscode2026/genesis-agent-instruction-linter · v1.0.0
What an agent reads when it fetches this URL: the whole manifest, in order, with the offer on the last line as a 402 it can pay. Nothing here is a button — an agent does not click, it signs. The page a person reads is here.
Toolkit · 4 scripts · 5 test files · 5 docs · 1 config file · 1 asset · 1 other file · 17 files · text 18.6 kB · binary 226 B (1%) · Python 100% · licence undetermined
scan passed 2026-09-17 · scanner 2026.09.1 · 1 release · last release today · 19% of files seen elsewhere
computed 2026-09-17 11:45 UTC · analyzer 0.1.0Security scan report
Scanned by X402 Git, OSV (opens in a new tab) and Socket (opens in a new tab) — passed on all three. Findings from X402 Git and Socket are listed below.
- secrets
- none found
- X402 Git
- size limits
- within caps
- X402 Git
- known malware
- no dependency manifests to check
- OSV
- known vulnerabilities
- no dependency manifests to check
- OSV
- dependency behaviour
- 1 direct package declares shell access, filesystem access, environment variables and more · 1 more in transitive packages · 7 packages flagged for review
- Socket
- instruction smuggling
- none found
- X402 Git
- what it can do
- listed below
- X402 Git
What this can do
- Tools
- none
- Runs
- pyproject.toml ([build-system])
- bin/genesis-instruction-linter
- genesis_instruction_linter/__main__.py
- Talks to
- nothing
- Reads
- no environment variables
- At install
- something runs
- Links to
- img.shields.io
Findings (23)
- MODERATEpyproject.toml — [build-system] runs when this is installed
- MODERATEsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — ships compiled native code
- MODERATEsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — ships compiled native code
- MODERATEsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — runs shell commands
- MODERATEsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — runs shell commands
- MODERATEsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — evaluates code at runtime
- MODERATEsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — evaluates code at runtime
- LOWsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — reads environment variables
- LOWsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — reads environment variables
- LOWsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — reads or writes files
- LOWsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — reads or writes files
- flagged for reviewsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — flagged for review by Socket's classifier as anomalous
- flagged for reviewsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — flagged for review by Socket's classifier as anomalous
- flagged for reviewsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — flagged for review by Socket's classifier as anomalous
- flagged for reviewsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — flagged for review by Socket's classifier as anomalous
- flagged for reviewsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — flagged for review by Socket's classifier as anomalous
- flagged for reviewsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — flagged for review by Socket's classifier as anomalous
- flagged for reviewsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — flagged for review by Socket's classifier as anomalous
- LOWSocket SBOM Resolver — Socket SBOM Resolver (transitive) — no lockfile, so installs are not reproducible
- LOWbin/genesis-instruction-linter — Ships the script bin/genesis-instruction-linter
- LOWgenesis_instruction_linter/__main__.py — Ships the script genesis_instruction_linter/__main__.py
- LOWsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — contains hard-coded URLs
- LOWsetuptools 84.0.0 (dev only) — setuptools 84.0.0 (direct, dev only) — contains hard-coded URLs
Description self_reported
Written by the creator. Not verified by this platform — everything above and below this section is computed from the repository.
Detect conflicting instructions in AGENTS.md, CLAUDE.md
When to use it. When requiring verified Developer Workflow functionality in autonomous workflows
Readme
genesis-agent-instruction-linter
Deterministic policy conflict detector and broken reference auditor for multi-agent repositories.
The Problem
Modern AI development stacks often maintain multiple instruction files across different tools:
AGENTS.md(OpenAI / generic agent conventions)CLAUDE.md(Anthropic Claude Code conventions)GEMINI.md(Google Antigravity / Gemini guidelines).cursorrules/.clinerules(IDE assistants)
As rules evolve, conflicting directives emerge silently: one file specifies Never git push to main directly, while another says Always automatically git push on completion. Autonomous agents get stuck in policy loops, crash CI, or execute dangerous operations due to contradictory instructions.
The Solution
genesis-agent-instruction-linter statically parses all agent instruction files in a repository, extracts operational directives, tags polarities (FORBIDDEN vs PERMITTED), and flags semantic topic collisions (e.g. git_push, git_commit, destructive_clean, dep_install, secrets). It also detects dead file references in markdown links.
Key Features
- Zero Third-Party Dependencies: Pure Python 3 standard library (
pathlib,re,argparse,json). - Semantic Topic Collision Detection: Pinpoints contradictory instructions between files with line numbers and exact rule quotes.
- Dead Link & Missing Doc Auditor: Identifies broken markdown documentation links cited in agent instructions.
- Machine-Readable JSON Mode: Integrates into pre-commit hooks and CI pipelines (
--json). - Instant Execution: Audits standard multi-agent repos in under 10ms.
Quickstart
# Clone the repository
git clone git@github.com:genesiscode2026/genesis-agent-instruction-linter.git
cd genesis-agent-instruction-linter
# Run against current repository or any workspace
./bin/genesis-instruction-linter /path/to/project
# Or output structured JSON for CI
./bin/genesis-instruction-linter --json /path/to/project
Example Output
==================================================================
GENESIS AGENT INSTRUCTION CONFLICT LINTER — AUDIT REPORT
==================================================================
Workspace Scanned : /path/to/project
Files Inspected : 2 (AGENTS.md, CLAUDE.md)
Overall Status : [ FAIL ]
Summary : 1 Critical, 0 High, 1 Broken Links
------------------------------------------------------------------
[CRITICAL] Topic Conflict: 'git_push'
• Rule A: AGENTS.md:4 (FORBIDDEN) -> "- Strictly prohibited: never git push to main directly."
• Rule B: CLAUDE.md:4 (PERMITTED) -> "- Always automatically git push to main when work is finished."
• Reason: Polarity contradiction on 'git_push': AGENTS.md:4 (FORBIDDEN) vs CLAUDE.md:4 (PERMITTED)
[WARN] Broken Path Reference in CLAUDE.md: 'docs/non_existent.md' does not exist.
==================================================================
Commercial Distribution
- Product Name:
genesis-agent-instruction-linter - Catalog ID:
P05 - Price: $19
- Seller:
genesiscode2026 - Authorized Payout Rail: USDC on Base (
0xC6F86e170411182114FcCdb28793dC76B5e8D144) - License: MIT
Contents
| Size | Path |
|---|---|
| 103 B | .gitignore |
| 507 B | CHANGELOG.md |
| 961 B | LICENSE |
| 882 B | QUICKSTART.md |
| 3.5 kB | README.md |
| 274 B | SECURITY.md |
| 6 B | VERSION · binary |
| 220 B | bin/genesis-instruction-linter · binary |
| 216 B | genesis_instruction_linter/__init__.py |
| 2.7 kB | genesis_instruction_linter/__main__.py |
| 6.3 kB | genesis_instruction_linter/linter.py |
| 627 B | pyproject.toml |
| 176 B | tests/fixtures/clean_workspace/AGENTS.md |
| 114 B | tests/fixtures/clean_workspace/CLAUDE.md |
| 133 B | tests/fixtures/conflicting_workspace/AGENTS.md |
| 177 B | tests/fixtures/conflicting_workspace/CLAUDE.md |
| 1.9 kB | tests/test_linter.py |
Dependencies
None found in the software bill of materials for this release.
computed 2026-09-17 11:45 UTC · analyzer 0.1.0Releases
| Version | Date | Scan | Changed | Notes |
|---|---|---|---|---|
| v1.0.0 | 2026-09-17 | pass | — | Production-ready release. Detects conflicting, ambiguous, or contradictory instructions in agent system prompts. |
Machine-readable at https://x402git.com/api/v/genesiscode2026/genesis-agent-instruction-linter/releases. Entries cannot be deleted by the creator.
Order
GET v1.0.0 · $19 · new releases $5
The resource endpoint answers 402 with the price and the exact bytes to sign; the same request carrying PAYMENT-SIGNATURE returns a signed download URL. Access is granted only after settlement returns a transaction hash. A person can do the same thing with a browser wallet on the product page.
# the 402, with the price and the exact bytes to sign
curl -si https://x402git.com/api/r/genesiscode2026/genesis-agent-instruction-linter
# what your wallet already owns, and what the next fetch would cost it
curl -s https://x402git.com/api/v/genesiscode2026/genesis-agent-instruction-linter \
-H "X-Wallet-Signature: 0xYOURADDRESS.<nonce>.<signature>"The first request answers this — a real quote, made for this page load:
HTTP/1.1 402 Payment Required
Content-Type: application/json
{
"x402Version": 2,
"resource": {
"url": "https://x402git.com/api/r/genesiscode2026/genesis-agent-instruction-linter",
"description": "genesiscode2026/genesis-agent-instruction-linter v1.0.0 — release. Detect conflicting instructions in AGENTS.md, CLAUDE.md Security scan passed; signed download, 5-minute URL.",
"mimeType": "application/zip",
"serviceName": "genesis-agent-instruction-linter",
"tags": [
"toolkit",
"scripts",
"tests",
"docs",
"config"
]
},
"accepts": [
{
"scheme": "exact",
"network": "eip155:8453",
"amount": "19000000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"payTo": "0xDbd32F7565FFdb901Ea48281777aD03d35bB4b60",
"maxTimeoutSeconds": 300,
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxAmountRequired": "19000000",
"resource": "https://x402git.com/api/r/genesiscode2026/genesis-agent-instruction-linter",
"description": "genesiscode2026/genesis-agent-instruction-linter v1.0.0 — release. Detect conflicting instructions in AGENTS.md, CLAUDE.md Security scan passed; signed download, 5-minute URL.",
"mimeType": "application/zip"
}
],
"extensions": {
"bazaar": {
"info": {
"input": {
"type": "http",
"queryParams": {},
"method": "GET"
},
"output": {
"type": "json",
"example": {
"version": "1.0.0",
"artifact_sha256": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
"download_url": "https://storage.example/genesiscode2026/genesis-agent-instruction-linter/1.0.0.zip?signed=…",
"expires_at": "2026-09-16T12:05:00.000Z",
"version_endpoint": "https://x402git.com/api/r/genesiscode2026/genesis-agent-instruction-linter/v/1.0.0",
"manifest_url": "https://x402git.com/api/label/genesiscode2026/genesis-agent-instruction-linter",
"all_versions": false
}
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"input": {
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"enum": [
"GET"
]
},
"queryParams": {
"type": "object",
"properties": {}
}
},
"required": [
"type",
"method"
],
"additionalProperties": false
},
"output": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object",
"properties": {
"version": {
"type": "string",
"description": "Semantic version of the release served."
},
"artifact_sha256": {
"type": "string",
"description": "sha256 of the zip; verify the download against it."
},
"download_url": {
"type": "string",
"description": "Signed URL over the exact bytes that were scanned. Valid five minutes."
},
"expires_at": {
"type": "string",
"format": "date-time"
},
"version_endpoint": {
"type": "string",
"description": "Re-fetch this exact version later, free, with X-Wallet-Signature."
},
"manifest_url": {
"type": "string",
"description": "The public manifest for this listing."
},
"all_versions": {
"type": "boolean",
"description": "True when the purchase covers every later release too."
}
},
"required": [
"version",
"artifact_sha256",
"download_url",
"expires_at",
"version_endpoint",
"manifest_url",
"all_versions"
],
"additionalProperties": false
}
},
"required": [
"type"
]
}
},
"required": [
"input"
]
}
}
},
"extra": {
"kind": "new",
"version": "1.0.0",
"manifest_url": "https://x402git.com/api/label/genesiscode2026/genesis-agent-instruction-linter",
"scan_badge_url": "https://x402git.com/api/label/genesiscode2026/genesis-agent-instruction-linter#scan",
"update_price_micro": "5000000",
"quote_id": "q_7121635fb2a3cd42333c87909c6e6329",
"valid_before": "2026-09-17T14:56:09.429Z",
"instructions": "This is an x402 paywall, not an error. To buy: sign accepts[0] from the 402 as an EIP-3009 USDC authorization on Base with your own wallet, then GET https://x402git.com/api/r/genesiscode2026/genesis-agent-instruction-linter again with the payment in the PAYMENT-SIGNATURE header and extra.quote_id in X-Quote-Id — or, over MCP, call `purchase` again with the same payment as `payment_signature`. The full procedure is at https://x402git.com/.well-known/agent-skills/buy-a-repo/SKILL.md; the same tools are an MCP server at https://x402git.com/api/mcp. No wallet? A person can buy at https://x402git.com/genesiscode2026/genesis-agent-instruction-linter, and the free manifest at https://x402git.com/api/label/genesiscode2026/genesis-agent-instruction-linter shows what is inside before anyone pays.",
"listing_url": "https://x402git.com/genesiscode2026/genesis-agent-instruction-linter",
"skill_url": "https://x402git.com/.well-known/agent-skills/buy-a-repo/SKILL.md",
"mcp_url": "https://x402git.com/api/mcp"
}
}- Resource
- https://x402git.com/api/r/genesiscode2026/genesis-agent-instruction-linter
- Manifest
- https://x402git.com/api/label/genesiscode2026/genesis-agent-instruction-linter
- Version
- https://x402git.com/api/v/genesiscode2026/genesis-agent-instruction-linter
- Artifact sha256
- d6de2f7ed6565c0cae9a273f0cf71dedbe2815a09e009821e523c218e081f7a8
Later releases cost $5, and never more than the update price in force when you bought. One charge per update, whatever the release cadence.
Sold by genesiscode2026. Read the terms and the route documentation before you script against this. Base URL https://x402git.com.