railtracks: Skill for Claude Code

.claude/skills/code-style/SKILL.md

code-style is a skill for Claude Code from RailtownAI/railtracks. It costs 56 tokens per session (726 once invoked), scanned A, original, MIT.

Python coding rules for the Railtracks repository, covering formatting, imports, tests, documentation strings, and tool definitions.

In plain words
What is it for?
Use it when writing or editing Python functions, tools, signatures, comments, imports, or error handling.
Why use it?
It helps code changes follow the repository's conventions and pass its automated checks.

Skill for Claude Code

Written for Claude Code: installed under .claude/.

This is RailtownAI/railtracks's own configuration. It tells Claude Code how to work on railtracks 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 railtracks configures →

Reuse

Borrowing it

Nothing to install: this file belongs to RailtownAI/railtracks. 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/RailtownAI/railtracks/main/.claude/skills/code-style/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/RailtownAI/railtracks

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 code-style

README.md
[![agentmods](https://agentmods.dev/badge/skills/railtownai/railtracks/code-style/github.svg)](https://agentmods.dev/skills/railtownai/railtracks/code-style)
Your own site
<a href="https://agentmods.dev/skills/railtownai/railtracks/code-style"><img src="https://agentmods.dev/badge/skills/railtownai/railtracks/code-style/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 code-style

Your own site · 80×15
<a href="https://agentmods.dev/skills/railtownai/railtracks/code-style"><img src="https://agentmods.dev/badge/skills/railtownai/railtracks/code-style.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 56 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 726 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
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.00056 $0.00726
Opus 5.5 $0.00022 $0.00290
Sonnet 5.5 $0.00011 $0.00145
Haiku 4.5 $0.00006 $0.00073

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

Security

Grade A, and why

code-style 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 24d 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/skills/code-style/SKILL.md · 44 lines

What it actually says

railtracks Code Style

Code changes in this repo should be reviewed against these rules. Each one comes from a recurring, repeated PR review comment on railtracks, not a hypothetical style preference.

  • Lint/format: run ruff check --fix and ruff format, required for every PR (CI-enforced).
  • Imports: prefer top-level imports. Local/inline imports are fine when there's a real reason (e.g. deferring an expensive or optional dependency like litellm); don't add them out of habit, and don't let a lint failure be the excuse either way.
  • Tests: new functionality gets tests in the matching package's tests/ directory; don't leave a behavior change uncovered.
  • Docstrings: must match the actual signature (param names, types, | None / Iterable[...] etc.). Update the docstring any time a signature changes.
  • Tool docstrings/type hints: for any @rt.function_node-wrapped tool, the docstring is the literal tool description the LLM sees and the type hints define its JSON schema parameters; don't write vague docstrings or omit type hints on a tool function.
  • Module-level comment strings: a docstring at the top of a file is welcome. Avoid long inline paragraph-style comments in the body of the code; keep inline comments short and targeted.
  • Typing: no bare Any when a concrete type is available or already imported nearby. Don't reach for Any as a quick fix to silence something that's actually broken, either; fix the real type mismatch.
  • TODOs: no inline # TODO comments. Either fix it now or file a tracked GitHub issue and reference it.
  • Cruft: no dead/commented-out code, no stray debug/scratch files left in a change.
  • Documentation paragraphs: keep prose paragraphs on one line, matching the existing docs; do not hard-wrap sentences. Preserve code-block formatting.
  • Mutable defaults: don't store a mutable default (x or []) by reference and mutate it later; copy defensively.
  • Errors: use repr(e) rather than str(e) in error/log messages.
  • __init__.py: don't add docstrings to __init__.py files; not this repo's convention.
  • Consistency with siblings: when adding a new variant of something that already has 2+ siblings (chunkers, loaders, LLM providers, etc.), match their existing shape/behavior rather than introducing an ad hoc one-off.
  • Model references in examples: use current, provider-documented model IDs in user-facing examples and bundled CLI skills. Verify IDs against the provider's model catalog and deprecation page when adding or refreshing examples. Keep a model-specific reference only when the example demonstrates behavior unique to that model, and explain that choice nearby when it would otherwise look stale. Historical upgrade guides and tests that intentionally exercise model-name passthrough may retain older IDs.
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. 24d ago Changed 9f1af80371ec
  2. 28d ago Changed · -1 lines 58669a124b7b
  3. 1mo ago Changed · +6 lines a173d6c26d1a
  4. 1mo ago First seen · 39 lines · 56 tokens per session scan A 789e59deec68

Subscribe to this mod's changes

code-style is a skill published in the GitHub repository RailtownAI/railtracks (234 stars, last pushed today), licensed MIT. It adds 56 tokens to every session and 726 once invoked, about $0.0002 per session on Opus 5.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-09-03.

Related

Other skills, from other repositories

test-generator

Generate pytest test cases for Python functions and classes.

vstorm-co/pydantic-deepagents · 12 tokens

temporal-python-testing

Test Temporal workflows with pytest, time-skipping, and mocking strategies. Covers unit testing, integration testing, replay testing, and local development setup. Use when implementing Temporal workflow tests or debugging test failures.

wshobson/agents · 45 tokens

building-pydantic-ai-agents

Build AI agents with Pydantic AI — tools, capabilities (including on-demand loading), workspaces, structured output, streaming, testing, and multi-agent patterns. Use when the user mentions Pydantic AI, imports pydanticai, or asks to build an AI agent, add tools/capabilities, attach a workspace, defer capability…

pydantic/pydantic-ai · 92 tokens

test-corpus

The testdocuments submodule is a bucket-fetched fixture corpus that is not committed. This skill covers readtestfixture, missing fixtures, valid A/B controls, and submodule push order. Load before running Rust tests on a fresh clone, setting up an A/B control, adding a fixture-backed test, or diagnosing…

xberg-io/xberg · 68 tokens

migrating-mastra-to-pydantic-ai

Migrate TypeScript Mastra applications to Python with Pydantic AI and, only when needed, Pydantic AI Harness. Use when source code imports @mastra/ or relies on Mastra agents, tools, workflows, memory, processors, streaming, approvals, skills, or subagents.

pydantic/pydantic-ai · 73 tokens

migrating-vercel-ai-sdk-and-eve-to-pydantic-ai

Migrate TypeScript Vercel AI SDK or Eve applications to Python with Pydantic AI and, only when needed, Pydantic AI Harness. Use when source code imports ai, @ai-sdk/, or eve, or relies on generateText, streamText, ToolLoopAgent, useChat, Eve agents, tools, skills, subagents, approvals, sessions, channels, schedules…

pydantic/pydantic-ai · 107 tokens