Skip to main content

ACP adapter that bridges Amp Code to Agent Client Protocol

Project description

acp-amp

CI PyPI npm License

ACP adapter for Amp Code โ€” Use Amp in any Agent Client Protocol (ACP) compatible client like Zed.

acp-amp architecture


๐ŸŽฏ Choose Your Version

If you prefer... Install Package
Python pip install acp-amp PyPI
Node.js npm install -g @superagenticai/acp-amp npm

Both versions provide identical functionality โ€” full Amp Code agent capabilities in ACP-compatible clients.


๐Ÿš€ Quick Start

For Python Developers

# Install (recommended)
uv tool install acp-amp

# Run
acp-amp run

For Node.js Developers

# Install
npm install -g @superagenticai/acp-amp

# Run
acp-amp

For Zed Users (Quickest Setup)

Add to your Zed settings (~/.config/zed/settings.json):

{
  "agent_servers": {
    "Amp": {
      "command": "npx",
      "args": ["@superagenticai/acp-amp"]
    }
  }
}

No installation needed โ€” npx downloads and runs automatically!


๐Ÿ“‹ Prerequisites

Before using acp-amp, you need:

  1. Amp CLI installed and authenticated:

    curl -fsSL https://ampcode.com/install.sh | bash
    amp login
    
  2. Runtime (one of):

    • Python 3.10+ and uv (for Python version)
    • Node.js 18+ (for Node.js version)

๐Ÿ Python Version (Detailed)

The Python version is ideal for Python developers and integrates with Python-based ACP clients.

Installation

# Recommended
uv tool install acp-amp

# Alternative: pip
pip install acp-amp

Running

# Default: uses Python SDK
acp-amp run

# Explicit Python SDK
acp-amp run --driver python

# Node shim fallback (if Python SDK has issues)
acp-amp run --driver node

# Auto-detect (tries Python first, falls back to Node)
acp-amp run --driver auto

Driver Comparison

Driver Description When to Use
python Native Python SDK (amp-sdk) Default, best performance
node Node.js shim fallback If Python SDK has issues
auto Tries Python, falls back to Node Maximum compatibility

Setting Up Node Shim (Fallback Only)

Only needed if you want to use --driver node:

# Create shim files
acp-amp setup

# Install shim dependencies
cd ~/.acp-amp/shim
npm install

Zed Configuration (Python)

{
  "agent_servers": {
    "Amp": {
      "command": "acp-amp",
      "args": ["run"]
    }
  }
}

With explicit driver:

{
  "agent_servers": {
    "Amp": {
      "command": "acp-amp",
      "args": ["run", "--driver", "python"]
    }
  }
}

๐Ÿ“ฆ Node.js Version (Detailed)

The Node.js version is ideal for JavaScript/TypeScript developers and npm-based workflows.

Installation

# Global install
npm install -g @superagenticai/acp-amp

# Or run directly with npx (no install)
npx @superagenticai/acp-amp

Running

# If installed globally
acp-amp

# Using npx (no install needed)
npx @superagenticai/acp-amp

Zed Configuration (Node.js)

With global install:

{
  "agent_servers": {
    "Amp": {
      "command": "acp-amp"
    }
  }
}

With npx (no install needed):

{
  "agent_servers": {
    "Amp": {
      "command": "npx",
      "args": ["@superagenticai/acp-amp"]
    }
  }
}

๐Ÿ”ง Zed Configuration (Complete Examples)

Minimal Setup

{
  "agent_servers": {
    "Amp": {
      "command": "npx",
      "args": ["@superagenticai/acp-amp"]
    }
  }
}

With API Key

{
  "agent_servers": {
    "Amp": {
      "command": "acp-amp",
      "args": [],
      "env": {
        "AMP_API_KEY": "your-api-key-here"
      }
    }
  }
}

Python with Specific Driver

{
  "agent_servers": {
    "Amp": {
      "command": "acp-amp",
      "args": ["run", "--driver", "python"],
      "env": {
        "AMP_API_KEY": "your-api-key-here"
      }
    }
  }
}

Full Path (if command not in PATH)

{
  "agent_servers": {
    "Amp": {
      "command": "/Users/yourname/.local/bin/acp-amp",
      "args": ["run"]
    }
  }
}

๐Ÿ”Œ Other ACP Clients

SuperQode

agents:
  amp:
    description: "Amp Code agent"
    protocol: acp
    command: acp-amp
    args: []
superqode connect acp amp

Generic ACP Client

Any ACP client that can launch a subprocess and speak JSON-RPC over stdio:

# Python version
acp-amp run

# Node.js version
npx @superagenticai/acp-amp

Python ACP Clients

These Python-based ACP clients work great with acp-amp:


โœจ Features

  • Full Amp Code capabilities โ€” All Amp features available in your ACP client
  • Multi-turn conversations โ€” Thread continuity across interactions
  • Tool execution โ€” Run tools with permission modes (default/bypass)
  • MCP server integration โ€” Connect to Model Context Protocol servers
  • Image support โ€” Send and receive images
  • Session management โ€” Multiple concurrent sessions

๐Ÿ—๏ธ Project Structure

acp-amp/
โ”œโ”€โ”€ acp_amp/              # Python package (pip install acp-amp)
โ”‚   โ”œโ”€โ”€ cli.py            # Command-line interface
โ”‚   โ”œโ”€โ”€ server.py         # ACP server implementation
โ”‚   โ””โ”€โ”€ driver/
โ”‚       โ”œโ”€โ”€ python_sdk.py # Python SDK driver (default)
โ”‚       โ””โ”€โ”€ node_sdk.py   # Node shim driver (fallback)
โ”œโ”€โ”€ node/                 # Node.js package (@superagenticai/acp-amp)
โ”‚   โ””โ”€โ”€ src/
โ”‚       โ”œโ”€โ”€ index.js      # Entry point
โ”‚       โ”œโ”€โ”€ server.js     # ACP server implementation
โ”‚       โ””โ”€โ”€ to-acp.js     # Event conversion
โ”œโ”€โ”€ node-shim/            # Minimal shim for Python's --driver node
โ””โ”€โ”€ docs/                 # Documentation

๐Ÿงช Development

Python Development

# Clone and install
git clone https://github.com/SuperagenticAI/acp-amp.git
cd acp-amp
pip install -e .[test]

# Run tests
pytest

# With uv
uv sync
uv run pytest

Node.js Development

cd node
npm install
npm start

Documentation

pip install -e .[docs]
mkdocs serve
# Visit http://localhost:8000

๐Ÿ› Troubleshooting

"amp: command not found"

Install the Amp CLI:

curl -fsSL https://ampcode.com/install.sh | bash
amp login

"SystemMessage object has no attribute 'get'" (Python)

Update to the latest version:

pip install --upgrade acp-amp

Python SDK issues

Use the Node shim fallback:

acp-amp run --driver node

Zed doesn't show the agent

  1. Check your settings.json syntax
  2. Restart Zed
  3. Check Zed's output panel for errors

More help

See Troubleshooting Guide


๐Ÿ“„ License

Apache-2.0


๐Ÿ™ Credits

Brought to you by Superagentic AI

Built with:

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

acp_amp-0.1.3.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

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

acp_amp-0.1.3-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: acp_amp-0.1.3.tar.gz
  • Upload date:
  • Size: 17.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for acp_amp-0.1.3.tar.gz
Algorithm Hash digest
SHA256 4e37ed9d4317a818b98f19afa819e0bb2dfc8955d495bb151bc9ae6ab511d964
MD5 007b89d85b051c522eaae0c48fc6eb16
BLAKE2b-256 f5847839cfc4ae7f053667d6348195665b23b511680464d1b6fec694f4c8e905

See more details on using hashes here.

File details

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

File metadata

  • Download URL: acp_amp-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 16.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for acp_amp-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 04f07af8eae14897bb2b35a00e7ff80a24e5ba1683dde30988181ee196a20df8
MD5 f1b4a59f24a0788d8bdbb86b4dafd168
BLAKE2b-256 335dca3651f7f47c340f99be32636a72d2d04786c0aed020b5f02d22319fb3f7

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