If you've written TikZ diagrams in LaTeX, you've probably hit this wall: the diagram looks perfectly fine in your head, you compile, and then a wall of cryptic error messages appears in the log.
Not errors you can fix in 30 seconds. Errors like:
! Package pgf Error: No shape 'rounded rectangle' is known.
<to be read again>
\relax
l.94 }
You look at line 94. It's just a closing brace. The actual problem is twenty lines earlier, in a \usetikzlibrary call that's missing a library you didn't know existed.
I spent three hours on this exact problem before a lab mate pointed me toward TeX64. I want to share what I learned.
Why TikZ Errors Are Especially Painful
Regular LaTeX errors are annoying but usually interpretable. "Undefined control sequence" means you misspelled a command. "Missing $ inserted" means you forgot math mode. There's a 1:1 relationship between the message and the fix.
TikZ errors don't work this way. The error propagates through layers of PGF internals before surfacing, so by the time you see the message, you're looking at the wrong line number pointing at the wrong part of your code.
Common TikZ error traps that cost me hours over the years:
1. Library fragmentation
TikZ features are split across dozens of libraries: shapes.geometric, shapes.misc, shapes.symbols, arrows.meta, calc, positioning, fit, backgrounds... The default installation gives you almost nothing. Every time you use a new shape or feature, you need the right library, and there's no autocomplete telling you which one.
% Need diamond? That's shapes.geometric
% Need cloud? That's shapes.symbols
% Need rounded rectangle? That's shapes.misc
% Need to do math in coordinates? That's calc
\usetikzlibrary{shapes.geometric, shapes.misc, shapes.symbols, calc, positioning}
You only learn this by hitting errors and reading the manual. Or spending 20 minutes on a StackOverflow search.
2. LuaLaTeX-only libraries
graphdrawing, force, layered — these only work with LuaLaTeX. If you're using pdfLaTeX (which most people do by default), they fail silently or with a confusing error message. Switching to LuaLaTeX means re-checking whether all your other packages are compatible.
3. Package option conflicts
TikZ depends on xcolor. Beamer also loads xcolor. If the options conflict, you get:
! LaTeX Error: Option clash for package xcolor.
The fix is to load xcolor explicitly with the right options before tikz, but figuring out which options are clashing requires reading both packages' source code or getting lucky on a forum.
4. Externalization path issues
If you use PGFPlots with external data files, the path resolution depends on where LaTeX thinks the working directory is — which depends on your editor, your build system configuration, and your project structure. Move one folder and nothing works.
The Standard Approach and Its Limits
For years, my workflow was: get an error → copy the relevant part of the log → paste into ChatGPT → read the explanation → manually apply the suggested fix → compile again → repeat.
This works, but it has friction. You have to:
- Know which part of the log is actually relevant
- Provide enough context about your project (what packages you're using, what your file structure looks like)
- Manually apply the fix
- Hope the AI's suggestion doesn't break something else in your project it doesn't know about
What TeX64 Does Differently
TeX64 is a local-first LaTeX editor for macOS. All compilation runs on your machine — no cloud, no internet required. It includes an AI assistant called Axiom that's specifically built for LaTeX, and it handles the TikZ error situation fundamentally differently.
Axiom reads your compile log automatically. You don't paste anything. You compile, the error appears, you switch to the Axiom panel and say "fix this error." Axiom already has the log.
Axiom knows your entire project. It has access to all your .tex files, your preamble, your build configuration. When I got the xcolor conflict error, Axiom knew I was using Beamer (I hadn't told it anything) and responded: "The conflict is between Beamer's xcolor options and TikZ's. Load xcolor explicitly before both packages with the dvipsnames option."
Axiom shows diffs, not just explanations. Instead of getting an explanation you have to manually implement, you get a before/after diff. One click applies it. Axiom never modifies files without showing you what it's about to do.
Here's how it looked for my rounded rectangle problem:
- \usetikzlibrary{arrows.meta}
+ \usetikzlibrary{arrows.meta, shapes.geometric, shapes.misc}
Applied, recompiled, it worked. The three hours I'd already spent staring at the same error felt absurd in retrospect.
Other Ways This Helped My Workflow
Once I started using TeX64 more seriously, Axiom helped in situations I hadn't anticipated.
arXiv citation lookup. I'll tell Axiom "add a citation for [paper title]" and it searches arXiv, finds the paper, and inserts the BibTeX entry. My bibliography workflow went from "open browser, find paper, copy BibTeX, paste into bib file" to "describe the paper in one sentence."
Generating TikZ code from descriptions. I described a flowchart I wanted ("three boxes connected by arrows with a decision diamond in the middle") and Axiom generated working TikZ code. Not always perfect, but it gives you something to edit rather than starting from a blank screen.
Log-first error diagnosis. For errors that aren't TikZ-specific — undefined reference, missing endcsname, etc. — Axiom spots patterns across the whole log that you'd miss reading line by line.
Honest Limitations
TeX64 is macOS-only. If you're on Windows or Linux, this isn't an option (yet).
You need a working TeX distribution. MacTeX is the standard — it's about 4GB and takes a bit to install, but TeX64's environment diagnostics will guide you through it if you haven't set it up.
The AI features have usage limits on the free tier. Heavy Axiom use (multiple projects, lots of back-and-forth) may require a paid plan.
Real-time collaboration isn't built in. If you're co-writing a paper with several people simultaneously, Overleaf is still the better choice. TeX64 is for the solo-writing workflow.
Is It Worth Switching From Overleaf?
If you're collaborating with multiple people in real-time: maybe not. Overleaf's killer feature is the shared real-time editing, and TeX64 doesn't replicate that.
If you mostly write alone (which is most thesis writers, most of the time): local LaTeX has real advantages. No compile minute limits. No internet dependency. Faster compilation. My 150-page thesis document compiles in under 10 seconds on an M2 MacBook Air. On Overleaf's free tier, that same document would time out.
The Axiom integration is what tips it over for me. TikZ errors are just one example — having an AI that understands your whole project and proposes specific diffs is meaningfully different from pasting logs into a chat interface.
Getting Started
If you want to try it: tex64.com. Free tier is available. You'll need MacTeX installed — TeX64's environment diagnostics will walk you through it if you're starting from scratch.
For TikZ-heavy documents especially, I'd say the time savings from Axiom alone justify the setup time. I've lost days over the years to TikZ compilation errors that Axiom would have fixed in 30 seconds. That math doesn't take long to work out.
Top comments (0)