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 scaffold. This repo now has the initial Python package layout, corrected design docs, baseline CLI entry point, and project configuration. The full orchestrator described in the architecture docs is 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

.
├── .agents/                    # role guidance for author / critic / implementer / reviewer
├── .claude/commands/           # slash commands used in project context
├── docs/
│   ├── architecture.md         # detailed system design
├── src/turma/                 # Python package scaffold
├── tests/                      # initial test scaffold
├── CHANGELOG.md
├── LICENSE
├── README.md
├── turma.example.toml         # committed config template
└── pyproject.toml

CLI Scaffold

Default development workflow:

uv sync
cp turma.example.toml turma.toml
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

These commands are scaffolds today. They provide the initial package and entry point structure that the orchestrator can grow into.

Validation commands:

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

Core Docs

Next Implementation Steps

  • wire turma plan to the planning graph
  • 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.3.tar.gz (4.7 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.3-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: turma-0.1.3.tar.gz
  • Upload date:
  • Size: 4.7 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.3.tar.gz
Algorithm Hash digest
SHA256 09c0c326692efe69258f63db982ffc0390bc345619b78b98fc8623de5b259de2
MD5 cddd2ef94d273a4c28e6ef1b5d50d97f
BLAKE2b-256 745899a0ff5400d012540b268d3d3bfdf2fc6efaf45938399d4d2484804fd020

See more details on using hashes here.

File details

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

File metadata

  • Download URL: turma-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 5.5 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e24c2d0b73f2b538bfc221627ac46f4d090a7ecab39229c6fbd6600260762592
MD5 10a0ac5fcb88d2d9c62f90ab5dd52692
BLAKE2b-256 44cb4da0baa2189af9a14f937f40fbd524ae431e17b942d829f6d8067a773237

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