Files
AutoGPT/classic/forge/README.md
Nicholas Tindle 572c3f5e0d refactor(classic): consolidate Poetry projects into single pyproject.toml
Merge forge/, original_autogpt/, and direct_benchmark/ into a single Poetry
project to eliminate cross-project path dependency issues.

Changes:
- Create classic/pyproject.toml with merged dependencies from all three projects
- Remove individual pyproject.toml and poetry.lock files from subdirectories
- Update all CLAUDE.md files to reflect commands run from classic/ root
- Update all README.md files with new installation and usage instructions

All packages are now included via the packages directive:
- forge/forge (core agent framework)
- original_autogpt/autogpt (AutoGPT agent)
- direct_benchmark/direct_benchmark (benchmark harness)

CLI entry points preserved: autogpt, serve, direct-benchmark

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-20 00:49:56 -06:00

128 lines
3.2 KiB
Markdown

# AutoGPT Forge
Core autonomous agent framework for building AI agents.
## Quick Start
All commands run from the `classic/` directory (parent of this directory):
```bash
# Install (one-time setup)
cd classic
poetry install
# Configure
cp .env.example .env
# Edit .env with your OPENAI_API_KEY
# Run
poetry run python -m forge
```
The agent server runs on `http://localhost:8000` by default.
## Configuration
### Environment Variables (`.env`)
```bash
# Required
OPENAI_API_KEY=sk-...
# Optional LLM settings
SMART_LLM=gpt-4o # Model for complex reasoning
FAST_LLM=gpt-4o-mini # Model for simple tasks
EMBEDDING_MODEL=text-embedding-3-small
# Optional search providers
TAVILY_API_KEY=tvly-...
SERPER_API_KEY=...
GOOGLE_API_KEY=...
GOOGLE_CUSTOM_SEARCH_ENGINE_ID=...
# Optional infrastructure
LOG_LEVEL=DEBUG # DEBUG, INFO, WARNING, ERROR
DATABASE_STRING=sqlite:///agent.db # Agent Protocol database
PORT=8000 # Server port
FILE_STORAGE_BACKEND=local # local, s3, or gcs
```
### Workspace Settings (`.autogpt/autogpt.yaml`)
Workspace-wide permissions for all agents:
```yaml
allow:
- read_file({workspace}/**)
- write_to_file({workspace}/**)
- list_folder({workspace}/**)
- web_search(*)
deny:
- read_file(**.env)
- read_file(**.key)
- execute_shell(rm -rf:*)
- execute_shell(sudo:*)
```
### Agent Settings (`.autogpt/agents/{id}/permissions.yaml`)
Agent-specific permission overrides:
```yaml
allow:
- execute_python(*)
deny:
- execute_shell(*)
```
## Workspace Structure
```
{workspace}/
├── .autogpt/
│ ├── autogpt.yaml # Workspace permissions
│ ├── ap_server.db # Agent Protocol database
│ └── agents/
│ └── AutoGPT-{agent_id}/
│ ├── state.json # Agent state
│ ├── permissions.yaml # Agent permissions
│ └── workspace/ # Agent's working directory
```
## Permissions
Permission checks follow this order (first match wins):
1. Agent deny list → Block
2. Workspace deny list → Block
3. Agent allow list → Allow
4. Workspace allow list → Allow
5. Prompt user → Interactive approval
### Pattern Syntax
Format: `command_name(glob_pattern)`
| Pattern | Description |
|---------|-------------|
| `read_file({workspace}/**)` | Read any file in workspace |
| `execute_shell(python:**)` | Execute Python commands |
| `web_search(*)` | All web searches |
Special tokens:
- `{workspace}` - Replaced with workspace path
- `**` - Matches any path including `/`
- `*` - Matches any characters except `/`
## Tutorials
The [tutorial series](https://aiedge.medium.com/autogpt-forge-e3de53cc58ec) guides you through building a custom agent:
1. [A Comprehensive Guide to Your First Steps](https://aiedge.medium.com/autogpt-forge-a-comprehensive-guide-to-your-first-steps-a1dfdf46e3b4)
2. [The Blueprint of an AI Agent](https://aiedge.medium.com/autogpt-forge-the-blueprint-of-an-ai-agent-75cd72ffde6)
3. [Interacting with your Agent](https://aiedge.medium.com/autogpt-forge-interacting-with-your-agent-1214561b06b)
4. [Crafting Intelligent Agent Logic](https://medium.com/@aiedge/autogpt-forge-crafting-intelligent-agent-logic-bc5197b14cb4)