You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/plugins/architecture.md
+23-18Lines changed: 23 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -933,25 +933,31 @@ authoring plugins:
933
933
-`openclaw/plugin-sdk/core` for the generic shared plugin-facing contract.
934
934
- Stable channel primitives such as `openclaw/plugin-sdk/channel-setup`,
935
935
`openclaw/plugin-sdk/channel-pairing`,
936
+
`openclaw/plugin-sdk/channel-contract`,
937
+
`openclaw/plugin-sdk/channel-feedback`,
938
+
`openclaw/plugin-sdk/channel-inbound`,
939
+
`openclaw/plugin-sdk/channel-lifecycle`,
936
940
`openclaw/plugin-sdk/channel-reply-pipeline`,
941
+
`openclaw/plugin-sdk/command-auth`,
937
942
`openclaw/plugin-sdk/secret-input`, and
938
943
`openclaw/plugin-sdk/webhook-ingress` for shared setup/auth/reply/webhook
939
-
wiring.
944
+
wiring. `channel-inbound` is the shared home for debounce, mention matching,
945
+
envelope formatting, and inbound envelope context helpers.
940
946
- Domain subpaths such as `openclaw/plugin-sdk/channel-config-helpers`,
947
+
`openclaw/plugin-sdk/allow-from`,
941
948
`openclaw/plugin-sdk/channel-config-schema`,
942
949
`openclaw/plugin-sdk/channel-policy`,
943
-
`openclaw/plugin-sdk/channel-runtime`,
944
950
`openclaw/plugin-sdk/config-runtime`,
951
+
`openclaw/plugin-sdk/infra-runtime`,
945
952
`openclaw/plugin-sdk/agent-runtime`,
946
953
`openclaw/plugin-sdk/lazy-runtime`,
947
954
`openclaw/plugin-sdk/reply-history`,
948
955
`openclaw/plugin-sdk/routing`,
956
+
`openclaw/plugin-sdk/status-helpers`,
949
957
`openclaw/plugin-sdk/runtime-store`, and
950
958
`openclaw/plugin-sdk/directory-runtime` for shared runtime/config helpers.
951
-
- Narrow channel-core subpaths such as `openclaw/plugin-sdk/discord-core`,
952
-
`openclaw/plugin-sdk/telegram-core`, and `openclaw/plugin-sdk/whatsapp-core`
953
-
for channel-specific primitives that should stay smaller than the full
954
-
channel helper barrels.
959
+
-`openclaw/plugin-sdk/channel-runtime` remains only as a compatibility shim.
960
+
New code should import the narrower primitives instead.
955
961
- Bundled extension internals remain private. External plugins should use only
956
962
`openclaw/plugin-sdk/*` subpaths. OpenClaw core/test code may use the repo
957
963
public entry points under `extensions/<id>/index.js`, `api.js`, `runtime-api.js`,
@@ -962,26 +968,25 @@ authoring plugins:
962
968
`extensions/<id>/runtime-api.js` is the runtime-only barrel,
963
969
`extensions/<id>/index.js` is the bundled plugin entry,
964
970
and `extensions/<id>/setup-entry.js` is the setup plugin entry.
965
-
-`openclaw/plugin-sdk/telegram` for Telegram channel plugin types and shared channel-facing helpers. Built-in Telegram implementation internals stay private to the bundled extension.
966
-
-`openclaw/plugin-sdk/discord` for Discord channel plugin types and shared channel-facing helpers. Built-in Discord implementation internals stay private to the bundled extension.
967
-
-`openclaw/plugin-sdk/slack` for Slack channel plugin types and shared channel-facing helpers. Built-in Slack implementation internals stay private to the bundled extension.
968
-
-`openclaw/plugin-sdk/imessage` for iMessage channel plugin types and shared channel-facing helpers. Built-in iMessage implementation internals stay private to the bundled extension.
969
-
-`openclaw/plugin-sdk/whatsapp` for WhatsApp channel plugin types and shared channel-facing helpers. Built-in WhatsApp implementation internals stay private to the bundled extension.
970
-
-`openclaw/plugin-sdk/bluebubbles` remains public because it carries a small
971
-
focused helper surface that is shared intentionally.
971
+
- No bundled channel-branded public subpaths remain. Channel-specific helper and
972
+
runtime seams live under `extensions/<id>/api.js` and `extensions/<id>/runtime-api.js`;
973
+
the public SDK contract is the generic shared primitives instead.
972
974
973
975
Compatibility note:
974
976
975
977
- Avoid the root `openclaw/plugin-sdk` barrel for new code.
976
978
- Prefer the narrow stable primitives first. The newer setup/pairing/reply/
977
-
secret-input/webhook subpaths are the intended contract for new bundled and
0 commit comments