How We Designed a Full B2B Agent System
From discovery to revenue, every stage of the funnel has an agent. Here's how we built it.

When we started building LeadStrategus, we had a choice: build a collection of point solutions, or design a system. We chose the system. Here's what we learned.
Starting with the Funnel
The B2B revenue funnel has distinct stages, and each stage has a different job to be done. We mapped them:
1. Account Discovery — Find companies that fit the ICP 2. Buying Intent Detection — Identify which of those companies are in a buying window 3. Account Prioritization — Rank and focus the list 4. Messaging & Outreach — Reach out with relevant, timely communication 5. Meeting Conversion — Turn interested prospects into booked demos 6. Pipeline Monitoring — Track deal progress and trigger re-engagement 7. Data Operations — Keep the underlying data clean and current
Each stage became a domain for a specialized agent. Specialization matters — a generalist agent trying to do everything performs worse than purpose-built agents with clear responsibilities.
The Integration Layer
Agents working in isolation aren't a system. The output of the discovery agent becomes the input for the intent agent. The prioritization agent's rankings inform which accounts the outreach agent activates. Signals from the monitoring agent trigger the re-engagement flow.
We built a shared context layer — a structured representation of each account's state across all agents. Every agent reads from and writes to this context, so the system develops a cumulative picture of each account over time.
Design Principles We Learned
Auditability first: Every agent action needs to be traceable. When a rep asks "why is this account on my hot list?", there needs to be a clear chain of reasoning. We built logging into every agent from day one.
Human in the loop at key moments: Full automation is appropriate for research and enrichment. For outbound communication, reps need to review and approve. Agents draft. Humans send.
Failure modes matter: What happens when a data source is unavailable? When an agent produces low-confidence output? We designed explicit degradation paths for every agent — fall back gracefully, flag for human review, never silently produce bad output.
Measure outputs, not activity: The temptation is to measure how many signals an agent processes. What actually matters is pipeline attributed to agent-assisted outreach. We built outcome metrics in from the start.
What We'd Do Differently
We underestimated how much time would go into data quality. Agents are only as good as the data they operate on. We now treat data operations as a first-class concern, not an afterthought.
We also underestimated the importance of the human-agent interface. The best agent in the world is worthless if reps don't trust it or understand its outputs. UI and explainability are product features, not nice-to-haves.
The system we have today is dramatically better than v1. The core insight remains: build for the whole pipeline, not individual tasks.


