echo-agent  by fuyuxiang

Self-hosted AI agent with cognitive memory and self-evolution

Created 3 months ago
619 stars

Top 52.5% on SourcePulse

GitHubView on GitHub
Project Summary

Echo Agent is a self-hosted AI agent operating system designed for private deployment, addressing the limitations of stateless, one-off AI interactions. It provides a persistent, continuously learning agent team capable of remembering past conversations, user preferences, and task experiences across sessions. This enables agents to work long-term, improve their skills based on real-world usage, and integrate seamlessly across various communication channels and tools with unified state and auditable execution histories.

How It Works

Echo Agent employs a sophisticated cognitive memory system with a four-layer architecture (Working, Episodic, Semantic, Archival), incorporating memory decay, importance reordering, and conflict detection. Its core novelty lies in a self-evolution pipeline that records execution trajectories, generates candidate skill improvements, and rigorously evaluates them against a benchmark set before promotion, preventing skill degradation. This is integrated into a unified Agent Loop that processes events from multiple input channels (CLI, Gateway, Webhooks, 12 message platforms) via a message bus, ensuring consistent state and permissions.

Quick Start & Requirements

  • Primary install: Clone the repository, set up a Python 3.11+ virtual environment (uv recommended), and install dependencies with uv pip install -e ".[all]". For China, use uv pip install -e ".[all]" -i https://mirrors.aliyun.com/pypi/simple/.
  • Prerequisites: Python 3.11+, Linux/macOS/WSL2, and at least one model provider API key (e.g., OpenAI).
  • Run: Set the API key environment variable (e.g., export OPENAI_API_KEY="sk-..."), run echo-agent setup -w ., then echo-agent run -w ..
  • Links: English documentation is available via README.en.md.

Highlighted Details

  • Cognitive Memory: Four-layer architecture with decay, conflict detection, and importance reordering.
  • Self-Evolution: Trajectory recording, candidate generation, and benchmark-validated promotion pipeline to continuously refine skills.
  • Unified Multi-Channel Support: Integrates 12 message channels (CLI, Gateway, Webhooks, Cron, Telegram, Discord, Slack, WhatsApp, Email, Matrix, WeChat, QQ, Feishu, DingTalk, WeCom) via a message bus.
  • Hybrid Retrieval: Fuses BM25 keyword recall with FAISS vector recall, adaptively weighting results based on query characteristics.

Maintenance & Community

  • Community: GitHub Discussions for design and usage, QQ group: 47572014.
  • Contribution: Bug reports and feature requests via GitHub Issues. Security issues should be reported privately using the security template.
  • Roadmap: Discussed within GitHub Discussions.

Licensing & Compatibility

  • License: MIT License.
  • Compatibility: No explicit restrictions for commercial use or closed-source linking are mentioned, consistent with the MIT license.

Limitations & Caveats

The project focuses on enabling long-term, learning agents, implying it moves beyond the limitations of stateless Q&A systems. The self-evolution mechanism requires a benchmark evaluation set for skill promotion, which may necessitate user configuration. High-risk tool execution defaults to a deny policy, requiring careful setup for unattended operation.

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
10
Issues (30d)
0
Star History
270 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.