Skip to main content

File-based multi-agent coordination protocol — queues, driven roles, stand leases, and Claude/Codex agent orchestration

Project description

greatminds

File-based multi-agent coordination for agent fleets and task pipelines.

PyPI version Python versions License Docs

greatminds runs a fleet of Claude Code and OpenAI Codex agents on a shared filesystem-based finite state machine. Tasks flow through queues such as feature_inbox/, feature_plan/, feature_dev/, feature_test/, and verified/; a small coordd daemon nudges agents when input appears. There is no central broker and no database. Per-project setup writes coord.yaml; the per-user daemon can supervise multiple projects on one machine.

Quickstart

# install
pip install greatminds  # or: uv add greatminds

# bootstrap a project
mkdir -p /tmp/greatminds-demo
cd /tmp/greatminds-demo
greatminds setup --session myproject

greatminds supports two primary agent tools:

  • claude: Claude Code. Used for chat, loop, and driven roles. Setup writes .claude/settings.local.json and installs configured Claude marketplace plugins for Claude-hosted roles.
  • codex: OpenAI Codex. Used for chat and driven roles. Run codex login once for the machine account; generated files under coordination/.codex-home/<role>/ are role config sources, not auth homes.

Role-to-tool assignment lives in coord.yaml. Edit it after setup when you want different tools for different roles:

Role Default tool Default mode
ARCHITECT-PLANNER codex chat
MAINTAINER claude loop
LIVE-DEVELOPER claude staged
ARCHITECT-REVIEWER codex driven
DEVELOPER claude driven
UI-DEVELOPER claude driven
TECHNICAL-WRITER codex driven
TESTER claude driven
READER claude driven
EXPLORER codex driven
session: myproject
project_dir: /tmp/greatminds-demo
windows:
  - name: planner
    role: ARCHITECT-PLANNER
    tool: codex
    mode: chat
  - name: maintainer
    role: MAINTAINER
    tool: claude
    mode: loop
  - name: dev
    role: DEVELOPER
    tool: claude
    mode: driven
  - name: reviewer
    role: ARCHITECT-REVIEWER
    tool: codex
    mode: driven

Put project and stand variables in coordination/PROJECT.env. It is gitignored, sourced before agent launch, and passed to stand profiles as Ansible extra vars:

cat > coordination/PROJECT.env <<'EOF'
STAND_HOST=localhost
STAND_USER=violet
EOF

STAND_HOST=localhost is enough for a local smoke stand. For a remote stand, set STAND_HOST to an SSH config alias or a comma-separated list of aliases, and set STAND_USER to the remote account whose PATH should be used.

A stand is a singleton live environment. Agents lease it with greatminds stand lease; coordd deploys the leased worktree by running an Ansible stand profile from coordination/stand-profiles/<profile>.yaml. The default allowed profiles are full-deploy, vite-dev, and smoke-only. A minimal smoke profile looks like this:

---
- name: register stand node
  hosts: localhost
  gather_facts: false
  tasks:
    - name: add configured stand host
      ansible.builtin.add_host:
        name: "{{ STAND_HOST | default('localhost') }}"
        groups: stand_nodes
        ansible_connection: >-
          {{ 'local' if (STAND_HOST | default('localhost')) == 'localhost'
             else 'ssh' }}

- name: smoke stand
  hosts: stand_nodes
  gather_facts: false
  tasks:
    - name: remote shell works
      ansible.builtin.command: /bin/true
      changed_when: false

Then start the fleet:

# install the per-project daemon
greatminds daemon install
greatminds daemon start

# launch agents
greatminds launch --target tmux
tmux a -t myproject

The windows defined in coord.yaml boot inside one tmux session; each role starts in chat, loop, staged, or driven mode according to that file. Driven roles do not keep live panes; coordd starts one Claude or Codex turn when their queue, inbox, or stand-state event changes.

Key Concepts

Documentation

Full documentation: https://veryviolet.github.io/greatminds/

Where to File Issues

Bugs in greatminds: https://github.com/veryviolet/greatminds/issues
Bugs in a project you use greatminds in: that project's issue tracker.

License

Apache-2.0. See LICENSE.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

greatminds-2.1.2.tar.gz (323.2 kB view details)

Uploaded Source

Built Distribution

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

greatminds-2.1.2-py3-none-any.whl (378.2 kB view details)

Uploaded Python 3

File details

Details for the file greatminds-2.1.2.tar.gz.

File metadata

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

File hashes

Hashes for greatminds-2.1.2.tar.gz
Algorithm Hash digest
SHA256 3b32cf4889858aeca3c2a06179dc7ff65c39de75eecdd17bd8d3520656a918e5
MD5 5b0f9e8527c4e742aedd5c9f926c45ed
BLAKE2b-256 56f4e53a061f5d14d0afffc5af99cd7cfc82c4a39834c439fe3f859162f21ebd

See more details on using hashes here.

Provenance

The following attestation bundles were made for greatminds-2.1.2.tar.gz:

Publisher: publish.yml on veryviolet/greatminds

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

File details

Details for the file greatminds-2.1.2-py3-none-any.whl.

File metadata

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

File hashes

Hashes for greatminds-2.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fb5b16a9bcf0811f42762b943bd848c3b9587d67215946897d5814188b4caa52
MD5 a321cfbff847c63dfd910c2a8c696819
BLAKE2b-256 c78036a2aeedac9bdc900b4b8a5e77e2206275d328f26db3c73213586337ddba

See more details on using hashes here.

Provenance

The following attestation bundles were made for greatminds-2.1.2-py3-none-any.whl:

Publisher: publish.yml on veryviolet/greatminds

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