Remix.run Logo
miroljub 2 hours ago

Looking for a resource (MCP, CLI, Skill, ...) that would improve Zig support in LLMs.

Currently, doing something with Zig as a target language would spend many more tokens and produce subpar results.

anonfunction an hour ago | parent | next [-]

One of the preeminent Zig software projects, Tigerbeetle[1], has a great website[2] and markdown file[3] for what they call TigerStyle.

It's honestly a great read as a human but also I packaged it as a skill and saw coding agent improvement, especially around memory usage.

1. https://tigerbeetle.com/

2. https://tigerstyle.dev/

3. https://github.com/tigerbeetle/tigerbeetle/blob/main/docs/TI...

all2 an hour ago | parent | prev | next [-]

Best bet is tight integration with a language server and the zig docs as MD locally. You may also pull in the zig source code as canonical reference for best practices.

From there you can derive a set of tools and references that you can build skills on.

Any LLM can scratch together an MCP server, its basically FastAPI + functionality. Your goal, then, is to identify the subset of tools and data required to get 'good' output.

If you want to test your MCP server implementation, grab the source of several popular zig projects, rewind their git history, and have your LLM of choice attempt to address PRs for issues on those repos. Compare LLM solutions with the repo solutions, grade on token spend, LOC produced, variance from Zig best practices, and so on.

brodo 43 minutes ago | parent | prev | next [-]

Wrapping this [1] in a skill will help a lot: Also add this [2] and `zig fmt` to your buid.zig.

[1]: https://github.com/rockorager/zigdoc [2]: https://github.com/rockorager/ziglint

voidUpdate 2 hours ago | parent | prev [-]

If you worked through this and learnt to use zig, your token usage would be even lower!

short_sells_poo 2 hours ago | parent | next [-]

Don't be ridiculous. Learning? That's for the dinosaurs. Just throw an llm at the problem!

all2 an hour ago | parent [-]

Both is good. I do both, and to get reasonable output from an LLM I _have_ to do both.

miroljub an hour ago | parent | prev [-]

What's wrong with learning by reviewing the LLM generated code and asking questions interactively? Works for other languages.