DEV Community

Cover image for Day 23 of 60: Someone Asked Me a Question on Day 3. I Put It on My Build List. Today I Shipped the Answer.
Cess Mbugua
Cess Mbugua

Posted on

Day 23 of 60: Someone Asked Me a Question on Day 3. I Put It on My Build List. Today I Shipped the Answer.

This build has been on my list since Day 3.

Three weeks ago I posted my client onboarding pipeline. A commenter read it carefully and asked a question that stopped me in my tracks:

"The space has a lot of tools for the work side but almost nothing for evaluating the client side before committing. What's the specific problem you're solving for freelancers?"

I didn't have a full answer that day. So I wrote it down, added it to my build list, and kept going.

Today I built it.

Meet ClearVet.


## The Problem

Imagine you run an AI automation business. Enquiries come in every day. Most are not a good fit. Wrong budget. Vague problem. Unrealistic timeline. Industries you cannot help with.

To figure out which ones are worth your time you have to read every single one manually, ask follow up questions, think about it, and decide. Twenty enquiries a week is hours of screening before you do any real work.

ClearVet automates that entire process.


## The Full Pipeline

Potential client fills Typeform
↓
n8n receives submission via webhook
↓
ClearVet FastAPI endpoint
↓
Claude evaluates across 6 dimensions as background task
↓
Score calculated — HIGH, MEDIUM, or LOW
↓
Slack message sent with dimension scores and approval buttons
↓
Human approves or rejects via API
↓
Decision logged to PostgreSQL with timestamp and notes
Enter fullscreen mode Exit fullscreen mode

## The 6 Evaluation Dimensions

Budget Fit: is the budget realistic for the solution needed?
Problem Clarity: how well defined and specific is the problem?
Timeline Realism: is the timeline actually achievable?
AI Readiness: is the client ready to adopt AI solutions?
Industry Fit: does the industry align with our capabilities?
Growth Potential: what is the long-term revenue potential?

Claude scores each dimension 0-10 with reasoning. Overall score determines the recommendation tier.


## A Real Evaluation Output

{
  "company_name": "Nairobi Logistics Ltd",
  "overall_score": 7.5,
  "recommendation": "high",
  "scores": {
    "problem_clarity": {"score": 9, "reasoning": "Problem is exceptionally well-defined"},
    "growth_potential": {"score": 8, "reasoning": "200 reports daily suggests high volume"}
  },
  "status": "approved",
  "approved_by": "Cess"
}
Enter fullscreen mode Exit fullscreen mode

## What Makes This Different

Human in the loop. Every evaluation requires a human decision before any action is taken. Claude does the analysis. You make the call.

Full audit trail. Every evaluation, score, dimension reasoning, decision, and timestamp stored in PostgreSQL. Nothing disappears.

Background processing. The API responds immediately. Claude evaluates in the background. Slack notification arrives when ready.

Real intake form. Connected to Typeform via n8n webhook. The same form a real potential client would fill out.


## What This Is Worth

A system like this for one agency is a KES 80,000-150,000 setup fee. It replaces hours of manual screening every week. The ROI is immediate and measurable.

37 more to go.

🔗 Full project on GitHub → https://github.com/mbuguacessy-glitch

python #fastapi #claudeapi #n8n #automation #buildinpublic #learninpublic #clearvet #100DaysOfCode @keynition

Top comments (0)