[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Claude code analyzed the donut script from a while back 44 frames per second to 100 frames per second
[Thread Prev] | [Thread Next]
- Subject: Re: Claude code analyzed the donut script from a while back 44 frames per second to 100 frames per second
- From: brian <brian@xxxxxxxxxxxxxxxx>
- Date: Wed, 04 Nov 2026 22:26:30 -0800
- To: user@xxxxxxxxxxxxxxxxxxxxxx
Hi, I am using claud code in my gambas project directory. It is able to fix code, and execute regression testing on the project after each change. It knew how to use gbx3, gbr3 and gbs3 to build/execute projects, after applying changes to code. It has not yet got a single syntax error. I have not had to do any training. It just knows gambas3 syntax. How to build it and execute it , test the resulting build. Creates Test scripts and plugins, libraries etc. It creates copies of the project for testing and then applies changes to the code. Asks if I want it to do the commit. Lists bugs with number indexes let's me choose what to fix, and how to fix if I don't like its way of fixing something. It keeps the project md document in sync with any changes. And the project wiki. Then after I do a build and install it reruns all regression testing on the new build before continuing... I am somewhat impressed. It even creates virtual terminals to test command output. On November 4, 2026 3:47:51 PM PST, "olivier.cruilles" <olivier.cruilles@xxxxxxxx> wrote: >Hello everyone,Here is a small experience report on using AI, and more specifically Gambas here.## ContextBefore I start describing my use of AI with Gambas, here is a brief description of my computer setup for using AI.Most of the time, I use a local AI (LLM model) hosted on a MacBook M4 Pro with 48GB RAM, running an LLM model like Qwen3.8-27B or Qwen3.6-35B-A3B (~35->50 token/s for Qwen3.8-27B depending on the type of requests, ~60-100 token/s for Qwen3.6-35B-A3B).You can use whatever LLM models you want, but it is with these two models that I get the best performance and relevance of results.## DescriptionTo develop, code, and work with my local AI, I use the VS Code editor with the 'Cline' extension.For the analogy: LLM Model = Brain + AI Agent (here Cline) = the arms and legs (here editing files, creating/deleting files, running commands, etc.)On Linux: VS Code IDE -> Cline agent -----> local network -----> MacBook M4 --> LM Studio --> Qwen3.8/Qwen3.6 LLMUp to this point, everything works correctly and I can ask my local AI to create Gambas code. But here's the thing: virtually all AI models, whether local or professional (e.g., ChatGPT or Claude) don't have much knowledge about the Gambas language, so in the end you end up with a mix of VB.Net, Python, JavaScript and other code, instead of real Gambas code, and nothing works.So I asked myself the question: How can I make my AI + Cline Agent smarter?Answer: Connect an MCP RAG service to my Cline Agent to provide all the Gambas language knowledge that my AI is missing.An MCP service is a program or web service that an agent can connect to in order to use Tools (features).Here, the MCP RAG is a type of MCP service consisting mainly of a database that my AI can consult at will whenever it needs to, but also tools to help my AI better use Gambas and its peculiarities.The MCP RAG was completely coded from scratch in Golang (because it is performant and well known to AIs).MCP RAG Architecture: Golang -> SQLite3 + FTS5So to summarize:On Linux: VS Code IDE -> Cline agent -----> local network -----> MacBook M4 --> LM Studio --> Qwen3.8/Qwen3.6 LLM | +----> MCP RAG (database on the Gambas language + Tools) -> Static DB: Gambas documentation (~9000 Gambas documentation markdown files) -> Tool: List of Gambas Components -> Tool: Simple code examples classified by category -> Tool: How to compile, run, debug a Gambas project -> Tool: Create an empty Gambas project: CLI, Graphical, GUI GTK/QT, WEB CGI, WEB (gb.web.gui) -> Tool: Prompts: Develop a Gambas project, Audit a project, Write documentation, etc... -> Tool: Which component does this Gambas class belong to -> ... -> Total 53 Tools exposedAt this stage of my setup, my AI became much smarter and whenever it had a question, it only needed to refer to the Gambas documentation exposed by my MCP RAG or use one of the tools exposed by the RAG.After 1 or 2 months of all kinds of testing to verify the improvements of my AI for coding in Gambas, I realized that something was missing, and most importantly that my RAG's answers were not very relevant, so my AI was still making a lot of errors with Gambas code.At that point, wanting to improve my RAG, I asked a local AI to convert my Golang RAG into a RAG written in Gambas. The goal here was to understand the code and workings of my RAG and also give me the ability to fix or improve my RAG, which is impossible for me with the Golang language that I don't master.Once the RAG was converted to Gambas, a long series of tests followed to confirm that the Gambas RAG was equivalent to the Golang RAG in terms of relevance and performance, because with a local AI, it is slower.When the Gambas RAG was finally done and functional, that is the one I used in place of the Golang RAG.One of the main drawbacks of my RAG (Gambas or Golang) comes from the fact that searching Gambas documentation in the SQLite3 database is not 'semantic', meaning the search is based on exact words or specific phrases, and there is no way, by its nature, to understand a concept or an idea.For example, the AI must search for exactly 'gb.net' or 'socket' or 'Application.Path' because the RAG does not understand that 'connecting to a website' expresses the concept of 'web client' or 'HTTP client' or internet network connection --> so the answer would be: gb.curl, or gb.net.Here, in order not to modify my first RAG, I asked my local AI to code a new documentation search RAG that is '70% semantic + 30% static' so that my AI gets more relevant answers from the Gambas Documentation.This MCP RAG (which I will call the Semantic MCP RAG) is a bit different because it needs to be connected, itself, to a small LLM model specialized only in text (~500M)The first phase of using this semantic RAG consists of indexing all the markdown files of the Gambas documentation to transform them into Vectors thanks to the small LLM model, and finally storing the transformation of each token (array of floating-point numbers for each word or part of a word) in a SQLite3 database in raw BLOB form.The second phase consists of connecting the semantic RAG to the AI Agent to expose the semantic search tools for the previously indexed documents.So, whether for indexing documents in the semantic RAG or for its use connected to the AI Agent, it is necessary that the small LLM model is started and functional (essential), because the real intelligence is actually the small LLM model.From that point on, with my 2 RAGs connected, my local AI became much smarter at producing Gambas code. Much fewer hallucinations, foreign code (like VB.net, Python, etc.)Moreover, my AI started being able to create its own small Gambas *.gbs scripts to run its own tests.After another long series of tests to verify the improvements of my AI in handling Gambas code, a new weakness in my setup appeared.Indeed, even if at this stage my AI could produce relatively correct Gambas code (scripts, GUI applications, Web applications, CGI applications), since it is a local AI, it is much slower than a professional AI (ChatGPT, Claude, etc...) so on certain tasks it takes a lot of time, trial and error, before finally finding the right approach to a problem and implementing a working solution. The idea here was to find a way to memorize the details and the method of proceeding when a solution succeeded, in order to save time the next time the same problem arises.So I asked my AI to create a new MCP RAG (SQLite3 + FTS5) (called Memory RAG) to store trajectories in a SQLite3 database.In this context, a trajectory is the description of a solution to a problem, along with a relevance score for each trajectory based on the problem topic to solve. The AI itself takes care of only retaining the best trajectories for the problem it needs to solve.Example: How to compile a Gambas project? -> Brute force method: search in the documentation, read the answers, test the different compilation options (gbc3 -h), then finally test and try -> Memory RAG method: Search the trajectory 'compile a Gambas project' --> Answer: Trajectory X --> use 'gbc3 -apgt' At first, my semantic RAG was empty so not performant, but as I enriched it with new trajectories, it started being used more and more by my AI and especially to reuse solutions that work, thus producing even less bad Gambas code and avoining to re-invente the wheel every time.I would like to point out that these 3 MCP RAGs, in my case, are geared towards improving Gambas knowledge for an AI, but they can be used or modified for any other purposes.Imagine a local AI + MCP RAG containing all the private documentation of your law firm, fed by all legal files + court cases + law books, etc..., and well, you have just given all the necessary knowledge to your AI to process, create, modify, build documents, summarize meetings, summarize files, compare court cases... and the list is long... And all of this without any data leaving the law firm, of course.That is exactly what I do with my local setup.## ConclusionTo wrap up, as of today, in addition to producing or helping me code in Gambas (I remain very attached to coding manually in Gambas because I really enjoy it), I asked my local AI to take the majority of the current Gambas components and create a complete usage guide with working examples of each one.Time is not important here because it costs me nothing, and since I am local, no data is exposed on the Internet or to any American, Chinese, or other company.In the end, the necessary re-reading of each produced guide required some small corrections but allowed me to discover/re-discover many things or aspects of the Gambas language.On the other hand, it allowed me to appreciate the work done by Benoit on the Gambas language, but also by other contributors like Fabien for his gb.map, gb.scanner, and gb.report2 components, for example, and many others persons.I hope it will be interesting for someone.Please forgive me for this very long message or experience report.OlivierLe 4 novembre 2026, à 08:40, Jussi Lahtinen <jussi.lahtinen@xxxxxxxxx> a écrit: Well, let's take that Adobe suit that was totally rewritten for free with vibecoding. I'm not asking "is it as good", I never did it with OpenSource. I always asked if it's good enough. List hear it from someone who actually uses the original: https://www.youtube.com/watch?v=3PbdkXLnK74So, it's almost usable. Will it be usable with AI only for any time soon... Jussi ~~~Brian