[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DF6RGMFCTSTYV7XAMGF0QZ":3,"skill-same:01M6DF6RGMFCTSTYV7XAMGF0QZ":93},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":26,"publishedAt":42,"linkOnly":43,"markdownContent":44,"markdownBody":45,"frontMatter":46,"refName":61,"commitSha":62,"skillDirectory":63,"forksCount":64,"repositoryHtmlUrl":65,"repositoryHomepageUrl":6,"ownerHtmlUrl":66,"ownerBlogUrl":6,"ownerDescription":67,"updatedAt":68,"install":69,"resources":82},"01M6DF6RGMFCTSTYV7XAMGF0QZ","ascii-art",null,"ASCII art: pyfiglet, cowsay, boxes, image-to-ascii.","zapabob\u002FSkills","zapabob","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F130830376?v=4","01M6DBMYZAGRTFQDSQYW3W764P","峯岸 亮","01M6DBMZ3GKDSJ01NZ9XTZD7JD",2,"MIT","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Farchive\u002Fskill-md-reviewed\u002Fsha256\u002F48\u002F4863e641e63ce1e2fee28b623a82264e1ad1699bc67af46f0eb4b02716a346b2\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000016","图像与多媒体",[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41],"ascii art","Art","ascii","image","macos","linux","windows","excalidraw","text","hermes","hermes agent","creative","boxes","cowsay","figlet","2026-11-10 10:12:30",false,"---\nname: ascii-art\ndescription: \"ASCII art: pyfiglet, cowsay, boxes, image-to-ascii.\"\nversion: 4.0.0\nauthor: 0xbyt4, Hermes Agent\nlicense: MIT\ndependencies: []\nplatforms: [linux, macos, windows]\nmetadata:\n  hermes:\n    tags: [ASCII, Art, Banners, Creative, Unicode, Text-Art, pyfiglet, figlet, cowsay, boxes]\n    related_skills: [excalidraw]\n\n---\n\n# ASCII Art Skill\n\nMultiple tools for different ASCII art needs. All tools are local CLI programs or free REST APIs — no API keys required.\n\n## Tool 1: Text Banners (pyfiglet — local)\n\nRender text as large ASCII art banners. 571 built-in fonts.\n\n### Setup\n\n```bash\npip install pyfiglet --break-system-packages -q\n```\n\n### Usage\n\n```bash\npython -m pyfiglet \"YOUR TEXT\" -f slant\npython -m pyfiglet \"TEXT\" -f doom -w 80    # Set width\npython -m pyfiglet --list_fonts             # List all 571 fonts\n```\n\n### Recommended fonts\n\n| Style | Font | Best for |\n|-------|------|----------|\n| Clean & modern | `slant` | Project names, headers |\n| Bold & blocky | `doom` | Titles, logos |\n| Big & readable | `big` | Banners |\n| Classic banner | `banner3` | Wide displays |\n| Compact | `small` | Subtitles |\n| Cyberpunk | `cyberlarge` | Tech themes |\n| 3D effect | `3-d` | Splash screens |\n| Gothic | `gothic` | Dramatic text |\n\n### Tips\n\n- Preview 2-3 fonts and let the user pick their favorite\n- Short text (1-8 chars) works best with detailed fonts like `doom` or `block`\n- Long text works better with compact fonts like `small` or `mini`\n\n## Tool 2: Text Banners (asciified API — remote, no install)\n\nFree REST API that converts text to ASCII art. 250+ FIGlet fonts. Returns plain text directly — no parsing needed. Use this when pyfiglet is not installed or as a quick alternative.\n\n### Usage (via terminal curl)\n\n```bash\n# Basic text banner (default font)\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello+World\"\n\n# With a specific font\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=Slant\"\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=Doom\"\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=Star+Wars\"\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=3-D\"\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=Banner3\"\n\n# List all available fonts (returns JSON array)\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Ffonts\"\n```\n\n### Tips\n\n- URL-encode spaces as `+` in the text parameter\n- The response is plain text ASCII art — no JSON wrapping, ready to display\n- Font names are case-sensitive; use the fonts endpoint to get exact names\n- Works from any terminal with curl — no Python or pip needed\n\n## Tool 3: Cowsay (Message Art)\n\nClassic tool that wraps text in a speech bubble with an ASCII character.\n\n### Setup\n\n```bash\nsudo apt install cowsay -y    # Debian\u002FUbuntu\n# brew install cowsay         # macOS\n```\n\n### Usage\n\n```bash\ncowsay \"Hello World\"\ncowsay -f tux \"Linux rules\"       # Tux the penguin\ncowsay -f dragon \"Rawr!\"          # Dragon\ncowsay -f stegosaurus \"Roar!\"     # Stegosaurus\ncowthink \"Hmm...\"                  # Thought bubble\ncowsay -l                          # List all characters\n```\n\n### Available characters (50+)\n\n`beavis.zen`, `bong`, `bunny`, `cheese`, `daemon`, `default`, `dragon`,\n`dragon-and-cow`, `elephant`, `eyes`, `flaming-skull`, `ghostbusters`,\n`hellokitty`, `kiss`, `kitty`, `koala`, `luke-koala`, `mech-and-cow`,\n`meow`, `moofasa`, `moose`, `ren`, `sheep`, `skeleton`, `small`,\n`stegosaurus`, `stimpy`, `supermilker`, `surgery`, `three-eyes`,\n`turkey`, `turtle`, `tux`, `udder`, `vader`, `vader-koala`, `www`\n\n### Eye\u002Ftongue modifiers\n\n```bash\ncowsay -b \"Borg\"       # =_= eyes\ncowsay -d \"Dead\"       # x_x eyes\ncowsay -g \"Greedy\"     # $_$ eyes\ncowsay -p \"Paranoid\"   # @_@ eyes\ncowsay -s \"Stoned\"     # *_* eyes\ncowsay -w \"Wired\"      # O_O eyes\ncowsay -e \"OO\" \"Msg\"   # Custom eyes\ncowsay -T \"U \" \"Msg\"   # Custom tongue\n```\n\n## Tool 4: Boxes (Decorative Borders)\n\nDraw decorative ASCII art borders\u002Fframes around any text. 70+ built-in designs.\n\n### Setup\n\n```bash\nsudo apt install boxes -y    # Debian\u002FUbuntu\n# brew install boxes         # macOS\n```\n\n### Usage\n\n```bash\necho \"Hello World\" | boxes                    # Default box\necho \"Hello World\" | boxes -d stone           # Stone border\necho \"Hello World\" | boxes -d parchment       # Parchment scroll\necho \"Hello World\" | boxes -d cat             # Cat border\necho \"Hello World\" | boxes -d dog             # Dog border\necho \"Hello World\" | boxes -d unicornsay      # Unicorn\necho \"Hello World\" | boxes -d diamonds        # Diamond pattern\necho \"Hello World\" | boxes -d c-cmt           # C-style comment\necho \"Hello World\" | boxes -d html-cmt        # HTML comment\necho \"Hello World\" | boxes -a c               # Center text\nboxes -l                                       # List all 70+ designs\n```\n\n### Combine with pyfiglet or asciified\n\n```bash\npython -m pyfiglet \"HERMES\" -f slant | boxes -d stone\n# Or without pyfiglet installed:\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=HERMES&font=Slant\" | boxes -d stone\n```\n\n## Tool 5: TOIlet (Colored Text Art)\n\nLike pyfiglet but with ANSI color effects and visual filters. Great for terminal eye candy.\n\n### Setup\n\n```bash\nsudo apt install toilet toilet-fonts -y    # Debian\u002FUbuntu\n# brew install toilet                      # macOS\n```\n\n### Usage\n\n```bash\ntoilet \"Hello World\"                    # Basic text art\ntoilet -f bigmono12 \"Hello\"            # Specific font\ntoilet --gay \"Rainbow!\"                 # Rainbow coloring\ntoilet --metal \"Metal!\"                 # Metallic effect\ntoilet -F border \"Bordered\"             # Add border\ntoilet -F border --gay \"Fancy!\"         # Combined effects\ntoilet -f pagga \"Block\"                 # Block-style font (unique to toilet)\ntoilet -F list                          # List available filters\n```\n\n### Filters\n\n`crop`, `gay` (rainbow), `metal`, `flip`, `flop`, `180`, `left`, `right`, `border`\n\n**Note**: toilet outputs ANSI escape codes for colors — works in terminals but may not render in all contexts (e.g., plain text files, some chat platforms).\n\n## Tool 6: Image to ASCII Art\n\nConvert images (PNG, JPEG, GIF, WEBP) to ASCII art.\n\n### Option A: ascii-image-converter (recommended, modern)\n\n```bash\n# Install\nsudo snap install ascii-image-converter\n# OR: go install github.com\u002FTheZoraiz\u002Fascii-image-converter@latest\n```\n\n```bash\nascii-image-converter image.png                  # Basic\nascii-image-converter image.png -C               # Color output\nascii-image-converter image.png -d 60,30         # Set dimensions\nascii-image-converter image.png -b               # Braille characters\nascii-image-converter image.png -n               # Negative\u002Finverted\nascii-image-converter https:\u002F\u002Furl\u002Fimage.jpg      # Direct URL\nascii-image-converter image.png --save-txt out   # Save as text\n```\n\n### Option B: jp2a (lightweight, JPEG only)\n\n```bash\nsudo apt install jp2a -y\njp2a --width=80 image.jpg\njp2a --colors image.jpg              # Colorized\n```\n\n## Tool 7: Search Pre-Made ASCII Art\n\nSearch curated ASCII art from the web. Use `terminal` with `curl`.\n\n### Source A: ascii.co.uk (recommended for pre-made art)\n\nLarge collection of classic ASCII art organized by subject. Art is inside HTML `\u003Cpre>` tags. Fetch the page with curl, then extract art with a small Python snippet.\n\n**URL pattern:** `https:\u002F\u002Fascii.co.uk\u002Fart\u002F{subject}`\n\n**Step 1 — Fetch the page:**\n\n```bash\ncurl -s 'https:\u002F\u002Fascii.co.uk\u002Fart\u002Fcat' -o ~\u002F.hermes\u002Fcache\u002Fscratch\u002Fascii_art.html\n```\n\n**Step 2 — Extract art from pre tags:**\n\n```python\nimport os, re, html\nwith open(os.path.expanduser('~\u002F.hermes\u002Fcache\u002Fscratch\u002Fascii_art.html')) as f:\n    text = f.read()\narts = re.findall(r'\u003Cpre[^>]*>(.*?)\u003C\u002Fpre>', text, re.DOTALL)\nfor art in arts:\n    clean = re.sub(r'\u003C[^>]+>', '', art)\n    clean = html.unescape(clean).strip()\n    if len(clean) > 30:\n        print(clean)\n        print('\\n---\\n')\n```\n\n**Available subjects** (use as URL path):\n- Animals: `cat`, `dog`, `horse`, `bird`, `fish`, `dragon`, `snake`, `rabbit`, `elephant`, `dolphin`, `butterfly`, `owl`, `wolf`, `bear`, `penguin`, `turtle`\n- Objects: `car`, `ship`, `airplane`, `rocket`, `guitar`, `computer`, `coffee`, `beer`, `cake`, `house`, `castle`, `sword`, `crown`, `key`\n- Nature: `tree`, `flower`, `sun`, `moon`, `star`, `mountain`, `ocean`, `rainbow`\n- Characters: `skull`, `robot`, `angel`, `wizard`, `pirate`, `ninja`, `alien`\n- Holidays: `christmas`, `halloween`, `valentine`\n\n**Tips:**\n- Preserve artist signatures\u002Finitials — important etiquette\n- Multiple art pieces per page — pick the best one for the user\n- Works reliably via curl, no JavaScript needed\n\n### Source B: GitHub Octocat API (fun easter egg)\n\nReturns a random GitHub Octocat with a wise quote. No auth needed.\n\n```bash\ncurl -s https:\u002F\u002Fapi.github.com\u002Foctocat\n```\n\n## Tool 8: Fun ASCII Utilities (via curl)\n\nThese free services return ASCII art directly — great for fun extras.\n\n### QR Codes as ASCII Art\n\n```bash\ncurl -s \"qrenco.de\u002FHello+World\"\ncurl -s \"qrenco.de\u002Fhttps:\u002F\u002Fexample.com\"\n```\n\n### Weather as ASCII Art\n\n```bash\ncurl -s \"wttr.in\u002FLondon\"          # Full weather report with ASCII graphics\ncurl -s \"wttr.in\u002FMoon\"            # Moon phase in ASCII art\ncurl -s \"v2.wttr.in\u002FLondon\"       # Detailed version\n```\n\n## Tool 9: LLM-Generated Custom Art (Fallback)\n\nWhen tools above don't have what's needed, generate ASCII art directly using these Unicode characters:\n\n### Character Palette\n\n**Box Drawing:** `╔ ╗ ╚ ╝ ║ ═ ╠ ╣ ╦ ╩ ╬ ┌ ┐ └ ┘ │ ─ ├ ┤ ┬ ┴ ┼ ╭ ╮ ╰ ╯`\n\n**Block Elements:** `░ ▒ ▓ █ ▄ ▀ ▌ ▐ ▖ ▗ ▘ ▝ ▚ ▞`\n\n**Geometric & Symbols:** `◆ ◇ ◈ ● ○ ◉ ■ □ ▲ △ ▼ ▽ ★ ☆ ✦ ✧ ◀ ▶ ◁ ▷ ⬡ ⬢ ⌂`\n\n### Rules\n\n- Max width: 60 characters per line (terminal-safe)\n- Max height: 15 lines for banners, 25 for scenes\n- Monospace only: output must render correctly in fixed-width fonts\n\n## Decision Flow\n\n1. **Text as a banner** → pyfiglet if installed, otherwise asciified API via curl\n2. **Wrap a message in fun character art** → cowsay\n3. **Add decorative border\u002Fframe** → boxes (can combine with pyfiglet\u002Fasciified)\n4. **Art of a specific thing** (cat, rocket, dragon) → ascii.co.uk via curl + parsing\n5. **Convert an image to ASCII** → ascii-image-converter or jp2a\n6. **QR code** → qrenco.de via curl\n7. **Weather\u002Fmoon art** → wttr.in via curl\n8. **Something custom\u002Fcreative** → LLM generation with Unicode palette\n9. **Any tool not installed** → install it, or fall back to next option\n","# ASCII Art Skill\n\nMultiple tools for different ASCII art needs. All tools are local CLI programs or free REST APIs — no API keys required.\n\n## Tool 1: Text Banners (pyfiglet — local)\n\nRender text as large ASCII art banners. 571 built-in fonts.\n\n### Setup\n\n```bash\npip install pyfiglet --break-system-packages -q\n```\n\n### Usage\n\n```bash\npython -m pyfiglet \"YOUR TEXT\" -f slant\npython -m pyfiglet \"TEXT\" -f doom -w 80    # Set width\npython -m pyfiglet --list_fonts             # List all 571 fonts\n```\n\n### Recommended fonts\n\n| Style | Font | Best for |\n|-------|------|----------|\n| Clean & modern | `slant` | Project names, headers |\n| Bold & blocky | `doom` | Titles, logos |\n| Big & readable | `big` | Banners |\n| Classic banner | `banner3` | Wide displays |\n| Compact | `small` | Subtitles |\n| Cyberpunk | `cyberlarge` | Tech themes |\n| 3D effect | `3-d` | Splash screens |\n| Gothic | `gothic` | Dramatic text |\n\n### Tips\n\n- Preview 2-3 fonts and let the user pick their favorite\n- Short text (1-8 chars) works best with detailed fonts like `doom` or `block`\n- Long text works better with compact fonts like `small` or `mini`\n\n## Tool 2: Text Banners (asciified API — remote, no install)\n\nFree REST API that converts text to ASCII art. 250+ FIGlet fonts. Returns plain text directly — no parsing needed. Use this when pyfiglet is not installed or as a quick alternative.\n\n### Usage (via terminal curl)\n\n```bash\n# Basic text banner (default font)\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello+World\"\n\n# With a specific font\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=Slant\"\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=Doom\"\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=Star+Wars\"\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=3-D\"\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=Hello&font=Banner3\"\n\n# List all available fonts (returns JSON array)\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Ffonts\"\n```\n\n### Tips\n\n- URL-encode spaces as `+` in the text parameter\n- The response is plain text ASCII art — no JSON wrapping, ready to display\n- Font names are case-sensitive; use the fonts endpoint to get exact names\n- Works from any terminal with curl — no Python or pip needed\n\n## Tool 3: Cowsay (Message Art)\n\nClassic tool that wraps text in a speech bubble with an ASCII character.\n\n### Setup\n\n```bash\nsudo apt install cowsay -y    # Debian\u002FUbuntu\n# brew install cowsay         # macOS\n```\n\n### Usage\n\n```bash\ncowsay \"Hello World\"\ncowsay -f tux \"Linux rules\"       # Tux the penguin\ncowsay -f dragon \"Rawr!\"          # Dragon\ncowsay -f stegosaurus \"Roar!\"     # Stegosaurus\ncowthink \"Hmm...\"                  # Thought bubble\ncowsay -l                          # List all characters\n```\n\n### Available characters (50+)\n\n`beavis.zen`, `bong`, `bunny`, `cheese`, `daemon`, `default`, `dragon`,\n`dragon-and-cow`, `elephant`, `eyes`, `flaming-skull`, `ghostbusters`,\n`hellokitty`, `kiss`, `kitty`, `koala`, `luke-koala`, `mech-and-cow`,\n`meow`, `moofasa`, `moose`, `ren`, `sheep`, `skeleton`, `small`,\n`stegosaurus`, `stimpy`, `supermilker`, `surgery`, `three-eyes`,\n`turkey`, `turtle`, `tux`, `udder`, `vader`, `vader-koala`, `www`\n\n### Eye\u002Ftongue modifiers\n\n```bash\ncowsay -b \"Borg\"       # =_= eyes\ncowsay -d \"Dead\"       # x_x eyes\ncowsay -g \"Greedy\"     # $_$ eyes\ncowsay -p \"Paranoid\"   # @_@ eyes\ncowsay -s \"Stoned\"     # *_* eyes\ncowsay -w \"Wired\"      # O_O eyes\ncowsay -e \"OO\" \"Msg\"   # Custom eyes\ncowsay -T \"U \" \"Msg\"   # Custom tongue\n```\n\n## Tool 4: Boxes (Decorative Borders)\n\nDraw decorative ASCII art borders\u002Fframes around any text. 70+ built-in designs.\n\n### Setup\n\n```bash\nsudo apt install boxes -y    # Debian\u002FUbuntu\n# brew install boxes         # macOS\n```\n\n### Usage\n\n```bash\necho \"Hello World\" | boxes                    # Default box\necho \"Hello World\" | boxes -d stone           # Stone border\necho \"Hello World\" | boxes -d parchment       # Parchment scroll\necho \"Hello World\" | boxes -d cat             # Cat border\necho \"Hello World\" | boxes -d dog             # Dog border\necho \"Hello World\" | boxes -d unicornsay      # Unicorn\necho \"Hello World\" | boxes -d diamonds        # Diamond pattern\necho \"Hello World\" | boxes -d c-cmt           # C-style comment\necho \"Hello World\" | boxes -d html-cmt        # HTML comment\necho \"Hello World\" | boxes -a c               # Center text\nboxes -l                                       # List all 70+ designs\n```\n\n### Combine with pyfiglet or asciified\n\n```bash\npython -m pyfiglet \"HERMES\" -f slant | boxes -d stone\n# Or without pyfiglet installed:\ncurl -s \"https:\u002F\u002Fasciified.thelicato.io\u002Fapi\u002Fv2\u002Fascii?text=HERMES&font=Slant\" | boxes -d stone\n```\n\n## Tool 5: TOIlet (Colored Text Art)\n\nLike pyfiglet but with ANSI color effects and visual filters. Great for terminal eye candy.\n\n### Setup\n\n```bash\nsudo apt install toilet toilet-fonts -y    # Debian\u002FUbuntu\n# brew install toilet                      # macOS\n```\n\n### Usage\n\n```bash\ntoilet \"Hello World\"                    # Basic text art\ntoilet -f bigmono12 \"Hello\"            # Specific font\ntoilet --gay \"Rainbow!\"                 # Rainbow coloring\ntoilet --metal \"Metal!\"                 # Metallic effect\ntoilet -F border \"Bordered\"             # Add border\ntoilet -F border --gay \"Fancy!\"         # Combined effects\ntoilet -f pagga \"Block\"                 # Block-style font (unique to toilet)\ntoilet -F list                          # List available filters\n```\n\n### Filters\n\n`crop`, `gay` (rainbow), `metal`, `flip`, `flop`, `180`, `left`, `right`, `border`\n\n**Note**: toilet outputs ANSI escape codes for colors — works in terminals but may not render in all contexts (e.g., plain text files, some chat platforms).\n\n## Tool 6: Image to ASCII Art\n\nConvert images (PNG, JPEG, GIF, WEBP) to ASCII art.\n\n### Option A: ascii-image-converter (recommended, modern)\n\n```bash\n# Install\nsudo snap install ascii-image-converter\n# OR: go install github.com\u002FTheZoraiz\u002Fascii-image-converter@latest\n```\n\n```bash\nascii-image-converter image.png                  # Basic\nascii-image-converter image.png -C               # Color output\nascii-image-converter image.png -d 60,30         # Set dimensions\nascii-image-converter image.png -b               # Braille characters\nascii-image-converter image.png -n               # Negative\u002Finverted\nascii-image-converter https:\u002F\u002Furl\u002Fimage.jpg      # Direct URL\nascii-image-converter image.png --save-txt out   # Save as text\n```\n\n### Option B: jp2a (lightweight, JPEG only)\n\n```bash\nsudo apt install jp2a -y\njp2a --width=80 image.jpg\njp2a --colors image.jpg              # Colorized\n```\n\n## Tool 7: Search Pre-Made ASCII Art\n\nSearch curated ASCII art from the web. Use `terminal` with `curl`.\n\n### Source A: ascii.co.uk (recommended for pre-made art)\n\nLarge collection of classic ASCII art organized by subject. Art is inside HTML `\u003Cpre>` tags. Fetch the page with curl, then extract art with a small Python snippet.\n\n**URL pattern:** `https:\u002F\u002Fascii.co.uk\u002Fart\u002F{subject}`\n\n**Step 1 — Fetch the page:**\n\n```bash\ncurl -s 'https:\u002F\u002Fascii.co.uk\u002Fart\u002Fcat' -o ~\u002F.hermes\u002Fcache\u002Fscratch\u002Fascii_art.html\n```\n\n**Step 2 — Extract art from pre tags:**\n\n```python\nimport os, re, html\nwith open(os.path.expanduser('~\u002F.hermes\u002Fcache\u002Fscratch\u002Fascii_art.html')) as f:\n    text = f.read()\narts = re.findall(r'\u003Cpre[^>]*>(.*?)\u003C\u002Fpre>', text, re.DOTALL)\nfor art in arts:\n    clean = re.sub(r'\u003C[^>]+>', '', art)\n    clean = html.unescape(clean).strip()\n    if len(clean) > 30:\n        print(clean)\n        print('\\n---\\n')\n```\n\n**Available subjects** (use as URL path):\n- Animals: `cat`, `dog`, `horse`, `bird`, `fish`, `dragon`, `snake`, `rabbit`, `elephant`, `dolphin`, `butterfly`, `owl`, `wolf`, `bear`, `penguin`, `turtle`\n- Objects: `car`, `ship`, `airplane`, `rocket`, `guitar`, `computer`, `coffee`, `beer`, `cake`, `house`, `castle`, `sword`, `crown`, `key`\n- Nature: `tree`, `flower`, `sun`, `moon`, `star`, `mountain`, `ocean`, `rainbow`\n- Characters: `skull`, `robot`, `angel`, `wizard`, `pirate`, `ninja`, `alien`\n- Holidays: `christmas`, `halloween`, `valentine`\n\n**Tips:**\n- Preserve artist signatures\u002Finitials — important etiquette\n- Multiple art pieces per page — pick the best one for the user\n- Works reliably via curl, no JavaScript needed\n\n### Source B: GitHub Octocat API (fun easter egg)\n\nReturns a random GitHub Octocat with a wise quote. No auth needed.\n\n```bash\ncurl -s https:\u002F\u002Fapi.github.com\u002Foctocat\n```\n\n## Tool 8: Fun ASCII Utilities (via curl)\n\nThese free services return ASCII art directly — great for fun extras.\n\n### QR Codes as ASCII Art\n\n```bash\ncurl -s \"qrenco.de\u002FHello+World\"\ncurl -s \"qrenco.de\u002Fhttps:\u002F\u002Fexample.com\"\n```\n\n### Weather as ASCII Art\n\n```bash\ncurl -s \"wttr.in\u002FLondon\"          # Full weather report with ASCII graphics\ncurl -s \"wttr.in\u002FMoon\"            # Moon phase in ASCII art\ncurl -s \"v2.wttr.in\u002FLondon\"       # Detailed version\n```\n\n## Tool 9: LLM-Generated Custom Art (Fallback)\n\nWhen tools above don't have what's needed, generate ASCII art directly using these Unicode characters:\n\n### Character Palette\n\n**Box Drawing:** `╔ ╗ ╚ ╝ ║ ═ ╠ ╣ ╦ ╩ ╬ ┌ ┐ └ ┘ │ ─ ├ ┤ ┬ ┴ ┼ ╭ ╮ ╰ ╯`\n\n**Block Elements:** `░ ▒ ▓ █ ▄ ▀ ▌ ▐ ▖ ▗ ▘ ▝ ▚ ▞`\n\n**Geometric & Symbols:** `◆ ◇ ◈ ● ○ ◉ ■ □ ▲ △ ▼ ▽ ★ ☆ ✦ ✧ ◀ ▶ ◁ ▷ ⬡ ⬢ ⌂`\n\n### Rules\n\n- Max width: 60 characters per line (terminal-safe)\n- Max height: 15 lines for banners, 25 for scenes\n- Monospace only: output must render correctly in fixed-width fonts\n\n## Decision Flow\n\n1. **Text as a banner** → pyfiglet if installed, otherwise asciified API via curl\n2. **Wrap a message in fun character art** → cowsay\n3. **Add decorative border\u002Fframe** → boxes (can combine with pyfiglet\u002Fasciified)\n4. **Art of a specific thing** (cat, rocket, dragon) → ascii.co.uk via curl + parsing\n5. **Convert an image to ASCII** → ascii-image-converter or jp2a\n6. **QR code** → qrenco.de via curl\n7. **Weather\u002Fmoon art** → wttr.in via curl\n8. **Something custom\u002Fcreative** → LLM generation with Unicode palette\n9. **Any tool not installed** → install it, or fall back to next option\n",{"name":5,"author":47,"license":15,"version":48,"metadata":49,"platforms":59,"description":7,"dependencies":60},"0xbyt4, Hermes Agent","4.0.0",{"hermes":50},{"tags":51,"related_skills":58},[52,28,53,54,55,56,57,41,40,39],"ASCII","Banners","Creative","Unicode","Text-Art","pyfiglet",[34],[32,31,33],[],"main","0d1434f89f4bc6b07e9d272accd8c1013768820f","archive\u002Fskill-md-reviewed\u002Fsha256\u002F48\u002F4863e641e63ce1e2fee28b623a82264e1ad1699bc67af46f0eb4b02716a346b2",0,"https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills","https:\u002F\u002Fgithub.com\u002Fzapabob","The Open University of JAPAN　2019-now\r\n\r\nTokyo University of Science　2007-2010","2026-10-26 16:29:01",{"source":8,"skillName":5,"commands":70,"prompt":80,"zipAvailable":81},[71,74,77],{"tool":72,"command":73},"npx","npx skills add zapabob\u002FSkills --skill ascii-art",{"tool":75,"command":76},"bunx","bunx skills add zapabob\u002FSkills --skill ascii-art",{"tool":78,"command":79},"pnpm","pnpm dlx skills add zapabob\u002FSkills --skill ascii-art","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Farchive\u002Fskill-md-reviewed\u002Fsha256\u002F48\u002F4863e641e63ce1e2fee28b623a82264e1ad1699bc67af46f0eb4b02716a346b2\u002FSKILL.md",true,[83,89],{"path":84,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":87,"sourceHtmlUrl":88},"references\u002Fsite-notes\u002F.gitkeep","REFERENCE","参考文档",1,"https:\u002F\u002Fgithub.com\u002Fstrmt7\u002Fai_skills_collection_benchmarked\u002Fblob\u002Fmain\u002Fincluded\u002Fskills\u002Fby-category\u002Fcommunication-productivity-support\u002Fbrowser-automation-reference\u002Fbrowser-act\u002Freferences\u002Fsite-notes\u002F.gitkeep",{"path":90,"resourceType":85,"resourceTypeDesc":86,"sizeBytes":91,"sourceHtmlUrl":92},"references\u002Fsite-notes\u002Fexample.com.md",539,"https:\u002F\u002Fgithub.com\u002Fstrmt7\u002Fai_skills_collection_benchmarked\u002Fblob\u002Fmain\u002Fincluded\u002Fskills\u002Fby-category\u002Fcommunication-productivity-support\u002Fbrowser-automation-reference\u002Fbrowser-act\u002Freferences\u002Fsite-notes\u002Fexample.com.md",[94,125,158,182,209,226],{"skillNo":95,"name":96,"nameZh":6,"description":97,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":98,"categories":99,"keywords":111,"publishedAt":42},"01M6GJTE1GESGGF9K028Y7753E","xurl","X\u002FTwitter via xurl CLI: post, search, DM, media, v2 API.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fxurl\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[100,103,106],{"categoryNo":101,"categoryName":102,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":104,"categoryName":105,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":107,"categoryName":108,"taxonomyType":109,"taxonomyTypeDesc":110},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[96,112,31,113,114,32,33,115,116,117,118,119,120,36,37,121,61,122,123,124],"openclaw","cli","github","official","search","https","social-media","api","Media","twitter","social","via","post",{"skillNo":126,"name":127,"nameZh":6,"description":128,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":129,"categories":130,"keywords":140,"publishedAt":42},"01M6GJT8S1PXQ8WPXT1HSNBWH2","writing-plans","Write implementation plans: bite-sized tasks, paths, code.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwriting-plans\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[131,132,135,136,137],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":133,"categoryName":134,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":104,"categoryName":105,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":107,"categoryName":108,"taxonomyType":109,"taxonomyTypeDesc":110},{"categoryNo":138,"categoryName":139,"taxonomyType":109,"taxonomyTypeDesc":110},"01JBSEEDCAT000000000000036","内容创作者",[141,142,143,144,31,145,32,146,33,147,148,149,150,151,152,153,154,155,156,157],"writing","writing plans","plans","design","review","workflow","documentation","tasks","development","code","planning","code-review","subagent","write","superpowers","paths","test-driven-development",{"skillNo":159,"name":160,"nameZh":6,"description":161,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":162,"categories":163,"keywords":165,"publishedAt":42},"01M6GJST0H5X7WHBJ3BZK0DVKH","whisper","OpenAI's general-purpose speech recognition model. Supports 99 languages, transcription, translation to English, and language identification. Six model sizes from tiny (39M params) to large (1550M params). Use for speech-to-text, podcast transcription, or multilingual audio processing. Best for robust, multilingual ASR.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwhisper\u002Fvariants\u002Fhermes-agent-optional\u002FSKILL.md",[164],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[160,31,32,166,167,168,169,170,171,35,172,173,174,175,176,177,178,179,180,181],"openai","speech","multimodal","Transformers","ASR","Audio","model","speech recognition","use","general","multilingual","translation","english","identification","processing","Audio Processing",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":191,"publishedAt":42},"01M6GJSMRQ8EETZTYMG72P70EA","weights-and-biases","W&B: log ML experiments, sweeps, model registry, dashboards.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fweights-and-biases\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[188],{"categoryNo":189,"categoryName":190,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000013","分析与可视化",[192,31,193,194,33,195,196,197,198,199,200,172,201,202,203,204,205,206,207,208],"weights and biases","tensorflow","experiments","pytorch","visualization","registry","real-time","tuning","dashboards","experiment","log","time","Experiment Tracking","Model Registry","Hyperparameter Tuning","WandB","Real-Time Visualization",{"skillNo":210,"name":211,"nameZh":6,"description":212,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":213,"categories":214,"keywords":216,"publishedAt":42},"01M6GJS19KDPRY112JTR326S06","watchers","Poll RSS, JSON APIs, and GitHub with watermark dedup.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fwatchers\u002Fvariants\u002Fhermes-agent-optional\u002FSKILL.md",[215],{"categoryNo":104,"categoryName":105,"taxonomyType":21,"taxonomyTypeDesc":22},[211,31,217,114,32,218,219,220,221,222,223,36,37,224,225],"terminal","automation","http","monitoring","cron","json","rss","devops","with",{"skillNo":227,"name":228,"nameZh":6,"description":229,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":230,"categories":231,"keywords":234,"publishedAt":42},"01M6GJRHJD2A6Q830SWF9W48BC","serving-llms-vllm","vLLM: high-throughput LLM serving, OpenAI API, quantization.","https:\u002F\u002Fgithub.com\u002Fzapabob\u002FSkills\u002Fblob\u002Fmain\u002Fregistry\u002Fskills\u002Fvllm\u002Fvariants\u002Fhermes-agent\u002FSKILL.md",[232,233],{"categoryNo":101,"categoryName":102,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":107,"categoryName":108,"taxonomyType":109,"taxonomyTypeDesc":110},[235,236,237,32,238,166,239,240,241,169,242,119,243,244,245,246,247,248,249,250],"llms","vLLM","serving llms vllm","research","openai api","tensor","Inference Serving","Production","llm serving","High Throughput","PagedAttention","Continuous Batching","Quantization","Tensor Parallelism","high-throughput","throughput"]