openclaw-code-agent 4.2.1 → 4.2.3

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.
@@ -2,7 +2,7 @@
2
2
  "id": "openclaw-code-agent",
3
3
  "name": "OpenClaw Code Agent",
4
4
  "description": "Multi-session coding-agent orchestration from OpenClaw chat",
5
- "version": "4.2.1",
5
+ "version": "4.2.3",
6
6
  "contracts": {
7
7
  "tools": [
8
8
  "agent_launch",
@@ -22,6 +22,26 @@
22
22
  "goal_stop"
23
23
  ]
24
24
  },
25
+ "configContracts": {
26
+ "dangerousFlags": [
27
+ {
28
+ "path": "permissionMode",
29
+ "equals": "bypassPermissions"
30
+ },
31
+ {
32
+ "path": "planApproval",
33
+ "equals": "approve"
34
+ },
35
+ {
36
+ "path": "defaultWorktreeStrategy",
37
+ "equals": "auto-merge"
38
+ },
39
+ {
40
+ "path": "defaultWorktreeStrategy",
41
+ "equals": "auto-pr"
42
+ }
43
+ ]
44
+ },
25
45
  "activation": {
26
46
  "onStartup": true,
27
47
  "onCommands": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openclaw-code-agent",
3
- "version": "4.2.1",
3
+ "version": "4.2.3",
4
4
  "type": "module",
5
5
  "packageManager": "pnpm@10.30.0",
6
6
  "main": "dist/index.js",
@@ -24,13 +24,18 @@
24
24
  "extensions": [
25
25
  "./dist/index.js"
26
26
  ],
27
+ "install": {
28
+ "npmSpec": "openclaw-code-agent",
29
+ "defaultChoice": "npm",
30
+ "minHostVersion": ">=2026.4.21"
31
+ },
27
32
  "compat": {
28
33
  "pluginApi": ">=2026.4.21",
29
34
  "minGatewayVersion": "2026.4.21"
30
35
  },
31
36
  "build": {
32
- "openclawVersion": "2026.5.6",
33
- "pluginSdkVersion": "2026.5.6"
37
+ "openclawVersion": "2026.5.7",
38
+ "pluginSdkVersion": "2026.5.7"
34
39
  }
35
40
  },
36
41
  "files": [
@@ -48,7 +53,7 @@
48
53
  "@types/node": "^25.5.2",
49
54
  "esbuild": "^0.28.0",
50
55
  "nanoid": "^5.1.7",
51
- "openclaw": "2026.5.6",
56
+ "openclaw": "2026.5.7",
52
57
  "tsx": "^4.21.0",
53
58
  "typescript": "^6.0.2"
54
59
  },
@@ -8,9 +8,10 @@ metadata:
8
8
  bins:
9
9
  - openclaw
10
10
  install:
11
- - kind: node
11
+ - id: npm
12
+ kind: node
12
13
  package: openclaw-code-agent
13
- bins: []
14
+ label: Install OpenClaw Code Agent (npm)
14
15
  ---
15
16
 
16
17
  # Code Agent Orchestration
@@ -67,17 +68,17 @@ agent_worktree_status()
67
68
  agent_worktree_status(session: "fix-auth")
68
69
  ```
69
70
 
70
- Treat that tool's lifecycle, derived state, cleanup disposition, and retained reasons as authoritative. Do not infer cleanup safety from a transcript summary or from branch names alone.
71
+ For worktree cleanup and follow-through, use that tool's lifecycle, derived state, cleanup disposition, and retained reasons as the plugin state source. Avoid deciding cleanup safety from transcript summaries or branch names alone.
71
72
 
72
- Treat these wake fields as authoritative state when present:
73
+ When wake payloads include these fields, use them as the plugin's recorded approval state:
73
74
 
74
75
  - `requestedPermissionMode`
75
76
  - `effectivePermissionMode` / `currentPermissionMode`
76
77
  - `approvalExecutionState`
77
78
 
78
- Use those deterministic fields instead of inferring behavior from transcript fragments.
79
+ Use those deterministic fields for approval follow-through before consulting transcript fragments.
79
80
 
80
- When OpenClaw exposes managed TaskFlow state for a session, treat it as a high-level progress mirror of the plugin session. The plugin session state, `agent_sessions`, `agent_output`, and `agent_worktree_status` remain the authoritative operational surfaces for follow-up decisions.
81
+ When OpenClaw exposes managed TaskFlow state for a session, use it as a high-level progress mirror of the plugin session. For operational follow-up, check `agent_sessions`, `agent_output`, and `agent_worktree_status`.
81
82
 
82
83
  Approval/execution meanings:
83
84
 
@@ -90,9 +91,11 @@ Completion ownership:
90
91
 
91
92
  - The plugin sends the canonical completion notification.
92
93
  - The plugin owns the canonical completion status line; the orchestrator owns any additional plain-text follow-up.
94
+ - Completion wakes may arrive in a different chat than the session's original user route. Treat the wake's `originRoute` block as the source of truth for human follow-ups.
95
+ - If `originRoute` differs from the current chat, do not use a normal final assistant reply for the user-facing follow-up. Use a routed send path that preserves `provider`, `target`, and `threadId` instead.
93
96
  - After a coding-agent session completes, the orchestrator should usually add at least a short human-useful summary of what changed, what was done, or the concrete outcome.
94
97
  - That expectation applies to ordinary terminal/manual completions, manual no-change completions, and delegated worktree completions alike.
95
- - Treat the plugin's canonical `✅` as the status signal and your follow-up as the factual outcome summary that should usually come right after it.
98
+ - Use the plugin's canonical `✅` line as the status signal and your follow-up as the factual outcome summary that should usually come right after it.
96
99
  - That summary can be brief; one sentence is often enough.
97
100
  - Extra synthesis, risk framing, and next-step guidance are optional. Add them when useful; do not force them every time.
98
101
  - Do not generate your own heuristic completion summary from transcript tail lines. Base any summary on reliable result data such as `agent_output(..., full=true)`, diff context, or deterministic tool state.
@@ -151,7 +154,7 @@ Use `permission_mode: "plan"` whenever the user wants a real planning checkpoint
151
154
 
152
155
  ## Worktree Decisions
153
156
 
154
- Treat worktrees as temporary task sandboxes, not as generic branch inventory.
157
+ Use worktrees as temporary task sandboxes, not as generic branch inventory.
155
158
 
156
159
  Lifecycle meanings:
157
160
 
@@ -162,7 +165,7 @@ Lifecycle meanings:
162
165
  - `dismissed`: sandbox intentionally discarded
163
166
  - `no_change`: no committed delta
164
167
 
165
- If `agent_worktree_status` reports `released`, treat that sandbox as already landed. Do not narrate it as still unmerged just because the branch appears ahead.
168
+ If `agent_worktree_status` reports `released`, the sandbox content is already landed. Do not narrate it as "still unmerged" just because the branch appears ahead.
166
169
 
167
170
  ### `off`
168
171
 
@@ -191,7 +194,7 @@ If `agent_worktree_status` reports `released`, treat that sandbox as already lan
191
194
  - Use `agent_worktree_cleanup(mode: "preview_safe")` to review what **Clean all safe** would remove.
192
195
  - Use `agent_worktree_cleanup(mode: "clean_safe")` only when the user asked to clean up safe sandboxes.
193
196
  - Use `agent_worktree_cleanup(mode: "preview_all")` when you need both safe candidates and retained reasons.
194
- - Respect retained reasons from `agent_worktree_status` / `agent_worktree_cleanup`; they are the lifecycle model, not advisory prose.
197
+ - Use retained reasons from `agent_worktree_status` / `agent_worktree_cleanup` as lifecycle data, not advisory prose.
195
198
 
196
199
  ### Never
197
200