How botextractai/ai-crewai-multi-agent works
This repository is a command-line example that produces a public-company financial analysis from SEC filings. The workflow starts with a ticker in main.py, runs a sequential research-then-analysis crew, and lets both agents query recent 10-K and 10-Q filings. The SEC tools download and parse filing HTML, then retrieve relevant text with embeddings and FAISS. The README also describes ratio, growth, valuation, and cash-flow analysis. Agent and task configuration paths are visible in the tree, but their contents were not sampled, so their detailed prompts and wiring are not inferred.
Main entry points: crew.py Crew builder · sec_tools.py SEC search tools · main.py CLI entry · agents.yaml Agent definitions
Components 18
Runtime entry
- CLI entry
main.py - Financial analysis
Analysis crew
- Crew builder
crew.py - Agent definitions
config/agents.yaml - Task definitions
config/tasks.yaml - Research task
crew.py - Company researcher
crew.py - Analysis task
crew.py - Company analyst
crew.py
SEC retrieval
- SEC search tools
tools/sec_tools.py - Filing HTML
tools/sec_tools.py - HTML partitioning
tools/sec_tools.py - Text chunking
tools/sec_tools.py - FAISS retrieval index
tools/sec_tools.py
Other components
- Analyst
- SEC filings API
- OpenAI embeddings
- OpenAI language model
Connections 22
- Analyst → CLI entry: sets ticker
- CLI entry → Crew builder: starts crew
- Crew builder → Agent definitions: loads
- Crew builder → Task definitions: loads
- Crew builder → Research task: registers
- Crew builder → Analysis task: registers
- Research task → Company researcher: assigned to
- Analysis task → Company analyst: assigned to
- Company researcher → SEC search tools: invokes
- Company analyst → SEC search tools: invokes
- SEC search tools → SEC filings API: queries filings
- SEC search tools → Filing HTML: downloads
- Filing HTML → HTML partitioning: parsed by
- HTML partitioning → Text chunking: provides text
- Text chunking → OpenAI embeddings: embedded by
- Text chunking → FAISS retrieval index: indexed in
- OpenAI embeddings → FAISS retrieval index: supports search
- SEC search tools → FAISS retrieval index: retrieves passages
- Research task → Analysis task: passes output
- Crew builder → OpenAI language model: configures model
- Crew builder → Financial analysis: returns result
- CLI entry → Financial analysis: receives result