@interactive-inc/claude-funnel 0.23.1 → 0.25.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/README.md +41 -26
- package/dist/bin.js +372 -355
- package/dist/connectors/slack.d.ts +1 -1
- package/dist/connectors/slack.js +1 -1
- package/dist/gateway/daemon.js +189 -186
- package/dist/index.d.ts +88 -27
- package/dist/index.js +159 -110
- package/dist/{slack-connector-schema-Bi2DyeZw.js → slack-connector-schema-B0NyhxqQ.js} +91 -2
- package/dist/{slack-listener-tQH7cXU7.d.ts → slack-listener-DbNCPMqY.d.ts} +3 -0
- package/funnel.schema.json +41 -19
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { n as discordConnectorSchema, t as DiscordConnectorConfig } from "./disc
|
|
|
3
3
|
import { n as FunnelConnectorListener, r as NotifyFn, t as FunnelLogger } from "./logger-B3aXsVcX.js";
|
|
4
4
|
import { a as FunnelProcessRunner, c as RunResult, i as DetachOptions, n as ghConnectorSchema, o as ProcessSnapshot, r as AttachOptions, s as RunOptions, t as GhConnectorConfig } from "./gh-connector-schema-Cmi57jvL.js";
|
|
5
5
|
import { a as FunnelFileSystem, c as ScheduleEntry, d as scheduleEntrySchema, i as FileStat, l as scheduleCatchupPolicySchema, n as ScheduleOnFired, o as ScheduleCatchupPolicy, s as ScheduleConnectorConfig, u as scheduleConnectorSchema } from "./schedule-listener-CBYF2bGZ.js";
|
|
6
|
-
import { a as SlackProcessed, c as SlackRawEvent, i as FunnelSlackEventProcessor, l as SlackConnectorConfig, n as SlackOnAppCreated, o as SlackProcessedEmit, r as SlackPreprocessEvent, s as SlackProcessedSkip, u as slackConnectorSchema } from "./slack-listener-
|
|
6
|
+
import { a as SlackProcessed, c as SlackRawEvent, i as FunnelSlackEventProcessor, l as SlackConnectorConfig, n as SlackOnAppCreated, o as SlackProcessedEmit, r as SlackPreprocessEvent, s as SlackProcessedSkip, u as slackConnectorSchema } from "./slack-listener-DbNCPMqY.js";
|
|
7
7
|
import { z } from "zod";
|
|
8
8
|
import * as _$hono_factory0 from "hono/factory";
|
|
9
9
|
import { Hono } from "hono";
|
|
@@ -18,6 +18,7 @@ declare const connectorConfigSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
18
18
|
type: z.ZodLiteral<"slack">;
|
|
19
19
|
botToken: z.ZodString;
|
|
20
20
|
appToken: z.ZodString;
|
|
21
|
+
minify: z.ZodDefault<z.ZodBoolean>;
|
|
21
22
|
createdAt: z.ZodOptional<z.ZodString>;
|
|
22
23
|
updatedAt: z.ZodOptional<z.ZodString>;
|
|
23
24
|
}, z.core.$strip>, z.ZodObject<{
|
|
@@ -150,15 +151,13 @@ declare const channelConfigSchema: z.ZodObject<{
|
|
|
150
151
|
fanout: "fanout";
|
|
151
152
|
exclusive: "exclusive";
|
|
152
153
|
}>>;
|
|
153
|
-
options: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
154
|
-
env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
155
|
-
resume: z.ZodDefault<z.ZodBoolean>;
|
|
156
154
|
connectors: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
157
155
|
id: z.ZodString;
|
|
158
156
|
name: z.ZodString;
|
|
159
157
|
type: z.ZodLiteral<"slack">;
|
|
160
158
|
botToken: z.ZodString;
|
|
161
159
|
appToken: z.ZodString;
|
|
160
|
+
minify: z.ZodDefault<z.ZodBoolean>;
|
|
162
161
|
createdAt: z.ZodOptional<z.ZodString>;
|
|
163
162
|
updatedAt: z.ZodOptional<z.ZodString>;
|
|
164
163
|
}, z.core.$strip>, z.ZodObject<{
|
|
@@ -199,6 +198,9 @@ declare const profileConfigSchema: z.ZodObject<{
|
|
|
199
198
|
name: z.ZodString;
|
|
200
199
|
path: z.ZodString;
|
|
201
200
|
channelId: z.ZodString;
|
|
201
|
+
options: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
202
|
+
env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
203
|
+
resume: z.ZodDefault<z.ZodBoolean>;
|
|
202
204
|
}, z.core.$strip>;
|
|
203
205
|
type ProfileConfig = z.infer<typeof profileConfigSchema>;
|
|
204
206
|
declare const SETTINGS_VERSION = 1;
|
|
@@ -211,15 +213,13 @@ declare const settingsSchema: z.ZodObject<{
|
|
|
211
213
|
fanout: "fanout";
|
|
212
214
|
exclusive: "exclusive";
|
|
213
215
|
}>>;
|
|
214
|
-
options: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
215
|
-
env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
216
|
-
resume: z.ZodDefault<z.ZodBoolean>;
|
|
217
216
|
connectors: z.ZodDefault<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
218
217
|
id: z.ZodString;
|
|
219
218
|
name: z.ZodString;
|
|
220
219
|
type: z.ZodLiteral<"slack">;
|
|
221
220
|
botToken: z.ZodString;
|
|
222
221
|
appToken: z.ZodString;
|
|
222
|
+
minify: z.ZodDefault<z.ZodBoolean>;
|
|
223
223
|
createdAt: z.ZodOptional<z.ZodString>;
|
|
224
224
|
updatedAt: z.ZodOptional<z.ZodString>;
|
|
225
225
|
}, z.core.$strip>, z.ZodObject<{
|
|
@@ -259,6 +259,9 @@ declare const settingsSchema: z.ZodObject<{
|
|
|
259
259
|
name: z.ZodString;
|
|
260
260
|
path: z.ZodString;
|
|
261
261
|
channelId: z.ZodString;
|
|
262
|
+
options: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
263
|
+
env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
264
|
+
resume: z.ZodDefault<z.ZodBoolean>;
|
|
262
265
|
}, z.core.$strip>>>;
|
|
263
266
|
}, z.core.$strip>;
|
|
264
267
|
type Settings = z.infer<typeof settingsSchema>;
|
|
@@ -286,6 +289,7 @@ type AddConnectorInput = {
|
|
|
286
289
|
name: string;
|
|
287
290
|
botToken: string;
|
|
288
291
|
appToken: string;
|
|
292
|
+
minify?: boolean;
|
|
289
293
|
} | {
|
|
290
294
|
type: "gh";
|
|
291
295
|
name: string;
|
|
@@ -320,14 +324,8 @@ declare class FunnelChannels {
|
|
|
320
324
|
add(input: {
|
|
321
325
|
name: string;
|
|
322
326
|
delivery?: ChannelDeliveryMode;
|
|
323
|
-
options?: string[];
|
|
324
|
-
env?: Record<string, string>;
|
|
325
|
-
resume?: boolean;
|
|
326
327
|
}): ChannelConfig;
|
|
327
328
|
setDelivery(name: string, delivery: ChannelDeliveryMode): void;
|
|
328
|
-
setResume(name: string, resume: boolean): void;
|
|
329
|
-
setOptions(name: string, options: string[]): void;
|
|
330
|
-
setEnv(name: string, env: Record<string, string>): void;
|
|
331
329
|
remove(name: string): void;
|
|
332
330
|
rename(oldName: string, newName: string): void;
|
|
333
331
|
listConnectors(channelName: string): ConnectorConfig[];
|
|
@@ -443,7 +441,10 @@ type LaunchOptions = {
|
|
|
443
441
|
channel: string;
|
|
444
442
|
cwd?: string;
|
|
445
443
|
userArgs?: string[];
|
|
446
|
-
profileName?: string;
|
|
444
|
+
profileName?: string; /** Args prepended to the claude argv (typically a profile's recipe). Defaults to none. */
|
|
445
|
+
options?: string[]; /** Env vars layered under the launched claude process. process.env wins on collision. */
|
|
446
|
+
env?: Record<string, string>; /** Whether to inject a `--session-id`/`--resume` for the (channel, cwd). Defaults to true. */
|
|
447
|
+
resume?: boolean;
|
|
447
448
|
/** Invoked synchronously after the child claude process has been spawned, with its PID.
|
|
448
449
|
* Useful for hosts that need to register the spawned process before it exits
|
|
449
450
|
* (e.g. multi-session registries that track per-claude liveness). */
|
|
@@ -532,6 +533,7 @@ declare const connectorSpecSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
532
533
|
name: z.ZodString;
|
|
533
534
|
botToken: z.ZodOptional<z.ZodString>;
|
|
534
535
|
appToken: z.ZodOptional<z.ZodString>;
|
|
536
|
+
minify: z.ZodOptional<z.ZodBoolean>;
|
|
535
537
|
env: z.ZodOptional<z.ZodObject<{
|
|
536
538
|
botToken: z.ZodOptional<z.ZodString>;
|
|
537
539
|
appToken: z.ZodOptional<z.ZodString>;
|
|
@@ -554,14 +556,12 @@ declare const connectorSpecSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
554
556
|
type ConnectorSpec = z.infer<typeof connectorSpecSchema>;
|
|
555
557
|
declare const channelSpecSchema: z.ZodObject<{
|
|
556
558
|
name: z.ZodString;
|
|
557
|
-
options: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
558
|
-
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
559
|
-
resume: z.ZodOptional<z.ZodBoolean>;
|
|
560
559
|
connectors: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
561
560
|
type: z.ZodLiteral<"slack">;
|
|
562
561
|
name: z.ZodString;
|
|
563
562
|
botToken: z.ZodOptional<z.ZodString>;
|
|
564
563
|
appToken: z.ZodOptional<z.ZodString>;
|
|
564
|
+
minify: z.ZodOptional<z.ZodBoolean>;
|
|
565
565
|
env: z.ZodOptional<z.ZodObject<{
|
|
566
566
|
botToken: z.ZodOptional<z.ZodString>;
|
|
567
567
|
appToken: z.ZodOptional<z.ZodString>;
|
|
@@ -583,18 +583,24 @@ declare const channelSpecSchema: z.ZodObject<{
|
|
|
583
583
|
}, z.core.$strip>], "type">>>;
|
|
584
584
|
}, z.core.$strip>;
|
|
585
585
|
type ChannelSpec = z.infer<typeof channelSpecSchema>;
|
|
586
|
+
declare const profileSpecSchema: z.ZodObject<{
|
|
587
|
+
name: z.ZodString;
|
|
588
|
+
channel: z.ZodString;
|
|
589
|
+
options: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
590
|
+
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
591
|
+
resume: z.ZodOptional<z.ZodBoolean>;
|
|
592
|
+
}, z.core.$strip>;
|
|
593
|
+
type ProfileSpec = z.infer<typeof profileSpecSchema>;
|
|
586
594
|
declare const localConfigSchema: z.ZodObject<{
|
|
587
595
|
$schema: z.ZodOptional<z.ZodString>;
|
|
588
596
|
channels: z.ZodArray<z.ZodObject<{
|
|
589
597
|
name: z.ZodString;
|
|
590
|
-
options: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
591
|
-
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
592
|
-
resume: z.ZodOptional<z.ZodBoolean>;
|
|
593
598
|
connectors: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
594
599
|
type: z.ZodLiteral<"slack">;
|
|
595
600
|
name: z.ZodString;
|
|
596
601
|
botToken: z.ZodOptional<z.ZodString>;
|
|
597
602
|
appToken: z.ZodOptional<z.ZodString>;
|
|
603
|
+
minify: z.ZodOptional<z.ZodBoolean>;
|
|
598
604
|
env: z.ZodOptional<z.ZodObject<{
|
|
599
605
|
botToken: z.ZodOptional<z.ZodString>;
|
|
600
606
|
appToken: z.ZodOptional<z.ZodString>;
|
|
@@ -615,6 +621,13 @@ declare const localConfigSchema: z.ZodObject<{
|
|
|
615
621
|
name: z.ZodString;
|
|
616
622
|
}, z.core.$strip>], "type">>>;
|
|
617
623
|
}, z.core.$strip>>;
|
|
624
|
+
profiles: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
625
|
+
name: z.ZodString;
|
|
626
|
+
channel: z.ZodString;
|
|
627
|
+
options: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
628
|
+
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
629
|
+
resume: z.ZodOptional<z.ZodBoolean>;
|
|
630
|
+
}, z.core.$strip>>>;
|
|
618
631
|
}, z.core.$strip>;
|
|
619
632
|
type LocalConfig = z.infer<typeof localConfigSchema>;
|
|
620
633
|
declare const LOCAL_CONFIG_FILENAME = "funnel.json";
|
|
@@ -707,9 +720,10 @@ type Deps$8 = {
|
|
|
707
720
|
};
|
|
708
721
|
/**
|
|
709
722
|
* Named launch presets for `fnl claude`. Each profile bundles a working
|
|
710
|
-
* directory,
|
|
711
|
-
*
|
|
712
|
-
*
|
|
723
|
+
* directory, the channel id its Claude instance subscribes to, and the launch
|
|
724
|
+
* recipe (`options` prepended to the claude argv, `env` layered under the
|
|
725
|
+
* process, `resume` toggling session reuse). Implements ProfileChannelChecker
|
|
726
|
+
* so FunnelChannels can refuse to remove a channel that is still referenced.
|
|
713
727
|
*
|
|
714
728
|
* The first entry in the persisted array is treated as the default profile;
|
|
715
729
|
* `asDefault` reorders the array to put a named profile first.
|
|
@@ -723,7 +737,14 @@ declare class FunnelProfiles {
|
|
|
723
737
|
list(): ProfileConfig[];
|
|
724
738
|
get(name: string): ProfileConfig | null;
|
|
725
739
|
getDefault(): ProfileConfig | null;
|
|
726
|
-
add(
|
|
740
|
+
add(input: {
|
|
741
|
+
name: string;
|
|
742
|
+
path: string;
|
|
743
|
+
channelId: string;
|
|
744
|
+
options?: string[];
|
|
745
|
+
env?: Record<string, string>;
|
|
746
|
+
resume?: boolean;
|
|
747
|
+
}): void;
|
|
727
748
|
remove(name: string): void;
|
|
728
749
|
rename(oldName: string, newName: string): void;
|
|
729
750
|
asDefault(name: string): void;
|
|
@@ -1473,8 +1494,8 @@ declare const startChannelServer: (options?: ChannelServerOptions) => Promise<vo
|
|
|
1473
1494
|
/**
|
|
1474
1495
|
* Generates the JSON Schema (draft 2020-12) for `funnel.json`. Useful for
|
|
1475
1496
|
* `$schema` references in committed `funnel.json` files so editors can give
|
|
1476
|
-
* autocomplete and validation for
|
|
1477
|
-
* without anyone hand-maintaining a separate schema.
|
|
1497
|
+
* autocomplete and validation for channels[] (transport) and profiles[]
|
|
1498
|
+
* (launch recipe) without anyone hand-maintaining a separate schema.
|
|
1478
1499
|
*/
|
|
1479
1500
|
declare const funnelJsonSchema: () => Record<string, unknown>;
|
|
1480
1501
|
//#endregion
|
|
@@ -2530,6 +2551,11 @@ declare const createCliApp: (funnel: Funnel) => _$hono_hono_base0.HonoBase<Env,
|
|
|
2530
2551
|
query: {
|
|
2531
2552
|
path: string;
|
|
2532
2553
|
channel: string;
|
|
2554
|
+
agent?: string | undefined;
|
|
2555
|
+
options?: string | undefined;
|
|
2556
|
+
env?: string | undefined;
|
|
2557
|
+
resume?: string | undefined;
|
|
2558
|
+
"no-resume"?: string | undefined;
|
|
2533
2559
|
};
|
|
2534
2560
|
};
|
|
2535
2561
|
output: string;
|
|
@@ -2544,6 +2570,11 @@ declare const createCliApp: (funnel: Funnel) => _$hono_hono_base0.HonoBase<Env,
|
|
|
2544
2570
|
query: {
|
|
2545
2571
|
path: string;
|
|
2546
2572
|
channel: string;
|
|
2573
|
+
agent?: string | undefined;
|
|
2574
|
+
options?: string | undefined;
|
|
2575
|
+
env?: string | undefined;
|
|
2576
|
+
resume?: string | undefined;
|
|
2577
|
+
"no-resume"?: string | undefined;
|
|
2547
2578
|
};
|
|
2548
2579
|
};
|
|
2549
2580
|
output: `added profile "${string}"`;
|
|
@@ -2571,6 +2602,11 @@ declare const createCliApp: (funnel: Funnel) => _$hono_hono_base0.HonoBase<Env,
|
|
|
2571
2602
|
query: {
|
|
2572
2603
|
path?: string | undefined;
|
|
2573
2604
|
channel?: string | undefined;
|
|
2605
|
+
agent?: string | undefined;
|
|
2606
|
+
options?: string | undefined;
|
|
2607
|
+
env?: string | undefined;
|
|
2608
|
+
resume?: string | undefined;
|
|
2609
|
+
"no-resume"?: string | undefined;
|
|
2574
2610
|
};
|
|
2575
2611
|
};
|
|
2576
2612
|
output: string;
|
|
@@ -2585,6 +2621,11 @@ declare const createCliApp: (funnel: Funnel) => _$hono_hono_base0.HonoBase<Env,
|
|
|
2585
2621
|
query: {
|
|
2586
2622
|
path?: string | undefined;
|
|
2587
2623
|
channel?: string | undefined;
|
|
2624
|
+
agent?: string | undefined;
|
|
2625
|
+
options?: string | undefined;
|
|
2626
|
+
env?: string | undefined;
|
|
2627
|
+
resume?: string | undefined;
|
|
2628
|
+
"no-resume"?: string | undefined;
|
|
2588
2629
|
};
|
|
2589
2630
|
};
|
|
2590
2631
|
output: `updated profile "${string}"`;
|
|
@@ -3811,6 +3852,11 @@ declare const app: _$hono_hono_base0.HonoBase<Env, {
|
|
|
3811
3852
|
query: {
|
|
3812
3853
|
path: string;
|
|
3813
3854
|
channel: string;
|
|
3855
|
+
agent?: string | undefined;
|
|
3856
|
+
options?: string | undefined;
|
|
3857
|
+
env?: string | undefined;
|
|
3858
|
+
resume?: string | undefined;
|
|
3859
|
+
"no-resume"?: string | undefined;
|
|
3814
3860
|
};
|
|
3815
3861
|
};
|
|
3816
3862
|
output: string;
|
|
@@ -3825,6 +3871,11 @@ declare const app: _$hono_hono_base0.HonoBase<Env, {
|
|
|
3825
3871
|
query: {
|
|
3826
3872
|
path: string;
|
|
3827
3873
|
channel: string;
|
|
3874
|
+
agent?: string | undefined;
|
|
3875
|
+
options?: string | undefined;
|
|
3876
|
+
env?: string | undefined;
|
|
3877
|
+
resume?: string | undefined;
|
|
3878
|
+
"no-resume"?: string | undefined;
|
|
3828
3879
|
};
|
|
3829
3880
|
};
|
|
3830
3881
|
output: `added profile "${string}"`;
|
|
@@ -3852,6 +3903,11 @@ declare const app: _$hono_hono_base0.HonoBase<Env, {
|
|
|
3852
3903
|
query: {
|
|
3853
3904
|
path?: string | undefined;
|
|
3854
3905
|
channel?: string | undefined;
|
|
3906
|
+
agent?: string | undefined;
|
|
3907
|
+
options?: string | undefined;
|
|
3908
|
+
env?: string | undefined;
|
|
3909
|
+
resume?: string | undefined;
|
|
3910
|
+
"no-resume"?: string | undefined;
|
|
3855
3911
|
};
|
|
3856
3912
|
};
|
|
3857
3913
|
output: string;
|
|
@@ -3866,6 +3922,11 @@ declare const app: _$hono_hono_base0.HonoBase<Env, {
|
|
|
3866
3922
|
query: {
|
|
3867
3923
|
path?: string | undefined;
|
|
3868
3924
|
channel?: string | undefined;
|
|
3925
|
+
agent?: string | undefined;
|
|
3926
|
+
options?: string | undefined;
|
|
3927
|
+
env?: string | undefined;
|
|
3928
|
+
resume?: string | undefined;
|
|
3929
|
+
"no-resume"?: string | undefined;
|
|
3869
3930
|
};
|
|
3870
3931
|
};
|
|
3871
3932
|
output: `updated profile "${string}"`;
|
|
@@ -4310,4 +4371,4 @@ ${string}`;
|
|
|
4310
4371
|
//#region lib/tui/tui.d.ts
|
|
4311
4372
|
declare function launchTui(funnel: Funnel): Promise<void>;
|
|
4312
4373
|
//#endregion
|
|
4313
|
-
export { AliveStub, AttachOptions, BroadcastEvent, BroadcastSubscriber, ChannelConfig, ChannelConnectorView, ChannelDeliveryMode, ChannelServerOptions, ChannelSpec, ConnectorConfig, ConnectorSpec, ConnectorSyncOutcome, ConnectorType, DEFAULT_GATEWAY_TOKEN_PATH, DetachOptions, DiscordConnectorConfig, Env, FUNNEL_DIR, FUNNEL_MCP_COMMAND, FUNNEL_MCP_NAME, FileStat, Funnel, FunnelBroadcaster, FunnelChannelPublisher, FunnelChannels, FunnelClaude, FunnelClock, FunnelConnectorFactory, FunnelConnectorListener, FunnelDotenvReader, FunnelEvent, FunnelEventStore, FunnelFileSystem, FunnelGateway, FunnelGatewayServer, FunnelGatewayToken, FunnelIdGenerator, FunnelListenerSupervisor, FunnelListenersClient, FunnelLocalConfig, FunnelLocalConfigSync, FunnelLogger, FunnelMcp, FunnelProcessRunner, FunnelProfiles, FunnelSessions, FunnelSettingsReader, FunnelSettingsStore, FunnelSlackEventProcessor, FunnelTokenPrompter, type GatewayEmitInput, type GatewayRouteDeps, type Env$1 as GatewayServerEnv, GhConnectorConfig, LOCAL_CONFIG_FILENAME, LOCAL_ENV_FILENAME, LaunchOptions, ListListenersResult, ListenerEntry, ListenerOpResult, LocalConfig, LocalConfigSyncResult, LogEntry, MemoryFunnelClock, MemoryFunnelFileSystem, MemoryFunnelIdGenerator, MemoryFunnelLogger, MemoryFunnelProcessRunner, MemoryFunnelTokenPrompter, MemoryProcessCall, MemoryProcessHandler, MemoryProcessResponse, MemoryProcessSyncHandler, MockFunnelSettingsReader, NodeFunnelClock, NodeFunnelFileSystem, NodeFunnelIdGenerator, NodeFunnelLogger, NodeFunnelProcessRunner, NodeFunnelTokenPrompter, NoopFunnelLogger, NotifyFn, OnFunnelError, ProcessListStub, ProcessSnapshot, ProfileConfig, PublishRequest, PublishResponse, PublishResult, ReplayableEvent, RunOptions, RunResult, SETTINGS_PATH, SETTINGS_VERSION, ScheduleCatchupPolicy, ScheduleConnectorConfig, ScheduleEntry, ScheduleListenerOptions, Settings, SlackConnectorConfig, SlackListenerOptions, SlackProcessed, SlackProcessedEmit, SlackProcessedSkip, SlackRawEvent, channelConfigSchema, channelDeliveryModeSchema, channelSpecSchema, app as cliApp, connectorConfigSchema, connectorSpecSchema, createCliApp, createSettings, discordConnectorSchema, factory, funnelEventSchema, funnelJsonSchema, ghConnectorSchema, launchTui, localConfigSchema, profileConfigSchema, publishRequestSchema, publishResponseSchema, queryToCliArgs, scheduleCatchupPolicySchema, scheduleConnectorSchema, scheduleEntrySchema, settingsSchema, slackConnectorSchema, startChannelServer, toRequest };
|
|
4374
|
+
export { AliveStub, AttachOptions, BroadcastEvent, BroadcastSubscriber, ChannelConfig, ChannelConnectorView, ChannelDeliveryMode, ChannelServerOptions, ChannelSpec, ConnectorConfig, ConnectorSpec, ConnectorSyncOutcome, ConnectorType, DEFAULT_GATEWAY_TOKEN_PATH, DetachOptions, DiscordConnectorConfig, Env, FUNNEL_DIR, FUNNEL_MCP_COMMAND, FUNNEL_MCP_NAME, FileStat, Funnel, FunnelBroadcaster, FunnelChannelPublisher, FunnelChannels, FunnelClaude, FunnelClock, FunnelConnectorFactory, FunnelConnectorListener, FunnelDotenvReader, FunnelEvent, FunnelEventStore, FunnelFileSystem, FunnelGateway, FunnelGatewayServer, FunnelGatewayToken, FunnelIdGenerator, FunnelListenerSupervisor, FunnelListenersClient, FunnelLocalConfig, FunnelLocalConfigSync, FunnelLogger, FunnelMcp, FunnelProcessRunner, FunnelProfiles, FunnelSessions, FunnelSettingsReader, FunnelSettingsStore, FunnelSlackEventProcessor, FunnelTokenPrompter, type GatewayEmitInput, type GatewayRouteDeps, type Env$1 as GatewayServerEnv, GhConnectorConfig, LOCAL_CONFIG_FILENAME, LOCAL_ENV_FILENAME, LaunchOptions, ListListenersResult, ListenerEntry, ListenerOpResult, LocalConfig, LocalConfigSyncResult, LogEntry, MemoryFunnelClock, MemoryFunnelFileSystem, MemoryFunnelIdGenerator, MemoryFunnelLogger, MemoryFunnelProcessRunner, MemoryFunnelTokenPrompter, MemoryProcessCall, MemoryProcessHandler, MemoryProcessResponse, MemoryProcessSyncHandler, MockFunnelSettingsReader, NodeFunnelClock, NodeFunnelFileSystem, NodeFunnelIdGenerator, NodeFunnelLogger, NodeFunnelProcessRunner, NodeFunnelTokenPrompter, NoopFunnelLogger, NotifyFn, OnFunnelError, ProcessListStub, ProcessSnapshot, ProfileConfig, ProfileSpec, PublishRequest, PublishResponse, PublishResult, ReplayableEvent, RunOptions, RunResult, SETTINGS_PATH, SETTINGS_VERSION, ScheduleCatchupPolicy, ScheduleConnectorConfig, ScheduleEntry, ScheduleListenerOptions, Settings, SlackConnectorConfig, SlackListenerOptions, SlackProcessed, SlackProcessedEmit, SlackProcessedSkip, SlackRawEvent, channelConfigSchema, channelDeliveryModeSchema, channelSpecSchema, app as cliApp, connectorConfigSchema, connectorSpecSchema, createCliApp, createSettings, discordConnectorSchema, factory, funnelEventSchema, funnelJsonSchema, ghConnectorSchema, launchTui, localConfigSchema, profileConfigSchema, profileSpecSchema, publishRequestSchema, publishResponseSchema, queryToCliArgs, scheduleCatchupPolicySchema, scheduleConnectorSchema, scheduleEntrySchema, settingsSchema, slackConnectorSchema, startChannelServer, toRequest };
|