chore: requires python3.11
This commit is contained in:
+22
-15
@@ -20,12 +20,12 @@ This guide covers everything you need to know to develop with the Aden Agent Fra
|
||||
|
||||
Aden Agent Framework is a Python-based system for building goal-driven, self-improving AI agents.
|
||||
|
||||
| Package | Directory | Description | Tech Stack |
|
||||
| ------------- | ---------- | -------------------------------------------- | ----------------- |
|
||||
| **framework** | `/core` | Core runtime, graph executor, protocols | Python 3.11+ |
|
||||
| **tools** | `/tools` | 19 MCP tools for agent capabilities | Python 3.11+ |
|
||||
| **exports** | `/exports` | Agent packages and examples | Python 3.11+ |
|
||||
| **skills** | `.claude` | Claude Code skills for building/testing | Markdown |
|
||||
| Package | Directory | Description | Tech Stack |
|
||||
| ------------- | ---------- | --------------------------------------- | ------------ |
|
||||
| **framework** | `/core` | Core runtime, graph executor, protocols | Python 3.11+ |
|
||||
| **tools** | `/tools` | 19 MCP tools for agent capabilities | Python 3.11+ |
|
||||
| **exports** | `/exports` | Agent packages and examples | Python 3.11+ |
|
||||
| **skills** | `.claude` | Claude Code skills for building/testing | Markdown |
|
||||
|
||||
### Key Principles
|
||||
|
||||
@@ -69,7 +69,7 @@ cd hive
|
||||
|
||||
The setup script performs these actions:
|
||||
|
||||
1. Checks Python version (3.10+ required, 3.11+ recommended)
|
||||
1. Checks Python version (3.11+)
|
||||
2. Installs `framework` package from `/core` (editable mode)
|
||||
3. Installs `aden_tools` package from `/tools` (editable mode)
|
||||
4. Fixes package compatibility (upgrades openai for litellm)
|
||||
@@ -87,6 +87,7 @@ export BRAVE_SEARCH_API_KEY="your-key-here" # Optional, for web search tool
|
||||
```
|
||||
|
||||
Get API keys:
|
||||
|
||||
- **Anthropic**: [console.anthropic.com](https://console.anthropic.com/)
|
||||
- **OpenAI**: [platform.openai.com](https://platform.openai.com/)
|
||||
- **Brave Search**: [brave.com/search/api](https://brave.com/search/api/)
|
||||
@@ -99,6 +100,7 @@ Get API keys:
|
||||
```
|
||||
|
||||
This installs:
|
||||
|
||||
- `/building-agents` - Build new goal-driven agents
|
||||
- `/testing-agent` - Test agents with evaluation framework
|
||||
|
||||
@@ -220,21 +222,25 @@ claude> /testing-agent
|
||||
### Agent Development Workflow
|
||||
|
||||
1. **Define Your Goal**
|
||||
|
||||
```
|
||||
claude> /building-agents
|
||||
Enter goal: "Build an agent that processes customer support tickets"
|
||||
```
|
||||
|
||||
2. **Design the Workflow**
|
||||
|
||||
- The skill guides you through defining nodes
|
||||
- Each node is a unit of work (LLM call, function, router)
|
||||
- Edges define how execution flows
|
||||
|
||||
3. **Generate the Agent**
|
||||
|
||||
- The skill generates a complete Python package in `exports/`
|
||||
- Includes: `agent.json`, `tools.py`, `README.md`
|
||||
|
||||
4. **Validate the Agent**
|
||||
|
||||
```bash
|
||||
PYTHONPATH=core:exports python -m your_agent_name validate
|
||||
```
|
||||
@@ -309,6 +315,7 @@ claude> /testing-agent
|
||||
```
|
||||
|
||||
This generates and runs:
|
||||
|
||||
- **Constraint tests** - Verify agent respects constraints
|
||||
- **Success tests** - Verify agent achieves success criteria
|
||||
- **Integration tests** - End-to-end workflows
|
||||
@@ -407,14 +414,14 @@ my_agent/
|
||||
|
||||
### File Naming
|
||||
|
||||
| Type | Convention | Example |
|
||||
| ------------------- | ------------------------ | --------------------------- |
|
||||
| Modules | snake_case | `ticket_handler.py` |
|
||||
| Classes | PascalCase | `TicketHandler` |
|
||||
| Functions/Variables | snake_case | `process_ticket()` |
|
||||
| Constants | UPPER_SNAKE_CASE | `MAX_RETRIES = 3` |
|
||||
| Test files | `test_` prefix | `test_ticket_handler.py` |
|
||||
| Agent packages | snake_case | `support_ticket_agent/` |
|
||||
| Type | Convention | Example |
|
||||
| ------------------- | ---------------- | ------------------------ |
|
||||
| Modules | snake_case | `ticket_handler.py` |
|
||||
| Classes | PascalCase | `TicketHandler` |
|
||||
| Functions/Variables | snake_case | `process_ticket()` |
|
||||
| Constants | UPPER_SNAKE_CASE | `MAX_RETRIES = 3` |
|
||||
| Test files | `test_` prefix | `test_ticket_handler.py` |
|
||||
| Agent packages | snake_case | `support_ticket_agent/` |
|
||||
|
||||
### Import Order
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ Complete setup guide for building and running goal-driven agents with the Aden A
|
||||
|
||||
This will:
|
||||
|
||||
- Check Python version (requires 3.10+, recommends 3.11+)
|
||||
- Check Python version (requires 3.11+)
|
||||
- Install the core framework package (`framework`)
|
||||
- Install the tools package (`aden_tools`)
|
||||
- Fix package compatibility issues (openai + litellm)
|
||||
@@ -54,7 +54,7 @@ python -c "import litellm; print('✓ litellm OK')"
|
||||
|
||||
### Python Version
|
||||
|
||||
- **Minimum:** Python 3.10
|
||||
- **Minimum:** Python 3.11
|
||||
- **Recommended:** Python 3.11 or 3.12
|
||||
- **Tested on:** Python 3.11, 3.12, 3.13
|
||||
|
||||
|
||||
+4
-1
@@ -7,10 +7,13 @@ requires-python = ">=3.11"
|
||||
dependencies = [
|
||||
"pydantic>=2.0",
|
||||
"anthropic>=0.40.0",
|
||||
"httpx>=0.27.0",
|
||||
"litellm>=1.81.0",
|
||||
"mcp>=1.0.0",
|
||||
"fastmcp>=2.0.0",
|
||||
"pytest>=8.0",
|
||||
"pytest-asyncio>=0.23",
|
||||
"pytest-xdist>=3.0",
|
||||
"litellm>=1.81.0",
|
||||
]
|
||||
|
||||
[project.optional-dependencies]
|
||||
|
||||
+2
-2
@@ -56,8 +56,8 @@ PYTHON_MINOR=$($PYTHON_CMD -c 'import sys; print(sys.version_info.minor)')
|
||||
|
||||
echo -e " Detected Python: ${GREEN}$PYTHON_VERSION${NC}"
|
||||
|
||||
if [ "$PYTHON_MAJOR" -lt 3 ] || ([ "$PYTHON_MAJOR" -eq 3 ] && [ "$PYTHON_MINOR" -lt 10 ]); then
|
||||
echo -e "${RED}Error: Python 3.10+ is required (found $PYTHON_VERSION)${NC}"
|
||||
if [ "$PYTHON_MAJOR" -lt 3 ] || ([ "$PYTHON_MAJOR" -eq 3 ] && [ "$PYTHON_MINOR" -lt 11 ]); then
|
||||
echo -e "${RED}Error: Python 3.11+ is required (found $PYTHON_VERSION)${NC}"
|
||||
echo "Please upgrade your Python installation"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -45,8 +45,8 @@ PYTHON_MINOR=$($PYTHON_CMD -c 'import sys; print(sys.version_info.minor)')
|
||||
|
||||
echo -e "${BLUE}Detected Python:${NC} $PYTHON_VERSION"
|
||||
|
||||
if [ "$PYTHON_MAJOR" -lt 3 ] || ([ "$PYTHON_MAJOR" -eq 3 ] && [ "$PYTHON_MINOR" -lt 10 ]); then
|
||||
echo -e "${RED}Error: Python 3.10+ is required (found $PYTHON_VERSION)${NC}"
|
||||
if [ "$PYTHON_MAJOR" -lt 3 ] || ([ "$PYTHON_MAJOR" -eq 3 ] && [ "$PYTHON_MINOR" -lt 11 ]); then
|
||||
echo -e "${RED}Error: Python 3.11+ is required (found $PYTHON_VERSION)${NC}"
|
||||
echo "Please upgrade your Python installation"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -3,7 +3,7 @@ name = "tools"
|
||||
version = "0.1.0"
|
||||
description = "Tools library for the Aden agent framework"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.10"
|
||||
requires-python = ">=3.11"
|
||||
license = { text = "Apache-2.0" }
|
||||
authors = [
|
||||
{ name = "Aden", email = "team@aden.ai" }
|
||||
@@ -14,7 +14,6 @@ classifiers = [
|
||||
"Intended Audience :: Developers",
|
||||
"License :: OSI Approved :: Apache Software License",
|
||||
"Programming Language :: Python :: 3",
|
||||
"Programming Language :: Python :: 3.10",
|
||||
"Programming Language :: Python :: 3.11",
|
||||
"Programming Language :: Python :: 3.12",
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user