ora
CLIツールで処理状況を分かりやすく表示するために、アニメーションするアイコン(スピナー)を追加して、非同期処理の進捗や読み込み状況を視覚的に伝え、洗練されたコマンドラインインターフェースを構築するSkill。
📜 元の英語説明(参考)
Add terminal spinners with Ora. Use when showing loading indicators in CLI tools, displaying progress during async operations, or building polished command-line interfaces with status feedback.
🇯🇵 日本人クリエイター向け解説
CLIツールで処理状況を分かりやすく表示するために、アニメーションするアイコン(スピナー)を追加して、非同期処理の進捗や読み込み状況を視覚的に伝え、洗練されたコマンドラインインターフェースを構築するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o ora.zip https://jpskill.com/download/15216.zip && unzip -o ora.zip && rm ora.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/15216.zip -OutFile "$d\ora.zip"; Expand-Archive "$d\ora.zip" -DestinationPath $d -Force; ri "$d\ora.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
ora.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
oraフォルダができる - 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 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
Ora
概要
Ora は、洗練されたターミナルスピナーを作成します。非同期操作(API 呼び出し、ファイル処理、ビルド)中の進捗状況を表示し、最終的なステータスで成功/失敗を示します。create-next-app、Vercel CLI、Angular CLI などで使用されています。
手順
ステップ 1: 基本的なスピナー
import ora from 'ora'
const spinner = ora('Installing dependencies...').start()
try {
await exec('npm install')
spinner.succeed('Dependencies installed')
} catch (err) {
spinner.fail('Installation failed')
process.exit(1)
}
ステップ 2: 複数ステップの操作
async function deploy(env: string) {
const spinner = ora()
spinner.start('Building project...')
await build()
spinner.succeed('Build complete')
spinner.start('Running tests...')
const results = await runTests()
spinner.succeed(`${results.passed} tests passed`)
spinner.start(`Deploying to ${env}...`)
const url = await deployToCloud(env)
spinner.succeed(`Deployed to ${url}`)
spinner.start('Verifying deployment...')
await healthCheck(url)
spinner.succeed('Deployment verified ✓')
}
ステップ 3: 他のライブラリとの連携
import ora from 'ora'
import chalk from 'chalk'
const spinner = ora({
text: 'Processing files...',
color: 'cyan',
spinner: 'dots', // or 'line', 'arc', 'bouncingBar'
})
spinner.start()
spinner.text = `Processing ${chalk.bold('image-001.png')}...`
// ... after processing
spinner.text = `Processing ${chalk.bold('image-002.png')}...`
spinner.stopAndPersist({
symbol: chalk.green('✓'),
text: `Processed ${chalk.bold('42')} files in ${chalk.gray('3.2s')}`,
})
ガイドライン
succeed()/fail()/warn()/info()は、ステータスアイコンとともにスピナーを停止します。- ビルトインのステータスが適合しない場合は、カスタムのシンボル/テキストに
stopAndPersist()を使用します。 - 長い操作中は、進捗状況を表示するために
spinner.textを更新します。 - Ora は v6 以降、ESM のみです。
import ora from 'ora'を使用してください。 - CI 環境では、ora は静的なテキストにフォールバックします(アニメーションなし)。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Ora
Overview
Ora creates elegant terminal spinners. Show progress during async operations (API calls, file processing, builds), then succeed/fail with a final status. Used by create-next-app, Vercel CLI, Angular CLI.
Instructions
Step 1: Basic Spinner
import ora from 'ora'
const spinner = ora('Installing dependencies...').start()
try {
await exec('npm install')
spinner.succeed('Dependencies installed')
} catch (err) {
spinner.fail('Installation failed')
process.exit(1)
}
Step 2: Multi-Step Operations
async function deploy(env: string) {
const spinner = ora()
spinner.start('Building project...')
await build()
spinner.succeed('Build complete')
spinner.start('Running tests...')
const results = await runTests()
spinner.succeed(`${results.passed} tests passed`)
spinner.start(`Deploying to ${env}...`)
const url = await deployToCloud(env)
spinner.succeed(`Deployed to ${url}`)
spinner.start('Verifying deployment...')
await healthCheck(url)
spinner.succeed('Deployment verified ✓')
}
Step 3: With Other Libraries
import ora from 'ora'
import chalk from 'chalk'
const spinner = ora({
text: 'Processing files...',
color: 'cyan',
spinner: 'dots', // or 'line', 'arc', 'bouncingBar'
})
spinner.start()
spinner.text = `Processing ${chalk.bold('image-001.png')}...`
// ... after processing
spinner.text = `Processing ${chalk.bold('image-002.png')}...`
spinner.stopAndPersist({
symbol: chalk.green('✓'),
text: `Processed ${chalk.bold('42')} files in ${chalk.gray('3.2s')}`,
})
Guidelines
succeed()/fail()/warn()/info()stop the spinner with a status icon.stopAndPersist()for custom symbols/text when the built-in statuses don't fit.- Update
spinner.textduring long operations to show progress. - Ora is ESM-only since v6. Use
import ora from 'ora'. - In CI environments, ora falls back to static text (no animation).