Skip to content

feat: Phase 1 ACP adoption — Codex adapter via ACP transport (#125)#126

Merged
c-h- merged 1 commit intomainfrom
feat/acp-adopt-phase1
Mar 9, 2026
Merged

feat: Phase 1 ACP adoption — Codex adapter via ACP transport (#125)#126
c-h- merged 1 commit intomainfrom
feat/acp-adopt-phase1

Conversation

@c-h-
Copy link
Copy Markdown
Collaborator

@c-h- c-h- commented Mar 9, 2026

Summary

Implements Phase 1 of ADR-001: adopt ACP as the primary agent interface for agentctl.

What's included

  • Generic ACP adapter (src/adapters/acp/) — reusable ACP transport layer that any harness can use
  • ACP client (src/adapters/acp/acp-client.ts) — session lifecycle management (create, send, poll, terminate)
  • Codex-ACP adapter (src/adapters/codex-acp.ts) — launches Codex via ACP instead of PTY scraping
  • ADR-001 (docs/adr/adr-001-agentctl-adopts-acp.md) — architectural decision record
  • CLI registrationcodex-acp available as an adapter option

Stats

  • 1,049 lines added across 10 files
  • 25 new tests (513 total, all passing)
  • Zero lint/build errors
  • Full backward compatibility — existing PTY adapters untouched

Phase 2 (future)

  • Migrate Claude Code adapter to ACP
  • Deprecate PTY-based adapters
  • Add ACP session resumption

Closes phase 1 of #125.

@c-h- c-h- merged commit 088a72a into main Mar 9, 2026
1 check passed
c-h- pushed a commit that referenced this pull request Mar 10, 2026
Features:
- Phase 1 ACP adoption — Codex adapter via ACP transport (#127)
- Callback metadata + lifecycle webhooks (#123)
- ADR-001: adopt ACP as primary agent interface (#126)
- Stateless daemon core (#117)

Fixes:
- Eliminate pending- session IDs — resolve real ID at launch (#131)
- Webhook numeric exit_status + compatible HMAC headers (#128)
- Daemon env derivation at spawn time (#119)
- Binary resolve util update (#121)

Docs:
- Full documentation audit and alignment (#132)
c-h- added a commit that referenced this pull request Mar 10, 2026
Features:
- Phase 1 ACP adoption — Codex adapter via ACP transport (#127)
- Callback metadata + lifecycle webhooks (#123)
- ADR-001: adopt ACP as primary agent interface (#126)
- Stateless daemon core (#117)

Fixes:
- Eliminate pending- session IDs — resolve real ID at launch (#131)
- Webhook numeric exit_status + compatible HMAC headers (#128)
- Daemon env derivation at spawn time (#119)
- Binary resolve util update (#121)

Docs:
- Full documentation audit and alignment (#132)

Co-authored-by: Doink (OpenClaw) <charlie+doink@kindo.ai>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant