jpskill.com
💼 ビジネス コミュニティ

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本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
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
🪟 Windows (PowerShell)
$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. 1. 下の青いボタンを押して ora.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → ora フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

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.text during 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).