smith-build

A build tool that turns Smith project-agent templates into finished Markdown agent files. Like compiling source code into a runnable program, it combines inherited rules into each agent’s final definition.

In plain words
What is it for?
It helps build project agents, validate definitions without writing output, and rebuild them while preserving manual edits.
Why use it?
It removes the need to manually assemble shared instructions and helps detect invalid project-agent files before generating output.

Skill for Claude CodeCodex

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 skills/ggombee/code-forge/smith-build
Any agent
npx skills add ggombee/code-forge --skill smith-build
Clone the repo
git clone --depth 1 https://github.com/ggombee/code-forge

Made for: Claude Code, Codex.

Per session 53 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,485 The whole file, excluding the scripts and references it only reads on demand.
Security scan D 3 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.00053 $0.03485
Opus 5 $0.00026 $0.01742
Sonnet 5 $0.00011 $0.00697
Haiku 4.5 $0.00005 $0.00348

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

Security

Grade D, and why

smith-build scanned grade D with 3 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.

Instruction-override phrasingmediumPrompt injection

Text telling the model to disregard its earlier instructions or safety rules is the shape of a prompt injection, whoever wrote it.

| `ignore previous instructions` | CRITICAL | 프롬프트 인젝션 |

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

| `rm -rf` | HIGH | 재귀 삭제 |

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

| `curl\|sh` 또는 `wget\|sh` | CRITICAL | 원격 스크립트 실행 |
skills/smith-build/SKILL.md · 328 lines

How it starts

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

Smith Build — Build-Time Compilation

프로젝트 에이전트 인스턴스(.agents/agents/*.md)를 정적 .md 파일로 컴파일한다.

비유: TypeScript → tsc → .js 와 같이, Smith 템플릿 → /code-forge:smith-build → 플랫 .md

플러그인 에이전트(agents/)는 직접 편집한다. Smith 빌드는 프로젝트 에이전트 전용.

References

  • references/compilation-spec.md — STATE/ACT 컴파일 시맨틱 상세
  • references/output-template.md — 출력 파일 템플릿

빌드 모드

/code-forge:smith-build --project        # 프로젝트 에이전트 빌드: .agents/agents/ → .claude/agents/
/code-forge:smith-build --validate       # 검증만, 출력 없음
/code-forge:smith-build --regenerate     # 수동 편집 보존하며 재빌드

Pipeline

Step 1: 소스 파일 수집

소스: ./.agents/agents/*.md (type: instance만)
출력: ./.claude/agents/
  1. 소스 디렉토리의 모든 .md 파일을 읽는다
  2. frontmatter에서 type: instance이고 agent-system: Smith인 파일만 필터링한다
  3. 유효하지 않은 파일은 경고를 출력하고 건너뛴다

Step 2: STATE 체인 컴파일

각 인스턴스의 state 배열을 순서대로 해석한다.

  1. extends 체인 재귀 해석:

    • 각 STATE class의 extends 필드를 따라 루트(state.md)까지 재귀적으로 올라간다
    • 각 레벨에서 Persona, Must, Never, Should, Override 섹션을 추출한다
  2. 합산 규칙 (Union):

    • 모든 규칙은 합산된다 (union)
    • 동일 [Key]가 충돌할 때만 뒤쪽이 우선한다
    • Override 섹션의 규칙은 상속된 같은 Key를 대체한다
  3. 우선순위 (낮음 → 높음):

    state.md (추상) → extends 상위 → extends 하위 → state[] 앞 → state[] 뒤 → instance body
    
  4. Persona 규칙: instance body의 Persona가 있으면 상속된 Persona를 대체한다

Step 3: ACT 체인 컴파일

인스턴스의 act 필드에서 ACT class를 해석한다.

  1. extends 체인 해석:

    • ACT class의 extends를 따라 루트(act.md)까지 올라간다
    • Trigger, Workflow, Verification, Output, Collaboration, Permission 섹션을 추출한다
  2. 상속 규칙:

    • Workflow: 하위 class가 전체 재작성 (부분 override 아님)
    • Permission: 하위가 명시하면 대체, 미명시 시 상속
    • 나머지: 하위가 명시하면 대체, 미명시 시 상속

Step 4: 네이티브 frontmatter 매핑

Smith 필드를 Claude Code 네이티브 frontmatter로 변환한다.

매핑 테이블:

Smith 필드 네이티브 필드 소스
name name instance frontmatter
description description instance frontmatter
model model instance > ACT Permission > 기본값(sonnet)
tools tools instance > ACT Permission > 기본값(Read, Grep, Glob)
permissionMode permissionMode instance > ACT Permission > 기본값(bypassPermissions)
maxTurns maxTurns instance frontmatter
boundary 본문에 포함 instance frontmatter
memory memory instance frontmatter (있을 경우)
skills skills instance frontmatter (있을 경우)
isolation isolation instance frontmatter (있을 경우)

Read the full file on GitHub · 328 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

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 · 328 lines · 53 tokens per session scan D d0534a251157

Subscribe to this mod's changes

smith-build is a skill published in the GitHub repository ggombee/code-forge (13 stars, last pushed 2mo ago), licensed MIT. It adds 53 tokens to every session and 3,485 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it D with 3 findings (instruction-override phrasing, recursive force delete, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

digital-health-clinical-asr-setup

Stage 1 of Clinical ASR Flywheel. Use when bootstrapping a cycle: NVCF+MW disclosure, NVIDIAAPIKEY check, deps install, TTS+ASR smoke test.

NVIDIA/skills · 51 tokens

scaffold

Use when starting hyperflow in a new project, refreshing the .hyperflow/ cache, or installing auto-detection shims (AGENTS.md, CLAUDE.md). One-shot project setup; does not start the spec → scope → dispatch chain. Trigger with /hyperflow:scaffold, "init hyperflow", "set up hyperflow", "refresh hyperflow", "install…

jeremylongshore/tons-of-skills-marketplace · 86 tokens

install-openviking-memory

Install and configure the OpenViking long-term memory plugin for OpenClaw via natural conversation. Once installed, the plugin automatically captures facts from chats and recalls relevant context before each reply (auto-capture + auto-recall, cross-session). Covers prerequisites, install through OpenClaw's plugin…

volcengine/OpenViking · 191 tokens

environment-discovery

Systematic exploration of unknown environments before starting work.

vstorm-co/pydantic-deepagents · 13 tokens

forgetful-cli-setup

Set up the Forgetful CLI and connect from a terminal — install, local or remote mode, auth, and verification. Use when connecting a human or headless agent via shell, wiring CI with token auth, or operating a local server (serve, database selection, feature flags, re-embedding). Also covers the machine contract…

ScottRBK/forgetful · 84 tokens

forgetful-mcp-setup

Set up an MCP client for Forgetful — wire Claude Code, Cursor, Copilot, Codex, Gemini, or OpenCode to the server and verify the connection behaves. Covers stdio vs HTTP transport, auth and scopes, the three meta-tools every client sees, and delegation to subagents.

ScottRBK/forgetful · 67 tokens