safelint: Instructions file for Claude Code

CLAUDE.md

safelint CLAUDE.md is an instructions file for Claude Code from shelkesays/safelint. It costs 5,388 tokens per session, scanned A, original, MIT.

Repository instructions for SafeLint, a code-checking tool that enforces safety rules across several programming languages. They explain the project structure, commands, parsing approach, and development setup.

In plain words
What is it for?
Use them when installing dependencies, running tests, checking formatting, or developing SafeLint rules and language support.
Why use it?
They give a coding agent the project-specific context needed to change SafeLint correctly and run its checks. They also clarify that rules use Tree-sitter syntax trees rather than Python's built-in AST format.

Instructions file for Claude Code

Written for Claude Code: the file is CLAUDE.md. Also seen: reads .claude/ paths; mentions CLAUDE.md; mentions Claude Code.

This is shelkesays/safelint's own configuration. It tells Claude Code how to work on safelint itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything safelint configures →

Reuse

Borrowing it

Nothing to install: this file belongs to shelkesays/safelint. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/shelkesays/safelint/main/CLAUDE.md
Clone the repo
git clone --depth 1 https://github.com/shelkesays/safelint

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for safelint CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/shelkesays/safelint/claude-md/github.svg)](https://agentmods.dev/instructions/shelkesays/safelint/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/shelkesays/safelint/claude-md"><img src="https://agentmods.dev/badge/instructions/shelkesays/safelint/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for safelint CLAUDE.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/shelkesays/safelint/claude-md"><img src="https://agentmods.dev/badge/instructions/shelkesays/safelint/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 5,388 This file is loaded in full into every session.
When invoked 5,388 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.05388 $0.05388
Opus 5 $0.02694 $0.02694
Sonnet 5 $0.01078 $0.01078
Haiku 4.5 $0.00539 $0.00539

Measured 10d ago against content hash f2df32a6b075, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

safelint CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 147 lines

How it starts

The opening of the file, as written. The whole thing — 147 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Project overview

SafeLint is a static analysis tool that enforces Holzmann "Power of Ten" safety rules adapted for Python, JavaScript, TypeScript (including TSX / AssemblyScript), Java (with a Spring Boot framework preset), Rust, and Go. It uses Tree-sitter (not Python's ast module) for parsing; this matters for any rule work because rules walk Tree-sitter trees, not AST nodes. The tool ships as both a CLI (safelint) and a pre-commit hook, and lints itself in CI.

Common commands

This project uses uv for dependency management. Most contributors invoke tools through it.

# Install with dev extras (pre-commit, pytest, ruff, ty)
uv sync --extra dev
# or: pip install -e ".[dev]"

# Tests (uses --cov=src by default per pyproject; coverage gate is fail_under=97)
uv run pytest

# Run a single test file / test
uv run pytest tests/core/test_engine.py
uv run pytest tests/core/test_engine.py::test_name -v

# Lint + format check (CI runs all of these against src/, tests/, and scripts/)
uv run ruff check src/ tests/ scripts/
uv run ruff format --check src/ tests/ scripts/

# Type check (ty replaces mypy here: config is [tool.ty] in pyproject.toml)
uv run ty check src/ scripts/

# Run safelint on itself + the release/build scripts + the test tree: zero
# blocking violations before merging (--all-files matches CI; without it the
# check defaults to git-modified files only). `check` accepts multiple paths
# (ruff/ty-style), so all three lint in one invocation. Per-file-ignores in
# safelint.toml keep the non-src trees honest: `scripts/**` drops the
# CLI-inherent SAFE304/SAFE203; `tests/fixtures/**` is deliberately
# non-compliant (it exists to make rules fire in the e2e tests) so it drops
# every rule; `tests/**` relaxes the structure/style rules test scaffolding
# trips (function_length, nesting_depth, logging_on_error). Per-file-ignores
# are glob-matched per file, so they still apply when the trees are passed
# together. `--fail-on=warning` matches CI's strict gate (the repo's
# safelint.toml already sets `fail_on = "warning"`, so it is explicit here
# rather than load-bearing).
uv run safelint check src/ scripts/ tests/ --all-files --fail-on=warning

Read the full file on GitHub · 147 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 147 lines · 5,388 tokens per session scan A f2df32a6b075

Subscribe to this mod's changes

safelint CLAUDE.md is an instructions file published in the GitHub repository shelkesays/safelint (7 stars, last pushed 6d ago), licensed MIT. It adds 5,388 tokens to every session, about $0.0269 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other instructions, from other repositories

next.js AGENTS.md

AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.

vercel/next.js · 7,296 tokens

codex AGENTS.md

AGENTS.md instructions for openai/codex, covering rust/codex-rs, the codex-core crate, code review rules, crate api surface and model visible context.

openai/codex · 5,153 tokens

vscode buildNext.instructions.md

Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).

microsoft/vscode · 6,785 tokens

spec-kit AGENTS.md

AGENTS.md instructions for github/spec-kit, covering agents.md, about spec kit and specify, quickstart — add a new integration in 5 steps, integration architecture and integrationmanifest — file tracking.

github/spec-kit · 7,104 tokens

vscode oss-third-party-notices.instructions.md

Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, applying the notice (cutover) and fallback chain (never fail the build).

microsoft/vscode · 5,001 tokens

langchain AGENTS.md

AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.

langchain-ai/langchain · 4,469 tokens