본문으로 건너뛰기
cccskills
무료GitHub에 공개

ascii-art

Render text or an image as ASCII art for terminal-friendly output.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md6.3 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

ASCII art

Text that has to survive a terminal, a log file, a commit message or a plain-text channel, where an image cannot go. A banner for a CLI, a QR code somebody can scan off the screen, a picture reduced to characters.

Everything here is a local CLI or a keyless HTTP endpoint. Nothing needs an account.

Pick by what you were asked for

You wantUse
A text bannerpyfiglet locally, or the asciified endpoint with no install
A character saying somethingcowsay
A frame around existing outputboxes, piped
Coloured terminal texttoilet
An image turned into charactersascii-image-converter, or jp2a for JPEG
A QR codeqrenco.de
Weather or a moon phasewttr.in
Something no tool coversdraw it yourself, palette at the end

Banners

Locally, which is fastest and works offline:

pip install pyfiglet
python -m pyfiglet "LARUCHE" -f slant
python -m pyfiglet "LARUCHE" -f doom -w 80
python -m pyfiglet --list_fonts | head -40

Without installing anything:

curl -s "https://asciified.thelicato.io/api/v2/ascii?text=LaRuche&font=Slant"
curl -s "https://asciified.thelicato.io/api/v2/fonts"

Spaces become + in the query string. Font names are case sensitive: Slant works, slant does not. The response is plain text and arrives without a trailing newline, so the next thing you print lands on the same line. Add one.

Choosing a font is mostly about length. Short and punchy takes a heavy face; anything long needs a narrow one, or it wraps and becomes unreadable:

TextFont
1 to 8 charactersdoom, block, 3-d
a normal wordslant, big
a phrasesmall, mini

Check the width before showing it. Terminal art over 80 columns wraps, and wrapped ASCII art is just noise.

Frames, characters, colour

cowsay "the build is green"
cowsay -f tux "hello"
cowthink "hmm"
cowsay -l                     # every available character
echo "release 2.4.1" | boxes -d stone
echo "note" | boxes -d c-cmt          # a C comment block
boxes -l                              # every design

They compose, which is the point:

python -m pyfiglet "LARUCHE" -f slant | boxes -d stone

toilet adds ANSI colour:

toilet -f bigmono12 --metal "LARUCHE"
toilet -F border "framed"

Colour is escape codes, not characters. In a terminal it looks good; in a file, a commit message or a chat message it becomes \x1b[35m litter. Use toilet only when the destination is a terminal, and pyfiglet everywhere else.

On Debian and Ubuntu these come from apt install cowsay boxes toilet, on macOS from brew install cowsay boxes toilet. All three need root to install. If you do not have it, the asciified endpoint covers banners and there is no local substitute for the others: say so rather than trying to install for ten minutes.

Images

ascii-image-converter image.png
ascii-image-converter image.png -C            # colour
ascii-image-converter image.png -d 60,30      # columns,rows
ascii-image-converter image.png -b            # braille, much finer
ascii-image-converter https://example.com/photo.jpg

Install with go install github.com/TheZoraiz/ascii-image-converter@latest, or snap install ascii-image-converter. For JPEG only, jp2a --width=80 image.jpg is smaller and usually already packaged.

Set the width explicitly, always. The default guesses from the terminal, and the terminal it guesses is not the one the user is reading in.

Photographs convert badly. High contrast with a clear silhouette (a logo, an icon, a diagram) survives; a group photo becomes grey mush. Look at the result before sending it, and if it is unreadable say so instead of shipping it.

QR codes and weather

curl -s "https://qrenco.de/https://example.com"
curl -s "https://wttr.in/London"
curl -s "https://wttr.in/Moon"

A QR code needs its aspect ratio to survive. Anything that reflows lines, or renders in a proportional font, breaks it. Send it inside a fenced code block, and tell the user it must be viewed in a monospace font to scan.

For an actual weather answer rather than the picture, use the weather_forecast skill.

Drawing it yourself

When nothing above fits, compose it from a palette. Keep every line the same visual width, because misalignment is the only thing a reader notices.

box drawing   ╔ ╗ ╚ ╝ ║ ═ ╠ ╣ ╦ ╩ ╬ ┌ ┐ └ ┘ │ ─ ├ ┤ ┬ ┴ ┼ ╭ ╮ ╰ ╯
blocks        ░ ▒ ▓ █ ▄ ▀ ▌ ▐ ▖ ▗ ▘ ▝ ▚ ▞
shapes        ◆ ◇ ● ○ ◉ ■ □ ▲ △ ▼ ▽ ★ ☆ ◀ ▶ ⬡ ⬢

Sixty columns maximum, fifteen lines for a banner and twenty-five for a scene. Monospace is assumed by every character above: in a proportional font the alignment collapses entirely.

Traps

  • ANSI colour outside a terminal. See above. This is the most common way this output gets ruined.
  • Width. Over 80 columns it wraps. Check before sending.
  • Wide characters. Box-drawing and block characters are single-width, but emoji and CJK are double-width and will not line up with them. Do not mix.
  • Fenced code blocks are mandatory. Outside one, markdown renderers eat the spacing and collapse the art.
  • Fonts are case sensitive in the asciified API.
  • Credit stays on the art. Pre-made ASCII art often carries the artist's initials in a corner. Keep them.

Failure modes

pyfiglet: No module named. Not installed. pip install pyfiglet, or fall back to the asciified endpoint, which needs nothing.

cowsay: command not found and no root. No local fallback exists. Say so; do not spend the turn attempting installs that will not work.

The banner is wrapped and unreadable. The font is too wide for the text. Move down the font table, or shorten the text.

The asciified endpoint returns an empty body. The font name is wrong, or wrongly cased. List the fonts and copy one exactly.

The image came out as grey mush. Too little contrast for the medium. Try -b for braille, raise the dimensions, or tell the user this image will not reduce to characters.

It looked right in the terminal and broken in the chat. Colour codes, or no code fence. Re-render without toilet and wrap it in a fence.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Drive an installed LaRuche App through its declared actions, never its files.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

infinition/LaRuche332026년 9월 22일 업데이트

arxiv

무료

Find academic papers on arXiv, with citation counts and BibTeX.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

infinition/LaRuche332026년 9월 22일 업데이트

Track RSS/Atom feeds and blogs via blogwatcher-cli.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

infinition/LaRuche332026년 9월 22일 업데이트

Drive a real web browser: navigate, read, find, click, fill, screenshot

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

infinition/LaRuche332026년 9월 22일 업데이트

Measure a codebase: lines of code, language mix, and symbol lookups.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

infinition/LaRuche332026년 9월 22일 업데이트

Store, find and curate lasting facts in the cognitive memory map.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

infinition/LaRuche332026년 9월 22일 업데이트

infinition의 스킬 모두 보기

이 스킬의 문제 신고