openclaw-code-agent 2.3.1 → 3.1.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/README.md +80 -359
- package/dist/index.js +125 -63
- package/openclaw.plugin.json +25 -34
- package/package.json +31 -11
- package/skills/code-agent-orchestration/SKILL.md +147 -299
- package/workflows/plan-approval.lobster +0 -15
package/openclaw.plugin.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "openclaw-code-agent",
|
|
3
3
|
"name": "OpenClaw Code Agent",
|
|
4
|
-
"description": "
|
|
5
|
-
"version": "
|
|
4
|
+
"description": "Multi-session coding-agent orchestration from OpenClaw chat",
|
|
5
|
+
"version": "3.1.0",
|
|
6
6
|
"configSchema": {
|
|
7
7
|
"type": "object",
|
|
8
8
|
"additionalProperties": false,
|
|
@@ -20,8 +20,7 @@
|
|
|
20
20
|
"allowedModels": [
|
|
21
21
|
"gpt-5.4"
|
|
22
22
|
],
|
|
23
|
-
"reasoningEffort": "medium"
|
|
24
|
-
"approvalPolicy": "on-request"
|
|
23
|
+
"reasoningEffort": "medium"
|
|
25
24
|
},
|
|
26
25
|
"claude-code": {
|
|
27
26
|
"defaultModel": "sonnet",
|
|
@@ -54,14 +53,6 @@
|
|
|
54
53
|
"high"
|
|
55
54
|
],
|
|
56
55
|
"description": "Harness-specific reasoning effort. Currently used by Codex."
|
|
57
|
-
},
|
|
58
|
-
"approvalPolicy": {
|
|
59
|
-
"type": "string",
|
|
60
|
-
"enum": [
|
|
61
|
-
"never",
|
|
62
|
-
"on-request"
|
|
63
|
-
],
|
|
64
|
-
"description": "Harness-specific approval policy. Currently used by Codex."
|
|
65
56
|
}
|
|
66
57
|
}
|
|
67
58
|
}
|
|
@@ -104,7 +95,7 @@
|
|
|
104
95
|
},
|
|
105
96
|
"fallbackChannel": {
|
|
106
97
|
"type": "string",
|
|
107
|
-
"description": "Fallback notification channel
|
|
98
|
+
"description": "Fallback notification channel. Prefer a fully routable value such as 'telegram|123456789' or 'telegram|my-bot|123456789'; a bare provider like 'telegram' is only a weak fallback."
|
|
108
99
|
},
|
|
109
100
|
"permissionMode": {
|
|
110
101
|
"type": "string",
|
|
@@ -112,19 +103,9 @@
|
|
|
112
103
|
"enum": [
|
|
113
104
|
"default",
|
|
114
105
|
"plan",
|
|
115
|
-
"acceptEdits",
|
|
116
106
|
"bypassPermissions"
|
|
117
107
|
],
|
|
118
|
-
"description": "Default plugin
|
|
119
|
-
},
|
|
120
|
-
"codexApprovalPolicy": {
|
|
121
|
-
"type": "string",
|
|
122
|
-
"default": "on-request",
|
|
123
|
-
"enum": [
|
|
124
|
-
"never",
|
|
125
|
-
"on-request"
|
|
126
|
-
],
|
|
127
|
-
"description": "Codex-only SDK/CLI approval policy. Defaults to 'on-request'. Set to 'never' to keep Codex from requesting approval for privileged actions. Distinct from plugin permissionMode / plan orchestration."
|
|
108
|
+
"description": "Default plugin orchestration mode for coding-agent sessions. This controls OpenClaw plan/default/bypass behavior and is separate from the fixed Codex execution policy."
|
|
128
109
|
},
|
|
129
110
|
"agentChannels": {
|
|
130
111
|
"type": "object",
|
|
@@ -140,19 +121,29 @@
|
|
|
140
121
|
},
|
|
141
122
|
"planApproval": {
|
|
142
123
|
"type": "string",
|
|
143
|
-
"default": "
|
|
124
|
+
"default": "ask",
|
|
144
125
|
"enum": [
|
|
145
126
|
"approve",
|
|
146
127
|
"ask",
|
|
147
128
|
"delegate"
|
|
148
129
|
],
|
|
149
|
-
"description": "Plan approval behavior. '
|
|
130
|
+
"description": "Plan approval behavior. 'ask' (default): orchestrator always forwards plans to the user for approval. 'delegate': orchestrator autonomously decides whether to approve low-risk plans or escalate to the user. 'approve': orchestrator can auto-approve after verification."
|
|
150
131
|
},
|
|
151
132
|
"defaultHarness": {
|
|
152
133
|
"type": "string",
|
|
153
134
|
"default": "claude-code",
|
|
154
135
|
"description": "Default agent harness when agent_launch omits the harness parameter."
|
|
155
136
|
},
|
|
137
|
+
"defaultWorktreeStrategy": {
|
|
138
|
+
"type": "string",
|
|
139
|
+
"default": "off",
|
|
140
|
+
"enum": ["off", "manual", "ask", "delegate", "auto-merge", "auto-pr"],
|
|
141
|
+
"description": "Default worktree strategy for all new sessions when agent_launch omits worktree_strategy. 'off' (default) = no worktree. 'manual' = create worktree, no automatic action. 'ask' = push branch and notify the user with inline buttons (Merge locally / Create PR). 'delegate' = push branch and wake the orchestrator to decide autonomously. 'auto-merge' = auto-merge to base branch on completion. 'auto-pr' = auto-create or update a GitHub PR on completion."
|
|
142
|
+
},
|
|
143
|
+
"worktreeDir": {
|
|
144
|
+
"type": "string",
|
|
145
|
+
"description": "Base directory for agent worktrees. Defaults to <repoRoot>/.worktrees when unset. Overridden by OPENCLAW_WORKTREE_DIR env var."
|
|
146
|
+
},
|
|
156
147
|
"allowedModels": {
|
|
157
148
|
"type": "array",
|
|
158
149
|
"items": {
|
|
@@ -165,7 +156,7 @@
|
|
|
165
156
|
"uiHints": {
|
|
166
157
|
"fallbackChannel": {
|
|
167
158
|
"label": "Fallback notification channel",
|
|
168
|
-
"help": "Default channel used when no workspace-specific agentChannels entry matches the session workdir.",
|
|
159
|
+
"help": "Default channel used when no workspace-specific agentChannels entry matches the session workdir. Prefer a fully routable channel string; bare providers are only weak fallbacks.",
|
|
169
160
|
"placeholder": "telegram|my-bot|123456789",
|
|
170
161
|
"sensitive": true
|
|
171
162
|
},
|
|
@@ -181,7 +172,7 @@
|
|
|
181
172
|
},
|
|
182
173
|
"harnesses": {
|
|
183
174
|
"label": "Harness configuration",
|
|
184
|
-
"help": "Per-harness defaults and model restrictions. Default: {\"codex\":{\"defaultModel\":\"gpt-5.4\",\"allowedModels\":[\"gpt-5.4\"],\"reasoningEffort\":\"medium\"
|
|
175
|
+
"help": "Per-harness defaults and model restrictions. Default: {\"codex\":{\"defaultModel\":\"gpt-5.4\",\"allowedModels\":[\"gpt-5.4\"],\"reasoningEffort\":\"medium\"},\"claude-code\":{\"defaultModel\":\"sonnet\",\"allowedModels\":[\"sonnet\",\"opus\"]}}."
|
|
185
176
|
},
|
|
186
177
|
"defaultModel": {
|
|
187
178
|
"label": "Legacy default model",
|
|
@@ -203,15 +194,15 @@
|
|
|
203
194
|
},
|
|
204
195
|
"permissionMode": {
|
|
205
196
|
"label": "Default permission mode",
|
|
206
|
-
"help": "Default plugin orchestration mode used when new coding-agent sessions are launched.
|
|
207
|
-
},
|
|
208
|
-
"codexApprovalPolicy": {
|
|
209
|
-
"label": "Codex approval policy",
|
|
210
|
-
"help": "Deprecated. Use harnesses.codex.approvalPolicy instead."
|
|
197
|
+
"help": "Default plugin orchestration mode used when new coding-agent sessions are launched. Use this for plan/default/bypass behavior; Codex execution stays fixed to 'never'."
|
|
211
198
|
},
|
|
212
199
|
"planApproval": {
|
|
213
200
|
"label": "Plan approval policy",
|
|
214
|
-
"help": "Choose whether plans are
|
|
201
|
+
"help": "Choose whether plans are always sent to the user with Approve/Revise/Reject buttons (`ask`, default), delegated to the orchestrator for full-plan review first, or auto-approved."
|
|
202
|
+
},
|
|
203
|
+
"defaultWorktreeStrategy": {
|
|
204
|
+
"label": "Default worktree strategy",
|
|
205
|
+
"help": "Applies to all sessions that don't specify worktree_strategy explicitly. 'off' (default) disables worktrees globally. 'ask' creates a worktree and sends inline Merge locally / Create PR buttons on completion. 'delegate' wakes the orchestrator to decide autonomously. 'auto-merge' and 'auto-pr' are fully automated."
|
|
215
206
|
}
|
|
216
207
|
},
|
|
217
208
|
"skills": [
|
package/package.json
CHANGED
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openclaw-code-agent",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.1.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"build": "esbuild index.ts --bundle --platform=node --target=node18 --format=esm --outfile=dist/index.js --minify --external:openclaw --external:openclaw/plugin-sdk --external:@anthropic-ai/claude-agent-sdk
|
|
8
|
-
"test": "
|
|
9
|
-
"
|
|
7
|
+
"build": "esbuild index.ts --bundle --platform=node --target=node18 --format=esm --outfile=dist/index.js --minify --external:openclaw --external:openclaw/plugin-sdk --external:@anthropic-ai/claude-agent-sdk",
|
|
8
|
+
"test": "node scripts/run-tests.mjs",
|
|
9
|
+
"test:serial": "node scripts/run-tests.mjs",
|
|
10
|
+
"test:file": "node scripts/run-tests.mjs",
|
|
11
|
+
"smoke:backend": "node scripts/run-tests.mjs tests/codex-harness.test.ts tests/plan-mode-e2e.test.ts tests/session-restore-service.test.ts",
|
|
12
|
+
"smoke:backend-parity": "node scripts/run-tests.mjs tests/backend-contract-smoke.test.ts tests/codex-harness.test.ts tests/harness-registry.test.ts",
|
|
13
|
+
"smoke:codex-worktrees": "node scripts/run-tests.mjs tests/codex-harness.test.ts tests/session-bootstrap.test.ts tests/session-restore-service.test.ts",
|
|
14
|
+
"smoke:codex-live": "OPENCLAW_RUN_LIVE_CODEX_SMOKE=1 node scripts/run-tests.mjs tests/live-codex-app-server-smoke.test.ts",
|
|
15
|
+
"smoke:codex-release": "OPENCLAW_RUN_LIVE_CODEX_RELEASE_SMOKE=1 node scripts/run-tests.mjs tests/live-codex-app-server-smoke.test.ts",
|
|
16
|
+
"typecheck": "tsc --noEmit",
|
|
17
|
+
"verify": "pnpm typecheck && pnpm build && pnpm test"
|
|
10
18
|
},
|
|
11
19
|
"openclaw": {
|
|
12
20
|
"extensions": [
|
|
@@ -22,16 +30,15 @@
|
|
|
22
30
|
"LICENSE"
|
|
23
31
|
],
|
|
24
32
|
"dependencies": {
|
|
25
|
-
"@anthropic-ai/claude-agent-sdk": "^0.2.
|
|
26
|
-
"@openai/codex-sdk": "^0.107.0"
|
|
33
|
+
"@anthropic-ai/claude-agent-sdk": "^0.2.81"
|
|
27
34
|
},
|
|
28
35
|
"devDependencies": {
|
|
29
36
|
"@sinclair/typebox": "^0.34.48",
|
|
30
|
-
"@types/node": "^25.
|
|
31
|
-
"esbuild": "^0.27.
|
|
32
|
-
"nanoid": "^
|
|
37
|
+
"@types/node": "^25.5.0",
|
|
38
|
+
"esbuild": "^0.27.4",
|
|
39
|
+
"nanoid": "^5.1.7",
|
|
33
40
|
"tsx": "^4.21.0",
|
|
34
|
-
"typescript": "^
|
|
41
|
+
"typescript": "^6.0.2"
|
|
35
42
|
},
|
|
36
43
|
"keywords": [
|
|
37
44
|
"openclaw",
|
|
@@ -62,5 +69,18 @@
|
|
|
62
69
|
"publishConfig": {
|
|
63
70
|
"access": "public"
|
|
64
71
|
},
|
|
65
|
-
"description": "An OpenClaw plugin that orchestrates coding agent sessions as managed background processes. Launch, monitor, and control coding agents (Claude Code, Codex, and more) directly from your AI gateway."
|
|
72
|
+
"description": "An OpenClaw plugin that orchestrates coding agent sessions as managed background processes. Launch, monitor, and control coding agents (Claude Code, Codex, and more) directly from your AI gateway.",
|
|
73
|
+
"peerDependencies": {
|
|
74
|
+
"openclaw": ">=2026.3.22"
|
|
75
|
+
},
|
|
76
|
+
"pnpm": {
|
|
77
|
+
"onlyBuiltDependencies": [
|
|
78
|
+
"esbuild",
|
|
79
|
+
"koffi",
|
|
80
|
+
"protobufjs",
|
|
81
|
+
"sharp",
|
|
82
|
+
"@img/sharp-linux-x64",
|
|
83
|
+
"@img/sharp-linux-arm64"
|
|
84
|
+
]
|
|
85
|
+
}
|
|
66
86
|
}
|