Agent skill

Fail-Closed Agent Tool Builder

by simbajigege in simbajigege/book2skills

Helps define agent tools with a fail-closed pattern: one class holding name, schema, security flags and a validate, permission and call execution chain.

Custom licenceAuto-check passedAI & LLM Engineering

Install Fail-Closed Agent Tool Builder

skills CLI
$ npx skills add simbajigege/book2skills --skill agent-tool-builder -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install simbajigege/book2skills agent-tool-builder --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/simbajigege/book2skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/agent-tool-builder .claude/skills/agent-tool-builder && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
agent-tool-builder
GitHub stars
183
Token cost
~2k tokens
SKILL.md length
544 words
Files
4 (incl. references)
Skills in repo
37
Repo updated
First seen
Licence
Custom licence

At a glance

Helps define agent tools with a fail-closed pattern: one class holding name, schema, security flags and a validate, permission and call execution chain.

  • Works in 4 steps: Identify the target framework → Interview the user → Generate the tool file → …
  • Defining a new tool for a Python agent framework
  • SKILL.md covers Why this pattern matters, Workflow, Output template and Common security property…, plus 2 more sections
  • Runs Python scripts from its folder

What it does

Tools defined this way carry their identity, input schema, security properties and execution logic in one class, and the safety flags is_read_only, is_destructive and is_concurrency_safe all default to False. A tool that forgets to declare itself is therefore treated as write-capable instead of being trusted by accident.

Execution is layered into separate methods, validate_semantics, check_permissions and _call, so input checks, permission checks and business logic stay apart and nothing extra has to be wired up as middleware. The workflow first asks which agent framework will register the tool, such as hermes-agent, LangChain or plain Python, and copies a bundled agent_tool_base.py into the project if it is missing.

Next it interviews you about the tool: a service-prefixed name in service_action_resource form such as stock_get_price, a description that matches the real behavior exactly, the schema fields, whether it is read-only, destructive or safe to run concurrently, the response format, pagination for list tools, and any validation or permission checks. Defaults are offered, and questions with a clearly fine default can be skipped.

When your agent uses it

  • Defining a new tool for a Python agent framework
  • Adding input validation or permission checks to an existing tool
  • Reviewing whether a tool's read-only and destructive flags are declared safely

Example prompts

  • “Build a stock_get_price tool for my hermes-agent project using the fail-closed pattern.”
  • “Add a permission check to the delete_file tool so it needs an environment variable.”
  • “Define a LangChain tool that lists open tickets, marked read-only and paginated.”

Requirements

  • A Python agent project, such as one built on hermes-agent or LangChain

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Identify the target framework
  2. Interview the user
  3. Generate the tool file
  4. Show security property summary

What it can do on your machine

Read from SKILL.md and the folder at commit e5ba66c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Python), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Fail-Closed Agent Tool Builder loads about 2k tokens when it runs, and up to ~4k if it reads all its reference files. Until then it costs about 117 tokens; SKILL.md has 544 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~117
When it runs · the whole SKILL.md, loaded when a task matches
~2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

Its licence (Custom licence) doesn't allow us to republish the file, so here is its outline and opening line. It has 544 words (~1,951 tokens).

“Helps define agent tools using the fail-closed design pattern: a unified class that co-locates identity, schema, security properties, and execution logic, with fail-closed defaults so new tools are safe by default.”

— opening of SKILL.md by simbajigege, Custom licence
name
agent-tool-builder

Read the full SKILL.md on GitHub

Files

SKILL.md and 3 other files (references) in skills/agent-tool-builder of simbajigege/book2skills.

  • SKILL.md
  • LICENSE
  • README.md
  • references/agent_tool_base.py

Open the folder on GitHubat commit e5ba66c

Compare with similar skills

Fail-Closed Agent Tool Builder next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Fail-Closed Agent Tool Builder compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Fail-Closed Agent Tool Builder this skillsimbajigege/book2skills183—~2kAutomated safety check: PassCustom licence
Deep Agents to Pydantic AI Migrationpydantic/pydantic-ai20k—~1.7kAutomated safety check: PassMIT
Add Example AgentGetBindu/Bindu10k—~1.1kAutomated safety check: NotesCustom licence
Failproof AI SDK IntegrationFailproofAI/failproofai5.3k—~6kAutomated safety check: PassCustom licence
Omnigent Framework Detectionomnigent-ai/omnigent11k—~610Automated safety check: PassApache-2.0
Upgrade Stripekanchengw/cnllm1753 repos~1.4kAutomated safety check: PassApache-2.0

Similar skills

  • Official

    Migrates Python LangChain Deep Agents applications to Pydantic AI and Pydantic AI Harness while preserving the application's observed behavior.

    20k GitHub stars~1.7k tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Add Example Agent

    GetBindu/Bindu

    Add a new self-contained example agent under examples/. An agent skill from GetBindu/Bindu.

    10k GitHub stars~1.1k tokensUpdated 1 mo ago
    AI & LLM EngineeringAuto-check: notes
  • Failproof AI SDK Integration

    FailproofAI/failproofai

    Helps instrument a custom Python or TypeScript agent to record events for Failproof AI, verify what gets written, and run an evaluator worker that scores the runs.

    5.3k GitHub stars~6k tokensUpdated 2 days ago
    AI & LLM EngineeringAuto-check passed
  • Omnigent Framework Detection

    omnigent-ai/omnigent

    Scans Python agent code for framework imports and recommends the matching Omnigent executor type, or says when the framework is not natively supported yet.

    11k GitHub stars~610 tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • Upgrade Stripe

    kanchengw/cnllm

    Guide for upgrading Stripe API versions and SDKs. An agent skill from kanchengw/cnllm.

    175 GitHub starsUsed in 3 repos~1.4k tokens
    AI & LLM EngineeringAuto-check passed
  • PostHog AI Observability integration for LangChain (Python). An agent skill from Jwuthri/Tracely-ai.

    1.5k GitHub stars~2.2k tokensUpdated 2 days ago
    AI & LLM EngineeringAuto-check passed

More from simbajigege/book2skills

All 37 skills in this repo
  • MEMORY.md Restructuring

    simbajigege/book2skills

    Reorganizes an overgrown MEMORY.md into a short pointer index plus separate topic files, and fixes or deletes outdated memories instead of archiving them.

    183 GitHub stars~2.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Compact Memory Implementation

    simbajigege/book2skills

    A developer guide to adding compact memory to an agent: when to trigger compaction, how to fork a compactor sub-agent, what the summary holds, and how to restore it.

    183 GitHub stars~2.5k tokensUpdated 1 mo ago
    Auto-check passed
  • Semantic Line-Art SVG Diagrams

    simbajigege/book2skills

    Turns text, screenshots, or existing diagrams into minimal, accessible line-art SVGs for teaching material, with an optional Mermaid relationship spec.

    183 GitHub stars~2.5k tokensUpdated 1 mo ago
    Auto-check passed
  • LLM Query Loop Implementation

    simbajigege/book2skills

    Implements a production-style agent loop in your own AI product, with tool calling, tool results fed back, exit conditions and budget guards.

    183 GitHub stars~1.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Tool Permission System Design

    simbajigege/book2skills

    Guides designing a layered permission pipeline for agent tools that decides which calls are allowed, need confirmation or are denied, with scopes and hooks.

    183 GitHub stars~2.1k tokensUpdated 1 mo ago
    Auto-check passed
  • Analyzing Financial Reports

    simbajigege/book2skills

    Analyzes Chinese public company financial statements (balance sheet, income statement, cash flow) to assess asset quality, profit authenticity, cash flow health, solvency, and overall investment…

    183 GitHub stars~930 tokensUpdated 1 mo ago
    Auto-check passed

Works with

Questions about Fail-Closed Agent Tool Builder

What does Fail-Closed Agent Tool Builder do?

Helps define agent tools with a fail-closed pattern: one class holding name, schema, security flags and a validate, permission and call execution chain. Tools defined this way carry their identity, input schema, security properties and execution logic in one class, and the safety flags is_read_only, is_destructive and is_concurrency_safe all default to False. A tool that forgets to declare itself is therefore treated as write-capable instead of being trusted by accident.

When should I use Fail-Closed Agent Tool Builder?

Fail-Closed Agent Tool Builder fits situations like: defining a new tool for a Python agent framework; adding input validation or permission checks to an existing tool; reviewing whether a tool's read-only and destructive flags are declared safely.

How do I install Fail-Closed Agent Tool Builder in Claude Code?

Run `npx skills add simbajigege/book2skills --skill agent-tool-builder -a claude-code`. Or copy the skill folder (skills/agent-tool-builder in simbajigege/book2skills) into .claude/skills/agent-tool-builder in your project. Claude Code loads it when a task matches its description.

How do I install Fail-Closed Agent Tool Builder in Codex?

Run `npx skills add simbajigege/book2skills --skill agent-tool-builder -a codex`. Or copy the skill folder (skills/agent-tool-builder in simbajigege/book2skills) into .agents/skills/agent-tool-builder in your project. Codex loads it when a task matches its description.

Can I use Fail-Closed Agent Tool Builder in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add simbajigege/book2skills --skill agent-tool-builder -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/agent-tool-builder, .gemini/skills/agent-tool-builder, .github/skills/agent-tool-builder and .opencode/skills/agent-tool-builder in your project.

What does Fail-Closed Agent Tool Builder need to run?

Going by SKILL.md and its folder, Fail-Closed Agent Tool Builder needs Python for the scripts in its folder. Our summary lists: A Python agent project, such as one built on hermes-agent or LangChain.

Does Fail-Closed Agent Tool Builder access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Fail-Closed Agent Tool Builder safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Fail-Closed Agent Tool Builder use?

Fail-Closed Agent Tool Builder has a licence file (from the LICENSE file in the skill folder) that doesn't match a standard licence. Read it on GitHub before reusing the skill.

How many tokens does Fail-Closed Agent Tool Builder use?

About 2k tokens (SKILL.md is roughly 7.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2k tokens, read only when the agent opens those files.

What are the alternatives to Fail-Closed Agent Tool Builder?

Skills that share tags, products or a category with Fail-Closed Agent Tool Builder: Deep Agents to Pydantic AI Migration (pydantic/pydantic-ai, 20k stars), Add Example Agent (GetBindu/Bindu, 10k stars), Failproof AI SDK Integration (FailproofAI/failproofai, 5.3k stars) and Omnigent Framework Detection (omnigent-ai/omnigent, 11k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Fail-Closed Agent Tool Builder?

simbajigege (a GitHub user) maintains it in simbajigege/book2skills, which has 183 GitHub stars. The repository holds 37 skills in this directory. The repository was last updated on August 26, 2026.

Source: simbajigege/book2skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.