【ITニュース解説】Setting up CryptoNinja mode in evi-run 🥷
2025年09月27日に「Dev.to」が公開したITニュース「Setting up CryptoNinja mode in evi-run 🥷」について初心者にもわかりやすく解説しています。
ITニュース概要
evi-runマルチエージェントシステムに「CryptoNinjaモード」を設定する手順を解説する。これは暗号通貨市場の分析や取引を支援する機能群だ。Linuxサーバーで特定のファイルをバックアップ・置換し、Dockerを再起動すれば利用できる。
ITニュース解説
この解説は、evi-runというマルチエージェントシステムに「CryptoNinjaモード」という特別な機能を追加する方法を、システムエンジニアを目指す初心者の皆さんにも分かりやすく説明するものだ。evi-runは、複数のAIエージェントが連携してさまざまなタスクをこなすための土台となるシステムであり、今回のCryptoNinjaモードはそのevi-runを暗号通貨(クリプト)分野に特化させるための追加機能パッケージである。
CryptoNinjaモードを導入することで、evi-runは暗号通貨市場の全体像を把握したり、個別の通貨についてファンダメンタル分析(企業の価値や将来性に基づいた評価)やテクニカル分析(価格チャートの動きに基づいた分析)を行ったりできるようになる。さらに、分散型取引所(DEX)の動向を監視したり、Solanaというブロックチェーンと連携してトークンのスワップ(交換)やポートフォリオ管理(保有資産の管理)を行ったりする機能も手に入る。また、暗号通貨取引に関する教育的な資料を提供する機能も含まれているため、暗号通貨の学習にも役立つだろう。
このCryptoNinjaモードの導入は、基本的にLinuxサーバー上でのファイル操作と、Docker Composeというツールを使ったシステムの再起動によって行われる。一見難しそうに感じるかもしれないが、一つ一つの手順を丁寧に理解すれば、システムの設定変更という実践的な経験を積むことができる。
まず、CryptoNinjaモードを導入するにあたり、いくつかの前提条件がある。すでにevi-runがシステムにインストールされている必要がある。もし以前にevi-runをインストールしていた場合は、そのコードベースを最新の状態に更新し、「modes/crypto_mode/」という新しいディレクトリが含まれていることを確認する必要がある。この「modes」ディレクトリの中に、CryptoNinjaモードを構成する特別なファイル群が格納されているからだ。
それでは具体的な導入手順に入ろう。
最初のステップは、作業の場所を特定し、必要なファイルが存在することを確認することである。
Linuxサーバーのコマンドライン(ターミナル)を開き、cd /opt/evi-runというコマンドを実行する。cdは「change directory」の略で、指定したディレクトリに移動するためのコマンドだ。/opt/evi-runは、一般的にevi-runプログラムがインストールされているルートディレクトリ(一番上の階層)を指している。もしevi-runが別の場所にインストールされている場合は、そのパスに合わせてコマンドを変更する必要がある。
このディレクトリに移動したら、任意でls modes/crypto_mode/agents_.pyといったコマンドで、CryptoNinjaモードに必要なファイルが本当に存在するかを確認できる。これは、後でコピーするファイルが正しくシステムに準備されていることを確かめるための手順である。具体的には、modes/crypto_mode/agents_.pyというエージェントの動作を定義するファイルと、modes/crypto_mode/en/txt.ftlおよびmodes/crypto_mode/ru/txt.ftlという、ユーザーインターフェースの多言語対応に使われるテキストファイルが存在していることを確認する。
次の重要なステップは、現在のシステムを構成するファイルをバックアップし、CryptoNinjaモードのファイルに置き換える作業だ。
再びevi-runのルートディレクトリ/opt/evi-runにいることを確認し、まずagents_.pyというファイルを操作する。このファイルは、ボット(AIエージェント)の挙動を定義するプログラムの核となる部分なので、非常に重要だ。
現在のbot/agents_tools/agents_.pyというファイルをバックアップするために、cp -v bot/agents_tools/agents_.py bot/agents_tools/agents_.py.bak-$(date +%F_%H%M%S)というコマンドを実行する。cpは「copy」の略でファイルをコピーするコマンド、-vは「verbose」の略で、コピーが実行されたことを詳しく表示してくれるオプションだ。バックアップファイル名に$(date +%F_%H%M%S)という部分が含まれているのは、現在の年月日と時刻をファイル名に自動的に追加するための工夫である。これにより、どの時点のバックアップファイルなのかが一目でわかるようになり、万が一問題が発生した場合でも、簡単に元の状態に戻すことができる。システム設定を変更する際には、必ずバックアップを取る習慣をつけることが非常に重要だ。
バックアップが完了したら、cp -v modes/crypto_mode/agents_.py bot/agents_tools/agents_.pyというコマンドで、CryptoNinjaモード用のagents_.pyファイルを、既存のファイルに上書きする。これで、evi-runのボットがCryptoNinjaモードの挙動をするように変更される。
次に、多言語対応のための「ロケールファイル」のバックアップと置換を行う。
ロケールファイルとは、ソフトウェアの表示言語や地域設定に関する情報が記述されたファイルで、ここでは英語(en)とロシア語(ru)のtxt.ftlというファイルが対象となる。txt.ftlは「Fluent」という多言語対応の仕組みで使われるファイル形式である。
先ほどと同様に、まず現在のI18N/en/txt.ftlとI18N/ru/txt.ftlファイルをバックアップする。具体的には、cp -v I18N/en/txt.ftl I18N/en/txt.ftl.bak-$(date +%F_%H%M%S)と、cp -v I18N/ru/txt.ftl I18N/ru/txt.ftl.bak-$(date +%F_%H%M%S)というコマンドを実行する。これらもagents_.pyの場合と同様に、問題が発生した際に元の表示に戻せるようにするための保険となる。
バックアップ後、CryptoNinjaモード用の新しいロケールファイルで上書きする。cp -v modes/crypto_mode/en/txt.ftl I18N/en/txt.ftlと、cp -v modes/crypto_mode/ru/txt.ftl I18N/ru/txt.ftlというコマンドを実行することで、CryptoNinjaモードで使われる専用のテキストやメッセージが表示されるようになる。
これらのファイル置換作業が終わったら、evi-runシステムを再起動して、変更を反映させる必要がある。
evi-runはDocker Composeというツールを使って実行されている。Docker Composeは、複数のコンテナ(アプリケーションとその実行環境をまとめたもの)で構成されるアプリケーションを一元的に管理・実行するためのツールだ。
システムの再起動は、以下の2つのコマンドを続けて実行することで行われる。
まず、docker compose downというコマンドを実行する。これは、現在稼働しているevi-runのすべてのDockerコンテナを停止し、関連するネットワークなどを削除するコマンドだ。これにより、システムが一度クリーンな状態になる。
次に、docker compose up --build -dというコマンドを実行する。upはDockerコンテナを起動するコマンドだが、--buildオプションをつけることで、コンテナのイメージ(コンテナの元となる設計図)を再構築する。これにより、先ほど変更したagents_.pyやtxt.ftlといったファイルが、新しいイメージに組み込まれ、システム全体に適用される。-dオプションは「detached mode」の略で、コンテナをバックグラウンドで起動し、ターミナルが占有されないようにするためのものだ。これにより、コマンドを実行した後も、ターミナルで別の作業を行うことができる。この再起動によって、CryptoNinjaモードが正式にevi-runシステムに組み込まれ、新しい機能が利用可能になる。
最後に、変更が正しく適用されたかどうかを「クイックチェック」で確認する。 evi-runのボットと対話できるインターフェース(チャットツールなど)を開き、「fresh crypto news」のように、暗号通貨に関する質問をしてみる。もしボットがCryptoNinjaモードのスタイルで、暗号通貨関連のニュースや情報に応答すれば、設定は成功である。もし期待する応答が得られない場合は、これまでの手順をもう一度見直し、特にファイルのパスやコマンドの入力ミスがないかを確認することが重要だ。
この一連の作業は、システムエンジニアとしての基本的なスキル、つまりLinuxコマンドによるファイル操作、バックアップの重要性、そしてDockerのようなコンテナ技術を使ったアプリケーションのデプロイと管理を学ぶ良い機会となるだろう。実際に手を動かしてシステムを設定する経験は、座学だけでは得られない深い理解をもたらしてくれるはずだ。この解説が、皆さんの学習の一助となれば幸いである。