@interactive-inc/claude-funnel 0.65.0 → 0.67.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 +8 -4
- package/dist/bin.js +275 -372
- package/dist/channel.d.ts +185 -0
- package/dist/channel.js +238 -0
- package/dist/{channels-CRGb6B5_.d.ts → channels-BBA3GTAa.d.ts} +5 -5
- package/dist/claude.d.ts +11 -8
- package/dist/claude.js +31 -15
- package/dist/{connector-descriptor-BFIhyTfa.d.ts → connector-descriptor-F75ZI8Fh.d.ts} +27 -39
- package/dist/{connector-diagnostics-recorder-COtNEmUp.js → connector-diagnostics-recorder-BmOijU1p.js} +1 -0
- package/dist/connectors/discord.d.ts +10 -7
- package/dist/connectors/discord.js +2 -2
- package/dist/connectors/gh.d.ts +6 -5
- package/dist/connectors/gh.js +2 -2
- package/dist/connectors/schedule.d.ts +10 -7
- package/dist/connectors/schedule.js +2 -2
- package/dist/connectors/slack.d.ts +14 -9
- package/dist/connectors/slack.js +3 -3
- package/dist/diagnostics.d.ts +1 -1
- package/dist/diagnostics.js +1 -1
- package/dist/{discord-connector-DXARcO6w.js → discord-connector-CdjwPoty.js} +6 -6
- package/dist/{discord-connector-schema-D-bOVAKt.d.ts → discord-connector-schema-BaBZYHxK.d.ts} +0 -1
- package/dist/docs.d.ts +1 -1
- package/dist/docs.js +1 -1
- package/dist/doctor.d.ts +1 -1
- package/dist/doctor.js +1 -1
- package/dist/{file-process-guard-tVcgckH6.d.ts → file-process-guard-DAYe9Ndt.d.ts} +22 -17
- package/dist/{file-system-VhwwXZbm.d.ts → file-system-BNtl997T.d.ts} +2 -1
- package/dist/{flume-source-listener-BNyAII7N.d.ts → flume-source-listener-CLtsdcT2.d.ts} +8 -5
- package/dist/{funnel-diagnostics-Cvk6Sk4x.js → funnel-diagnostics-B-PCuv_E.js} +4 -3
- package/dist/{funnel-diagnostics-b9ar0Ing.d.ts → funnel-diagnostics-CnKus3Jg.d.ts} +8 -5
- package/dist/{funnel-docs-C-ge0MuB.js → funnel-docs-BFcqITFA.js} +4 -0
- package/dist/{funnel-doctor-XrI2GBH8.js → funnel-doctor-Csw5qjcH.js} +1 -0
- package/dist/{funnel-doctor-CnRQi4kM.d.ts → funnel-doctor-CviUTINw.d.ts} +20 -9
- package/dist/{funnel-error-0t1MK1R6.js → funnel-error-DoSBCogD.js} +13 -0
- package/dist/{funnel-log-sqlite-sink-DLYkY0pZ.js → funnel-log-sqlite-sink-CXbs3qQp.js} +1 -1
- package/dist/{funnel-recovery-CMhY8Jfk.d.ts → funnel-recovery-BwcSNNSN.d.ts} +1 -2
- package/dist/{funnel-recovery-DKnEutUS.js → funnel-recovery-DYbSYGWC.js} +1 -0
- package/dist/gateway/daemon.js +66 -125
- package/dist/gateway.d.ts +2 -2
- package/dist/gateway.js +2 -2
- package/dist/{gh-connector-BUGCOEWS.js → gh-connector-D-iyjl-d.js} +5 -5
- package/dist/{gh-connector-schema-DWQaB6gX.d.ts → gh-connector-schema-BrNsCl1T.d.ts} +0 -1
- package/dist/{index-Ds6sHhA-.d.ts → index-B4RvEaW-.d.ts} +78 -46
- package/dist/index.d.ts +115 -107
- package/dist/index.js +123 -32
- package/dist/{local-config-json-schema-DexV8vX3.js → local-config-json-schema-_-YVHX4c.js} +4 -4
- package/dist/local-config.d.ts +2 -3
- package/dist/local-config.js +1 -1
- package/dist/logger-mMZvblTx.d.ts +25 -0
- package/dist/logger.d.ts +29 -13
- package/dist/logger.js +1 -1
- package/dist/{memory-token-prompter-BoV8Hf-n.d.ts → memory-token-prompter-D3R_kgM_.d.ts} +2 -3
- package/dist/{node-file-system-BOXIHW_Q.js → node-file-system-xJx7dymE.js} +11 -3
- package/dist/{profiles-cVZQkM69.d.ts → profiles-CePRnv3F.d.ts} +3 -4
- package/dist/{profiles-ZHLONml4.js → profiles-KpN7_gBw.js} +19 -5
- package/dist/profiles.d.ts +1 -1
- package/dist/profiles.js +1 -1
- package/dist/recovery.d.ts +1 -1
- package/dist/recovery.js +1 -1
- package/dist/{schedule-connector-schema-Z0RXLgPI.d.ts → schedule-connector-schema-DBko_Bf7.d.ts} +0 -1
- package/dist/{schedule-connector-9k3gOIgl.js → schedule-connector-teeDMHUe.js} +5 -5
- package/dist/{settings-reader-BNxjsxCB.d.ts → settings-reader-CyTpbAre.d.ts} +1 -2
- package/dist/{settings-schema-BL_c2Udm.d.ts → settings-schema-B-CKLuST.d.ts} +0 -1
- package/dist/{settings-store-ccv291GV.js → settings-store-ZFWBhOnp.js} +12 -3
- package/dist/{slack-connector-CxpWagbT.js → slack-connector-BE0KAjCs.js} +10 -9
- package/dist/{slack-event-processor-xFDG3US0.js → slack-event-processor-Cs_YuI3w.js} +2 -2
- package/dist/{slack-event-processor-BhCf5Wiy.d.ts → slack-event-processor-DmAlq4cV.d.ts} +0 -1
- package/dist/{slot-fields-D-pvMgTK.js → slot-fields-5ERhytIA.js} +3 -3
- package/dist/{sqlite-diagnostic-log-CwhXE9Qh.js → sqlite-diagnostic-log-BDxfXGZy.js} +42 -19
- package/dist/{yaml-render-DVEtYuF1.js → yaml-render-DxxRQT-V.js} +3 -3
- package/package.json +15 -10
- package/dist/file-system-Wvzc2ePY.js +0 -9
- package/dist/logger-B6iyNbxM.js +0 -9
- package/dist/settings-reader-9FcX3qS1.js +0 -11
- /package/dist/{connector-adapter-Dvs8N7ew.js → connector-adapter-BL2ehMej.js} +0 -0
- /package/dist/{connector-listener-mPGZYa8e.js → connector-listener-BcQMzY6Q.js} +0 -0
- /package/dist/{diagnostic-sql-reader-oXZnWFf_.js → diagnostic-sql-reader-CoBk_EFF.js} +0 -0
- /package/dist/{discord-connector-schema-B4YpWpR3.js → discord-connector-schema-saAGuPmJ.js} +0 -0
- /package/dist/{error-message-of-ColuYmAk.js → error-message-of-BG4ezZ_s.js} +0 -0
- /package/dist/{funnel-docs-CNklHvbt.d.ts → funnel-docs-BJWawfWI.d.ts} +0 -0
- /package/dist/{gh-connector-schema-CAqIhzGr.js → gh-connector-schema-DmZTrzUu.js} +0 -0
- /package/dist/{loopback-fetch-CVNuN3YZ.js → loopback-fetch-HP-bo9Kv.js} +0 -0
- /package/dist/{node-http-client-u00atiKx.js → node-http-client-SX3xFh4h.js} +0 -0
- /package/dist/{node-process-runner-DxTvycoK.js → node-process-runner-D4rzPl8Q.js} +0 -0
- /package/dist/{resolve-connector-token-DxDG9mhf.js → resolve-connector-token-BwiJCu82.js} +0 -0
- /package/dist/{schedule-connector-schema-DKEPZnVv.js → schedule-connector-schema-C2AChpwX.js} +0 -0
- /package/dist/{slack-connector-schema-Dem8to4P.js → slack-connector-schema-EGVuuqSX.js} +0 -0
package/README.md
CHANGED
|
@@ -97,7 +97,7 @@ profiles は起動レシピ。各プロファイルは一意な `name` を持ち
|
|
|
97
97
|
|
|
98
98
|
`funnel.json` に書けないものが 2 つある。delivery モード(fanout / exclusive)は CLI で設定する(`funnel.json` のチャネルは fanout 固定)。schedule の cron エントリも CLI で足す(`funnel.json` には schedule コネクタの存在だけ宣言できる)。
|
|
99
99
|
|
|
100
|
-
セッション再開には `resume` の明示が要る。`funnel.json` の `resume` はデフォルト値を持たず、書かないと再開されない(未指定が false 扱いになる)。前回の claude セッションを引き継ぎたいなら必ず `"resume": true` を書く。再開のための session id は funnel が `~/.funnel/projects/<id>/
|
|
100
|
+
セッション再開には `resume` の明示が要る。`funnel.json` の `resume` はデフォルト値を持たず、書かないと再開されない(未指定が false 扱いになる)。前回の claude セッションを引き継ぎたいなら必ず `"resume": true` を書く。再開のための session id は funnel が `~/.funnel/projects/<id>/claude/local-sessions.json` に自動で保存・読み出しするので、`funnel.json` には書かない。
|
|
101
101
|
|
|
102
102
|
### 使い方
|
|
103
103
|
|
|
@@ -300,7 +300,8 @@ Settings = { channels[], profiles[] } → ~/.funnel/settings.j
|
|
|
300
300
|
├── gateway.pid デーモン PID
|
|
301
301
|
├── gateway.token デーモン HTTP / WS の Bearer token
|
|
302
302
|
├── claude/
|
|
303
|
-
│
|
|
303
|
+
│ ├── <profile-id>.pid 同一プロファイルの二重起動を防ぐ(profile id がキー)
|
|
304
|
+
│ └── local-sessions.json funnel.json profile の再開用 session id
|
|
304
305
|
└── channels/
|
|
305
306
|
└── <channel-id>/
|
|
306
307
|
└── connectors/
|
|
@@ -308,7 +309,7 @@ Settings = { channels[], profiles[] } → ~/.funnel/settings.j
|
|
|
308
309
|
└── state.json コネクタごとの永続 state(例: schedule の lastFiredAt)
|
|
309
310
|
|
|
310
311
|
/tmp/funnel/
|
|
311
|
-
├── events
|
|
312
|
+
├── events/<scope>.db dir + port ごとに分離した offset 再生ログ
|
|
312
313
|
├── funnel.log 診断ログ(デーモンの起動、listener boot、接続)
|
|
313
314
|
└── gateway.log デーモンの stdout/stderr
|
|
314
315
|
```
|
|
@@ -400,7 +401,7 @@ const base = gatewayLoopbackUrl(9743) // → http://127.0.0.1:9743
|
|
|
400
401
|
```
|
|
401
402
|
|
|
402
403
|
- 非ループバック bind(`gatewayServer({ hostname: "0.0.0.0" })`)は token 無しだと `start()` が throw する。前段で自前認証する場合のみ `allowInsecureHost: true`
|
|
403
|
-
- コネクタの token は `botToken` か `botTokenEnv` の片方だけ(両方同時はコンパイルエラー)、event store は `dbPath` か `eventLog` の片方だけ、launch の `resume` は `profileId` がある時だけ指定できる
|
|
404
|
+
- コネクタの token は `botToken` か `botTokenEnv` の片方だけ(両方同時はコンパイルエラー)、event store は `dbPath` か `eventLog` の片方だけ、launch の `resume` は stable な `profileId` がある時だけ指定できる
|
|
404
405
|
|
|
405
406
|
### サブエントリ
|
|
406
407
|
|
|
@@ -419,6 +420,9 @@ import { FunnelLocalConfig } from "@interactive-inc/claude-funnel/local-config"
|
|
|
419
420
|
// コネクタの descriptor とスキーマ(Slack / Discord / GitHub / Schedule)
|
|
420
421
|
// descriptor(slackConnector 等)を new Funnel({ connectors: [...] }) に渡す
|
|
421
422
|
import { slackConnector, slackConnectorSchema } from "@interactive-inc/claude-funnel/connectors/slack"
|
|
423
|
+
|
|
424
|
+
// Channel manifest(flume sources を broadcaster に流す宣言的 channel。ConnectorDescriptor 系とは独立)
|
|
425
|
+
import { FunnelChannelSupervisor, timeChannel, defineChannel } from "@interactive-inc/claude-funnel/channel"
|
|
422
426
|
```
|
|
423
427
|
|
|
424
428
|
### テスト用のサンドボックス
|