mcpField
N
nansen-wallet-manager

nansen-wallet-manager

github.com/nansen-aiその他144367 回インストール1 日前に更新
リポジトリ

nansen-wallet-manager について

nansen-wallet-managerは、Nansen CLIを使うエージェント向けのウォレット管理スキルです。ローカルとPrivyのウォレット操作に加え、認証情報、パスワード、署名に関する安全ルールを説明します。

主な機能

  1. 01ローカルまたはPrivyのウォレット作成
  2. 02一覧表示、確認、デフォルト設定
  3. 03EVMまたはSolana資産の送信
  4. 04安全なウォレットのエクスポートと削除
  5. 05OSのキーチェーンによるパスワード管理

活用シーン

  1. 01自動ワークフロー用のPrivyウォレット作成
  2. 02オンチェーン資産の送信前プレビュー
  3. 03ローカルウォレットの管理と安全な鍵のエクスポート
  4. 04パスワードの安全なストレージへの保存

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nansen-ai/nansen-cli --skill nansen-wallet-manager

インストール後、Claude Code で/nansen-wallet-managerを入力して読み込まれたか確認します。

詳細

認証

Nansen アカウント API の呼び出しでは、選択済みの nansen:api ブラウザーセッション、または同じ権限を持つ従来の API キーを使用できます。NANSEN_API_KEY が優先されます。オプションの primaryEnv を指定すると、設定済みキーの注入を維持できます。オフラインで選択するには、nansen auth status を実行してください。キャッシュされたアクセスの有効期限切れのみであれば、認可されたタスク中に自動更新できます。匿名の選択、無効な状態、更新のブロックまたは不確実な状態、実際の認証失敗が発生した場合は停止してください。認証情報を破棄したり、匿名の x402 支払いにフォールバックしたりしないでください。ブラウザーログインでは、ウォレットへの署名権限、特権サービス ID、永続的な MCP 統合キーは付与されません。以下の確認、署名、制裁対象地域、地理的なチェックをすべて維持してください。ブラウザーログインは CLI 2.0.0 のmacOS arm64 プレビュー対象で利用できます。

ウォレット

認証の設定

Nansen アカウント API の呼び出しには、選択済みの nansen:api ブラウザーセッション、または従来の API キーを使用してください。エージェントは環境変数またはシークレットマネージャーを通じて NANSEN_API_KEY を注入し、コマンドを直接実行してください。永続化のためのログインは不要です。人がターミナルを使用する場合は、従来のキーを設定するために明示的に nansen login --human を使用できます。環境キーがすでに注入されている場合、この明示モードではプロンプトを表示せずにキーを保存し、ネイティブ認証ロックのバインドが必要です。

# Free live check of the effective API credential
nansen account

一方、通常の nansen login は新しいブラウザー承認を要求します。環境キーを保存することも、ウォレットへの署名権限や RPC 権限を付与することもありません。以下で説明するウォレットの保管とプロバイダー認証情報は、それぞれ別個のものです。

ウォレットプロバイダー

CLI は次の 2 つのウォレットプロバイダーをサポートしています。

ローカル(デフォルト)Privy(サーバー側)
キーの保存場所ディスク上で暗号化Privy API を介したサーバー側
パスワードの要否必要(12 文字以上)不要
秘密鍵のエクスポート可(wallet export)不可 — キーは Privy が管理
最適な用途人間のユーザー、手動取引エージェント、自動化されたワークフロー
フラグ--provider local(デフォルト)--provider privy
必須環境変数NANSEN_WALLET_PASSWORDPRIVY_APP_ID + PRIVY_APP_SECRET

Privy ウォレットの作成

Privy ウォレットは、Privy API が管理するサーバー側ウォレットです。キーがローカルマシンに保存されることはないため、パスワードは不要です。

前提条件

次の環境変数を設定する必要があります。

変数用途
PRIVY_APP_IDPrivy アプリケーション ID
PRIVY_APP_SECRETPrivy アプリケーションシークレット
Privy ウォレットを作成する
nansen wallet create --provider privy
# Or with a custom name:
nansen wallet create --name agent-wallet --provider privy
エージェント向けの重要なルール(Privy)
  • パスワードは不要です — Privy がサーバー側でキーを管理します
  • キーをエクスポートできません — wallet export はローカルウォレットでのみ動作します
  • その他のすべての操作(list、show、send、delete、default)は、どちらのプロバイダーでも同じように動作します

ローカルウォレットの作成(エージェント向け 2 ステップフロー)

このセクションではローカルウォレットの作成について説明します。Privy のサーバー側ウォレットについては、上記のPrivy ウォレットの作成セクションを参照してください。パスワードは不要です。

ウォレットの作成には、人間のユーザーが指定するパスワードが必要です。エージェントはパスワードを自分で生成したり、保存したりしてはいけません。

ステップ 1(エージェント → 人間): ウォレットのパスワード(12 文字以上)をユーザーに入力してもらいます。

ステップ 2(エージェントが実行): ユーザーから渡されたパスワードを使って、作成コマンドを実行します。

NANSEN_WALLET_PASSWORD="<password_from_user>" nansen wallet create

作成後、CLI はパスワードを自動的に保存します。

  • OS キーチェーン(macOS Keychain、Linux secret-tool、Windows Credential Manager)— セキュリティが高く、推奨されます
  • ~/.nansen/wallets/.credentials ファイル — キーチェーンを利用できない場合の安全性が低い代替手段(コンテナーや CI など)

今後のウォレット操作では、パスワードが自動的に取得されます — 環境変数や人間による入力は不要です。

.credentials ファイルへのフォールバックが使用されている場合、CLI は操作のたびに警告を出力します。後で安全なストレージに移行するには、nansen wallet secure を実行してください。

パスワードの解決順序(自動)
  1. NANSEN_WALLET_PASSWORD 環境変数(設定されている場合)
  2. OS キーチェーン(ウォレット作成時に自動保存)
  3. ~/.nansen/wallets/.credentials ファイル(警告付きの安全でないフォールバック)
  4. 手順を含む構造化 JSON エラー(利用可能なものがない場合)
エージェント向けの重要なルール
  • パスワードを自分で生成してはいけません — 必ず人間のユーザーに確認してください
  • パスワードをファイル、メモリ、ログ、会話履歴に保存してはいけません
  • --human フラグを使用してはいけません — エージェントが処理できない対話型プロンプトが有効になります
  • ウォレット作成後の操作では、パスワードは不要です — キーチェーンが処理します
  • PASSWORD_REQUIRED エラーが発生した場合は、ユーザーにパスワードをもう一度入力してもらってください

作成

Privy(サーバーサイド、パスワード不要)
nansen wallet create --provider privy
# Or with a custom name:
nansen wallet create --name trading --provider privy

PRIVY_APP_ID と PRIVY_APP_SECRET の環境変数が必要です。パスワードは不要です。

ローカル(ディスク上で暗号化、パスワード必須)
# Ask the user for a password first, then:
NANSEN_WALLET_PASSWORD="<password_from_user>" nansen wallet create
# Or with a custom name:
NANSEN_WALLET_PASSWORD="<password_from_user>" nansen wallet create --name trading

一覧表示と表示

nansen wallet list
nansen wallet show <name>
nansen wallet default <name>

送信

# Send native token (SOL, ETH) — password auto-resolved from keychain
nansen wallet send --to <addr> --amount 1.5 --chain solana

# Send entire balance
nansen wallet send --to <addr> --chain evm --max

# Dry run (preview, no broadcast)
nansen wallet send --to <addr> --amount 1.0 --chain evm --dry-run

エクスポートと削除

# Default is REDACTED — shows addresses only, never private keys
nansen wallet export <name>

# Write private keys to a file only the owner can read (0600, refuses to overwrite)
nansen wallet export <name> --file <path>

# Print private keys in plaintext to stdout (explicit acknowledgement required;
# warns on stderr when stdout is an interactive terminal)
nansen wallet export <name> --reveal

# Password auto-resolved from keychain (needed for --reveal / --file)
nansen wallet delete <name>

--reveal よりも --file を優先してください。標準出力に出力された平文は、ターミナルのスクロールバック、シェルログ、エージェントのトランスクリプトに残ります。

パスワードを忘れた場合

# Remove saved password from all stores (keychain + .credentials file)
nansen wallet forget-password

セキュアストレージへの移行

nansen wallet secure

(~/.nansen/.env、.credentials、または環境変数のみの設定からの)詳しい移行手順については、nansen-wallet-migration スキルを参照してください。

フラグ

フラグ用途
--to送信先アドレス
--amount送信する金額
--chainevm または solana
--max残高全額を送信
--dry-runブロードキャストせずにプレビュー
--providerウォレットプロバイダー:local(デフォルト、ディスク上で暗号化)または privy(Privy API 経由のサーバーサイド)
--revealエクスポート専用:秘密鍵を標準出力に平文で出力(確認が必要)
--fileエクスポート専用:秘密鍵をこのパスに書き込み(パーミッション 0600 で作成し、上書き不可)
--human対話型プロンプトを有効化(人間がターミナルで使用する場合のみ — エージェントは使用してはいけません)
--unsafe-no-password暗号化をスキップ(鍵が平文で保存されます — 非推奨)

環境変数

変数用途
NANSEN_WALLET_PASSWORDウォレット暗号化パスワード — wallet create の初回実行時のみ必要です。それ以降は OS キーチェーンが処理します。
NANSEN_API_KEYAPI キー(nansen login --human から保存することもできます)
PRIVY_APP_IDPrivy アプリケーション ID(--provider privy に必須)
PRIVY_APP_SECRETPrivy アプリケーションシークレット(--provider privy に必須)
NANSEN_WALLET_PROVIDERwallet create のデフォルトプロバイダー — local または privy
NANSEN_EVM_RPCカスタム EVM RPC エンドポイント
NANSEN_SOLANA_RPCカスタム Solana RPC エンドポイント

コメント