AiderとOpenCode:Gitプロジェクトに合うCLIの選び方
AiderとOpenCodeを、編集するファイルの選択、Gitの自動コミット、エージェントとツールの権限から比較します。同じGitリビジョンのクリーンなコピーで小さな修正を試し、計画、テスト結果、差分を確認。追加権限や想定外の変更も記録し、自分のプロジェクトで制御しやすいCLIを選ぶ手順です。
目次

編集ファイルを明示的に選び、Gitで小さな変更を確認したいならAiderから試します。計画と実行を切り替え、ツールやエージェントを管理したいならOpenCodeから試します。これは作業方法の選択です。回答品質にはモデル、コンテキスト、タスクも影響します。
未完了の変更がある本番のリポジトリでは試さず、小さなテストプロジェクトか、同じリビジョンのクリーンな作業コピーを二つ使います。秘密情報、業務キー、不要なデータはテストに入れません。
編集前に比べる制御方法
| 要件 | Aider | OpenCode |
|---|---|---|
| 編集用と参照用ファイルの選択 | /add、/read-only、/drop、一覧は/ls | 選んだエージェントのコンテキストとファイル・ツール権限を確認 |
| 編集前に相談 | /askから/codeへ | PlanとBuildを切り替え |
| Gitコミットの管理 | 自動コミットを設定可能 | 許可するGitコマンドを明確にする |
| ツール制限 | 相談モードと追加ファイルの管理から始める | allow、ask、denyルール |
Aiderのコマンドはチャット内のファイルと扱いを指定します。コマンドリファレンスを参照してください。OpenCodeの主エージェントはsubagentsを呼べるため、モード名だけでなく実際に使ったツールも確認します。
Aiderでは最初にコミット設定を確認
Aiderは既定で自分の変更をコミットします。dirtyなファイルを編集する前に、既存の変更をコミットする場合もあります。履歴をすべて自分で管理したいなら、最初の編集前に設定してください。
手動コミットの試験では、設定済みクライアントを次のように起動します。
aider --no-auto-commits --no-dirty-commits
これらは二つの自動コミット動作を無効にします。編集を禁止するものでも、バックアップの代わりでもありません。挙動、/diff、/undoの条件はGit integrationにあります。
編集対象はタスクのファイルだけ、参照ファイルはread-onlyで追加します。/lsを確認し、/askで予定する変更を説明させます。合意後に/codeで限定した修正を依頼します。Chat modesも確認してください。
OpenCodeでは対象エージェントの権限を確認
主エージェントはBuildとPlanです。現在のドキュメントではPlanはファイル編集とBashコマンドに許可を求め、Buildは実行を担当します。Planという名前は独立したファイルサンドボックスを意味しません。Agentsと自分の設定を照合します。
新しいテストプロジェクトで、最初の試行に編集とコマンドの明示的な禁止が必要なら、次を使えます。
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"edit": "deny",
"bash": "deny"
}
}
opencode.jsonに保存します。既存プロジェクトではファイル全体を置き換えず、該当セクションを統合します。エージェント別ルールはグローバル設定を上書きできるため、先に確認してください。指定したツールの制限であり、すべての外部動作の完全な隔離を保証しません。
同じファイルを変更せず説明させます。編集前に必要な権限だけを変更し、利用可能になるコマンドを確認します。試験を通すために全ツールを許可しないでください。構文と優先順位はPermissionsにあります。
同じ小さなタスクで試す
モデルの説明を信じなくても検証できる変更を選びます。たとえばURL断片を作る関数で、" Release Notes "を"release-notes"に変換し、空文字列ではValueErrorにするよう依頼します。変更は関数ファイル一つとテストファイル一つに限定します。
各クライアントについて、同じ開始Gitリビジョンと依頼文、選んだモデルと接続先、編集可能ファイルと許可したテストコマンド、自動コミットの想定を記録します。
まず計画を比べ、別々のコピーで限定的な編集を許可します。自分のテストと次のコマンドで確認します。
git status --short
git diff --check
git diff --stat
git log -3 --oneline
自動コミット後は通常のgit diffが空になる場合があります。現在のHEADと記録した開始リビジョンを比較して、変更全体を確認します。untrackedファイルは通常のdiffに含まれないので別に確認してください。
追加ファイルや権限が必要だったら具体的な理由を記録します。「速く感じた」より有用です。一度の成功では、別言語・モデル・リポジトリでの優位性は証明できません。
結果から選ぶ
手動のコンテキスト選択と小さな変更の確認が合うならAiderを選びます。複数エージェントやツール管理が必要で、実際の権限を明確に確認できたならOpenCodeを選びます。不要なファイル変更や予期しないコミットがあれば、設定を直して同じ小さな試験を繰り返します。
API接続は編集品質と別に確認します。認証成功は正しいコードの証明ではありません。インストールには既存のOpenCode手順があります。ここでの選択基準は、自分のGitプロジェクトで制御できる結果です。