minion: Instructions file for Claude Code

CLAUDE.md

minion CLAUDE.md is an instructions file for Claude Code from femto/minion. It costs 2,183 tokens per session, scanned A, original, MIT.

Repository instructions for femto/minion, covering how its agents are built, how they run asynchronously, and how they obtain language models.

In plain words
What is it for?
Use them when creating agents, configuring language models, calling agent methods, or organizing code in this repository.
Why use it?
They record project-specific rules that are easy to miss, such as awaiting asynchronous agent setup and keeping tests out of the top-level folder.

Instructions file for Claude Code

Written for Claude Code: the file is CLAUDE.md.

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

Reuse

Borrowing it

Nothing to install: this file belongs to femto/minion. 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/femto/minion/main/CLAUDE.md
Clone the repo
git clone --depth 1 https://github.com/femto/minion

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

README.md
[![agentmods](https://agentmods.dev/badge/instructions/femto/minion/claude-md.svg)](https://agentmods.dev/instructions/femto/minion/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/femto/minion/claude-md"><img src="https://agentmods.dev/badge/instructions/femto/minion/claude-md.svg" alt="Measured on agentmods" height="20"></a>
Per session 2,183 This file is loaded in full into every session.
When invoked 2,183 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.1 $0.02183 $0.02183
Opus 5 $0.01092 $0.01092
Sonnet 5 $0.00437 $0.00437
Haiku 4.5 $0.00218 $0.00218

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

Security

Grade A, and why

minion 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 6d 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 · 167 lines

How it starts

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

🧠 记忆存储

系统架构记忆

  • never put test in the top level folder

  • agent.run_async() 返回的是一个async函数,需要先await才能获得async generator

    • 正确用法: async for event in (await agent.run_async(input_obj, **kwargs)):
    • 错误用法: async for event in agent.run_async(input_obj, **kwargs):
    • 这是因为run_async是async函数,它delegate到其他函数,本身需要await才能返回真正的async generator
  • Agent构造函数设计模式

    • 所有Agent应继承BaseAgent并使用@dataclass装饰器
    • 构造函数参数应与BaseAgent对齐,使用dataclass字段而非__init__方法
    • stream相关参数不应在构造函数中,而是通过run_async(stream=True/False)动态控制
  • LLM构造和获取最佳实践

    • MinionToolCallingAgent构造时会自动从model配置创建LLM
    • 标准LLM获取模式(参考brain.py):
      # 方式1:直接指定model名称,从config.models获取配置
      model = "gpt-4o"  # 或其他模型: "gemini-2.0-flash-exp", "deepseek-r1", "phi-4", "llama3.2"
      llm_config = config.models.get(model)
      llm = create_llm_provider(llm_config)
      
      # 方式2:使用默认模型
      llm = create_llm_provider(config.models.get("default"))
      
      # 方式3:在Agent构造时传入model名称,让Agent自动创建
      agent = MinionToolCallingAgent(model="gpt-4o")  # 会自动创建LLM
      
      # 使用dataclass风格构造
      agent = MinionToolCallingAgent(
          name="my_agent",
          tools=[tool1, tool2],
          model="gpt-4o",
          max_tool_threads=4
      )
      
    • Brain类LLM处理逻辑:支持字符串model名称或直接传入LLM实例
      • 如果llm参数是字符串,会调用create_llm_provider(config.models.get(llm))
      • 如果llm参数是LLM实例,直接使用
      • 支持llms字典批量处理多个模型配置
  • functions.final_answer调用修复

    • 修复了functions.final_answer()调用不抛异常的问题
    • 问题原因:functions命名空间中的final_answer是原始版本,不会抛出FinalAnswerException
    • 解决方案:在evaluate_async_python_code中创建异常包装器后,同时更新functions命名空间
    • 现在functions.final_answer()和直接调用final_answer()都会正确抛出异常并设置is_final_answer=True
  • worker.py终止逻辑修复

    • 修复了Python executor返回is_final_answer=True但任务不终止的问题
    • 问题原因:worker.py获取了is_final_answer值但没有使用,硬编码terminated=False
    • 解决方案:当is_final_answer=True时立即返回terminated=True的AgentResponse
    • 现在final_answer工具调用会正确终止任务执行
  • Minion流式处理重构

    • 在基类Minion中添加了stream_node_execution通用方法
    • 所有子类现在使用统一的流式处理逻辑,直接yield StreamChunk对象
    • 移除了错误的final_answer检测逻辑,final_answer处理由LmpActionNode负责
    • 保持StreamChunk对象的原始结构,便于上层UI正确处理不同类型的chunk

Read the full file on GitHub · 167 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. 6d ago First seen · 167 lines · 2,183 tokens per session scan A 4a5716a3ef91

Subscribe to this mod's changes

minion CLAUDE.md is an instructions file published in the GitHub repository femto/minion (150 stars, last pushed 9d ago), licensed MIT. It adds 2,183 tokens to every session, about $0.0109 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

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

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

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