Hermes Agent
Self-improving, multi-platform AI agent framework by Nous Research. The only open-source agent with a built-in learning loop: it creates skills from experience, improves them during use, nudges itself to persist knowledge, searches its own past conversations via FTS5, and builds a deepening model of who you are across sessions via pluggable memory providers (builtin + Honcho/Hindsight/Mem0).
Core architecture: AIAgent.chat() orchestrates system prompt assembly (identity + memory prefetch + skills index + context files), LLM calls with tool schemas, a tool-calling dispatch loop with budget enforcement (tokens/chars/turns), and post-turn memory sync. 40+ tools across terminal (6 backends: local, Docker, SSH, Daytona, Modal, Singularity), files, web search, browser automation (Browserbase), vision, subagent delegation, MCP client, code execution, and cron scheduling. Context compression auto-summarizes middle turns when approaching limit, preserving decisions and file references in structured templates.
Messaging gateway supports Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Email, SMS, Home Assistant, DingTalk, Feishu, and WeChat Work via async platform adapters inheriting from PlatformAdapter(ABC). All platforms reduce to the same AIAgent.chat() call with platform-specific context injection. Skills are markdown files (SKILL.md) with optional config and scripts; the agent autonomously creates new skills after complex tasks and self-improves them during use. Compatible with the agentskills.io open standard.
Research infrastructure includes Atropos RL environments for training tool-calling models, benchmarks (TBLite, Terminal-Bench 2.0, YC-Bench), trajectory compression for training data generation, and tool-call parsers for multiple model families (Hermes, DeepSeek, Qwen, Llama, Mistral, GLM, Kimi).
Plugin system with three-tier discovery (user/project/pip), lifecycle hooks (pre/post tool calls, LLM calls, sessions), and custom tool registration. ACP adapter for VS Code, Zed, and JetBrains. Credential pool with multi-credential failover strategies (fill-first, round-robin, random, least-used). Rich CLI via prompt_toolkit with multiline editing, slash-command autocomplete, streaming output, and session history. NixOS flake, Docker, and Homebrew packaging.
v0.8.0, MIT license, Python 3.11+, ~1500 files.