OpenCode 2.0 リリースノート:新機能のご紹介
コアアーキテクチャの刷新
OpenCode 2.0 は、一時的なクライアント/サーバーモデルから、永続的なバックグラウンドプロセスへと移行します。ホストマシン上で単一のデーモンとして実行されることで、TUI、Web インターフェース、デスクトップアプリケーションがすべて統一された状態で通信できるようになります。このアーキテクチャにより、@opencode/client などのプログラムによるクライアントがローカルサービスを自動的に検出し、スケジュールされたタスクやリモートホスト接続のシームレスな統合が可能になります。
エージェント機能の強化
OpenCode 2.0 では、最小限の JavaScript インタープリターを搭載した「コードモード」が導入され、エージェントがスクリプトをネイティブに実行できるようになりました。MCP サーバーや OpenAPI エンドポイントを取り込むことで、エージェントは複数のツール呼び出しを単一のスクリプトにまとめ、ラウンドトリップの遅延を削減できます。さらに、システムはバックグラウンドのサブエージェントと非同期シェルコマンドをサポートするようになりました。これにより、プライマリエージェントはメインの対話ループをブロックすることなく、タスクをセカンダリモデルや長時間実行プロセスに委任でき、より複雑なオーケストレーションが可能になります。
プラグインシステムと SDK
長期的な安定性を確保するため、OpenCode 2.0 チームはほぼすべてのコア機能を内部プラグインとして実装し、80 を超える安定したホットリロード可能なプラグインのライブラリを実現しました。プラットフォームは現在、@opencode/sdk パッケージを通じて機能を公開しており、開発者は標準の OpenCode サーバープロトコルとの互換性を維持しながら、Durable Objects などの特殊な環境で実行されるカスタムバージョンのハーネスを構築できます。
コミュニティからのフィードバックと実装に関する洞察
ユーザーは改善されたプラグインシステムと堅牢なクライアント/サーバーモデルを高く評価する一方で、このリリースはリソース消費とインストール体験に関して批判に直面しています。コミュニティの議論では、いくつかの重要な懸念事項と評価点が浮き彫りになっています:
- パフォーマンスと肥大化: 複数のユーザーがメモリ消費の多さを指摘しており、一部では軽量な代替ツールと比較して「重い」と報告されています。また、大量のセッションログを保存するデフォルトの動作についても懸念が提起されました。
- インストーラーの体験: 初期採用者は、
curl | shインストールスクリプトが極端な遅延に見舞われたと報告しており、これはプログレスバーのレンダリングのオーバーヘッドに起因するとされています。 - セキュリティとサンドボックス: バックグラウンドプロセスへの移行によりサンドボックスの仕組みが変化し、一部のユーザーはアップグレード後に以前のセキュリティラッパーが無効になったと報告しています。また、必須のリモート設定読み込みのセキュリティへの影響についても議論が続いています。
- 開発者体験: 多くのユーザーがカスタムモデルの使用と新しいプラグインアーキテクチャの柔軟性を高く評価していますが、バージョン 1.0 からの移行の複雑さに不満を感じる人もいます。
「バックグラウンドタスク/サブエージェント機能と、サブエージェント起動時にモデルを指定できる機能は、今のところ私のお気に入りの改善点です。小さなことですが、日常の開発における生活の質を大きく向上させます。」 — コミュニティユーザー
「『Claude、ローディングバーとかでインストーラーをめちゃくちゃかっこよくしてくれ』から生まれたコミットは、メモリ使用量を 10 MB 減らすためにその変更を元に戻すコミットよりも、開発者に常に好まれるでしょう。」 — コミュニティユーザー
2.0 へのアップグレード
アップグレードには新しい API への移行が必要です。1.0 のプラグインは 2.0 のアーキテクチャと互換性がないためです。ユーザーは CLI で opencode upgrade --major を実行するか、最新のデスクトップインストーラーをダウンロードすることをお勧めします。移行ドキュメントでは、tui.json 設定の更新と新しいサーバーサイドプロトコルへの適応を支援する自動ツールが提供されています。
Sources
関連
- プロジェクト
- Dispatch
- Dispatch
- Dispatch
- Dispatch