fuyuxiang/echo-agent
fuyuxiang/echo-agent has 1,036 GitHub stars and 35 forks. GitHot measured +1 stars in 24 hours. Last checked 2026-11-09 11:48 UTC. Last push 2026-11-03.
面向长期运行与桌面协作的开源 AI Agent,提供常驻 Runtime、桌面 Agent、长期记忆与持续学习能力,可用于个人助理、自动化任务与本地工作流。
Measured star growth
- in 24h
- +1
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.en.md
OriginalGive your Agent memory. Turn experience into skills.
A source-available, self-hosted, embeddable Agent Runtime and a local-first desktop Agent.
Choose Your Starting Point
| Product | When to use it | Start here |
|---|---|---|
| Echo Agent Runtime | Build Agents that remember and learn from experience; run in a terminal, deploy a service, or integrate with your application | Install & deploy · Architecture & runtime modes |
| EchoAgent Desktop | Write code, work with documents, and operate browsers and desktop apps in a real workspace, with visible progress and changes | Install & use · Desktop capabilities |
Quick Start
Agent Runtime
You need Python 3.11+ and an API key for at least one model service. Run in your terminal:
pip install "echo-agent[all]"
echo-agent setup
echo-agent run
setup configures a model; run starts the full Runtime. In mainland China, append -i https://mirrors.aliyun.com/pypi/simple/ to the installation command if needed. The same commands work in Windows PowerShell; see the installation guide for dependencies and platform limitations.
Gateway and Dashboard
For web management, API access, or CLI/TUI clients, exit the run process above, then start Gateway:
echo-agent gateway
Open http://127.0.0.1:58123/ for Dashboard. Connect to the same Runtime from another terminal:
echo-agent cli --tui
Messaging channels, Webhooks, and scheduled jobs follow configuration. Normally run one full Runtime per workspace; cli connects to an existing Gateway without starting another engine. See runtime modes and the Dashboard guide.
Background service and source installation
On macOS or Linux with systemd, register Gateway as a user-level background service:
echo-agent gateway install
echo-agent gateway status
echo-agent gateway logs --follow
See background services for Linux service persistence after logout. Gateway listens on loopback by default; use SSH forwarding for remote access. See Gateway authentication for authentication settings.
For source deployments, download only echo-agent-runtime/ and run inside that directory:
bash scripts/install.sh --source .
Pure sources contain the full Dashboard project and require a frontend build. Runtime release archives include prebuilt assets and need no Node/pnpm on the server. The network installation script fetches a sparse checkout of the Runtime. See the Runtime installation instructions for methods, dependencies, and upgrades.
EchoAgent Desktop
See the Desktop quick start for installers, supported platforms, and source prerequisites. With this repository already checked out, macOS users can start from its root:
cd client
pnpm setup:mac
pnpm install --frozen-lockfile
pnpm tauri dev
The first launch prepares the embedded Runtime, Theia IDE, and Office Worker. Desktop starts independently and can use the project's built-in remote model service or your own connections. See the Desktop documentation for Windows instructions.
Long-Term Memory and Skill Evolution
Cognitive memory carries context across sessions; skill evolution makes execution experience reusable. These are the two paths in the Runtime:
Cognitive Memory
Remember user preferences and project facts across sessions, reducing repeated background explanations. Memory uses Working, Episodic, Semantic, and Archival tiers. BM25 and optional vector retrieval combine through RRF. Scope, provenance, and lifecycle eligibility determine what enters the current context; archived, superseded, and unresolved entries are excluded from normal recall.
Background consolidation after replies can extract summaries and facts, resolve contradictions, and apply decay and archival policies. See the memory system for implementation and configuration.
Self-Evolving Skills
Generate reusable skill candidates from execution trajectories and reflection, then route them to review or isolated evaluation according to risk and configuration. Only candidates that meet the promotion policy reach the live skill library. Rejections retain their reasons; promoted changes support manual rollback.
The evolution engine is disabled by default and must be enabled in configuration. Once enabled, it supports manual, trajectory-threshold, and scheduled triggers. It updates skill content and enabled state; see evolution and evaluation for the full process.
Architecture and Runtime Modes
Desktop and standalone Runtime follow the same Agent method but currently use different execution engines. Python Runtime provides terminal, Gateway, channels, memory, and skill evolution. Desktop embeds a Rust engine for workspaces, IDE, and automation. Each manages its own models, sessions, and memory and works independently.
Main Operating Modes
| Mode | Entry point | Where execution runs |
|---|---|---|
| Local runtime | echo-agent run |
This Runtime process; Gateway is enabled according to configuration |
| Gateway service | echo-agent gateway |
This Runtime process, exposing Dashboard and HTTP/WebSocket APIs |
| Desktop application | EchoAgent Desktop | In-process Rust engine communicating with the host over ACP channels |
Expand the Runtime execution architecture
Runtime composes models, storage, execution, channels, scheduling, and optional Gateway, and coordinates startup and shutdown. Input events enter the task loop; tools follow admission and approval policies; results return through the entry point. See the architecture overview.
Runtime Capabilities
| Capability | Purpose |
|---|---|
| Agent Loop and tasks | Coordinate inference, tool calls, execution feedback, task state, and planning |
| Models and routing | Connect model services and configure routing and fallback |
| Memory and knowledge | Recall eligible memories, retrieve knowledge, and assemble task context |
| Tools and MCP | Execute local tools and connect external tool services |
| Skills and Plugins | Load reusable skills and extend runtime behavior |
| Automation and channels | Trigger tasks through scheduled jobs, Webhooks, and configured messaging channels |
| Permissions and observability | Govern tool admission and approval; record logs, trajectories, usage, and execution state |
EchoAgent Desktop
Put your Agent to work in your workspace. Desktop uses React, Tauri, and an in-process Rust Agent engine to show plans, tool activity, file changes, and deliverables in one application.
| Scenario | Desktop capabilities |
|---|---|
| Coding | Eclipse Theia IDE, Coding Agent, diff review, verification, and delivery |
| Browser and desktop control | Task-isolated Browser Use; explicit Computer Use tasks with pause and resume |
| Documents and knowledge | Project files, knowledge indexing, memory, and Word, PDF, Excel, and PowerPoint document workflows |
| Models and collaboration | Model connections, MCP, Skills, Plugins, experts, and expert groups |
| Ongoing work | Projects and tasks, scheduled automations, and optional WeChat remote sessions |
Browser side effects and desktop tasks use different confirmation flows. Computer Use executes continuously within an authorized task; platform permissions still apply. See the Desktop README, architecture and data flow, and automation platform support for implementation details and real-device validation scope.
Extensions and Integration
Bring Agent capabilities into your application through a service connection or source-level embedding:
- Connect to Gateway: Submit tasks and receive events through the HTTP / WebSocket API. The Runtime service owns models, memory, and execution state.
- Embed the Runtime from source: Compose components with
bootstrap/AppRuntimeand let the host manage startup, shutdown, and workspace ownership. Interfaces follow the chosen source version; pin it and validate lifecycle behavior. - Study the Desktop host integration:
agent_runtime.rsshows the embedded Echo Agent Runtime and typed ACP channels; dependencies are declared inCargo.toml.
| Extension | Purpose | Documentation |
|---|---|---|
| Tools / MCP | Add execution capabilities and connect external tools | Tools · MCP |
| Skills / Plugins | Reuse workflows and extend Runtime behavior | Skills · Plugins |
| Models / Channels | Connect model services and messaging entry points | Models · Channels |
| A2A | Receive inbound tasks; no outbound A2A delegation entry point in the current Agent runtime | A2A |
Data and Security
Sessions, memory, configuration, and other state stay in the deployment environment. Remote models, external MCP servers, and third-party messaging channels receive data needed for their operations. When browser or computer automation is enabled in Desktop, model input may include page content and screenshots.
Runtime tool calls follow permissions and approval policies. Desktop also controls workspace authorization, permission modes, and task scope. See the security model, hardening guide, and Desktop data and permission boundaries for storage, authentication, and operational boundaries.
Documentation
Full documentation: English · 中文文档
| Topic | Entry points |
|---|---|
| Install and start | Runtime installation · Installation guide · Quick start |
| Concepts and architecture | Architecture · Agent Loop · Memory · Evolution |
| Configuration and operations | Configuration · CLI · Background services |
| Desktop | Install and use · Desktop releases |
| Versions and compatibility | Changelog · Compatibility |
Development and Contributing
echo-agent/
├── echo-agent-runtime/ # Standalone Runtime, including Dashboard and skills
├── client/ # Desktop workspace, embedded Runtime, and Theia
├── docs/ # Documentation site and visual assets
├── scripts/ # Repository maintenance, docs checks, and diagram generation
└── .github/ # CI, releases, and repository automation
Runtime development environment and checks
On macOS or Linux:
git clone https://github.com/fuyuxiang/echo-agent.git
cd echo-agent/echo-agent-runtime
uv venv venv --python 3.11
source venv/bin/activate
uv pip install -e ".[all,dev]"
ruff check .
pytest
See Runtime development for Dashboard builds and independent package checks, and Desktop development for Desktop checks.
Contributions to the Runtime, bug fixes, tools, Skills, Plugins, channels, and documentation are welcome. See CONTRIBUTING.en.md and the repository map. The bilingual README architecture diagrams are generated by scripts/generate-readme-diagrams.py; review and update diagrams and text when their implementations change.
Community and Support
- Usage questions and design discussions: GitHub Discussions
- Bug reports and feature requests: GitHub Issues
- Chinese-language chat: QQ group 47572014
- Security vulnerabilities: GitHub private security reports; see SECURITY.md for the disclosure process
Project Founders
Echo Agent was co-founded by Yuxiang Fu and Yanrong Gao.
License
Original project code is available under the PolyForm Noncommercial License 1.0.0 for the purposes permitted by that license. Commercial uses outside those purposes require separate permission from the maintainers.
Third-party components retain their respective licenses. This update does not revoke rights already granted under earlier licenses.
Earlier MIT notice: LICENSES/MIT.txt. See the third-party notices for licenses of components included in the desktop app.
The FastEmbed compatibility copy bundled with the Runtime is licensed under Apache-2.0. See its maintenance notes for the source and Pillow 13 compatibility changes.
Explore related projects
affaan-m/ECC
The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
300,201 starsNousResearch/hermes-agent
The agent that grows with you
262,056 starsmultica-ai/andrej-karpathy-skills
A single CLAUDE.md file to improve Claude Code behavior, derived from Andrej Karpathy's observations on LLM coding pitfalls.
231,331 starsfirecrawl/firecrawl
Supercharge your AI agents with data from the web and beyond. Building the library for superintelligence. 🔥
199,847 stars