Cardano の開発の雛形を 1 つのコマンドで作るツール cardano-init が、11 月 11 日 (日本時間) に 0.4.0 を公開しました。オンチェーンに Plutarch と Pebble、オフチェーンに Lucid Evolution・Blaze・PyCardano・Apollo の計 6 つの雛形が加わり、Python や Go で取引を組み立てる構成もそのまま作れるようになっています。
11 月 5 日に IOG から開発者体験 (DevX) の仕事を引き継いだ AlwaysTrue が、12 日に X で告知しました。10 月の 0.3.0 の時点で「予定」と書かれていた道具の多くが、今回ひと通り使える形になったことになります。何が増え、どこまで試験済みなのかを GitHub の公開情報から整理します。
6 つの雛形で増えた選択肢
cardano-init は、スマートコントラクト (オンチェーン)、取引を組み立てる側 (オフチェーン)、手元の試験用チェーン (devnet) などの役割ごとに道具を選ぶと、それらが最初からつながったリポジトリ一式を作るツールです。生成されたプロジェクトには動く例が付き、just test でテストが通る状態から始められます。
0.4.0 で加わった 6 つを、ツールの登録ファイルの説明から並べると次のとおりです。
- Plutarch (オンチェーン): Haskell の上に作られた型付きの言語。Plutus Core を直接組み立てるため、スクリプトの大きさや実行コストを細かく詰められます
- Pebble (オンチェーン・試験的): Harmonic Labs の言語で、TypeScript に似た書き方でスマートコントラクトを書けます。テストの実行器も同梱されています
- Lucid Evolution と Blaze (オフチェーン): どちらも TypeScript のライブラリです
- PyCardano (オフチェーン): Python のライブラリ。生成されるプロジェクトは uv で Python の版と依存関係を管理します
- Apollo (オフチェーン): Go のライブラリ。Blink Labs の台帳パッケージの上に作られ、Go で書くバックエンドやボット向けとされています
0.3.0 までの使える道具は、オンチェーンが Aiken・Scalus・Plinth、オフチェーンが MeshJS・Scalus・Evolution SDK が中心でした。Python と Go のオフチェーンが加わったことで、ウェブの画面を持たないサービスや、データ処理の延長で Cardano の取引を組みたい開発者にも入口ができました。
コマンドと devnet の手直し
道具の追加のほかに、使い勝手の変更も入っています。告知とリリースノートが挙げているのは次の点です。
- 新しい
tableコマンドで、全部の道具を役割ごとの表で見られる listが役割ごとにまとまり、道具のアイコンが付いた- 依存関係を調べる
doctorが、必要な最低限の版まで確かめるようになった - 出力を JSON にする指定が
--formatから--jsonに簡単になった
手元の試験用チェーンに使う Yaci DevKit まわりでは、立ち上げと片付けが安定し、テストは資金を配る仕組み (faucet) の準備を待ってから走るようになりました。12 日 (UTC) には 0.4.1 も出ており、契約の説明ファイルを CIP-57 の形式に合わせる修正や、MeshJS がパラメータを当てられるよう対象をプロトコル 10 の組み込み関数にそろえる修正が入っています。
「使える」と「試験的」の線引き
雛形が増えたときに見ておきたいのは、それぞれがどこまで確かめられているかです。リポジトリの道具の一覧 (11 月 13 日時点・登録は 21 種) では、印の意味が次のように決められています。
- ✅ 対応済み: CI が毎週と関係する変更のたびにプロジェクトを生成し、ビルドとテストを通している
- 🧪 試験的: CI で生成とテストはしているが、道具か組み込み方がまだ変わりうる。選ぶには
--allow-experimentalが要る
今回の 6 つのうち、Plutarch・Lucid Evolution・Blaze・Apollo は ✅ で、Pebble と PyCardano は 🧪 です。異なる道具の組み合わせについては、すべての組を試すのではなく、オンチェーンは Aiken、オフチェーンは MeshJS を基準に試す方針がとられています。たとえば Plutarch と MeshJS の組は Yaci DevKit の上で端から端まで動くことが確かめられていますが、Plutarch と PyCardano の組はビルドとテストまでです。
一方で、0.3.0 の一覧で予定とされていたオンチェーンの Opshin とオフチェーンの Elm Cardano は、現在の一覧には載っていません。
開発の入口が独立チームの手に
今回の公開は、IOG が 11 月 5 日に DevX のチームを AlwaysTrue へ移すと発表してから最初の版です (IOG、コンセンサスを Serokell へ、開発者体験を AlwaysTrue へ移管)。リポジトリは今も IOG の GitHub の組織の下にあり、ライセンスは Apache 2.0 のままです。10 月には、オープンソースの協会 PRAGMA へのオンボーディングの対象にもなっています (cardano-init、PRAGMA のオンボーディング対象に)。
開発者が最初の 1 時間でつまずかないことは、Cardano の上で作られるものの数に直接つながります。SPO や DRep の立場から見ても、DRep が承認した DevX の取り組みが、移管の直後にどれだけ形のある成果を出すかは、次の予算提案を読むときの材料になります。
次に見るもの
確かめやすいのは、リポジトリの docs/user-guide/tools.md にある道具の一覧です。CI が毎週回しているので、次の版で Pebble と PyCardano が 🧪 から ✅ に上がるか、組み合わせの表に Yaci DevKit 上で動く組が増えるかがここに出ます。試すだけなら、インストールせずに npx cardano-init で対話式の作成から始められます。
ことば
- オフチェーン — スマートコントラクトの外で、取引を組み立てて送る側のプログラム。今回 Python と Go のライブラリが加わり、ウェブ以外のサービスからも組みやすくなりました。
- devnet — 手元で動かす試験用のチェーン。cardano-init は Yaci DevKit を使い、生成したプロジェクトのテストを本物に近い環境で通せるようにしています。
- CIP-57 — スマートコントラクトの入出力の形を書き表す説明ファイル (blueprint) の共通形式。0.4.1 でこの形式に合わせたことで、オフチェーンの道具が読み違えにくくなります。
一次ソース / 関連リンク
- AlwaysTrue 公式 X の告知
https://x.com/alwaystrueio/status/2120868212233662611
cardano-init v0.4.1 リリースノート (GitHub)(GitHub)
GitHub
