Commit Graph

53 Commits

Author SHA1 Message Date
Peter Steinberger
9fedaec7c2
docs: add GitHub Pages docs site 2026-05-05 22:06:47 +01:00
Peter Steinberger
2480c48806
fix: require advertised ACP model support
Some checks are pending
CI / scope (push) Waiting to run
CI / ${{ matrix.name }} (pnpm run build, Build) (push) Blocked by required conditions
CI / ${{ matrix.name }} (pnpm run conformance:run -- --case acp.v1.initialize.handshake, Conformance Smoke) (push) Blocked by required conditions
CI / ${{ matrix.name }} (pnpm run format:check, Format) (push) Blocked by required conditions
CI / ${{ matrix.name }} (pnpm run lint, Lint) (push) Blocked by required conditions
CI / ${{ matrix.name }} (pnpm run test:coverage, Test, 22) (push) Blocked by required conditions
CI / ${{ matrix.name }} (pnpm run typecheck, Typecheck) (push) Blocked by required conditions
CI / Docs (push) Blocked by required conditions
2026-04-25 21:52:18 +01:00
Peter Steinberger
2b92de84e7
docs: clarify session identity output 2026-04-25 10:44:12 +01:00
Peter Steinberger
51123f8de5
fix: mark resumable sessions idle
Fixes #185
2026-04-25 09:47:51 +01:00
DMQ
3b94ac9c39
feat(cli): add terminal capability opt-out
Add --no-terminal so ACPX can initialize new agent clients with clientCapabilities.terminal=false.

Reworked on current main because the original branch targeted stale paths. Includes CLI/docs/changelog updates plus regression coverage for direct exec and queue-owner propagation.

Local verification:
- fnm exec --using=24.15.0 corepack pnpm@10.33.2 run check

CI: https://github.com/openclaw/acpx/actions/runs/24926378907

Co-authored-by: DMQ <6860287+DMQ@users.noreply.github.com>
2026-04-25 09:08:35 +01:00
Coder
0ad1577c1e
feat(sessions): add prune command
Add an explicit `sessions prune` command for deleting closed session records and optional event stream history.

- add `sessions prune` with `--dry-run`, `--before`, `--older-than`, and `--include-history`
- filter age by `closedAt`, falling back to `lastUsedAt` for older records
- avoid overmatching neighboring stream files when deleting history
- cover storage behavior plus CLI help, dry-run, JSON output, and include-history paths
- document the command and add the changelog entry

Validation:
- fnm exec --using=24.15.0 corepack pnpm@10.33.2 run build:test
- fnm exec --using=24.15.0 node --test dist-test/test/sessions-prune.test.js dist-test/test/cli.test.js --test-name-pattern "sessions prune|sessions new command is present"
- fnm exec --using=24.15.0 corepack pnpm@10.33.2 run check
- CI: https://github.com/openclaw/acpx/actions/runs/24926186590 on c263cd981d66bf66750a1ac73c4f46d089c780cc

Co-authored-by: coder999999999 <coder999999999@users.noreply.github.com>
2026-04-25 08:57:34 +01:00
Peter Steinberger
b03c475f1e fix(output): add text error remediation hints (#256) 2026-04-25 07:26:04 +01:00
Peter Steinberger
3d967954c1 fix(config): honor custom agent args (#199) 2026-04-25 07:14:20 +01:00
Luke
351f1588c1 fix: require explicit ACPX auth envs for ACP auth selection 2026-04-25 07:03:19 +01:00
Bob
1d61d4b231
fix: own built-in adapter launches (#226)
* docs: add built-in agent launch ownership note

* runtime: own built-in adapter launches

* docs: clarify built-in adapter install policy

* runtime: launch built-ins with current node

---------

Co-authored-by: Onur <2453968+osolmaz@users.noreply.github.com>
2026-04-06 23:25:47 +02:00
Onur Solmaz
be510ba918
refactor: add acpx runtime embedding API (#220)
* refactor: add acpx runtime embedding API

* fix: preserve session state on replay failure

* fix: honor startup controls in runtime manager

* Runtime: deduplicate shared session engine

* Runtime: honor oneshot and steer inputs

* Runtime: keep persistent sessions stable

* Runtime: initialize embedded event logs

* Runtime: drop unsupported ensure env

* Refactor: reorganize ACPX source layout

* refactor: finish ACPX source layout cleanup

* docs: note runtime embedding API
2026-04-06 00:52:21 +02:00
Onur Solmaz
ead133cfb2
feat: validate flow definitions and require defineFlow (#219)
* docs: clarify structured flow design

* docs: require conventional PR titles

* docs: detail zod flow validation direction

* feat: validate flow definitions with zod

* fix: allow extension fields in flow validation

* fix: reject ambiguous flow edge shapes

* fix: improve flow validation errors

* fix: validate plain exported flows before permission checks

* style: format flow CLI imports

* fix: preserve staged flow assembly

* feat: require defineFlow for flow modules

* fix: keep flow runner validation structural

* fix: resolve acpx flows in test builds
2026-04-05 15:34:56 +02:00
Onur Solmaz
48ae9011dc
feat: stream replay viewer runs live (#205)
* feat: stream replay viewer runs live

* fix: keep replay bootstrap stable during live updates

* fix: streamline replay viewer recent runs

* feat: add first-class replay viewer scripts

* docs: adopt json patch plus spec

* docs: pin live transport decisions

* feat: stream live replay session updates

* fix: harden replay viewer live sync

* fix: guard replay viewer recent-run races

* fix: refresh replay snapshots from source

* fix: tint replay runs by status

* fix: render live replay sessions directly

* fix: harden replay viewer live runs sync

* fix: preserve replay viewer conversation order

* fix: settle completed terminal replay nodes

* feat: compact replay viewer tool cards

* refactor: simplify replay viewer tool event chrome

* refactor: flatten replay viewer tool events

* fix: reveal replay tool calls before step completion

* fix: make replay viewer follow sticky to bottom

* fix: detach replay viewer follow on upward scroll

* fix: rename replay viewer part discriminators
2026-04-02 01:06:15 +02:00
YifuGu
88b95b2811
feat: generic model selection via ACP session/set_model (#150)
* feat: generic model selection via ACP session/set_model

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* test: cover explicit codex model control

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Onur Solmaz <2453968+osolmaz@users.noreply.github.com>
2026-03-29 16:42:30 +02:00
Onur Solmaz
fe3728b68a
feat(output): add --suppress-reads flag (#193)
* feat(output): add suppress-reads flag

* docs(changelog): note suppress-reads flag (#136)

---------

Co-authored-by: hayatosc <hayato8190+univ@gmail.com>
2026-03-29 11:40:35 +02:00
Onur Solmaz
aff31b3731
flow: broaden pr-triage refactor judgment (#190)
* flow: broaden pr-triage refactor judgment

* docs: add pr-triage tuning notes

* docs: add retroactive pr-triage tuning notes

* flow: tighten pr-triage cleanup judgment

* docs: clarify persistent flow session recovery

* fix: require persistent flow sessions to resume same ACP session

* fix: keep first persistent ACP turn on creating client

* docs: add pr-triage tuning follow-up note
2026-03-29 11:07:10 +02:00
Onur
237613b477 fix: switch Claude ACP package to agentclientprotocol 2026-03-28 14:34:49 +01:00
Onur Solmaz
429b03071d
docs: specify explicit flow permission grants (#186)
* docs: specify explicit flow permission grants

* feat: enforce explicit flow permission grants

* docs: clarify codex review timing expectations
2026-03-28 10:04:04 +01:00
Onur Solmaz
9348242a1c
docs: specify the flow replay viewer (#183)
* docs: specify flow replay viewer semantics

* docs: tighten replay viewer presentation rules

* docs: remove redundant replay viewer chrome

* feat: tighten replay viewer flow inspection

* fix: keep empty ACP session pane full height

* fix: move replay transport into graph footer

* fix: tighten replay footer and empty session layout

* fix: stretch replay viewer to full viewport height

* fix: simplify ACP session conversation styling

* fix: widen replay viewer user bubbles

* fix: remove replay viewer session notes

* docs: specify continuous replay behavior

* feat: add continuous replay playback

* fix: remove replay viewer message outlines

* fix: simplify replay viewer chrome

* fix: tighten replay playback behavior

* feat: support replay viewer session switching

* fix: remove replay viewer session details

* fix: improve replay viewer terminal layout

* fix: stream only assistant turns in replay

* feat: add follow mode to replay viewer

* refactor: split replay viewer internals

* fix: normalize replay start behavior

* fix: stabilize replay viewer camera layout

* feat: use ELK for replay viewer layout

* fix: clamp replay scrubber at timeline end

* feat: add replay speed controls

* fix: keep replay controls centered

* fix: move replay camera controls into graph

* fix: remove duplicate replay speed control

* fix: reset replay sessions on non-acp steps

* fix: keep pr triage ci monitoring in one step

* feat: keep selected replay run in the URL

* feat: use path-based replay run URLs

* fix: tighten replay viewer controls
2026-03-28 01:40:07 +01:00
Onur Solmaz
4008683d51
feat: add flow trace replay bundles for flow runs (#181)
* docs: add flow trace replay spec

* docs: lock down flow trace replay details

* feat: add flow trace replay bundles

* fix: serialize bundled flow session events

* feat: add flow trace replay viewer example

* feat: add recent run picker to replay viewer

* feat: improve replay viewer navigation

* feat: tighten replay viewer layout and session rendering

* refactor: rename flow schema type fields

* fix: tighten replay viewer shell and session pane

* fix: simplify replay viewer sidebar

* fix: keep replay viewer run rows compact

* fix: harden pr triage json parsing

* fix: treat codex review output as plain text

* fix: separate replay position from run outcome

* fix: approve workflow runs from ci lane
2026-03-27 13:05:22 +01:00
Onur Solmaz
697ee1f2a6
feat: add experimental acpx flows runtime and examples (#179)
* docs: add acpx flows implementation plan

* docs: simplify acpx flows session model

* docs: place flow examples under workflows dir

* feat: add experimental flow runner

* refactor: remove repo-specific flow examples

* docs: add generic flow examples

* fix: unwrap external flow module exports

* feat: add native flow action execution

* refactor: split flow runtime concerns

* feat: harden flow runtime workspaces and step bounds

* docs: clarify flow JSON simplicity rules

* Unify flows architecture docs

* Tighten flow validation and queue-owner args

* test: cover flows and queue runtime

* refactor: split flows queue and cli modules

* docs: add pr triage flow example

* docs: tighten flow documentation

* feat: route flow node timeouts as outcomes

* fix: tighten flow timeouts and cwd handling

* fix: harden flow timeout handling

* fix: support external flow imports

* chore: raise pr triage review timeout
2026-03-26 17:11:48 +01:00
Vincent Koc
ba0abbffa0
feat: add Factory Droid aliases (#156) 2026-03-17 21:09:18 -07:00
Onur Solmaz
78ecb82654
chore: pin ACP adapter package ranges (#99)
* chore: pin ACP adapter package ranges

* refactor: centralize adapter pin references
2026-03-10 09:12:30 +01:00
Onur Solmaz
9141b63a4c
feat: add Cursor ACP support (#98)
* feat: add Cursor ACP support

* docs: enforce example agent ordering

* docs: normalize built-in agent ordering

* docs: strengthen ordering policy in AGENTS

* docs: format AGENTS ordering policy

* docs: reorganize built-in agent docs

* docs: restore AGENTS policy wording
2026-03-10 08:36:03 +01:00
gandli
649e74cd20
docs: sync agent registry mappings with source code (openclaw#55)
Verified:
- pnpm build
- pnpm check (failed on repo-wide coverage baseline after 200/200 tests passed)
- pnpm test:macmini (script not present in this repo)

Co-authored-by: gandli <85359251+gandli@users.noreply.github.com>
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com>
2026-03-09 16:37:47 -05:00
gandli
6e0aeabe3c
feat: add Kimi CLI ACP adapter support (#56)
Add built-in agent 'kimi' mapped to 'kimi acp' command.
Kimi CLI is Moonshot AI's coding agent with native ACP support.

Changes:
- Add kimi to AGENT_REGISTRY in src/agent-registry.ts
- Update test expectations for 6 built-in agents
- Update agent-registry.md documentation
- Update README.md agent table and prerequisites
- Update CLI.md agent commands section
- Update SKILL.md built-in registry section

Co-authored-by: OpenClaw Bot <dev@openclaw.ai>
2026-03-09 14:33:31 -05:00
Vincent Koc
3dbf54c563
feat: add native Copilot agent support (#72)
* docs: document Copilot native agent support

* feat: add Copilot built-in agent mapping

* docs: add Copilot built-in agent reference
2026-03-09 11:55:00 -07:00
Zongxin Yang
a0e34dfd53
docs: clarify set-mode values are adapter-defined (#27)
Co-authored-by: Zongxin Yang <zongxin@Zongxins-Mac-mini.local>
2026-03-09 13:35:50 -05:00
Peter Steinberger
a352fe13aa fix: stabilize queue sockets and add openclaw alias 2026-03-09 00:44:42 +00:00
Bob
3ba7ca2fa1
Docs: define ACP-only JSON stream contract (#34)
* Docs: specify ACP-only JSON stream contract

* ACP: switch JSON stream and persistence to pure JSON-RPC

* Refactor: split ACP formatting/runtime helpers and drop dead events module

* Test: expand pure JSON-RPC stream coverage for strict, queue, and persistence

---------

Co-authored-by: Onur <2453968+osolmaz@users.noreply.github.com>
2026-02-28 20:23:53 +01:00
Onur Solmaz
a44dd8b07e
Feat/acpx session model (#28)
* docs: define lindy session event-log data model

* docs: rename acpx session model proposal

* docs: use uuid examples for agentSessionId

* docs: align acpx session model with ACP schema semantics

* session: persist ACP projection and derived state

* Session model: align persistence with Zed thread schema

* Session model: switch to strict Zed-analogous thread schema

* Docs: define full session + NDJSON audit model

* Persistence: enforce snake_case session schema and add key-policy lint

* Docs: finalize single-schema event/session model spec

* Session model: canonical ACP events with persisted event log

* Queue owner: return after draining pending tasks

* Runtime: canonical queue stream + shared session defaults

* Errors: remove legacy fallback parsing paths

* Events: rename kind to type and centralize event type constants

* Runtime: warm queue owner and canonical control events

* runtime: recover empty-session load failures on first prompt

* session: drop unused conversation metadata fields

* session: cut over to top-level acpx.session.v1 schema

* refactor: split session modules and harden quiet output

* queue/event-log: recover stale owners and track real segments
2026-02-28 10:10:11 +01:00
Onur
02686e6fb1 docs: remove legacy compatibility assumptions from owner plan 2026-02-26 00:10:12 +01:00
Onur
0394c91b23 docs: add detached warm session owner architecture 2026-02-26 00:10:12 +01:00
Onur
aa337cb36e docs: rename runtime session id spec to session identity 2026-02-25 12:26:44 +01:00
Onur
b522ac875b acp: require single agentSessionId metadata key 2026-02-25 12:26:44 +01:00
Onur
b2a19bfb1d docs: clarify ACP session identity and simplify coverage doc 2026-02-25 12:26:44 +01:00
Bob
22a1ce78c7
docs: specify runtime session id passthrough from ACP metadata (#18)
* docs: add runtime session id spec for ACP metadata passthrough

* feat: surface runtime session ids in acpx sessions/status

* refactor: centralize runtime session id normalization

---------

Co-authored-by: Onur <2453968+osolmaz@users.noreply.github.com>
2026-02-24 14:43:27 +01:00
Bob
2c73ee2875 Add output/error ownership refactor to implementation plan 2026-02-23 02:12:21 +01:00
Bob
af5773d2b0 cli: add json-strict mode and auth-required detail mapping 2026-02-23 02:12:21 +01:00
Bob
1efef5f2ae docs: split permanent ACPX error strategy 2026-02-23 02:12:21 +01:00
Bob
8b673f2e21 docs: define ACP-aligned general error strategy 2026-02-23 02:12:21 +01:00
Bob
b999903eab docs: add OpenClaw integration plan 2026-02-23 02:12:21 +01:00
Bob
ba8d2a9804 test: add mock ACP agent integration framework 2026-02-19 22:39:51 +01:00
Bob
1c94396c91 feat: implement full stable ACP spec coverage 2026-02-19 21:33:59 +01:00
Bob
830c49ba11 fix: move global config path to ~/.acpx/config.json 2026-02-19 21:33:59 +01:00
Bob
dc9e9d3890 feat: add graceful cancel, config, status, and session inspection features 2026-02-19 21:33:59 +01:00
Bob
0a1e93fc1f feat: bound session routing to git root and improve banner 2026-02-18 22:28:15 +01:00
Bob
1dd7337298 feat: require explicit sessions and route by directory walk 2026-02-18 22:28:15 +01:00
Bob
7ecea363df Implement soft-close sessions, sessions new, and queue-owner TTL 2026-02-18 16:51:09 +01:00
Bob
9fd1c31fdd feat: add opencode and pi to agent registry 2026-02-18 01:06:38 +01:00