@scotthuang/agent-knock-knock 0.7.0 → 0.8.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 +12 -0
- package/README.md +7 -5
- package/dist/src/cli.js +582 -103
- package/dist/src/cli.js.map +1 -1
- package/dist/src/openclaw-plugin-helpers.js +84 -45
- package/dist/src/openclaw-plugin-helpers.js.map +1 -1
- package/dist/src/openclaw-plugin.js +16 -23
- package/dist/src/openclaw-plugin.js.map +1 -1
- package/dist/src/session-selector.d.ts +18 -0
- package/dist/src/session-selector.js +18 -9
- package/dist/src/session-selector.js.map +1 -1
- package/docs/quickstart-tmux.md +4 -2
- package/openclaw.plugin.json +2 -2
- package/package.json +1 -1
- package/templates/openclaw-skills/agent-knock-knock/SKILL.md +12 -10
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.8.0 - 2026-08-01
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- Make `AKK list` terminal-first: every discovered tmux pane is a single primary `terminals[]` resource with its authoritative current turn or latest retained turn nested below it.
|
|
8
|
+
- Replace ambiguous managed-turn `send` hints with `follow_up`, keep historical turns explicitly addressable, and limit default selectors to physical terminal candidates.
|
|
9
|
+
- Determine current terminal ownership from the dispatch ledger and suppress side effects when ownership is unresolved, while keeping the pane visible.
|
|
10
|
+
|
|
11
|
+
### Removed
|
|
12
|
+
|
|
13
|
+
- Remove the public `delegated[]`, `terminal_controlled[]`, `tasks[]`, legacy `commands`, and `source: "akk_delegate"` list compatibility model.
|
|
14
|
+
|
|
3
15
|
## 0.7.0 - 2026-08-01
|
|
4
16
|
|
|
5
17
|
### Changed
|
package/README.md
CHANGED
|
@@ -114,7 +114,7 @@ If you also want standalone shell commands such as `agent-knock-knock doctor`, i
|
|
|
114
114
|
npm install -g @scotthuang/agent-knock-knock
|
|
115
115
|
```
|
|
116
116
|
|
|
117
|
-
Standalone `agent-knock-knock list` and `status` are read-only with respect to managed
|
|
117
|
+
Standalone `agent-knock-knock list` and `status` are read-only with respect to managed-turn state by default. Passing `--reconcile` explicitly enables controlled reconciliation; OpenClaw does this for `/akk list`, `/akk status`, and the corresponding plugin tools.
|
|
118
118
|
|
|
119
119
|
### Alternative: Install from npm
|
|
120
120
|
|
|
@@ -197,11 +197,13 @@ The core command surface is intentionally small:
|
|
|
197
197
|
/akk cancel <session-selector>
|
|
198
198
|
```
|
|
199
199
|
|
|
200
|
-
`/akk list` performs a controlled reconciliation across managed
|
|
200
|
+
`/akk list` performs a controlled reconciliation across managed turns, and `/akk status` limits reconciliation to the selected turn. This can close records whose idle retention has elapsed and restore eligible missing monitors, but it does not send terminal input or retry callback delivery. Standalone shell queries are read-only unless `--reconcile` is explicitly passed, and resolving a selector never changes turn state.
|
|
201
201
|
|
|
202
202
|
Selectors fail closed: `only` works only with one actionable target, `latest` requires a unique newest target, and `codex` or `claude` must identify exactly one eligible pane. `AKK list` shows stable short references while JSON output retains the authoritative full IDs. Before every terminal operation, AKK revalidates the expected agent PID and tmux pane identity, then confirms that the process and pane working directories still match; every send also revalidates the idle prompt immediately before typing.
|
|
203
203
|
|
|
204
|
-
For natural-language tool use, `agent_knock_knock_list`
|
|
204
|
+
For natural-language tool use, `agent_knock_knock_list` is terminal-first. Each live pane appears exactly once in `terminals[]`; `process_state` reports whether its coding-agent process is alive and `activity_state` reports the parsed screen state. Its optional `managed.current_turn` is the authoritative active AKK turn, while `managed.recent_turn` is retained history and does not occupy the terminal. Pass `all=true` to include older entries in `managed.history`. By default, `unavailable_managed_turns[]` contains attention-needed records whose pane cannot be presented as a live terminal; `all=true` also includes retained unavailable history.
|
|
205
|
+
|
|
206
|
+
Use only an `available_actions` entry returned in that snapshot, begin with its prefilled authoritative arguments, and supply every `missing_required` field. A terminal's `send` action starts a new managed turn; a managed turn's `follow_up` action continues that exact turn through the same `agent_knock_knock_send` tool. Status, approval, cancellation, renewal, callback retry, and close use `conversation_id`. For an ordinary send or follow-up, add only `request`—`timeoutSeconds` is unsupported, and monitoring limits should be omitted unless the user explicitly asks to change them. AKK revalidates availability before every side effect.
|
|
205
207
|
|
|
206
208
|
Workspace is not a routing boundary. AKK can list, inspect, and control verified panes across projects; when more than one target matches, use a selector to choose one explicitly.
|
|
207
209
|
|
|
@@ -260,7 +262,7 @@ Place `autoApprove` inside the plugin `config` object. It is disabled by default
|
|
|
260
262
|
|
|
261
263
|
AKK has no hosted control plane or telemetry and does not modify coding-agent settings. Its terminal state and logs stay on your machine; Claude approval callbacks omit raw commands, while Codex may include the visible command details OpenClaw needs to present for review.
|
|
262
264
|
|
|
263
|
-
At startup, AKK only registers its tools and reconciles monitors for existing
|
|
265
|
+
At startup, AKK only registers its tools and reconciles monitors for existing managed turns. It never launches a coding agent; new work reuses exactly one eligible agent pane that you already started in tmux.
|
|
264
266
|
|
|
265
267
|
Your task content is still processed by OpenClaw and the coding-agent or model providers you configure. Review agent permissions and keep secrets out of task prompts.
|
|
266
268
|
|
|
@@ -321,7 +323,7 @@ Managed state now lives in the stable `~/.agent-knock-knock/store` root. Its man
|
|
|
321
323
|
|
|
322
324
|
The manifest checks storage format and writer behavior separately. An unknown `format_version` is not read. When the format is readable but `writer_protocol` differs, normal queries remain available, explicit reconciliation reports `skipped`, and every mutation fails closed before terminal or Gateway side effects.
|
|
323
325
|
|
|
324
|
-
The former `~/.agent-knock-knock/conversations` directory is left untouched
|
|
326
|
+
The former `~/.agent-knock-knock/conversations` directory is left untouched; AKK does not read or migrate it. Existing Codex and Claude Code tmux panes remain available through live discovery, while their old managed-turn IDs, callback associations, and follow-up records are not carried into the new Store. Compatible future upgrades continue using the stable Store rather than creating a directory per package version.
|
|
325
327
|
|
|
326
328
|
Runtime logs redact common secrets and default to 14-day retention. Configure storage and logging with `--store-dir`, `AKK_LOG_DIR`, `AKK_LOG_LEVEL`, and `AKK_LOG_RETENTION_DAYS`; use a dedicated custom log directory.
|
|
327
329
|
|