GPT-5.5退役準備入門——Codexのモデル指定を棚卸しする
OpenAIのGPT-5.5退役案内を題材に、CodexやChatGPT Workのモデル指定をNext.js + Firestore + GitHub Actionsで棚卸しする実践手順を解説します。

はじめに
AIコーディング環境をチームで使っていると、モデル指定は思ったより多くの場所に散らばります。Codex CLIの保存済み設定、ChatGPT Workのワークスペース既定値、カスタムエージェント、GitHub Actions、社内ドキュメントに残った起動例などです。
OpenAI DocsのChatGPT & Codex changelogでは、2026年10月14日に gpt-5.5 がChatGPT、ChatGPT Work、Codexから退役すると案内されています。対象はconsumer、Business、Enterprise、Eduを含む各プランです。一方で、この退役はOpenAI APIには適用されない、とも明記されています。
CodexをChatGPTサインインで使っている場合は、退役日までに gpt-5.5 から gpt-5.6-sol へ切り替える案内が出ています。更新対象は、ワークスペース既定値、保存済みモデル設定、管理設定、カスタムエージェント、スケジュールタスク、スクリプトです。
本記事では、架空の請求管理SaaS「InvoiceFlow」を題材に、Next.js App Router + Firestore + GitHub Actions + TypeScriptで「古いモデル指定がどこに残っているか」を棚卸しする仕組みを作ります。
参考にした一次情報は次の通りです。
何を棚卸しするのか
今回のポイントは、「すべてのOpenAI利用を一律に置き換える」ではありません。OpenAI APIの gpt-5.5 利用と、ChatGPTサインインのCodex利用では退役案内の範囲が違います。まずは対象を分けます。
| 見つかった場所 | 例 | 対応 |
|---|---|---|
| Codex / ChatGPT Work設定 | gpt-5.5 | gpt-5.6-sol への切替対象 |
| カスタムエージェント | model: gpt-5.5 | 役割ごとに置換候補を確認 |
| スケジュールタスク | 夜間レビュー、定期レポート | 実行前にモデル指定を更新 |
| OpenAI APIコード | model: "gpt-5.5" | 今回の退役対象外。ただし別途モデル方針として棚卸し |
| 旧研究プレビュー | gpt-5.3-codex-spark | 2026年9月14日に非推奨済みなので除去対象 |
OpenAI APIのモデルガイダンスでは、GPT-5.6系の選択肢として gpt-5.6-sol、gpt-5.6-terra、gpt-5.6-luna が説明されています。また、gpt-5.6 エイリアスは gpt-5.6-sol にルーティングされるとされています。API側を動かす場合は、品質、コスト、レイテンシを測ってから切り替えます。
ハンズオン1: モデル指定を検出する
まず、InvoiceFlowのリポジトリで古いモデル名を検索します。最初は .codex、.github、scripts、src、docs を見ます。
rg "gpt-5\\.5|gpt-5\\.3-codex-spark" .codex .github scripts src docs package.json
検索結果は「どの面で見つかったか」に分類します。APIコードとCodex設定で対応が違うためです。
// src/lib/modelRetirementAudit.ts
export type ModelFinding = {
path: string;
line: number;
model: string;
surface: "codex" | "github-actions" | "script" | "app" | "docs";
action: "replace" | "review-api-usage" | "remove";
};
const retiredModels = /(gpt-5\.5|gpt-5\.3-codex-spark)/g;
function detectSurface(path: string): ModelFinding["surface"] {
if (path.startsWith(".codex/")) return "codex";
if (path.startsWith(".github/")) return "github-actions";
if (path.startsWith("scripts/")) return "script";
if (path.startsWith("docs/")) return "docs";
return "app";
}
export function findRetiredModelReferences(
files: { path: string; content: string }[],
): ModelFinding[] {
return files.flatMap((file) =>
file.content.split("\n").flatMap((text, index) =>
[...text.matchAll(retiredModels)].map((match) => {
const model = match[1];
const surface = detectSurface(file.path);
return {
path: file.path,
line: index + 1,
model,
surface,
action:
model === "gpt-5.3-codex-spark"
? "remove"
: surface === "app"
? "review-api-usage"
: "replace",
};
}),
),
);
}
review-api-usage は、今回のGPT-5.5退役がOpenAI APIには適用されないための分類です。APIコードを放置するのではなく、Codex退役対応とは別の移行判断として扱います。
ハンズオン2: Firestoreに移行台帳を作る
次に、検出結果をFirestoreへ保存します。複数リポジトリにまたがる対応は、PRコメントだけでなく台帳として残すと追跡しやすくなります。
// src/app/actions/saveModelRetirementAudit.ts
"use server";
import { FieldValue } from "firebase-admin/firestore";
import { db } from "@/lib/firebaseAdmin";
import type { ModelFinding } from "@/lib/modelRetirementAudit";
export async function saveModelRetirementAudit(input: {
repository: string;
commitSha: string;
findings: ModelFinding[];
}) {
const replaceCount = input.findings.filter((f) => f.action === "replace").length;
await db.collection("aiModelMigrationAudits").add({
provider: "openai",
retirement: "gpt-5.5-codex-2026-10-14",
repository: input.repository,
commitSha: input.commitSha,
status: replaceCount > 0 ? "needs_action" : "reviewed",
findingCount: input.findings.length,
replaceCount,
findings: input.findings,
checkedAt: FieldValue.serverTimestamp(),
});
}
保存するのはファイルパス、行番号、モデル名、分類、対応方針だけです。設定ファイルやプロンプト全文は保存しません。AIエージェント向けの設定には、社内URLや認証フローのヒントが含まれることがあるためです。
ハンズオン3: GitHub Actionsで退役日まで止める
最後に、PR時点で古いCodex向けモデル指定を止めます。退役日が明確なので、2026年10月14日を過ぎてから慌てるより、9月中に検出できる状態にします。
name: OpenAI model retirement audit
on:
pull_request:
paths:
- ".codex/**"
- ".github/**"
- "scripts/**"
- "src/**"
- "docs/**"
- "package.json"
jobs:
audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Detect retired Codex model references
run: |
if rg "gpt-5\\.5|gpt-5\\.3-codex-spark" .codex .github scripts docs package.json; then
echo "Retired or retiring Codex model reference found."
echo "Migrate Codex gpt-5.5 references before 2026-10-14."
exit 1
fi
ここでは src のAPIコードを失敗条件から外しています。今回の公式案内ではOpenAI APIは退役対象外だからです。API側でGPT-5.6へ移るなら、OpenAIのモデルガイダンスに沿って reasoning.effort を維持して比較し、必要に応じて一段低い設定も測ります。
まとめ
GPT-5.5退役のニュースは、モデル名を置換するだけでなく、AI開発環境の設定がどこに散らばっているかを見直すきっかけになります。
- 2026年10月14日に
gpt-5.5はChatGPT、ChatGPT Work、Codexから退役する - Codex with ChatGPT sign-inでは
gpt-5.6-solへの切替が案内されている - OpenAI APIは今回の退役対象外なので、Codex設定とAPIコードを分けて扱う
- Next.js + Firestoreで移行台帳を作ると、複数リポジトリの対応状況を追いやすい
- GitHub Actionsでは、まず
.codex、.github、scripts、docsの古い指定を止める
20〜30個のリポジトリを見る場合も、一気に全修正せず、3〜4リポジトリずつ進めるとレビューしやすいです。退役日が決まっている変更は、モデル指定を「個人の手元設定」ではなく、運用品質の一部として扱っていきましょう。