mcpField
A
ascii-art

ascii-art

github.com/nousresearchクリエイティブ・メディア258.1k424 回インストール今日更新
リポジトリ

ascii-art について

ascii-artは、ローカルのコマンドラインツールや無料のWebサービスでASCIIアートを作成・検索する方法をエージェントに示すスキルです。バナー、メッセージアート、枠、画像変換、QRコードなどを扱います。

主な機能

  1. 01pyfigletまたはasciifiedで文字バナーを作成
  2. 02cowsayで吹き出しアートを生成
  3. 03boxesで装飾枠を追加
  4. 04ascii-image-converterまたはjp2aで画像を変換
  5. 05既存アートの検索とQRコード・天気図形の生成

活用シーン

  1. 01プロジェクト名やタイトルのバナー作成
  2. 02短いメッセージをキャラクターアートで表示
  3. 03画像をターミナル向けのテキストに変換
  4. 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 行
  • 等幅フォントのみ:固定幅フォントで正しく表示される出力にしてください

判断フロー

  1. テキストをバナーにする → インストール済みなら pyfiglet、そうでなければ curl 経由の asciified API
  2. メッセージを楽しいキャラクターアートで囲む → cowsay
  3. 装飾的な枠を追加する → boxes(pyfiglet/asciified と組み合わせ可能)
  4. 特定のもの(猫、ロケット、ドラゴン)のアート → curl とパース処理で ascii.co.uk
  5. 画像を ASCII に変換する → ascii-image-converter または jp2a
  6. QR コード → curl 経由の qrenco.de
  7. 天気や月のアート → curl 経由の wttr.in
  8. 独自の創作物 → Unicode パレットを使って LLM で生成
  9. ツールがインストールされていない場合 → インストールするか、次の選択肢にフォールバックする

コメント