How rodricdib06/autonomous-sdr works
AutonomousSDR is a self-hosted, multi-tenant AI sales-development application. Its core workflow accepts leads through webhook or UI operations, queues them for a LangGraph qualification pipeline, then routes results toward booking, outreach, or CRM sync; the product also includes reply handling, compliance, analytics, and optimization. The README documents the pipeline stages and major capabilities; source excerpts and the index support selected implementation links. Many router and agent internals were not sampled, so those links are omitted where evidence is limited.
Main entry points: graph.py Agent pipeline · main.py API application · ingest.py Lead webhooks · outreach_agent.py Outreach drafting
Components 28
Entry and access
- Lead webhooks
app/routers/ingest.py - Lead operations
app/routers/leads.py - Authentication and tenancy
app/auth/dependencies.py - API application
app/main.py
Lead qualification
- Lead worker
app/worker/lead_worker.py - Agent pipeline
app/agents/graph.py - Lead enrichment
app/services/enrichment - Web research
app/agents/research_agent.py - Intent scoring
app/services/intent_scoring.py - BANT analysis
app/agents/analysis_agent.py - Verdict validation
app/agents/validator_agent.py
Engagement and actions
- Outreach drafting
app/agents/outreach_agent.py - Email approvals
app/routers/approvals.py - Mailbox sending
app/services/mailbox_service.py - Meeting booking
app/agents/booking_agent.py - CRM synchronization
app/services/crm_sync.py - Reply intelligence
app/services/reply_service.py - Campaign autonomy
app/agents/campaign_agent.py
Platform and learning
- Lead data store
app/database/models.py - Lead persistence
app/database/crud.py - Priority queue
app/services/queue_service.py - Sending compliance
app/services/compliance.py - Scoring optimization
app/services/optimization_loop.py - Analytics and backtests
app/routers/analytics.py
Web interface
- Web application
frontend/src/App.tsx - API client
frontend/src/lib/api.ts - Pipeline view
frontend/src/pages/Pipeline.tsx
Other components
- Sales user
Connections 28
- Sales user → Web application: uses
README.md - Sales user → Lead webhooks: submits leads
README.md - Lead webhooks → Lead persistence: creates leads
app/routers/ingest.py - Lead webhooks → Priority queue: queues leads
app/routers/ingest.py - Lead operations → Lead persistence: manages leads
app/routers/leads.py - Lead persistence → Lead data store: writes records
app/database/crud.py - Lead worker → Priority queue: dequeues jobs
app/worker/lead_worker.py - Lead worker → Agent pipeline: runs pipeline
app/worker/lead_worker.py - Agent pipeline → Lead enrichment: enriches
README.md - Agent pipeline → Web research: researches
README.md - Agent pipeline → Intent scoring: scores intent
README.md - Agent pipeline → BANT analysis: analyzes
README.md - Agent pipeline → Verdict validation: validates
README.md - Agent pipeline → Meeting booking: routes hot leads
README.md - Agent pipeline → Outreach drafting: routes warm leads
README.md - Agent pipeline → CRM synchronization: routes cold leads
README.md - Outreach drafting → Email approvals: submits drafts
README.md - Outreach drafting → Mailbox sending: sends email
README.md - Mailbox sending → Sending compliance: checks sending
app/services/compliance.py - Reply intelligence → Lead data store: updates lead state
app/services/reply_service.py - Campaign autonomy → Analytics and backtests: uses campaign metrics
- Scoring optimization → Lead data store: learns outcomes
- API application → Lead webhooks: mounts routes
app/main.py - API application → Lead worker: starts worker
app/main.py - API application → Priority queue: configures queue
app/main.py - Web application → Pipeline view: renders
frontend/src/App.tsx - Pipeline view → API client: requests data
frontend/src/pages/Pipeline.tsx - API client → API application: calls API