The Agentic Loop
CodeBot is not a simple AI chat, as you might have with ChatGPT. CodeBot is an agentic environment and implements an agentic loop. What does this mean?
CodeBot has access to tools, which let it perform actions on its own (read a file, write a file, compile the project, etc.) It can then make decisions based on their results or output. This means that you are interacting with an intelligent entity that is able to do things.
This is an agent.
The agentic loop is that unlike a chat, which ends after a reply, an agent can continue work: it may read a file, write some text out in the chat for you, and then do something else. It may change its plans based on what it understands. The loop is that an agent thinks, takes one or more actions, and uses those results to think again.
In the image to the right, CodeBot has been given the (very simple!) task of fixing any compiler errors. We haven't even specified if there are any. It:
- Checks its current work plan to see what it's doing
- Compiles the project
- That does indeed show errors, so it decided to read the unit at that line, and also to compare the unit and form declarations
- It did so, and... (this continued offscreen; it solved the error and stopped once the project built without any compiler errors.)
In other words, there is a goal, and it can reason its way through it, and use information it discovers along the way (here, compiler output) to help decide what to do next.
CodeBot will continue to think and act until it believes it has achieved what it needs to. That may be short work: implement a small task, answer a question, fix a compile error; it may be long-running, such as implementing a complex requirement affecting multiple parts of your code, where it needs to work and iterate for long periods of time.
Agentic architecture
In fact, CodeBot is built of multiple agents, each of which share memory and identity but are each good at specific things. For example, one agent is really good at reviewing code; another at researching and answering questions.
When you ask CodeBot to write code, it switches to the version of itself that is best at writing code. There is one memory and one identity to CodeBot, with various specialisations. If answering a question, which is handled by a specialised agent, that agent knows that 'itself' previously wrote code for you even though that was done by a coding version: they are all aspects of the same identity and memory.
Define Your Own Agents
CodeBot comes with a wide range of dedicated specialities, ie agents, including coding, code reviewing, planning, answering questions, and more.
You can define your own agents that are added to CodeBot and share its identity, and invoke them on command.
Autopilot
CodeBot has a dedicated and unusual mode you can take advantage of that builds on agentic loops to allow trusted, long-term working on a problem. Read more about Autopilot mode.