Skip to main content

A cross-platform terminal based p2p agent orchestration harness and universal automation system

Project description

Federate.AI

Federate is a cross-platform, terminal-based peer to peer AI orchestration and universal automation system.

It turns your terminal into an interactive workbench where you can run specialized teams of AI agents who talk to and collaborate with each other, use voice input and output, execute desktop automation commands, and much more.


Why We Built Federate

In many underprivileged regions of the developing world, owning a desktop computer is often a luxury, yet nearly everyone has access to a smartphone. Federate is written to bring the joy of programming to those pocket-sized screens. It is designed to run natively and comfortably inside Termux on Android, transforming a sub-$100 smartphone into a fully capable engineering workstation.

But Federate is also built for the most advanced power-users on high-end hardware. It runs on any Mac or PC you can throw at it, unlocking system-level features like desktop automation, local speech-to-text with hotword detection, and text-to-speech voice generation.

It is designed to be the ultimate equalizer: accessible to everyone, yet incredibly powerful for those with top-tier setups.


What Makes Federate Different?

1. Orchestration Freedom

Most multi-agent frameworks force you to write rigid, complex Python graphs and state-machine code to define how agents interact. Federate replaces this overhead with simple prompt driven system.

You organize your team of agents simply by writing their backstories. Describe how they relate to one another, and Federate builds the communication network dynamically. You can create:

  • A true Peer-to-Peer hierarchy where every agent is equal to every other agent. This is the default and exclusive to Federate. No other agentic system does this as of date (2nd July 2026). We are the first to implement it (though many will likely follow suit).
  • A strict corporate hierarchy or military style chain-of-command.
  • A collaborative Hub-and-Spoke swarm.
  • Anything else you can think of.

2. Multi-Model, Cross-Provider Collaboration

Federate supports a true multi-model ecosystem. Because it abstracts the underlying LLM provider, you can bring different models into the same session. You can easily watch ChatGPT and Gemini debate a technical architecture decision, a code optimization, or a creative writing prompt directly inside your terminal window.

3. Native Desktop Vision & Speech (Computer Only)

On desktop machines, agents can physically interact with your computer, listen for input and also talk back to you, using any model not just those with speech understanding or synthesis baked in.

4. Pocket-Sized Software Engineering

Even on mobile, you can delegate complex multi-step coding tasks to an autonomous sub-agent. The system spawns an isolated local git worktree, writes and edits code, runs your local tests, and presents you with a clean commit diff to approve—ensuring your active development workspace remains untouched. Did you know your old Android can compile Rust?


Feature Checklist

  • Context Injection (&): Type & followed by a file or directory (e.g., &src/app.py or &src/) to instantly parse and inject that code directly into your prompt.
  • Direct Shell Passthrough (!): Type ! followed by a command (e.g., !git diff) to run it in your local workspace and feed the output to the AI.
  • Integrated Text IDE: Press F6 to instantly toggle between the chat view, a local file tree, a code editor with symbol outline, and an execution dashboard.
  • And a lot more: Offline Persistent memory with semantic search, goal management, skills (passive and active skills, the latter again a Federate exclusive as on date), speech to text, text to speech, research orchestration, computer use, telegram integration, task scheduling etc already baked in, more features might be added in the future.

Installation

Install the package via pip. We recommend installing with all optional extras to enable local voice/audio and serving capabilities:

pip install "federate[all]"

(For a lightweight installation without audio or computer usage capabilities, run pip install federate instead on Termux and Raspberry Pi).


Quickstart

Start the application from your terminal:

federate

(You can also open a specific project directory directly: federate path/to/folder)

Basic Setup

  1. Once the interface loads, press F4 to open the Agent Editor.
  2. Set up your active agent, including your API keys and model choices (Federate is pre-configured for OpenRouter, but works with any OpenAI-compatible API).
  3. Federate will securely encrypt and save your credentials inside your native OS keychain.

Changing Safety Modes (Ctrl+T / /arm)

To protect your workspace, the system boots in SAFE (PLAN) mode. In this mode, agents can search the web and read files, but they cannot edit code, run terminal commands, or control your computer.

  • Press Ctrl+T or type /arm to cycle permissions:
    • SAFE (PLAN): Read-only. Great for planning and research.
    • SEMI-AUTO: Agents can edit and execute, but Federate will present a popup asking you to approve every single tool execution.
    • FULL-AUTO: Agents can run autonomous toolchains in the background.

Command Reference

  • Inject Files: Type & followed by the file path (e.g., &src/main.py). Use UP/DOWN arrow keys to cycle through autocomplete suggestions.
  • Mention Agents: Type @ followed by the agent name to route your message to a specific agent. Use @team to broadcast to everyone, or @room to talk to agents active in the current session. Agents can also use @ to invoke other agents, which is the core of the peer to peer system.
  • Key Bindings:
    • F2: Session Manager (Create a new chat or load historical multi-agent sessions)
    • F4: Open the Active Agent configuration
    • F5: Cycle the host agent
    • F6: Cycle through UI panels (Chat ↔ IDE Editor ↔ Executions Dashboard)
    • F8: Change your workspace directory
    • Ctrl+K: Wipe the memory of all agents
    • Ctrl+A: ABORT (Emergency stop for any running AI tasks or terminal commands)
    • Ctrl+Q: Quit Federate

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

federate-0.9.0.tar.gz (119.5 kB view details)

Uploaded Source

Built Distributions

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

federate-0.9.0-py3-none-win_amd64.whl (11.0 MB view details)

Uploaded Python 3Windows x86-64

federate-0.9.0-py3-none-manylinux2014_x86_64.whl (10.8 MB view details)

Uploaded Python 3

federate-0.9.0-py3-none-manylinux2014_aarch64.whl (9.8 MB view details)

Uploaded Python 3

federate-0.9.0-py3-none-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

federate-0.9.0-py3-none-macosx_10_9_x86_64.whl (10.8 MB view details)

Uploaded Python 3macOS 10.9+ x86-64

federate-0.9.0-py3-none-android_24_arm64_v8a.whl (10.3 MB view details)

Uploaded Android API level 24+ ARM64 v8aPython 3

File details

Details for the file federate-0.9.0.tar.gz.

File metadata

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

File hashes

Hashes for federate-0.9.0.tar.gz
Algorithm Hash digest
SHA256 3422eba1c1169040afef4464d3912b5447661fc7455336ff75869defc3429efb
MD5 197907203697888f14abd216157d9f2c
BLAKE2b-256 aae30a786dc70b8f18254f6b51bc2b36ad119cda916a58d04f5883289b0673d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for federate-0.9.0.tar.gz:

Publisher: release.yml on ROCK-LAB-PRIVATE-LIMITED/federate.ai

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

File details

Details for the file federate-0.9.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: federate-0.9.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 11.0 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for federate-0.9.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 ec24ae80b750ea76cc1329b975c45d7f69094360cdb07e2b1a73cf1373a96864
MD5 e7447a8ed729074969cbf4068e5debff
BLAKE2b-256 ce220376c5bff5e7ac501c1fb384603cc55655b900a676b44b1a3e1639882159

See more details on using hashes here.

Provenance

The following attestation bundles were made for federate-0.9.0-py3-none-win_amd64.whl:

Publisher: release.yml on ROCK-LAB-PRIVATE-LIMITED/federate.ai

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

File details

Details for the file federate-0.9.0-py3-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for federate-0.9.0-py3-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a311b45cd2f4090b46675b5fad70691672144fff83858e124c336c9eb03ee665
MD5 6362f397f448245b6e1403fcad083761
BLAKE2b-256 058118780ef45c1d54da71f9d19f9f9203ea79676e761913b34a86af06239430

See more details on using hashes here.

Provenance

The following attestation bundles were made for federate-0.9.0-py3-none-manylinux2014_x86_64.whl:

Publisher: release.yml on ROCK-LAB-PRIVATE-LIMITED/federate.ai

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

File details

Details for the file federate-0.9.0-py3-none-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for federate-0.9.0-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 988bf5a3ab6202e019d481831faf83b0e0da1e07f435f4a661f3df5707c85166
MD5 7a4d7e4076425c36a56c4044745f02ea
BLAKE2b-256 c5371a20f37b4f54565ee90d41b5d44af6820a9b3561ee6b0c949b4d1030e7c8

See more details on using hashes here.

Provenance

The following attestation bundles were made for federate-0.9.0-py3-none-manylinux2014_aarch64.whl:

Publisher: release.yml on ROCK-LAB-PRIVATE-LIMITED/federate.ai

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

File details

Details for the file federate-0.9.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for federate-0.9.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2f604e7ddcc4e23ac8b8a1cdeb6eae34a7ae3d6a91aa166f484c5c2fda133f40
MD5 c47938eb4385ef7d076b91393678c6aa
BLAKE2b-256 9b9472c9715fc5c09cedc166f77c4360bebd559449b18993dd3c937422abe868

See more details on using hashes here.

Provenance

The following attestation bundles were made for federate-0.9.0-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on ROCK-LAB-PRIVATE-LIMITED/federate.ai

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

File details

Details for the file federate-0.9.0-py3-none-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for federate-0.9.0-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e08b788752c19c296dcc735cc80385026ef89612247e547975e038c90ae28f02
MD5 005fed78f985b27b9bf7101f5f220a23
BLAKE2b-256 35c90f6baf1e8c71811c4ec56260502935939d0a892d4d598f128dcfa558583b

See more details on using hashes here.

Provenance

The following attestation bundles were made for federate-0.9.0-py3-none-macosx_10_9_x86_64.whl:

Publisher: release.yml on ROCK-LAB-PRIVATE-LIMITED/federate.ai

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

File details

Details for the file federate-0.9.0-py3-none-android_24_arm64_v8a.whl.

File metadata

File hashes

Hashes for federate-0.9.0-py3-none-android_24_arm64_v8a.whl
Algorithm Hash digest
SHA256 dc135f9df5f489f1b4e631f80c83061dce7db6c0fa7ae65cc094a2e3d3f5da2f
MD5 dba95b0f61118148a49c06a431ed5fba
BLAKE2b-256 e8baa3be4cdaeb1ca3933a1e5214b4c190011ec826922ece96131c2e96ca47a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for federate-0.9.0-py3-none-android_24_arm64_v8a.whl:

Publisher: release.yml on ROCK-LAB-PRIVATE-LIMITED/federate.ai

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