{"id":"1da5ac39-750b-4838-88ad-c10d5a0451ee","shortId":"TyRSuM","kind":"skill","title":"plantuml-ascii","tagline":"Generate ASCII art diagrams using PlantUML text mode. Use when user asks to create ASCII diagrams, text-based diagrams, terminal-friendly diagrams, or mentions plantuml ascii, text diagram, ascii art diagram. Supports: Converting PlantUML diagrams to ASCII art, Creating sequence ","description":"# PlantUML ASCII Art Diagram Generator\n\n## Overview\n\nCreate text-based ASCII art diagrams using PlantUML. Perfect for documentation in terminal environments, README files, emails, or any scenario where graphical diagrams aren't suitable.\n\n## What is PlantUML ASCII Art?\n\nPlantUML can generate diagrams as plain text (ASCII art) instead of images. This is useful for:\n\n- Terminal-based workflows\n- Git commits/PRs without image support\n- Documentation that needs to be version-controlled\n- Environments where graphical tools aren't available\n\n## Installation\n\n```bash\n# macOS\nbrew install plantuml\n\n# Linux (varies by distro)\nsudo apt-get install plantuml  # Ubuntu/Debian\nsudo yum install plantuml      # RHEL/CentOS\n\n# Or download JAR directly\nwget https://github.com/plantuml/plantuml/releases/download/v1.2024.0/plantuml-1.2024.0.jar\n```\n\n## Output Formats\n\n| Flag    | Format        | Description                          |\n| ------- | ------------- | ------------------------------------ |\n| `-txt`  | ASCII         | Pure ASCII characters                |\n| `-utxt` | Unicode ASCII | Enhanced with box-drawing characters |\n\n## Basic Workflow\n\n### 1. Create PlantUML Diagram File\n\n```plantuml\n@startuml\nparticipant Bob\nactor Alice\n\nBob -> Alice : hello\nAlice -> Bob : Is it ok?\n@enduml\n```\n\n### 2. Generate ASCII Art\n\n```bash\n# Standard ASCII output\nplantuml -txt diagram.puml\n\n# Unicode-enhanced output (better looking)\nplantuml -utxt diagram.puml\n\n# Using JAR directly\njava -jar plantuml.jar -txt diagram.puml\njava -jar plantuml.jar -utxt diagram.puml\n```\n\n### 3. View Output\n\nOutput is saved as `diagram.atxt` (ASCII) or `diagram.utxt` (Unicode).\n\n## Diagram Types Supported\n\n### Sequence Diagram\n\n```plantuml\n@startuml\nactor User\nparticipant \"Web App\" as App\ndatabase \"Database\" as DB\n\nUser -> App : Login Request\nApp -> DB : Validate Credentials\nDB --> App : User Data\nApp --> User : Auth Token\n@enduml\n```\n\n### Class Diagram\n\n```plantuml\n@startuml\nclass User {\n  +id: int\n  +name: string\n  +email: string\n  +login(): bool\n}\n\nclass Order {\n  +id: int\n  +total: float\n  +items: List\n  +calculateTotal(): float\n}\n\nUser \"1\" -- \"*\" Order : places\n@enduml\n```\n\n### Activity Diagram\n\n```plantuml\n@startuml\nstart\n:Initialize;\nif (Is Valid?) then (yes)\n  :Process Data;\n  :Save Result;\nelse (no)\n  :Log Error;\n  stop\nendif\n:Complete;\nstop\n@enduml\n```\n\n### State Diagram\n\n```plantuml\n@startuml\n[*] --> Idle\nIdle --> Processing : start\nProcessing --> Success : complete\nProcessing --> Error : fail\nSuccess --> [*]\nError --> Idle : retry\n@enduml\n```\n\n### Component Diagram\n\n```plantuml\n@startuml\n[Client] as client\n[API Gateway] as gateway\n[Service A] as svcA\n[Service B] as svcB\n[Database] as db\n\nclient --> gateway\ngateway --> svcA\ngateway --> svcB\nsvcA --> db\nsvcB --> db\n@enduml\n```\n\n### Use Case Diagram\n\n```plantuml\n@startuml\nactor \"User\" as user\nactor \"Admin\" as admin\n\nrectangle \"System\" {\n  user -- (Login)\n  user -- (View Profile)\n  user -- (Update Settings)\n  admin -- (Manage Users)\n  admin -- (Configure System)\n}\n@enduml\n```\n\n### Deployment Diagram\n\n```plantuml\n@startuml\nactor \"User\" as user\nnode \"Load Balancer\" as lb\nnode \"Web Server 1\" as ws1\nnode \"Web Server 2\" as ws2\ndatabase \"Primary DB\" as db1\ndatabase \"Replica DB\" as db2\n\nuser --> lb\nlb --> ws1\nlb --> ws2\nws1 --> db1\nws2 --> db1\ndb1 --> db2 : replicate\n@enduml\n```\n\n## Command-Line Options\n\n```bash\n# Specify output directory\nplantuml -txt -o ./output diagram.puml\n\n# Process all files in directory\nplantuml -txt ./diagrams/\n\n# Include dot files (hidden files)\nplantuml -txt -includeDot diagrams/\n\n# Verbose output\nplantuml -txt -v diagram.puml\n\n# Specify charset\nplantuml -txt -charset UTF-8 diagram.puml\n```\n\n## Ant Task Integration\n\n```xml\n<target name=\"generate-ascii\">\n  <plantuml dir=\"./src\" format=\"txt\" />\n</target>\n\n<target name=\"generate-unicode-ascii\">\n  <plantuml dir=\"./src\" format=\"utxt\" />\n</target>\n```\n\n## Tips for Better ASCII Diagrams\n\n1. **Keep it simple**: Complex diagrams don't render well in ASCII\n2. **Short labels**: Long text breaks ASCII alignment\n3. **Use Unicode (`-utxt`)**: Better visual quality with box-drawing chars\n4. **Test before sharing**: Verify in terminal with fixed-width font\n5. **Consider alternatives**: For complex diagrams, use Mermaid.js or graphviz\n\n## Example Output Comparison\n\n**Standard ASCII (`-txt`)**:\n\n```\n     ,---.          ,---.\n     |Bob|          |Alice|\n     `---'          `---'\n      |   hello      |\n      |------------->|\n      |              |\n      |  Is it ok?   |\n      |<-------------|\n      |              |\n```\n\n**Unicode ASCII (`-utxt`)**:\n\n```\n┌─────┐        ┌─────┐\n│ Bob │        │Alice│\n└─────┘        └─────┘\n  │   hello      │\n  │─────────────>│\n  │              │\n  │  Is it ok?   │\n  │<─────────────│\n  │              │\n```\n\n## Quick Reference\n\n```bash\n# Create sequence diagram in ASCII\ncat > seq.puml << 'EOF'\n@startuml\nAlice -> Bob: Request\nBob --> Alice: Response\n@enduml\nEOF\n\nplantuml -txt seq.puml\ncat seq.atxt\n\n# Create with Unicode\nplantuml -utxt seq.puml\ncat seq.utxt\n```\n\n## Troubleshooting\n\n**Problem**: Garbled Unicode characters\n\n- **Solution**: Ensure terminal supports UTF-8 and has proper font\n\n**Problem**: Diagram looks misaligned\n\n- **Solution**: Use fixed-width font (Courier, Monaco, Consolas)\n\n**Problem**: Command not found\n\n- **Solution**: Install PlantUML or use Java JAR directly\n\n**Problem**: Output file not created\n\n- **Solution**: Check file permissions, ensure PlantUML has write access","tags":["plantuml","ascii","awesome","copilot","github","agent-skills","agents","custom-agents","github-copilot","hacktoberfest","prompt-engineering"],"capabilities":["skill","source-github","skill-plantuml-ascii","topic-agent-skills","topic-agents","topic-awesome","topic-custom-agents","topic-github-copilot","topic-hacktoberfest","topic-prompt-engineering"],"categories":["awesome-copilot"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/github/awesome-copilot/plantuml-ascii","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add github/awesome-copilot","source_repo":"https://github.com/github/awesome-copilot","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 33270 github stars · SKILL.md body (5,476 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:52:19.757Z","embedding":null,"createdAt":"2026-04-18T20:25:40.181Z","updatedAt":"2026-05-18T18:52:19.757Z","lastSeenAt":"2026-05-18T18:52:19.757Z","tsv":"'-8':501,630 '/diagrams':479 '/output':470 '/plantuml/plantuml/releases/download/v1.2024.0/plantuml-1.2024.0.jar':153 '1':175,300,426,512 '2':195,432,524 '3':228,532 '4':544 '5':556 'access':673 'activ':304 'actor':184,247,385,389,414 'admin':390,392,403,406 'alic':185,187,189,573,582,599,603 'align':531 'altern':558 'ant':503 'api':354 'app':251,253,259,262,267,270 'apt':136 'apt-get':135 'aren':76,121 'art':6,35,43,48,57,83,92,198 'ascii':3,5,18,31,34,42,47,56,82,91,160,162,166,197,201,236,510,523,530,570,579,594 'ask':15 'auth':272 'avail':123 'b':363 'balanc':420 'base':22,55,102 'bash':125,199,463,589 'basic':173 'better':210,509,536 'bob':183,186,190,572,581,600,602 'bool':288 'box':170,541 'box-draw':169,540 'break':529 'brew':127 'calculatetot':297 'case':381 'cat':595,610,618 'char':543 'charact':163,172,624 'charset':496,499 'check':666 'class':275,279,289 'client':351,353,369 'command':460,649 'command-lin':459 'commits/prs':105 'comparison':568 'complet':325,338 'complex':516,560 'compon':347 'configur':407 'consid':557 'consola':647 'control':116 'convert':38 'courier':645 'creat':17,44,52,176,590,612,664 'credenti':265 'data':269,316 'databas':254,255,366,435,440 'db':257,263,266,368,376,378,437,442 'db1':439,452,454,455 'db2':444,456 'deploy':410 'descript':158 'diagram':7,19,23,27,33,36,40,49,58,75,87,178,240,244,276,305,329,348,382,411,488,511,517,561,592,636 'diagram.atxt':235 'diagram.puml':205,214,222,227,471,494,502 'diagram.utxt':238 'direct':149,217,659 'directori':466,476 'distro':133 'document':63,109 'dot':481 'download':147 'draw':171,542 'els':319 'email':69,285 'endif':324 'enduml':194,274,303,327,346,379,409,458,605 'enhanc':167,208 'ensur':626,669 'environ':66,117 'eof':597,606 'error':322,340,343 'exampl':566 'fail':341 'file':68,179,474,482,484,662,667 'fix':553,642 'fixed-width':552,641 'flag':156 'float':294,298 'font':555,634,644 'format':155,157 'found':651 'friend':26 'garbl':622 'gateway':355,357,370,371,373 'generat':4,50,86,196 'get':137 'git':104 'github.com':152 'github.com/plantuml/plantuml/releases/download/v1.2024.0/plantuml-1.2024.0.jar':151 'graphic':74,119 'graphviz':565 'hello':188,574,583 'hidden':483 'id':281,291 'idl':332,333,344 'imag':95,107 'includ':480 'includedot':487 'initi':309 'instal':124,128,138,143,653 'instead':93 'int':282,292 'integr':505 'item':295 'jar':148,216,219,224,658 'java':218,223,657 'keep':513 'label':526 'lb':422,446,447,449 'line':461 'linux':130 'list':296 'load':419 'log':321 'login':260,287,396 'long':527 'look':211,637 'maco':126 'manag':404 'mention':29 'mermaid.js':563 'misalign':638 'mode':11 'monaco':646 'name':283 'need':111 'node':418,423,429 'o':469 'ok':193,577,586 'option':462 'order':290,301 'output':154,202,209,230,231,465,490,567,661 'overview':51 'particip':182,249 'perfect':61 'permiss':668 'place':302 'plain':89 'plantuml':2,9,30,39,46,60,81,84,129,139,144,177,180,203,212,245,277,306,330,349,383,412,467,477,485,491,497,607,615,654,670 'plantuml-ascii':1 'plantuml.jar':220,225 'primari':436 'problem':621,635,648,660 'process':315,334,336,339,472 'profil':399 'proper':633 'pure':161 'qualiti':538 'quick':587 'readm':67 'rectangl':393 'refer':588 'render':520 'replic':457 'replica':441 'request':261,601 'respons':604 'result':318 'retri':345 'rhel/centos':145 'save':233,317 'scenario':72 'seq.atxt':611 'seq.puml':596,609,617 'seq.utxt':619 'sequenc':45,243,591 'server':425,431 'servic':358,362 'set':402 'share':547 'short':525 'simpl':515 'skill' 'skill-plantuml-ascii' 'solut':625,639,652,665 'source-github' 'specifi':464,495 'standard':200,569 'start':308,335 'startuml':181,246,278,307,331,350,384,413,598 'state':328 'stop':323,326 'string':284,286 'success':337,342 'sudo':134,141 'suitabl':78 'support':37,108,242,628 'svca':361,372,375 'svcb':365,374,377 'system':394,408 'task':504 'termin':25,65,101,550,627 'terminal-bas':100 'terminal-friend':24 'test':545 'text':10,21,32,54,90,528 'text-bas':20,53 'tip':507 'token':273 'tool':120 'topic-agent-skills' 'topic-agents' 'topic-awesome' 'topic-custom-agents' 'topic-github-copilot' 'topic-hacktoberfest' 'topic-prompt-engineering' 'total':293 'troubleshoot':620 'txt':159,204,221,468,478,486,492,498,571,608 'type':241 'ubuntu/debian':140 'unicod':165,207,239,534,578,614,623 'unicode-enhanc':206 'updat':401 'use':8,12,59,98,215,380,533,562,640,656 'user':14,248,258,268,271,280,299,386,388,395,397,400,405,415,417,445 'utf':500,629 'utxt':164,213,226,535,580,616 'v':493 'valid':264,312 'vari':131 'verbos':489 'verifi':548 'version':115 'version-control':114 'view':229,398 'visual':537 'web':250,424,430 'well':521 'wget':150 'width':554,643 'without':106 'workflow':103,174 'write':672 'ws1':428,448,451 'ws2':434,450,453 'xml':506 'yes':314 'yum':142","prices":[{"id":"50ec20a8-7e1a-4dad-88e5-35940d4f444d","listingId":"1da5ac39-750b-4838-88ad-c10d5a0451ee","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"github","category":"awesome-copilot","install_from":"skills.sh"},"createdAt":"2026-04-18T20:25:40.181Z"}],"sources":[{"listingId":"1da5ac39-750b-4838-88ad-c10d5a0451ee","source":"github","sourceId":"github/awesome-copilot/plantuml-ascii","sourceUrl":"https://github.com/github/awesome-copilot/tree/main/skills/plantuml-ascii","isPrimary":false,"firstSeenAt":"2026-04-18T21:50:29.842Z","lastSeenAt":"2026-05-18T18:52:19.757Z"},{"listingId":"1da5ac39-750b-4838-88ad-c10d5a0451ee","source":"skills_sh","sourceId":"github/awesome-copilot/plantuml-ascii","sourceUrl":"https://skills.sh/github/awesome-copilot/plantuml-ascii","isPrimary":true,"firstSeenAt":"2026-04-18T20:25:40.181Z","lastSeenAt":"2026-05-07T22:40:17.693Z"}],"details":{"listingId":"1da5ac39-750b-4838-88ad-c10d5a0451ee","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"github","slug":"plantuml-ascii","github":{"repo":"github/awesome-copilot","stars":33270,"topics":["agent-skills","agents","ai","awesome","custom-agents","github-copilot","hacktoberfest","prompt-engineering"],"license":"mit","html_url":"https://github.com/github/awesome-copilot","pushed_at":"2026-05-18T01:26:59Z","description":"Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.","skill_md_sha":"d01cc750d0e84b5439d44648079dd6ee55f2518a","skill_md_path":"skills/plantuml-ascii/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/github/awesome-copilot/tree/main/skills/plantuml-ascii"},"layout":"multi","source":"github","category":"awesome-copilot","frontmatter":{"name":"plantuml-ascii","license":"MIT","description":"Generate ASCII art diagrams using PlantUML text mode. Use when user asks to create ASCII diagrams, text-based diagrams, terminal-friendly diagrams, or mentions plantuml ascii, text diagram, ascii art diagram. Supports: Converting PlantUML diagrams to ASCII art, Creating sequence diagrams, class diagrams, flowcharts in ASCII format, Generating Unicode-enhanced ASCII art with -utxt flag"},"skills_sh_url":"https://skills.sh/github/awesome-copilot/plantuml-ascii"},"updatedAt":"2026-05-18T18:52:19.757Z"}}