@probelabs/visor 0.1.173 → 0.1.174
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/docs/dashboards/README.md +73 -26
- package/dist/docs/dashboards/grafana-visor-overview.json +435 -15
- package/dist/docs/telemetry-reference.md +387 -0
- package/dist/docs/telemetry-setup.md +2 -0
- package/dist/generated/config-schema.d.ts +277 -7
- package/dist/generated/config-schema.d.ts.map +1 -1
- package/dist/generated/config-schema.json +3803 -0
- package/dist/index.js +364 -30
- package/dist/output/traces/{run-2026-03-09T15-21-25-122Z.ndjson → run-2026-03-09T15-44-30-340Z.ndjson} +84 -84
- package/dist/output/traces/{run-2026-03-09T15-22-05-255Z.ndjson → run-2026-03-09T15-45-10-778Z.ndjson} +1852 -1852
- package/dist/sdk/{a2a-frontend-VHOQ45CR.mjs → a2a-frontend-5L6H7ZVF.mjs} +3 -3
- package/dist/sdk/{a2a-frontend-7CYN3X7M.mjs → a2a-frontend-FUJRKHJB.mjs} +3 -3
- package/dist/sdk/{check-provider-registry-65GO3SCO.mjs → check-provider-registry-UM762L7S.mjs} +7 -7
- package/dist/sdk/{check-provider-registry-75O5XJMA.mjs → check-provider-registry-UPQNHHFF.mjs} +7 -7
- package/dist/sdk/{check-provider-registry-DBTS7OXY.mjs → check-provider-registry-YVQI4IOR.mjs} +7 -7
- package/dist/sdk/{chunk-Y5MEQW2W.mjs → chunk-2PL2YH3B.mjs} +19 -19
- package/dist/sdk/{chunk-4TV2CVVI.mjs → chunk-34QX63WK.mjs} +16 -14
- package/dist/sdk/chunk-34QX63WK.mjs.map +1 -0
- package/dist/sdk/{chunk-2HXOGRAS.mjs → chunk-65SHRIQF.mjs} +3 -3
- package/dist/sdk/{chunk-2HXOGRAS.mjs.map → chunk-65SHRIQF.mjs.map} +1 -1
- package/dist/sdk/{chunk-VVHALCWV.mjs → chunk-EFNNJIMY.mjs} +3 -3
- package/dist/sdk/{chunk-7CWJNSL2.mjs → chunk-EP7PQ4IX.mjs} +19 -19
- package/dist/sdk/{chunk-AV6KML52.mjs → chunk-I6GKXMQ5.mjs} +19 -19
- package/dist/sdk/{chunk-VK7FUBBU.mjs → chunk-UTBSBJFV.mjs} +3 -3
- package/dist/sdk/{chunk-HZEXCJGA.mjs → chunk-W4KCJM6J.mjs} +282 -8
- package/dist/sdk/chunk-W4KCJM6J.mjs.map +1 -0
- package/dist/sdk/{chunk-GVPMO6QD.mjs → chunk-WJIV7MKY.mjs} +3 -3
- package/dist/sdk/{chunk-WYFQQ445.mjs → chunk-YEARBXYT.mjs} +3 -3
- package/dist/sdk/{chunk-LTHHE6Z5.mjs → chunk-ZI3SEHWA.mjs} +4 -4
- package/dist/sdk/{chunk-LTHHE6Z5.mjs.map → chunk-ZI3SEHWA.mjs.map} +1 -1
- package/dist/sdk/{config-UXRHADSE.mjs → config-BVL3KFMB.mjs} +2 -2
- package/dist/sdk/{failure-condition-evaluator-Q4KNMX6F.mjs → failure-condition-evaluator-4O6BTC4Q.mjs} +4 -4
- package/dist/sdk/{failure-condition-evaluator-SNR5XLGN.mjs → failure-condition-evaluator-DL6H57NX.mjs} +4 -4
- package/dist/sdk/{github-frontend-56UQTA47.mjs → github-frontend-F2YCPK6H.mjs} +4 -4
- package/dist/sdk/{github-frontend-OOP26667.mjs → github-frontend-UXL73NKB.mjs} +4 -4
- package/dist/sdk/{host-QRGXXRDA.mjs → host-6TBS44ER.mjs} +3 -3
- package/dist/sdk/{host-VYPJ2UGQ.mjs → host-KJTXX76P.mjs} +3 -3
- package/dist/sdk/{metrics-FU2G5SZ2.mjs → metrics-JTOG2HNO.mjs} +2 -2
- package/dist/sdk/{routing-DBQHPP2O.mjs → routing-AWYB2YX3.mjs} +5 -5
- package/dist/sdk/{routing-ZAUCS3HJ.mjs → routing-GF2CF3JT.mjs} +5 -5
- package/dist/sdk/{schedule-tool-MHICRNCI.mjs → schedule-tool-IEY2CFLU.mjs} +7 -7
- package/dist/sdk/{schedule-tool-VRLX54J5.mjs → schedule-tool-SGCYDSHL.mjs} +7 -7
- package/dist/sdk/{schedule-tool-2FIVKPVJ.mjs → schedule-tool-UMDRCNO5.mjs} +7 -7
- package/dist/sdk/{schedule-tool-handler-3ES4WON7.mjs → schedule-tool-handler-5EPTHBLS.mjs} +7 -7
- package/dist/sdk/{schedule-tool-handler-FQGAWC5N.mjs → schedule-tool-handler-5QVUZ5EZ.mjs} +7 -7
- package/dist/sdk/{schedule-tool-handler-KYUHU4JR.mjs → schedule-tool-handler-HMEGLYJF.mjs} +7 -7
- package/dist/sdk/sdk.d.mts +137 -133
- package/dist/sdk/sdk.d.ts +137 -133
- package/dist/sdk/sdk.js +298 -22
- package/dist/sdk/sdk.js.map +1 -1
- package/dist/sdk/sdk.mjs +6 -6
- package/dist/sdk/{trace-helpers-UKMYHQIK.mjs → trace-helpers-6TEWG7RK.mjs} +3 -3
- package/dist/sdk/{trace-helpers-ZFDJ55SH.mjs → trace-helpers-FKM2MEDW.mjs} +3 -3
- package/dist/sdk/{workflow-check-provider-F5DTEX6E.mjs → workflow-check-provider-7VNIO6L5.mjs} +7 -7
- package/dist/sdk/{workflow-check-provider-VEOVTCVU.mjs → workflow-check-provider-EWMZEEES.mjs} +7 -7
- package/dist/sdk/{workflow-check-provider-5KQTXKWS.mjs → workflow-check-provider-VJ7VIMCQ.mjs} +7 -7
- package/dist/telemetry/metrics.d.ts.map +1 -1
- package/dist/traces/{run-2026-03-09T15-21-25-122Z.ndjson → run-2026-03-09T15-44-30-340Z.ndjson} +84 -84
- package/dist/traces/{run-2026-03-09T15-22-05-255Z.ndjson → run-2026-03-09T15-45-10-778Z.ndjson} +1852 -1852
- package/dist/types/config.d.ts +5 -4
- package/dist/types/config.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist/sdk/chunk-4TV2CVVI.mjs.map +0 -1
- package/dist/sdk/chunk-HZEXCJGA.mjs.map +0 -1
- /package/dist/sdk/{a2a-frontend-7CYN3X7M.mjs.map → a2a-frontend-5L6H7ZVF.mjs.map} +0 -0
- /package/dist/sdk/{a2a-frontend-VHOQ45CR.mjs.map → a2a-frontend-FUJRKHJB.mjs.map} +0 -0
- /package/dist/sdk/{check-provider-registry-65GO3SCO.mjs.map → check-provider-registry-UM762L7S.mjs.map} +0 -0
- /package/dist/sdk/{check-provider-registry-75O5XJMA.mjs.map → check-provider-registry-UPQNHHFF.mjs.map} +0 -0
- /package/dist/sdk/{check-provider-registry-DBTS7OXY.mjs.map → check-provider-registry-YVQI4IOR.mjs.map} +0 -0
- /package/dist/sdk/{chunk-Y5MEQW2W.mjs.map → chunk-2PL2YH3B.mjs.map} +0 -0
- /package/dist/sdk/{chunk-VK7FUBBU.mjs.map → chunk-EFNNJIMY.mjs.map} +0 -0
- /package/dist/sdk/{chunk-7CWJNSL2.mjs.map → chunk-EP7PQ4IX.mjs.map} +0 -0
- /package/dist/sdk/{chunk-AV6KML52.mjs.map → chunk-I6GKXMQ5.mjs.map} +0 -0
- /package/dist/sdk/{chunk-VVHALCWV.mjs.map → chunk-UTBSBJFV.mjs.map} +0 -0
- /package/dist/sdk/{chunk-GVPMO6QD.mjs.map → chunk-WJIV7MKY.mjs.map} +0 -0
- /package/dist/sdk/{chunk-WYFQQ445.mjs.map → chunk-YEARBXYT.mjs.map} +0 -0
- /package/dist/sdk/{config-UXRHADSE.mjs.map → config-BVL3KFMB.mjs.map} +0 -0
- /package/dist/sdk/{failure-condition-evaluator-Q4KNMX6F.mjs.map → failure-condition-evaluator-4O6BTC4Q.mjs.map} +0 -0
- /package/dist/sdk/{failure-condition-evaluator-SNR5XLGN.mjs.map → failure-condition-evaluator-DL6H57NX.mjs.map} +0 -0
- /package/dist/sdk/{github-frontend-56UQTA47.mjs.map → github-frontend-F2YCPK6H.mjs.map} +0 -0
- /package/dist/sdk/{github-frontend-OOP26667.mjs.map → github-frontend-UXL73NKB.mjs.map} +0 -0
- /package/dist/sdk/{host-QRGXXRDA.mjs.map → host-6TBS44ER.mjs.map} +0 -0
- /package/dist/sdk/{host-VYPJ2UGQ.mjs.map → host-KJTXX76P.mjs.map} +0 -0
- /package/dist/sdk/{metrics-FU2G5SZ2.mjs.map → metrics-JTOG2HNO.mjs.map} +0 -0
- /package/dist/sdk/{routing-DBQHPP2O.mjs.map → routing-AWYB2YX3.mjs.map} +0 -0
- /package/dist/sdk/{routing-ZAUCS3HJ.mjs.map → routing-GF2CF3JT.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-2FIVKPVJ.mjs.map → schedule-tool-IEY2CFLU.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-MHICRNCI.mjs.map → schedule-tool-SGCYDSHL.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-VRLX54J5.mjs.map → schedule-tool-UMDRCNO5.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-handler-3ES4WON7.mjs.map → schedule-tool-handler-5EPTHBLS.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-handler-FQGAWC5N.mjs.map → schedule-tool-handler-5QVUZ5EZ.mjs.map} +0 -0
- /package/dist/sdk/{schedule-tool-handler-KYUHU4JR.mjs.map → schedule-tool-handler-HMEGLYJF.mjs.map} +0 -0
- /package/dist/sdk/{trace-helpers-UKMYHQIK.mjs.map → trace-helpers-6TEWG7RK.mjs.map} +0 -0
- /package/dist/sdk/{trace-helpers-ZFDJ55SH.mjs.map → trace-helpers-FKM2MEDW.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-5KQTXKWS.mjs.map → workflow-check-provider-7VNIO6L5.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-F5DTEX6E.mjs.map → workflow-check-provider-EWMZEEES.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-VEOVTCVU.mjs.map → workflow-check-provider-VJ7VIMCQ.mjs.map} +0 -0
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
extractSlackContext,
|
|
7
7
|
init_schedule_tool_handler,
|
|
8
8
|
isScheduleToolCall
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-I6GKXMQ5.mjs";
|
|
10
10
|
import "./chunk-YSOIR46P.mjs";
|
|
11
11
|
import "./chunk-PDQTEBOJ.mjs";
|
|
12
12
|
import "./chunk-7VTZDC2X.mjs";
|
|
@@ -14,13 +14,13 @@ import "./chunk-B7BVQM5K.mjs";
|
|
|
14
14
|
import "./chunk-XXAEN5KU.mjs";
|
|
15
15
|
import "./chunk-RHKPFJLG.mjs";
|
|
16
16
|
import "./chunk-UBTZE3FO.mjs";
|
|
17
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-W4KCJM6J.mjs";
|
|
18
18
|
import "./chunk-KWTCTEFT.mjs";
|
|
19
|
-
import "./chunk-
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
19
|
+
import "./chunk-WJIV7MKY.mjs";
|
|
20
|
+
import "./chunk-EFNNJIMY.mjs";
|
|
21
|
+
import "./chunk-65SHRIQF.mjs";
|
|
22
22
|
import "./chunk-6VVXKXTI.mjs";
|
|
23
|
-
import "./chunk-
|
|
23
|
+
import "./chunk-34QX63WK.mjs";
|
|
24
24
|
import "./chunk-PQWZ6NFL.mjs";
|
|
25
25
|
import "./chunk-25IC7KXZ.mjs";
|
|
26
26
|
import "./chunk-LW3INISN.mjs";
|
|
@@ -37,4 +37,4 @@ export {
|
|
|
37
37
|
extractSlackContext,
|
|
38
38
|
isScheduleToolCall
|
|
39
39
|
};
|
|
40
|
-
//# sourceMappingURL=schedule-tool-handler-
|
|
40
|
+
//# sourceMappingURL=schedule-tool-handler-HMEGLYJF.mjs.map
|
package/dist/sdk/sdk.d.mts
CHANGED
|
@@ -1,136 +1,3 @@
|
|
|
1
|
-
/** Bot transport types (trimmed for Slack v1) */
|
|
2
|
-
type BotTransportType = 'slack' | 'telegram' | 'whatsapp' | 'teams' | string;
|
|
3
|
-
/** Slack file attachment metadata */
|
|
4
|
-
interface SlackFileAttachment {
|
|
5
|
-
id: string;
|
|
6
|
-
name?: string;
|
|
7
|
-
mimetype?: string;
|
|
8
|
-
filetype?: string;
|
|
9
|
-
url_private?: string;
|
|
10
|
-
permalink?: string;
|
|
11
|
-
size?: number;
|
|
12
|
-
}
|
|
13
|
-
interface NormalizedMessage {
|
|
14
|
-
role: 'user' | 'bot';
|
|
15
|
-
text: string;
|
|
16
|
-
timestamp: string;
|
|
17
|
-
origin?: string;
|
|
18
|
-
/** Optional user identifier (e.g., Slack user id, GitHub login) */
|
|
19
|
-
user?: string;
|
|
20
|
-
/** File attachments from Slack messages */
|
|
21
|
-
files?: SlackFileAttachment[];
|
|
22
|
-
}
|
|
23
|
-
interface ConversationContext {
|
|
24
|
-
transport: BotTransportType;
|
|
25
|
-
thread: {
|
|
26
|
-
id: string;
|
|
27
|
-
url?: string;
|
|
28
|
-
};
|
|
29
|
-
messages: NormalizedMessage[];
|
|
30
|
-
current: NormalizedMessage;
|
|
31
|
-
attributes: Record<string, string>;
|
|
32
|
-
}
|
|
33
|
-
interface TelegramConfig {
|
|
34
|
-
/** Bot token from @BotFather (or TELEGRAM_BOT_TOKEN env var) */
|
|
35
|
-
bot_token?: string;
|
|
36
|
-
/** Polling timeout in seconds for getUpdates (default: 30) */
|
|
37
|
-
polling_timeout?: number;
|
|
38
|
-
/** Chat/group allowlist - numeric chat IDs that the bot responds in */
|
|
39
|
-
chat_allowlist?: (string | number)[];
|
|
40
|
-
/** In groups, only respond when @mentioned or replied to (default: true) */
|
|
41
|
-
require_mention?: boolean;
|
|
42
|
-
/** Workflow to run when a message is received */
|
|
43
|
-
workflow?: string;
|
|
44
|
-
}
|
|
45
|
-
interface EmailConfig {
|
|
46
|
-
/** Receive backend configuration */
|
|
47
|
-
receive?: {
|
|
48
|
-
/** Backend type: 'imap' (universal) or 'resend' (managed webhook) */
|
|
49
|
-
type?: 'imap' | 'resend';
|
|
50
|
-
/** IMAP server hostname */
|
|
51
|
-
host?: string;
|
|
52
|
-
/** IMAP server port (default: 993) */
|
|
53
|
-
port?: number;
|
|
54
|
-
/** IMAP auth credentials */
|
|
55
|
-
auth?: {
|
|
56
|
-
user?: string;
|
|
57
|
-
pass?: string;
|
|
58
|
-
};
|
|
59
|
-
/** Use TLS (default: true) */
|
|
60
|
-
secure?: boolean;
|
|
61
|
-
/** Polling interval in seconds when IDLE not available (default: 30) */
|
|
62
|
-
poll_interval?: number;
|
|
63
|
-
/** IMAP folder to monitor (default: 'INBOX') */
|
|
64
|
-
folder?: string;
|
|
65
|
-
/** Mark processed messages as read (default: true) */
|
|
66
|
-
mark_read?: boolean;
|
|
67
|
-
/** Resend API key (for type: 'resend') */
|
|
68
|
-
api_key?: string;
|
|
69
|
-
/** Resend webhook secret for signature verification */
|
|
70
|
-
webhook_secret?: string;
|
|
71
|
-
};
|
|
72
|
-
/** Send backend configuration */
|
|
73
|
-
send?: {
|
|
74
|
-
/** Backend type: 'smtp' (universal) or 'resend' (managed API) */
|
|
75
|
-
type?: 'smtp' | 'resend';
|
|
76
|
-
/** SMTP server hostname */
|
|
77
|
-
host?: string;
|
|
78
|
-
/** SMTP server port (default: 587) */
|
|
79
|
-
port?: number;
|
|
80
|
-
/** SMTP auth credentials */
|
|
81
|
-
auth?: {
|
|
82
|
-
user?: string;
|
|
83
|
-
pass?: string;
|
|
84
|
-
};
|
|
85
|
-
/** Use TLS (default: true) */
|
|
86
|
-
secure?: boolean;
|
|
87
|
-
/** Default sender address (e.g., "Bot <bot@example.com>") */
|
|
88
|
-
from?: string;
|
|
89
|
-
/** Resend API key (for type: 'resend') */
|
|
90
|
-
api_key?: string;
|
|
91
|
-
};
|
|
92
|
-
/** Only process emails from these senders */
|
|
93
|
-
allowlist?: string[];
|
|
94
|
-
/** Workflow to run when an email is received */
|
|
95
|
-
workflow?: string;
|
|
96
|
-
}
|
|
97
|
-
interface WhatsAppConfig {
|
|
98
|
-
/** WhatsApp Cloud API access token (or WHATSAPP_ACCESS_TOKEN env var) */
|
|
99
|
-
access_token?: string;
|
|
100
|
-
/** Phone Number ID from Meta Business Suite (or WHATSAPP_PHONE_NUMBER_ID env var) */
|
|
101
|
-
phone_number_id?: string;
|
|
102
|
-
/** Meta App Secret for webhook signature verification (or WHATSAPP_APP_SECRET env var) */
|
|
103
|
-
app_secret?: string;
|
|
104
|
-
/** Verify token for webhook subscription challenge (or WHATSAPP_VERIFY_TOKEN env var) */
|
|
105
|
-
verify_token?: string;
|
|
106
|
-
/** Graph API version (default: 'v21.0') */
|
|
107
|
-
api_version?: string;
|
|
108
|
-
/** Port for webhook HTTP server (default: 8443) */
|
|
109
|
-
port?: number;
|
|
110
|
-
/** Host for webhook HTTP server (default: '0.0.0.0') */
|
|
111
|
-
host?: string;
|
|
112
|
-
/** Phone number allowlist — only respond to these numbers */
|
|
113
|
-
phone_allowlist?: string[];
|
|
114
|
-
/** Workflow to run when a message is received */
|
|
115
|
-
workflow?: string;
|
|
116
|
-
}
|
|
117
|
-
interface TeamsConfig {
|
|
118
|
-
/** Azure AD App (client) ID (or TEAMS_APP_ID env var) */
|
|
119
|
-
app_id?: string;
|
|
120
|
-
/** Azure AD App client secret (or TEAMS_APP_PASSWORD env var) */
|
|
121
|
-
app_password?: string;
|
|
122
|
-
/** Azure AD Tenant ID for single-tenant apps (or TEAMS_TENANT_ID env var) */
|
|
123
|
-
tenant_id?: string;
|
|
124
|
-
/** Port for webhook HTTP server (default: 3978) */
|
|
125
|
-
port?: number;
|
|
126
|
-
/** Host for webhook HTTP server (default: '0.0.0.0') */
|
|
127
|
-
host?: string;
|
|
128
|
-
/** User ID allowlist — only respond to these AAD user IDs */
|
|
129
|
-
user_allowlist?: string[];
|
|
130
|
-
/** Workflow to run when a message is received */
|
|
131
|
-
workflow?: string;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
1
|
interface AIDebugInfo {
|
|
135
2
|
/** The prompt sent to the AI */
|
|
136
3
|
prompt: string;
|
|
@@ -376,6 +243,143 @@ interface AgentProtocolConfig {
|
|
|
376
243
|
queue?: AgentProtocolQueueConfig;
|
|
377
244
|
}
|
|
378
245
|
|
|
246
|
+
/** Bot transport types (trimmed for Slack v1) */
|
|
247
|
+
type BotTransportType = 'slack' | 'telegram' | 'whatsapp' | 'teams' | string;
|
|
248
|
+
/** Slack file attachment metadata */
|
|
249
|
+
interface SlackFileAttachment {
|
|
250
|
+
id: string;
|
|
251
|
+
name?: string;
|
|
252
|
+
mimetype?: string;
|
|
253
|
+
filetype?: string;
|
|
254
|
+
url_private?: string;
|
|
255
|
+
permalink?: string;
|
|
256
|
+
size?: number;
|
|
257
|
+
}
|
|
258
|
+
interface NormalizedMessage {
|
|
259
|
+
role: 'user' | 'bot';
|
|
260
|
+
text: string;
|
|
261
|
+
timestamp: string;
|
|
262
|
+
origin?: string;
|
|
263
|
+
/** Optional user identifier (e.g., Slack user id, GitHub login) */
|
|
264
|
+
user?: string;
|
|
265
|
+
/** File attachments from Slack messages */
|
|
266
|
+
files?: SlackFileAttachment[];
|
|
267
|
+
}
|
|
268
|
+
interface ConversationContext {
|
|
269
|
+
transport: BotTransportType;
|
|
270
|
+
thread: {
|
|
271
|
+
id: string;
|
|
272
|
+
url?: string;
|
|
273
|
+
};
|
|
274
|
+
messages: NormalizedMessage[];
|
|
275
|
+
current: NormalizedMessage;
|
|
276
|
+
attributes: Record<string, string>;
|
|
277
|
+
}
|
|
278
|
+
interface TelegramConfig {
|
|
279
|
+
/** Bot token from @BotFather (or TELEGRAM_BOT_TOKEN env var) */
|
|
280
|
+
bot_token?: string;
|
|
281
|
+
/** Polling timeout in seconds for getUpdates (default: 30) */
|
|
282
|
+
polling_timeout?: number;
|
|
283
|
+
/** Chat/group allowlist - numeric chat IDs that the bot responds in */
|
|
284
|
+
chat_allowlist?: (string | number)[];
|
|
285
|
+
/** In groups, only respond when @mentioned or replied to (default: true) */
|
|
286
|
+
require_mention?: boolean;
|
|
287
|
+
/** Workflow to run when a message is received */
|
|
288
|
+
workflow?: string;
|
|
289
|
+
}
|
|
290
|
+
interface EmailConfig {
|
|
291
|
+
/** Receive backend configuration */
|
|
292
|
+
receive?: {
|
|
293
|
+
/** Backend type: 'imap' (universal) or 'resend' (managed webhook) */
|
|
294
|
+
type?: 'imap' | 'resend';
|
|
295
|
+
/** IMAP server hostname */
|
|
296
|
+
host?: string;
|
|
297
|
+
/** IMAP server port (default: 993) */
|
|
298
|
+
port?: number;
|
|
299
|
+
/** IMAP auth credentials */
|
|
300
|
+
auth?: {
|
|
301
|
+
user?: string;
|
|
302
|
+
pass?: string;
|
|
303
|
+
};
|
|
304
|
+
/** Use TLS (default: true) */
|
|
305
|
+
secure?: boolean;
|
|
306
|
+
/** Polling interval in seconds when IDLE not available (default: 30) */
|
|
307
|
+
poll_interval?: number;
|
|
308
|
+
/** IMAP folder to monitor (default: 'INBOX') */
|
|
309
|
+
folder?: string;
|
|
310
|
+
/** Mark processed messages as read (default: true) */
|
|
311
|
+
mark_read?: boolean;
|
|
312
|
+
/** Resend API key (for type: 'resend') */
|
|
313
|
+
api_key?: string;
|
|
314
|
+
/** Resend webhook secret for signature verification */
|
|
315
|
+
webhook_secret?: string;
|
|
316
|
+
};
|
|
317
|
+
/** Send backend configuration */
|
|
318
|
+
send?: {
|
|
319
|
+
/** Backend type: 'smtp' (universal) or 'resend' (managed API) */
|
|
320
|
+
type?: 'smtp' | 'resend';
|
|
321
|
+
/** SMTP server hostname */
|
|
322
|
+
host?: string;
|
|
323
|
+
/** SMTP server port (default: 587) */
|
|
324
|
+
port?: number;
|
|
325
|
+
/** SMTP auth credentials */
|
|
326
|
+
auth?: {
|
|
327
|
+
user?: string;
|
|
328
|
+
pass?: string;
|
|
329
|
+
};
|
|
330
|
+
/** Use TLS (default: true) */
|
|
331
|
+
secure?: boolean;
|
|
332
|
+
/** Default sender address (e.g., "Bot <bot@example.com>") */
|
|
333
|
+
from?: string;
|
|
334
|
+
/** Resend API key (for type: 'resend') */
|
|
335
|
+
api_key?: string;
|
|
336
|
+
};
|
|
337
|
+
/** Only process emails from these senders */
|
|
338
|
+
allowlist?: string[];
|
|
339
|
+
/** Workflow to run when an email is received */
|
|
340
|
+
workflow?: string;
|
|
341
|
+
}
|
|
342
|
+
interface WhatsAppConfig {
|
|
343
|
+
/** WhatsApp Cloud API access token (or WHATSAPP_ACCESS_TOKEN env var) */
|
|
344
|
+
access_token?: string;
|
|
345
|
+
/** Phone Number ID from Meta Business Suite (or WHATSAPP_PHONE_NUMBER_ID env var) */
|
|
346
|
+
phone_number_id?: string;
|
|
347
|
+
/** Meta App Secret for webhook signature verification (or WHATSAPP_APP_SECRET env var) */
|
|
348
|
+
app_secret?: string;
|
|
349
|
+
/** Verify token for webhook subscription challenge (or WHATSAPP_VERIFY_TOKEN env var) */
|
|
350
|
+
verify_token?: string;
|
|
351
|
+
/** Graph API version (default: 'v21.0') */
|
|
352
|
+
api_version?: string;
|
|
353
|
+
/** Port for webhook HTTP server (default: 8443) */
|
|
354
|
+
port?: number;
|
|
355
|
+
/** Host for webhook HTTP server (default: '0.0.0.0') */
|
|
356
|
+
host?: string;
|
|
357
|
+
/** Phone number allowlist — only respond to these numbers */
|
|
358
|
+
phone_allowlist?: string[];
|
|
359
|
+
/** Workflow to run when a message is received */
|
|
360
|
+
workflow?: string;
|
|
361
|
+
}
|
|
362
|
+
interface TeamsConfig {
|
|
363
|
+
/** Azure AD App (client) ID (or TEAMS_APP_ID env var) */
|
|
364
|
+
app_id?: string;
|
|
365
|
+
/** Azure AD App client secret (or TEAMS_APP_PASSWORD env var) */
|
|
366
|
+
app_password?: string;
|
|
367
|
+
/** Azure AD Tenant ID for single-tenant apps (or TEAMS_TENANT_ID env var) */
|
|
368
|
+
tenant_id?: string;
|
|
369
|
+
/** Port for webhook HTTP server (default: 3978) */
|
|
370
|
+
port?: number;
|
|
371
|
+
/** Host for webhook HTTP server (default: '0.0.0.0') */
|
|
372
|
+
host?: string;
|
|
373
|
+
/** User ID allowlist — only respond to these AAD user IDs */
|
|
374
|
+
user_allowlist?: string[];
|
|
375
|
+
/** Workflow to run when a message is received */
|
|
376
|
+
workflow?: string;
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
/**
|
|
380
|
+
* Types for Visor configuration system
|
|
381
|
+
*/
|
|
382
|
+
|
|
379
383
|
/**
|
|
380
384
|
* Failure condition severity levels
|
|
381
385
|
*/
|
package/dist/sdk/sdk.d.ts
CHANGED
|
@@ -1,136 +1,3 @@
|
|
|
1
|
-
/** Bot transport types (trimmed for Slack v1) */
|
|
2
|
-
type BotTransportType = 'slack' | 'telegram' | 'whatsapp' | 'teams' | string;
|
|
3
|
-
/** Slack file attachment metadata */
|
|
4
|
-
interface SlackFileAttachment {
|
|
5
|
-
id: string;
|
|
6
|
-
name?: string;
|
|
7
|
-
mimetype?: string;
|
|
8
|
-
filetype?: string;
|
|
9
|
-
url_private?: string;
|
|
10
|
-
permalink?: string;
|
|
11
|
-
size?: number;
|
|
12
|
-
}
|
|
13
|
-
interface NormalizedMessage {
|
|
14
|
-
role: 'user' | 'bot';
|
|
15
|
-
text: string;
|
|
16
|
-
timestamp: string;
|
|
17
|
-
origin?: string;
|
|
18
|
-
/** Optional user identifier (e.g., Slack user id, GitHub login) */
|
|
19
|
-
user?: string;
|
|
20
|
-
/** File attachments from Slack messages */
|
|
21
|
-
files?: SlackFileAttachment[];
|
|
22
|
-
}
|
|
23
|
-
interface ConversationContext {
|
|
24
|
-
transport: BotTransportType;
|
|
25
|
-
thread: {
|
|
26
|
-
id: string;
|
|
27
|
-
url?: string;
|
|
28
|
-
};
|
|
29
|
-
messages: NormalizedMessage[];
|
|
30
|
-
current: NormalizedMessage;
|
|
31
|
-
attributes: Record<string, string>;
|
|
32
|
-
}
|
|
33
|
-
interface TelegramConfig {
|
|
34
|
-
/** Bot token from @BotFather (or TELEGRAM_BOT_TOKEN env var) */
|
|
35
|
-
bot_token?: string;
|
|
36
|
-
/** Polling timeout in seconds for getUpdates (default: 30) */
|
|
37
|
-
polling_timeout?: number;
|
|
38
|
-
/** Chat/group allowlist - numeric chat IDs that the bot responds in */
|
|
39
|
-
chat_allowlist?: (string | number)[];
|
|
40
|
-
/** In groups, only respond when @mentioned or replied to (default: true) */
|
|
41
|
-
require_mention?: boolean;
|
|
42
|
-
/** Workflow to run when a message is received */
|
|
43
|
-
workflow?: string;
|
|
44
|
-
}
|
|
45
|
-
interface EmailConfig {
|
|
46
|
-
/** Receive backend configuration */
|
|
47
|
-
receive?: {
|
|
48
|
-
/** Backend type: 'imap' (universal) or 'resend' (managed webhook) */
|
|
49
|
-
type?: 'imap' | 'resend';
|
|
50
|
-
/** IMAP server hostname */
|
|
51
|
-
host?: string;
|
|
52
|
-
/** IMAP server port (default: 993) */
|
|
53
|
-
port?: number;
|
|
54
|
-
/** IMAP auth credentials */
|
|
55
|
-
auth?: {
|
|
56
|
-
user?: string;
|
|
57
|
-
pass?: string;
|
|
58
|
-
};
|
|
59
|
-
/** Use TLS (default: true) */
|
|
60
|
-
secure?: boolean;
|
|
61
|
-
/** Polling interval in seconds when IDLE not available (default: 30) */
|
|
62
|
-
poll_interval?: number;
|
|
63
|
-
/** IMAP folder to monitor (default: 'INBOX') */
|
|
64
|
-
folder?: string;
|
|
65
|
-
/** Mark processed messages as read (default: true) */
|
|
66
|
-
mark_read?: boolean;
|
|
67
|
-
/** Resend API key (for type: 'resend') */
|
|
68
|
-
api_key?: string;
|
|
69
|
-
/** Resend webhook secret for signature verification */
|
|
70
|
-
webhook_secret?: string;
|
|
71
|
-
};
|
|
72
|
-
/** Send backend configuration */
|
|
73
|
-
send?: {
|
|
74
|
-
/** Backend type: 'smtp' (universal) or 'resend' (managed API) */
|
|
75
|
-
type?: 'smtp' | 'resend';
|
|
76
|
-
/** SMTP server hostname */
|
|
77
|
-
host?: string;
|
|
78
|
-
/** SMTP server port (default: 587) */
|
|
79
|
-
port?: number;
|
|
80
|
-
/** SMTP auth credentials */
|
|
81
|
-
auth?: {
|
|
82
|
-
user?: string;
|
|
83
|
-
pass?: string;
|
|
84
|
-
};
|
|
85
|
-
/** Use TLS (default: true) */
|
|
86
|
-
secure?: boolean;
|
|
87
|
-
/** Default sender address (e.g., "Bot <bot@example.com>") */
|
|
88
|
-
from?: string;
|
|
89
|
-
/** Resend API key (for type: 'resend') */
|
|
90
|
-
api_key?: string;
|
|
91
|
-
};
|
|
92
|
-
/** Only process emails from these senders */
|
|
93
|
-
allowlist?: string[];
|
|
94
|
-
/** Workflow to run when an email is received */
|
|
95
|
-
workflow?: string;
|
|
96
|
-
}
|
|
97
|
-
interface WhatsAppConfig {
|
|
98
|
-
/** WhatsApp Cloud API access token (or WHATSAPP_ACCESS_TOKEN env var) */
|
|
99
|
-
access_token?: string;
|
|
100
|
-
/** Phone Number ID from Meta Business Suite (or WHATSAPP_PHONE_NUMBER_ID env var) */
|
|
101
|
-
phone_number_id?: string;
|
|
102
|
-
/** Meta App Secret for webhook signature verification (or WHATSAPP_APP_SECRET env var) */
|
|
103
|
-
app_secret?: string;
|
|
104
|
-
/** Verify token for webhook subscription challenge (or WHATSAPP_VERIFY_TOKEN env var) */
|
|
105
|
-
verify_token?: string;
|
|
106
|
-
/** Graph API version (default: 'v21.0') */
|
|
107
|
-
api_version?: string;
|
|
108
|
-
/** Port for webhook HTTP server (default: 8443) */
|
|
109
|
-
port?: number;
|
|
110
|
-
/** Host for webhook HTTP server (default: '0.0.0.0') */
|
|
111
|
-
host?: string;
|
|
112
|
-
/** Phone number allowlist — only respond to these numbers */
|
|
113
|
-
phone_allowlist?: string[];
|
|
114
|
-
/** Workflow to run when a message is received */
|
|
115
|
-
workflow?: string;
|
|
116
|
-
}
|
|
117
|
-
interface TeamsConfig {
|
|
118
|
-
/** Azure AD App (client) ID (or TEAMS_APP_ID env var) */
|
|
119
|
-
app_id?: string;
|
|
120
|
-
/** Azure AD App client secret (or TEAMS_APP_PASSWORD env var) */
|
|
121
|
-
app_password?: string;
|
|
122
|
-
/** Azure AD Tenant ID for single-tenant apps (or TEAMS_TENANT_ID env var) */
|
|
123
|
-
tenant_id?: string;
|
|
124
|
-
/** Port for webhook HTTP server (default: 3978) */
|
|
125
|
-
port?: number;
|
|
126
|
-
/** Host for webhook HTTP server (default: '0.0.0.0') */
|
|
127
|
-
host?: string;
|
|
128
|
-
/** User ID allowlist — only respond to these AAD user IDs */
|
|
129
|
-
user_allowlist?: string[];
|
|
130
|
-
/** Workflow to run when a message is received */
|
|
131
|
-
workflow?: string;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
1
|
interface AIDebugInfo {
|
|
135
2
|
/** The prompt sent to the AI */
|
|
136
3
|
prompt: string;
|
|
@@ -376,6 +243,143 @@ interface AgentProtocolConfig {
|
|
|
376
243
|
queue?: AgentProtocolQueueConfig;
|
|
377
244
|
}
|
|
378
245
|
|
|
246
|
+
/** Bot transport types (trimmed for Slack v1) */
|
|
247
|
+
type BotTransportType = 'slack' | 'telegram' | 'whatsapp' | 'teams' | string;
|
|
248
|
+
/** Slack file attachment metadata */
|
|
249
|
+
interface SlackFileAttachment {
|
|
250
|
+
id: string;
|
|
251
|
+
name?: string;
|
|
252
|
+
mimetype?: string;
|
|
253
|
+
filetype?: string;
|
|
254
|
+
url_private?: string;
|
|
255
|
+
permalink?: string;
|
|
256
|
+
size?: number;
|
|
257
|
+
}
|
|
258
|
+
interface NormalizedMessage {
|
|
259
|
+
role: 'user' | 'bot';
|
|
260
|
+
text: string;
|
|
261
|
+
timestamp: string;
|
|
262
|
+
origin?: string;
|
|
263
|
+
/** Optional user identifier (e.g., Slack user id, GitHub login) */
|
|
264
|
+
user?: string;
|
|
265
|
+
/** File attachments from Slack messages */
|
|
266
|
+
files?: SlackFileAttachment[];
|
|
267
|
+
}
|
|
268
|
+
interface ConversationContext {
|
|
269
|
+
transport: BotTransportType;
|
|
270
|
+
thread: {
|
|
271
|
+
id: string;
|
|
272
|
+
url?: string;
|
|
273
|
+
};
|
|
274
|
+
messages: NormalizedMessage[];
|
|
275
|
+
current: NormalizedMessage;
|
|
276
|
+
attributes: Record<string, string>;
|
|
277
|
+
}
|
|
278
|
+
interface TelegramConfig {
|
|
279
|
+
/** Bot token from @BotFather (or TELEGRAM_BOT_TOKEN env var) */
|
|
280
|
+
bot_token?: string;
|
|
281
|
+
/** Polling timeout in seconds for getUpdates (default: 30) */
|
|
282
|
+
polling_timeout?: number;
|
|
283
|
+
/** Chat/group allowlist - numeric chat IDs that the bot responds in */
|
|
284
|
+
chat_allowlist?: (string | number)[];
|
|
285
|
+
/** In groups, only respond when @mentioned or replied to (default: true) */
|
|
286
|
+
require_mention?: boolean;
|
|
287
|
+
/** Workflow to run when a message is received */
|
|
288
|
+
workflow?: string;
|
|
289
|
+
}
|
|
290
|
+
interface EmailConfig {
|
|
291
|
+
/** Receive backend configuration */
|
|
292
|
+
receive?: {
|
|
293
|
+
/** Backend type: 'imap' (universal) or 'resend' (managed webhook) */
|
|
294
|
+
type?: 'imap' | 'resend';
|
|
295
|
+
/** IMAP server hostname */
|
|
296
|
+
host?: string;
|
|
297
|
+
/** IMAP server port (default: 993) */
|
|
298
|
+
port?: number;
|
|
299
|
+
/** IMAP auth credentials */
|
|
300
|
+
auth?: {
|
|
301
|
+
user?: string;
|
|
302
|
+
pass?: string;
|
|
303
|
+
};
|
|
304
|
+
/** Use TLS (default: true) */
|
|
305
|
+
secure?: boolean;
|
|
306
|
+
/** Polling interval in seconds when IDLE not available (default: 30) */
|
|
307
|
+
poll_interval?: number;
|
|
308
|
+
/** IMAP folder to monitor (default: 'INBOX') */
|
|
309
|
+
folder?: string;
|
|
310
|
+
/** Mark processed messages as read (default: true) */
|
|
311
|
+
mark_read?: boolean;
|
|
312
|
+
/** Resend API key (for type: 'resend') */
|
|
313
|
+
api_key?: string;
|
|
314
|
+
/** Resend webhook secret for signature verification */
|
|
315
|
+
webhook_secret?: string;
|
|
316
|
+
};
|
|
317
|
+
/** Send backend configuration */
|
|
318
|
+
send?: {
|
|
319
|
+
/** Backend type: 'smtp' (universal) or 'resend' (managed API) */
|
|
320
|
+
type?: 'smtp' | 'resend';
|
|
321
|
+
/** SMTP server hostname */
|
|
322
|
+
host?: string;
|
|
323
|
+
/** SMTP server port (default: 587) */
|
|
324
|
+
port?: number;
|
|
325
|
+
/** SMTP auth credentials */
|
|
326
|
+
auth?: {
|
|
327
|
+
user?: string;
|
|
328
|
+
pass?: string;
|
|
329
|
+
};
|
|
330
|
+
/** Use TLS (default: true) */
|
|
331
|
+
secure?: boolean;
|
|
332
|
+
/** Default sender address (e.g., "Bot <bot@example.com>") */
|
|
333
|
+
from?: string;
|
|
334
|
+
/** Resend API key (for type: 'resend') */
|
|
335
|
+
api_key?: string;
|
|
336
|
+
};
|
|
337
|
+
/** Only process emails from these senders */
|
|
338
|
+
allowlist?: string[];
|
|
339
|
+
/** Workflow to run when an email is received */
|
|
340
|
+
workflow?: string;
|
|
341
|
+
}
|
|
342
|
+
interface WhatsAppConfig {
|
|
343
|
+
/** WhatsApp Cloud API access token (or WHATSAPP_ACCESS_TOKEN env var) */
|
|
344
|
+
access_token?: string;
|
|
345
|
+
/** Phone Number ID from Meta Business Suite (or WHATSAPP_PHONE_NUMBER_ID env var) */
|
|
346
|
+
phone_number_id?: string;
|
|
347
|
+
/** Meta App Secret for webhook signature verification (or WHATSAPP_APP_SECRET env var) */
|
|
348
|
+
app_secret?: string;
|
|
349
|
+
/** Verify token for webhook subscription challenge (or WHATSAPP_VERIFY_TOKEN env var) */
|
|
350
|
+
verify_token?: string;
|
|
351
|
+
/** Graph API version (default: 'v21.0') */
|
|
352
|
+
api_version?: string;
|
|
353
|
+
/** Port for webhook HTTP server (default: 8443) */
|
|
354
|
+
port?: number;
|
|
355
|
+
/** Host for webhook HTTP server (default: '0.0.0.0') */
|
|
356
|
+
host?: string;
|
|
357
|
+
/** Phone number allowlist — only respond to these numbers */
|
|
358
|
+
phone_allowlist?: string[];
|
|
359
|
+
/** Workflow to run when a message is received */
|
|
360
|
+
workflow?: string;
|
|
361
|
+
}
|
|
362
|
+
interface TeamsConfig {
|
|
363
|
+
/** Azure AD App (client) ID (or TEAMS_APP_ID env var) */
|
|
364
|
+
app_id?: string;
|
|
365
|
+
/** Azure AD App client secret (or TEAMS_APP_PASSWORD env var) */
|
|
366
|
+
app_password?: string;
|
|
367
|
+
/** Azure AD Tenant ID for single-tenant apps (or TEAMS_TENANT_ID env var) */
|
|
368
|
+
tenant_id?: string;
|
|
369
|
+
/** Port for webhook HTTP server (default: 3978) */
|
|
370
|
+
port?: number;
|
|
371
|
+
/** Host for webhook HTTP server (default: '0.0.0.0') */
|
|
372
|
+
host?: string;
|
|
373
|
+
/** User ID allowlist — only respond to these AAD user IDs */
|
|
374
|
+
user_allowlist?: string[];
|
|
375
|
+
/** Workflow to run when a message is received */
|
|
376
|
+
workflow?: string;
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
/**
|
|
380
|
+
* Types for Visor configuration system
|
|
381
|
+
*/
|
|
382
|
+
|
|
379
383
|
/**
|
|
380
384
|
* Failure condition severity levels
|
|
381
385
|
*/
|