Communitygithub.com

YepAPI/スキル

GPT APIのパターン、関数呼び出し、Zodを使った構造化出力、ストリーミング、トークン管理を提供します。

スキル とは?

このスキルは、OpenAI API を効率的かつ堅牢に使用するためのベストプラクティスを提供します。公式の`openai`パッケージを使用し、環境変数によるAPIキー管理、ストリーミングレスポンスでの非同期イテレータ、JSONスキーマを用いた関数呼び出しやZodを使った構造化出力をサポートします。また、トークン数の事前見積もりとコンテキストのトリミングによる制限内での管理、タスクの複雑さに応じたモデル選択(`gpt-4o`と`gpt-4o-mini`の使い分け)、レート制限への対応(指数バックオフ)、適切なtemperature設定など、実運用で必要な様々なパターンをカバーしています。ClineやClaude CodeなどのAIエージェントフレームワーク上で動作し、開発者がGPT APIを統合する際の共通的な課題を解決します。

対応~Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/YepAPI/skills/tree/HEAD/skills/openai-integration

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

OpenAI 統合ガイド

ルール

  • 公式の openai パッケージを使用 — new OpenAI({ apiKey: process.env.OPENAI_API_KEY })
  • チャットのストリーミング: 非同期イテレータで stream: true を使用 — ユーザー向けレスポンスでは完了を待たずにストリームを返すこと
  • 関数呼び出し: JSON スキーマで関数を定義し、レスポンス内の tool_calls を処理し、結果を tool メッセージとして返す
  • 構造化出力: response_format: { type: "json_schema", json_schema: {...} } または AI SDK と Zod を使用
  • トークン管理: 送信前にトークン数を推定(おおよそ4文字 = 1トークン)、コンテキストをトリミングして制限内に収める
  • モデル選択: 複雑な推論には gpt-4o、簡単なタスクには gpt-4o-mini — 設定可能にすること
  • システムプロンプトは最初のメッセージとして配置 — トーン、制約、出力フォーマットを設定する
  • Temperature: 決定論的な出力(データ抽出)には 0、クリエイティブなタスクには 0.7〜1.0
  • レート制限: x-ratelimit-* ヘッダーを尊重し、429 エラーに対して指数バックオフを実装する

パターン

// ストリーミング完了
const stream = await openai.chat.completions.create({
  model: "gpt-4o",
  messages,
  stream: true,
});

for await (const chunk of stream) {
  const content = chunk.choices[0]?.delta?.content || "";
  process.stdout.write(content);
}
// 関数呼び出し
const response = await openai.chat.completions.create({
  model: "gpt-4o",
  messages,
  tools: [{ type: "function", function: { name: "get_weather", parameters: schema } }],
});

回避すべきこと

  • API キーのハードコーディング — 常に環境変数を使用すること
  • トークン制限の無視 — トークンをカウントし、メッセージを事前にトリミングすること
  • 簡単なタスクに gpt-4o を使用する — コスト削減のために gpt-4o-mini を使用すること
  • API 呼び出しのエラーハンドリング漏れ — 429、500、タイムアウトエラーを適切に処理すること

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

YepAPI/skills

WCAG 2.1 AA — semantic HTML, keyboard navigation, screen readers.

YepAPI/skills

Experiment setup, variant splitting, statistical significance, and feature flag integration.

YepAPI/skills

CRUD generators, data tables, user management, role-based access, and bulk operations.

YepAPI/skills

Monitor what ChatGPT and Gemini say about your brand using YepAPI.

YepAPI/skills

Queue workers with BullMQ/Inngest/Trigger.dev, job retries, dead letter queues, concurrency.

YepAPI/skills

Commander.js, interactive prompts with Clack, spinners, colors, config files, exit codes, and npm publishing.

YepAPI/skills

cmdk integration, Cmd+K trigger, fuzzy search, grouped actions, keyboard navigation, and dynamic action registration.

YepAPI/skills

Content planning with trend and sentiment data from YepAPI.

YepAPI/skills

Content calendar, keyword-driven planning, and content briefs.

YepAPI/skills

Theme switching with CSS variables, system preference detection, next-themes, and persistence.

YepAPI/skills

Threaded comments, @mentions, reactions, moderation queue, optimistic UI, and cursor pagination.

YepAPI/skills

Competitive analysis between domains using YepAPI.

YepAPI/skills

Layout grids, KPI cards, data tables with sorting/filtering, sidebar navigation, and responsive breakpoints.

YepAPI/skills

Data encryption — TLS everywhere, AES-256-GCM for PII, bcrypt passwords, encrypted backups.

YepAPI/skills

Chart patterns with Recharts/Nivo/D3, responsive containers, color scales, and accessibility.

YepAPI/skills

Drizzle schema definition, push vs migrate, type-safe queries, relations, transactions, and prepared statements.

YepAPI/skills

Upload handling, resize/compress, CDN delivery, blur placeholders, and next/image patterns.

YepAPI/skills

Local business and Google Maps research using YepAPI.

YepAPI/skills

Cursor-based pagination, IntersectionObserver, virtualized lists with @tanstack/react-virtual, and scroll position restoration.

YepAPI/skills

Chat UI components, streaming responses with AI SDK, context window management, and RAG patterns.

関連スキル