Validate GenLayer intelligent contracts with the GenVM linter.

MITAuto-check: notesDevelopment

Install Genvm Lint

skills CLI
$ npx skills add internet-court/internet-court-skill --skill genvm-lint -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install internet-court/internet-court-skill genvm-lint --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .claude/skills && cp -r skills-src/vendored/genlayer/genvm-lint .claude/skills/genvm-lint && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
genvm-lint
GitHub stars
6.6k
Used in
1 other repo
Token cost
~699 tokens
SKILL.md length
193 words
Files
3
Skills in repo
80
Repo updated
First seen
Licence
MIT

At a glance

Validate GenLayer intelligent contracts with the GenVM linter.

  • Works in 5 steps: Run genvm-lint check contract.py --json → Parse JSON for specific errors → Fix each error in the contract → …
  • Tasks that involve Linting and formatting
  • SKILL.md covers Setup, Workflow, Commands and Output Formats, plus 2 more sections
  • Calls pip

What it does

Genvm Lint is an agent skill from internet-court/internet-court-skill. Validate GenLayer intelligent contracts with the GenVM linter.

Its SKILL.md is about 700 tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `agents/openai.yaml`).

It sits in Development, covering Linting and formatting. The repository describes itself as: The trust layer for agent-to-agent commerce — natural-language mandates, ERC-7710 delegated permissions, x402 payments, escrow, and dispute resolution as one open, catch-all… The licence is MIT.

When your agent uses it

  • Tasks that involve Linting and formatting

Example prompts

  • “/genvm-lint”

Requirements

  • Python 3
  • Pre-approved tools (allowed-tools): Bash, Read

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Run genvm-lint check contract.py --json
  2. Parse JSON for specific errors
  3. Fix each error in the contract
  4. Re-run check until "ok": true
  5. Proceed to tests

What it can do on your machine

Read from SKILL.md and the folder at commit fa89195. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pip

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pip, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Genvm Lint loads about 699 tokens when it runs. Until then it costs about 18 tokens; SKILL.md has 193 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~18
When it runs · the whole SKILL.md, loaded when a task matches
~699

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from internet-court/internet-court-skill at commit fa89195, republished under its MIT licence (© internet-court). 193 words, ~699 tokens.

Download SKILL.mdSave it as .claude/skills/genvm-lint/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
genvm-lint
description
Validate GenLayer intelligent contracts with the GenVM linter.
allowed-tools
Bash, Read

GenVM Lint

Validate intelligent contracts for safety, correctness, and SDK compliance.

Setup

Requires genvm-linter (included in requirements.txt for boilerplate projects):

bash
pip install genvm-linter

Workflow

Always lint before testing. Run genvm-lint check after writing or modifying a contract. Fix all errors before running tests.

bash
genvm-lint check contracts/my_contract.py

check runs both lint (AST safety) and validate (SDK semantics) in one pass.

Commands

bash
genvm-lint check contracts/my_contract.py
genvm-lint check contracts/my_contract.py --json  # Machine-readable output
lint (fast AST checks only, ~50ms)
bash
genvm-lint lint contracts/my_contract.py

Catches:

  • Forbidden imports (os, sys, subprocess, random, etc.)
  • Non-deterministic patterns (bare float usage)
  • Contract header structure issues
validate (SDK semantic checks, ~200ms)
bash
genvm-lint validate contracts/my_contract.py

Validates:

  • Types exist in SDK (TreeMap, DynArray, Address, etc.)
  • Decorators correctly applied (@gl.public.view, @gl.public.write)
  • Storage fields have valid types (no dict/list)
  • Method signatures correct
schema (extract ABI)
bash
genvm-lint schema contracts/my_contract.py
genvm-lint schema contracts/my_contract.py --json
genvm-lint schema contracts/my_contract.py --output abi.json
typecheck (Pyright/Pylance)
bash
genvm-lint typecheck contracts/my_contract.py
genvm-lint typecheck contracts/my_contract.py --json
genvm-lint typecheck contracts/my_contract.py --strict

Runs Pyright with SDK paths auto-configured. Catches type mismatches, missing attributes, undefined variables.

download (pre-download GenVM artifacts)
bash
genvm-lint download                    # Latest
genvm-lint download --version v0.2.12  # Specific
genvm-lint download --list             # Show cached

Output Formats

Human (default)
✓ Lint passed (3 checks)
✓ Validation passed
  Contract: MyContract
  Methods: 8 (5 view, 3 write)
JSON (--json)
json
{"ok":true,"lint":{"ok":true,"passed":3},"validate":{"ok":true,"contract":"MyContract","methods":8,"view_methods":5,"write_methods":3,"ctor_params":2}}

Exit Codes

  • 0 — All checks passed
  • 1 — Lint or validation errors found
  • 2 — Contract file not found
  • 3 — SDK download failed

Agent Workflow

When fixing lint errors iteratively:

  1. Run genvm-lint check contract.py --json
  2. Parse JSON for specific errors
  3. Fix each error in the contract
  4. Re-run check until "ok": true
  5. Proceed to tests

© internet-court, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in vendored/genlayer/genvm-lint of internet-court/internet-court-skill.

  • SKILL.md
  • LICENSE
  • agents/openai.yaml

Open the folder on GitHubat commit fa89195

Used in 1 other repository

We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in internet-court/internet-court-skill, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Genvm Lint next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Genvm Lint compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Genvm Lint this skillinternet-court/internet-court-skill6.6k1 repos~699Automated safety check: NotesMIT
Minimizing Ty Ecosystem Changesastral-sh/ruff50k—~4.6kAutomated safety check: PassMIT
Install Anti-Slop Oxlint Rulesdmmulroy/anti-slop5.4k—~2.2kAutomated safety check: PassMIT
Babysit PR To Pass CIsgl-project/sglang37k2 repos~3kAutomated safety check: PassApache-2.0
Rust Best Practicesfarm-fe/farm5.6k3 repos~1.1kAutomated safety check: PassMIT
Summarise Ecosystem Resultsastral-sh/ruff50k—~2.2kAutomated safety check: PassMIT

Similar skills

  • Official

    A skill your agent uses when a user says "minimize this ty ecosystem change", "reproduce this ecosystem result", "investigate a primer difference", "investigate a mypyprimer difference"…

    50k GitHub stars~4.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Installs, updates or migrates the vendored anti-slop Oxlint plugin in a repository, keeping local rule changes and the plugin's license and provenance files.

    5.4k GitHub stars~2.2k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Babysit PR To Pass CI

    sgl-project/sglang

    Start and persistently pursue a goal to babysit an SGLang pull request until selected GitHub Actions workflows pass on the latest PR head.

    37k GitHub starsUsed in 2 repos~3k tokens
    DevelopmentAuto-check passed
  • Guide for writing idiomatic Rust code based on Apollo GraphQL's best practices handbook.

    5.6k GitHub starsUsed in 3 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Official

    A skill your agent uses when a user says "summarise ecosystem results", "summarize this ty ecosystem report", "what changed in this ecosystem run?", or asks to summarise or summarize ty ecosystem…

    50k GitHub stars~2.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Go Pedantry

    chromedp/chromedp

    This skill should be used when the user is writing Go code and needs guidance on Go-specific pedantry: error wrapping with fmt.Errorf and %w, interface design (accept interfaces return structs)…

    13k GitHub stars~3.7k tokensUpdated today
    DevelopmentAuto-check passed

More from internet-court/internet-court-skill

All 80 skills in this repo
  • Kleros IPFS Upload

    internet-court/internet-court-skill

    Uploads one Kleros-related file per paid request to IPFS through the Kleros x402 gateway for 0.01 USDC on Base, returning a CID that Kleros contracts can reference.

    6.6k GitHub stars~4.9k tokensUpdated 1 mo ago
    Auto-check: notes
  • 0G Compute Network Guide

    internet-court/internet-court-skill

    Guides building on the 0G Compute Network, a decentralized GPU marketplace for AI inference and fine-tuning, with SDK patterns and CLI commands.

    6.6k GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • PNP Prediction Markets on Solana

    internet-court/internet-court-skill

    Creates, trades and settles permissionless prediction markets on Solana with any SPL token as collateral, including social-media and custom-oracle markets.

    6.6k GitHub stars~7.5k tokensUpdated 1 mo ago
    Auto-check: notes
  • BNB Chain MCP Server

    internet-court/internet-court-skill

    Connects an agent to the BNB Chain MCP server to read blocks and contracts, move tokens and NFTs, register ERC-8004 agents and use Greenfield storage.

    6.6k GitHub starsUsed in 1 repo~1.7k tokens
    Auto-check passed
  • GenLayer ERC-7710 Connector

    internet-court/internet-court-skill

    Specifies how a GenLayer Intelligent Contract decision about an agent's performance becomes an ERC-7710 revocation or policy change, through a relayer or bridge and an EVM controller.

    6.6k GitHub starsUsed in 1 repo~2.2k tokens
    Auto-check passed
  • GenLayer Agent Supervision Adapter

    internet-court/internet-court-skill

    Specifies how a GenLayer Intelligent Contract should supervise an AI agent, with review rubrics, evidence schemas and continue, warn, constrain or revoke decisions.

    6.6k GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed

Categories

Questions about Genvm Lint

What does Genvm Lint do?

Validate GenLayer intelligent contracts with the GenVM linter. Genvm Lint is an agent skill from internet-court/internet-court-skill. Validate GenLayer intelligent contracts with the GenVM linter.

When should I use Genvm Lint?

Genvm Lint fits situations like: tasks that involve Linting and formatting.

How do I install Genvm Lint in Claude Code?

Run `npx skills add internet-court/internet-court-skill --skill genvm-lint -a claude-code`. Or copy the skill folder (vendored/genlayer/genvm-lint in internet-court/internet-court-skill) into .claude/skills/genvm-lint in your project. Claude Code loads it when a task matches its description.

How do I install Genvm Lint in Codex?

Run `npx skills add internet-court/internet-court-skill --skill genvm-lint -a codex`. Or copy the skill folder (vendored/genlayer/genvm-lint in internet-court/internet-court-skill) into .agents/skills/genvm-lint in your project. Codex loads it when a task matches its description.

Can I use Genvm Lint in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add internet-court/internet-court-skill --skill genvm-lint -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/genvm-lint, .gemini/skills/genvm-lint, .github/skills/genvm-lint and .opencode/skills/genvm-lint in your project.

What does Genvm Lint need to run?

Going by SKILL.md and its folder, Genvm Lint needs the command-line tools its instructions call (pip). Our summary lists: Python 3. Its frontmatter pre-approves these tools: Bash, Read.

Does Genvm Lint access the network?

SKILL.md contains no URLs. Its commands use pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Genvm Lint safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Genvm Lint use?

Genvm Lint is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Genvm Lint use?

About 699 tokens (SKILL.md is roughly 2.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Genvm Lint?

Skills that share tags, products or a category with Genvm Lint: Minimizing Ty Ecosystem Changes (astral-sh/ruff, 50k stars), Install Anti-Slop Oxlint Rules (dmmulroy/anti-slop, 5.4k stars), Babysit PR To Pass CI (sgl-project/sglang, 37k stars) and Rust Best Practices (farm-fe/farm, 5.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Genvm Lint?

internet-court (a GitHub organization) maintains it in internet-court/internet-court-skill, which has 6,551 GitHub stars. The repository holds 80 skills in this directory. The repository was last updated on August 19, 2026.

Source: internet-court/internet-court-skill on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.