Observed since 21 Oct, 08:55 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
+ Searching for openagent? You are in the right repo. It's now dotagent.(.🤖) +
Hey there, Friend! This project is still in the "just for friends" stage. If you want to see what we're messing with and have some thoughts, take a look at the code.
We'd love to incorporate your ideas or contributions. You can drop me a line at- ✉️ anurag@dotagent.ai
We have a dream: Open and democratic AGI , free from blackbox censorship and control imposed by private corporations under the disguise of alignment. We once had this with the web but lost this liberty to the corporate giants of the mobile era, whose duopoly has imposed a fixed 30% tax on all developers.
Our moonshot : A network of domain specific AI agents , collaborating so seamlessly that it feels like AGI. Contribute to democratizing the LAST technological frontier.

dotagent is a library of modular components and an orchestration framework. Inspired by a microservices approach, it gives developers all the components they need to build robust, stable & reliable AI applications and experimental autonomous agents.
The philosophy is to handle more processing at compile time and maintain better session with LLMs.

pip install dotagent
If you encounter an error like:
Your system has an unsupported version of sqlite3. Chroma requires sqlite3 >= 3.35.0.
This is a very common issue with Chroma DB. You can find instructions to resolve this in the Chroma DB tutorial.
import dotagent.compiler as compiler
from dotagent.compiler._program import Log
from dotagent import memory
import chainlit as ui
from dotenv import load_dotenv
load_dotenv()
@ui.on_chat_start
def start_chat():
compiler.llm = compiler.llms.OpenAI(model="gpt-3.5-turbo")
class ChatLog(Log):
def append(self, entry):
super().append(entry)
print(entry)
is_end = entry["type"] == "end"
is_assistant = entry["name"] == "assistant"
if is_end and is_assistant:
ui.run_sync(ui.Message(content=entry["new_prefix"]).send())
memory = memory.SimpleMemory()
@ui.on_message
async def main(message: str):
program = compiler(
"""
{{#system~}}
You are a helpful assistant
{{~/system}}
{{~#geneach 'conversation' stop=False}}
{{#user~}}
{{set 'this.user_text' (await 'user_text') hidden=False}}
{{~/user}}
{{#assistant~}}
{{gen 'this.ai_text' temperature=0 max_tokens=300}}
{{~/assistant}}
{{~/geneach}}""", memory = memory
)
program(user_text=message, log=ChatLog())
The UI will look something like this:

Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.0 | 29 Sept 2023 | 86 |
This describes our collected data; it is not a security assessment.
Observed since 21 Oct, 08:55 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:d08ede369445a51933f0cf456a7673dc2eda091e127845972bd9a8f9dce1b28b