crates-docs CLAUDE.md

A set of project instructions for a Rust server that lets tools search Rust crates and read their documentation. Rust crates are reusable software packages for Rust projects.

In plain words
What is it for?
Use it when working on the crates documentation server, including building it, running Clippy and formatting checks, and selecting its unit, integration, or end-to-end tests.
Why use it?
It gives coding agents the repository context and the exact build, formatting, linting, and test commands needed to check changes correctly.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/kingingwang/crates-docs/claude-md
Clone the repo
git clone --depth 1 https://github.com/KingingWang/crates-docs
Per session 871 This file is loaded in full into every session.
When invoked 871 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
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 $0.00871 $0.00871
Opus 5 $0.00436 $0.00436
Sonnet 5 $0.00174 $0.00174
Haiku 4.5 $0.00087 $0.00087

Measured 2d ago against content hash 4bfc196de973, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

crates-docs 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 2d 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 · 107 lines

How it starts

The opening of the file, as written. The whole thing — 107 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

A high-performance Rust crate documentation query MCP server. Supports Stdio/HTTP/SSE transport protocols, TinyLFU/TTL memory caching (optional Redis), and provides tools for crate search, documentation lookup, and health checks.

Build & Test Commands

# Build
cargo build
cargo build --release
cargo build --all-features

# Run clippy (both required before merge)
cargo clippy --all-targets -- -D warnings
cargo clippy --all-features --all-targets -- -D warnings

# Format check
cargo fmt -- --check

# Tests (multiple targets - specify correct one)
cargo test --test unit                   # Unit tests (primary)
cargo test --test unit_tests             # Legacy unit tests
cargo test --test integration_tests      # Integration tests
cargo test --test e2e                    # E2E tests

# Single test (must specify target)
cargo test --test unit test_name_here

# Feature-gated tests
cargo test --features cache-redis        # Redis cache tests

# All tests with all features
cargo test --all-features

Feature Flags

Feature Purpose
default server, stdio, macros, cache-memory, logging, api-key
cache-redis Redis distributed cache support
cache-memory Moka-based memory cache (in default)
hyper-server HTTP server support
sse Server-Sent Events transport
streamable-http Streamable HTTP transport
tls TLS/SSL support
auth OAuth authentication

Architecture

src/
├── lib.rs           # Library entry, public API exports
├── main.rs          # Binary entry point
├── cache/           # Cache trait + MemoryCache/RedisCache implementations
├── cli/             # CLI commands (serve, test, config, health)
├── config/          # AppConfig, ServerConfig, CacheConfig, LoggingConfig
├── error/           # Error enum + Result alias
├── server/          # CratesDocsServer, handler, transport modes
├── tools/           # MCP tools (lookup_crate, search_crates, lookup_item, health_check)
│   └── docs/        # DocService, DocCache, HTML parsing
└── utils/           # HTTP client builder, rate limiter

Read the full file on GitHub · 107 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. 2d ago First seen · 107 lines · 871 tokens per session scan A 4bfc196de973

Subscribe to this mod's changes

crates-docs CLAUDE.md is an instructions file published in the GitHub repository KingingWang/crates-docs (13 stars, last pushed 29d ago), licensed MIT. It adds 871 tokens to every session, about $0.0044 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-30.