2026-03-16 21:13:56 -07:00
|
|
|
import type { OpenClawPluginApi } from "openclaw/plugin-sdk/plugin-runtime";
|
2026-03-14 02:11:55 +00:00
|
|
|
|
2026-04-05 23:33:33 +01:00
|
|
|
type TestPluginApiInput = Partial<OpenClawPluginApi>;
|
2026-03-14 02:11:55 +00:00
|
|
|
|
2026-04-05 23:33:33 +01:00
|
|
|
export function createTestPluginApi(api: TestPluginApiInput = {}): OpenClawPluginApi {
|
2026-03-14 02:11:55 +00:00
|
|
|
return {
|
2026-04-05 23:33:33 +01:00
|
|
|
id: "test-plugin",
|
|
|
|
|
name: "test-plugin",
|
|
|
|
|
source: "test",
|
2026-03-16 01:05:06 +00:00
|
|
|
registrationMode: "full",
|
2026-04-05 23:33:33 +01:00
|
|
|
config: {},
|
|
|
|
|
runtime: {} as OpenClawPluginApi["runtime"],
|
2026-03-14 03:01:33 +00:00
|
|
|
logger: { info() {}, warn() {}, error() {}, debug() {} },
|
2026-03-14 02:11:55 +00:00
|
|
|
registerTool() {},
|
|
|
|
|
registerHook() {},
|
|
|
|
|
registerHttpRoute() {},
|
|
|
|
|
registerChannel() {},
|
|
|
|
|
registerGatewayMethod() {},
|
|
|
|
|
registerCli() {},
|
2026-04-06 12:18:18 +01:00
|
|
|
registerCliBackend() {},
|
2026-04-11 02:03:11 +01:00
|
|
|
registerTextTransforms() {},
|
2026-03-14 02:11:55 +00:00
|
|
|
registerService() {},
|
2026-04-05 23:13:03 +01:00
|
|
|
registerReload() {},
|
|
|
|
|
registerNodeHostCommand() {},
|
|
|
|
|
registerSecurityAuditCollector() {},
|
2026-04-05 14:43:29 +01:00
|
|
|
registerConfigMigration() {},
|
|
|
|
|
registerAutoEnableProbe() {},
|
2026-03-14 02:11:55 +00:00
|
|
|
registerProvider() {},
|
2026-03-16 18:49:55 -07:00
|
|
|
registerSpeechProvider() {},
|
2026-04-04 12:04:37 +09:00
|
|
|
registerRealtimeTranscriptionProvider() {},
|
|
|
|
|
registerRealtimeVoiceProvider() {},
|
2026-03-16 20:42:00 -07:00
|
|
|
registerMediaUnderstandingProvider() {},
|
2026-03-16 22:56:14 -07:00
|
|
|
registerImageGenerationProvider() {},
|
2026-04-06 01:43:08 +01:00
|
|
|
registerMusicGenerationProvider() {},
|
2026-04-04 17:43:15 +01:00
|
|
|
registerVideoGenerationProvider() {},
|
2026-04-02 20:25:19 +09:00
|
|
|
registerWebFetchProvider() {},
|
2026-03-16 01:15:31 +00:00
|
|
|
registerWebSearchProvider() {},
|
2026-03-15 19:06:11 -04:00
|
|
|
registerInteractiveHandler() {},
|
2026-03-17 17:27:52 +01:00
|
|
|
onConversationBindingResolved() {},
|
2026-03-14 02:11:55 +00:00
|
|
|
registerCommand() {},
|
|
|
|
|
registerContextEngine() {},
|
2026-04-07 13:55:34 -04:00
|
|
|
registerCompactionProvider() {},
|
2026-04-10 13:49:45 +01:00
|
|
|
registerAgentHarness() {},
|
2026-04-07 08:01:49 +01:00
|
|
|
registerMemoryCapability() {},
|
2026-03-21 20:20:45 +02:00
|
|
|
registerMemoryPromptSection() {},
|
2026-04-06 04:56:29 +01:00
|
|
|
registerMemoryPromptSupplement() {},
|
|
|
|
|
registerMemoryCorpusSupplement() {},
|
2026-03-26 21:30:39 +00:00
|
|
|
registerMemoryFlushPlan() {},
|
2026-03-26 22:29:38 +00:00
|
|
|
registerMemoryRuntime() {},
|
2026-03-27 00:40:45 +00:00
|
|
|
registerMemoryEmbeddingProvider() {},
|
2026-03-14 02:11:55 +00:00
|
|
|
resolvePath(input: string) {
|
|
|
|
|
return input;
|
|
|
|
|
},
|
|
|
|
|
on() {},
|
|
|
|
|
...api,
|
|
|
|
|
};
|
|
|
|
|
}
|