agentic-crew
agentic-crew
Section titled “agentic-crew”Define AI crews in YAML. Run them on CrewAI, LangGraph, or Strands — whichever is installed. One format, any framework.
The Problem
Section titled “The Problem”The AI agent ecosystem is fragmented. CrewAI, LangGraph, and Strands each have different APIs for the same concepts — agents, tasks, and orchestration. Switching frameworks means rewriting your crew definitions. And single-agent CLI tools (aider, claude-code, ollama) each have their own invocation patterns.
The Solution
Section titled “The Solution”agentic-crew gives you:
- Universal crew format — YAML definitions that work across all three frameworks
- Runtime auto-detection — Automatically uses whichever framework is installed
- Universal CLI runner — One interface for aider, claude-code, ollama, codex, kiro, and goose
- Custom runner support — Define your own CLI tools in YAML
Installation
Section titled “Installation”# Core (auto-detects framework at runtime)pip install agentic-crew
# With a specific frameworkpip install agentic-crew[crewai] # CrewAI (recommended)pip install agentic-crew[langgraph] # LangGraphpip install agentic-crew[strands] # AWS Strands
# All frameworkspip install agentic-crew[ai]Quick Start
Section titled “Quick Start”1. Define a Crew
Section titled “1. Define a Crew”name: my-packageversion: "1.0"crews: analyzer: description: Analyze codebases agents: crews/analyzer/agents.yaml tasks: crews/analyzer/tasks.yamlcode_reviewer: role: Senior Code Reviewer goal: Find bugs and improvements backstory: Expert at code analysisreview_code: description: Review the provided code for issues expected_output: List of findings with severity agent: code_reviewer2. Run It
Section titled “2. Run It”from agentic_crew import run_crew
# Auto-detects best framework (CrewAI > LangGraph > Strands)result = run_crew("my-package", "analyzer", inputs={"code": "..."})# Or from the CLIagentic-crew run my-package analyzer --input "Review this code"Single-Agent CLI Runners
Section titled “Single-Agent CLI Runners”For simpler tasks, run CLI-based coding tools through a unified interface:
| Runner | Description | Local? |
|---|---|---|
| aider | AI pair programming | No |
| claude-code | Anthropic’s coding agent | No |
| codex | OpenAI’s coding agent | No |
| ollama | Free local LLM execution | Yes |
| kiro | AWS AI development CLI | No |
| goose | Block’s extensible agent | No |
# Aider for quick fixesagentic-crew run --runner aider --input "Add error handling to auth.py"
# Claude Code for refactoringagentic-crew run --runner claude-code --input "Refactor the database module"
# Ollama for free local executionagentic-crew run --runner ollama --input "Fix the bug" --model deepseek-coderWhen to Use What
Section titled “When to Use What”| Scenario | Use |
|---|---|
| Complex multi-step tasks needing collaboration | Multi-agent crew |
| Quick edits, simple file changes | Single-agent CLI runner |
| Local development without API keys | Ollama runner |
| Tasks requiring planning and delegation | Multi-agent crew |
Framework Auto-Detection
Section titled “Framework Auto-Detection”agentic-crew checks what’s installed and picks the best option:
from agentic_crew.core.decomposer import detect_framework, get_runner
framework = detect_framework() # "crewai", "langgraph", or "strands"runner = get_runner() # Auto-selects best availablerunner = get_runner("langgraph") # Force a specific frameworkPriority order:
- CrewAI — Most features, best for complex crews
- LangGraph — Good for flow-based orchestration
- Strands — Lightweight, minimal dependencies
Programmatic API
Section titled “Programmatic API”from agentic_crew import CrewConfig, AgentConfig, TaskConfig, run_crew_auto
config = CrewConfig( name="review-crew", agents=[ AgentConfig( name="security_reviewer", role="Security Expert", goal="Identify security vulnerabilities", backstory="10+ years of security auditing", ), AgentConfig( name="performance_reviewer", role="Performance Engineer", goal="Identify performance bottlenecks", backstory="Expert in optimization and profiling", ), ], tasks=[ TaskConfig( name="security_review", description="Review code for security issues", agent="security_reviewer", expected_output="Vulnerabilities with severity ratings", ), TaskConfig( name="performance_review", description="Analyze code for performance issues", agent="performance_reviewer", expected_output="Bottlenecks with recommendations", ), ],)
result = run_crew_auto(config, inputs={"code_path": "./src"})Package Structure
Section titled “Package Structure”Any package can include crew definitions:
my-package/├── .crewai/│ ├── manifest.yaml│ ├── knowledge/│ │ └── domain_docs/│ └── crews/│ └── my_crew/│ ├── agents.yaml│ └── tasks.yaml└── src/Development
Section titled “Development”# Install with dev depsuv sync --extra dev --extra tests --extra crewai
# Run testsuv run pytest tests/ -v
# Lintuvx ruff check src/ tests/ --fixRelated
Section titled “Related”- CrewAI — Original crew framework
- LangGraph — Graph-based agents
- Strands — AWS agent framework
- @jbcom/agentic — Fleet management and orchestration
- @jbcom/agentic (Triage) — Triage primitives