evilsocket / nerve
The Simple Agent Development Kit.
README
Nerve is a simple yet powerful Agent Development Kit (ADK) to build, run, evaluate, and orchestrate LLM-based agents using just YAML and a CLI. Itโs designed for technical users who want programmable, auditable, and reproducible automation using large language models.
Key Features
๐ Declarative Agents
Define agents using a clean YAML format: system prompt, task, tools, and variables โ all in one file.
๐ง Built-in Tools & Extensibility
Use shell commands, Python functions, or remote tools to power your agents. Tools are fully typed and annotated.
๐ Native MCP Support (Client & Server)
Nerve is the first framework to let you define MCP servers in YAML โ and act as both client and server, enabling agent teams and deep orchestration.
๐ Evaluation Mode
Benchmark your agents with YAML, Parquet, or folder-based test cases. Run reproducible tests, log structured outputs, and track regression or progress.
๐ Workflows
Compose agents into simple, linear pipelines to create multi-step automations with shared context.
๐งช LLM-Agnostic
Built on LiteLLM, Nerve supports OpenAI, Anthropic, Ollama, and dozens more โ switch models in one line.
Quick Start
# ๐ฅ๏ธ install the project with:
pip install nerve-adk
# โฌ๏ธ download and install an agent from a github repo with:
nerve install evilsocket/changelog
# ๐ก or create an agent with a guided procedure:
nerve create new-agent
# ๐ go!
nerve run new-agent
Read the documentation and the examples for more.
Contributing
We welcome contributions! Check out our contributing guidelines to get started and join our Discord community for help and discussion.
<a href="https://github.com/evilsocket/nerve/graphs/contributors">
<img src="https://contrib.rocks/image?repo=evilsocket/nerve" alt="Nerve project contributors" />
</a>
License
Nerve is released under the GPL 3 license.
