@clawsignal/clawsignal 0.2.0 → 0.2.1
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/index.d.ts +1 -46
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +85 -38
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -10,55 +10,10 @@ interface PluginLogger {
|
|
|
10
10
|
error: (msg: string, meta?: object) => void;
|
|
11
11
|
debug: (msg: string, meta?: object) => void;
|
|
12
12
|
}
|
|
13
|
-
interface PluginRuntime {
|
|
14
|
-
channel: {
|
|
15
|
-
routing: {
|
|
16
|
-
resolveAgentRoute: (params: {
|
|
17
|
-
cfg: unknown;
|
|
18
|
-
channel: string;
|
|
19
|
-
accountId?: string;
|
|
20
|
-
peer?: {
|
|
21
|
-
kind: string;
|
|
22
|
-
id: string;
|
|
23
|
-
};
|
|
24
|
-
}) => {
|
|
25
|
-
sessionKey: string;
|
|
26
|
-
accountId: string;
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
reply: {
|
|
30
|
-
finalizeInboundContext: (ctx: Record<string, unknown>) => Record<string, unknown>;
|
|
31
|
-
dispatchReplyFromConfig: (params: {
|
|
32
|
-
ctx: Record<string, unknown>;
|
|
33
|
-
cfg: unknown;
|
|
34
|
-
dispatcher: {
|
|
35
|
-
deliver: (payload: {
|
|
36
|
-
text?: string;
|
|
37
|
-
}) => void | Promise<void>;
|
|
38
|
-
complete: () => void;
|
|
39
|
-
};
|
|
40
|
-
replyOptions?: Record<string, unknown>;
|
|
41
|
-
}) => Promise<{
|
|
42
|
-
queuedFinal: boolean;
|
|
43
|
-
}>;
|
|
44
|
-
};
|
|
45
|
-
session: {
|
|
46
|
-
recordInboundSession: (params: {
|
|
47
|
-
storePath: string;
|
|
48
|
-
sessionKey: string;
|
|
49
|
-
ctx: Record<string, unknown>;
|
|
50
|
-
}) => Promise<void>;
|
|
51
|
-
resolveStorePath: (cfg: unknown) => string;
|
|
52
|
-
};
|
|
53
|
-
};
|
|
54
|
-
state: {
|
|
55
|
-
resolveStateDir: (cfg: unknown) => string;
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
13
|
interface PluginApi {
|
|
59
14
|
config: unknown;
|
|
60
15
|
logger: PluginLogger;
|
|
61
|
-
runtime:
|
|
16
|
+
runtime: unknown;
|
|
62
17
|
registerService: (service: {
|
|
63
18
|
id: string;
|
|
64
19
|
start: () => void | Promise<void>;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmBH,UAAU,YAAY;IACpB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAED,UAAU,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmBH,UAAU,YAAY;IACpB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAED,UAAU,SAAS;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,CAAC,OAAO,EAAE;QACzB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAClC,KAAK,IAAI,CAAC;IACX,qBAAqB,EAAE,CACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,CAAC,GAAG,EAAE;QAAE,MAAM,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,KAAK,IAAI,KAC1F,IAAI,CAAC;IACV,YAAY,EAAE,CAAC,IAAI,EAAE;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;KAChD,KAAK,IAAI,CAAC;CACZ;AAMD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,GAAG,EAAE,SAAS,QAwU9C"}
|
package/dist/index.js
CHANGED
|
@@ -17,6 +17,11 @@ export default function register(api) {
|
|
|
17
17
|
}
|
|
18
18
|
return entry.config;
|
|
19
19
|
};
|
|
20
|
+
// Get gateway port from config
|
|
21
|
+
const getGatewayPort = () => {
|
|
22
|
+
const config = api.config;
|
|
23
|
+
return config.gateway?.port || 18789;
|
|
24
|
+
};
|
|
20
25
|
let ws = null;
|
|
21
26
|
let reconnectTimeout = null;
|
|
22
27
|
let pingInterval = null;
|
|
@@ -55,6 +60,80 @@ export default function register(api) {
|
|
|
55
60
|
return false;
|
|
56
61
|
}
|
|
57
62
|
};
|
|
63
|
+
// Trigger agent via local gateway RPC WebSocket
|
|
64
|
+
const triggerAgent = async (sessionKey, message) => {
|
|
65
|
+
return new Promise((resolve) => {
|
|
66
|
+
const port = getGatewayPort();
|
|
67
|
+
const gatewayWs = new WebSocket(`ws://127.0.0.1:${port}`);
|
|
68
|
+
let response = '';
|
|
69
|
+
let resolved = false;
|
|
70
|
+
const timeout = setTimeout(() => {
|
|
71
|
+
if (!resolved) {
|
|
72
|
+
resolved = true;
|
|
73
|
+
gatewayWs.close();
|
|
74
|
+
resolve(response || null);
|
|
75
|
+
}
|
|
76
|
+
}, 60000); // 60 second timeout
|
|
77
|
+
gatewayWs.on('open', () => {
|
|
78
|
+
// Send agent trigger request
|
|
79
|
+
gatewayWs.send(JSON.stringify({
|
|
80
|
+
method: 'agent',
|
|
81
|
+
params: {
|
|
82
|
+
message,
|
|
83
|
+
sessionKey,
|
|
84
|
+
stream: false,
|
|
85
|
+
}
|
|
86
|
+
}));
|
|
87
|
+
});
|
|
88
|
+
gatewayWs.on('message', (data) => {
|
|
89
|
+
try {
|
|
90
|
+
const msg = JSON.parse(data.toString());
|
|
91
|
+
if (msg.type === 'text' || msg.type === 'partial') {
|
|
92
|
+
response += msg.text || '';
|
|
93
|
+
}
|
|
94
|
+
else if (msg.type === 'final' || msg.type === 'end' || msg.ok !== undefined) {
|
|
95
|
+
// Final response
|
|
96
|
+
if (msg.response) {
|
|
97
|
+
response = msg.response;
|
|
98
|
+
}
|
|
99
|
+
if (!resolved) {
|
|
100
|
+
resolved = true;
|
|
101
|
+
clearTimeout(timeout);
|
|
102
|
+
gatewayWs.close();
|
|
103
|
+
resolve(response || null);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
else if (msg.type === 'error') {
|
|
107
|
+
api.logger.error('Agent error', { error: msg.error });
|
|
108
|
+
if (!resolved) {
|
|
109
|
+
resolved = true;
|
|
110
|
+
clearTimeout(timeout);
|
|
111
|
+
gatewayWs.close();
|
|
112
|
+
resolve(null);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
catch (err) {
|
|
117
|
+
// Ignore parse errors
|
|
118
|
+
}
|
|
119
|
+
});
|
|
120
|
+
gatewayWs.on('error', (err) => {
|
|
121
|
+
api.logger.error('Gateway WebSocket error', { error: err.message });
|
|
122
|
+
if (!resolved) {
|
|
123
|
+
resolved = true;
|
|
124
|
+
clearTimeout(timeout);
|
|
125
|
+
resolve(null);
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
gatewayWs.on('close', () => {
|
|
129
|
+
if (!resolved) {
|
|
130
|
+
resolved = true;
|
|
131
|
+
clearTimeout(timeout);
|
|
132
|
+
resolve(response || null);
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
});
|
|
136
|
+
};
|
|
58
137
|
const handleMessage = async (data) => {
|
|
59
138
|
const pluginConfig = getConfig();
|
|
60
139
|
if (!pluginConfig)
|
|
@@ -75,45 +154,13 @@ export default function register(api) {
|
|
|
75
154
|
sessionKey
|
|
76
155
|
});
|
|
77
156
|
try {
|
|
78
|
-
const
|
|
79
|
-
//
|
|
80
|
-
const
|
|
81
|
-
Body: `[ClawSignal from ${data.from}]: ${data.message}`,
|
|
82
|
-
RawBody: data.message,
|
|
83
|
-
CommandBody: data.message,
|
|
84
|
-
From: `clawsignal:${data.from}`,
|
|
85
|
-
To: 'clawsignal:self',
|
|
86
|
-
SessionKey: sessionKey,
|
|
87
|
-
AccountId: 'default',
|
|
88
|
-
ChatType: 'direct',
|
|
89
|
-
ConversationLabel: data.from,
|
|
90
|
-
SenderName: data.from,
|
|
91
|
-
SenderId: data.from,
|
|
92
|
-
Provider: 'clawsignal',
|
|
93
|
-
Surface: 'clawsignal',
|
|
94
|
-
MessageSid: data.id || `cs-${Date.now()}`,
|
|
95
|
-
Timestamp: data.timestamp || Date.now(),
|
|
96
|
-
OriginatingChannel: 'clawsignal',
|
|
97
|
-
OriginatingTo: `clawsignal:${data.from}`,
|
|
98
|
-
});
|
|
99
|
-
// Collect response
|
|
100
|
-
let responseText = '';
|
|
101
|
-
// Dispatch to agent
|
|
102
|
-
await api.runtime.channel.reply.dispatchReplyFromConfig({
|
|
103
|
-
ctx,
|
|
104
|
-
cfg,
|
|
105
|
-
dispatcher: {
|
|
106
|
-
deliver: (payload) => {
|
|
107
|
-
if (payload.text) {
|
|
108
|
-
responseText += payload.text;
|
|
109
|
-
}
|
|
110
|
-
},
|
|
111
|
-
complete: () => { },
|
|
112
|
-
},
|
|
113
|
-
});
|
|
157
|
+
const formattedMessage = `[ClawSignal from ${data.from}]: ${data.message}`;
|
|
158
|
+
// Trigger agent and wait for response
|
|
159
|
+
const response = await triggerAgent(sessionKey, formattedMessage);
|
|
114
160
|
// Send response back via ClawSignal if enabled
|
|
115
|
-
if (pluginConfig.autoReply !== false &&
|
|
116
|
-
|
|
161
|
+
if (pluginConfig.autoReply !== false && response) {
|
|
162
|
+
api.logger.info('Sending response back via ClawSignal', { to: data.from });
|
|
163
|
+
await sendToClawSignal(data.from, response);
|
|
117
164
|
}
|
|
118
165
|
}
|
|
119
166
|
catch (err) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,SAAS,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|