ascii-art について
ascii-artは、ローカルのコマンドラインツールや無料のWebサービスでASCIIアートを作成・検索する方法をエージェントに示すスキルです。バナー、メッセージアート、枠、画像変換、QRコードなどを扱います。
主な機能
- 01pyfigletまたはasciifiedで文字バナーを作成
- 02cowsayで吹き出しアートを生成
- 03boxesで装飾枠を追加
- 04ascii-image-converterまたはjp2aで画像を変換
- 05既存アートの検索とQRコード・天気図形の生成
活用シーン
- 01プロジェクト名やタイトルのバナー作成
- 02短いメッセージをキャラクターアートで表示
- 03画像をターミナル向けのテキストに変換
- 04テーマ別アートの取得やQRコードのASCII表示
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ nousresearch/ hermes-agent --skill ascii-artインストール後、Claude Code で/ascii-artを入力して読み込まれたか確認します。
詳細
ASCII アートスキル
用途に応じた複数の ASCII アートツールを紹介します。すべてローカル CLI プログラムまたは無料の REST API で、API キーは不要です。
ツール 1:テキストバナー(pyfiglet — ローカル)
テキストを大きな ASCII アートバナーとして表示します。571 種類のフォントが組み込まれています。
セットアップ
pip install pyfiglet --break-system-packages -q
使用方法
python -m pyfiglet "YOUR TEXT" -f slant
python -m pyfiglet "TEXT" -f doom -w 80 # Set width
python -m pyfiglet --list_fonts # List all 571 fonts
おすすめのフォント
| スタイル | フォント | 最適な用途 |
|---|---|---|
| すっきりとモダン | slant | プロジェクト名、ヘッダー |
| 太くてブロック状 | doom | タイトル、ロゴ |
| 大きく読みやすい | big | バナー |
| クラシックなバナー | banner3 | 横長の表示 |
| コンパクト | small | サブタイトル |
| サイバーパンク | cyberlarge | テクノロジー系のテーマ |
| 3D 効果 | 3-d | スプラッシュ画面 |
| ゴシック | gothic | ドラマチックなテキスト |
ヒント
- 2~3 種類のフォントをプレビューして、ユーザーに好みのものを選んでもらいます
doomやblockなどの細部まで表現できるフォントは、短いテキスト(1~8 文字)に最適です- 長いテキストには、
smallやminiなどのコンパクトなフォントが適しています
ツール 2:テキストバナー(asciified API — リモート、インストール不要)
テキストを ASCII アートに変換する無料の REST API です。250 種類以上の FIGlet フォントを利用できます。プレーンテキストをそのまま返すため、解析は不要です。pyfiglet がインストールされていない場合や、手早く代替手段を使いたい場合に利用します。
使用方法(ターミナルで curl を使用)
# Basic text banner (default font)
curl -s "https://asciified.thelicato.io/api/v2/ascii?text=Hello+World"
# With a specific font
curl -s "https://asciified.thelicato.io/api/v2/ascii?text=Hello&font=Slant"
curl -s "https://asciified.thelicato.io/api/v2/ascii?text=Hello&font=Doom"
curl -s "https://asciified.thelicato.io/api/v2/ascii?text=Hello&font=Star+Wars"
curl -s "https://asciified.thelicato.io/api/v2/ascii?text=Hello&font=3-D"
curl -s "https://asciified.thelicato.io/api/v2/ascii?text=Hello&font=Banner3"
# List all available fonts (returns JSON array)
curl -s "https://asciified.thelicato.io/api/v2/fonts"
ヒント
- テキストパラメーター内のスペースは
+に URL エンコードします - 応答はプレーンテキストの ASCII アートで、JSON にラップされていないため、そのまま表示できます
- フォント名は大文字と小文字を区別します。正確な名前を確認するには、フォント一覧エンドポイントを使用します
- curl が使えるターミナルならどこからでも利用でき、Python や pip は不要です
ツール 3:Cowsay(メッセージアート)
テキストを吹き出しで囲み、ASCII キャラクターを添える定番ツールです。
セットアップ
sudo apt install cowsay -y # Debian/Ubuntu
# brew install cowsay # macOS
使用方法
cowsay "Hello World"
cowsay -f tux "Linux rules" # Tux the penguin
cowsay -f dragon "Rawr!" # Dragon
cowsay -f stegosaurus "Roar!" # Stegosaurus
cowthink "Hmm..." # Thought bubble
cowsay -l # List all characters
利用可能なキャラクター(50 種類以上)
beavis.zen、bong、bunny、cheese、daemon、default、dragon、
dragon-and-cow、elephant、eyes、flaming-skull、ghostbusters、
hellokitty、kiss、kitty、koala、luke-koala、mech-and-cow、
meow、moofasa、moose、ren、sheep、skeleton、small、
stegosaurus、stimpy、supermilker、surgery、three-eyes、
turkey、turtle、tux、udder、vader、vader-koala、www
目/舌の変更オプション
cowsay -b "Borg" # =_= eyes
cowsay -d "Dead" # x_x eyes
cowsay -g "Greedy" # $_$ eyes
cowsay -p "Paranoid" # @_@ eyes
cowsay -s "Stoned" # *_* eyes
cowsay -w "Wired" # O_O eyes
cowsay -e "OO" "Msg" # Custom eyes
cowsay -T "U " "Msg" # Custom tongue
ツール 4:Boxes(装飾的な枠線)
あらゆるテキストの周りに、装飾的な ASCII アートの枠線を描きます。70 種類以上のデザインが組み込まれています。
セットアップ
sudo apt install boxes -y # Debian/Ubuntu
# brew install boxes # macOS
使用方法
echo "Hello World" | boxes # Default box
echo "Hello World" | boxes -d stone # Stone border
echo "Hello World" | boxes -d parchment # Parchment scroll
echo "Hello World" | boxes -d cat # Cat border
echo "Hello World" | boxes -d dog # Dog border
echo "Hello World" | boxes -d unicornsay # Unicorn
echo "Hello World" | boxes -d diamonds # Diamond pattern
echo "Hello World" | boxes -d c-cmt # C-style comment
echo "Hello World" | boxes -d html-cmt # HTML comment
echo "Hello World" | boxes -a c # Center text
boxes -l # List all 70+ designs
pyfiglet または asciified と組み合わせる
python -m pyfiglet "HERMES" -f slant | boxes -d stone
# Or without pyfiglet installed:
curl -s "https://asciified.thelicato.io/api/v2/ascii?text=HERMES&font=Slant" | boxes -d stone
ツール 5:TOIlet(カラー文字アート)
ANSI カラー効果とビジュアルフィルターを使える、pyfiglet に似たツールです。ターミナルを華やかに飾るのに最適です。
セットアップ
sudo apt install toilet toilet-fonts -y # Debian/Ubuntu
# brew install toilet # macOS
使用方法
toilet "Hello World" # Basic text art
toilet -f bigmono12 "Hello" # Specific font
toilet --gay "Rainbow!" # Rainbow coloring
toilet --metal "Metal!" # Metallic effect
toilet -F border "Bordered" # Add border
toilet -F border --gay "Fancy!" # Combined effects
toilet -f pagga "Block" # Block-style font (unique to toilet)
toilet -F list # List available filters
フィルター
crop、gay(レインボー)、metal、flip、flop、180、left、right、border
注:toilet はカラー用の ANSI エスケープコードを出力します。ターミナルでは機能しますが、すべての環境(プレーンテキストファイル、一部のチャットプラットフォームなど)で表示できるとは限りません。
ツール 6:画像を ASCII アートに変換
画像(PNG、JPEG、GIF、WEBP)を ASCII アートに変換します。
オプション A:ascii-image-converter(おすすめ、モダン)
# Install
sudo snap install ascii-image-converter
# OR: go install github.com/TheZoraiz/ascii-image-converter@latest
ascii-image-converter image.png # Basic
ascii-image-converter image.png -C # Color output
ascii-image-converter image.png -d 60,30 # Set dimensions
ascii-image-converter image.png -b # Braille characters
ascii-image-converter image.png -n # Negative/inverted
ascii-image-converter https://url/image.jpg # Direct URL
ascii-image-converter image.png --save-txt out # Save as text
オプション B:jp2a(軽量、JPEG のみ)
sudo apt install jp2a -y
jp2a --width=80 image.jpg
jp2a --colors image.jpg # Colorized
ツール 7:既成の ASCII アートを検索
ウェブ上から厳選された ASCII アートを検索します。terminal と curl を使用します。
ソース A:ascii.co.uk(既成のアートにおすすめ)
テーマ別に整理された、クラシックな ASCII アートの大規模なコレクションです。アートは HTML の <pre> タグ内にあります。curl でページを取得し、短い Python スニペットでアートを抽出します。
URL パターン: https://ascii.co.uk/art/{subject}
ステップ 1 — ページを取得します:
curl -s 'https://ascii.co.uk/art/cat' -o ~/.hermes/cache/scratch/ascii_art.html
ステップ 2 — pre タグからアートを抽出します:
import os, re, html
with open(os.path.expanduser('~/.hermes/cache/scratch/ascii_art.html')) as f:
text = f.read()
arts = re.findall(r'<pre[^>]*>(.*?)</pre>', text, re.DOTALL)
for art in arts:
clean = re.sub(r'<[^>]+>', '', art)
clean = html.unescape(clean).strip()
if len(clean) > 30:
print(clean)
print('\n---\n')
利用可能なテーマ(URL パスとして使用します):
- 動物:
cat、dog、horse、bird、fish、dragon、snake、rabbit、elephant、dolphin、butterfly、owl、wolf、bear、penguin、turtle - オブジェクト:
car、ship、airplane、rocket、guitar、computer、coffee、beer、cake、house、castle、sword、crown、key - 自然:
tree、flower、sun、moon、star、mountain、ocean、rainbow - キャラクター:
skull、robot、angel、wizard、pirate、ninja、alien - 祝日:
christmas、halloween、valentine
ヒント:
- アーティストの署名やイニシャルは残してください。重要なマナーです
- ページごとに複数のアートがあります。ユーザーに最適なものを選んでください
- curl 経由で安定して動作し、JavaScript は不要です
ソース B:GitHub Octocat API(楽しいイースターエッグ)
賢い名言付きのランダムな GitHub Octocat を返します。認証は不要です。
curl -s https://api.github.com/octocat
ツール 8:楽しい ASCII ユーティリティ(curl 経由)
これらの無料サービスは ASCII アートを直接返します。ちょっとしたお楽しみに最適です。
ASCII アートの QR コード
curl -s "qrenco.de/Hello+World"
curl -s "qrenco.de/https://example.com"
ASCII アートの天気
curl -s "wttr.in/London" # Full weather report with ASCII graphics
curl -s "wttr.in/Moon" # Moon phase in ASCII art
curl -s "v2.wttr.in/London" # Detailed version
ツール 9:LLM でカスタムアートを生成する(フォールバック)
上記のツールで必要なものが得られない場合は、次の Unicode 文字を使って ASCII アートを直接生成します。
文字パレット
罫線素片: ╔ ╗ ╚ ╝ ║ ═ ╠ ╣ ╦ ╩ ╬ ┌ ┐ └ ┘ │ ─ ├ ┤ ┬ ┴ ┼ ╭ ╮ ╰ ╯
ブロック要素: ░ ▒ ▓ █ ▄ ▀ ▌ ▐ ▖ ▗ ▘ ▝ ▚ ▞
幾何学記号とシンボル: ◆ ◇ ◈ ● ○ ◉ ■ □ ▲ △ ▼ ▽ ★ ☆ ✦ ✧ ◀ ▶ ◁ ▷ ⬡ ⬢ ⌂
ルール
- 最大幅:1 行あたり 60 文字(端末で安全に表示できる幅)
- 最大高さ:バナーは 15 行、シーンは 25 行
- 等幅フォントのみ:固定幅フォントで正しく表示される出力にしてください
判断フロー
- テキストをバナーにする → インストール済みなら pyfiglet、そうでなければ curl 経由の asciified API
- メッセージを楽しいキャラクターアートで囲む → cowsay
- 装飾的な枠を追加する → boxes(pyfiglet/asciified と組み合わせ可能)
- 特定のもの(猫、ロケット、ドラゴン)のアート → curl とパース処理で ascii.co.uk
- 画像を ASCII に変換する → ascii-image-converter または jp2a
- QR コード → curl 経由の qrenco.de
- 天気や月のアート → curl 経由の wttr.in
- 独自の創作物 → Unicode パレットを使って LLM で生成
- ツールがインストールされていない場合 → インストールするか、次の選択肢にフォールバックする