@ynhcj/xiaoyi 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/channel.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ChannelPlugin } from "openclaw";
1
+ import type { ChannelOutboundContext, OutboundDeliveryResult, ChannelGatewayStartAccountContext, ChannelGatewayStopAccountContext, ChannelGatewayProbeAccountContext, ChannelMessagingNormalizeTargetContext, ChannelStatusGetAccountStatusContext, ChannelConfigResolveAccountContext } from "openclaw";
2
2
  import { XiaoYiAccountConfig } from "./types";
3
3
  /**
4
4
  * Resolved XiaoYi account configuration
@@ -11,4 +11,75 @@ export interface ResolvedXiaoYiAccount {
11
11
  * XiaoYi Channel Plugin
12
12
  * Implements OpenClaw ChannelPlugin interface for XiaoYi A2A protocol
13
13
  */
14
- export declare const xiaoyiPlugin: ChannelPlugin<ResolvedXiaoYiAccount>;
14
+ export declare const xiaoyiPlugin: {
15
+ id: string;
16
+ meta: {
17
+ id: string;
18
+ label: string;
19
+ selectionLabel: string;
20
+ docsPath: string;
21
+ blurb: string;
22
+ aliases: string[];
23
+ };
24
+ capabilities: {
25
+ chatTypes: string[];
26
+ polls: boolean;
27
+ reactions: boolean;
28
+ threads: boolean;
29
+ media: boolean;
30
+ nativeCommands: boolean;
31
+ };
32
+ /**
33
+ * Config adapter - manage accounts
34
+ */
35
+ config: {
36
+ listAccountIds: (cfg: any) => string[];
37
+ resolveAccount: (ctx: ChannelConfigResolveAccountContext) => Promise<{
38
+ accountId: string;
39
+ config: {
40
+ enabled: boolean;
41
+ wsUrl: string;
42
+ ak: string;
43
+ sk: string;
44
+ agentId: string;
45
+ };
46
+ }>;
47
+ defaultAccountId: (cfg: any) => string | undefined;
48
+ isConfigured: (account: ResolvedXiaoYiAccount) => boolean;
49
+ };
50
+ /**
51
+ * Outbound adapter - send messages
52
+ */
53
+ outbound: {
54
+ deliveryMode: string;
55
+ textChunkLimit: number;
56
+ sendText: (ctx: ChannelOutboundContext) => Promise<OutboundDeliveryResult>;
57
+ sendMedia: (ctx: ChannelOutboundContext) => Promise<OutboundDeliveryResult>;
58
+ };
59
+ /**
60
+ * Gateway adapter - manage connections
61
+ */
62
+ gateway: {
63
+ startAccount: (ctx: ChannelGatewayStartAccountContext) => Promise<void>;
64
+ stopAccount: (ctx: ChannelGatewayStopAccountContext) => Promise<void>;
65
+ probeAccount: (ctx: ChannelGatewayProbeAccountContext) => Promise<{
66
+ status: string;
67
+ message: string;
68
+ }>;
69
+ };
70
+ /**
71
+ * Messaging adapter - normalize targets
72
+ */
73
+ messaging: {
74
+ normalizeTarget: (ctx: ChannelMessagingNormalizeTargetContext) => Promise<string>;
75
+ };
76
+ /**
77
+ * Status adapter - health checks
78
+ */
79
+ status: {
80
+ getAccountStatus: (ctx: ChannelStatusGetAccountStatusContext) => Promise<{
81
+ status: string;
82
+ message: string;
83
+ }>;
84
+ };
85
+ };
package/dist/channel.js CHANGED
@@ -9,9 +9,12 @@ const runtime_1 = require("./runtime");
9
9
  exports.xiaoyiPlugin = {
10
10
  id: "xiaoyi",
11
11
  meta: {
12
- name: "XiaoYi",
13
- description: "XiaoYi channel with A2A protocol support",
14
- icon: "🤖",
12
+ id: "xiaoyi",
13
+ label: "XiaoYi",
14
+ selectionLabel: "XiaoYi (小艺)",
15
+ docsPath: "/channels/xiaoyi",
16
+ blurb: "小艺 A2A 协议支持,通过 WebSocket 连接。",
17
+ aliases: ["xy"],
15
18
  },
16
19
  capabilities: {
17
20
  chatTypes: ["direct"],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ynhcj/xiaoyi",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "description": "XiaoYi channel plugin for OpenClaw",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",