OpenCode 違い
2025/07/31追記:opencode-ai/opencode
にて2025/07/29にプロジェクト移動に関する警告が追加されました。
Archived: Project has Moved
This repository is no longer maintained.
The project has continued under the name Crush, developed by the original author and the Charm team.
To reduce confusion and ensure the community follows the active project, this repo will be removed in the near term.
Please follow Crush for ongoing development.
アーカイブ済み:プロジェクトが移動しました
このリポジトリは現在メンテナンスされていません。
プロジェクトは、元の作者とCharmチームによって開発されたCrushという名称で継続されています。
混乱を避けるため、およびコミュニティがアクティブなプロジェクトを追跡できるようにするため、このリポジトリは近日中に削除されます。
継続的な開発についてはCrushをご確認ください。
100%Goで作られている点は変わっておらず、opencode-ai/opencode
の頃より多くのOS、アーキテクチャ向けにバイナリが配布されています。
なお、ライセンスが少々変わっており、FSL-1.1-MIT
と呼ばれるものになっています。
リポジトリを削除するということはsst/opencode
の"What's the other repo?"に書かれている内容の事実確認が難しくなってしまいますので、この記事は歴史的資料として残しておきます。
Caution
この記事を読んで今緊急でZennを書いているんですけれども、OpenCodeは2つあって、ちゃんと区別しないとステークホルダーに失礼なので気をつけましょうということを伝えたいです。
opencode-ai/opencode
おそらく皆さんが最初にXで見たであろう、gihyo.jpで紹介されていないOpenCodeはこちらです。
99%Goで作られています。
メイン開発者はKujtim-sanです。
Kawaii TUIフレームワークのBubble Teaを使っていて、Kujtim-sanは現在Bubble TeaなどKawaiiターミナルライブラリを開発しているCharmで働いています。
そう聞くと謎の安心感がありますが、実際はそうでもないようです。
CharmのCEO、Christian-sanのX Postを見てみましょう。
やあみんな、ちょっといいかい? 僕、Charmって会社の代表なんだ。今、OpenCodeのことで、事実と違うウワサが広まってるみたいだから、僕が何があったのか、ちゃんとお話ししたいんだ。
話は4月にさかのぼる。Kujtim Hoxhaっていう、すごく才能のある青年が「TermAI」っていうクールなプロジェクトを始めたんだ。うちの会社の、えーっと…Bubble TeaとかLip Glossとか、そういう楽しい名前のツールを使ってね。
そしたら、2人の開発者が彼に近づいてきて、「手伝うよ! もっと良くしようぜ!」って言ってくれたんだ。で、プロジェクトの名前を「OpenCode」にしようって提案した。そのうちの1人は、ご丁寧にドメインまで取ってきてくれたんだよ。
その時、彼らはKujtimにはっきりこう言ったんだ。「これは君のプロジェクトだからね。全部君のものだ。いつでも好きなようにしていいんだよ」って。信じられるかい?
僕たちはKujtimの作ったものが大好きになってね。だから彼をフルタイムでうちに誘ったんだ。「Charmで、お金の心配なく、仲間と一緒にこの素晴らしいプロジェクトを続けよう!」ってね。もちろん、例の2人にも話はしたんだけど、「いや、うちはいいや」って感じだった。
僕も「もしプロジェクトがうちに"お引越し"するなら、名前も変わるかもしれないね」とは言ったけど、まだ何も決まってなかったんだよ。
ところがだよ、みんな、ここからが大変なんだ。その直後、彼らはプロジェクトを勝手に自分たちの会社の場所に移して、「OpenCode」って名前も、AURパッケージっていうのも、自分たちが持ってたドメインも、全部自分たちのものにしちゃったんだ! なんてこった!
だから、今出回ってるウワサについて、はっきりさせておくね。
- まず、誰かが頑張った記録(コミット履歴)を消したりは絶対にしてない。
- みんなが困らないように、パッケージはうちで登録し直したんだ。
- コメントを消したのは、それが誤解を招いたり、変な宣伝だったりした時だけさ。
- そして何より、このプロジェクトは今も、生みの親であるKujtimが、みんなに見える場所でちゃんと続けてるんだ。
Kujtimが始めたオリジナルのプロジェクトは、今もオープンソースで、元気に動いてる。僕たちCharmのチームみんなで、全力で応援してるんだ。
…ってわけさ。これが本当の話。
また近いうちに、新しいニュースを伝えられると思うよ。
Gemini 2.5 ProにSystem Instructionを追加して翻訳し加筆修正
言っている意味がよく分かりませんが、この発言は後述する2人の開発者のほか、T3 Stackの提唱者で有名なTheo-sanをはじめとしたTypeScript Gangから非難を受けることになりました。
ちなみに現在のopencode-ai/opencode
のAURパッケージはopencode-ai-binです。
sst/opencode
で、こちらが今回gihyo.jpで紹介されたopencodeです。
メイン開発者はDax-sanですが、Tomorrowというポッドキャストを一緒にやっているAdam-sanも開発に参加しています。
まずは先程のX Postに関する一部反論を見てみましょう(原文はChristian-sanのX Postのスレッドを参照してください)
Dax:
ねえ、みんな! 何がどうなっちゃったのか分からないんだけど、僕とAdamが頑張った分がどこかへ消えちゃったみたいなんだ。ほら、協力メンバーのリストに名前が載ってないよ! どうしよう!Adam:
なあ、「opencode」なんて名前、どう考えてもピンとこないだろ? もっとこう、バシッとカッコいい名前に変えちまえばいいじゃないか! ね、簡単だろ?Theo:
おっとっと、それで一本取ったつもりかい? もうさ、そんな名前はポイしちゃって、新しい仲間と楽しくやろうぜ!
Gemini 2.5 ProにSystem Instructionを追加して翻訳し加筆修正
とにかくopencodeという知名度の高い名前がほしいことが伺えます。
続いてDax-sanのX Postを見てみましょう(時系列がごちゃごちゃになってしまいましたが、今回紹介したX Postsの中で一番古いものです)
いいかい? 僕、この問題はね、みんなには見えないところで、ちゃんと話し合って解決しようとしたんだ。でもね、途中からお返事が来なくなっちゃって…。
そもそも「Charm」っていう会社がね、もともとこの「opencode」を自分たちのものにしたいって言ってきたんだ。開発のリーダーの子は賛成したんだけど、僕とAdamは「うーん、それはちょっと違うんじゃないかな」って思ったんだよ。
だから、僕はそこの社長さんとちゃんとお話したんだ。「この『opencode』って名前は、僕がお金を払ってドメインも取ったし、みんなも僕たちのものだって知ってくれてる。だから、この名前は僕のものですよね?」って。そしたら、社長さんも「うん、そうだね」って納得してくれたんだ。
僕はね、泥沼の長いケンカなんてしたくなかった。だから、お互いに譲り合うことにしたんだ。「わかった、じゃあプログラム本体は君たちに譲るよ。その代わり、『opencode』っていう名前だけは、僕が大切に使い続けるからね」って、そういうお約束をしたわけ。
それでね、もう1ヶ月も経つんだ。僕たちは心機一転、まっさらな状態から、新しいものを一生懸命作ったんだよ。…なのに、彼ら、まだ僕たちの名前を使い続けて、みんなを混乱させてるんだ。ひどいじゃないか。
それだけじゃないんだ。彼らがやったこと、聞いてくれるかい?
- 僕が頑張って書いた記録を、まるで無かったことみたいに書き換えちゃうし…
- わざと紛らわしい名前で新しい部品を登録して、みんなを困らせようとするし…
- Adamなんて、元々いた場所から追い出されちゃうし…
- 他の人が「やっぱりこれはやめます」って言った変更を、勝手に取り込んじゃうし…
- 「どうなってるんですか?」っていう質問のコメントも、見えないように消しちゃうんだ。
だから、僕たちが「新しいopencodeができましたよ!」ってお話ししても、たくさんの人たちが間違った場所に行っちゃってるんだ。これじゃ、せっかくのお話がちゃんと伝わらないよ。
まったく…人のものを横取りしようとするなんて、本当にかっこ悪いことだよ。僕は悲しいな。
やっぱり、最初から彼らと関わるのは、ちょっと心配だなって思ってたんだけど…その予感が当たっちゃったみたいだね。
Gemini 2.5 ProにSystem Instructionを追加して翻訳し加筆修正
これは…矛盾していますね。
とにかく関係がこじれた以上、今後はCharm’s Stackを使い続けるのも難しいですから、まずは一部ソースコードをBunとTypeScriptに変更して開発を続けていくようです。[2][3]
sst/opencode
のAURパッケージはopencode-bin
で、npmパッケージはopencode-ai
ですので注意しましょう。
Note
別に私はどちらが正しいことを言っていて、どちらを使うべきと提言するつもりはありません。
TypeScript Gangではないので。
ただ両方がオープンソースのClaude Codeクローンを目指している以上、全く同じ機能を追加していくと、最終的にはプログラミング言語やフレームワークぐらいでしか差別化ができなくなってしまいます。
プログラミング言語やフレームワークの観点から見て、皆さんはどちらのOpenCodeを応援したいですか?
その気持ちを大切にしながら、正しい選択をしていただければ幸いです。
記事を書いていたら、昔私がGoのDBクライアントBunについてZennで一番最初に記事を書いていたのに、いつの間にかタグがTypeScriptランタイムのBunのアイコンに変わっていたことを思い出しました。
Discussion