acp-router

Routes coding-harness requests to OpenAEON ACP runtime or direct acpx sessions.

87|20|Updated Mar 9, 2026
One-click install
npx skills add https://github.com/openaeon/OpenAEON --skill acp-router-openaeon
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: acp-router
Source: https://github.com/openaeon/OpenAEON/tree/main/extensions/acpx/skills/acp-router
Command: npx skills add https://github.com/openaeon/OpenAEON --skill acp-router-openaeon

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill removes the guesswork of how to run external coding-harness tools by routing plain-language Pi/Claude Code/Codex/OpenCode/Gemini requests into the correct OpenAEON ACP runtime or direct acpx path.

Core Features & Use Cases

  • Intent-based harness routing: Detects when a user wants Pi, Claude Code, Codex, OpenCode, Gemini CLI, or ACP harness work and routes accordingly rather than using subagent runtime.
  • Two execution modes: Supports the OpenAEON ACP runtime path (via sessions_spawn with correct thread behavior) or a direct acpx "telephone game" path (via exec).
  • Thread spawn correctness for coding agents: Enforces using sessions_spawn for thread creation and mandates reading the Skill first for required preflight.
  • AgentId mapping and policy-safe failure: Maps common harness names to agentId values and clearly reports policy rejections with the allowed id.

Quick Start

Ask: "Spawn a codex thread and tell it to say hi using the ACP harness."

Frequently Asked Questions about acp-router

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I route a Claude Code request to the correct ACP runtime session?

To route a Claude Code request into an ACP runtime session, the acp-router detects the harness intent and enforces thread creation via sessions_spawn with runtime set to "acp". This preserves coding-agent thread context without relying on subagent runtime or PTY scraping.

What is the difference between the OpenAEON ACP runtime path and a direct acpx session for coding agents?

The OpenAEON ACP runtime path uses sessions_spawn to create a thread with correct runtime behavior, while the direct acpx path executes a session via exec. The router chooses between these two modes based on the specific coding-harness request.

How do I map a Gemini CLI or Codex harness name to a specific agentId for thread spawning?

The acp-router provides deterministic agentId mapping for common harness names like Gemini CLI and Codex. If a requested agentId is rejected by policy, it clearly reports the rejection and returns the allowed id for fallback.

Can I use acp-router to preserve thread context when continuing an OpenCode coding session?

Yes, acp-router supports coding-agent thread continuation scenarios for OpenCode by applying sessions_spawn-based thread spawning. It ensures the harness context is preserved throughout the runtime orchestration process.

What happens if the ACP runtime is unavailable when I try to spawn a Pi coding thread?

If the ACP runtime is unavailable, the acp-router applies recovery and fallback rules. It can route the Pi request to a direct acpx-driven session via exec instead of failing the thread creation entirely.

Why should I use sessions_spawn instead of subagent runtime for ACP harness work?

You should use sessions_spawn because the acp-router mandates it for correct thread spawn behavior in ACP harness work. It prevents the context loss and PTY scraping issues associated with using a subagent runtime for coding agents.