Skip to content

[Extension]: Add ascii-diagram #4161

Description

@MRZHUH

Extension ID

ascii-diagram

Extension Name

ASCII Diagram Renderer

Version

1.1.0

Description

Renders hand-drawn ASCII/Unicode diagrams (state machine, architecture, flow, coverage map) of what spec/plan/tasks/analyze already say — plain text, no Mermaid renderer needed.

Author

MRZHUH

Repository URL

https://github.com/MRZHUH/spec-kit-ascii-diagram

Download URL

https://github.com/MRZHUH/spec-kit-ascii-diagram/archive/refs/tags/v1.1.0.zip

License

MIT

Homepage

https://github.com/MRZHUH/spec-kit-ascii-diagram

Documentation URL

https://github.com/MRZHUH/spec-kit-ascii-diagram/blob/main/README.md

Changelog URL

https://github.com/MRZHUH/spec-kit-ascii-diagram/blob/main/CHANGELOG.md

Required Spec Kit Version

=0.2.0

Required Tools

None

Number of Commands

1

Number of Hooks

4

Tags

diagram, ascii, visualization, coverage, traceability

Key Features

  • Draws state machine / architecture / dependency-graph / coverage-map diagrams in plain Unicode box-drawing text — no Mermaid renderer needed, renders anywhere plain text does.
  • Hooks into after_specify / after_plan / after_tasks (appends into the doc) and after_analyze (inline-only, writes no file — respects analyze's strictly-read-only contract).
  • Idempotent re-runs: replaces its own marked section in place instead of duplicating it.

Testing Checklist

  • Extension installs successfully via download URL
  • All commands execute without errors
  • Documentation is complete and accurate
  • No security vulnerabilities identified
  • Tested on at least one real project

Submission Requirements

  • Valid extension.yml manifest included
  • README.md with installation and usage instructions
  • LICENSE file included
  • GitHub release created with version tag
  • All command files exist and are properly formatted
  • Extension ID follows naming conventions (lowercase-with-hyphens)

Testing Details

Installed via specify extension add ascii-diagram --from <release-zip-url> into a fresh specify init project, twice (v1.0.0 and v1.1.0), confirmed via specify extension list/info that the manifest and all 4 hooks register correctly. Then ran the command's own instructions against a realistic toy feature (file upload + virus scan) covering all four sources: spec.md → state machine, plan.md → architecture diagram (plus a second run after editing plan.md, to confirm the "replace, don't duplicate" section behavior), tasks.md → dependency graph, and a fabricated analyze coverage report → inline-only coverage/traceability diagram with zero file writes.

Example Usage

/speckit.ascii-diagram.render
/speckit.ascii-diagram.render plan
/speckit.ascii-diagram.render analyze

Proposed Catalog Entry

{
  "name": "ASCII Diagram Renderer",
  "id": "ascii-diagram",
  "description": "Renders hand-drawn ASCII/Unicode diagrams (state machine, architecture, flow, coverage map) of what spec/plan/tasks/analyze already say — plain text, no Mermaid renderer needed.",
  "author": "MRZHUH",
  "version": "1.1.0",
  "download_url": "https://github.com/MRZHUH/spec-kit-ascii-diagram/archive/refs/tags/v1.1.0.zip",
  "repository": "https://github.com/MRZHUH/spec-kit-ascii-diagram",
  "homepage": "https://github.com/MRZHUH/spec-kit-ascii-diagram",
  "license": "MIT",
  "category": "docs",
  "effect": "read-write",
  "requires": { "speckit_version": ">=0.2.0" },
  "provides": { "commands": 1, "hooks": 4 },
  "tags": ["diagram", "ascii", "visualization", "coverage", "traceability"],
  "verified": false,
  "downloads": 0,
  "stars": 0,
  "created_at": "2026-08-17T00:00:00Z",
  "updated_at": "2026-08-17T00:00:00Z"
}

Additional Context

The catalog already has a diagram extension ("Spec Diagram") that renders Mermaid diagrams of SDD workflow state/progress. This extension is a different, complementary angle: it diagrams the content of a given spec/plan/tasks/analyze artifact (a state machine, an architecture, a coverage map), in plain Unicode text rather than Mermaid, so it renders anywhere without a Mermaid-capable viewer. Repo name and id were deliberately chosen distinct from the existing entry to avoid confusion.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions