Architecture

Agno Deep Agent is an opinionated composition of Agno primitives.

Components

create_deep_agent()
        |
        v
Team(mode=TeamMode.tasks)
        |
        +-- Researcher
        +-- Implementer
        +-- Reviewer
        |
        +-- Skills(LocalSkills)
        +-- SqliteDb
        +-- CodingTools
        +-- CompressionManager
        +-- Media inputs

Leader

The Team acts as the leader. It:

Members

Member Role
Researcher Reads the workspace and identifies requirements, risks, and relevant files.
Implementer Makes changes and runs allowed verification commands.
Reviewer Checks regressions, tests, risks, and clarity.

Memory And Learning

All agents use the same SqliteDb. By default, the database lives at:

.deep-agent/agno.db

This allows sessions, memories, and learnings to persist between runs.

Context Compression

Agno Deep Agent enables Agno tool-result compression by default. Compression keeps long tool-heavy runs inside the model context by summarizing older tool outputs while preserving file paths, symbols, commands, errors, and decisions.

Use --no-compression to disable it or --compression-model to choose a dedicated cheaper model.

Multimodal Input

The CLI and SDK accept images, audio, video, and files. These are converted into Agno Image, Audio, Video, and File objects before the team run.

Model support still depends on the provider and selected model.

Workspace

File and shell tools use CodingTools with:

restrict_to_base_dir=True

The base directory is the configured workspace. The default is the current directory.

Shell

The Implementer and Reviewer use shell tools with command allowlist and timeout. This is useful for checks such as python, pytest, git, grep, and ls.

To disable shell execution:

agno-deep-agent --no-shell "Review the project without running commands"

What This Harness Does Not Try To Be