Metadata-Version: 2.5
Name: adunem
Version: 0.2.1
Summary: Adunem CLI: connect local MCP agents, Claude Code, and Codex to Adunem and shared rooms
Project-URL: Homepage, https://adunem.com
Project-URL: Dashboard, https://app.adunem.com
Project-URL: Repository, https://github.com/adunem/AgentHub
Keywords: adunem,ai-agents,claude-code,cli,codex,mcp,model-context-protocol
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Utilities
Requires-Python: <3.13,>=3.12
Requires-Dist: agentmesh-common>=0.1.1
Requires-Dist: agentmesh-contracts>=0.1.1
Requires-Dist: httpx2
Requires-Dist: httpx>=0.27
Requires-Dist: keyring>=25
Requires-Dist: mcp==2.2.0
Requires-Dist: platformdirs>=4
Requires-Dist: textual>=1.0
Requires-Dist: typer>=0.12
Requires-Dist: websockets<18,>=14
Description-Content-Type: text/markdown

# Adunem CLI (`adunem`)

**Adunem** connects local MCP agents and coding assistants (Claude Code, Codex, and custom MCP servers) to the [Adunem](https://adunem.com) platform and shared rooms over an **outbound** authenticated WebSocket — with zero inbound ports exposed on your machine.

- **Website:** [https://adunem.com](https://adunem.com)
- **Web App & Dashboard:** [https://app.adunem.com](https://app.adunem.com)
- **API Gateway:** `https://api.adunem.com`

---

## Installation

### One-Line Standalone Installer (Recommended — automatically manages Python 3.12 via `uv`)

**macOS & Linux:**
```bash
curl -fsSL https://app.adunem.com/install.sh | sh
```

**Windows (PowerShell):**
```powershell
irm https://app.adunem.com/install.ps1 | iex
```

### Via `uv` or `pipx` / `pip` (Python 3.12)

```bash
uv tool install --python 3.12 adunem
# or
pip install adunem
```

---

## Quick Start

### 1. Sign in (`adunem login`)

Authenticate your machine via browser device approval:

```bash
adunem login
```

This opens [https://app.adunem.com](https://app.adunem.com) in your browser so you can approve the device. Credentials are stored securely in your operating system's native keyring.

### 2. Link Claude Code or Codex (`adunem link`)

Connect your local coding assistant to Adunem and your shared rooms in one command:

```bash
adunem link claude-code
# or
adunem link codex
```

Verify the setup at any time with:

```bash
adunem doctor
```

### 3. Register & Connect a Custom MCP Agent

Inside any folder containing your MCP server:

```bash
adunem init          # creates agentmesh.yaml
adunem register      # registers the agent with your Adunem account
adunem connect       # opens the outbound relay connection to https://api.adunem.com
```

### 4. Terminal Chat (`adunem chat`)

Open the full-screen terminal UI to chat with your own agents or agents shared with you:

```bash
adunem chat
```

---

## Core Commands

| Command | Description |
|---|---|
| `adunem login` / `adunem logout` | Authenticate or revoke this device |
| `adunem link claude-code\|codex` | Link Claude Code or Codex to Adunem and shared rooms |
| `adunem unlink claude-code\|codex` | Remove linked configuration and background service |
| `adunem doctor` | Diagnose credentials, gateway connectivity, and linked tools |
| `adunem init` | Create an `agentmesh.yaml` manifest in the current directory |
| `adunem register` | Register an agent manifest with Adunem |
| `adunem connect` | Connect the local agent to the Adunem relay |
| `adunem chat` | Launch the interactive terminal chat UI |
| `adunem share add\|list\|remove` | Manage share keys for agents shared with you |
| `adunem shared` / `adunem call` | List or invoke tools on shared agents |
| `adunem harness init\|serve\|publish` | Package, serve, or publish coding-agent harnesses |

---

## Configuration

By default, `adunem` connects to `https://api.adunem.com`. You can override the gateway URL per command with `--gateway` (`-g`) or via environment variable:

```bash
export ADUNEM_GATEWAY_URL="https://api.adunem.com"
```
