mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 10:20:42 +00:00
refactor(matrix): keep runtime wrapper native-only
This commit is contained in:
@@ -23,7 +23,7 @@ At startup, OpenClaw does roughly this:
|
||||
`slots`, `load.paths`)
|
||||
5. decide enablement for each candidate
|
||||
6. load enabled native modules: built bundled modules use a native loader;
|
||||
unbuilt native plugins use jiti
|
||||
third-party local source TypeScript uses the emergency Jiti fallback
|
||||
7. call native `register(api)` hooks and collect registrations into the plugin registry
|
||||
8. expose the registry to commands/runtime surfaces
|
||||
|
||||
|
||||
@@ -123,7 +123,7 @@ OpenClaw's plugin system has four layers:
|
||||
Core decides whether a discovered plugin is enabled, disabled, blocked, or selected for an exclusive slot such as memory.
|
||||
</Step>
|
||||
<Step title="Runtime loading">
|
||||
Native OpenClaw plugins are loaded in-process and register capabilities into a central registry. Packaged JavaScript loads through native `require`; source TypeScript falls back to Jiti. Compatible bundles are normalized into registry records without importing runtime code.
|
||||
Native OpenClaw plugins are loaded in-process and register capabilities into a central registry. Packaged JavaScript loads through native `require`; third-party local source TypeScript is the emergency Jiti fallback. Compatible bundles are normalized into registry records without importing runtime code.
|
||||
</Step>
|
||||
<Step title="Surface consumption">
|
||||
The rest of OpenClaw reads the registry to expose tools, channels, provider setup, hooks, HTTP routes, CLI commands, and services.
|
||||
|
||||
@@ -61,8 +61,9 @@ Local plugins are treated as developer-controlled directories. OpenClaw does not
|
||||
run `npm install`, `pnpm install`, or dependency repair for them. If a local
|
||||
plugin has dependencies, install them in that plugin before loading it.
|
||||
|
||||
TypeScript local plugins can use the emergency Jiti path. Packaged JavaScript
|
||||
plugins load through native import/require instead of Jiti.
|
||||
Third-party TypeScript local plugins can use the emergency Jiti path. Packaged
|
||||
JavaScript plugins and bundled internal plugins load through native
|
||||
import/require instead of Jiti.
|
||||
|
||||
## Startup and reload
|
||||
|
||||
|
||||
Reference in New Issue
Block a user