@scotthuang/agent-knock-knock 0.3.2 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -571
- package/README.md +97 -123
- package/dist/src/agent-session-provider.d.ts +1 -2
- package/dist/src/approval-policy.d.ts +1 -1
- package/dist/src/approval-policy.js +1 -1
- package/dist/src/approval-policy.js.map +1 -1
- package/dist/src/claude-terminal-agent-adapter.d.ts +2 -17
- package/dist/src/claude-terminal-agent-adapter.js +4 -489
- package/dist/src/claude-terminal-agent-adapter.js.map +1 -1
- package/dist/src/cli.js +1489 -3406
- package/dist/src/cli.js.map +1 -1
- package/dist/src/codex-local-session-provider.d.ts +1 -2
- package/dist/src/codex-local-session-provider.js +1 -9
- package/dist/src/codex-local-session-provider.js.map +1 -1
- package/dist/src/codex-session-provider.d.ts +1 -8
- package/dist/src/codex-session-provider.js +0 -56
- package/dist/src/codex-session-provider.js.map +1 -1
- package/dist/src/codex-terminal-agent-adapter.d.ts +1 -1
- package/dist/src/doctor-capabilities.d.ts +5 -13
- package/dist/src/doctor-capabilities.js +15 -60
- package/dist/src/doctor-capabilities.js.map +1 -1
- package/dist/src/executors.d.ts +5 -51
- package/dist/src/executors.js +4 -68
- package/dist/src/executors.js.map +1 -1
- package/dist/src/openclaw-doctor.d.ts +1 -1
- package/dist/src/openclaw-doctor.js +1 -1
- package/dist/src/openclaw-doctor.js.map +1 -1
- package/dist/src/openclaw-plugin-helpers.d.ts +5 -8
- package/dist/src/openclaw-plugin-helpers.js +57 -40
- package/dist/src/openclaw-plugin-helpers.js.map +1 -1
- package/dist/src/openclaw-plugin.js +138 -248
- package/dist/src/openclaw-plugin.js.map +1 -1
- package/dist/src/protocol.d.ts +1 -5
- package/dist/src/protocol.js +1 -1
- package/dist/src/protocol.js.map +1 -1
- package/dist/src/session-selector.js +1 -1
- package/dist/src/session-selector.js.map +1 -1
- package/dist/src/terminal-agent-adapter.d.ts +3 -17
- package/dist/src/terminal-agent-adapter.js.map +1 -1
- package/dist/src/terminal-agent-bridge.d.ts +3 -3
- package/dist/src/terminal-agent-bridge.js +0 -75
- package/dist/src/terminal-agent-bridge.js.map +1 -1
- package/dist/src/transcript.js +2 -3
- package/dist/src/transcript.js.map +1 -1
- package/docs/quickstart-tmux.md +7 -7
- package/openclaw.plugin.json +4 -83
- package/package.json +7 -15
- package/templates/openclaw-skills/agent-knock-knock/SKILL.md +94 -147
- package/dist/src/acpx-output.d.ts +0 -18
- package/dist/src/acpx-output.js +0 -223
- package/dist/src/acpx-output.js.map +0 -1
- package/dist/src/bootstrap.d.ts +0 -8
- package/dist/src/bootstrap.js +0 -45
- package/dist/src/bootstrap.js.map +0 -1
- package/dist/src/claude-hook-installer.d.ts +0 -65
- package/dist/src/claude-hook-installer.js +0 -410
- package/dist/src/claude-hook-installer.js.map +0 -1
- package/dist/src/claude-hook-protocol.d.ts +0 -89
- package/dist/src/claude-hook-protocol.js +0 -243
- package/dist/src/claude-hook-protocol.js.map +0 -1
- package/dist/src/claude-hook-store.d.ts +0 -247
- package/dist/src/claude-hook-store.js +0 -1075
- package/dist/src/claude-hook-store.js.map +0 -1
- package/dist/src/session-takeover-planner.d.ts +0 -37
- package/dist/src/session-takeover-planner.js +0 -57
- package/dist/src/session-takeover-planner.js.map +0 -1
- package/docs/quickstart-managed-acpx.md +0 -43
- package/scripts/smoke-acpx.js +0 -139
- package/scripts/smoke-tmux.js +0 -140
package/CHANGELOG.md
CHANGED
|
@@ -1,581 +1,19 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 0.
|
|
3
|
+
## 0.4.0 - 2026-07-29
|
|
4
4
|
|
|
5
5
|
### Changed
|
|
6
6
|
|
|
7
|
-
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
### Changed
|
|
12
|
-
|
|
13
|
-
- Lower the OpenClaw plugin API, Gateway, and npm peer floor to the first verified stable API release, `2026.5.12`, and the normal installation host floor to `2026.6.5`, while continuing to build against `2026.7.1-2`.
|
|
14
|
-
- Add isolated compatibility coverage for the minimum and build-time OpenClaw hosts, plus an explicit failing boundary at `2026.5.10-beta.2`.
|
|
15
|
-
|
|
16
|
-
## 0.3.0 - 2026-07-28
|
|
17
|
-
|
|
18
|
-
### Added
|
|
19
|
-
|
|
20
|
-
- Publish the complete OpenClaw plugin, bundled AKK skill, and package-local relay through ClawHub, with stable npm and ClawHub installation paths.
|
|
21
|
-
- Add bounded runtime diagnostics, fail-closed session selectors, stable short references, five-minute tmux and Managed ACPX quickstarts, and opt-in live smoke scripts.
|
|
22
|
-
|
|
23
|
-
### Changed
|
|
24
|
-
|
|
25
|
-
- Make installation configure and verify the OpenClaw runtime while preserving unrelated plugin settings.
|
|
26
|
-
- Confirm asynchronous Gateway callback runs before settling delivery, instead of treating a `started` acknowledgement as delivered.
|
|
27
|
-
|
|
28
|
-
### Fixed
|
|
29
|
-
|
|
30
|
-
- Find the matching Codex completion across plausible same-workspace rollouts and reconcile durable completion before a newer same-pane task can supersede it.
|
|
31
|
-
- Keep uncertain terminal completion and callback delivery states retryable without duplicating callbacks or attributing a newer task's screen output to an older monitor.
|
|
32
|
-
|
|
33
|
-
## 0.3.0-beta.2 - 2026-07-28
|
|
34
|
-
|
|
35
|
-
### Added
|
|
36
|
-
|
|
37
|
-
- Add bounded real probes and OpenClaw config, plugin runtime, skill, workspace, and Gateway diagnostics to `doctor`.
|
|
38
|
-
- Add fail-closed session selectors, stable short references, and independent five-minute tmux and Managed ACPX quickstarts.
|
|
39
|
-
- Add deterministic onboarding coverage and explicitly opt-in live ACPX and tmux smoke scripts.
|
|
40
|
-
|
|
41
|
-
### Changed
|
|
42
|
-
|
|
43
|
-
- Make `install-openclaw` configure workspace, default agent, and mode atomically, preserve approval policy, restart the Gateway at most once, and optionally verify readiness.
|
|
44
|
-
- Verify the packaged README after every ClawHub publish and the default README after stable releases.
|
|
45
|
-
|
|
46
|
-
## 0.3.0-beta.1 - 2026-07-28
|
|
47
|
-
|
|
48
|
-
### Added
|
|
49
|
-
|
|
50
|
-
- Add ClawHub package metadata, bundled skill discovery, a square catalog icon, and a package-local OpenClaw runtime entry.
|
|
51
|
-
- Add manifest/runtime contract tests and a ClawHub validation and dry-run release path.
|
|
52
|
-
|
|
53
|
-
### Changed
|
|
54
|
-
|
|
55
|
-
- Compile against the tested OpenClaw `2026.7.1-2` SDK instead of a handwritten type shim.
|
|
56
|
-
- Separate ClawHub and npm installation guidance, including the explicit optional-tool grant required by a clean OpenClaw profile.
|
|
57
|
-
- Publish prerelease builds to npm's `next` dist-tag and mark their GitHub releases as prereleases.
|
|
58
|
-
|
|
59
|
-
### Fixed
|
|
60
|
-
|
|
61
|
-
- Align the declared `/akk` command, bundled skill, and tool inventory with the capabilities registered at runtime.
|
|
62
|
-
- Resolve the bundled CLI relative to the loaded plugin entry so ClawHub installs do not depend on a global executable.
|
|
63
|
-
|
|
64
|
-
## 0.2.51 - 2026-07-25
|
|
65
|
-
|
|
66
|
-
### Added
|
|
67
|
-
|
|
68
|
-
- Add disabled-by-default exact command and workspace auto-approval for hookless Claude Code tmux turns by intersecting the current one-time Bash dialog with owner-private local transcript evidence.
|
|
69
|
-
|
|
70
|
-
### Changed
|
|
71
|
-
|
|
72
|
-
- Allow trusted `autoApprove` rules to target Claude as well as Codex, while leaving unmatched, unsupported, or ambiguous requests on the manual approval path.
|
|
73
|
-
|
|
74
|
-
### Fixed
|
|
75
|
-
|
|
76
|
-
- Deliver Gateway callback attempts outside conversation locks and recover interrupted approval-notification outboxes with stable message identities without duplicating message events.
|
|
77
|
-
- Preserve terminal monitor ownership across inline auto-approval, callback retries, and post-delivery crashes, and track consumed Claude dialogs by transcript request identity plus an observed prompt-generation boundary so redraws cannot replay Enter while later identical requests remain approvable.
|
|
78
|
-
|
|
79
|
-
### Security
|
|
80
|
-
|
|
81
|
-
- Keep raw Claude commands executor-local and expose only bounded hashes and opaque identities through callbacks, state, events, logs, and screen summaries.
|
|
82
|
-
- Re-evaluate the exact policy and recapture the prompt, selected one-time action, transcript evidence, and process identity after the one-shot dispatch reservation before sending one Enter; stale, changed, replayed, or uncertain requests fail closed.
|
|
83
|
-
- Restrict pending-approval transcript evidence to compatible Claude Code `2.1.x` releases at `2.1.198` or later while retaining forward-compatible durable completion detection.
|
|
84
|
-
|
|
85
|
-
## 0.2.50 - 2026-07-24
|
|
86
|
-
|
|
87
|
-
### Changed
|
|
88
|
-
|
|
89
|
-
- Verify hook-free Claude tmux completion and approval on Claude Code `2.1.218`, and accept newer versions when their transcripts preserve the required identity and completion structure instead of requiring an exact release allowlist.
|
|
90
|
-
|
|
91
|
-
### Fixed
|
|
92
|
-
|
|
93
|
-
- Recognize Claude Code `2.1.218`'s `ctrl+e to explain` Bash approval footer while continuing to approve only the highlighted one-time `Yes` choice.
|
|
94
|
-
|
|
95
|
-
### Security
|
|
96
|
-
|
|
97
|
-
- Reject mixed transcript versions within one turn and keep nonzero or malformed Claude pending-agent and pending-workflow counts from completing early.
|
|
98
|
-
|
|
99
|
-
## 0.2.49 - 2026-07-24
|
|
100
|
-
|
|
101
|
-
### Added
|
|
102
|
-
|
|
103
|
-
- Detect hook-free Claude Code tmux completion from the owner-private local JSONL transcript by binding the exact process, session, prompt, file boundary, `end_turn`, and `turn_duration`, then reusing the existing deterministic, idempotent terminal callback flow.
|
|
104
|
-
|
|
105
|
-
### Changed
|
|
106
|
-
|
|
107
|
-
- Make tmux and ACPX/ACP independent installation choices, with tmux recommended for shared human/agent control.
|
|
108
|
-
- Make Claude Code tmux control and durable completion hook-free by default.
|
|
109
|
-
- Disable the legacy `install-claude-hooks` CLI so AKK no longer writes Claude Code settings.
|
|
110
|
-
- Recover persisted callback outbox entries after process or Gateway restart, with bounded delivery timeouts and idempotent retries.
|
|
111
|
-
|
|
112
|
-
### Security
|
|
113
|
-
|
|
114
|
-
- Limit Claude screen approval to explicit user confirmation for a current managed turn and an exact one-time Bash prompt.
|
|
115
|
-
- Bind approval fingerprints to the raw screen digest, terminal/process identity, conversation, and message; revalidate before input and reject expired, reused, stale, or automatic Claude approvals.
|
|
116
|
-
- Read only the post-send Claude transcript range from a non-symlink, owner-private file; reject unknown schemas, partial writes, rotation, truncation, PID reuse, ambiguous prompts, unresolved tools, and background or sidechain work.
|
|
117
|
-
|
|
118
|
-
## 0.2.48 - 2026-07-23
|
|
119
|
-
|
|
120
|
-
### Added
|
|
121
|
-
|
|
122
|
-
- Add Node 22/24 CI, Dependabot coverage, contribution templates, and a social preview asset.
|
|
123
|
-
|
|
124
|
-
### Changed
|
|
125
|
-
|
|
126
|
-
- Refresh the README and project metadata around OpenClaw orchestration, ACPX delegation, and shared Codex/Claude tmux control.
|
|
127
|
-
- Pin the default Codex ACP adapter to the tested `@agentclientprotocol/codex-acp@1.1.7` release and require Node.js 22.14+.
|
|
128
|
-
- Keep the installed OpenClaw skill on token-free plugin callbacks instead of recommending the legacy direct-token script.
|
|
129
|
-
|
|
130
|
-
### Fixed
|
|
131
|
-
|
|
132
|
-
- Respect the configured default agent and custom store for `/akk` commands, preserve callback delivery for slash-command tmux sends, and keep agent-specific settings out of unrelated follow-ups.
|
|
133
|
-
- Include native and terminal sessions in `/akk list`, resolve relative plugin stores from the configured workspace, and recognize Claude's native versioned executable path.
|
|
134
|
-
- Reconcile eligible tmux monitors after Gateway restarts, prevent duplicate monitors, preserve wrapper process ancestry across list and takeover, and safely migrate exact legacy Codex terminal identities.
|
|
135
|
-
- Make CLI help, version, doctor requirements, and failure exit status predictable.
|
|
136
|
-
|
|
137
|
-
### Security
|
|
138
|
-
|
|
139
|
-
- Require an exact live agent identity before tmux input, revalidate auto approvals inside the executor against the observed prompt, and avoid persisting unmanaged Claude hook payloads.
|
|
140
|
-
- Recheck keys-mode approval fingerprints immediately before input and use tmux bracketed paste for multiline tasks.
|
|
141
|
-
- Keep Gateway tokens out of normal plugin callbacks, coding-agent environments, CLI output, and child-process arguments.
|
|
142
|
-
- Store local task data with private permissions, atomic state replacement, tokenized control locks, serialized stale-lock recovery and event writes, path-containment checks, and symlink rejection.
|
|
143
|
-
- Refuse shared runtime-log directories without changing their permissions and append through no-follow file descriptors.
|
|
144
|
-
|
|
145
|
-
## 0.2.47 - 2026-07-23
|
|
146
|
-
|
|
147
|
-
### Added
|
|
148
|
-
|
|
149
|
-
- Add tmux control for Claude Code, including discovery, safe idle-only sends, Hook-backed monitoring, structured allow/deny, and exact-rule auto approval.
|
|
150
|
-
- Add an idempotent `install-claude-hooks` command that preserves existing Claude settings and hooks.
|
|
151
|
-
|
|
152
|
-
### Fixed
|
|
153
|
-
|
|
154
|
-
- Bind Claude permission and Stop/StopFailure events to strong runtime identity, terminal, conversation, message, and active lease; keep background work from completing early and deliver each terminal result once.
|
|
155
|
-
- Show a redacted permission target summary, preserve conservative manual fallback for unverifiable dialogs, and normalize only the exact source-tagged Tokenjuice Claude wrapper for policy matching.
|
|
156
|
-
|
|
157
|
-
## 0.2.46 - 2026-07-22
|
|
158
|
-
|
|
159
|
-
### Added
|
|
160
|
-
|
|
161
|
-
- Add a registry-driven terminal-agent adapter layer, neutral process discovery, agent-aware terminal IDs, and a documented extension path while keeping legacy Codex IDs compatible.
|
|
162
|
-
|
|
163
|
-
### Security
|
|
164
|
-
|
|
165
|
-
- Fail closed on missing capabilities and revalidate the full ordered approval-key action against a freshly captured prompt before sending terminal input.
|
|
166
|
-
|
|
167
|
-
## 0.2.45 - 2026-07-20
|
|
168
|
-
|
|
169
|
-
### Added
|
|
170
|
-
|
|
171
|
-
- Persist terminal callback delivery state and add bounded automatic retries plus `AKK retry-callback` / `agent_knock_knock_retry_callback` for idempotent manual recovery after delivery failures.
|
|
172
|
-
|
|
173
|
-
### Fixed
|
|
174
|
-
|
|
175
|
-
- Require a request-hash-matched Codex rollout `task_complete` (or terminal-screen completion fallback) before closing terminal bridge tasks, preventing same-workspace assistant progress from another or unfinished turn from being reported as done.
|
|
176
|
-
- Keep terminal bridge tasks in `callback_pending` or `callback_failed` until their OpenClaw callback is actually delivered, and close them only after successful delivery.
|
|
177
|
-
|
|
178
|
-
## 0.2.44 - 2026-07-19
|
|
179
|
-
|
|
180
|
-
### Fixed
|
|
181
|
-
|
|
182
|
-
- Retry local OpenClaw plugin installation with the supported `--force` flow when OpenClaw explicitly requires trust confirmation for a reviewed local source.
|
|
183
|
-
|
|
184
|
-
## 0.2.43 - 2026-07-19
|
|
185
|
-
|
|
186
|
-
### Added
|
|
187
|
-
|
|
188
|
-
- Make terminal bridge inactivity timeouts activity-aware, retain a separate 12-hour hard lifetime, and add `AKK renew` plus matching OpenClaw skill and tool support for explicitly extending long-running tasks.
|
|
189
|
-
- Persist timeout deadlines and activity evidence so renewals and stalls remain auditable without sending any input to the coding agent.
|
|
190
|
-
|
|
191
|
-
### Fixed
|
|
192
|
-
|
|
193
|
-
- Bind Codex terminal callbacks to a matching rollout `task_complete` turn and request hash so final-answer prose cannot be mistaken for a working marker or a result from another task.
|
|
194
|
-
- Atomically supersede older bridge tasks when a tmux pane is reused, while preserving the previous callback path if replacement delivery fails and serializing concurrent sends.
|
|
195
|
-
- Preserve terminal-screen completion fallback for wrapped or scrolled prompts by comparing the completed screen with a pre-send fingerprint.
|
|
196
|
-
|
|
197
|
-
## 0.2.42 - 2026-07-13
|
|
198
|
-
|
|
199
|
-
### Fixed
|
|
200
|
-
|
|
201
|
-
- Detect idle Codex terminal completion from the `Worked for ...` divider when rollout history is unavailable and the visible final answer contains no progress bullet markers.
|
|
202
|
-
- Exclude the completion divider, input placeholder, and model footer from terminal-screen fallback callbacks.
|
|
203
|
-
|
|
204
|
-
## 0.2.41 - 2026-07-11
|
|
205
|
-
|
|
206
|
-
### Added
|
|
207
|
-
|
|
208
|
-
- Add deterministic, default-disabled auto-approval policies for terminal-controlled Codex command prompts, with exact command and workspace rules configured through the trusted OpenClaw plugin config.
|
|
209
|
-
|
|
210
|
-
### Security
|
|
211
|
-
|
|
212
|
-
- Revalidate approval fingerprints immediately before automatic approval, reject shell composition and workspace escapes, and audit the matched rule and policy fingerprint without involving an LLM.
|
|
213
|
-
|
|
214
|
-
## 0.2.40 - 2026-07-10
|
|
215
|
-
|
|
216
|
-
### Fixed
|
|
217
|
-
|
|
218
|
-
- Reinstall existing OpenClaw plugins with a supported force-replace command instead of combining incompatible `--force` and `--link` flags.
|
|
219
|
-
|
|
220
|
-
## 0.2.39 - 2026-07-10
|
|
221
|
-
|
|
222
|
-
### Fixed
|
|
223
|
-
|
|
224
|
-
- Prevent terminal bridge monitors from treating intermediate Codex progress as completion while terminal activity is unknown, and redact environment-style secrets from terminal excerpts.
|
|
225
|
-
|
|
226
|
-
## 0.2.38 - 2026-07-10
|
|
227
|
-
|
|
228
|
-
### Fixed
|
|
229
|
-
|
|
230
|
-
- Make `install-openclaw` reusable for existing plugin installations and add `--skill-only` for synchronizing the OpenClaw skill without reinstalling the plugin.
|
|
231
|
-
|
|
232
|
-
## 0.2.37 - 2026-07-10
|
|
233
|
-
|
|
234
|
-
### Fixed
|
|
235
|
-
|
|
236
|
-
- Close completed terminal bridge callback conversations so one-shot tmux sends do not remain in the default delegated list.
|
|
237
|
-
|
|
238
|
-
## 0.2.36 - 2026-07-10
|
|
239
|
-
|
|
240
|
-
### Added
|
|
241
|
-
|
|
242
|
-
- Notify OpenClaw when a terminal bridge Codex session is waiting for approval, including explicit approve and deny instructions.
|
|
243
|
-
|
|
244
|
-
### Fixed
|
|
245
|
-
|
|
246
|
-
- Resume terminal bridge monitoring after `AKK approve` succeeds so approved Codex work can still deliver its final callback.
|
|
247
|
-
|
|
248
|
-
## 0.2.35 - 2026-07-09
|
|
249
|
-
|
|
250
|
-
### Added
|
|
251
|
-
|
|
252
|
-
- Add a README cover illustration for Agent Knock Knock and include the optimized cover asset in the npm package.
|
|
253
|
-
|
|
254
|
-
## 0.2.34 - 2026-07-09
|
|
255
|
-
|
|
256
|
-
### Fixed
|
|
257
|
-
|
|
258
|
-
- Replace the README architecture image with an inline Mermaid diagram so the diagram renders without depending on raw GitHub image delivery.
|
|
259
|
-
|
|
260
|
-
## 0.2.33 - 2026-07-09
|
|
261
|
-
|
|
262
|
-
### Fixed
|
|
263
|
-
|
|
264
|
-
- Include the README architecture diagram asset in the published npm package so relative image links resolve on package readme surfaces.
|
|
265
|
-
|
|
266
|
-
## 0.2.32 - 2026-07-09
|
|
267
|
-
|
|
268
|
-
### Fixed
|
|
269
|
-
|
|
270
|
-
- Added an idle terminal-screen fallback for terminal bridge callbacks when Codex rollout history is unavailable or does not expose the current tmux task result.
|
|
271
|
-
|
|
272
|
-
## 0.2.31 - 2026-07-09
|
|
273
|
-
|
|
274
|
-
### Fixed
|
|
275
|
-
|
|
276
|
-
- Fixed terminal bridge callback delivery by avoiding unauthenticated gateway URL overrides and persisting the bridge send baseline so stale cwd-matched Codex rollout messages are not treated as the current task result.
|
|
277
|
-
|
|
278
|
-
## 0.2.30 - 2026-07-09
|
|
279
|
-
|
|
280
|
-
### Added
|
|
281
|
-
|
|
282
|
-
- Added terminal bridge monitoring for tmux-controlled Codex conversations so AKK can send only the user-facing task text, observe Codex rollout/terminal state, and deliver the OpenClaw callback itself.
|
|
283
|
-
|
|
284
|
-
## 0.2.29 - 2026-07-08
|
|
285
|
-
|
|
286
|
-
### Fixed
|
|
287
|
-
|
|
288
|
-
- Clarified AKK skill and `agent_knock_knock_send` tool routing so messages to listed AKK/Codex sessions, terminal-controlled rows, or tmux targets such as `my-work:0.1` use `send` instead of starting a new delegation.
|
|
289
|
-
|
|
290
|
-
## 0.2.28 - 2026-07-07
|
|
291
|
-
|
|
292
|
-
### Fixed
|
|
293
|
-
|
|
294
|
-
- Trimmed trailing newlines before sending terminal-controlled Codex messages through tmux and submitted with `C-m`, preventing payload newlines from being left in the Codex input box without starting the task.
|
|
295
|
-
|
|
296
|
-
## 0.2.27 - 2026-07-06
|
|
297
|
-
|
|
298
|
-
### Fixed
|
|
299
|
-
|
|
300
|
-
- Fixed Codex prompt delivery when using an explicit ACPX `--agent` adapter by invoking the top-level `prompt` subcommand before `-s <session>`.
|
|
301
|
-
|
|
302
|
-
## 0.2.26 - 2026-07-06
|
|
303
|
-
|
|
304
|
-
### Fixed
|
|
305
|
-
|
|
306
|
-
- Routed AKK Codex ACPX delegation through the supported `@agentclientprotocol/codex-acp` adapter with an explicit `--agent` command, avoiding OpenClaw ACPX installs that still bundle deprecated `@zed-industries/codex-acp`.
|
|
307
|
-
- Kept `AKK_CODEX_ACPX_AGENT_COMMAND` as an override for custom Codex ACP adapters while refusing explicit `@zed-industries/codex-acp` overrides.
|
|
308
|
-
|
|
309
|
-
## 0.2.25 - 2026-07-06
|
|
310
|
-
|
|
311
|
-
### Fixed
|
|
312
|
-
|
|
313
|
-
- Refused to start Codex through ACPX installations that still reference deprecated `@zed-industries/codex-acp`, preventing AKK from repeatedly launching stale or quarantined Codex adapter binaries.
|
|
314
|
-
|
|
315
|
-
## 0.2.24 - 2026-07-04
|
|
316
|
-
|
|
317
|
-
### Fixed
|
|
318
|
-
|
|
319
|
-
- Ignored injected Codex `<environment_context>` messages when choosing the initial request for `AKK describe`, falling back to the Codex thread title when no real user message is available.
|
|
320
|
-
|
|
321
|
-
## 0.2.23 - 2026-07-04
|
|
322
|
-
|
|
323
|
-
### Fixed
|
|
324
|
-
|
|
325
|
-
- Declared `agent_knock_knock_describe` in the OpenClaw plugin contract and metadata so OpenClaw exposes the new describe tool.
|
|
326
|
-
- Updated the installed AKK skill routing rules to use `agent_knock_knock_describe` for session-content summary requests instead of falling back to direct terminal inspection.
|
|
327
|
-
|
|
328
|
-
## 0.2.22 - 2026-07-04
|
|
329
|
-
|
|
330
|
-
### Added
|
|
331
|
-
|
|
332
|
-
- Added `AKK describe` / `AKK summary` to summarize what an AKK-managed, native Codex, or terminal-controlled Codex session is about.
|
|
333
|
-
- Added the `agent_knock_knock_describe` OpenClaw tool and `/akk describe <conversation-id>` command.
|
|
334
|
-
- Reused Codex rollout history for exact session matches, added cwd-based fallback matching, and returned screen-only summaries with explicit low-confidence limitations when no history can be found.
|
|
335
|
-
|
|
336
|
-
## 0.2.21 - 2026-07-03
|
|
337
|
-
|
|
338
|
-
### Added
|
|
339
|
-
|
|
340
|
-
- Added structured tmux Codex activity detection for terminal-controlled sessions, exposing `activity_state` and `activity_reason` in `AKK status` and `AKK list`.
|
|
341
|
-
- Classified terminal-controlled Codex panes as `awaiting_approval`, `working`, `idle`, or `unknown` using conservative current-screen heuristics.
|
|
342
|
-
- Added regression coverage for approval, stale approval scrollback, working, idle, unknown, and list activity-state output.
|
|
343
|
-
|
|
344
|
-
## 0.2.20 - 2026-07-02
|
|
345
|
-
|
|
346
|
-
### Fixed
|
|
347
|
-
|
|
348
|
-
- Ignored stale Codex approval prompts left in tmux scrollback after later terminal activity, preventing `AKK list`, `AKK status`, and `AKK approve` from treating already-approved prompts as pending.
|
|
349
|
-
- Added regression coverage to ensure stale approval scrollback does not mark terminal-controlled sessions as blocked or send an approval key.
|
|
350
|
-
|
|
351
|
-
## 0.2.19 - 2026-06-30
|
|
352
|
-
|
|
353
|
-
### Fixed
|
|
354
|
-
|
|
355
|
-
- Added a guarded cwd-based tmux pane fallback so wrapper-launched Codex sessions, such as sidecar-managed panes, are detected as `terminal_controlled` when their process cwd uniquely matches a tmux pane path.
|
|
356
|
-
- Preserved existing pid ancestry matching and avoided cwd fallback when multiple panes share the same cwd, preventing ambiguous terminal-control attachment.
|
|
357
|
-
|
|
358
|
-
## 0.2.18 - 2026-06-30
|
|
359
|
-
|
|
360
|
-
### Fixed
|
|
361
|
-
|
|
362
|
-
- Classified Codex remote compact stream disconnects as recoverable executor failures instead of leaving AKK tasks stuck as generic `stalled` conversations.
|
|
363
|
-
- Allowed `AKK recover` to replay saved AKK history and the pending OpenClaw message after a recognized monitor-time executor failure.
|
|
364
|
-
|
|
365
|
-
## 0.2.13 - 2026-06-25
|
|
366
|
-
|
|
367
|
-
### Fixed
|
|
368
|
-
|
|
369
|
-
- Allowed terminal-controlled `AKK status` and `AKK approve` to use `terminal_controlled` ids from `AKK list` directly without requiring an AKK delegated state file.
|
|
370
|
-
- Revalidated the current tmux target and pane pid before reading the terminal screen or sending the approval key.
|
|
371
|
-
|
|
372
|
-
## 0.2.11 - 2026-06-25
|
|
373
|
-
|
|
374
|
-
### Added
|
|
375
|
-
|
|
376
|
-
- Added terminal-controlled `AKK cancel` support by sending Control-C to the controlled tmux pane.
|
|
377
|
-
- Added structured terminal reachability, screen, and approval state to `AKK status` for terminal-controlled sessions.
|
|
7
|
+
- Focus Agent Knock Knock on one transparent execution path: shared tmux terminals for Codex and Claude Code.
|
|
8
|
+
- Reuse exactly one idle agent pane in the configured workspace and fail closed when no unique safe target exists.
|
|
9
|
+
- Prevent a new terminal generation from replacing an active task, persist exact dispatch receipts across stores, and fence uncertain submissions until their owner is explicitly closed.
|
|
10
|
+
- Simplify installation, diagnostics, plugin tools, the bundled skill, and documentation around the tmux handoff workflow.
|
|
378
11
|
|
|
379
12
|
### Removed
|
|
380
13
|
|
|
381
|
-
-
|
|
382
|
-
-
|
|
383
|
-
|
|
384
|
-
## 0.2.10 - 2026-06-25
|
|
385
|
-
|
|
386
|
-
### Fixed
|
|
387
|
-
|
|
388
|
-
- Added parsing for underscore-delimited tmux pane output observed in OpenClaw Gateway terminal diagnostics, allowing those panes to be matched back to Codex processes.
|
|
389
|
-
|
|
390
|
-
## 0.2.9 - 2026-06-25
|
|
391
|
-
|
|
392
|
-
### Fixed
|
|
393
|
-
|
|
394
|
-
- Added a whitespace-delimited tmux pane parser fallback for environments where `tmux list-panes` output is not parsed by the tab-delimited path, and included a bounded `stdoutPreview` in terminal diagnostics.
|
|
395
|
-
|
|
396
|
-
## 0.2.8 - 2026-06-25
|
|
397
|
-
|
|
398
|
-
### Added
|
|
399
|
-
|
|
400
|
-
- Added `AKK list --terminal-debug` and the OpenClaw `terminalDebug` list parameter to expose tmux command, socket, pane, and spawn-attempt diagnostics when terminal-controlled sessions are not detected through the Gateway.
|
|
401
|
-
- Added `scripts/verify-terminal-control.mjs` to validate local Codex/tmux PID mapping against either the source build or an installed package before publishing.
|
|
402
|
-
|
|
403
|
-
## 0.2.7 - 2026-06-25
|
|
404
|
-
|
|
405
|
-
### Fixed
|
|
406
|
-
|
|
407
|
-
- Added tmux socket discovery across `/private/tmp/tmux-*` and `/tmp/tmux-*` directories so OpenClaw Gateway environments do not need to infer the interactive terminal user's tmux socket from their own process UID.
|
|
408
|
-
|
|
409
|
-
## 0.2.6 - 2026-06-25
|
|
410
|
-
|
|
411
|
-
### Fixed
|
|
412
|
-
|
|
413
|
-
- Added tmux executable path fallback for OpenClaw Gateway environments whose service `PATH` cannot resolve `tmux`, allowing `AKK list` and terminal-control actions to discover and operate tmux panes via common absolute install paths.
|
|
414
|
-
|
|
415
|
-
## 0.2.5 - 2026-06-25
|
|
416
|
-
|
|
417
|
-
### Added
|
|
418
|
-
|
|
419
|
-
- Added grouped `AKK list` output for `delegated`, `native`, and `terminal_controlled` sessions while preserving the legacy `tasks` field.
|
|
420
|
-
- Added terminal-controlled approval state to `AKK list`, allowing tmux-backed Codex sessions to show when an approval prompt is visible and approvable.
|
|
421
|
-
|
|
422
|
-
### Changed
|
|
423
|
-
|
|
424
|
-
- Updated OpenClaw routing guidance so active/native Codex session questions use `AKK list` instead of the separate native discover tool.
|
|
425
|
-
|
|
426
|
-
## 0.2.4 - 2026-06-24
|
|
427
|
-
|
|
428
|
-
### Fixed
|
|
429
|
-
|
|
430
|
-
- Added tmux socket fallback discovery for OpenClaw Gateway environments whose service `TMPDIR` differs from the user's interactive terminal, allowing active discovery to mark tmux-controlled Codex panes reliably.
|
|
431
|
-
- Preserved the discovered tmux socket path through terminal-control takeover, status, send, and approve operations so follow-up terminal actions use the same tmux server.
|
|
432
|
-
|
|
433
|
-
## 0.2.3 - 2026-06-24
|
|
434
|
-
|
|
435
|
-
### Fixed
|
|
436
|
-
|
|
437
|
-
- Added the tmux takeover tools to the OpenClaw plugin manifest contracts, allowing OpenClaw to expose `agent_knock_knock_agent_discover`, `agent_knock_knock_agent_takeover`, and `agent_knock_knock_approve` after installation.
|
|
438
|
-
|
|
439
|
-
## 0.2.2 - 2026-06-24
|
|
440
|
-
|
|
441
|
-
### Added
|
|
442
|
-
|
|
443
|
-
- Added tmux-backed terminal-control takeover for native Codex sessions, including tmux pane metadata in active discovery, confirmed `terminal_control` attachment, direct follow-up sends to the existing pane, and a conservative `approve` command for the currently visible Codex approval prompt.
|
|
444
|
-
|
|
445
|
-
## 0.2.1 - 2026-06-22
|
|
446
|
-
|
|
447
|
-
### Changed
|
|
448
|
-
|
|
449
|
-
- Deprecated the standalone restart recovery path from the OpenClaw-facing tool, slash command, skill, and docs. Conversations that need recovery now present `recover`, `close`, or starting a new independent delegation.
|
|
450
|
-
- Changed `send` to automatically fall back to AKK replay recovery when the previous ACPX session is unavailable. Explicit recovery decisions remain available only through `--recovery-policy explicit`.
|
|
451
|
-
|
|
452
|
-
## 0.2.0 - 2026-06-22
|
|
453
|
-
|
|
454
|
-
### Added
|
|
455
|
-
|
|
456
|
-
- Added experimental native Codex session discovery and takeover flows, including safe resume, OpenClaw-summarized fork, and confirmed terminate-then-resume adoption for active Codex CLI sessions.
|
|
457
|
-
- Added an explicit `allowCwdOnly` terminate-then-resume fallback for Codex TUI processes that do not expose a session id in argv; it still requires a user-confirmed pid and cwd re-scan before termination.
|
|
458
|
-
- Added tests for Codex native session takeover planning, confirmed termination safeguards, fork summary confirmation, and native `codex exec resume` follow-up delivery.
|
|
459
|
-
|
|
460
|
-
### Changed
|
|
461
|
-
|
|
462
|
-
- Updated Codex takeover sends to use native `codex exec resume` for adopted Codex sessions, avoiding ACPX session binding issues when resuming existing terminal Codex sessions.
|
|
463
|
-
|
|
464
|
-
## 0.1.2 - 2026-06-21
|
|
465
|
-
|
|
466
|
-
### Fixed
|
|
467
|
-
|
|
468
|
-
- Fixed stalled-task notifications from the background monitor when no explicit Gateway token is stored, allowing local OpenClaw CLI credentials to deliver the stalled callback and including a short executor-output trace in the notification.
|
|
469
|
-
|
|
470
|
-
## 0.1.1 - 2026-06-21
|
|
471
|
-
|
|
472
|
-
### Fixed
|
|
473
|
-
|
|
474
|
-
- Normalized Codex ACPX slash-style model shorthands such as `gpt-5.5/medium` to ACPX bracket model ids such as `gpt-5.5[medium]`, preventing Codex tasks from stalling before callback when a configured model uses the older shorthand.
|
|
475
|
-
|
|
476
|
-
## 0.1.0 - 2026-06-21
|
|
477
|
-
|
|
478
|
-
First public npm release for Agent Knock Knock, including OpenClaw plugin integration, local coding-agent delegation, task management, Cursor support, diagnostics, and packaged installation.
|
|
479
|
-
|
|
480
|
-
### Added
|
|
481
|
-
|
|
482
|
-
- Added ACPX executor metadata so delegations can target Claude Code, Codex, or Cursor.
|
|
483
|
-
- Added CLI task management commands: `list`, `status`, `send`, and `close`.
|
|
484
|
-
- Added OpenClaw plugin tools for task listing, task status, follow-up sends, and local task close.
|
|
485
|
-
- Added the `/akk` OpenClaw command for direct delegation, task listing, status, follow-up sends, and task close from command-capable chat surfaces.
|
|
486
|
-
- Added manifest contracts and tool metadata for the new OpenClaw plugin tools.
|
|
487
|
-
- Added cooperative AKK cancellation through `agent-knock-knock cancel`, `agent_knock_knock_cancel`, and `/akk cancel <conversation-id>` for Codex, Claude, and Cursor ACPX sessions.
|
|
488
|
-
- Added Codex ACPX proxy and model configuration support for environments that require `ALL_PROXY` or a ChatGPT-compatible model id.
|
|
489
|
-
- Added lazy idle-timeout cleanup for idle AKK sessions, configurable with `idleTimeoutMinutes` and defaulting to 10080 minutes.
|
|
490
|
-
- Added runtime diagnostics logs under `~/.agent-knock-knock/logs`, with local timestamps, daily NDJSON files, secret redaction, log-level filtering, and retention cleanup.
|
|
491
|
-
- Added safe executor trace support through `agent-knock-knock status --trace` and the OpenClaw status tool's `trace` parameter, summarizing tool calls, permission requests, client events, monitor events, and redacted thinking markers.
|
|
492
|
-
- Added a coding-agent executor registry that centralizes Codex, Claude Code, and Cursor ACPX metadata, aliases, protocol actors, session naming, and proxy/model configuration.
|
|
493
|
-
- Added an explicit recovery-decision foundation with `needs_recovery`, `agent-knock-knock recover`, `agent-knock-knock restart`, `agent_knock_knock_recover`, `agent_knock_knock_restart`, `/akk recover`, and `/akk restart`.
|
|
494
|
-
- Added Cursor as a supported ACPX coding-agent executor with `AKK Cursor`, `/akk cursor`, `agent="cursor"`, Cursor session/model/proxy config keys, and conservative explicit recovery decisions.
|
|
495
|
-
- Added npm package metadata, public package file allowlist, and a tag-driven GitHub Actions release workflow for publishing `@scotthuang/agent-knock-knock`.
|
|
496
|
-
- Added `agent-knock-knock install-openclaw` for installing the packaged OpenClaw plugin and skill template locally.
|
|
497
|
-
- Added `agent-knock-knock doctor` for checking required local commands, available coding agents, and packaged runtime files.
|
|
498
|
-
- Added tests for Codex-backed delegation and task management flows.
|
|
499
|
-
- Added tests for the executor registry used by Codex, Claude Code, and Cursor.
|
|
500
|
-
- Added tests for explicit recovery decisions, AKK history replay recovery, and restart without history replay.
|
|
501
|
-
- Added tests for Cursor delegate, send, cancel, route metadata, and unavailable-session recovery decision behavior.
|
|
502
|
-
- Added tests for runtime diagnostics logging, redaction, retention cleanup, and CLI log emission.
|
|
503
|
-
|
|
504
|
-
### Changed
|
|
505
|
-
|
|
506
|
-
- Changed actionable callback delivery from Gateway `sessions.send` to `chat.send` with `deliver: true`, so callbacks injected into channel-scoped OpenClaw sessions can use the original outbound channel route.
|
|
507
|
-
- Changed coding-agent `done` callbacks to move AKK conversations to `idle` instead of terminal `done`, allowing follow-up sends to continue the same session until manual close or idle timeout.
|
|
508
|
-
- Updated `done` callback messages to include concise AKK convenience commands such as `AKK list`, `AKK send <conversation-id>: <message>`, `AKK status`, and `AKK close`.
|
|
509
|
-
- Updated OpenClaw plugin routing descriptions so `AKK` and `akk` both indicate Agent Knock Knock, and unspecified AKK delegations default to Codex.
|
|
510
|
-
- Updated the OpenClaw skill template so follow-up language such as "continue", "再让它", or "给刚才那个" defaults to reusing the most recent matching open AKK session through `agent_knock_knock_send`.
|
|
511
|
-
- Updated the OpenClaw skill template with AKK cancel routing for stopping current in-flight work without closing the reusable AKK session.
|
|
512
|
-
- Updated the OpenClaw skill template with AKK/akk routing, configurable default-agent delegation, explicit agent routing, and task management tool usage.
|
|
513
|
-
- Updated follow-up sends from OpenClaw to launch the coding agent in the background so OpenClaw can continue to subsequent tool calls.
|
|
514
|
-
- Migrated the implementation source to TypeScript and moved runtime entrypoints to compiled `dist/src` output.
|
|
515
|
-
- Migrated the Node test suite to TypeScript and updated `npm test` to build before running compiled tests from `dist/test`.
|
|
516
|
-
- Updated `npm run build` to clean stale compiled output before TypeScript compilation, and added `prepack` so npm publish/pack builds fresh runtime files.
|
|
517
|
-
- Changed `delegate` to generate a unique ACPX session for each new coding-agent task unless a session is explicitly configured, preventing concurrent AKK tasks from sharing the same default Codex, Claude, or Cursor session.
|
|
518
|
-
- Added a background executor monitor that marks agent-waiting tasks `stalled` when the launched process exits without a callback or when the configurable `agentTimeoutMinutes` callback timeout is reached, then attempts to notify the original OpenClaw session.
|
|
519
|
-
- Renamed the OpenClaw skill template from `bidirectional-chat` to `agent-knock-knock` so the installed skill matches the project and plugin name.
|
|
520
|
-
- Updated documentation to describe local coding agents, task management, cooperative cancellation, and the home-directory conversation store.
|
|
521
|
-
- Updated documentation with the local update flow required to rebuild and reload the linked OpenClaw plugin after project changes.
|
|
522
|
-
- Updated the OpenClaw skill template and README with conservative recovery guidance for coding agents whose native session resume is unreliable.
|
|
523
|
-
- Updated the OpenClaw skill template, README, plugin manifest, and protocol docs for Cursor routing and task management.
|
|
524
|
-
- Updated README, plugin metadata, and skill guidance to document the configurable `defaultAgent` flow for unspecified AKK delegations.
|
|
525
|
-
- Documented ACPX approval behavior: Claude Code permission requests work with `--approve-all`, while some Codex sensitive operations can fail directly under AKK's non-interactive/background path instead of surfacing an approvable ACPX permission request.
|
|
526
|
-
|
|
527
|
-
### Fixed
|
|
528
|
-
|
|
529
|
-
- Fixed OpenClaw plugin delegations generating `--record-only` callback commands even when Gateway callback delivery was configured, which caused completed Codex tasks to be logged locally without returning results to OpenClaw.
|
|
530
|
-
- Fixed chat-routed `/akk cursor ...`, `/akk claude ...`, and `/akk codex ...` requests being treated as unspecified delegations when OpenClaw called the delegate tool without an explicit `agent` parameter.
|
|
531
|
-
|
|
532
|
-
### Verified
|
|
533
|
-
|
|
534
|
-
- `npm test` passes 53 tests.
|
|
535
|
-
- `npm --cache /private/tmp/akk-npm-cache pack --dry-run` verifies the scoped npm package contents.
|
|
536
|
-
- Local OpenClaw installation validated with the npm-installed Agent Knock Knock plugin loaded, the updated `agent-knock-knock` skill installed, and the gateway restarted successfully.
|
|
537
|
-
- Live OpenClaw validation created a Claude task, listed Claude tasks, sent a follow-up message, and closed the task through plugin tools.
|
|
538
|
-
- Live OpenClaw validation created a Codex task with a configured `ALL_PROXY` value and `model=gpt-5.5/medium`, listed Codex tasks, sent a follow-up message, received Codex `done`, and closed the task through plugin tools.
|
|
539
|
-
- Live ACPX validation created smoke sessions for Codex and Claude Code, called AKK cancel for each, observed `executor_cancel_requested` events with status 0, and closed the smoke ACPX sessions.
|
|
540
|
-
- Published `@scotthuang/agent-knock-knock@0.1.0` to npm.
|
|
541
|
-
- Created GitHub Release `v0.1.0`.
|
|
542
|
-
|
|
543
|
-
### Initial MVP Baseline
|
|
544
|
-
|
|
545
|
-
Initial MVP for managed bidirectional agent delegation.
|
|
546
|
-
|
|
547
|
-
#### Added
|
|
548
|
-
|
|
549
|
-
- Added a minimal Node.js project with no runtime dependencies.
|
|
550
|
-
- Added structured bidirectional message protocol for OpenClaw manager and Claude Code developer roles.
|
|
551
|
-
- Added conversation state tracking with response-round budget support.
|
|
552
|
-
- Added budget thresholds:
|
|
553
|
-
- 50 response-round soft limit
|
|
554
|
-
- 100 response-round hard limit
|
|
555
|
-
- 30-round convergence warning
|
|
556
|
-
- 40-round completion/degrade/failure warning
|
|
557
|
-
- Added NDJSON event logging for conversations, messages, raw exchanges, and closure events.
|
|
558
|
-
- Added Claude Code bootstrap prompt generation.
|
|
559
|
-
- Added CLI commands for creating conversations, recording messages, generating bootstrap prompts, and delegating tasks.
|
|
560
|
-
- Added shell wrapper for delegation startup.
|
|
561
|
-
- Added OpenClaw skill template for bidirectional Claude Code delegation.
|
|
562
|
-
- Added protocol documentation.
|
|
563
|
-
- Added two-Claude simulation script for weather lookup and multi-round architecture decision scenarios.
|
|
564
|
-
- Added tests for response-round accounting, budget escalation, and done-message closure behavior.
|
|
565
|
-
|
|
566
|
-
#### Verified
|
|
567
|
-
|
|
568
|
-
- `npm test` passes.
|
|
569
|
-
- Conversation creation writes state and NDJSON logs.
|
|
570
|
-
- Message recording updates conversation state.
|
|
571
|
-
- Two-Claude architecture scenario completes with correct round accounting:
|
|
572
|
-
- `task`, `question`, `answer`, `question`, `answer` count as response rounds.
|
|
573
|
-
- `done` does not increment response rounds.
|
|
574
|
-
- Two-Claude weather scenario records blocked/failure flows when live weather lookup is unavailable.
|
|
14
|
+
- Remove the alternative managed execution stack, blanket background approval, non-tmux agent integration, model/proxy overrides, and callback bootstrap contract.
|
|
15
|
+
- Remove obsolete quickstarts, smoke tests, simulations, modules, and maintenance assets for unsupported execution paths.
|
|
575
16
|
|
|
576
|
-
|
|
17
|
+
## Earlier releases
|
|
577
18
|
|
|
578
|
-
-
|
|
579
|
-
- The two-Claude simulation currently stores full raw `acpx` output in logs, including client/tool status lines.
|
|
580
|
-
- The script does not yet parse the model's returned JSON into canonical message body fields.
|
|
581
|
-
- Real OpenClaw Gateway integration is not implemented yet; current implementation simulates OpenClaw with Manager Claude.
|
|
19
|
+
The pre-0.4 history remains available in [GitHub Releases](https://github.com/scotthuang/agent-knock-knock/releases).
|