Skip to main content

Provider-pool-aware multi-agent coding orchestration.

Project description

Turma

Provider-pool-aware multi-agent coding orchestration with spec-driven planning, Beads task tracking, and resumable swarm execution.

Status

Early implementation phase. This repo now has the Python package layout, OpenSpec workflow scaffolding, a working turma init command, a working single-pass turma plan command, baseline CI, and public architecture documentation. The full author/critic planning loop and execution orchestrator described in the architecture docs are not implemented yet.

What It Is

Turma is designed as a two-phase workflow:

  1. Planning: generate and refine OpenSpec artifacts through an author/critic loop with explicit human approval.
  2. Execution: translate approved tasks into a Beads DAG and route work across multiple agent runtimes while tracking task and integration state.

The main design goal is to treat provider rate-limit pools as a routing input without overstating that pool independence alone solves throughput.

Repository Layout

.
├── .github/workflows/          # minimal CI
├── .agents/                    # role guidance for author / critic / implementer / reviewer
├── .claude/commands/           # slash commands used in project context
├── openspec/                   # feature specs and changes
├── docs/
│   ├── architecture.md         # public system model
├── src/turma/                  # Python package and CLI
├── tests/                      # automated tests
├── CHANGELOG.md
├── LICENSE
├── README.md
├── turma.example.toml         # committed config template
└── pyproject.toml

CLI Scaffold

Default development workflow:

uv sync
uv run turma --help
uv run turma init
uv run turma plan --feature oauth-auth
uv run turma run --feature oauth-auth
uv run turma status

Current command status:

  • turma init is implemented
  • turma plan is implemented as a single-pass author workflow
  • turma run and turma status are still scaffolds

turma init expects turma.example.toml to exist in the target directory. It creates turma.toml from that template and updates .gitignore with Turma-managed entries.

turma plan --feature <name> currently:

  • reads planning.author_model from turma.toml
  • requires .agents/author.md
  • scaffolds an OpenSpec change with openspec
  • generates proposal, design, and tasks in a fixed order
  • supports Claude, Codex, Gemini, and OpenCode-backed author generation

Planning quality depends on the chosen backend/model. Claude-backed planning is currently the strongest validated path. OpenCode transport is validated, but provider/model quality varies. Gemini requires the gemini CLI (npm install -g @google/gemini-cli).

It does not yet run a critic loop, commit changes, or orchestrate execution.

Validation commands:

uv run turma --help
uv run python -m turma --help
uv run pytest

Core Docs

Next Implementation Steps

  • add the critic loop and approval flow on top of turma plan
  • wire turma run to Beads plus worktree orchestration
  • persist reconciliation metadata for resumable task recovery
  • replace placeholder status output with task, PR, and CI state

License

MIT

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

turma-0.1.7.tar.gz (21.5 kB view details)

Uploaded Source

Built Distribution

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

turma-0.1.7-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

Details for the file turma-0.1.7.tar.gz.

File metadata

  • Download URL: turma-0.1.7.tar.gz
  • Upload date:
  • Size: 21.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for turma-0.1.7.tar.gz
Algorithm Hash digest
SHA256 0644f3a6bc8ef3d03d662ff9406fb6512d43ab4279ae8670a54ed7d3a823a879
MD5 a62545af9cf2da79b6f6519acfbaa84a
BLAKE2b-256 ae2219e0d4014db5f480efa9825fec8557a07c5dc0f2ba2c81f84e3fb85cfd11

See more details on using hashes here.

File details

Details for the file turma-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: turma-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 16.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for turma-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 e5f320a83996bb10ce8fb8fc8b15d52538fc90dba74d626597ba7e7e7d22719d
MD5 2319a7f3922c90735acf950feed67ac7
BLAKE2b-256 8ca04042f21cc32859b86df9a3b5316ad60b5600c7f7139a79d6f1e648615a6e

See more details on using hashes here.

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