Contributing to acpx
September 12, 2026 ยท View on GitHub
acpx is a lightweight CLI and embeddable client for the Agent Client Protocol.
Read VISION.md before proposing a feature or changing a public
interface. Bugs and focused fixes are welcome; discuss larger API or architecture
changes in an acpx issue first.
Development
Use the Node.js source-build versions and pnpm version listed in AGENTS.md. Install the locked dependencies, then run the CLI:
pnpm install --frozen-lockfile
pnpm run dev -- --help
The source is in src/, the Node test suite is in test/, and protocol
conformance cases are in conformance/. The replay viewer and sample workflows
live in examples/flows/. See AGENTS.md for commands, dependency
boundaries, and repository policies.
Before opening a pull request
Keep each PR focused on one problem. Explain the trigger, the resulting behavior,
and why the change belongs in acpx. Use a conventional title such as fix:,
refactor:, or docs:. Keep maintainer edits enabled so maintainers can help land
the change.
Start with the smallest relevant test while iterating. Before requesting review:
- For code, tests, scripts, package metadata, workflows, or
AGENTS.md, runpnpm run check. - For documentation changes, run
pnpm run check:docs; run both commands when changing code and docs together. The docs script checks the README, docs site, and flow example guides. For other Markdown, also pass each changed file topnpm exec oxfmt --checkandpnpm exec markdownlint-cli2. - For changes to CLI flags, run
pnpm run mutateas well. - Exercise the built CLI or public runtime on the affected path and record the commands and results in the PR. Bug fixes should include a regression test.
- For non-trivial code changes, run the repository's isolated autoreview helper:
.agents/skills/autoreview/scripts/autoreview. Verify its findings and address actionable problems before requesting review. - Ensure CI passes. For visual changes, include before/after screenshots using synthetic data and check that the captures contain no secrets or private data.
The CLI, runtime exports, flags, configuration keys, session records, and output formats are compatibility surfaces. Preserve existing behavior during refactors; explain intentional behavior changes and update the relevant documentation. Maintainers add user-facing changelog entries when landing contributions.
Agent documentation
Keep built-in agent documentation and examples consistent with
AGENTS.md. A change to a built-in agent or its
behavior must update both its agents/{Agent}.md guide and
skills/acpx/SKILL.md. Shared landing documentation should
remain impartial and follow the repository's example ordering.
Review follow-through
Handle review conversations on your PR, including automated reviews. After addressing a finding, reply with the change or evidence and resolve the conversation. Leave it open when a maintainer or reviewer decision is still needed. AI-assisted contributions follow the same correctness, testing, and review expectations as other contributions.
Reporting bugs and vulnerabilities
File reproducible bugs in acpx issues. Include the acpx version, Node.js version, operating system, adapter, command, expected behavior, and actual result. Remove credentials and private conversation content from logs and session files before sharing them.
For security vulnerabilities, email security@openclaw.ai instead of opening a public issue. Include the affected acpx version, reproduction steps, demonstrated impact, and any proposed remediation.