| Oh no! Please don't do this. This is one of those tarpit ideas in the "AI" space. > do not even need to know all the data to perform operations on it or make decisions If I know code-generation is going to be possible without any contextual information, I might as well generate the code using copilot or Curor and commit my code. Why do I need a runtime agent to do it? What if the control flow has to change based on a result it receives? What if the plan up front is wrong and needs to change halfway? Do I run the entire thing again with a new plan? What if my tools are not idempotent? What if it generates a recursive loop? Also, if I really want to do this, and if my tools are safe, why don't I just do a raw Open AI / Claude call and get deno subhosting [1] or E2B [2] to run it? [1] https://deno.com/subhosting [2] https://e2b.dev/ |
Code is just a representation of the agent execution flow, different than static workflows like in Glide, or typical ping-pong type of re-act agent in any other framework.
It's not meant to replace your application logic, but serve as a dynamic plan the LLM is generating to complete your ad-hoc task, so there is a little sense of committing it to repo.
In your app code, control flow also changes based on data using `if` statements. And you don't need to know the data to write your code, right? LLM can handle those as well.
We are working on making the execution more dynamic, possibly allowing code to be generated and executed progressively when data arrives and new prompts are given.
Tools will indeed need to be written as idempotent, especially for the interactivity and human in the loop mechanism we are working on.
Detecting recursive loops and other issues is a technical and solvable problem, we'll get to those as well.
Running code in deno or e2b, you cannot pause it to wait for human interaction for a day, then resume it, so it won't really help with interactive agents doing really long running operations and interacting with real world.