@scotthuang/agent-knock-knock 0.14.6 → 0.14.8
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 +26 -0
- package/README.md +14 -15
- package/connectors/deepseek-harness/README.md +94 -66
- package/connectors/pi/README.md +93 -48
- package/dist/src/desktop-cli-adapter.js +5 -2
- package/dist/src/desktop-cli-adapter.js.map +1 -1
- package/dist/src/desktop-compatibility.d.ts +6 -1
- package/dist/src/desktop-compatibility.js +10 -4
- package/dist/src/desktop-compatibility.js.map +1 -1
- package/dist/src/desktop-interaction-projection.d.ts +2 -1
- package/dist/src/desktop-interaction-projection.js +3 -1
- package/dist/src/desktop-interaction-projection.js.map +1 -1
- package/dist/src/desktop-ipc-client.js +6 -4
- package/dist/src/desktop-ipc-client.js.map +1 -1
- package/dist/src/desktop-ipc-native-operations.d.ts +2 -1
- package/dist/src/desktop-ipc-native-operations.js +5 -1
- package/dist/src/desktop-ipc-native-operations.js.map +1 -1
- package/dist/src/desktop-list.d.ts +1 -0
- package/dist/src/desktop-list.js +1 -0
- package/dist/src/desktop-list.js.map +1 -1
- package/dist/src/desktop-public-projection.js +17 -13
- package/dist/src/desktop-public-projection.js.map +1 -1
- package/dist/src/desktop-runtime.js +1 -1
- package/dist/src/desktop-runtime.js.map +1 -1
- package/dist/src/desktop-task-interactions.d.ts +2 -1
- package/dist/src/desktop-task-interactions.js +3 -1
- package/dist/src/desktop-task-interactions.js.map +1 -1
- package/dist/src/desktop-task-service.d.ts +2 -1
- package/dist/src/desktop-task-service.js.map +1 -1
- package/dist/src/semantic-tool-list-projection.js +1 -1
- package/dist/src/semantic-tool-list-projection.js.map +1 -1
- package/docs/codex-desktop-compatibility.md +93 -12
- package/docs/desktop-create.md +11 -3
- package/docs/pi-dsh-compatibility.md +138 -0
- package/package.json +1 -1
- package/templates/openclaw-skills/agent-knock-knock/SKILL.md +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.14.8 - 2026-10-14
|
|
4
|
+
|
|
5
|
+
- Enable blocking and asynchronous question answers on macOS Codex Desktop `26.1007.30912` / build `20156`, independently of model/permission settings and cancellation. Use the advertised Respond action from fresh conversation or exact Watch Status.
|
|
6
|
+
- Preserve exact task/request identity, one-dispatch response records and native answer confirmation. Real Desktop validation covered an asynchronous choice, free text, and a two-question Plan request; original tasks consumed the answers and completed. Local attention/completion callbacks were verified, not external chat delivery.
|
|
7
|
+
|
|
8
|
+
## Connector releases - 2026-10-14
|
|
9
|
+
|
|
10
|
+
- Publish Pi connector `0.1.0-poc.3` and DeepSeek Harness connector `0.1.0-rc.5` independently under npm `next`; neither changes the core `0.14.7` version or promotes a connector to stable `latest`.
|
|
11
|
+
- Pin both connectors to published AKK `0.14.7`, aligning the installed HostAdapter, lockfiles, 26 registered tools and canonical Skill handshake. The connectors now expose that core's direct CLI/Desktop capabilities under the existing per-target limits.
|
|
12
|
+
- Support Pi `1.2.0`, retaining the reviewed `0.84.4` runtime. Use the actual Host version in the callback profile, adapt the tool execution context, and support exact conversation/Watch approval confirmations with explicit allow/reject labels.
|
|
13
|
+
- Adapt DSH `0.2.0-rc.2` and separately reviewed `0.2.1-alpha.2` package contracts: coherent Host/Cordis peers, AKK-specific message source typing, and current schema/Skill validation. DSH `latest` remains a release candidate, not a stable release.
|
|
14
|
+
- Preserve exact live controller ownership, callback deduplication and conservative recovery: an accepted callback is not a model-consumption or external-chat-delivery guarantee; old routes do not migrate automatically to a restarted Host.
|
|
15
|
+
|
|
16
|
+
See [connector compatibility and validation](docs/pi-dsh-compatibility.md) for the version matrix and evidence boundaries.
|
|
17
|
+
|
|
18
|
+
## 0.14.7 - 2026-10-14
|
|
19
|
+
|
|
20
|
+
- Enable explicit command and file approvals on macOS Codex Desktop `26.1007.30912` / build `20156`: allow once or reject from the controller, through the original Desktop conversation.
|
|
21
|
+
- Advertise approvals independently from broader native controls across List, Status, Watch and interaction notifications. Question answers, model/permission changes and cancellation remain unavailable on this build; the reviewed build `13536` retains its existing controls.
|
|
22
|
+
- Preserve exact owner, task and pending-request checks, one-dispatch response records and effect verification. An IPC acknowledgement alone does not confirm approval; consumed or uncertain responses are not blindly replayed.
|
|
23
|
+
|
|
24
|
+
### Validation boundaries
|
|
25
|
+
|
|
26
|
+
- A dedicated Desktop conversation verified real semantic Send/Status/Approve for command allow/reject and file allow/reject, including successful execution or file changes after approval and absent side effects after rejection. Local attention/completion callbacks were accepted once each; no external chat-delivery claim is made.
|
|
27
|
+
- This release adds no persistent authorization rules or full-access mode changes.
|
|
28
|
+
|
|
3
29
|
## 0.14.6 - 2026-10-13
|
|
4
30
|
|
|
5
31
|
- Present CLI and Desktop conversations together, with Codex/Claude Code as the agent type. Keep transport details in diagnostics instead of showing backend and terminal connections as separate user-facing categories.
|
package/README.md
CHANGED
|
@@ -74,24 +74,23 @@ That is the terminal first-task flow. For terminal setup and multiple panes, see
|
|
|
74
74
|
|
|
75
75
|
## Install for Pi
|
|
76
76
|
|
|
77
|
-
Pi can be the controller Host without OpenClaw. The
|
|
78
|
-
|
|
79
|
-
|
|
77
|
+
Pi can be the controller Host without OpenClaw. The connector supports Pi `1.2.0`
|
|
78
|
+
and retains `0.84.4` compatibility. It includes AKK `0.14.7`, with direct CLI and
|
|
79
|
+
Desktop capabilities governed by the same target-specific boundaries above.
|
|
80
80
|
|
|
81
81
|
```bash
|
|
82
|
-
npm install -g @earendil-works/pi-coding-agent@
|
|
82
|
+
npm install -g @earendil-works/pi-coding-agent@1.2.0
|
|
83
83
|
pi install npm:@scotthuang/agent-knock-knock-pi@next
|
|
84
84
|
pi
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
-
Pi should show `AKK ready`. With
|
|
87
|
+
Pi should show `AKK ready`. With a supported coding-agent conversation open, enter `/akk list`. The connector provides `/akk`, the complete capability-handshake-verified semantic tool catalog, the bundled `agent-knock-knock` skill, callbacks to the initiating Pi session, and native approval dialogs. See the [Pi connector guide](connectors/pi/README.md).
|
|
88
88
|
|
|
89
89
|
## Install for DeepSeek Harness
|
|
90
90
|
|
|
91
|
-
The connector
|
|
92
|
-
`0.
|
|
93
|
-
|
|
94
|
-
This connector currently depends on AKK `0.13.3`; its supported features are documented separately from the OpenClaw plugin's 0.14 direct CLI and Desktop capabilities.
|
|
91
|
+
The connector targets DeepSeek Harness Web `0.2.0-rc.2` (upstream `latest`,
|
|
92
|
+
**still a release candidate**). It includes AKK `0.14.7`. See the connector guide
|
|
93
|
+
for the separate alpha and older-version validation boundaries.
|
|
95
94
|
|
|
96
95
|
```bash
|
|
97
96
|
dsh plugin --profile web add @scotthuang/agent-knock-knock-deepseek-harness@next
|
|
@@ -102,9 +101,9 @@ Open a Web conversation and enter `/akk list`. The connector gives every convers
|
|
|
102
101
|
|
|
103
102
|
## See It in Action
|
|
104
103
|
|
|
105
|
-
|
|
104
|
+
https://github.com/user-attachments/assets/cc20a609-7907-4996-977e-0b88d8ba6388
|
|
106
105
|
|
|
107
|
-
*
|
|
106
|
+
*Send a task from your phone. AKK creates a Codex Desktop conversation, handles approvals with your permission, and brings the result back to chat.*
|
|
108
107
|
|
|
109
108
|
## What AKK Gives You
|
|
110
109
|
|
|
@@ -200,16 +199,16 @@ can use a supported terminal route. Claude Code direct control is available unde
|
|
|
200
199
|
| Component | Supported boundary |
|
|
201
200
|
| --- | --- |
|
|
202
201
|
| Terminal hosts | tmux; local Herdr `0.8.0` protocol `19` |
|
|
203
|
-
| Codex Desktop | macOS app `26.1002.52244
|
|
202
|
+
| Codex Desktop | macOS, exact app/build profiles: `26.1002.52244` / `13536` supports the reviewed full controls; `26.1007.30912` / `20156` supports creation and Send/Status/Watch. AKK 0.14.7 adds command/file approvals (allow once or reject) on `20156`, and 0.14.8 adds blocking and asynchronous answers; settings and cancellation remain unavailable there. See the [operation matrix](docs/codex-desktop-compatibility.md#version-and-platform-evidence). |
|
|
204
203
|
| Codex CLI shared backend | Live-tested on macOS: CLI `0.162.1` + backend `0.162.1`, and previously `0.160.0` + `0.162.0`. Requires a loaded main CLI conversation and compatible live protocol. These are tested combinations, **not a numeric minimum**. |
|
|
205
204
|
| Claude Code direct connection | macOS, live-tested `2.1.296`, compatible native peer protocol `1`, and Python 3 available to AKK. Basic task sending, progress and completion observation; unsupported controls require the original terminal. See the [direct guide](docs/claude-cli-direct.md). |
|
|
206
205
|
| Terminal coding agents | Reviewed Codex profiles include `0.160.0` and `0.162.1`; Claude Code `2.1.285` was tested on macOS. Unknown versions may expose limited capabilities; native controls depend on the reviewed profile and current UI. |
|
|
207
206
|
| OpenClaw | `2026.6.5`+; plugin API and Gateway `2026.5.12`+ |
|
|
208
|
-
| Pi connector | Pi `0.84.4`; connector
|
|
209
|
-
| DeepSeek Harness connector | `0.
|
|
207
|
+
| Pi connector | Pi `1.2.0` and `0.84.4`; connector `0.1.0-poc.3` (`next`), pinned AKK `0.14.7` |
|
|
208
|
+
| DeepSeek Harness connector | Web `0.2.0-rc.2` (RC); connector `0.1.0-rc.5` (`next`), pinned AKK `0.14.7`. See its guide for alpha and legacy coverage. |
|
|
210
209
|
| Runtime | Node.js `22.19.0`+ on macOS or Linux |
|
|
211
210
|
|
|
212
|
-
The adjacent OpenClaw boundary `2026.5.10-beta.2` is intentionally unsupported. Herdr and Desktop controls depend on reviewed private protocol versions. Desktop catalog presence alone does not prove the conversation is open or controllable. See each connector guide and the Desktop guide for tested boundaries and limitations.
|
|
211
|
+
The adjacent OpenClaw boundary `2026.5.10-beta.2` is intentionally unsupported. Herdr and Desktop controls depend on reviewed private protocol versions. Desktop catalog presence alone does not prove the conversation is open or controllable. See each connector guide, the [Pi/DSH validation matrix](docs/pi-dsh-compatibility.md), and the Desktop guide for tested boundaries and limitations.
|
|
213
212
|
|
|
214
213
|
Codex CLI model changes and cancellation still require an eligible terminal.
|
|
215
214
|
New/clear/resume operations for paginated Codex CLI `0.158+`, and creating or
|
|
@@ -13,26 +13,39 @@ tests, lockfile, bundle manifest, and connector-specific release tag.
|
|
|
13
13
|
|
|
14
14
|
## Compatibility
|
|
15
15
|
|
|
16
|
-
This connector pins AKK **0.
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
`0.1
|
|
23
|
-
|
|
24
|
-
`
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
16
|
+
This connector pins AKK **0.14.7** in its package and lockfile. It exposes
|
|
17
|
+
that runtime's 26 semantic tools, including Codex CLI backend and Desktop
|
|
18
|
+
operations when the selected conversation advertises them. A newer root
|
|
19
|
+
checkout does not silently replace this published dependency.
|
|
20
|
+
|
|
21
|
+
The development baseline is DeepSeek Harness **0.2.0-rc.2** (the upstream
|
|
22
|
+
`latest` channel). **0.2.1-alpha.2** is separately reviewed preview support.
|
|
23
|
+
Neither is a stable release. The older reviewed Hosts `0.1.1-rc.2`,
|
|
24
|
+
`0.1.2-alpha.1`, and `0.1.5-rc.2` remain accepted. Use a resident POSIX Web Host
|
|
25
|
+
and Node.js `>=22.19.0`.
|
|
26
|
+
|
|
27
|
+
Activation locates the real `@deepseek-ai/dsh` launcher and requires the
|
|
28
|
+
launcher, `dsh-base`, `dsh-agent`, `dsh-commands`, `dsh-llm`, `dsh-skill`, and
|
|
29
|
+
`dsh-tools` to form one coherent reviewed version. Unsupported, missing, and
|
|
30
|
+
split runtime sets fail before mounting. The Host's own plugin peer preflight
|
|
31
|
+
must also pass without a version-risk exemption. Message and schema helpers
|
|
32
|
+
come from that verified Host tree, not checkout development dependencies.
|
|
33
|
+
|
|
34
|
+
Callbacks use AKK's producer-specific message source and the same live Agent's
|
|
35
|
+
Inbox. Idle Agents receive a waking `followup`; running Agents receive
|
|
36
|
+
`inject` context at a later step. Acceptance means Inbox admission, not proof
|
|
37
|
+
that a model has consumed it or a user has seen it. Host exit or plugin unload
|
|
38
|
+
invalidates that Host instance's routes; callbacks do not migrate to a new
|
|
39
|
+
Agent merely because it has the same session ID.
|
|
40
|
+
|
|
41
|
+
Headless/one-shot Harness processes, Host-exit callback continuity, Windows
|
|
42
|
+
named pipes, and DSH Desktop's embedded launcher are outside this connector's
|
|
43
|
+
validated scope. Existing Codex CLI backend and Desktop connections need no
|
|
44
|
+
terminal container when their advertised capability is available. Claude Code
|
|
45
|
+
and terminal-specific operations retain their documented transport conditions;
|
|
46
|
+
see [core compatibility](../../README.md#compatibility) and the
|
|
47
|
+
[Pi/DSH validation matrix](../../docs/pi-dsh-compatibility.md). This connector does
|
|
48
|
+
not launch replacement coding processes or create terminal panes.
|
|
36
49
|
|
|
37
50
|
## Five-minute quick start
|
|
38
51
|
|
|
@@ -72,34 +85,38 @@ tool invocation.
|
|
|
72
85
|
|
|
73
86
|
### 3. Verify discovery in a Web conversation
|
|
74
87
|
|
|
75
|
-
|
|
76
|
-
|
|
88
|
+
Open a supported Codex CLI or Desktop conversation, or a supported coding
|
|
89
|
+
agent in tmux/Herdr for the terminal workflow, then enter:
|
|
77
90
|
|
|
78
91
|
```text
|
|
79
92
|
/akk list
|
|
80
93
|
```
|
|
81
94
|
|
|
82
|
-
The compact result contains
|
|
95
|
+
The compact result contains the visible CLI/Desktop conversations, current action names, and only
|
|
83
96
|
the dynamic inputs needed for those actions. Static action meanings and safety
|
|
84
97
|
rules come from the automatically registered `agent-knock-knock` skill. AKK
|
|
85
98
|
never asks callers to invent identifiers: copy only the complete
|
|
86
|
-
`terminal_id`, `session_id`, `turn_id`, `watch_id`, or `native_thread_id`
|
|
99
|
+
`conversation_id`, `terminal_id`, `session_id`, `turn_id`, `watch_id`, or `native_thread_id`
|
|
87
100
|
returned by AKK.
|
|
88
101
|
|
|
89
102
|
### 4. Send one task and receive its callback
|
|
90
103
|
|
|
91
|
-
|
|
104
|
+
For the terminal shortcut, if exactly one matching terminal is send-ready,
|
|
105
|
+
this is a complete smoke test:
|
|
92
106
|
|
|
93
107
|
```text
|
|
94
108
|
/akk codex: Inspect package.json and report the package name. Do not modify files.
|
|
95
109
|
```
|
|
96
110
|
|
|
97
|
-
Use `claude:` instead when testing Claude Code.
|
|
98
|
-
run `/akk list`
|
|
99
|
-
|
|
100
|
-
|
|
111
|
+
Use `claude:` instead when testing Claude Code. For backend/Desktop routes or multiple matches,
|
|
112
|
+
run `/akk list` and let the Agent call `agent_knock_knock_send` with the exact
|
|
113
|
+
identifier in the selected row's advertised action. AKK chooses the available
|
|
114
|
+
transport; do not reconstruct IDs from project paths.
|
|
101
115
|
|
|
102
|
-
|
|
116
|
+
A backend/Desktop Send normally returns its exact task Watch. Terminal managed
|
|
117
|
+
Send returns a `turn_id`; preserve the actual receipt instead of assuming one
|
|
118
|
+
record type. An existing automatic Watch does not need a second subscription.
|
|
119
|
+
When the coding agent finishes,
|
|
103
120
|
asks a question, becomes blocked, or requests approval, AKK sends a callback to
|
|
104
121
|
the same live DeepSeek Harness Agent. A running Agent receives the update via
|
|
105
122
|
`inject()`; an idle Agent receives it via `followup()`.
|
|
@@ -133,24 +150,28 @@ behavior through the complete capability-handshake-verified tool catalog:
|
|
|
133
150
|
|
|
134
151
|
| Tool | Purpose |
|
|
135
152
|
| --- | --- |
|
|
136
|
-
| `agent_knock_knock_list` | List
|
|
137
|
-
| `agent_knock_knock_watch` |
|
|
153
|
+
| `agent_knock_knock_list` | List CLI/Desktop conversations, monitoring records, and each row's currently available actions. |
|
|
154
|
+
| `agent_knock_knock_watch` | Observe one advertised conversation or terminal, preserving its exact task anchor when available. |
|
|
138
155
|
| `agent_knock_knock_unwatch` | Stop one exact `watch_id` without sending terminal input. |
|
|
139
156
|
| `agent_knock_knock_list_resumable_threads` | List structurally verified native threads for one terminal. |
|
|
140
157
|
| `agent_knock_knock_native_inspect` | Run only the adapter-owned native `status` inspection advertised for an idle terminal. |
|
|
141
158
|
| `agent_knock_knock_model_options` | Read one exact idle terminal's native model and reasoning catalog and create a single-use typed offer. |
|
|
142
159
|
| `agent_knock_knock_repair_model_control` | Dismiss only an exactly recognized stale model-control surface; it never selects a model or submits work. |
|
|
160
|
+
| `agent_knock_knock_permission_options` | Read currently available permission choices for one exact target. |
|
|
161
|
+
| `agent_knock_knock_set_permissions` | Apply one currently advertised permission choice. |
|
|
162
|
+
| `agent_knock_knock_desktop_create` | Create a Codex Desktop conversation only when the creation capability is advertised. |
|
|
163
|
+
| `agent_knock_knock_recover` | Perform an advertised recovery action on its original observation or callback record. |
|
|
143
164
|
| `agent_knock_knock_set_model` | Consume the current catalog offer to choose one advertised semantic model and reasoning effort. |
|
|
144
165
|
| `agent_knock_knock_identify_foreground` | Run a bounded diagnostic native identity probe without creating durable authority. |
|
|
145
166
|
| `agent_knock_knock_identify_and_send` | Keep one terminal lock across identity observation and one explicit Send when foreground identity is ambiguous. |
|
|
146
167
|
| `agent_knock_knock_new_thread` | Start and verify a clean native coding-agent thread after explicit user intent. |
|
|
147
168
|
| `agent_knock_knock_reconcile_binding` | Detach one proven stale conflicting binding after explicit confirmation; it neither sends work nor adopts a thread. |
|
|
148
169
|
| `agent_knock_knock_resume_thread` | Resume one complete `native_thread_id` from a fresh resumable-thread listing. |
|
|
149
|
-
| `agent_knock_knock_status` |
|
|
170
|
+
| `agent_knock_knock_status` | Read one conversation, Turn, or Watch; backend progress is bounded and belongs to the exact native task. |
|
|
150
171
|
| `agent_knock_knock_send` | Send a new task through the exact action advertised by `list`. |
|
|
151
172
|
| `agent_knock_knock_respond` | Answer a question or unblock one existing managed Turn; it does not create a new Turn. |
|
|
152
173
|
| `agent_knock_knock_respond_interaction` | Answer the current typed native questionnaire step for one exact response-capable Turn or Watch. |
|
|
153
|
-
| `agent_knock_knock_approve` |
|
|
174
|
+
| `agent_knock_knock_approve` | Apply the advertised allow-once or reject decision to the current exact permission request, after human review. |
|
|
154
175
|
| `agent_knock_knock_renew` | Renew monitoring for a still-live stalled Turn without typing into the terminal. |
|
|
155
176
|
| `agent_knock_knock_retry_callback` | Retry one persisted failed callback with its original message and delivery identity. |
|
|
156
177
|
| `agent_knock_knock_cancel` | Interrupt one exact active Turn while leaving the shared pane open. |
|
|
@@ -158,15 +179,15 @@ behavior through the complete capability-handshake-verified tool catalog:
|
|
|
158
179
|
|
|
159
180
|
The ordinary closed loop is:
|
|
160
181
|
|
|
161
|
-
1. Call `list` and select one exact terminal row.
|
|
182
|
+
1. Call `list` and select one exact conversation or terminal row.
|
|
162
183
|
2. Use only that row's advertised `send` action and semantic identifier.
|
|
163
|
-
3. Retain the returned `turn_id`
|
|
164
|
-
automatic physical-Send fallback. Completion or attention callbacks return
|
|
184
|
+
3. Retain the returned `turn_id` or automatic `watch_id`. Completion or attention callbacks return
|
|
165
185
|
to the originating DeepSeek Harness Agent.
|
|
166
186
|
4. For a managed question or blocked callback, use `respond` with its `turn_id`.
|
|
167
187
|
For a permission request, follow the approval procedure below.
|
|
168
|
-
5. Use `status` when a callback is late or uncertain.
|
|
169
|
-
|
|
188
|
+
5. Use `status` when a callback is late or uncertain. Add an explicit `watch`
|
|
189
|
+
only when the user requests monitoring of ongoing work that has no suitable
|
|
190
|
+
active monitor. A Send-created Watch already owns its completion subscription.
|
|
170
191
|
|
|
171
192
|
Do not cache `available_actions` or private terminal state. Refresh `list` or
|
|
172
193
|
`status` before a mutation, and never blindly retry an uncertain Send,
|
|
@@ -180,16 +201,18 @@ dialog around that tool. Explicit human confirmation is therefore a required
|
|
|
180
201
|
calling contract for the Agent and user, not a UI gate enforced by this
|
|
181
202
|
connector. With the default configuration, the manual flow is:
|
|
182
203
|
|
|
183
|
-
1. Receive the approval callback, then
|
|
184
|
-
`
|
|
185
|
-
terminal screen.
|
|
204
|
+
1. Receive the approval callback, then refresh Status using its exact
|
|
205
|
+
`watch_id`, `conversation_id`, or managed `turn_id`. Read the current native
|
|
206
|
+
request; terminal routes may also return a screen excerpt.
|
|
186
207
|
2. Present the current request, tool name, and relevant arguments to the user.
|
|
187
|
-
3. Obtain an explicit
|
|
188
|
-
4.
|
|
189
|
-
`
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
208
|
+
3. Obtain an explicit allow-once or reject decision in the same Web conversation.
|
|
209
|
+
4. Copy the currently advertised `agent_knock_knock_approve` action, keeping its
|
|
210
|
+
exact target and `interaction_id` where supplied. Pass `decision: "approve_once"`
|
|
211
|
+
or `decision: "reject"` only when that target advertises the corresponding
|
|
212
|
+
decision. The legacy `/akk approve <turn-selector>` shortcut is for managed
|
|
213
|
+
Turn approval, not a replacement for direct interaction identifiers.
|
|
214
|
+
5. If the operation was interrupted or returned an uncertain result, refresh
|
|
215
|
+
Status and inspect the original conversation. Never retry it blindly.
|
|
193
216
|
|
|
194
217
|
AKK's deterministic `pluginConfig.autoApprove` policy remains disabled by
|
|
195
218
|
default. If an administrator deliberately enables it, only the exact configured
|
|
@@ -221,12 +244,15 @@ to the exact DeepSeek Harness Agent's inbox/session log. It does not prove that
|
|
|
221
244
|
the model consumed the message or that asynchronous persistence reached stable
|
|
222
245
|
storage. `status` and Terminal Watch are the recovery path.
|
|
223
246
|
|
|
224
|
-
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
-
|
|
229
|
-
|
|
247
|
+
- Inspect the original `turn_id` or `watch_id` with `status`. If that exact
|
|
248
|
+
record advertises `retry_callback`, a requested retry reuses the persisted
|
|
249
|
+
callback message and delivery identity. An uncertain result is not evidence
|
|
250
|
+
of non-delivery; do not replay it without a supported recovery action.
|
|
251
|
+
- A completed Watch still provides its exact result even when the original
|
|
252
|
+
callback route is gone. Read that result; creating another Watch does not
|
|
253
|
+
recover or replay the historical notification. For work that is still
|
|
254
|
+
running, a fresh observation from a current `list` row requires the user's
|
|
255
|
+
monitoring request. Do not transfer an old record's callback ownership.
|
|
230
256
|
- A Host restart creates a new private Profile revision. Existing watches retain
|
|
231
257
|
their original route, so callbacks owned by the old Host incarnation fail
|
|
232
258
|
closed instead of being redirected to a new Agent. There is deliberately no
|
|
@@ -292,11 +318,11 @@ The optional bundle patch mounts only the Host plugin:
|
|
|
292
318
|
| `@next` cannot be resolved | Run `npm view @scotthuang/agent-knock-knock-deepseek-harness dist-tags --json`. Use an exact published version if your registry has no `next` tag, or use the local-development installation below. |
|
|
293
319
|
| `/akk` and AKK tools are missing | Verify installation with `dsh plugin --profile web why @scotthuang/agent-knock-knock-deepseek-harness`, then fully restart the Web Host. Existing Host processes do not gain a newly added bundle. |
|
|
294
320
|
| Activation reports an unsupported or split Harness | Check `dsh --version` and run `dsh plugin --profile web why @deepseek-ai/dsh-base @deepseek-ai/dsh-agent @deepseek-ai/dsh-commands @deepseek-ai/dsh-llm @deepseek-ai/dsh-tools`. Update the whole Host coherently; do not repair it with a standalone connector npm install. |
|
|
295
|
-
| `/akk list` finds no
|
|
321
|
+
| `/akk list` finds no live conversations | Check the selected target's direct-connection or terminal discovery diagnostics and core compatibility. A supported Codex CLI backend/Desktop connection does not require tmux/Herdr; terminal-only control needs an eligible live pane. Do not infer missing identity from cwd alone. |
|
|
296
322
|
| A mutation is absent or rejected | Refresh `/akk list` or structured `list` and use only the action currently advertised for that exact row. Resolve a current approval first when it blocks input. Do not reuse stale IDs or action payloads. |
|
|
297
|
-
| The callback never appears |
|
|
323
|
+
| The callback never appears | Query the original Turn/Watch Status and separate task result, callback admission, and user visibility. Use only a retry/recovery action advertised for that record and requested by the user. A new Host does not inherit old callback ownership. |
|
|
298
324
|
| Callback delivery reports IPC unavailable or timeout | Keep the originating Web Host alive and inspect whether it was restarted or disposed. The socket is Host-process-private and has an eight-second callback boundary; there is no cross-process fallback route. |
|
|
299
|
-
| A Watch completed but its callback was missed |
|
|
325
|
+
| A Watch completed but its callback was missed | Read the original `watch_id` Status for its exact task result and callback disposition. Do not create a replacement Watch for completed work or treat it as historical-notification recovery. |
|
|
300
326
|
| A tool call fails schema validation | Pass only the documented fields and complete semantic IDs returned by AKK. DeepSeek's discovery schema is a projection; the connector always enforces the full original AKK schema before execution. |
|
|
301
327
|
| Windows, headless, or one-shot use fails | These surfaces are outside this prerelease's supported scope. Use the resident POSIX Web Host. |
|
|
302
328
|
|
|
@@ -313,7 +339,7 @@ Update to the registry's current prerelease, or pin an exact reviewed version:
|
|
|
313
339
|
|
|
314
340
|
```sh
|
|
315
341
|
dsh plugin --profile web add @scotthuang/agent-knock-knock-deepseek-harness@next
|
|
316
|
-
dsh plugin --profile web add @scotthuang/agent-knock-knock-deepseek-harness@0.1.0-rc.
|
|
342
|
+
dsh plugin --profile web add @scotthuang/agent-knock-knock-deepseek-harness@0.1.0-rc.5
|
|
317
343
|
```
|
|
318
344
|
|
|
319
345
|
Restart the Web Host after either operation. The connector pins the exact AKK
|
|
@@ -341,14 +367,14 @@ dsh plugin --profile web add "file:$(pwd -P)/connectors/deepseek-harness"
|
|
|
341
367
|
```
|
|
342
368
|
|
|
343
369
|
Restart `dsh web` after installation. The child package currently installs and
|
|
344
|
-
tests against its pinned published AKK runtime `0.
|
|
370
|
+
tests against its pinned published AKK runtime `0.14.7`; building the current
|
|
345
371
|
repository root does not silently replace that dependency. Testing connector
|
|
346
372
|
changes against another AKK runtime requires an explicit dependency change and
|
|
347
373
|
compatibility review rather than an implicit local link.
|
|
348
374
|
|
|
349
375
|
## Tests and release status
|
|
350
376
|
|
|
351
|
-
The package manifest is currently `0.1.0-rc.
|
|
377
|
+
The package manifest is currently `0.1.0-rc.5`, so this remains a prerelease and
|
|
352
378
|
is published under `next`; `latest` remains on the earlier `0.1.0-rc.1` tag.
|
|
353
379
|
Registry state can change independently of this source file, so the `npm view`
|
|
354
380
|
commands above remain authoritative.
|
|
@@ -364,11 +390,13 @@ npm run pack:check
|
|
|
364
390
|
|
|
365
391
|
These commands typecheck the connector, run its fast wiring/profile/IPC/schema
|
|
366
392
|
tests, and inspect the package tarball. They do not publish anything. The
|
|
367
|
-
`0.1.0-rc.
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
`0.1.
|
|
371
|
-
|
|
393
|
+
`0.1.0-rc.5` lockfile uses the published DeepSeek Harness `0.2.0-rc.2`
|
|
394
|
+
SDK packages. The same source is checked separately against preview
|
|
395
|
+
`0.2.1-alpha.2` and retained `0.1.5-rc.2`. The older `0.1.1-rc.2` and
|
|
396
|
+
`0.1.2-alpha.1` compatibility policy is retained; it is not a new full Web
|
|
397
|
+
acceptance claim for those releases. Deterministic Host-loop checks use the
|
|
398
|
+
real upstream registries and Inbox with a scripted model provider; they are
|
|
399
|
+
not evidence of a live paid model or external-channel delivery.
|
|
372
400
|
|
|
373
401
|
## Release safety
|
|
374
402
|
|
|
@@ -398,7 +426,7 @@ gate to both connectors. Their package versions are validated independently.
|
|
|
398
426
|
Publishing additionally requires both explicit flags:
|
|
399
427
|
|
|
400
428
|
```sh
|
|
401
|
-
npm run release:check -- --publish --confirm-version 0.1.0-rc.
|
|
429
|
+
npm run release:check -- --publish --confirm-version 0.1.0-rc.5
|
|
402
430
|
```
|
|
403
431
|
|
|
404
432
|
Prereleases use npm tag `next`; stable versions use `latest`. Repository tags
|