x CLAUDE.md

x CLAUDE.md is an instructions file for coding agents from go-gost/x. It costs 1,523 tokens per session, scanned A, original, MIT.

A set of project instructions for the x module of go-gost, a Go proxy framework. It documents how to build and check the code, and describes its handlers, listeners, dialers, connectors and configuration system.

In plain words
What is it for?
Use it when modifying go-gost/x, especially its network components, configuration parsing, registries or metadata; verification consists of running Go build and vet.
Why use it?
It gives coding agents the repository-specific rules they need to make compatible changes and verify them consistently.

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/go-gost/x/claude-md
Clone the repo
git clone --depth 1 https://github.com/go-gost/x

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 x CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/go-gost/x/claude-md.svg)](https://agentmods.dev/instructions/go-gost/x/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/go-gost/x/claude-md"><img src="https://agentmods.dev/badge/instructions/go-gost/x/claude-md.svg" alt="Measured on agentmods" height="20"></a>
Per session 1,523 This file is loaded in full into every session.
When invoked 1,523 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.01523 $0.01523
Opus 5 $0.00762 $0.00762
Sonnet 5 $0.00305 $0.00305
Haiku 4.5 $0.00152 $0.00152

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

Security

Grade A, and why

x 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 4d 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 · 140 lines

How it starts

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

Build & Verify

cd x && go build ./...     # verify compilation
cd x && go vet ./...       # static analysis
cd x && go build ./... && go vet ./...   # both

There are no tests in this module. Build + vet is the verification path.

Architecture

x/ is the implementation layer for the GOST proxy framework. Every interface defined in core/ is implemented here. The module ties the whole system together: it provides ~25 handler implementations, ~25 listener implementations, ~20 dialer implementations, ~15 connector implementations, plus config parsing, registry management, and all cross-cutting concerns.

Component pattern (applies to every handler, listener, dialer, connector)

Every component follows this exact pattern:

// 1. init() self-registration via blank import
func init() {
    registry.HandlerRegistry().Register("http", NewHandler)
}

// 2. Private struct holding options + parsed metadata
type httpHandler struct {
    md      metadata
    options handler.Options
}

// 3. Functional options constructor
func NewHandler(opts ...handler.Option) handler.Handler {
    options := handler.Options{}
    for _, opt := range opts {
        opt(&options)
    }
    return &httpHandler{options: options}
}

// 4. Init extracts typed values from generic metadata
func (h *httpHandler) Init(md md.Metadata) error {
    return h.parseMetadata(md)
}

Each component package also defines a private metadata struct and a parseMetadata(md) method that uses mdutil.GetBool/GetInt/GetString/GetDuration(md, keys...) to extract configuration. Metadata keys are lowercased and multiple fallback keys are tried (e.g., "observePeriod", "observer.period", "observer.observePeriod").

Config parsing and service composition

config/parsing/service/parse.go is the critical wiring function. ParseService(cfg) does:

  1. Defaults listener type to "tcp", handler type to "auto"
  2. Sets up TLS config, network namespace, authentication, admission, bypass
  3. Looks up the listener and handler factories from their registries, calls them with composed options
  4. Creates a service.Service (which runs the accept loop calling handler.Handle per connection)
  5. Wraps the listener in order: proxyproto → metrics → stats → admission → traffic limiter → connection limiter

Read the full file on GitHub · 140 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. 4d ago First seen · 140 lines · 1,523 tokens per session scan A b2195c260212

Subscribe to this mod's changes

x CLAUDE.md is an instructions file published in the GitHub repository go-gost/x (77 stars, last pushed 2d ago), licensed MIT. It adds 1,523 tokens to every session, about $0.0076 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.

Related

Other instructions, from other repositories

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

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,182 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,345 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

next.js 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