惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

云风的 BLOG
云风的 BLOG
Blog — PlanetScale
Blog — PlanetScale
博客园 - 【当耐特】
博客园_首页
The GitHub Blog
The GitHub Blog
月光博客
月光博客
Hugging Face - Blog
Hugging Face - Blog
有赞技术团队
有赞技术团队
博客园 - 三生石上(FineUI控件)
D
Docker
Stack Overflow Blog
Stack Overflow Blog
WordPress大学
WordPress大学
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Apple Machine Learning Research
Apple Machine Learning Research
Vercel News
Vercel News
酷 壳 – CoolShell
酷 壳 – CoolShell
雷峰网
雷峰网
小众软件
小众软件
I
InfoQ
A
About on SuperTechFans
T
The Blog of Author Tim Ferriss
S
SegmentFault 最新的问题
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - Franky

Recent Commits to openclaw:main

test: merge chat side-result checks · openclaw/openclaw@ddd2c2a test: merge cron history checks · openclaw/openclaw@f7eb746 test: merge responsive navigation shell checks · openclaw/openclaw@c2e4b47 docs(changelog): add codex oauth fixes · openclaw/openclaw@628e6cd test: merge navigation routing cases · openclaw/openclaw@5d8cecb Tests: mock channel registry bundled fallback · openclaw/openclaw@2b08233 Secrets: avoid broad web search discovery for single plugin config · openclaw/openclaw@a464f59 test: merge config view browser checks · openclaw/openclaw@20cf511 fix(status): align oauth health with runtime · openclaw/openclaw@eed7116 feat: add macOS screen snapshots for monitor preview (#67954) thanks … · openclaw/openclaw@f377db1 fix: report shared auth scopes in hello-ok (#67810) thanks @BunsDev · openclaw/openclaw@0b6c39b Auto-reply: avoid eager bundled route fallback · openclaw/openclaw@3ea1bf4 Tests: narrow session binding contract setup · openclaw/openclaw@54e4e16 fix(macOS): enable undo/redo in webchat composer text input (#34962) · openclaw/openclaw@00951dc Tests: speed up channel setup promotion · openclaw/openclaw@82b529a Docs: refresh agent instructions · openclaw/openclaw@5775fe2 fix(auth): serialize OAuth refresh across agents to fix #26322 (#67876) · openclaw/openclaw@8e79080 test: allow ollama public surface boundary test · openclaw/openclaw@7d4f1a6 Docs: add test performance guardrails · openclaw/openclaw@89706d3 Tests: restore context-engine usage proof · openclaw/openclaw@e4c4f95 Tests: slim context engine runtime coverage · openclaw/openclaw@74c198f ci: retry failed custom checkouts · openclaw/openclaw@0ee5baf test: trim duplicate provider auth onboarding cases · openclaw/openclaw@1ffc02e matrix: fix sessions_spawn --thread subagent session spawning (#67643) · openclaw/openclaw@1ce2596 test: reduce auth choice fixture churn · openclaw/openclaw@857b9cd test: mock health status config boundaries · openclaw/openclaw@9d5ab4a test: mock onboard config io boundary · openclaw/openclaw@299694d test: mock legacy state plugin boundaries · openclaw/openclaw@2713089 test: mock channel install boundaries · openclaw/openclaw@b945248 test: mock doctor preview channel boundaries · openclaw/openclaw@b1a3ad4
chore(plugins): complete compat registry inventory · open...
vincentkoc · 2026-04-26 · via Recent Commits to openclaw:main

@@ -8,6 +8,7 @@ export const PLUGIN_COMPAT_RECORDS = [

88

introduced: "2026-04-24",

99

deprecated: "2026-04-24",

1010

warningStarts: "2026-04-24",

11+

removeAfter: "2026-07-01",

1112

replacement: "`before_model_resolve` and `before_prompt_build` hooks",

1213

docsPath: "/plugins/sdk-migration",

1314

surfaces: ["plugin hooks", "plugins inspect", "status diagnostics"],

@@ -34,6 +35,7 @@ export const PLUGIN_COMPAT_RECORDS = [

3435

introduced: "2026-04-24",

3536

deprecated: "2026-04-24",

3637

warningStarts: "2026-04-24",

38+

removeAfter: "2026-07-01",

3739

replacement: "focused `openclaw/plugin-sdk/<subpath>` imports",

3840

docsPath: "/plugins/sdk-migration",

3941

surfaces: ["openclaw/plugin-sdk", "openclaw/plugin-sdk/compat"],

@@ -83,6 +85,7 @@ export const PLUGIN_COMPAT_RECORDS = [

8385

introduced: "2026-04-24",

8486

deprecated: "2026-04-24",

8587

warningStarts: "2026-04-24",

88+

removeAfter: "2026-07-01",

8689

replacement: "`setup.providers[].envVars` and `providerAuthChoices`",

8790

docsPath: "/plugins/manifest",

8891

surfaces: ["openclaw.plugin.json providerAuthEnvVars", "provider setup"],

@@ -96,6 +99,7 @@ export const PLUGIN_COMPAT_RECORDS = [

9699

introduced: "2026-04-24",

97100

deprecated: "2026-04-24",

98101

warningStarts: "2026-04-24",

102+

removeAfter: "2026-07-01",

99103

replacement: "`channelConfigs.<id>.schema` and setup descriptors",

100104

docsPath: "/plugins/manifest",

101105

surfaces: ["openclaw.plugin.json channelEnvVars", "channel setup"],

@@ -105,6 +109,18 @@ export const PLUGIN_COMPAT_RECORDS = [

105109

"src/channels/plugins/setup-group-access.test.ts",

106110

],

107111

},

112+

{

113+

code: "activation-agent-harness-hint",

114+

status: "active",

115+

owner: "plugin-execution",

116+

introduced: "2026-04-24",

117+

replacement:

118+

"top-level `cliBackends[]` for CLI aliases and future `agentRuntime` ownership metadata",

119+

docsPath: "/plugins/manifest",

120+

surfaces: ["activation.onAgentHarnesses", "activation planner"],

121+

diagnostics: ["activation plan compat reason"],

122+

tests: ["src/plugins/activation-planner.test.ts"],

123+

},

108124

{

109125

code: "activation-provider-hint",

110126

status: "active",

@@ -167,11 +183,12 @@ export const PLUGIN_COMPAT_RECORDS = [

167183

introduced: "2026-04-24",

168184

deprecated: "2026-04-25",

169185

warningStarts: "2026-04-25",

186+

removeAfter: "2026-08-01",

170187

replacement: "`agentRuntime` config naming",

171188

docsPath: "/plugins/sdk-agent-harness",

172189

surfaces: ["agents.defaults.embeddedHarness", "model/provider runtime selection"],

173190

diagnostics: ["agent runtime config compatibility"],

174-

tests: ["src/agents/config.test.ts", "src/agents/runtime-selection.test.ts"],

191+

tests: ["src/commands/doctor/shared/legacy-config-migrate.test.ts"],

175192

},

176193

{

177194

code: "agent-harness-sdk-alias",

@@ -180,6 +197,7 @@ export const PLUGIN_COMPAT_RECORDS = [

180197

introduced: "2026-04-24",

181198

deprecated: "2026-04-25",

182199

warningStarts: "2026-04-25",

200+

removeAfter: "2026-08-01",

183201

replacement: "`openclaw/plugin-sdk/agent-runtime`",

184202

docsPath: "/plugins/sdk-agent-harness",

185203

surfaces: ["openclaw/plugin-sdk/agent-harness", "openclaw/plugin-sdk/agent-harness-runtime"],

@@ -193,6 +211,7 @@ export const PLUGIN_COMPAT_RECORDS = [

193211

introduced: "2026-04-24",

194212

deprecated: "2026-04-25",

195213

warningStarts: "2026-04-25",

214+

removeAfter: "2026-08-01",

196215

replacement: "`agentRuntime` ids and policy metadata",

197216

docsPath: "/plugins/sdk-agent-harness",

198217

surfaces: ["manifest/catalog execution policy", "runtime selection"],

@@ -217,12 +236,131 @@ export const PLUGIN_COMPAT_RECORDS = [

217236

introduced: "2026-04-25",

218237

deprecated: "2026-04-25",

219238

warningStarts: "2026-04-25",

239+

removeAfter: "2026-07-15",

220240

replacement: "`openclaw plugins registry --refresh` and `openclaw doctor --fix`",

221241

docsPath: "/cli/plugins#registry",

222242

surfaces: ["OPENCLAW_DISABLE_PERSISTED_PLUGIN_REGISTRY", "plugin registry reads"],

223243

diagnostics: ["persisted-registry-disabled"],

224244

tests: ["src/plugins/plugin-registry.test.ts"],

225245

},

246+

{

247+

code: "plugin-registry-install-migration-env",

248+

status: "deprecated",

249+

owner: "config",

250+

introduced: "2026-04-25",

251+

deprecated: "2026-04-25",

252+

warningStarts: "2026-04-25",

253+

removeAfter: "2026-07-15",

254+

replacement: "`openclaw plugins registry --refresh` and `openclaw doctor --fix`",

255+

docsPath: "/cli/plugins#registry",

256+

surfaces: [

257+

"OPENCLAW_DISABLE_PLUGIN_REGISTRY_MIGRATION",

258+

"OPENCLAW_FORCE_PLUGIN_REGISTRY_MIGRATION",

259+

"package postinstall plugin registry migration",

260+

],

261+

diagnostics: ["postinstall migration skip", "postinstall migration force deprecation warning"],

262+

tests: ["src/commands/doctor/shared/plugin-registry-migration.test.ts"],

263+

},

264+

{

265+

code: "plugin-activate-entrypoint-alias",

266+

status: "deprecated",

267+

owner: "sdk",

268+

introduced: "2026-04-24",

269+

deprecated: "2026-04-26",

270+

warningStarts: "2026-04-26",

271+

removeAfter: "2026-08-01",

272+

replacement: "`register(api)` plugin entrypoint",

273+

docsPath: "/plugins/sdk-entrypoints",

274+

surfaces: ["plugin module `activate(api)`", "plugin loader registration"],

275+

diagnostics: ["loader compatibility path"],

276+

tests: ["src/plugins/loader.test.ts"],

277+

},

278+

{

279+

code: "setup-runtime-fallback",

280+

status: "active",

281+

owner: "setup",

282+

introduced: "2026-04-24",

283+

replacement: "`setup.requiresRuntime: false` with complete setup descriptors",

284+

docsPath: "/plugins/manifest#setup-reference",

285+

surfaces: ["setup-api runtime fallback", "setup.requiresRuntime omitted"],

286+

diagnostics: ["setup registry runtime diagnostic"],

287+

tests: ["src/plugins/setup-registry.test.ts", "src/plugins/setup-registry.runtime.test.ts"],

288+

},

289+

{

290+

code: "provider-discovery-hook-alias",

291+

status: "deprecated",

292+

owner: "provider",

293+

introduced: "2026-04-24",

294+

deprecated: "2026-04-26",

295+

warningStarts: "2026-04-26",

296+

removeAfter: "2026-08-01",

297+

replacement: "`catalog.run(...)` provider catalog hook",

298+

docsPath: "/plugins/sdk-migration",

299+

surfaces: ["provider plugin `discovery` hook", "provider catalog resolution"],

300+

diagnostics: ["provider validation warning when catalog and discovery both register"],

301+

tests: ["src/plugins/provider-discovery.test.ts", "src/plugins/provider-validation.test.ts"],

302+

},

303+

{

304+

code: "channel-exposure-legacy-aliases",

305+

status: "deprecated",

306+

owner: "channel",

307+

introduced: "2026-04-24",

308+

deprecated: "2026-04-26",

309+

warningStarts: "2026-04-26",

310+

removeAfter: "2026-08-01",

311+

replacement: "`openclaw.channel.exposure` metadata",

312+

docsPath: "/plugins/sdk-setup",

313+

surfaces: ["openclaw.channel.showConfigured", "openclaw.channel.showInSetup"],

314+

diagnostics: ["channel exposure compatibility path"],

315+

tests: ["src/commands/channel-setup/discovery.test.ts"],

316+

},

317+

{

318+

code: "channel-runtime-sdk-alias",

319+

status: "deprecated",

320+

owner: "sdk",

321+

introduced: "2026-04-24",

322+

deprecated: "2026-04-26",

323+

warningStarts: "2026-04-26",

324+

removeAfter: "2026-08-01",

325+

replacement:

326+

"focused channel SDK subpaths, especially `openclaw/plugin-sdk/channel-runtime-context`",

327+

docsPath: "/plugins/sdk-migration",

328+

surfaces: ["openclaw/plugin-sdk/channel-runtime"],

329+

diagnostics: ["plugin SDK compatibility warning"],

330+

tests: ["src/plugins/contracts/plugin-sdk-subpaths.test.ts"],

331+

},

332+

{

333+

code: "command-auth-status-builders",

334+

status: "deprecated",

335+

owner: "sdk",

336+

introduced: "2026-04-24",

337+

deprecated: "2026-04-26",

338+

warningStarts: "2026-04-26",

339+

removeAfter: "2026-08-01",

340+

replacement: "`openclaw/plugin-sdk/command-status`",

341+

docsPath: "/plugins/sdk-migration",

342+

surfaces: [

343+

"openclaw/plugin-sdk/command-auth buildCommandsMessage",

344+

"openclaw/plugin-sdk/command-auth buildCommandsMessagePaginated",

345+

"openclaw/plugin-sdk/command-auth buildHelpMessage",

346+

],

347+

diagnostics: ["plugin SDK compatibility warning"],

348+

tests: ["src/plugin-sdk/command-auth.test.ts"],

349+

},

350+

{

351+

code: "clawdbot-config-type-alias",

352+

status: "deprecated",

353+

owner: "sdk",

354+

introduced: "2026-04-24",

355+

deprecated: "2026-04-26",

356+

warningStarts: "2026-04-26",

357+

removeAfter: "2026-08-01",

358+

replacement: "`OpenClawConfig`",

359+

docsPath: "/plugins/sdk-migration",

360+

surfaces: ["openclaw/plugin-sdk `ClawdbotConfig` type export"],

361+

diagnostics: ["plugin SDK compatibility warning"],

362+

tests: ["src/plugins/contracts/plugin-sdk-index.test.ts"],

363+

},

226364

] as const satisfies readonly PluginCompatRecord[];

227365228366

export type PluginCompatCode = (typeof PLUGIN_COMPAT_RECORDS)[number]["code"];