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

推荐订阅源

爱范儿
爱范儿
T
The Blog of Author Tim Ferriss
G
Google Developers Blog
博客园_首页
博客园 - 【当耐特】
量子位
S
SegmentFault 最新的问题
B
Blog RSS Feed
酷 壳 – CoolShell
酷 壳 – CoolShell
V
Visual Studio Blog
T
Tailwind CSS Blog
阮一峰的网络日志
阮一峰的网络日志
V
V2EX
Y
Y Combinator Blog
博客园 - 聂微东
The Cloudflare Blog
小众软件
小众软件
J
Java Code Geeks
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
月光博客
月光博客
H
Help Net Security
Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
宝玉的分享
宝玉的分享

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
refactor(plugin-sdk): split infra runtime barrel · opencl...
steipete · 2026-04-28 · via Recent Commits to openclaw:main

@@ -22,6 +22,12 @@ anything they needed from a single entry point:

2222

- **`openclaw/plugin-sdk/compat`** — a single import that re-exported dozens of

2323

helpers. It was introduced to keep older hook-based plugins working while the

2424

new plugin architecture was being built.

25+

- **`openclaw/plugin-sdk/infra-runtime`** — a broad runtime helper barrel that

26+

mixed system events, heartbeat state, delivery queues, fetch/proxy helpers,

27+

file helpers, approval types, and unrelated utilities.

28+

- **`openclaw/plugin-sdk/config-runtime`** — a broad config compatibility barrel

29+

that still carries deprecated direct load/write helpers during the migration

30+

window.

2531

- **`openclaw/extension-api`** — a bridge that gave plugins direct access to

2632

host-side helpers like the embedded agent runner.

2733

- **`api.registerEmbeddedExtensionFactory(...)`** — a removed Pi-only bundled

@@ -235,6 +241,7 @@ releases.

235241236242

```bash

237243

grep -r "plugin-sdk/compat" my-plugin/

244+

grep -r "plugin-sdk/infra-runtime" my-plugin/

238245

grep -r "plugin-sdk/config-runtime" my-plugin/

239246

grep -r "openclaw/extension-api" my-plugin/

240247

```

@@ -284,6 +291,37 @@ releases.

284291285292

</Step>

286293294+

<Step title="Replace broad infra-runtime imports">

295+

`openclaw/plugin-sdk/infra-runtime` still exists for external

296+

compatibility, but new code should import the focused helper surface it

297+

actually needs:

298+299+

| Need | Import |

300+

| --- | --- |

301+

| System event queue helpers | `openclaw/plugin-sdk/system-event-runtime` |

302+

| Heartbeat event and visibility helpers | `openclaw/plugin-sdk/heartbeat-runtime` |

303+

| Pending delivery queue drain | `openclaw/plugin-sdk/delivery-queue-runtime` |

304+

| Channel activity telemetry | `openclaw/plugin-sdk/channel-activity-runtime` |

305+

| In-memory dedupe caches | `openclaw/plugin-sdk/dedupe-runtime` |

306+

| Safe local-file/media path helpers | `openclaw/plugin-sdk/file-access-runtime` |

307+

| Dispatcher-aware fetch | `openclaw/plugin-sdk/runtime-fetch` |

308+

| Proxy and guarded fetch helpers | `openclaw/plugin-sdk/fetch-runtime` |

309+

| SSRF dispatcher policy types | `openclaw/plugin-sdk/ssrf-dispatcher` |

310+

| Approval request/resolution types | `openclaw/plugin-sdk/approval-runtime` |

311+

| Approval reply payload and command helpers | `openclaw/plugin-sdk/approval-reply-runtime` |

312+

| Error formatting helpers | `openclaw/plugin-sdk/error-runtime` |

313+

| Transport readiness waits | `openclaw/plugin-sdk/transport-ready-runtime` |

314+

| Secure token helpers | `openclaw/plugin-sdk/secure-random-runtime` |

315+

| Bounded async task concurrency | `openclaw/plugin-sdk/concurrency-runtime` |

316+

| Numeric coercion | `openclaw/plugin-sdk/number-runtime` |

317+

| Process-local async lock | `openclaw/plugin-sdk/async-lock-runtime` |

318+

| File locks | `openclaw/plugin-sdk/file-lock` |

319+320+

Bundled plugins are scanner-guarded against `infra-runtime`, so repo code

321+

cannot regress to the broad barrel.

322+323+

</Step>

324+287325

<Step title="Build and test">

288326

```bash

289327

pnpm build

@@ -338,7 +376,7 @@ releases.

338376

| `plugin-sdk/process-runtime` | Process helpers | Shared exec helpers |

339377

| `plugin-sdk/cli-runtime` | CLI runtime helpers | Command formatting, waits, version helpers |

340378

| `plugin-sdk/gateway-runtime` | Gateway helpers | Gateway client and channel-status patch helpers |

341-

| `plugin-sdk/config-runtime` | Config helpers | Config load/write helpers |

379+

| `plugin-sdk/config-runtime` | Deprecated config compatibility shim | Prefer `config-types`, `plugin-config-runtime`, `runtime-config-snapshot`, and `config-mutation` |

342380

| `plugin-sdk/telegram-command-config` | Telegram command helpers | Fallback-stable Telegram command validation helpers when the bundled Telegram contract surface is unavailable |

343381

| `plugin-sdk/approval-runtime` | Approval prompt helpers | Exec/plugin approval payload, approval capability/profile helpers, native approval routing/runtime helpers, and structured approval display path formatting |

344382

| `plugin-sdk/approval-auth-runtime` | Approval auth helpers | Approver resolution, same-chat action auth |

@@ -353,6 +391,13 @@ releases.

353391

| `plugin-sdk/security-runtime` | Security helpers | Shared trust, DM gating, external-content, and secret-collection helpers |

354392

| `plugin-sdk/ssrf-policy` | SSRF policy helpers | Host allowlist and private-network policy helpers |

355393

| `plugin-sdk/ssrf-runtime` | SSRF runtime helpers | Pinned-dispatcher, guarded fetch, SSRF policy helpers |

394+

| `plugin-sdk/system-event-runtime` | System event helpers | `enqueueSystemEvent`, `peekSystemEventEntries` |

395+

| `plugin-sdk/heartbeat-runtime` | Heartbeat helpers | Heartbeat event and visibility helpers |

396+

| `plugin-sdk/delivery-queue-runtime` | Delivery queue helpers | `drainPendingDeliveries` |

397+

| `plugin-sdk/channel-activity-runtime` | Channel activity helpers | `recordChannelActivity` |

398+

| `plugin-sdk/dedupe-runtime` | Dedupe helpers | In-memory dedupe caches |

399+

| `plugin-sdk/file-access-runtime` | File access helpers | Safe local-file/media path helpers |

400+

| `plugin-sdk/transport-ready-runtime` | Transport readiness helpers | `waitForTransportReady` |

356401

| `plugin-sdk/collection-runtime` | Bounded cache helpers | `pruneMapToMaxSize` |

357402

| `plugin-sdk/diagnostic-runtime` | Diagnostic gating helpers | `isDiagnosticFlagEnabled`, `isDiagnosticsEnabled` |

358403

| `plugin-sdk/error-runtime` | Error formatting helpers | `formatUncaughtError`, `isApprovalNotFoundError`, error graph helpers |