@basemachina/poodle
v0.3.43
Published
CLI for Poodle Context Engine — search, propose, and manage knowledge for AI agents
Readme
@basemachina/poodle
Poodle は AI エージェントのためのポータブルなコンテキスト層です。社内に散在する知識を人間が レビュー・承認し、AI エージェントが検索・参照できる形で提供します。この CLI は Poodle の コンテキストエンジンに REST で接続し、承認済みナレッジの検索・提案・管理と、コーディング エージェント(Claude Code / Codex)のセットアップ・コスト分析をターミナルから行います。
インストール
npm install -g @basemachina/poodleNode.js 22 以上が必要です。グローバルインストールせず単発で使う場合は npx @basemachina/poodle <command> も可能です。
ログイン
poodle loginブラウザで Poodle の認可ページが開き、「接続を許可」を押すと API キーが発行されて
~/.config/poodle/config.json(パーミッション 0600)に保存されます。以降のコマンドは自動で
この接続先に繋ぎます。接続先の既定は本番(https://app.thepoodle.ai)です。
ブラウザを使わずメール/パスワードで発行することもできます。
poodle login --email [email protected]
poodle whoami # 現在のアクター(id / 名前 / role)と接続先を確認セットアップ(hook + スキル)
Claude Code / Codex で使うための設定を一括で行います(最初に一度)。
poodle setup # ~/.claude に登録+スキル配布
poodle setup --project # プロジェクト(<cwd>/.claude)に登録poodle setup は次をまとめて行います。
- hook 登録: セッション終了・compaction 直前の自動レポート(
doctor report)、大きな Bash 出力の 自動圧縮(intercept)、作業中の知見収穫(session harvest)、調べるたびに承認済みナレッジを自動 注入する検索(context) - スキル配布:
.claude/skills/と.codex/skills/に Poodle のスキルをコピー
すでに /plugin install などで登録済みの hook は重複登録しません(冪等)。解除は poodle setup disable
(スキルは残ります)。
プロジェクトの .claude/settings.local.json が同じイベント(PostToolUse 等)を独自に
定義していると、Claude Code の設定優先順位(Local > Project > User)により
~/.claude/settings.json / <cwd>/.claude/settings.json に登録した hook が丸ごと
上書きされ発火しないことがあります。poodle setup はこの shadow を検知すると
書き込み先を .claude/settings.local.json に切り替えます(poodle doctor の
[WARN] 診断で検知した場合、poodle setup の再実行で解消できます)。
検索の自動注入
エージェントが何かを調べようとするたびに、その対象で承認済みナレッジを検索して関連ヒットを
そっと注入する hook(poodle context)を poodle setup が標準登録します。ツールはブロックせず、
関連が無ければ無音です(UserPromptSubmit=直近プロンプト保存 / PreToolUse=探索系ツールで検索・注入)。
探索系ツールの実行ごとに検索が走るため、わずかなレイテンシとコストが乗ります。未ログイン環境では
何もしません。除去は poodle setup disable(他の hook もまとめて解除)。hook の活動状況
(発火・検索・注入)は poodle doctor で確認できます。
検索する
poodle search "SSO 監査ログ"承認済みのコンテキストをハイブリッド検索(全文+trigram+ベクトル)します。主なオプション:
poodle search "権限管理" --area node_dom_engineering # 領域(taxonomy 部分木)で絞る
poodle search "デプロイ" --kind howto # 種別で絞る(fact/decision/rule/howto/issue/reference)
poodle search "本番操作の承認" --instruction "ポリシーを優先" # LLM でリランク
poodle search "障害対応" --since 2026-06-01 # 更新日で絞る内部の承認済み結果が不足しているときだけ、設定済みコネクタ(Notion / Slack)を自動で検索し、 「外部で見つかった候補」を内部結果とは別セクションで提示します(承認済みランキングには混ざりません)。
poodle search "デプロイ Runbook" --import notion # 外部候補を確認して提案登録
poodle search "本文にだけある仕様" --deep # コネクタを深掘り(Notion 本文スキャン)関連コマンド:
poodle map # コンテキスト地図(領域ツリー+件数+要約)
poodle read <contextId> # コンテキストを1件表示
poodle changes --since <時刻> # 前回以降に承認・更新されたコンテキスト取り込み・提案する
poodle import file ./notes.md ./spec.pdf
poodle import url https://example.com/docs
poodle status <batchId> --watch # 取り込み完了までライブ追跡(received → processing → processed/failed)
poodle propose --title "本番は承認制" --body "重要操作は実行前承認を必須化する" --kind rule取り込み・提案の成果物はすべてレビュー待ちの提案になります。検索に露出するのは、人間が Web UI で 承認したコンテキストだけです。
取り込み経路の使い分け
| 経路 | 用途 |
|---|---|
| poodle import file / url | 手元の資料・URL をそのまま取り込む |
| poodle search --import notion\|slack | 外部コネクタ(Notion / Slack)の検索候補を提案登録する |
| poodle session commit | 作業セッション中に集めた知見(stash・note)をまとめて提案化する |
| poodle propose | 単発 1 件をその場で提案する |
コスト消費を分析する(doctor)
poodle doctor は、あなたのエージェント(Claude Code / Codex)のセッション記録を振り返り、
何にトークンを使ったかとどこに無駄があるかを、具体的な直し方つきで示します。分析はローカルで
完結し、追加の AI 呼び出しはありません。
poodle doctor # 直近のセッションを診断
poodle doctor --all-sessions # 直近の複数セッションをまとめて分析
poodle doctor --codex # Codex のセッションを対象にするレポートはセットアップ診断・消費内訳(トークン/出力バイト)・見つかった無駄(節約できる トークンの多い順)で構成されます。繰り返し読んでいる資料は、その場で要点を蒸留してナレッジ提案の 下書きを作れます(取り込み不要・承認は人間・本文や秘密はサーバーに送りません)。
poodle setup を済ませておくと、セッション終了時と compaction 直前に自動でサマリのレポートが記録され、
Web UI のインサイトでチーム全体を集計できます(送信は集計サマリのみ・本文なし)。
セッション作業場
大きな資料(URL・ファイル・長いツール出力)を読む代わりにローカルへ stash し、ダイジェストと
ハンドルで作業します(commit するまでサーバーには何も送りません)。
poodle session stash url https://example.com/docs/spec
poodle session show <handle> --grep "認証" --context 3 # 部分読み出し
poodle session note --kind decision "リトライは指数バックオフで統一"
poodle session commit # 提案として取り込みスキル
poodle skill install # プロジェクトにスキルをインストール(--global でグローバル)
poodle skill list # バンドルされたスキル一覧poodle setup を使う場合はスキルも配布されるので、通常はこのコマンドを個別に実行する必要はありません。
外部コネクタ(Notion / Slack)
Notion / Slack の接続設定は Web UI(/settings)で行います。CLI からは、設定済みコネクタに対する
検索(poodle search)と取り込み(--import)だけを行います。
接続先と設定
接続先・API キーの解決順は次のとおりです。
--base-url/--api-keyフラグ- 環境変数
POODLE_BASE_URL/POODLE_API_KEY ~/.config/poodle/config.json(poodle loginで保存)- 本番
https://app.thepoodle.ai
保存済み設定に localhost / プライベート URL があってもサイレントには接続せず、本番へフォールバックします。
どのコマンドでも --json で生 JSON を出力できます。
関連
- リポジトリ: https://github.com/basemachina/poodle2
- MCP(AI エージェントから直接接続):
claude mcp add --transport http poodle https://app.thepoodle.ai/api/mcp
