Autonomous B2B sales development agent for FVM Studios — prospecting, enrichment, qualification, and outreach without a human in the loop for the grunt work.
Interactive, pannable version: open the architecture map
Jade is a persona-driven AI agent running on the Hermes runtime inside a Docker container on an Oracle Cloud ARM server. It works the top of the FVM Studios sales funnel end to end: finds companies, qualifies them, enriches contacts, writes personalized outreach, sends it from a dedicated studio address, and keeps ClickUp — the CRM of record — clean. Status: running in production.
FVM Studios is a video production and marketing studio. SDR work — researching prospects, finding verified emails, writing first-touch emails, logging everything in a CRM — is exactly the kind of repetitive, structured work that eats the hours I’d rather spend on client work. Jade does that pipeline continuously, and escalates to a human via ClickUp tasks when a lead needs judgment.
The agent is defined in layers of markdown directives (mission, soul, identity, tool rules) that load on session start, plus a registry of ~22 focused skills. Reasoning runs on a local LM Studio model served over a private network — no cloud LLM dependency for core operation.
The mandatory pipeline, enforced in the tool directives:
| Stage | What happens | Backed by |
|---|---|---|
| 1. Discovery | Find companies in target verticals | Tavily |
| 2. Qualification | Score fit (Strong/Medium/Weak); drop Weak | Tavily + Firecrawl (Scrapling fallback) |
| 3. Enrichment | Find and verify decision-maker emails | Hunter.io |
| 4. CRM entry | Create lead record with source + qualification state | ClickUp |
| 5. Outreach | Personalized 3-touch plain-text sequence + dated follow-up task | SMTP from a studio address |
Cross-cutting services: a shared exponential-backoff rate limiter for all API skills, a credential manager that masks keys in logs and validates them at boot, health diagnostics, a session-persistent sales memory file, and dated container backups of the persona/config for rollback.
| Layer | Tech |
|---|---|
| Runtime | Hermes agent platform, Docker, Oracle Cloud (ARM) |
| Model | Local LLM via LM Studio (private network) |
| Research | Tavily, Firecrawl (Scrapling fallback) |
| Enrichment | Hunter.io |
| CRM / tasks | ClickUp |
| Outreach | SMTP (dedicated studio address), Google Workspace |
| Skills | ~22 markdown skills + Python helper scripts |
Running in production. WordPress inbound-chatbot intake is scaffolded but paused pending authentication. Roadmap: activate inbound website lead capture, deepen reporting summaries, and expand the creative-gen pipeline (ComfyUI / Higgsfield) for outreach assets.
This is a public architecture showcase of a private production codebase. The source stays private; this repo documents how it’s built.
— Godfred Aidoo · godfredaidoo.com · LinkedIn · more projects