Lumber について
Lumber CLIは、Lumberユーザーがコマンドラインでアプリのログを検索、追跡するツールです。AIエージェントには読み取り専用のログアクセスを提供し、ログはアカウントキーを使ってローカルで復号します。
主な機能
- 01アプリ、レベル、時間、テキストでログ検索
- 02新しいログとエラーの追跡
- 03ローカルでログを復号
- 04セッションとキーを認証情報ストアに保存
- 05ログをJSON形式で出力
活用シーン
- 01特定アプリのエラーログを検索
- 02デバッグ中に新しいエラーを監視
- 03AIエージェントにログを読み取り専用で調査させる
MCP 対応
`lumber mcp`コマンドは、`lumber login`で保存したセッションを使い、stdio経由で読み取り専用のMCPツールを提供します。アプリ一覧、ログ検索、新着ログの待機、ノート取得が可能です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
4掲載時のツール一覧 · 2 日前に更新
このツールにパラメーターはありません。
詳細
@infinitetoken/lumber-cli
ターミナルから Lumber のログを読み、AI エージェントが MCP 経由でログを読めるようにします。ログはお使いのアカウントキーを使ってコンピューター上で復号されるため、Lumber のサーバーがログを読むことはできません。
macOS、Windows、Linux で動作します。ログを読むだけで、Lumber のデータを変更することはありません。
インストール
npm install -g @infinitetoken/lumber-cli
パッケージ名にはスコープが付いています。npm にあるスコープなしの lumber と lumber-cli は、別の人が公開したものです。
macOS または Linux では、Homebrew を使ってインストールすることもできます。このリポジトリが tap です。
brew tap infinitetoken/lumber https://github.com/infinitetoken/Lumber-CLI
brew install infinitetoken/lumber/lumber
最初に正式名称を指定することで、Homebrew が数式を信頼するようになります。brew upgrade lumber で更新できます。
サインイン
lumber login
Lumber のメールアドレスとパスワードでサインインし、新しいスマートフォンをリンクするのと同じ方法で、このコンピューターをリンクします。アカウントキーがあるスマートフォンまたは Mac で Lumber を開きます(スマートフォンには通知が届き、Mac アプリでは切り替えると確認を求められます。または、「Account > Link another device」を開きます)。「Show Code」をタップし、Code のプロンプトに7桁のコードを入力します。そのデバイスがコードを確認して、アカウントキーを送信します。リクエストの有効期間は10分間で、間違ったコードを入力すると終了します。もう一方のデバイスでは、最新の Lumber アプリを使う必要があります。
セッションとアカウントキーは、ファイルには保存されず、システム固有の認証情報ストアに保存されます。
- macOS:ログインキーチェーンの「Lumber CLI」項目。
- Windows:資格情報マネージャーの汎用資格情報
session.Lumber CLI。 - Linux:GNOME Keyring と KWallet が提供する Secret Service の「Lumber CLI」項目。デスクトップセッションにはこれが用意されています。サーバーや、稼働しているものがない状態で SSH 経由で使う場合は、
lumberがその旨を表示して終了します。
セッションは lumber を使うたびに毎日自動更新されるため、lumber を30日間実行しなかった場合にのみ終了します。その後、同じユーザーとして再度サインインすれば、新たにリンクする必要はありません。lumber logout を実行すると、セッションとアカウントキーの両方が削除されます。
コマンド
lumber status # who's signed in, which apps this computer can read
lumber apps # your apps
lumber logs # the newest 100 logs from every app, oldest at the bottom
lumber logs Lumber-Test -l error -s 2h # one app's errors and fatals from the last two hours
lumber logs -g "payment" -n 20 # the newest 20 logs mentioning "payment"
lumber tail Lumber-Test -l warn # follow new warnings and worse as they arrive
lumber help # everything, and `lumber logs help` for one command
- アプリは名前(大文字と小文字は区別されません)または ID で指定します。指定しない場合は、すべてのアプリが対象になります。
-l, --levelには、指定したレベル以上を対象にする単一のレベル(warnの場合は warn、error、fatal)か、指定したレベルのみを対象にするリスト(info,warn)を指定します。-s, --sinceと-u, --untilには、経過時間(15m、2h、3d)、日付(2026-10-29、today、yesterday)、または ISO 形式の時刻を指定します。-g, --grepは、メッセージ、リクエスト ID、トレース ID、コンテキスト、メタデータを、大文字と小文字を区別せずに検索します。サーバーには暗号文しか保存されないため、検索はこのコンピューター上で行われ、最大20,000件のログを読み返します。-v, --verboseを指定すると、各ログの ID、各種 ID、コンテキスト、メタデータがその下に表示されます。--jsonを指定すると、スクリプトやエージェント向けに、ログごとに1つの JSON オブジェクトが出力されます。tailは、Dev プランと Pro プランのアプリについては Lumber のライブ接続経由で追跡し、それ以外のアプリについては5秒ごとに確認します。ターミナルでは、接続状態がログの下の行に表示されます。-qを指定すると非表示になります。- コマンドラインのどこに
helpを指定しても、ヘルプが表示されます。そのため、lumber logs -g helpは検索を行わず、ヘルプを表示します。-g Helpで検索してください。検索では大文字と小文字は区別されません。 - npm に新しいバージョンが公開されている場合、ターミナルで実行したコマンドの出力後に、そのことと更新コマンドが表示されます。表示は1日1回までです。npm への確認はコマンドの実行中に1日1回まで行われるため、コマンドの処理が遅くなることはありません。
tail、mcp、パイプ出力、CI では確認されません。LUMBER_NO_UPDATE_CHECK=1を設定すると、この確認を無効にできます。
出力にはアプリの色が反映されます。スピナー、ヘルプ、プロンプトはアクセントカラー(Lumber の「Account」画面で選んだ色)で表示され、レベルはそれぞれの色で表示されます。また、アプリ名の前にはアプリの色の四角形が表示されます。パイプ出力または --json を指定した場合は、プレーンテキストになります。
AI エージェント(MCP)
lumber mcp は、保存済みのセッション lumber login を使用して、同じ読み取り操作を MCP ツールとして stdio 経由で提供します。
Claude Code:
claude mcp add lumber -- lumber mcp
Windows では、npm が lumber を .cmd ファイルとしてインストールするため、エージェントは cmd 経由でしか起動できません。
claude mcp add lumber -- cmd /c lumber mcp
Claude Desktop の claude_desktop_config.json では、(macOS と Linux の場合、アプリはシェルの PATH を読み込まないため、which lumber が出力するフルパスを使用してください):
{
"mcpServers": {
"lumber": { "command": "/opt/homebrew/bin/lumber", "args": ["mcp"] }
}
}
Windows の場合:
{
"mcpServers": {
"lumber": { "command": "cmd", "args": ["/c", "lumber", "mcp"] }
}
}
ツール:
list_apps:アプリの一覧と、このコンピューターで各アプリを読み取れるかどうかを表示します。search_logs:アプリ、レベル、期間、テキストに一致する最新のログを検索します。wait_for_logs:新しいログを待ち(特に指定がなければエラーと致命的エラー)、メッセージごとにまとめて返します。返されたnext_afterを次回渡せば、エージェントはログを見逃したり重複して処理したりすることなくループで監視できます。list_notes:アプリのログについてユーザーが書いたメモと、その投稿者を表示します。
エージェントにエラーを監視させる
開始しない限り、何も監視されません。Claude Code で、次のように頼んでください。
wait_for_logs を使って Lumber-Test のエラーを監視してください。エラーが発生したら、このリポジトリ内で原因を特定して修正し、変更を私がレビューできる状態にしておいてください。
または、lumber tail Lumber-Test -l error --json -q に従わせることもできます。このコマンドはエラーごとに1行を出力します。
ログメッセージ、コンテキスト、メタデータは、アプリとそれを使うユーザーによって書き込まれます。フォームのフィールド、URL、または細工されたリクエストがログに記録されることがあります。すべてのツールはそのことをエージェントに伝えますが、コードを編集できるエージェントは、誰でも書けるテキストを読み取っています。エージェントにデプロイさせるのではなく、変更をレビューできる状態にしておいてください。
プライバシーの保護方法
各アプリのログは、サーバーから送信される前に、そのアプリ専用のキーで暗号化されます(AES-256-GCM)。サーバーには各アプリキーのコピーが各ユーザーのアカウントキーでラップされて保管されますが、サーバーはそれをラップ解除できません。リンクすると、このコンピューターが作成したリンク用キーに対して、承認するデバイスがラップしたアカウントキーがこのコンピューターに渡されます。入力するコードによって、そのキーとリンクが紐付けられます。また、アカウントキーにはコードだけが生成できる秘密情報が付けられて返されるため、サーバーはアカウントキーの送信先を選ぶことも、このコンピューターに独自のキーを渡すこともできません。その後、各コマンドは暗号文を取得し、このコンピューター上で復号します。
要件
- Secret Service(GNOME Keyring または KWallet)を備えた macOS、Windows、または Linux。
- Node 20 以降。
- Lumber アカウントと、このコンピューターをリンクするコードを表示するための、すでにアカウントキーを持っている電話または Mac。
公開
リリースにタグを付けると、公開ワークフローが起動します。
npm run release:patch # or release:minor / release:major: verifies, tags and pushes
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。