Complete setup guide for building and running goal-driven agents with the Aden Agent Framework.
# Run the automated setup script
./quickstart.shNote for Windows Users:
Running the setup script on native Windows shells (PowerShell / Git Bash) may sometimes fail due to Python App Execution Aliases.
It is strongly recommended to use WSL (Windows Subsystem for Linux) for a smoother setup experience.
This will:
- Check Python version (requires 3.11+)
- Install the core framework package (
framework) - Install the tools package (
aden_tools) - Fix package compatibility issues (openai + litellm)
- Verify all installations
Windows users can use the native PowerShell setup script.
Before running the script, allow script execution for the current session:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy BypassRun setup from the project root:
./scripts/setup-python.ps1This will:
- Check Python version (requires 3.11+)
- Create a local
.venvvirtual environment - Install the core framework package (
framework) - Install the tools package (
aden_tools) - Fix package compatibility issues (openai + litellm)
- Verify all installations
After setup, activate the virtual environment:
.\.venv\Scripts\Activate.ps1Set PYTHONPATH (required in every new PowerShell session):
$env:PYTHONPATH="core;exports"If you are using Alpine Linux (e.g., inside a Docker container), you must install system dependencies and use a virtual environment before running the setup script:
- Install System Dependencies:
apk update
apk add bash git python3 py3-pip nodejs npm curl build-base python3-dev linux-headers libffi-dev- Set up Virtual Environment (Required for Python 3.12+):
python3 -m venv venv
source venv/bin/activate
pip install --upgrade pip setuptools wheel
- Run the Quickstart Script:
./quickstart.sh
If you prefer to set up manually or the script fails:
cd core
pip install -e .cd tools
pip install -e .# litellm requires openai >= 1.0.0
pip install --upgrade "openai>=1.0.0"python -c "import framework; print('✓ framework OK')"
python -c "import aden_tools; print('✓ aden_tools OK')"
python -c "import litellm; print('✓ litellm OK')"Windows Tip:
On Windows, if the verification commands fail, ensure you are running them in WSL or after disabling Python App Execution Aliases in Windows Settings → Apps → App Execution Aliases.
- Minimum: Python 3.11
- Recommended: Python 3.11 or 3.12
- Tested on: Python 3.11, 3.12, 3.13
- pip (latest version)
- 2GB+ RAM
- Internet connection (for LLM API calls)
- For Windows users: WSL 2 is recommended for full compatibility.
For running agents with real LLMs:
export ANTHROPIC_API_KEY="your-key-here"Windows (PowerShell):
$env:ANTHROPIC_API_KEY="your-key-here"All agent commands must be run from the project root with PYTHONPATH set:
# From /hive/ directory
PYTHONPATH=core:exports python -m agent_name COMMANDWindows (PowerShell):
$env:PYTHONPATH="core;exports"
python -m agent_name COMMAND# Validate agent structure
PYTHONPATH=core:exports python -m your_agent_name validate
# Show agent information
PYTHONPATH=core:exports python -m your_agent_name info
# Run agent with input
PYTHONPATH=core:exports python -m your_agent_name run --input '{
"task": "Your input here"
}'
# Run in mock mode (no LLM calls)
PYTHONPATH=core:exports python -m your_agent_name run --mock --input '{...}'Build and run an agent using Claude Code CLI with the agent building skills:
./quickstart.shThis verifies agent-related Claude Code skills are available:
/building-agents-construction- Step-by-step build guide/building-agents-core- Fundamental concepts/building-agents-patterns- Best practices/testing-agent- Test and validate agents/agent-workflow- Complete workflow
claude> /building-agents-construction
Follow the prompts to:
- Define your agent's goal
- Design the workflow nodes
- Connect nodes with edges
- Generate the agent package under
exports/
This step creates the initial agent structure required for further development.
claude> /building-agents-core
Follow the prompts to:
- Understand the agent architecture and file structure
- Define the agent's goal, success criteria, and constraints
- Learn node types (LLM, tool-use, router, function)
- Discover and validate available tools before use
This step establishes the core concepts and rules needed before building an agent.
claude> /building-agents-patterns
Follow the prompts to:
- Apply best-practice agent design patterns
- Add pause/resume flows for multi-turn interactions
- Improve robustness with routing, fallbacks, and retries
- Avoid common anti-patterns during agent construction
This step helps optimize agent design before final testing.
claude> /testing-agent
Follow the prompts to:
- Generate test guidelines for constraints and success criteria
- Write agent tests directly under
exports/{agent}/tests/ - Run goal-based evaluation tests
- Debug failing tests and iterate on agent improvements
This step verifies that the agent meets its goals before production use.
claude> /agent-workflow
Follow the guided flow to:
- Understand core agent concepts (optional)
- Build the agent structure step by step
- Apply best-practice design patterns (optional)
- Test and validate the agent against its goals
This workflow orchestrates all agent-building skills to take you from idea → production-ready agent.
Cause: Python 3.12+ on macOS/Homebrew, WSL, or some Linux distros prevents system-wide pip installs.
Solution: Create and use a virtual environment:
# Create virtual environment
python3 -m venv .venv
# Activate it
source .venv/bin/activate # macOS/Linux
# .venv\Scripts\activate # Windows
# Then run setup
./quickstart.shAlways activate the venv before running agents:
source .venv/bin/activate
PYTHONPATH=core:exports python -m your_agent_name demoRun once per session:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy BypassSolution: Install the core package:
cd core && pip install -e .Solution: Install the tools package:
cd tools && pip install -e .Or run the setup script:
./quickstart.shWindows:
./scripts/setup-python.ps1Cause: Outdated openai package (0.27.x) incompatible with litellm
Solution: Upgrade openai:
pip install --upgrade "openai>=1.0.0"Cause: Not running from project root, missing PYTHONPATH, or agent not yet created
Solution: Ensure you're in /hive/ and use:
Linux/macOS:
PYTHONPATH=core:exports python -m your_agent_name validateWindows:
$env:PYTHONPATH="core;exports"
python -m support_ticket_agent validateSymptom: pip list shows packages pointing to non-existent directories
Solution: Reinstall packages properly:
# Remove broken installations
pip uninstall -y framework tools
# Reinstall correctly
./quickstart.shWindows:
./scripts/setup-python.ps1The Hive framework consists of three Python packages:
hive/
├── core/ # Core framework (runtime, graph executor, LLM providers)
│ ├── framework/
│ ├── .venv/ # Created by quickstart.sh
│ └── pyproject.toml
│
├── tools/ # Tools and MCP servers
│ ├── src/
│ │ └── aden_tools/ # Actual package location
│ ├── .venv/ # Created by quickstart.sh
│ └── pyproject.toml
│
└── exports/ # Agent packages (user-created, gitignored)
└── your_agent_name/ # Created via /building-agents-construction
The project uses separate virtual environments for core and tools packages to:
- Isolate dependencies and avoid conflicts
- Allow independent development and testing of each package
- Enable MCP servers to run with their specific dependencies
When you run ./quickstart.sh or uv sync in each directory:
- core/.venv/ - Contains the
frameworkpackage and its dependencies (anthropic, litellm, mcp, etc.) - tools/.venv/ - Contains the
aden_toolspackage and its dependencies (beautifulsoup4, pandas, etc.)
The core and tools packages are intentionally independent:
- No cross-imports:
frameworkdoes not importaden_toolsdirectly, and vice versa - Communication via MCP: Tools are exposed to agents through MCP servers, not direct Python imports
- Runtime integration: The agent runner loads tools via the MCP protocol at runtime
If you need to use both packages in a single script (e.g., for testing), you have two options:
# Option 1: Install both in a shared environment
python -m venv .venv
source .venv/bin/activate
pip install -e core/ -e tools/
# Option 2: Use PYTHONPATH (for quick testing)
PYTHONPATH=core:tools/src python your_script.pyThe .mcp.json at project root configures MCP servers to use their respective virtual environments:
{
"mcpServers": {
"agent-builder": {
"command": "core/.venv/bin/python",
"args": ["-m", "framework.mcp.agent_builder_server"]
},
"tools": {
"command": "tools/.venv/bin/python",
"args": ["-m", "aden_tools.mcp_server", "--stdio"]
}
}
}This ensures each MCP server runs with its correct dependencies.
The packages are installed in editable mode (pip install -e), which means:
frameworkandaden_toolsare globally importable (no PYTHONPATH needed)exportsis NOT installed as a package (PYTHONPATH required)
This design allows agents in exports/ to be:
- Developed independently
- Version controlled separately
- Deployed as standalone packages
./quickstart.shWindows:
./scripts/setup-python.ps1claude> /building-agents-construction
Enter goal: "Build an agent that processes customer support tickets"
PYTHONPATH=core:exports python -m your_agent_name validateclaude> /testing-agent
PYTHONPATH=core:exports python -m your_agent_name run --input '{...}'Add to .vscode/settings.json:
{
"python.analysis.extraPaths": [
"${workspaceFolder}/core",
"${workspaceFolder}/exports"
],
"python.autoComplete.extraPaths": [
"${workspaceFolder}/core",
"${workspaceFolder}/exports"
]
}- Open Project Settings → Project Structure
- Mark
coreas Sources Root - Mark
exportsas Sources Root
export ANTHROPIC_API_KEY="sk-ant-..."# Credentials storage location (default: ~/.aden/credentials)
export ADEN_CREDENTIALS_PATH="/custom/path"
# Agent storage location (default: /tmp)
export AGENT_STORAGE_PATH="/custom/storage"- Framework Documentation: core/README.md
- Tools Documentation: tools/README.md
- Example Agents: exports/
- Agent Building Guide: .claude/skills/building-agents-construction/SKILL.md
- Testing Guide: .claude/skills/testing-agent/SKILL.md
When contributing agent packages:
- Place agents in
exports/agent_name/ - Follow the standard agent structure (see existing agents)
- Include README.md with usage instructions
- Add tests if using
/testing-agent - Document required environment variables
- Issues: https://github.com/adenhq/hive/issues
- Discord: https://discord.com/invite/MXE49hrKDk
- Documentation: https://docs.adenhq.com/