DEV Community

Cover image for Best engineers are artists, so I built an git-like art tool for the terminal
Ming
Ming

Posted on

Best engineers are artists, so I built an git-like art tool for the terminal

The spark

I was driving one day listening to Naval Ravikant, and he said something that stuck with me: his best engineers are all artists. But not everyone of us actually create art!

That hit home. We spend all day building creative things in code, but most of us never touch visual art. Not because we lack interest — because the tools aren't built for how we work. AI image generation is powerful, and most of us already have the API keys. But the interfaces are all web apps and notebooks. Nothing that fits the way engineers actually think and iterate.

So I built muse — a CLI that brings AI art creation into the terminal, where we already live.

The workflow

The design mirrors how we already work: iterate fast, roll back when something breaks, get feedback, try again.

# Start with a prompt
muse new "a cozy cabin in a snowy forest, watercolor style"

# Iterate with natural language
muse tweak "add warm golden light glowing from the windows"

# Get AI critique
muse review

# Don't like it? Roll back
muse back
Enter fullscreen mode Exit fullscreen mode

Every step is saved. History is immutable — muse back moves a pointer, never deletes. You can branch from any point with muse tweak --from 3.

Made with VHS

The roast persona

Muse ships with four review personas. The fun one is roast — a sarcastic critic that evaluates your art like a code review:

muse review --persona roast
Enter fullscreen mode Exit fullscreen mode

"This composition has more spaghetti than your microservices. The lighting says 'I set opacity to 0.3 and called it a day.' Rating: Request Changes. Try muse tweak 'actually learn what contrast means'"

There's also collaborative (default, friendly), critic (formal art analysis), and technical (factual, for debugging prompt-vs-output gaps). Drop any markdown file in ~/.muse/personas/ to make your own.

The gallery

muse gallery starts a local server with a dark-themed web UI. Grid view shows all your sessions as cards. Click one to see the full iteration timeline with prompts, metadata, and reviews.

No framework — just vanilla JS, served by Python's http.server.

Providers

Bring your own API keys:

  • OpenAI — DALL-E 3 for generation, GPT-4o for vision/critique
  • Gemini — Gemini 2.0 Flash for both

Muse auto-detects from environment variables. Run muse providers to see what's available.

Try it

git clone https://github.com/charismaticchiu/muse.git
cd muse
uv sync
export OPENAI_API_KEY="sk-..."
uv run muse new "your wildest idea here"
Enter fullscreen mode Exit fullscreen mode

GitHub: charismaticchiu/muse

Would love to hear what personas or providers you'd want to see next.

Top comments (0)