Development¶
Welcome to Echo Agent development! This section covers everything from environment setup to release processes.
Contents¶
| Document | Description |
|---|---|
| Development Setup | Python/Node environment, dependencies, IDE configuration |
| Repository Map | Directory structure and module responsibilities by subsystem |
| Adding a Provider | Integrate a new LLM service provider |
| Adding a Tool | Add new tools for the Agent |
| Adding a Channel | Develop a new messaging channel adapter |
| Skill Authoring | Write skills in the SKILL.md format |
| Plugin API | Plugin manifest, lifecycle hooks, permission admission |
| Dashboard Development | React SPA architecture, components, testing |
| Testing & Evaluation | pytest, evaluation framework, coverage gates |
| Documentation Guide | Docs site architecture, i18n, local preview |
| Release Process | Versioning, building, release checklist |
Quick Start¶
# Clone the repository
git clone https://github.com/fuyuxiang/echo-agent.git
cd echo-agent
# Backend: install all dependencies (including dev tools)
pip install -e ".[all,dev]"
# Frontend: install Dashboard dependencies
cd web && pnpm install --frozen-lockfile && cd ..
# Verify environment
ruff check .
python -m pytest tests/ -v --cov
cd web && pnpm build && pnpm test --run
Development Principles¶
- Test first — New features must include corresponding test cases
- Type safety — Use Pydantic models and type hints
- Minimal dependencies — Optional features isolated via extras (e.g.,
[openai],[browser]) - Backward compatible — Config changes go through migration mechanisms, never break existing deployments