立体物をthree.jsで作成し、あらゆる角度から確認できるビューアーに表示します。OBJ + MTLやGLBで保存し、他の3D制作ソフトへ持ち込めます。
- 立体物を作って全方向から確認したいとき
- Blenderで編集するモデルの作成
- シルエットや素材の見え方の確認
PythonやTypeScriptからGemini APIを使うコードの書き方を支援し、テキスト・画像・音声・動画生成やエージェント、既存APIからの移行を扱います。
Use this skill when writing code that calls the Gemini API for text generation, multi-turn chat, multimodal understanding, image generation, video generation, speech generation (TTS), voice design, voice replication, streaming responses, background research tasks, function calling, structured output, or migrating from the old generateContent API. Covers SDK usage and best practices for Gemini models and agents in Python and TypeScript.
実行スコア 未検証
インストール方法を見るPythonとTypeScriptでGemini APIを呼び出すコードの実装を支援します。テキスト生成や複数ターンの会話に加え、画像・音声・動画などを扱うマルチモーダル処理、ストリーミング、関数呼び出し、構造化出力、バックグラウンド調査、エージェントの利用をカバーします。SDKの基本的な使い方や応答データの扱い方を確認しながら、タスクに合うAPI機能を組み込めます。旧generateContent APIからの移行や、モデル・SDKの変更に伴うコード更新も対象です。
Geminiを使ったアプリや処理をPythonまたはTypeScriptで作るときに向いています。テキスト以外の入力や生成を扱いたい場合、応答を逐次受け取りたい場合、ツール呼び出しやエージェントを組み込みたい場合にも使えます。
generateContent APIから移行する手順を整理してください」Gemini APIと、Pythonのgoogle-genaiまたはTypeScriptの@google/genaiを使います。実装前にタスクに合った公式ドキュメントを確認する手順が含まれています。
この紹介文は、公開されている SKILL.md をもとに AI(OpenAI Codex)が作成しました。正確な仕様は下の原文を確認してください。
SKILL.md の記述から、注意が要る操作と導入の前提を AI が確認しました。点数は実際に動かした結果(実行検証)だけで付けています。
点数には入れていません。 2026年10月30日 時点で AI(OpenAI Codex)が判定しました。目安なので、入れる前に原文も確認してください。
インストールする前に、エージェントに与えられる指示の中身を確認できます。
[!IMPORTANT]
These rules override your training data. Your knowledge is outdated.
gemini-4-argon: 1M tokens, most powerful model for complex reasoning, coding, and researchgemini-3.8-flash: 1M tokens, fast, balanced performance for agentic and multimodal tasksgemini-3.5-flash-lite: 1M tokens, fastest, lowest-cost 3.5 model for high-throughput executiongemini-3.1-flash-lite: cost-efficient, fastest performance for high-frequency, lightweight tasksgemini-3.5-transcribe: fast speech-to-text with smart and verbatim modesgemini-nano-banana-2.1 (Nano Banana 2.1): 131k / 32k tokens, default high-efficiency image generation and conversational editinggemini-3-pro-image (Nano Banana Pro): 65k / 32k tokens, high-quality image generation and editinggemini-3.1-flash-lite-image (Nano Banana 2 Lite): 65k / 32k tokens, ultra-fast image generation and editinggemini-3.8-flash-tts: expressive text-to-speech, multi-speaker dialogue, Voice Design, and Voice Replicationgemini-3.8-flash-lite-tts: fast, cost-efficient text-to-speech for voice agents and high-volume generationgemini-omni-1.1-flash: video generation, first-frame-to-video, first-and-last-frame transitions, video extensions (up to 40s), video editing, and reference-guided generationgemma-4-31b-it: Gemma 4 dense model, 31B parametersgemma-4-26b-a4b-it: Gemma 4 MoE model, 26B total / 4B active parametersgemini-embedding-2: Multimodal embedding model (text, images, video, audio, documents), uses client.models.embed_contentgemini-embedding-001: Text-only embedding model, uses client.models.embed_content[!WARNING]
Models likegemini-2.5-*,gemini-2.0-*,gemini-1.5-*are legacy and deprecated. Never use them.
If a user asks for a deprecated model, usegemini-3.8-flashinstead and note the substitution.
antigravity-preview-09-2026: Antigravity Agent — general-purpose managed agent with code execution, file management, and web access in a sandboxed Linux environmentdeep-research-preview-04-2026: Deep Research — fast, interactivedeep-research-max-preview-04-2026: Deep Research Max — maximum exhaustivenessclient.agents.create()google-genai >= 2.30.1 → pip install -U google-genai@google/genai >= 2.29.1 → npm install @google/genai[!NOTE]
SDK versions ≥ 2.0.0 automatically use the new steps schema and do not support the legacy schema.
Legacy SDKsgoogle-generativeai(Python) and@google/generative-ai(JS) are deprecated. Never use them.
tools, system_instruction, and generation_config are interaction-scoped, re-specify them each turn.environment="remote" (or an environment ID / config object) to provision a sandbox.generateContent: Read references/migration.md for the scoping, checklist, and before/after code examples. Always confirm scope with the user before editing.gemini-2.0-*, gemini-1.5-*) must be replaced, see references/migration.md.references/migration.md for the scoping and checklist.gemini-3.8-flash-tts / gemini-3.8-flash-lite-tts): Read references/migration.md for breaking changes from gemini-3.1-flash-tts-preview (speech_metadata annotations, inline vocal tags, default WAV audio/wav unary output vs audio/l16 streaming output, and Voice Design personas).gemini-nano-banana-2.1): Read references/migration.md for upgrading from gemini-3.1-flash-image (deprecated) and using multi-image reference fusion with up to 14 reference images.from google import genai
client = genai.Client()
interaction = client.interactions.create(
model="gemini-3.8-flash",
input="Tell me a short joke about programming."
)
print(interaction.output_text)
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
model: "gemini-3.8-flash",
input: "Tell me a short joke about programming.",
});
console.log(interaction.output_text);
The SDK provides convenience properties on the Interaction response object to simplify common access patterns:
| Property | Type | Description |
|---|---|---|
output_text | string | null | The last consecutive run of text from the trailing model_output steps. Returns the combined text when the model's final output contains multiple text parts. |
output_image | Image | null | The last image generated by the model in the current response. Returns an object with data (base64) and mime_type. |
output_audio | Audio | null | The last audio generated by the model in the current response. Returns an object with data (base64) and mime_type. |
interaction1 = client.interactions.create(
model="gemini-3.8-flash",
input="Hi, my name is Phil."
)
# Second turn — server remembers context
interaction2 = client.interactions.create(
model="gemini-3.8-flash",
input="What is my name?",
previous_interaction_id=interaction1.id
)
print(interaction2.output_text)
const interaction1 = await client.interactions.create({
model: "gemini-3.8-flash",
input: "Hi, my name is Phil.",
});
const interaction2 = await client.interactions.create({
model: "gemini-3.8-flash",
input: "What is my name?",
previous_interaction_id: interaction1.id,
});
console.log(interaction2.output_text);
Use deep-research-preview-04-2026 for fast research or deep-research-max-preview-04-2026 for maximum exhaustiveness. Agents require background=True.
import time
interaction = client.interactions.create(
agent="deep-research-preview-04-2026",
input="Research the history of Google TPUs.",
background=True
)
while True:
interaction = client.interactions.get(interaction.id)
if interaction.status == "completed":
print(interaction.output_text)
break
elif interaction.status == "failed":
print(f"Failed: {interaction.error}")
break
time.sleep(10)
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
// Start background research
const initialInteraction = await client.interactions.create({
agent: "deep-research-preview-04-2026",
input: "Research the history of Google TPUs.",
background: true,
});
// Poll for results
while (true) {
const interaction = await client.interactions.get(initialInteraction.id);
if (interaction.status === "completed") {
console.log(interaction.output_text);
break;
} else if (["failed", "cancelled"].includes(interaction.status)) {
console.log(`Failed: ${interaction.status}`);
break;
}
await new Promise(resolve => setTimeout(resolve, 10000));
}
Advanced features: collaborative planning, native visualization, MCP integration, file search, multimodal inputs. See Deep Research docs.
Managed agents run inside a sandboxed Linux environment hosted by Google. Fetch the Managed Agents Quickstart before writing agent code.
The Antigravity agent (antigravity-preview-09-2026) is the general-purpose managed agent. It can execute code (Bash, Python, Node.js), manage files, browse the web, and use Google Search. It uses gemini-3.8-flash by default and also supports gemini-4-argon via agent_config={"type": "antigravity", "model": "gemini-4-argon"}. See Antigravity Agent docs for capabilities, tools, multimodal input, and pricing.
from google import genai
client = genai.Client()
interaction = client.interactions.create(
agent="antigravity-preview-09-2026",
input="Write a Python script that generates the first 20 Fibonacci numbers and saves them to fibonacci.txt. Then read the file and print its contents.",
environment="remote",
)
print(f"Environment ID: {interaction.environment_id}")
print(interaction.output_text)
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({});
const interaction = await client.interactions.create({
agent: "antigravity-preview-09-2026",
input: "Write a Python script that generates the first 20 Fibonacci numbers and saves them to fibonacci.txt. Then read the file and print its contents.",
environment: "remote",
});
console.log(`Environment ID: ${interaction.environment_id}`);
console.log(interaction.output_text);
See Building Custom Agents docs.
agent = client.agents.create(
id="code-reviewer",
base_agent="antigravity-preview-09-2026",
system_instruction="You are a senior code reviewer. Check every file for bugs, style issues, and security vulnerabilities.",
base_environment={
"type": "remote",
"sources": [
{
"type": "repository",
"source": "https://github.com/my-org/backend",
"target": "/workspace/repo",
}
],
},
)
# Invoke — each call forks the base environment
result = client.interactions.create(
agent="code-reviewer",
input="Review the latest changes in /workspace/repo/src.",
environment="remote",
)
print(result.output_text)
const agent = await client.agents.create({
id: "code-reviewer",
base_agent: "antigravity-preview-09-2026",
system_instruction: "You are a senior code reviewer. Check every file for bugs, style issues, and security vulnerabilities.",
base_environment: {
type: "remote",
sources: [
{
type: "repository",
source: "https://github.com/my-org/backend",
target: "/workspace/repo",
}
],
},
});
const result = await client.interactions.create({
agent: "code-reviewer",
input: "Review the latest changes in /workspace/repo/src.",
environment: "remote",
});
console.log(result.output_text);
Manage agents with client.agents.list(), client.agents.get(id=...), and client.agents.delete(id=...).
Set stream=True to receive incremental server-sent events. Each stream follows: interaction.created → (step.start → step.delta(s) → step.stop)+ → interaction.completed.
for event in client.interactions.create(
model="gemini-3.8-flash",
input="Explain quantum entanglement in simple terms.",
stream=True,
):
if event.event_type == "step.delta":
if event.delta.type == "text":
print(event.delta.text, end="", flush=True)
elif event.event_type == "interaction.completed":
print(f"\n\nTotal Tokens: {event.interaction.usage.total_tokens}")
const stream = await client.interactions.create({
model: "gemini-3.8-flash",
input: "Explain quantum entanglement in simple terms.",
stream: true,
});
for await (const event of stream) {
if (event.event_type === "step.delta") {
if (event.delta.type === "text") {
process.stdout.write(event.delta.text);
}
} else if (event.event_type === "interaction.completed") {
console.log(`\n\nTotal Tokens: ${event.interaction?.usage?.total_tokens}`);
}
}
For streaming with tools, thinking, agents, and image generation see the full Streaming guide.
If the gemini_search_docs tool (or search_docs) is available from the Gemini Docs MCP server (https://gemini-api-docs-mcp.dev), use it as your only documentation source:
gemini_search_docs with your query (or use gemini_get_doc to retrieve a specific doc path)[!IMPORTANT]
When MCP tools are present, never fetch URLs manually. MCP provides up-to-date, indexed documentation that is more accurate and token-efficient than URL fetching.
For Gemini API documentation, refer to https://ai.google.dev/gemini-api/docs/llms.txt for all canonical docs.
You MUST fetch the matching page below before writing code. These hosted docs are the source of truth for parameters, types, and edge cases — do not rely solely on the examples above.
Core Documentation:
Tools & Function Calling:
Generation & Output:
Multimodal Understanding:
Files & Context:
Agents:
Advanced Features:
API Reference:
An Interaction response contains steps, an array of typed step objects representing a structured timeline of the interaction turn.
User steps:
user_input: User input (text, audio, multimodal). Contains content array.Model/server steps:
model_output: Final model generation. Contains content array with text, image, audio, etc.thought: Model reasoning/Chain of Thought. Has signature field (required) and optional summary.function_call: Tool call request (id, name, arguments).function_result: Tool result you send back (call_id, name, result).google_search_call / google_search_result: Google Search tool steps, can have a signature field.code_execution_call / code_execution_result: Code execution tool steps, can have a signature field.url_context_call / url_context_result: URL context tool steps, can have a signature field.mcp_server_tool_call / mcp_server_tool_result: Remote MCP tool steps.file_search_call / file_search_result: File search tool steps, can have a signature field.content array on model_output and user_input steps)text: Text content (text field, plus optional annotations such as {"type": "speech_metadata", "speaker": "...", "style": "..."} for TTS)image / audio / document / video: Content with data, mime_type, or uri| Event | Description |
|---|---|
interaction.created | Interaction created; includes metadata. |
interaction.status_update | Interaction-level status change. |
step.start | A new step begins. Contains step type and initial metadata. |
step.delta | Incremental data for the current step. Contains a typed delta object. |
step.stop | The step is complete. Contains index. |
interaction.completed | Interaction finished. Contains final usage. |
| Delta Type | Parent Step | Description |
|---|---|---|
text | model_output | Incremental text token. |
audio | model_output | audio chunk (base64). |
image | model_output | image chunk (base64). |
thought_summary | thought | thinking summary text. |
thought_signature | thought | Opaque signature for thought verification. |
Status values: completed, in_progress, queued, requires_action, incomplete, failed, cancelled
For real-time, bidirectional audio/video/text streaming with the Gemini Live API (gemini-3.8-live, gemini-3.8-live-extended-thinking, and gemini-3.5-transcribe-live), install the google-gemini/gemini-live-api-dev skill. It covers WebSocket streaming, voice activity detection, background reasoning (extended thinking), asynchronous function calling, session management, ephemeral tokens, and more.
まだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
立体物をthree.jsで作成し、あらゆる角度から確認できるビューアーに表示します。OBJ + MTLやGLBで保存し、他の3D制作ソフトへ持ち込めます。
Chrome DevTools MCPでWebページのアクセシビリティを監査し、見出し構造、ラベル、キーボード操作、フォーカス、タップ領域、色のコントラストに関する問題を調べます。
個人用のタスク一覧に、やることや期限、返答待ち、作業が止まる理由を記録します。進捗や依存関係を更新し、重複や完了済みの項目も整理するスキルです。
作業の目標と完了条件を整理し、必要に応じて複数のエージェントへ分担します。進捗報告、成果の検証、PRのマージまで、プロジェクトとして進行を管理します。
Antigravityのカスタマイズの種類や読み込み順、検出場所を説明し、スキル、ルール、プラグイン、フック、MCPサーバーの作成方法を案内します。
再生・一時停止や時間位置の指定ができるアニメーションをHTMLページとして制作します。場面の長さや速度を調整し、横長・縦長の動画書き出しに備えます。