Codex プロンプト速攻リファレンス:生成/修正/要約/変換の定型文 20
AI 駆動の開発支援ツール Codex を使えば、プログラミング作業が驚くほどスムーズになります。しかし、「どんなプロンプトを書けば期待通りの結果が得られるのか」と悩んだことはありませんか。
本記事では、Codex で今すぐ使える定型プロンプト 20 個を、生成・修正・要約・変換の 4 つのカテゴリに分けてご紹介します。実務でよく遭遇する場面を想定した具体例とともに解説しますので、コピー&ペーストするだけですぐに活用できるでしょう。
プロンプト早見表
以下は、Codex で使える定型プロンプト 20 個の一覧です。目的に応じてコピー&ペーストしてご活用ください。
| # | カテゴリ | プロンプト概要 | 主な用途 |
|---|---|---|---|
| 1 | 生成 | 関数の自動生成 | 指定した機能を持つ関数を作成 |
| 2 | 生成 | クラスの自動生成 | オブジェクト指向のクラス構造を作成 |
| 3 | 生成 | テストコードの生成 | ユニットテストや E2E テストを作成 |
| 4 | 生成 | API エンドポイントの生成 | RESTful API の基本構造を作成 |
| 5 | 生成 | データベーススキーマの生成 | テーブル定義やモデルを作成 |
| 6 | 修正 | バグ修正 | エラーや不具合を特定して修正 |
| 7 | 修正 | パフォーマンス最適化 | 処理速度やメモリ使用量を改善 |
| 8 | 修正 | セキュリティ脆弱性の修正 | 安全性の問題を検出して対処 |
| 9 | 修正 | コードのリファクタリング | 可読性や保守性を向上 |
| 10 | 修正 | 型エラーの修正 | TypeScript 等の型関連エラーを解決 |
| 11 | 要約 | コードの説明生成 | コードの動作を自然言語で解説 |
| 12 | 要約 | ドキュメント生成 | JSDoc やコメントを自動作成 |
| 13 | 要約 | コードレビューコメント生成 | 改善点や注意点を指摘 |
| 14 | 要約 | 変更内容のサマリー生成 | コミットメッセージや変更ログを作成 |
| 15 | 変換 | 言語間の変換 | JavaScript から TypeScript などへ変換 |
| 16 | 変換 | フレームワーク間の変換 | React から Vue.js などへ変換 |
| 17 | 変換 | データ形式の変換 | JSON から YAML などへ変換 |
| 18 | 変換 | レガシーコードの現代化 | 古い書き方を最新の記法に更新 |
| 19 | 変換 | スタイルガイド適用 | コーディング規約に合わせて整形 |
| 20 | 変換 | モジュールシステムの変換 | CommonJS から ESModules などへ変換 |
背景
Codex とは何か
Codex は、OpenAI が開発した自然言語からコードを生成する AI モデルです。GPT シリーズをベースに、GitHub 上の膨大なコードで学習されており、プログラミング言語の理解に特化しています。
開発者は日本語や英語で指示を出すだけで、関数やクラス、テストコードなどを自動生成できます。これにより、定型的な作業を大幅に削減し、クリエイティブな問題解決に集中できるようになりました。
プロンプトエンジニアリングの重要性
Codex の性能を最大限に引き出すには、適切なプロンプト(指示文)の設計が不可欠です。曖昧な指示では期待外れの結果になる一方、明確で具体的なプロンプトは高品質なコードを生成します。
プロンプトエンジニアリングとは、AI に対する指示の仕方を最適化する技術です。この技術を身につけることで、開発効率が飛躍的に向上するでしょう。
以下の図は、Codex を活用した開発フローの全体像を示しています。
mermaidflowchart LR
dev["開発者"] -->|プロンプト入力| codex["Codex AI"]
codex -->|コード生成| code["生成コード"]
code -->|レビュー| dev
dev -->|修正指示| codex
code -->|テスト| test["テスト実行"]
test -->|OK| deploy["デプロイ"]
test -->|NG| dev
図から分かるように、開発者はプロンプトを通じて Codex に指示を出し、生成されたコードをレビュー・テストする流れが基本となります。
課題
プロンプト作成の難しさ
多くの開発者が Codex を使い始めた際に直面する課題は、「何をどう指示すればよいか分からない」という点です。自然言語で指示できるとはいえ、適切な表現や粒度を選ばなければ、期待通りの結果は得られません。
特に初心者にとっては、プロンプトの書き方自体が学習コストとなり、Codex の導入障壁になってしまうことも少なくないでしょう。
試行錯誤の時間コスト
プロンプトを書いては結果を確認し、また書き直すという試行錯誤は、時間の無駄遣いになりがちです。せっかく作業を効率化するためのツールなのに、プロンプトの調整に時間を取られては本末転倒ですね。
実務では締切があるため、何度も試行錯誤する余裕がないケースも多いでしょう。
品質のばらつき
プロンプトの質によって、生成されるコードの品質も大きく変動します。時には期待以上の結果が得られる一方、時には使い物にならないコードが出力されることもあります。
この不安定さが、Codex を本格的に業務に組み込む際の懸念材料となっているのです。
以下の図は、プロンプトの質とコード品質の関係性を示しています。
mermaidflowchart TD
prompt["プロンプト入力"]
prompt --> clear{明確で<br/>具体的か?}
clear -->|はい| high["高品質コード<br/>生成"]
clear -->|いいえ| vague["曖昧な指示"]
vague --> low["低品質コード<br/>生成"]
low --> retry["再試行"]
retry --> prompt
high --> success["開発効率<br/>向上"]
明確なプロンプトは高品質なコードを生成し、曖昧なプロンプトは再試行を招くという悪循環が見て取れます。
解決策
定型プロンプトの活用
これらの課題を解決する最も効果的な方法は、実績のある定型プロンプトをテンプレートとして活用することです。よく使われる場面ごとに最適化されたプロンプトを用意しておけば、試行錯誤の時間を大幅に削減できます。
本記事では、生成・修正・要約・変換という 4 つのカテゴリに分けて、すぐに使える定型プロンプト 20 個をご紹介します。
4 つのカテゴリ体系
プロンプトを以下の 4 つのカテゴリに分類することで、目的に応じた適切なプロンプトを素早く見つけられます。
- 生成: ゼロから新しいコードを作成する
- 修正: 既存コードの問題を解決する
- 要約: コードの内容を理解しやすい形にする
- 変換: コードの形式や言語を変更する
この分類により、「今やりたいこと」に対して「使うべきプロンプト」が明確になるでしょう。
以下の図は、4 つのカテゴリとそれぞれの代表的な用途を示しています。
mermaidflowchart TB
subgraph gen["生成カテゴリ"]
gen1["関数生成"]
gen2["クラス生成"]
gen3["テスト生成"]
gen4["API生成"]
gen5["スキーマ生成"]
end
subgraph fix["修正カテゴリ"]
fix1["バグ修正"]
fix2["最適化"]
fix3["脆弱性対応"]
fix4["リファクタリング"]
fix5["型エラー修正"]
end
subgraph sum["要約カテゴリ"]
sum1["説明生成"]
sum2["ドキュメント作成"]
sum3["レビュー"]
sum4["変更サマリー"]
end
subgraph conv["変換カテゴリ"]
conv1["言語変換"]
conv2["フレームワーク変換"]
conv3["データ形式変換"]
conv4["現代化"]
conv5["スタイル適用"]
conv6["モジュール変換"]
end
各カテゴリには 5〜6 個の定型プロンプトが含まれ、合計 20 個のプロンプトで幅広い開発ニーズをカバーします。
具体例
それでは、20 個の定型プロンプトを順番に見ていきましょう。各プロンプトには、使用例と Codex の出力例を併記します。
生成カテゴリ(1〜5)
1. 関数の自動生成
新しい機能を実装する際に最も頻繁に使うプロンプトです。関数名と処理内容を明確に指示することで、即座に動作するコードが得られます。
プロンプト例
text次の仕様で関数を作成してください:
- 関数名: calculateTax
- 引数: price(数値)、taxRate(数値、デフォルト0.1)
- 戻り値: 税込価格(小数点第2位まで)
- 言語: TypeScript
Codex の出力例
typescript/**
* 税込価格を計算する関数
* @param price - 税抜価格
* @param taxRate - 税率(デフォルト: 0.1 = 10%)
* @returns 税込価格(小数点第2位まで)
*/
function calculateTax(
price: number,
taxRate: number = 0.1
): number {
const totalPrice = price * (1 + taxRate);
return Math.round(totalPrice * 100) / 100;
}
このように、型定義や JSDoc コメントまで含めた完成度の高い関数が生成されます。
2. クラスの自動生成
オブジェクト指向プログラミングでは、クラスの雛形を素早く作成できると開発速度が上がります。プロパティとメソッドの仕様を明示しましょう。
プロンプト例
text次の仕様でクラスを作成してください:
- クラス名: User
- プロパティ: id(文字列)、name(文字列)、email(文字列)
- メソッド: isValid()(メールアドレスの形式チェック)
- 言語: JavaScript(ES6以降)
Codex の出力例
javascript/**
* ユーザー情報を管理するクラス
*/
class User {
constructor(id, name, email) {
this.id = id;
this.name = name;
this.email = email;
}
/**
* メールアドレスの形式が正しいかチェックする
* @returns {boolean} 有効な場合true
*/
isValid() {
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
return emailRegex.test(this.email);
}
}
正規表現を使ったバリデーションまで実装されており、すぐに実用できますね。
3. テストコードの生成
品質保証のためにテストは欠かせませんが、テストコードの作成は時間がかかります。Codex を使えば、既存の関数に対するテストケースを自動生成できます。
プロンプト例
text以下の関数に対するJestテストコードを作成してください:
function add(a, b) {
return a + b;
}
テストケース:
- 正の数同士の足し算
- 負の数同士の足し算
- 正の数と負の数の足し算
- 0を含む計算
Codex の出力例
javascriptdescribe('add関数のテスト', () => {
test('正の数同士の足し算', () => {
expect(add(2, 3)).toBe(5);
expect(add(10, 20)).toBe(30);
});
test('負の数同士の足し算', () => {
expect(add(-2, -3)).toBe(-5);
expect(add(-10, -20)).toBe(-30);
});
test('正の数と負の数の足し算', () => {
expect(add(5, -3)).toBe(2);
expect(add(-5, 3)).toBe(-2);
});
test('0を含む計算', () => {
expect(add(0, 0)).toBe(0);
expect(add(5, 0)).toBe(5);
expect(add(0, -5)).toBe(-5);
});
});
網羅的なテストケースが自動生成され、テスト作成の負担が大幅に軽減されます。
4. API エンドポイントの生成
バックエンド開発では、RESTful API のエンドポイントを次々と実装する必要があります。基本構造を自動生成することで、開発速度が向上するでしょう。
プロンプト例
textExpress.jsで以下のAPIエンドポイントを作成してください:
- パス: /api/users/:id
- メソッド: GET
- 機能: IDに基づいてユーザー情報を取得
- レスポンス: JSON形式
- エラーハンドリング: ユーザーが見つからない場合は404を返す
Codex の出力例
javascriptconst express = require('express');
const router = express.Router();
/**
* ユーザー情報を取得するエンドポイント
*/
router.get('/api/users/:id', async (req, res) => {
try {
const userId = req.params.id;
// データベースからユーザーを取得(例)
const user = await User.findById(userId);
if (!user) {
return res.status(404).json({
error: 'User not found',
message: `ユーザーID ${userId} は存在しません`,
});
}
res.status(200).json(user);
} catch (error) {
res.status(500).json({
error: 'Internal server error',
message: error.message,
});
}
});
module.exports = router;
エラーハンドリングやステータスコードの設定まで含まれており、実務レベルの品質です。
5. データベーススキーマの生成
データベース設計では、テーブル定義や ORM モデルを記述する必要があります。仕様を伝えるだけで、適切なスキーマが生成されます。
プロンプト例
textPrismaスキーマで以下のテーブルを定義してください:
- テーブル名: Post
- フィールド: id(自動採番)、title(文字列、必須)、content(テキスト)、published(真偽値、デフォルトfalse)、authorId(整数、Userテーブルへの外部キー)、createdAt(日時)
Codex の出力例
prismamodel Post {
id Int @id @default(autoincrement())
title String
content String? @db.Text
published Boolean @default(false)
authorId Int
author User @relation(fields: [authorId], references: [id])
createdAt DateTime @default(now())
@@index([authorId])
}
リレーションシップやインデックスの設定まで考慮されたスキーマが得られますね。
修正カテゴリ(6〜10)
6. バグ修正
既存コードにバグがある場合、エラーメッセージとともに Codex に渡すことで、修正案を提示してもらえます。
プロンプト例
text以下のコードにバグがあります。修正してください:
function divide(a, b) {
return a / b;
}
問題:0で割った場合にInfinityが返される
Codex の出力例
javascript/**
* 除算を行う関数(0除算を防止)
* @param {number} a - 被除数
* @param {number} b - 除数
* @returns {number} 除算結果
* @throws {Error} bが0の場合
*/
function divide(a, b) {
if (b === 0) {
throw new Error('0で割ることはできません');
}
return a / b;
}
エラーハンドリングとドキュメントコメントが追加され、堅牢な関数に改善されました。
7. パフォーマンス最適化
処理速度が遅いコードを渡すと、より効率的な実装を提案してくれます。
プロンプト例
text以下のコードのパフォーマンスを改善してください:
function findDuplicates(arr) {
const duplicates = [];
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] === arr[j] && !duplicates.includes(arr[i])) {
duplicates.push(arr[i]);
}
}
}
return duplicates;
}
Codex の出力例
javascript/**
* 配列内の重複要素を効率的に検出する
* 時間計算量: O(n) → 元のO(n²)から改善
* @param {Array} arr - 検査対象の配列
* @returns {Array} 重複している要素の配列
*/
function findDuplicates(arr) {
const seen = new Set();
const duplicates = new Set();
for (const item of arr) {
if (seen.has(item)) {
duplicates.add(item);
} else {
seen.add(item);
}
}
return Array.from(duplicates);
}
二重ループを Set を使った一回のループに改善し、計算量が O(n²)から O(n)に削減されています。
8. セキュリティ脆弱性の修正
セキュリティ上の問題を含むコードを検出し、安全な実装に修正できます。
プロンプト例
text以下のコードのセキュリティ脆弱性を修正してください:
app.get('/search', (req, res) => {
const query = req.query.q;
const sql = `SELECT * FROM products WHERE name LIKE '%${query}%'`;
db.query(sql, (err, results) => {
res.json(results);
});
});
問題:SQLインジェクションの脆弱性
Codex の出力例
javascript/**
* 商品検索エンドポイント(SQLインジェクション対策済み)
*/
app.get('/search', (req, res) => {
const query = req.query.q;
// プリペアドステートメントを使用してSQLインジェクションを防止
const sql = 'SELECT * FROM products WHERE name LIKE ?';
const searchPattern = `%${query}%`;
db.query(sql, [searchPattern], (err, results) => {
if (err) {
return res
.status(500)
.json({ error: 'Database error' });
}
res.json(results);
});
});
プリペアドステートメントを使用することで、SQL インジェクション攻撃を防いでいます。
9. コードのリファクタリング
可読性や保守性を向上させるために、コードの構造を改善できます。
プロンプト例
text以下のコードをリファクタリングして、可読性を向上させてください:
function calc(x,y,z){if(z=='add')return x+y;else if(z=='sub')return x-y;else if(z=='mul')return x*y;else if(z=='div')return x/y;}
Codex の出力例
javascript/**
* 2つの数値に対して指定された演算を実行する
* @param {number} x - 第1オペランド
* @param {number} y - 第2オペランド
* @param {string} operation - 演算種別('add'|'sub'|'mul'|'div')
* @returns {number} 演算結果
* @throws {Error} 未対応の演算種別の場合
*/
function calculate(x, y, operation) {
const operations = {
add: (a, b) => a + b,
sub: (a, b) => a - b,
mul: (a, b) => a * b,
div: (a, b) => {
if (b === 0)
throw new Error('0で割ることはできません');
return a / b;
},
};
if (!operations[operation]) {
throw new Error(`未対応の演算: ${operation}`);
}
return operations[operation](x, y);
}
if-else 連鎖をオブジェクトによる戦略パターンに置き換え、拡張性と可読性が大幅に向上しました。
10. 型エラーの修正
TypeScript で型エラーが発生している場合、適切な型定義を提案してもらえます。
プロンプト例
text以下のTypeScriptコードの型エラーを修正してください:
function getUserName(user) {
return user.name.toUpperCase();
}
const users = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' }
];
users.forEach(getUserName);
Codex の出力例
typescript/**
* ユーザー型の定義
*/
interface User {
id: number;
name: string;
}
/**
* ユーザー名を大文字に変換して取得する
* @param user - ユーザーオブジェクト
* @returns 大文字に変換されたユーザー名
*/
function getUserName(user: User): string {
return user.name.toUpperCase();
}
const users: User[] = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
];
users.forEach((user) => {
console.log(getUserName(user));
});
適切な型定義とインターフェースが追加され、型安全性が確保されています。
要約カテゴリ(11〜14)
11. コードの説明生成
複雑なコードを読み解く際に、自然言語での説明があると理解が早まります。
プロンプト例
text以下のコードが何をしているか日本語で説明してください:
function debounce(func, wait) {
let timeout;
return function executedFunction(...args) {
const later = () => {
clearTimeout(timeout);
func(...args);
};
clearTimeout(timeout);
timeout = setTimeout(later, wait);
};
}
Codex の出力例
textこのコードは「デバウンス」と呼ばれるパフォーマンス最適化パターンを実装しています。
【主な機能】
- 関数の実行を指定時間(wait)だけ遅延させる
- 遅延中に再度呼び出された場合、前回のタイマーをキャンセルして新しくタイマーを設定し直す
- 結果として、連続して呼び出されても最後の呼び出しから指定時間経過後に一度だけ実行される
【用途】
検索ボックスの入力イベントなど、短時間に何度も発火するイベントの処理に使われます。
例えば、ユーザーが文字を入力するたびにAPI呼び出しを行うのではなく、
入力が落ち着いてから(最後の入力から300msなど)一度だけAPI呼び出しを行うことで、
無駄なリクエストを削減できます。
アルゴリズムの動作原理と実用例が分かりやすく説明されていますね。
12. ドキュメント生成
既存のコードに対して、JSDoc やコメントを自動生成できます。
プロンプト例
text以下の関数にJSDocコメントを追加してください:
function formatDate(date, format) {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return format
.replace('YYYY', year)
.replace('MM', month)
.replace('DD', day);
}
Codex の出力例
javascript/**
* 日付を指定されたフォーマットで文字列に変換する
*
* @param {Date} date - フォーマット対象のDateオブジェクト
* @param {string} format - 日付フォーマット文字列(例: 'YYYY-MM-DD')
* - YYYY: 4桁の年
* - MM: 2桁の月(0埋め)
* - DD: 2桁の日(0埋め)
* @returns {string} フォーマットされた日付文字列
*
* @example
* const date = new Date('2025-01-15');
* formatDate(date, 'YYYY/MM/DD'); // '2025/01/15'
* formatDate(date, 'YYYY年MM月DD日'); // '2025年01月15日'
*/
function formatDate(date, format) {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(
2,
'0'
);
const day = String(date.getDate()).padStart(2, '0');
return format
.replace('YYYY', year)
.replace('MM', month)
.replace('DD', day);
}
パラメータの説明や使用例まで含めた充実したドキュメントが生成されました。
13. コードレビューコメント生成
他の開発者のコードをレビューする際に、改善点を指摘するコメントを生成できます。
プロンプト例
text以下のコードに対するレビューコメントを生成してください:
function processData(data) {
var result = [];
for (var i = 0; i < data.length; i++) {
result.push(data[i] * 2);
}
return result;
}
Codex の出力例
text【レビューコメント】
★ 変数宣言について
- `var` ではなく `const` または `let` を使用することを推奨します
- `var` はスコープの問題を引き起こす可能性があります
★ 配列操作について
- `for` ループよりも `map` メソッドを使用した方が関数型プログラミングのスタイルに沿っており、
コードが簡潔になります
★ 関数名とドキュメント
- `processData` は抽象的すぎるため、より具体的な名前(例: `doubleValues`)を推奨します
- JSDocコメントを追加して、関数の目的とパラメータの説明を記載してください
【改善案】
function doubleValues(data) {
return data.map(value => value * 2);
}
このように書き換えることで、より読みやすく保守性の高いコードになります。
具体的な改善点と修正案が提示され、建設的なレビューができます。
14. 変更内容のサマリー生成
Git コミットメッセージや変更ログを作成する際に、コードの差分から自動的にサマリーを生成できます。
プロンプト例
text以下のコード変更に対するコミットメッセージを生成してください:
【変更前】
function login(username, password) {
return fetch('/api/login', {
method: 'POST',
body: JSON.stringify({ username, password })
});
}
【変更後】
function login(username, password) {
return fetch('/api/login', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ username, password })
});
}
Codex の出力例
textfix: ログインAPIリクエストにContent-Typeヘッダーを追加
- fetchリクエストにContent-Type: application/jsonヘッダーを追加
- サーバー側で正しくJSONとして解釈されるよう改善
- これによりリクエストボディのパース失敗を防止
Conventional Commits 形式に準拠した分かりやすいコミットメッセージが生成されました。
変換カテゴリ(15〜20)
15. 言語間の変換
JavaScript から TypeScript への変換など、プログラミング言語間の移行を支援します。
プロンプト例
text以下のJavaScriptコードをTypeScriptに変換してください:
function createUser(name, age, email) {
return {
name: name,
age: age,
email: email,
createdAt: new Date()
};
}
Codex の出力例
typescript/**
* ユーザーオブジェクトの型定義
*/
interface User {
name: string;
age: number;
email: string;
createdAt: Date;
}
/**
* 新しいユーザーオブジェクトを生成する
* @param name - ユーザー名
* @param age - 年齢
* @param email - メールアドレス
* @returns 生成されたユーザーオブジェクト
*/
function createUser(
name: string,
age: number,
email: string
): User {
return {
name,
age,
email,
createdAt: new Date(),
};
}
型定義とインターフェースが追加され、型安全な TypeScript コードに変換されています。
16. フレームワーク間の変換
React から Vue.js など、異なるフレームワーク間でコードを移植する際に活用できます。
プロンプト例
text以下のReactコンポーネントをVue.js 3(Composition API)に変換してください:
function Counter() {
const [count, setCount] = useState(0);
return (
<div>
<p>Count: {count}</p>
<button onClick={() => setCount(count + 1)}>Increment</button>
</div>
);
}
Codex の出力例
vue<template>
<div>
<p>Count: {{ count }}</p>
<button @click="increment">Increment</button>
</div>
</template>
<script setup>
import { ref } from 'vue';
// カウントの状態管理
const count = ref(0);
// カウントをインクリメントする関数
const increment = () => {
count.value++;
};
</script>
React のフックが Vue 3 の Composition API に適切に変換され、同等の機能を持つコンポーネントになっています。
17. データ形式の変換
JSON から YAML など、データフォーマット間の変換を自動化できます。
プロンプト例
text以下のJSON設定ファイルをYAML形式に変換してください:
{
"server": {
"port": 3000,
"host": "localhost"
},
"database": {
"type": "postgresql",
"host": "db.example.com",
"port": 5432,
"credentials": {
"username": "admin",
"password": "secret"
}
}
}
Codex の出力例
yaml# サーバー設定
server:
port: 3000
host: localhost
# データベース設定
database:
type: postgresql
host: db.example.com
port: 5432
credentials:
username: admin
password: secret
適切なコメントも追加され、人間が読みやすい YAML 形式に変換されました。
18. レガシーコードの現代化
古い書き方のコードを最新の記法に更新できます。
プロンプト例
text以下のレガシーなJavaScriptコードを現代的な書き方(ES6+)に更新してください:
var MyModule = (function() {
var privateVar = 'secret';
function privateMethod() {
return privateVar;
}
return {
publicMethod: function() {
return privateMethod();
}
};
})();
Codex の出力例
javascript/**
* モダンなモジュールパターン(ES6+)
*/
class MyModule {
// プライベートフィールド(ES2022)
#privateVar = 'secret';
/**
* プライベートメソッド
* @returns {string} プライベート変数の値
*/
#privateMethod() {
return this.#privateVar;
}
/**
* パブリックメソッド
* @returns {string} プライベートメソッドの結果
*/
publicMethod() {
return this.#privateMethod();
}
}
// 使用例
export default MyModule;
即時関数パターンが ES6 のクラス構文とプライベートフィールドを使った現代的な実装に変換されています。
19. スタイルガイド適用
既存のコードをチームのコーディング規約に合わせて整形できます。
プロンプト例
text以下のコードをAirbnbスタイルガイドに従って整形してください:
function foo(x,y){
if(x>y)
{
return x
}
else
{
return y
}
}
Codex の出力例
javascript/**
* 2つの数値のうち大きい方を返す
* @param {number} x - 第1の数値
* @param {number} y - 第2の数値
* @returns {number} 大きい方の数値
*/
function foo(x, y) {
if (x > y) {
return x;
}
return y;
}
Airbnb スタイルガイドに準拠した適切なスペーシング、ブレース配置、不要な else の削除が行われています。
20. モジュールシステムの変換
CommonJS から ES Modules など、モジュールシステムの移行を支援します。
プロンプト例
text以下のCommonJS形式のコードをES Modules形式に変換してください:
const express = require('express');
const bodyParser = require('body-parser');
const { validate } = require('./utils');
function createApp() {
const app = express();
app.use(bodyParser.json());
return app;
}
module.exports = { createApp, validate };
Codex の出力例
javascript// 外部パッケージのインポート
import express from 'express';
import bodyParser from 'body-parser';
// ローカルモジュールのインポート
import { validate } from './utils.js';
/**
* Expressアプリケーションを生成する
* @returns {Express} 設定済みのExpressアプリケーション
*/
function createApp() {
const app = express();
app.use(bodyParser.json());
return app;
}
// 名前付きエクスポート
export { createApp, validate };
require が import に、module.exports が export に変換され、モダンな ES Modules 形式になりました。
まとめ
本記事では、Codex で即座に活用できる定型プロンプト 20 個を、生成・修正・要約・変換の 4 カテゴリに分けてご紹介しました。
これらのプロンプトをテンプレートとして使うことで、以下のメリットが得られます。
- 時間の節約: プロンプトを一から考える必要がなく、コピー&ペーストで即座に利用可能
- 品質の安定: 実績のある定型文により、安定した高品質な出力を期待できる
- 学習コストの削減: プロンプトの書き方を学ぶ時間を、本来の開発作業に充てられる
- チームでの共有: 定型プロンプトをチーム内で標準化し、開発効率を組織全体で向上できる
まずは日常の開発で頻繁に遭遇する場面から、これらの定型プロンプトを試してみてください。慣れてきたら、自分のプロジェクトに合わせてカスタマイズしていくことで、さらに効率的な開発が実現できるでしょう。
Codex は使い方次第で、あなたの開発体験を劇的に変える力を持っています。この記事が、その第一歩を踏み出すきっかけになれば幸いです。
関連リンク
articleCodex プロンプト速攻リファレンス:生成/修正/要約/変換の定型文 20
articleCodex 環境構築の最短ルート:API キー管理・SDK 導入・動作確認まで
articleCodex とは何か?AI コーディングの基礎・仕組み・適用範囲をやさしく解説
article成果が出る GPT-5-Codex 導入ロードマップ:評価指標(ROI/品質/速度)と失敗しない運用フロー
articleセキュアに導入する GPT-5-Codex:API キー管理・機密コード対策・監査ログのベストプラクティス
article現場で効く GPT-5-Codex プロンプト設計 10 選:バグ修正・リファクタ・テスト自動化の実例付き
articleCursor の自動テスト生成を検証:Vitest/Jest/Playwright のカバレッジ実測
articleDevin 運用ポリシー策定ガイド:利用権限・レビュー必須条件・ログ保存期間
articleCline × Claude/GPT/Gemini モデル比較:長文理解とコード品質の相性
articleClaude Code が編集差分を誤検出する時:競合・改行コード・改フォーマット問題の直し方
articleConvex で「Permission denied」多発時の原因特定:認可/コンテキスト/引数を総点検
articleBun コマンド チートシート:bun install/run/x/test/build 一括早見表
blogiPhone 17シリーズの発表!全モデルiPhone 16から進化したポイントを見やすく整理
blogGoogleストアから訂正案内!Pixel 10ポイント有効期限「1年」表示は誤りだった
blog【2025年8月】Googleストア「ストアポイント」は1年表記はミス?2年ルールとの整合性を検証
blogGoogleストアの注文キャンセルはなぜ起きる?Pixel 10購入前に知るべき注意点
blogPixcel 10シリーズの発表!全モデル Pixcel 9 から進化したポイントを見やすく整理
blogフロントエンドエンジニアの成長戦略:コーチングで最速スキルアップする方法
review今の自分に満足していますか?『持たざる者の逆襲 まだ何者でもない君へ』溝口勇児
reviewついに語られた業界の裏側!『フジテレビの正体』堀江貴文が描くテレビ局の本当の姿
review愛する勇気を持てば人生が変わる!『幸せになる勇気』岸見一郎・古賀史健のアドラー実践編で真の幸福を手に入れる
review週末を変えれば年収も変わる!『世界の一流は「休日」に何をしているのか』越川慎司の一流週末メソッド
review新しい自分に会いに行こう!『自分の変え方』村岡大樹の認知科学コーチングで人生リセット
review科学革命から AI 時代へ!『サピエンス全史 下巻』ユヴァル・ノア・ハラリが予見する人類の未来