設定と国際化¶
設定は .codexspec/config.yml に保存します。テンプレートは英語のままですが、
エージェントは設定された言語で対話文と成果物を作成します。
標準の言語コードは 13 個です:en、zh-CN、zh-TW、ja、ko、es、fr、de、pt、ru、it、ar、hi。
ポルトガル語の CLI コードは pt で、ローカライズされたドキュメントと翻訳カタログでは pt-BR を使います。
言語の個別設定¶
| 区分 | 設定キー | 初期化時 | 後から設定 | 対象 |
|---|---|---|---|---|
| 出力・基本言語 | language.output |
--lang |
config --set-lang |
他の言語設定で指定がない場合の基本言語 |
| 対話 | language.interaction |
--interaction-lang |
config --set-interaction-lang |
会話と CLI 出力 |
| ドキュメント | language.document |
--document-lang |
config --set-document-lang |
要件、仕様書、設計、計画、タスク |
| コミット | language.commit |
--commit-lang |
config --set-commit-lang |
コミットメッセージと Git ワークフローで生成する文章 |
各言語設定は、それぞれ独立して language.output、次に en の順でフォールバックします。
language.templates は en のままです。
codexspec init my-project --ai both \
--interaction-lang zh-CN --document-lang en --commit-lang en
codexspec config
codexspec config --set-document-lang en
codexspec config --list-langs
初回の TTY 初期化では、--lang または 3 つすべての個別言語オプションを指定していなければ、基本言語の選択を求めます。
--force は他の初期化時の確認を自動で承認しますが、この言語選択は省略しません。
非 TTY での初期化では、デフォルトで英語を使います。再初期化時も、明示的に設定していない言語キーは保持されます。
ワークフローとレビューの設定¶
| 設定 | デフォルト | 動作 | CLI 操作 |
|---|---|---|---|
workflow.auto_next |
false |
合格した通常の SDD ステージから次へ進む | config --auto-next on\|off |
workflow.auto_distill |
true |
完了処理の成功後、人との対話なしに知識を抽出 | config --auto-distill on\|off |
workflow.auto_maintenance |
true |
自動修正時に、検証済みの保守改善を段階的に適用 | config --auto-maintenance on\|off |
workflow.worktrees |
true |
通常の機能と独立した保守作業を別の worktree に分離 | config --worktrees on\|off |
review.decided_by |
reviewer |
プロジェクトの運用範囲外で発生する指摘について、判断する人を指定 | config --decided-by reviewer\|ask |
真偽値を取る CLI スイッチは、大文字・小文字を区別せず、on/true/1/yes と off/false/0/no を受け付けます。前後の空白も許容されます。
値を指定せずに使うと、書き込み先チェックアウトの現在値を切り替えます。YAML には真偽値として保存します。
review.decided_by: reviewer では、レビュアーが欠陥として認定するかを判断します。
ask では、運用範囲外の発生条件を、ユーザーの判断待ちのシナリオとして扱います。
ユーザーは修正するか、そのシナリオを除外するかを一度決め、確認済みの判断は後続のラウンドでも使えるよう保存されます。
判断待ちの項目がある間は完了できません。1 回の review-code 実行に限り、--decided-by で設定済みのモードを上書きできます。
設定の書き込みも worktree の作業先選択に従います。 main チェックアウトから独立した変更を行う場合は、保守用 worktree に書き込み、main で有効な設定は直ちには変わりません。 機能 worktree 内での変更は、その場所で有効になります。