Compare frameworks
Agno vs Pydantic AI vs Letta
Every figure below carries the source that reported it and the moment it was observed. Values that failed validation are withheld rather than shown, and a dash means no source we track carries that field for that framework.
| Field | Agno | Pydantic AI | Letta |
|---|---|---|---|
| Stars | 42,325 (highest of the compared values)Synced from sourceCurrent3h ago | 20,133Synced from sourceCurrent3h ago | 24,864Synced from sourceCurrent3h ago |
| downloads | 520,626Synced from sourceStale1mo ago· past SLA | 3,076,771 (highest of the compared values)Synced from sourceStale1mo ago· past SLA | — |
| Last commit | 2026-09-23Synced from sourceCurrent3h ago | 2026-09-24Synced from sourceCurrent3h ago | 2026-09-10Synced from sourceCurrent3h ago |
| Language | pythonSeeded, unreviewedwritten 1mo ago | pythonSeeded, unreviewedwritten 1mo ago | pythonSeeded, unreviewedwritten 1mo ago |
| Licence | Apache-2.0Synced from sourceCurrent3h ago | MITSynced from sourceCurrent3h ago | Apache-2.0Synced from sourceCurrent3h ago |
| Archived | noSynced from sourceCurrent3h ago | noSynced from sourceCurrent3h ago | noSynced from sourceCurrent3h ago |
| Category | orchestrationSeeded, unreviewedwritten 1mo ago | structured-outputSeeded, unreviewedwritten 1mo ago | memorySeeded, unreviewedwritten 1mo ago |
| Contributors | 581Synced from sourceCurrent3h ago | 589Synced from sourceCurrent3h ago | 155Synced from sourceCurrent3h ago |
| Forks | 5999Synced from sourceCurrent3h ago | 2768Synced from sourceCurrent3h ago | 2628Synced from sourceCurrent3h ago |
| Maintainer | AgnoSeeded, unreviewedwritten 1mo ago | PydanticSeeded, unreviewedwritten 1mo ago | LettaSeeded, unreviewedwritten 1mo ago |
| Open issues | 1611Synced from sourceCurrent3h ago | 965Synced from sourceCurrent3h ago | 0Synced from sourceCurrent3h ago |
| PyPI downloads, monthly | 2183543Synced from sourceStale1mo ago· past SLA | 13478631Synced from sourceStale1mo ago· past SLA | — |
| PyPI downloads, weekly | 520626Synced from sourceStale1mo ago· past SLA | 3076771Synced from sourceStale1mo ago· past SLA | — |
| PyPI package | agnoSynced from sourceCurrent3h ago | pydantic-aiSynced from sourceCurrent3h ago | lettaSynced from sourceCurrent3h ago |
| PyPI released | 2026-09-23T13:15:37.685447ZSynced from sourceCurrent3h ago | 2026-09-24T03:23:01.147978ZSynced from sourceCurrent3h ago | 2026-09-23T23:59:05.225455ZSynced from sourceCurrent3h ago |
| Requires Python | <4,>=3.9Synced from sourceCurrent3h ago | >=3.10Synced from sourceCurrent3h ago | >=3.9Synced from sourceCurrent3h ago |
| PyPI version | 3.0.11Synced from sourceCurrent3h ago | 2.49.0Synced from sourceCurrent3h ago | 0.33.0Synced from sourceCurrent3h ago |
| Repository | https://github.com/agno-agi/agnoSynced from sourceCurrent3h ago | https://github.com/pydantic/pydantic-aiSynced from sourceCurrent3h ago | https://github.com/letta-ai/lettaSynced from sourceCurrent3h ago |
Sources: GitHub REST API, npm registry downloads, PyPI registry metadata, pypistats.org downloads. Most recent observation 3h ago. Where a row is marked, ▲ is the highest of the values shown and ▼ the lowest — arithmetic on the figures above, not a ranking or a recommendation. Rows where neither extreme is meaningful are left unmarked rather than given a direction they do not have.
Change the comparison
Remove one, or open the directory to pick a different set. Up to 3 at a time.