From cf0c81e569d76e71ac12b6f8dbc310c363648eeb Mon Sep 17 00:00:00 2001 From: bucolucas Date: Sun, 18 Aug 2024 16:54:28 -0500 Subject: [PATCH] Add README.md with information about daemon and apprentice bot system --- README.md | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/README.md b/README.md index e69de29..013fb2a 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,76 @@ +# Telegram Inference Bot with Daemon and Apprentice System + +This project implements a Telegram bot system with two instances: a daemon bot and an apprentice bot. The daemon bot handles the main workload, while the apprentice bot can be updated and take over when needed. + +## Features + +- Daemon bot for handling main workload +- Apprentice bot for updates and handovers +- Automatic updates for the apprentice bot when new pull requests are merged +- Inter-bot communication +- Support for both OpenAI and Anthropic AI models +- Tool integration for extended functionality + +## Setup + +1. Clone the repository: + ``` + git clone https://github.com/your_username/your_repo_name.git + cd your_repo_name + ``` + +2. Install the required dependencies: + ``` + pip install -r requirements.txt + ``` + +3. Copy the `.env.example` file to `.env` and fill in your actual values: + ``` + cp .env.example .env + ``` + +4. Edit the `.env` file with your specific tokens and settings. + +5. Run the bot: + ``` + python telegram_inference_bot.py + ``` + +## Environment Variables + +Make sure to set the following environment variables in your `.env` file: + +- `TELEGRAM_BOT_TOKEN`: Token for the daemon bot +- `TELEGRAM_APPRENTICE_BOT_TOKEN`: Token for the apprentice bot +- `OPENAI_API_KEY`: Your OpenAI API key +- `ANTHROPIC_API_KEY`: Your Anthropic API key +- `GITHUB_REPO_OWNER`: Your GitHub username or organization +- `GITHUB_REPO_NAME`: Your repository name +- `GITHUB_ACCESS_TOKEN`: Your GitHub personal access token +- `DAEMON_CHAT_ID`: Chat ID for the daemon bot +- `APPRENTICE_CHAT_ID`: Chat ID for the apprentice bot + +## Usage + +- Start the bot by running `python telegram_inference_bot.py` +- Use `/start` to begin interacting with either bot +- Use `/handover` in the daemon bot to initiate a handover to the apprentice bot +- The apprentice bot will automatically check for updates every 15 minutes + +## Commands + +- `/start`: Start interacting with the bot +- `/clear`: Clear conversation history +- `/switch`: Switch between GPT models (GPT-4 and GPT-4 Mini) +- `/toggle`: Toggle between OpenAI and Anthropic providers +- `/status`: Check the current model and provider +- `/handover`: (Daemon bot only) Initiate handover to apprentice bot +- `/update`: (Apprentice bot only) Manually trigger an update + +## Contributing + +Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests. + +## License + +This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details. \ No newline at end of file