Files
openclaw/scripts/lib/plugin-sdk-doc-metadata.ts
Kevin Lin 7d6b7f434c feat(plugin-sdk): add reaction approval helpers (#86735)
* feat(plugin-sdk): add reaction approval helpers

* fix(signal): register target approval reactions

* Remove legacy WhatsApp approval reaction appender

* refactor(plugin-sdk): share native exec prompt suppression

* revert(discord): keep exec prompt suppression local

* refactor(plugin-sdk): share native approval fallback suppression

* fix(whatsapp): bind outbound approval reactions

* chore(plugin-sdk): refresh api baseline

* revert(imessage): defer reaction approval changes
2026-05-26 15:28:50 -07:00

129 lines
2.4 KiB
TypeScript

export type PluginSdkDocCategory =
| "channel"
| "core"
| "legacy"
| "provider"
| "runtime"
| "utilities";
type PluginSdkDocMetadata = {
category: PluginSdkDocCategory;
};
export const pluginSdkDocMetadata = {
index: {
category: "legacy",
},
core: {
category: "core",
},
health: {
category: "core",
},
"approval-runtime": {
category: "runtime",
},
"approval-auth-runtime": {
category: "runtime",
},
"approval-client-runtime": {
category: "runtime",
},
"approval-delivery-runtime": {
category: "runtime",
},
"approval-native-runtime": {
category: "runtime",
},
"approval-reaction-runtime": {
category: "runtime",
},
"approval-reply-runtime": {
category: "runtime",
},
"plugin-entry": {
category: "core",
},
"access-groups": {
category: "channel",
},
"channel-actions": {
category: "channel",
},
"channel-config-schema": {
category: "channel",
},
"channel-config-schema-legacy": {
category: "channel",
},
"channel-contract": {
category: "channel",
},
"channel-pairing": {
category: "channel",
},
"channel-ingress": {
category: "channel",
},
"channel-ingress-runtime": {
category: "channel",
},
"channel-reply-pipeline": {
category: "channel",
},
"channel-setup": {
category: "channel",
},
"command-auth": {
category: "channel",
},
zalouser: {
category: "channel",
},
"command-status": {
category: "channel",
},
"command-status-runtime": {
category: "runtime",
},
"secret-input": {
category: "channel",
},
"webhook-ingress": {
category: "channel",
},
"provider-onboard": {
category: "provider",
},
"provider-selection-runtime": {
category: "provider",
},
"runtime-store": {
category: "runtime",
},
"agent-runtime": {
category: "runtime",
},
"speech-core": {
category: "provider",
},
"realtime-voice": {
category: "provider",
},
"tts-runtime": {
category: "runtime",
},
"allow-from": {
category: "utilities",
},
"reply-payload": {
category: "utilities",
},
} as const satisfies Record<string, PluginSdkDocMetadata>;
export type PluginSdkDocEntrypoint = keyof typeof pluginSdkDocMetadata;
export function resolvePluginSdkDocImportSpecifier(entrypoint: PluginSdkDocEntrypoint): string {
return entrypoint === "index" ? "openclaw/plugin-sdk" : `openclaw/plugin-sdk/${entrypoint}`;
}