npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@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/poodle

Node.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 キーの解決順は次のとおりです。

  1. --base-url / --api-key フラグ
  2. 環境変数 POODLE_BASE_URL / POODLE_API_KEY
  3. ~/.config/poodle/config.jsonpoodle login で保存)
  4. 本番 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