container-based autonomous agent framework
Project description
🤖 Microbots
MicroBots is a lightweight, extensible AI agent for code comprehension and controlled file edits. It integrates cleanly into automation pipelines, mounting a target directory with explicit read-only or read/write modes so LLMs can safely inspect, refactor, or generate files with least‑privilege access.
from microbots import WritingBot
myWritingBot = WritingBot(
model="azure-openai/my-gpt5", # model format : <provider/deployment_model_name>
folder_to_mount=str("myReactApp"),
)
data = myWritingBot.run("""when doing npm run build, I get an error.
Fix the error and make sure the build is successful.""", timeout_in_seconds=600)
print(data.results)
🚀 How to install
Pre-requisites
- Docker
- AI LLM Provider and API Key
Install Microbots
pip install microbots
✨LLM Support
Azure OpenAI Models - Add the below environment variables in a .env file in the root of your application
AZURE_OPENAI_ENDPOINT=XXXXXXXXXXXXXXXXXXXXXXXXXX
AZURE_OPENAI_API_KEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
AZURE_OPENAI_API_VERSION=2025-03-01-preview
🤖 Bots & Usage Examples
Pre-requisite for the below example code of Bots:
From the root of your application, Create a folder called code inside which clone the repo https://github.com/swe-agent/test-repo/. Now run the code
📖 ReadingBot
from microbots import ReadingBot
myBot = ReadingBot(
model="azure-openai/my-gpt5",
folder_to_mount="code"
)
runResult = myBot.run("When I am running missing_colon.py I am getting SyntaxError: invalid syntax. Find the error and explain me what is the error", timeout_in_seconds=600)
print(runResult)
The ReadingBot will read the files inside code folder and will extract information based on specific instructions given to the bot.
✍️ WritingBot
Pre-requisite for the example code:
From the root the application, Create a folder called code inside which clone the repo https://github.com/swe-agent/test-repo/. Now run the code
from microbots import WritingBot
myBot = WritingBot(
model="azure-openai/my-gpt5",
folder_to_mount="code"
)
myBot.run("When I am running missing_colon.py I am getting SyntaxError: invalid syntax. Fix the error and make sure the code runs without any errors.", timeout_in_seconds=600)
The WritingBot will read and write the files inside code folder based on specific instructions given to the bot.
⚙️ How it works
The MicroBots create a containerized environment and mount the specified directory with restricting the permissions to read-only or read/write based on Bot used. It ensures that the AI agents operate within defined boundaries which enhances security and control over code modifications as well as protecting the local environment.
#Legal Notice
Trademarks This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft’s Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party’s policies.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file microbots-0.0.18.tar.gz.
File metadata
- Download URL: microbots-0.0.18.tar.gz
- Upload date:
- Size: 1.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dadf7cfee0306511ff655adcc9d0db151917c5c4c270f9bfc3450c9d29cd8906
|
|
| MD5 |
ce1a75d80f802ea15b0ec29f1abb30db
|
|
| BLAKE2b-256 |
da2067ef3cf1a91cbf645130b99135bad4b7aff5159ad9ae9a2f812f23d33c2a
|
File details
Details for the file microbots-0.0.18-py3-none-any.whl.
File metadata
- Download URL: microbots-0.0.18-py3-none-any.whl
- Upload date:
- Size: 74.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a81a33a06a94cafa62a2ea956b973bf3cdc702a8a352082f9a52f471de68fa60
|
|
| MD5 |
0f1d8e296308f4760740926d082b3df9
|
|
| BLAKE2b-256 |
51106dcdb433ba081a081c2b7379e6a71556dd1ae79ba1b5173a844443693170
|