最近、n8n で自動化ワークフローを構築していて、ある問題に気づきました。n8n は様々なサービスを簡単に連携できますが、Ethereum ブロックチェーンとのやり取りは意外と難しいのです。通常、Code Node をインストールして ethers.js や viem をインポートするか、JSON-RPC リクエストを直接書く必要があります。ブロックチェーンの自動化ワークフローを素早く構築したい場合、これはあまり便利ではありません。
コミュニティには既に n8n-nodes-web3 がありますが、機能は比較的シンプルで、多くの一般的な操作がサポートされていません。そこで、Claude Code の Vibe Coding 能力をテストしつつ、n8n ノード開発も試してみたいと思いました。自分自身もこれらの機能を頻繁に必要としていたので、より包括的な Ethereum 統合パッケージを作ることにしました。
n8n-nodes-ethereum
このプロジェクトの目標は、完全な Ethereum ブロックチェーン統合を提供し、n8n のビジュアルインターフェースで様々なブロックチェーン操作をコードを書かずに処理できるようにすることです。プロジェクトは viem を基盤ライブラリとして使用しています(従来の web3.js と比べて、よりモダンで型安全、そして積極的にメンテナンスされています)。また、統一された Resource/Operation デザインパターンを採用しています。
主な機能
プロジェクトには2つのノードが含まれています:
- Ethereum Node:様々なブロックチェーン操作を実行するための通常ノード
- Ethereum Trigger Node:新しいブロック、コントラクトイベント、特定アドレスへのトランザクションを監視できるトリガーノード
機能は一般的なユースケースのほとんどをカバーしています:
- 10種類のリソースタイプ:アカウント、ブロック、トランザクション、コントラクト、ERC20、ERC721、ERC1155、ENS、Gas、署名、ユーティリティ関数など
- 完全なトークン標準サポート:ERC20、ERC721、ERC1155 のすべての標準メソッドを内蔵、ABI を自分で処理する必要なし
- マルチチェーンサポート:18以上の EVM 互換ネットワーク(Ethereum、Polygon、BSC、Arbitrum、Optimism、Base など)をデフォルトでサポート、カスタム RPC も設定可能
- トリガー:新しいブロック、コントラクトイベント、特定アドレスのトランザクションを監視し、リアルタイムで反応するワークフローを作成
- セキュリティ設計:RPC 接続とウォレット認証情報は分離して管理、読み取り専用操作には秘密鍵不要
例えば、以下のようなワークフローを簡単に作成できます:
- 特定の NFT コントラクトの Transfer イベントを監視し、新しいトランザクションがあれば通知を送信
- DAO のトレジャリー残高を定期的にチェックし、閾値を下回ったらアラート
- トークン転送を自動化し、確認を待機
- Gas Price を監視し、価格が十分に低い時にトランザクションを実行
機能の完全なリストはドキュメントサイトを参照してください。
現状と今後
プロジェクトはまだ初期開発段階(v0.1.1)です。主な機能は実装済みですが、私自身が使用しているのはいくつかのノードだけなので、現在はすべてのノードが正しく動作することを確認するための自動テストを構築中です。
セキュリティ警告:まだ初期段階のため、まずテストネットで試してから、問題がないことを確認した上で本番環境で使用することをお勧めします。資金に関わる操作には特に注意し、自動化ウォレットには必要最低限の金額のみを保管することをお勧めします。
今後の計画としては、テストカバレッジの改善を続け、ユーザーフィードバックに基づいてより多くの機能を追加していく予定です。コントリビューションも歓迎します!
もっと詳しく知りたい方へ
n8n を使用していてブロックチェーンとやり取りする必要がある方は、ぜひこのパッケージを試してみてください:
- インストール:
npm install @0xlimao/n8n-nodes-ethereum - GitHub:https://github.com/flyinglimao/n8n-ethereum
- npm:https://www.npmjs.com/package/@0xlimao/n8n-nodes-ethereum
- ドキュメント:https://flyinglimao.github.io/n8n-ethereum/
ドキュメントには Claude が書いたインストール手順、認証情報の設定チュートリアル、各リソースの使い方、そしていくつかの一般的なワークフロー例が含まれています。
今回のプロジェクトは、大部分を Claude Code に指示して作業させました(この記事も、この段落を除いてほぼ Claude が書いています)。今回は数ヶ月前と比べて明らかに違いを感じました。一度に処理できるタスクが大きくなっていますが、それでも時々ループにはまることがあります。しかし、このような小規模なプロジェクトの開発にはかなり便利です。馴染みのないソースを使うよりも、プロジェクトの複雑さがそれほど高くなければ、AI に直接書いてもらう方が安全かもしれません(汚染の心配はまだありますが)。