duoduo-pipeline について
Duoduo Pipelineは、定期実行する機械的なスクリプトと、通常は休止状態のduoduo brain jobを組み合わせるパターンです。LLMを起動する前にイベントを選別し、しきい値を超えた信号だけをメインセッションに送ります。
主な機能
- 01shellまたはPythonスクリプトで情報源を確認
- 02新しいデータがあればbrain jobに通知
- 03イベント間はbrain jobを休止状態に維持
- 04しきい値に基づいて信号を選別
- 05実行可能な概要をメインセッションに送信
活用シーン
- 01フィードやアカウントの新規投稿を監視
- 02価格や指標のしきい値超過を通知
- 03ファイルやリポジトリの変更を検知
- 04webhookのペイロードをbrain jobに中継
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ openduo/ duoduo --skill duoduo-pipelineインストール後、Claude Code で/duoduo-pipelineを入力して読み込まれたか確認します。
同梱ファイルreferences/notify-routing.mdreferences/pattern-mechanical-brain.md
詳細
Duoduo パイプライン
コストのかからないメカニカルレイヤーを Duoduo のブレインジョブに接続し、対応する価値のあるものがあるときだけ LLM を実行します。アイドル時はブレインジョブが休止状態を保つため、ポーリングもトークン消費もありません。
3 層モデル
Mechanical layer (shell / Python script — zero LLM)
│
│ duoduo session notify ← fires only when new data arrives
▼
Brain job (keepalive — dormant by default)
│
│ Notify ← fires only when signal meets your threshold
▼
Main session (your foreground chat)
- メカニカルレイヤー — launchd、cron、または systemd タイマーでスケジュールされた単純なスクリプトです。ソースをポーリングし、最後に確認した状態と比較して、新しいものが検出されたときだけ
duoduo session notifyを呼び出します。どの時点でも LLM は関与しません。 - ブレインジョブ —
keepaliveDuoduo ジョブです。notify を受けて起動し、受信データを処理して、結果を通知する価値があるかを判断します。シグナルがしきい値を超えた場合にのみ、メインセッションに Notify を送信します。その後、再び休止状態になります。 - メインセッション — 通常のフォアグラウンドチャットです。ブレインが対応可能なものを見つけたときだけ、フィルタリング済みの簡潔な通知を 1 件受け取ります。
代表的なユースケース
- フィード/アカウントの監視 — 数分ごとに公開フィードを確認し、新しい投稿があったときだけブレインを起動します。
- 価格または指標のアラート — API をポーリングして数値を確認し、しきい値を超えたときだけブレインを起動します。
- ファイルまたはリポジトリの変更検出 — ディレクトリまたは Git リモートを監視し、新しいコミットやファイル変更があったときだけブレインを起動します。
- Webhook リレー — 軽量な受信スクリプトが notify 経由でペイロードをブレインに転送し、イベントの合間はブレインを休止状態に保ちます。
- データソースの稼働状況監視 — 上流のソースが古くなったことを検出し、確認のためだけに LLM のサイクル全体を実行することなく、アラートを通知します。
参考資料
- パターン:メカニカルレイヤー+ブレインジョブ — 2 層構成を最初から最後まで構築する方法です。
- Notify のルーティングとシグナルのフィルタリング — ブレインが通知対象を判断する方法、簡潔な通知の形式、メインセッションに通知が殺到しないようにルーティングする方法を説明します。
コメント
Markdown 対応