agentsmithy

module
v0.1.0-rc2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2026 License: Apache-2.0

README

AgentSmithy

Build AI Agents on the fly from yaml.agentsmithy.yaml. No custom code required.

agentsmithy forge

AgentSmithy is a single Go binary that reads a declarative YAML config file and serves a fully functional Agent server. It works for any software project; no language or framework assumptions baked in.

Quick Start

# Build
docker build -t agentsmithy:latest .

# Or from source (Go 1.26+)
go build -o bin/agentsmithy ./cmd/agentsmithy

See the Install guide for editor integration and detailed setup.

Documentation

For Users
Docs site Documentation overview
For Contributors
.agentsmithy.yaml Project sources, conventions, tools, and commands for AI assistants
Development Guide Architecture, CLI, config schema, testing, and security

Directories

Path Synopsis
cmd
agentsmithy command
Command agentsmithy is a config-driven MCP tool server.
Command agentsmithy is a config-driven MCP tool server.
gen-docs command
Command gen-docs generates Markdown reference documentation for mcpsmithy: both CLI (from the Kong command tree) and config schema (from Go struct types and comments via go/ast).
Command gen-docs generates Markdown reference documentation for mcpsmithy: both CLI (from the Kong command tree) and config schema (from Go struct types and comments via go/ast).
internal
config
Package config loads and version-routes .agentsmithy.yaml configs.
Package config loads and version-routes .agentsmithy.yaml configs.
config/schema
Package schema provides tag-driven defaults and validation for config structs.
Package schema provides tag-driven defaults and validation for config structs.
config/v1
Package v1 defines the v1 config schema types for .agentsmithy.yaml.
Package v1 defines the v1 config schema types for .agentsmithy.yaml.
pipeline
Package pipeline lowers a v1.Config into a runnable agent tree.
Package pipeline lowers a v1.Config into a runnable agent tree.
pipeline/guards
Package guards implements response guards for autonomous agents.
Package guards implements response guards for autonomous agents.
pipeline/kinds
Package kinds is the config-time catalog of pipeline-agent kinds.
Package kinds is the config-time catalog of pipeline-agent kinds.
pipeline/obs
Package obs holds reusable observability hooks shared by all agent kinds.
Package obs holds reusable observability hooks shared by all agent kinds.
pipeline/skills
Package skills lowers a v1.Skills block into runtime ADK tools and template helpers.
Package skills lowers a v1.Skills block into runtime ADK tools and template helpers.
pipeline/skills/htmltext
Package htmltext converts HTML into readable text for LLM consumption.
Package htmltext converts HTML into readable text for LLM consumption.
pipeline/skills/sandbox
Package sandbox restricts file operations to a project root.
Package sandbox restricts file operations to a project root.
pipeline/skills/urlallow
Package urlallow validates URLs against a scheme+host allowlist and provides an HTTP client that refuses redirects (so a permitted URL can't silently lead to a denied one).
Package urlallow validates URLs against a scheme+host allowlist and provides an HTTP client that refuses redirects (so a permitted URL can't silently lead to a denied one).
pipeline/tmpl
Package tmpl is the shared template engine for agentsmithy pipelines.
Package tmpl is the shared template engine for agentsmithy pipelines.
project/models
Package models is the config-time catalog of model-provider kinds.
Package models is the config-time catalog of model-provider kinds.
setup
Package setup implements the config-authoring MCP engine.
Package setup implements the config-authoring MCP engine.
tools
Package tools builds ADK toolsets from agentsmithy config tool references.
Package tools builds ADK toolsets from agentsmithy config tool references.
pkg
api
Package api is the public, stable surface for embedding agentsmithy into other Go programs (notably smithy-cli).
Package api is the public, stable surface for embedding agentsmithy into other Go programs (notably smithy-cli).
cmd
Package cmd implements the CLI subcommands.
Package cmd implements the CLI subcommands.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL