openclaw-home-pc/openclaw/extensions/openclaw-weixin/index.ts
2026-03-24 04:00:48 +08:00

28 lines
944 B
TypeScript

import type { OpenClawPluginApi } from "openclaw/plugin-sdk";
import { buildChannelConfigSchema } from "openclaw/plugin-sdk";
import { weixinPlugin } from "./src/channel.js";
import { WeixinConfigSchema } from "./src/config/config-schema.js";
import { registerWeixinCli } from "./src/log-upload.js";
import { setWeixinRuntime } from "./src/runtime.js";
const plugin = {
id: "openclaw-weixin",
name: "Weixin",
description: "Weixin channel (getUpdates long-poll + sendMessage)",
configSchema: buildChannelConfigSchema(WeixinConfigSchema),
register(api: OpenClawPluginApi) {
if (!api?.runtime) {
throw new Error("[weixin] api.runtime is not available in register()");
}
setWeixinRuntime(api.runtime);
api.registerChannel({ plugin: weixinPlugin });
api.registerCli(({ program, config }) => registerWeixinCli({ program, config }), {
commands: ["openclaw-weixin"],
});
},
};
export default plugin;