{"id":26188040,"url":"https://github.com/dceluis/libre_agent","last_synced_at":"2025-07-03T13:33:29.050Z","repository":{"id":275251710,"uuid":"911406257","full_name":"dceluis/libre_agent","owner":"dceluis","description":"Autonomous Reasoning Agent","archived":false,"fork":false,"pushed_at":"2025-02-19T15:55:34.000Z","size":515,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-19T16:41:53.786Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dceluis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-03T00:12:16.000Z","updated_at":"2025-02-19T15:55:38.000Z","dependencies_parsed_at":"2025-02-01T07:18:43.263Z","dependency_job_id":"c9849078-8418-4468-8e01-968ff4dabea6","html_url":"https://github.com/dceluis/libre_agent","commit_stats":null,"previous_names":["dceluis/libre_agent"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dceluis%2Flibre_agent","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dceluis%2Flibre_agent/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dceluis%2Flibre_agent/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dceluis%2Flibre_agent/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dceluis","download_url":"https://codeload.github.com/dceluis/libre_agent/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243130959,"owners_count":20241177,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-11T23:56:04.931Z","updated_at":"2025-03-11T23:56:05.466Z","avatar_url":"https://github.com/dceluis.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LibreAgent\n\nLibreAgent is a cognitive architecture for a pseudo-personal assistant that maintains a sense of \"self\" and \"goals\" over time. It loads various \"units\" (modules) that perform different functions such as chatting, reflecting on goals, and shaping its personality. LibreAgent uses a memory graph to store and retrieve contextual information, reflecting on recent conversations, recalling relevant memories, and producing responses that align with specified personality traits and system goals.\n\n## Installation\n\n1. **Clone the Repository:**\n\n    ```bash\n    git clone https://github.com/dceluis/libre_agent.git\n    cd libre_agent\n    ```\n\n2. **Create a Virtual Environment (Optional but Recommended):**\n\n    It's good practice to use a virtual environment to manage dependencies.\n\n    ```bash\n    python3 -m venv venv\n    source venv/bin/activate  # On Windows: venv\\Scripts\\activate\n    ```\n3. **Install dependencies:**\n\n    ```bash\n    pip install --upgrade pip\n    pip install -r requirements.txt\n    ```\n\n4. **Set Environment Variables:**\n\n    Create a .env file in the root directory or set environment variables as needed, especially for API keys.\n\n    ```bash\n    touch .env\n    ```\n\n    Add your environment variables to the .env file:\n\n    ```env\n    GEMINI_API_KEY=your_api_key_here\n    ```\n\n## Usage\nLibreAgent initializes various units and tools, sets up memory management, and starts listening for user input. It schedules periodic tasks to maintain and update its core memory and personality traits.\n\nTo run LibreAgent, use the following command:\n\n```bash\npython main.py\n```\n\nCommand-Line Arguments:\n * --deep-schedule: Interval in minutes for deep reflections (default: 10).\n * --print-internals: If set, internal memories will be printed to the console.\n\nExample:\n\n```bash\npython main.py --deep-schedule=4 --print-internals\n```\n\nThis command schedules deep reflections every 4 minutes and quick reflections every 2 minutes while printing internal memories.\n\n## Deploying the Telegram Bot\n\nLibreAgent includes a Telegram bot interface, which allows you to interact with the assistant via Telegram. Follow these steps to deploy the Telegram bot:\n\n1. **Set Environment Variables:**\n\n   Ensure you have a valid Telegram bot token and Gemini API key. Create or update your `.env` file in the project root with the following entries:\n\n   ```env\n   GEMINI_API_KEY=your_gemini_api_key_here\n   TELEGRAM_BOT_TOKEN=your_telegram_bot_token_here\n   ```\n\n2. **Run Using Docker Compose:**\n\n   You can deploy the Telegram bot along with the Phoenix service using Docker Compose. From the project root, run:\n\n   ```bash\n   docker-compose up --build\n   ```\n\n   This command builds and starts both the Telegram bot and the Phoenix service as defined in the `docker-compose.yml` file.\n\n3. **Verification:**\n\n   Once the container is running, send a message to your Telegram bot (using the bot username provided by BotFather) to verify that it is operational.\n\nYou are now ready to use LibreAgent's Telegram bot interface for interacting with the assistant.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdceluis%2Flibre_agent","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdceluis%2Flibre_agent","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdceluis%2Flibre_agent/lists"}