Welcome to Azad Documentation¶
Azad is a Python framework for building and running autonomous AI agents capable of performing development tasks. This documentation provides comprehensive information about the Azad codebase, its architecture, and how to use it.
What is Azad?¶
Azad is an autonomous AI development agent that can:
- Understand task requirements
- Plan and execute steps using a defined set of tools
- Interact with the file system, run shell commands, browse the web, and more
- Communicate its progress and request clarification
- Leverage various AI models through a flexible network layer
Core Components¶
Azad consists of several key components:
Agent System¶
The Agent class is the core of Azad, managing tasks, handling tool calls, and coordinating the execution of the AI agent. It works with the Environment to interact with the outside world.
Task Management¶
The Task Lifecycle system manages the lifecycle of tasks, including entry, execution, and exit. Tasks are represented using the Mind Map data structure, which maintains the state of conversations and tool interactions.
AI Network¶
The AI Network component handles communication with language model providers, processes streaming responses, and manages context window exceeded errors with compression.
Prompt Dialects¶
The Prompt Dialect system supports multiple prompt formats (XML, Native, JSON) for different model requirements. Each dialect has its own parser and formatter.
Compression¶
The Compression system helps manage context windows for large conversations, using strategies like truncation and summarization.
Tools¶
Azad includes Predefined Tools for common operations, as well as support for server-executed tools requiring specific environments.
Getting Started¶
To get started with Azad, check out the README for installation instructions and basic usage.
API Reference¶
For detailed information about the Azad API, check out the API Reference section.