Cha から Ch へ
大きなお知らせ
私は Cha を段階的に終了し、Ch に集中します。2025年8月23日 に Cha を非推奨としてマークし、今後の開発努力はすべて Ch に向けることにしました。今の方針はシンプルです。シンプルで、軽く、速い 1つのツールを保ち、それを維持し、バグを修正する。機能追いはしない。
私が当初 Cha を作った理由
LLM や ChatGPT が新しかった頃、私が欲しかった CLI ツールはどこにも現れませんでした。ChatGPT は 2022年11月に登場し、GPT-4 のリリースがあった 2023年初頭に本当に広まりました。私はしっかりしたコマンドラインツールが出てくるのを待っていましたが、どれも私の望むようには本当に動きませんでした。そこで Cha を作り、毎日使いました。実際、私の最初のブログ記事でははっきりこう書きました。こういうプロジェクトはよくあるが、どれも私のニーズに合わなかったので、自分で書いたのだと。
Cha は私の子どものようなものでした。私は毎日使い、その開発をとても楽しみました。そして1年以内に、GitHub で +60 のスターを集め、少しずつ成長しました。この間に、Web スクレイピング、YouTube の文字起こし取得、画像生成、複数行入力、対話型/非対話型の両チャット、STT プロンプト入力、カスタムツールのサポート、OpenAI だけでなく他のさまざまなプラットフォームのサポート、独自の Answer Search エンジン、高度なディレクトリ移動とファイル編集、内容をクリップボードにコピーする機能、応答の TTS などを備えるようになりました。かなり多くのことをこなし、動作し、コマンドラインツールとして本当に 有用で強力 でした。
なぜ Ch(Python から Go へ)に移行したのか
時間が経つにつれて Cha は重くなりました。機能セットは素晴らしかったのですが、日々必要としていたものに対して表面積が大きすぎました。その結果、Cha は本当に肥大化してしまいました。さらに、Python で書かれていたことも2つの重大な問題を生みました。1つは 速度 で、単純な初期読み込み時間だけでもなお 0.8秒 かかっており、これは Python の遅い初期パッケージ読み込み時間を回避し、マルチプロセッシングを使うために多くの最適化と工夫を施した後の数字でした。そして Python はインストールが非常に 難しい です。Cha はさまざまなサードパーティのオープンソースツールに依存していたため、インストールがとても大変でした。私の限界点は、Android タブレットだけを持って Termux を使いながら旅行していたときに、まったく動作せず、多少なりとも動かすことすら非常に苦痛で無意味だったことです。
そこで私は Ch という新しい実験を始めることにしました。Ch は Cha のようなものですが、Python ではなく GoLang で書かれ、Cha の 本質的な機能 だけを含み、軽く、速く、ほとんどのシステムに簡単にインストールでき、機能過多ではないことを目指しました。そうすることで、単独の保守担当者としてプロジェクトを維持しやすくなります。
Ch を数か月間開発し使ってみて、私は Cha の将来が元の Cha のコードベースではなく Ch にあることに気づきました。私は Cha にあまりにも多くの時間を費やしており、単独開発者として両方のコードベースを維持するのは時間を食いました。その一方で Ch は、はるかに 軽く、速く、インストールしやすい 状態で中核的な作業をこなしていました。それで決断は明白になりました…
Go での書き直しにより、高速な起動、単一バイナリ、そしてより小さな認知モデルが得られます。Ch の README はそれをうまく要約しています。Ch は後継であり、起動は 10倍以上速く、パフォーマンスも大幅に優れています。
決断
私は 2025年8月23日 に Cha を正式に 非推奨 とし、Cha の README を通じて人々を Ch に案内しました。Cha のリポジトリは歴史的参照として残してあり、私は Ch を メンテナンスモード で維持し、安定性とバグ修正 に焦点を当てています。追加する価値がある、あるいは追加が 重要 である場合を除き、新機能を増やすことにはあまり関心がありません(それが今後どういう意味になるかは時の流れ次第ですが)。
Ch に現在含まれている機能
Ch は日々の作業を、余分なものなしでカバーします。
- GoLang で書かれた軽量 CLI による高性能な起動
- 複数プロバイダ対応(OpenAI、Groq、DeepSeek、Anthropic、XAI、Together、Gemini、Mistral、Ollama)
- 対話モードと直接モード、任意のコマンドからのパイプ入力、ファイルとディレクトリの読み込み、トークン数カウント、コードブロックのエクスポート、チャット履歴ビューア、モデル/プラットフォーム切り替え、バックトラッキング、コードダンプ、シェルセッション記録、クリップボード統合
- YouTube リンク処理を含む、組み込みの Web スクレイピングと検索を、わかりやすい形で統合
Cha と比べた Ch で欠けているもの(そしてその理由)
Ch は Cha の 本質的な機能 だけを残そうとしましたが、その過程で以下の Cha の機能を Ch から外しました。
- 高度な「Editor」UI と「Answer Search」は引き継がれません
- 音声、動画、画像の取り込み、音声入力と音声出力、そしていくつかの追加エクスポートやコードダンプの細かな便利機能は優先事項ではありません
- Cha にあったいくつかのナビゲーション補助と「ルートディレクトリ変更」の挙動は Ch にはありません
- ローカルの「保存済みチャット付きプロファイル」は意図的にデフォルトの流れではありません
私はこれらの多くを、肥大化あるいは「あると便利」なものとして分類しました。私が重要だと考えたのは Web 閲覧と Web スクレイピング で、これは Ch にはありませんでしたが、その後 Ch に統合し、余計な部分なしでコアのループが完成しました。それだけではなく、Ch には !x という新機能があり、Ch のセッション中にシェルセッションを記録してそれをチャット履歴に追加できます。これにより、必要であれば他の CLI ツールを使い、その出力をモデルのために保存できます。この機能により、Ch がすべてを背負って肥大化することなく、Cha にあった元々不足していた多くの機能を Ch に取り込めます。Ch については、この新しいブログ記事でさらに詳しく知ることができます。
Ch/Cha 対 Claude Code
2025年7月、私は Cha と最新の AI 搭載 CLI ツールを比較し、それらのツールでは得られない Cha の価値を説明しました。これを踏まえ、今回もこのブログにそれを含めたいと思いました。なぜなら Ch も本質的には同じ価値を提供しており、この切り替えの後でも 比較は数か月後もなお成り立つ からです。同じ哲学が Ch にも当てはまります。
主な違い
- Ch/Cha のアプローチは、バックグラウンドで自律的に判断する AI ワーカーを置かず、あらゆる段階でユーザーの完全な制御を重視します。明示的でユーザーが制御するコンテキスト管理が得られ、日常的なアクティブ利用では通常月額 $1 から $20 程度のコストです。予期しない編集はなく、すべてがユーザー主導で行われるため、深い関与と厳密なコスト管理に理想的です。
- Claude Code や Gemini のようなエージェント型 CLI は、自動化されたワークフロー判断と賢いエージェントによる自律的な選択を行う別の道を取ります。AI に管理されたコンテキストとファイル処理を扱い、同程度の利用では通常月額 $10 から $200+ 程度のコストです。彼らは自律的なコード変更に優れており、迅速なプロトタイピングと委任に最適です。
Ch/Cha スタイルを選ぶとき
- 完全な透明性を備えた最小コスト
- すべてのやり取りを完全に制御
- 開発プロセスへの深い関与
- 機密プロジェクト向けの明示的なコンテキスト管理
エージェント型ツールを選ぶとき
- 迅速なプロトタイピングと素早い反復
- AI による自動化と委任を好む
- コストより速度を重視
推奨
万能薬はありません。あらゆるケースをカバーするツールもありません。Ch は、費用対効果の高い日常タスクと正確な制御に優れています。Claude Code や Gemini CLI のようなエージェント型ツールは、速度と自動化に重点を置いた、複雑な複数ファイル・複数環境のコーディングで輝きます。コストを抑え、制御を保ちたいなら Ch を使ってください。迅速な反復が必要で、制御を委ねることに抵抗がないならエージェント型ツールを使ってください。多くの人はまず Ch で良い対話パターンを学び、その後ニーズの変化に応じてエージェント型ツールを追加します。
Cha と Ch の未来
Cha と Ch の未来はこうです。Cha は 非推奨でアーカイブ済み であり、ある種の歴史的参照としてのみ機能します。Ch が今や新しい Cha です。今後も 保守され、強化され(必要なら)、使われ続けます。私は Ch の 機能肥大化 に強く抵抗していくつもりです。そして今後は、私が Cha と言う/参照する場合、それは Ch を指し、古い Python ベースの Cha は 「Cha v0」 または 「古い Cha」 と呼ぶことにします。そういうわけで
धन्यवाद
最初から Cha の歩みを追ってくれたなら、ありがとうございます。あのプロジェクトは私に多くを教えてくれ、私が実際にどう働くかにより合った、同時にコミュニティ全体にとってもより良いバージョンへと私を押し進めてくれました。もし初めてなら、Ch を使い始めて、シンプルに保ってください!