Skip to main content

AI-assisted software delivery system with flow-based agent orchestration

Project description

agents-smith



Contributors Forks Stargazers Issues MIT License Coverage CI Python

Pair program with AI, the right way.


smith is an AI pair programming platform that connects standardised agent configurations to any project directory — and disconnects cleanly when done. It ships with a complete delivery workflow: structured flows for discovery, planning, TDD development, review, and release, powered by specialised agents (Product Owner, Architect, Engineer, Reviewer, and more).


Install

pip install agents-smith

Or clone for development:

git clone https://github.com/nullhack/agents-smith
cd agents-smith
curl -LsSf https://astral.sh/uv/install.sh | sh  # skip if uv is already installed
uv sync --all-extras

Usage

Connect

Write agentic files (agents, skills, knowledge, flows, templates) into any project directory:

smith connect              # from bundled template (no network needed)
smith connect --from PATH  # from a local directory
smith connect --from URL   # from a remote tarball
smith connect --overwrite  # replace existing smith-managed files

Status

Check what smith has connected to your project:

smith status           # human-readable output
smith status --json    # machine-readable output

Update

Re-sync agentic files from the connected source:

smith update               # from the same source used at connect time
smith update --from PATH   # from a different local source

Disconnect

Remove all smith-managed files and gitignore entries. User-tracked files are never touched:

smith disconnect

What you get

When you run smith connect, the following is written into your project:

Path Contents
AGENTS.md Agent routing, session protocol, artifact conventions
.opencode/agents/ Agent identity definitions (Product Owner, Architect, Engineer, Reviewer, etc.)
.opencode/skills/ Step-by-step skill definitions for every workflow state
.opencode/knowledge/ Curated knowledge files (TDD, DDD, architecture, requirements, design, etc.)
.flowr/flows/ YAML state machine definitions (delivery, TDD cycle, review gate, setup, etc.)
.templates/ Artifact templates (ADR, feature files, changelog, interview notes, etc.)

Agents

Six specialised agents, each owning a phase of the delivery flow:

Agent Role
Product Owner Scope discovery, feature selection, acceptance
Domain Expert Ubiquitous language, domain modeling, glossary
Architect System design, ADRs, context maps, review
Software Engineer TDD implementation, refactoring, merging
Reviewer Adversarial review (design, structure, conventions)
Design Agent Visual identity, colors, assets

Flows

Workflow state machines powered by flowr:

Flow Purpose
delivery-flow End-to-end feature delivery (select → specify → implement → review → accept)
tdd-cycle-flow Red-green-refactor loop within a feature
review-gate-flow Three-tier review (design → structure → conventions)
setup-project-flow Initialise a new project from template
discovery-flow Stakeholder interviews and product scoping
planning-flow Feature breakdown and BDD specification
architecture-flow System design and context mapping
post-mortem-flow Incident analysis and lessons

Knowledge

Curated research summaries covering TDD, DDD, architecture patterns, SOLID, test design, code review, versioning, and more. Agents load these progressively — key takeaways for quick reference, full documents for detailed work.


Development

uv run task test              # full suite + coverage
uv run task test-fast         # fast, no coverage (TDD loop)
uv run task lint              # ruff format + check
uv run task static-check      # pyright type checking
uv run task run               # run smith
uv run task doc-build         # build API docs + coverage report
uv run task release-check     # lint + typecheck + test + docs

Updating the bundled template

The smith/data/ directory ships with a bundled template. To sync it from the upstream temple8 repository:

./scripts/update-bundle.sh

Documentation


License

MIT — see LICENSE.

Author: @nullhack · Documentation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agents_smith-0.3.0.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agents_smith-0.3.0-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file agents_smith-0.3.0.tar.gz.

File metadata

  • Download URL: agents_smith-0.3.0.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for agents_smith-0.3.0.tar.gz
Algorithm Hash digest
SHA256 c3465d10e8bebe899263ac58254896b5b6aa0bfb9f255239d61b3f026a83b078
MD5 28e32ea4f3d06c1341051273a98e83ae
BLAKE2b-256 c6f88664bb2b558bfe9476bf5f2be1b1c8310caa39f3b13be417c3911b1ac407

See more details on using hashes here.

Provenance

The following attestation bundles were made for agents_smith-0.3.0.tar.gz:

Publisher: pypi-publish.yml on nullhack/agents-smith

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agents_smith-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: agents_smith-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 24.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for agents_smith-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f7ebf34bc5a875a400dac2dca44ff50dbfedb833404c332b607b84b9ebd2700a
MD5 effff9736199124535d80a4798489815
BLAKE2b-256 143c544aed43ca51bc179498dba636b5f2c943a5417494012a0cf68cf08a6634

See more details on using hashes here.

Provenance

The following attestation bundles were made for agents_smith-0.3.0-py3-none-any.whl:

Publisher: pypi-publish.yml on nullhack/agents-smith

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page