CrewAI is a large, actively maintained Python framework for orchestrating autonomous AI agents and event-driven multi-agent workflows. The codebase is organized as a monorepo with six libraries under `lib/`: `crewai` (core framework), `crewai-cli` (CLI), `crewai-tools` (tool integrations), `crewai-files` (multimodal file handling), `crewai-core` (shared utilities), and `devtools` (release tooling). The core provides two complementary abstractions — Crews for autonomous role-based agent collaboration and Flows for precise, state-machine-driven orchestration — that can be combined in production applications. The framework supports numerous LLM providers (OpenAI, Anthropic, Gemini, Azure, Bedrock, and many more), a wide array of built-in and third-party tools, MCP/A2A protocol integrations, human-in-the-loop flows, and enterprise deployment via the AMP Suite. The repository has extensive test coverage (pytest with VCR cassettes), strong static analysis (ruff, mypy, bandit), and a well-defined release process. While the framework code is solid and well-structured, the repository is dominated by auto-generated documentation files (thousands of `.mdx` files across multiple versions and languages) and repetitive tool README templates, which inflate the file count but contribute little reusable engineering value.
Continue is an open-source AI coding agent that provides chat, autocomplete, edit, and agent capabilities across VS Code, JetBrains IDEs, and a standalone CLI. The architecture centers on a shared TypeScript core (`core/`) that handles LLM interactions, context providers, tool definitions, indexing, and configuration management. This core is consumed by three frontends: a VS Code extension (`extensions/vscode/`), a JetBrains plugin (`extensions/intellij/`), and a CLI (`extensions/cli/`) with a React-based TUI. A separate React GUI (`gui/`) runs as a webview in the IDE extensions. The system supports 50+ LLM providers through a plugin architecture in `core/llm/llms/` and uses a YAML-based configuration system (`packages/config-yaml/`) with a Hub for sharing assistants. Codebase indexing uses a content-addressed Merkle tree approach with a Rust sync library (`sync/`). The repository is now read-only and deprecated as of the final 2.0.0 release, with the team recommending users migrate to the CLI.