fig
Amazon Q Developer (旧Fig) の機能を最大限に活用できるよう、ターミナルでの自動補完設定、AIチャット、CLIツール作成などをサポートし、開発者の生産性を向上させるSkill。
📜 元の英語説明(参考)
Expert guidance for Amazon Q Developer (formerly Fig), the terminal tool that provides IDE-style autocomplete, AI chat, and CLI builder capabilities. Helps developers create custom completion specs, build CLI tools with autocomplete, and configure terminal productivity features.
🇯🇵 日本人クリエイター向け解説
Amazon Q Developer (旧Fig) の機能を最大限に活用できるよう、ターミナルでの自動補完設定、AIチャット、CLIツール作成などをサポートし、開発者の生産性を向上させるSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o fig.zip https://jpskill.com/download/14897.zip && unzip -o fig.zip && rm fig.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/14897.zip -OutFile "$d\fig.zip"; Expand-Archive "$d\fig.zip" -DestinationPath $d -Force; ri "$d\fig.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
fig.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
figフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
Amazon Q (旧 Fig) — ターミナルオートコンプリート & CLIツール
概要
Amazon Q Developer (旧 Fig) は、IDEスタイルのオートコンプリート、AIチャット、CLIビルダー機能を提供するターミナルツールです。開発者がカスタム補完仕様を作成したり、オートコンプリート付きのCLIツールを構築したり、ターミナルの生産性機能を設定したりするのに役立ちます。
手順
カスタム補完仕様
独自のCLIツールのオートコンプリートを定義します。
// src/my-cli.ts — カスタムCLIツールの補完仕様
const completionSpec: Fig.Spec = {
name: "deploy",
description: "クラウドインフラストラクチャにサービスをデプロイします",
subcommands: [
{
name: "create",
description: "新しいデプロイメントを作成します",
args: {
name: "service",
description: "デプロイするサービス名",
// APIまたはコマンド出力からの動的なサジェスト
generators: {
script: ["bash", "-c", "ls services/"],
postProcess: (output) =>
output.split("\n").filter(Boolean).map((name) => ({
name,
description: `${name} サービスをデプロイします`,
icon: "📦",
})),
},
},
options: [
{
name: ["--env", "-e"],
description: "ターゲット環境",
args: {
name: "environment",
suggestions: [
{ name: "staging", description: "ステージング環境", icon: "🟡" },
{ name: "production", description: "本番環境", icon: "🔴" },
{ name: "development", description: "開発環境", icon: "🟢" },
],
},
isRequired: true,
},
{
name: ["--replicas", "-r"],
description: "レプリカ数",
args: { name: "count", default: "2" },
},
{
name: "--dry-run",
description: "デプロイせずに変更をプレビューします",
},
{
name: ["--tag", "-t"],
description: "Dockerイメージタグ",
args: {
name: "tag",
generators: {
// 最近のgitタグをサジェスト
script: ["bash", "-c", "git tag --sort=-version:refname | head -10"],
postProcess: (output) =>
output.split("\n").filter(Boolean).map((tag) => ({
name: tag,
icon: "🏷️",
})),
},
},
},
],
},
{
name: "status",
description: "デプロイメントステータスを確認します",
args: {
name: "service",
isOptional: true,
generators: {
script: ["bash", "-c", "kubectl get deployments -o jsonpath='{.items[*].metadata.name}'"],
splitOn: " ",
},
},
options: [
{
name: ["--watch", "-w"],
description: "リアルタイムでステータスを監視します",
},
{
name: "--format",
description: "出力形式",
args: {
suggestions: ["table", "json", "yaml"],
},
},
],
},
{
name: "rollback",
description: "以前のバージョンにロールバックします",
isDangerous: true, // 警告アイコンを表示
args: {
name: "service",
generators: {
script: ["bash", "-c", "kubectl get deployments -o jsonpath='{.items[*].metadata.name}'"],
splitOn: " ",
},
},
options: [
{
name: "--revision",
description: "ロールバックする特定のリビジョン",
args: {
name: "revision",
generators: {
// 動的: 選択されたサービスのリビジョン履歴をリストします
script: ({ tokens }) => {
const service = tokens[2]; // deploy rollback <service>
return ["bash", "-c", `kubectl rollout history deployment/${service} | tail -n +3 | awk '{print $1}'`];
},
postProcess: (output) =>
output.split("\n").filter(Boolean).map((rev) => ({
name: rev,
description: `リビジョン ${rev}`,
})),
},
},
},
],
},
{
name: "logs",
description: "デプロイメントログを表示します",
args: {
name: "service",
generators: {
script: ["bash", "-c", "kubectl get deployments -o jsonpath='{.items[*].metadata.name}'"],
splitOn: " ",
},
},
options: [
{ name: ["--follow", "-f"], description: "リアルタイムでログをストリーミングします" },
{ name: "--since", description: "指定期間以降のログを表示します", args: { suggestions: ["1m", "5m", "1h", "24h"] } },
{ name: "--tail", description: "最近の行数", args: { name: "lines", default: "100" } },
],
},
],
options: [
{
name: ["--verbose", "-v"],
description: "詳細出力を有効にします",
isPersistent: true, // すべてのサブコマンドで使用可能
},
{
name: "--config",
description: "設定ファイルへのパス",
isPersistent: true,
args: { template: "filepaths" }, // ファイルパスのオートコンプリート
},
],
};
export default completionSpec;
Dotfileスクリプト
マシン間で実行できるポータブルなシェルスクリプトを作成します。
# ~/.fig/scripts/setup-project.sh — 再利用可能なプロジェクトセットアップスクリプト
#!/bin/bash
# Fig script: 標準ツールを使用した新しい TypeScript プロジェクトを初期化します
set -euo pipefail
PROJECT_NAME=${1:?"Usage: fig run setup-project <name>"}
echo "📁 プロジェクトを作成しています: $PROJECT_NAME"
mkdir -p "$PROJECT_NAME" && cd "$PROJECT_NAME"
# package.jsonで初期化
cat > package.json << EOF
{
"name": "$PROJECT_NAME",
"version": "0.1.0",
"type": "module",
"scripts": {
"dev": "tsx watch src/index.ts",
"build": "tsup src/index.ts",
"lint": "biome check .",
"format": "biome format --write .",
"test": "vitest"
}
}
EOF
# 依存関係をインストール
pnpm install typescript tsx tsup vitest @biomejs/biome
# TypeScript設定
ca
(原文がここで切り詰められています) 📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Amazon Q (formerly Fig) — Terminal Autocomplete & CLI Tools
Overview
Amazon Q Developer (formerly Fig), the terminal tool that provides IDE-style autocomplete, AI chat, and CLI builder capabilities. Helps developers create custom completion specs, build CLI tools with autocomplete, and configure terminal productivity features.
Instructions
Custom Completion Specs
Define autocomplete for your own CLI tools:
// src/my-cli.ts — Completion spec for a custom CLI tool
const completionSpec: Fig.Spec = {
name: "deploy",
description: "Deploy services to cloud infrastructure",
subcommands: [
{
name: "create",
description: "Create a new deployment",
args: {
name: "service",
description: "Service name to deploy",
// Dynamic suggestions from an API or command output
generators: {
script: ["bash", "-c", "ls services/"],
postProcess: (output) =>
output.split("\n").filter(Boolean).map((name) => ({
name,
description: `Deploy ${name} service`,
icon: "📦",
})),
},
},
options: [
{
name: ["--env", "-e"],
description: "Target environment",
args: {
name: "environment",
suggestions: [
{ name: "staging", description: "Staging environment", icon: "🟡" },
{ name: "production", description: "Production environment", icon: "🔴" },
{ name: "development", description: "Development environment", icon: "🟢" },
],
},
isRequired: true,
},
{
name: ["--replicas", "-r"],
description: "Number of replicas",
args: { name: "count", default: "2" },
},
{
name: "--dry-run",
description: "Preview changes without deploying",
},
{
name: ["--tag", "-t"],
description: "Docker image tag",
args: {
name: "tag",
generators: {
// Suggest recent git tags
script: ["bash", "-c", "git tag --sort=-version:refname | head -10"],
postProcess: (output) =>
output.split("\n").filter(Boolean).map((tag) => ({
name: tag,
icon: "🏷️",
})),
},
},
},
],
},
{
name: "status",
description: "Check deployment status",
args: {
name: "service",
isOptional: true,
generators: {
script: ["bash", "-c", "kubectl get deployments -o jsonpath='{.items[*].metadata.name}'"],
splitOn: " ",
},
},
options: [
{
name: ["--watch", "-w"],
description: "Watch status in real-time",
},
{
name: "--format",
description: "Output format",
args: {
suggestions: ["table", "json", "yaml"],
},
},
],
},
{
name: "rollback",
description: "Rollback to previous version",
isDangerous: true, // Shows warning icon
args: {
name: "service",
generators: {
script: ["bash", "-c", "kubectl get deployments -o jsonpath='{.items[*].metadata.name}'"],
splitOn: " ",
},
},
options: [
{
name: "--revision",
description: "Specific revision to rollback to",
args: {
name: "revision",
generators: {
// Dynamic: list revision history for the selected service
script: ({ tokens }) => {
const service = tokens[2]; // deploy rollback <service>
return ["bash", "-c", `kubectl rollout history deployment/${service} | tail -n +3 | awk '{print $1}'`];
},
postProcess: (output) =>
output.split("\n").filter(Boolean).map((rev) => ({
name: rev,
description: `Revision ${rev}`,
})),
},
},
},
],
},
{
name: "logs",
description: "View deployment logs",
args: {
name: "service",
generators: {
script: ["bash", "-c", "kubectl get deployments -o jsonpath='{.items[*].metadata.name}'"],
splitOn: " ",
},
},
options: [
{ name: ["--follow", "-f"], description: "Stream logs in real-time" },
{ name: "--since", description: "Show logs since duration", args: { suggestions: ["1m", "5m", "1h", "24h"] } },
{ name: "--tail", description: "Number of recent lines", args: { name: "lines", default: "100" } },
],
},
],
options: [
{
name: ["--verbose", "-v"],
description: "Enable verbose output",
isPersistent: true, // Available on all subcommands
},
{
name: "--config",
description: "Path to config file",
isPersistent: true,
args: { template: "filepaths" }, // File path autocomplete
},
],
};
export default completionSpec;
Dotfile Scripts
Create portable shell scripts that run across machines:
# ~/.fig/scripts/setup-project.sh — Reusable project setup script
#!/bin/bash
# Fig script: Initialize a new TypeScript project with standard tooling
set -euo pipefail
PROJECT_NAME=${1:?"Usage: fig run setup-project <name>"}
echo "📁 Creating project: $PROJECT_NAME"
mkdir -p "$PROJECT_NAME" && cd "$PROJECT_NAME"
# Initialize with package.json
cat > package.json << EOF
{
"name": "$PROJECT_NAME",
"version": "0.1.0",
"type": "module",
"scripts": {
"dev": "tsx watch src/index.ts",
"build": "tsup src/index.ts",
"lint": "biome check .",
"format": "biome format --write .",
"test": "vitest"
}
}
EOF
# Install dependencies
pnpm install typescript tsx tsup vitest @biomejs/biome
# TypeScript config
cat > tsconfig.json << 'EOF'
{
"compilerOptions": {
"target": "ES2022",
"module": "ESNext",
"moduleResolution": "bundler",
"strict": true,
"outDir": "dist",
"rootDir": "src",
"declaration": true
},
"include": ["src"]
}
EOF
# Biome config
cat > biome.json << 'EOF'
{
"$schema": "https://biomejs.dev/schemas/1.9.4/schema.json",
"organizeImports": { "enabled": true },
"linter": { "enabled": true },
"formatter": { "indentStyle": "space", "indentWidth": 2 }
}
EOF
# Create entry point
mkdir -p src
cat > src/index.ts << 'EOF'
console.log("Hello from $PROJECT_NAME!");
EOF
# Git init
git init
echo "node_modules/\ndist/\n.env" > .gitignore
echo "✅ Project $PROJECT_NAME created!"
echo " cd $PROJECT_NAME && pnpm dev"
SSH Integration
Auto-complete for remote servers:
// src/ssh-hosts.ts — Dynamic SSH host suggestions
const sshSpec: Fig.Spec = {
name: "ssh",
args: {
name: "destination",
generators: {
// Parse SSH config for host suggestions
script: ["bash", "-c", `
grep "^Host " ~/.ssh/config 2>/dev/null | awk '{print $2}' | grep -v '*'
`],
postProcess: (output) =>
output.split("\n").filter(Boolean).map((host) => ({
name: host,
description: "SSH host from config",
icon: "🖥️",
priority: 80,
})),
},
},
};
Installation
# macOS
brew install amazon-q
# Or direct download from https://aws.amazon.com/q/developer/
# Login and configure
q login
q settings
Examples
Example 1: Setting up Fig with a custom configuration
User request:
I just installed Fig. Help me configure it for my TypeScript + React workflow with my preferred keybindings.
The agent creates the configuration file with TypeScript-aware settings, configures relevant plugins/extensions for React development, sets up keyboard shortcuts matching the user's preferences, and verifies the setup works correctly.
Example 2: Extending Fig with custom functionality
User request:
I want to add a custom dotfile scripts to Fig. How do I build one?
The agent scaffolds the extension/plugin project, implements the core functionality following Fig's API patterns, adds configuration options, and provides testing instructions to verify it works end-to-end.
Guidelines
- Generators for dynamic suggestions — Use shell scripts to generate suggestions from live data (git branches, k8s resources, file lists)
- Mark dangerous commands — Set
isDangerous: trueon destructive subcommands (delete, drop, rollback) - Use templates for common arg types —
template: "filepaths"for file args,template: "folders"for directories - Persistent options — Use
isPersistent: truefor flags like--verbosethat apply to all subcommands - Icons and descriptions — Add icons and descriptions to suggestions; visual cues speed up selection
- Publish to the spec repo — Share your completion specs via the fig/autocomplete GitHub repo for community use
- Test with
fig settings developer.enabled true— Enable developer mode for spec debugging and hot reload - Dotfile scripts for portability — Store setup scripts in
~/.fig/scripts/; they sync across machines via Fig's dotfile management