Design Principles
Isolation
- Donews don’t need to know about each other’s inner workings.
- They don’t taint each other’s state or prompts.
- They can be run in parallel and information is collected and combined once available. (tbd)
- Donews can easily be tested on their own.
- This makes debugging and testing much easier and protects your sanity.
Natural Design Language
- We deliberately chose terms that separate known coding concepts and “agentic”(you will hear us saying this only once. and it is here) concepts.
- You define a donew task by providing the following concepts:
- realm the provision pool that the overseeing donew can use to accomplish the task (e.g. “web browsing”, “reading documentation” etc)
- envision a defined structured outcome. (e.g. a pydantic model or a looser structured outcome)
- enact starts the task (e.g. “find the best pizza in SF”).
- realm and envision are optional, enact is required.
Batteries Included
- We provide battle tested pre-built realms for common tasks.
- We partner with the best in class libraries such as mcp.run to provide powerful integrations.
- We have a built in LLM tracing system that allows you to understand the inner workings of the provision pool.
Extensible and Composable
- Donew is designed to be extendable.
- You can define your own realms, envisionments and enactments.
- You can use the donew SDK to build your own integrations.
- Putting donew tasks into the realm of another donew task allows you to compose complex workflows.
Reproducible
- We are working hard to build a chrystalization module that will allow you to take any task and break it down into a set of discrete steps.
- Meaning once the donews have successfully completed a task, the steps can be used to reproduce the same outcome with varying inputs.
- In the background all of our donews write code to accomplish any task.
- This allows us to bridge the gap between autonomous problem solving and creating reusable code.