Monothink - A totally non-agentic coding assistant
Monothink is a totally unagentic coding assistant. That is, it does not support the writing and modification of source code. It is limited to reading tools only. It primary purpose is to better understand these tools and the models behind it and to evaluate alternative workflows.
So, if you are looking for a tool to let LLMs produce a lot of code for you, this one is not for you. Monothink was mainly build to gain insights and support the technical arguments in endless discussions on the nature and capabilities of LLMs.
Also, do not expect much development here. It has served me well and still does. But LLMs are not my main hobby. In the end I had most fun writing the TUI than interacting with LLMs.
✨ Features
- none: This section will be filled when monothink is more than an idea and a chatbot. It continues my tradition of creating dummy GUIs. Luckily, this is a TUI so I don't repeat myself. Anyway, Yak Shaving is awesome!
🎯 Goals
Better understand LLMs and the tools exposing them to the user
Monothink is designed to better understand which input and output patterns are trained into language models and to what part the illusion of intelligence is due to the harness and not the model itself.
This shall and already did help in the seemingly endless discussion on the perceived intelligence and expected possibilities of these tools.
Evaluate alternative workflows
Another goal is to figure out if other workflows other than offloading the central work of understanding and problem and turning it into a maintainable solution logic to a stochastic parrot are possible.
Nowadays everyone seems to surrender to agentic coding. I do not enjoy watching these tools helplessly trying to generate some disgusting code and breaking some working code on the way or replace clean code with unmaintainable mess. Worse, they increase cognitive depth and distance us from the code base. As the code is the shared artifact in a team or community, this makes collaboration difficult if not impossible.
Yet, these stochastical models can be quite useful tools, if used with care. This is my try to make reasonable use of these models.
📦 Tech Stack
- ratatui an awesome TUI framework (requires nerd fonts for full awesomeness in my case)
- Rust an absolutly awesome programming language.
- rig: seamlingly the default crate to access LLM providers.
🚀 Getting Started
Please don't. This is just for learning and fun (learning should be fun) I don't know what is coming out of it
🐛 Reporting Issues
You are free to open and issue. However, I cannot promise to response. Coding assistant are not my main hobby and thus, this project is low priority.
📄 License
Monothing is free and open source under the GPLv3.
❤️ Acknowledgements
Thanks to the ratatui community, Rustaceans, and the open‑source developers whose tools made this project possible. Btw, ratatui has a great documentation.