FEDERaiDE

Official User Manual & Guide

FEDERaiDE User Manual

Complete Operational Guide for the Peer-to-Peer Multi-Agent Harness & Universal Automation IDE

1. Welcome & Overview

1.1. What is FEDERaiDE?

FEDERaiDE is a cross-platform, terminal-based multi-agent orchestration harness and universal automation system. It transforms your terminal into an interactive, multi-panel workbench where custom teams of AI agents can collaborate with one another, manage your files, edit and execute code, run deep research, listen to your voice commands, speak back to you, and execute desktop automation routines.

1.2. Core Concepts

1.3. Understanding Launcher Options

FEDERaiDE provides two distinct executable launch commands depending on how you wish to work:

Pro-Tip

Both launch commands share the exact same underlying agents, settings, memory, and project sessions. You can switch between them anytime without losing your work.

2. Installation & Getting Started

2.1. System Requirements & Platform Support

FEDERaiDE runs natively across all major operating systems without requiring Docker or containerization:

2.2. Installation Commands

Mac / Android (Termux)

Open your terminal and run the single-line installer script:

curl -LsSf https://raw.githubusercontent.com/ROCK-LAB-PRIVATE-LIMITED/federaide/main/install.sh | bash

Linux

Open your terminal and run the Linux installer script (install wget using your package manager if not already present, curl also works use the suitable invocation.):

wget -O- https://raw.githubusercontent.com/ROCK-LAB-PRIVATE-LIMITED/federaide/main/nuxinstall.sh | sh

Windows (PowerShell)

Open Windows PowerShell (no administrator privileges required) and run:

irm https://raw.githubusercontent.com/ROCK-LAB-PRIVATE-LIMITED/federaide/main/install.ps1 | iex

Alternative Package Managers (`uv` or `pip`)

# Via uv (Recommended)
uv tool install "federaide[all]"

# Via pip
pip install "federaide[all]"

2.3. First Launch & The Onboarding Wizard

To start the application, type federaide (or federate for chat-only mode) in your terminal:

federaide

On your very first launch, FEDERaiDE automatically opens the Onboarding Popup Wizard. This modal guides you through configuring your initial active AI agent:

  1. Base URL Preset: Select a provider preset from the dropdown menu (Google Gemini, OpenRouter, OpenAI, Anthropic, ChatGPT Subscription (OAuth), or Custom). Choosing a preset populates the base URL automatically.
  2. API Key / OAuth Authentication: Input your API key (e.g., from OpenRouter, Google Gemini, OpenAI, or Anthropic). If you choose ChatGPT Subscription (OAuth), click Authenticate with OAuth to connect your ChatGPT Plus, Pro, or Team subscription directly without needing a pay-per-token API key.
  3. Model Identifier: Specify your desired LLM model (e.g., gemini-3.1-flash-lite, openai/gpt-4o, anthropic/claude-3.5-sonnet, or gpt-5.6-luna for ChatGPT OAuth).
  4. Base URL: Enter or adjust the API endpoint URL (for local models, enter http://localhost:11434/v1 for Ollama or http://localhost:1234/v1 for LM Studio).
  5. Agent Name & Backstory: Name your agent (default: Rita) and define a backstory describing its role (default: "You are Rita, a general purpose senior developer.").

Click Get Started. FEDERaiDE securely encrypts and stores your credentials inside your native OS Keychain (macOS Keychain, Windows Credential Manager, or Linux/Termux Encrypted Keyring).

2.4. Phase 1: Operating in Single-Agent Mode

Immediately after onboarding, FEDERaiDE boots into a single-agent environment with your initial assistant (e.g., Rita). In this state, you can use the harness just like any standard AI chat program—ask questions, request code edits, run searches, or manage files.

2.5. Phase 2: Unlocking Multi-Agent Swarms & Backstory Tuning

The full capability of FEDERaiDE is unlocked when you create specialized teams of agents using the Agent Editor (F4):

4. Chatting & Everyday Workspace Controls

4.1. Sending Messages & Multiline Prompt Input

Type your message into the prompt bar at the bottom of the screen and press Enter to submit.

4.2. Attaching Files, Images, and Folders (`&` Shortcut)

You can attach local workspace files, images, PDFs, or entire directory trees directly into your prompt by typing & followed by the relative or absolute path:

Folder Attachments & Ignored Files

Attaching a folder (e.g., &src/) recursively reads all code, documents, images, and PDFs in that directory. FEDERaiDE automatically parses your project's .gitignore and .listignore files, automatically excluding build artifacts, virtual environments (venv/, .venv/), dependency folders (node_modules/), and binary executables to prevent context token bloating.

4.3. Interactive Autocompletion Suggestions Overlay

Typing trigger characters in the chat input displays an interactive completion table directly below the input bar:

LaTeX & Mathematical Unicode Rendering

Mathematical expressions in agent responses (both inline $...$ and block $$...$$) are automatically parsed and converted into clean, human-readable Unicode text in the terminal chat view.

4.4. Direct Terminal Passthrough & Persistent Shell Mode (`!` Shortcut)

You can execute terminal commands on your host computer directly from the chat prompt bar without leaving FEDERaiDE:

4.5. Emergency Abort (Ctrl + A)

If an agent starts a long-running calculation, loop, deep research run, or terminal command that you wish to stop immediately, press Ctrl + A. This forcefully terminates all background agent threads, loops, sub-agent workers, and terminal subprocesses across all active agents, returning control to your prompt bar.

5. Multi-Agent Orchestration

5.1. Invocation Syntax & Routing (`@` vs `@@`)

FEDERaiDE features a peer-to-peer communication network that allows you (and agents themselves) to route messages and delegate tasks dynamically using simple mention shortcuts:

5.2. Autonomous Agent-to-Agent Delegation

Agents do not rely on fixed, hardcoded pipelines. Instead, agents autonomously delegate tasks to each other during conversation:

5.3. Controlling Conversation Queues (`@askuser` & `@resume`)

To prevent runaway debates, infinite loops, or unneeded token consumption during complex multi-agent discussions, FEDERaiDE provides queue control keywords:

5.4. Multi-Model Ecosystems & Cost Optimization

Because FEDERaiDE abstracts model providers at the agent level, you can construct teams combining different LLM models and providers in a single session:

6. Built-in Code Editor & Program Runner (IDE View)

6.1. Workspace Architecture & View Navigation (F6)

Launching FEDERaiDE via the federaide command boots the full multi-panel Terminal IDE. Press F6 at any time to cycle sequentially between the three primary interface views:

  1. Multi-Agent Chat View (ai_chat_view): The central multi-agent discussion workspace, voice dictation interface, and tool execution feed.
  2. Code Editor Workspace (code_view): The three-panel coding environment comprising the File Explorer, Tabbed Editor, and Real-Time Structure Outline.
  3. Executions Dashboard (exec_manager_view): The tabbed terminal dashboard displaying live outputs, PTY terminal shells, and script execution logs. (Note: F6 automatically bypasses this view if no program executions are active or if only the idle panel is open).

6.2. Workspace File Explorer & Folder Navigation

The left-hand Explorer Pane (#explorer_pane) renders an interactive tree view of your active working directory.

6.3. Tabbed Code Editor & Document Management

The central Editor Pane (#editor_pane) provides multi-document tabbed editing with automatic language detection, line numbers, soft wrapping controls, and syntax highlighting across 18+ file extensions.

Tab Navigation & Closing Shortcuts

Saving & File Clipboard Controls

6.4. Real-Time Code Structure Outline & Jump Navigation

The right-hand Structure Pane (#outline_pane) parses open code documents in real-time using high-speed Tree-Sitter language sidecars across 10+ supported programming languages (Python, Go, Rust, C, C++, TypeScript, JavaScript, PHP, Bash, CSS).

6.5. Find & Replace Modal (Ctrl + F)

Press Ctrl + F while editing any document tab to open the Find & Replace modal screen:

6.6. Program Execution & Live Executions Dashboard (Ctrl + R & Ctrl + E)

Running Code (Ctrl + R)

Press Ctrl + R in any open code editor tab. FEDERaiDE automatically performs a series of synchronized execution steps:

  1. Auto-saves the active document tab to disk.
  2. Determines the programming language based on file extension and looks up its execution flags and binary path.
  3. Creates a new tab inside the Executions Dashboard labeled <filename> #<run_id>.
  4. Launches the code inside an interactive pseudo-terminal (PTY) runner and automatically switches the active view to the Executions Dashboard.

Interactive PTY Terminal Emulation & Keyboard Passthrough

Every running script executes inside a dedicated Terminal Emulator with native PTY backend integration (pty on Linux/macOS or pywinpty on Windows):

Execution Tab Navigation & Process Termination

6.7. Custom Language Executables & Flags Configuration (F9)

Press F9 to open the Execution Settings modal (SettingsModal) to configure custom compiler or interpreter paths and execution flags for 13+ supported languages:

6.8. Virtual Environment (Venv) Manager (F10)

Press F10 to open the Venv Manager dialog (VenvManagerModal) to manage isolated Python execution environments:

7. Teaching Agents New Skills

7.1. Passive Skills vs. Active Skills

7.2. Creating Passive Playbooks

Agents automatically save playbooks when they complete complex workflows using the distill_journey tool. You can also ask an agent to save a playbook manually, read existing playbooks using read_skill, or delete old playbooks using delete_passive_skill.

7.3. How Active Skills Are Authored & Installed

Active skills do not have to be written exclusively by AI agents. FEDERaiDE strongly encourages users to write custom programs themselves or download and audit useful CLI scripts and utilities from GitHub or community repositories!

Active skills can originate from three sources:

The Unified Agent Installation Pipeline: Regardless of who wrote or downloaded the code, you do not need to manually format JSON schemas or configure internal skill folders. Simply point your agent to the script files in your workspace and pass any accompanying instructions or documentation. The agent then runs prepare_active_skill (to set up an isolated virtual environment, build dependencies, and execute a live validation test) followed by finalize_active_skill (to automatically generate the tool schema, create the usage manual playbook, initialize Git version control, and register the tool into its permanent library).

7.4. Staging & Registering Active Skills

FEDERaiDE manages active skill installation in a 2-stage automated pipeline:

  1. Stage & Test (prepare_active_skill): Takes the script files, entry point, sample test inputs, PyPI dependencies, custom build commands (pre_install_commands), and optional argument order (arg_order). It creates a dedicated virtual environment in an isolated staging folder, builds and installs all dependencies, and runs a live validation test.
  2. Finalize & Register (finalize_active_skill): Once the validation test succeeds, the agent provides a tool description and usage guide. FEDERaiDE automatically generates the schema.json and metadata.json, moves the tool to the live skills library, creates an automatic usage manual playbook, and initializes Git version control.
Hard Guardrail in Finalization

finalize_active_skill enforces a strict guardrail: if a tool failed its validation test during prepare_active_skill, registration is blocked. The agent must fix the logic and re-run prepare_active_skill until it passes before registration is allowed.

Positional vs. Keyword Argument Modes

7.5. Multimodal Active Skills: Returning Images Directly to Agents

One of FEDERaiDE's most powerful capabilities is that Active Skills can be fully multimodal. An active skill does not just return plain text—it can generate and return rich visual data (plots, charts, diagrams, processed images, CAD renders, or desktop screenshots) directly back into the agent's vision context!

How Active Skills Return Images to Vision Models

An active skill script can return visual outputs using two seamless methods:

  • Method 1: Outputting Base64 Image Tags to STDOUT (Recommended):
    Have your script/program print a Base64-encoded image data string to STDOUT:
    [ImageBase64: data:image/png;base64,<base64_encoded_png_data>]
    FEDERaiDE automatically intercepts this tag, truncates the giant Base64 text string in the chat log to save context tokens, and injects a native image_url vision payload directly into the conversation history. Vision-capable models (Gemini 2.5/3.1, Claude 3.5 Sonnet, GPT-4o) can immediately inspect, analyze, and critique the rendered graphic visually!
  • Method 2: Saving Images to Disk & Returning File Tags:
    Have your script save a PNG, JPG, or WebP file to disk and output or return the tag:
    [Attached Image: /absolute/path/to/rendered_chart.png]
    FEDERaiDE reads the local image file and converts it into a visual payload for the agent to inspect.

7.6. Skill Version Control & Maintenance

Every finalized skill folder is initialized as an independent Git repository. Use the fix_active_skill tool to maintain your tools:

8. Deep Research & Automated PDF Reports

8.1. How Deep Research Works

When assigned a complex research topic, FEDERaiDE spawns a team of parallel sub-agents in the background. Each sub-agent explores a different angle of the research topic simultaneously, gathering web sources, evaluating images, and synthesizing findings.

8.2. Triggering Deep Research

Ask your agent to perform deep research on any topic (e.g., "Perform a deep research report on quantum dot cellular automata") or call the perform_research tool.

8.3. Live Progress Dashboard

During deep research, a split-pane dashboard appears in the chat view:

8.4. Enabling the Deep Research Image Companion (Illustrator)

The Deep Research Image Companion gathers, verifies, and embeds visual diagrams into final research reports. This feature is disabled by default.

How to Enable

  1. Press F3 or type /settings to open the Global Harness Settings modal.
  2. Scroll down to Deep Research Image Companion.
  3. Check the Enable Deep Research Image Companion checkbox.
Copyright Warning Modal

When enabling the Image Companion, FEDERaiDE presents a mandatory legal disclaimer modal. Users must accept terms acknowledging full responsibility for copyright compliance when using fetched images before the image search subsystem will engage.

Mobile Platform Constraint

The Deep Research Image Companion is automatically disabled on Android (Termux) for performance, memory stability, and mobile network constraints, even if enabled in global settings.

8.5. Global Settings & PDF Styling Customization (F3 / `/settings`)

Press F3 or type /settings to customize global harness parameters:

9. Voice & Speech Features

9.1. Text-to-Speech (TTS) Output

Type /tts to toggle voice output on or off. When enabled, agents will speak their responses out loud using natural-sounding offline neural voices. Type /readback to re-read the last agent response out loud.

9.2. Setting Up Individual Agent Voices

Every agent can be assigned its own distinct voice in the Agent Editor (F4). This allows you to hear which agent is responding without looking at your screen. Over 50 male and female voices across American, British, Japanese, Mandarin, Spanish, French, Italian, and Hindi accents are supported.

9.3. Hands-Free Voice Dictation (Speech-to-Text / STT)

Type /stt to activate offline background hotword listening. Once active, FEDERaiDE listens to your microphone continuously without sending any audio to external cloud servers.

9.4. Dictation Triggers & Control Hotwords

While Speech-to-Text is active, you can control dictation entirely with your voice:

9.5. Testing Your Microphone & Triggers (`/mictest`)

Type /mictest to open an isolated microphone and hotword testing sandbox. You can speak out loud, monitor live transcription logs, verify trigger word detection, and test noise energy thresholds before using dictation in active conversations.

10. Telegram Mobile Integration

10.1. Connecting FEDERaiDE to Telegram

You can connect your FEDERaiDE agent team directly to your smartphone via Telegram:

  1. Type /telegram to open the Telegram Bot Configuration modal.
  2. Check Enable Telegram Bot.
  3. Configure file permissions: check Allow File Reception (Telegram ➔ Workspace) and/or Allow Sending Files (Workspace ➔ Telegram).
  4. Enter your Bot Token obtained from @BotFather on Telegram.
  5. Enter your Telegram username or ID in Allowed Users.
  6. Click Save & Connect.
Single-Operator Security Model

To protect your machine, Telegram integration strictly enforces a single-operator security model:

  • The Allowed Users field is mandatory. Leaving it blank strictly disables the bot.
  • Only a single authorized username or ID is allowed.
  • Group chats are automatically detected and blocked.

10.2. Messaging Your AI Team & Sending Files

Once connected, you can message your bot on Telegram while away from your computer. You can use standard prompts, mentions (e.g., @Rita), and team broadcasts.

10.3. Mobile Voice Notes & Automatic PDF Deliveries

When Enable Telegram TTS is checked in /telegram, agents send audio voice notes back to your phone using their assigned voice persona. When a Deep Research run finishes on your computer, the finished PDF report is automatically uploaded directly to your Telegram chat.

11. Scheduled Task Routines

11.1. Setting Up Automated Tasks

Type /schedule to open the Scheduled Tasks manager. From this modal, you can instruct agents to run automated workflows at specific times of the day.

11.2. Repeat Cycles

When creating a scheduled task, choose from four repeat cycles:

11.3. Task Due Alert & Offline Catch-Up Logic

When a task becomes due, FEDERaiDE presents a 60-second countdown alert modal offering three choices: Run Now, Defer 15 Min, or Skip. If no action is taken before the countdown expires, the task executes automatically. Click Edit next to any saved task in the Scheduled Tasks modal to reload its parameters for modification.

If your computer or phone was off or asleep when a task was scheduled to run, FEDERaiDE detects the missed run and prompts you to execute or defer it upon the next application launch.

12. Memory & Context Management

12.1. How Agent Core Memory Works

Agents maintain persistent core memories stored in two categories:

Agents automatically create, edit, or delete memory entries when learning new facts during conversation.

12.2. Searching Past Conversations (Episodic Memory)

Agents can search through historical chat sessions semantically using the search_episodic_memory tool. They can recall past decisions, architectural choices, and previous discussions even if exact keywords don't match, and retrieve full verbatim chat histories using retrieve_episodic_memory.

12.3. Context Compression Details (`/compress`)

Typing /compress condenses older conversation turns into a first-person technical Markdown summary ([SYSTEM HISTORICAL RECALL SUMMARY]), freeing token context while retaining exact file paths, code structures, and project decisions.

12.4. Memory Consolidation (`/consolidate`) & Backstory Sync (`/backstory`)

13. Complete Slash Command Reference

Command Description & Purpose
/helpDisplays the interactive command help menu and keyboard guide.
/armCycles safety permission modes (SAFESEMI-AUTOFULL-AUTO).
/safeInstantly locks the system into SAFE (read-only) mode.
/toolsLists all available tools and their current permission status.
/dir or /directoryOpens the interactive workspace directory picker (F8).
/configOpens the Session Manager menu (F2).
/select_agent <name>Switches the active host agent to the specified agent name.
/clear_allWipes chat context and memory for all agents to start completely fresh.
/compressCompresses current chat context to save memory tokens.
/copyCopies the last AI agent response directly to your clipboard.
/initCreates a baseline Federaide.md context instructions file in your workspace.
/skillsLists all passive playbooks and active executable tools registered to your agent.
/ttsToggles Text-to-Speech voice output on or off.
/sttToggles Speech-to-Text background hotword listening on or off.
/readbackRe-reads the last AI agent response out loud using TTS.
/mictestOpens the sandboxed microphone and trigger word testing window.
/speechOpens the Speech & Audio configuration settings modal.
/telegramOpens the Telegram Bot connection setup modal.
/scheduleOpens the Scheduled Task Routines manager.
/dpi <number>Sets the image DPI resolution for generated research PDF documents.
/settingsOpens global harness settings (search pacing, retries, research token limits).
/backstoryForces an immediate 3rd-person translation and update of all agent backstories.
/consolidateConsolidates, unifies, and prunes core memorylets in MEMORY.json.
/updateChecks PyPI for software updates and displays release notes.
/versionDisplays the currently installed version of FEDERaiDE.

14. Command-Line (CLI) Reference

14.1. Executable Launch Commands

FEDERaiDE provides two distinct executable launch entry points depending on your desired interface layout:

Command Description & Interface Layout
federaide Launches the Full TUI Workspace. Includes Multi-Agent Chat, Tabbed Code Editor, Live Executions Dashboard, Workspace File Explorer, and Real-time Structure Outline.
federate Launches the streamlined Chat-Only View. Focused purely on multi-agent conversation, voice dictation/TTS, and background tool execution without code editor panels.

14.2. Command-Line Arguments & Flags

Both federaide and federate accept optional command-line flags and positional arguments:

Argument / Flag Description & Example Usage
[path] Positional Path Argument: Specify a starting file or directory path.
federaide ./my_project — Boots FEDERaiDE with ./my_project set as the active workspace root.
federaide src/app.py — Opens src/app.py directly in an editor tab and sets src/ as workspace root.
-r / --resume Resume Session: Resumes the most recent chat session (1 step ago).
federaide -r or federate --resume
-r=<n> / --resume=<n> Resume Session Offset: Resumes the historical session modified n steps ago.
federaide -r 2 — Resumes the 2nd most recent chat session.
federaide -r=3 — Resumes the 3rd most recent chat session.
-record / -rec Session Recording (asciinema): Records your terminal TUI session to an asciinema .cast file (e.g., footage.cast) in the active workspace directory.
federaide -record

15. Troubleshooting & Frequently Asked Questions

15.1. Common Issues & Solutions

Q: How do I use my ChatGPT Plus/Pro subscription instead of pay-per-token API keys?

Solution: In the Onboarding Wizard or Agent Editor (F4), set the Base URL Preset to ChatGPT Subscription (OAuth) and click Authenticate with OAuth. Complete the browser sign-in prompt to authorize your account. FEDERaiDE will securely store your OAuth tokens in your OS keyring and refresh them automatically.

Q: Why are tool results showing as "[Tool Output Hidden - Result ID: X]" in multi-agent chat?

Solution: FEDERaiDE defaults to Private tool result availability to conserve context tokens during multi-agent discussions. Agents can retrieve hidden outputs on demand using get_toolresult(ids=[X]). To broadcast full tool outputs immediately to all agents, open Global Settings (F3) and change Tool Result Availability to Public.

Q: My agent says "Tool is unauthorized" when trying to run a script.

Solution: FEDERaiDE is currently in SAFE permission mode. Press Ctrl + T to cycle safety modes to SEMI-AUTO or FULL-AUTO, or open the Agent Editor (F4) and check the tool permissions under Agent Abilities.

Q: How do I stop a runaway agent conversation or loop?

Solution: Press Ctrl + A at any time to execute an instant emergency stop. This halts all background agent threads, loops, and terminal scripts immediately.

Q: Microphone hotwords are not detecting my voice.

Solution: Type /mictest to open the microphone testing sandbox. Check your energy threshold setting in /speech (try lowering it to 0.002 if your room is quiet, or raising it if your background environment is noisy), and verify that your microphone index is correct.

Q: I am being asked for a password when starting on Linux or Termux.

Solution: Some encrypted keyrings require a master password. Enter your password when prompted by the unlock modal, or click Set New / Reset to establish a new password for storing your API keys securely. If you forget your password you can simply reset it from there. Your existing keys will be erased but everything else (your agents, their backstories and memories, will stay completely unharmed).

Q: How do I run FEDERaiDE in chat-only mode without the code editor panels?

Solution: Launch the application using the federate command instead of federaide.

15.2. Software Updates (`/update`)

Type /update or /version to check for new releases. FEDERaiDE queries PyPI and displays cumulative release notes for new versions. Click Update Now to launch the automated updater script, exit the app, update dependencies, and restart FEDERaiDE automatically. You can also select Skip Version or Remind Later.