Today
Agentline
Helps software companies show up in AI answers: whether ChatGPT, Claude and Gemini name them when buyers ask, why not, and who gets named instead. Then an agent drafts content from the company's verified facts and publishes it to sites like WordPress and DEV.to.
- Role
- Co-founder. I built the product and ran the business side
- Status
- Wound downWound down · Oct 2026
- When
- 2026 · age 18–19
5
Design partners
100+
Agent runs
How to read this
- Design partners
- Companies that used Agentline for free and gave us feedback on it in return. Not paying customers.
- 0 of 89
- A self-audit on Agentline's own brand: a baseline, not a customer result.
- Not shown here
- Any customer gaining visibility. The example below ends before anything was published.
Who it was for
Software companies that want AI assistants to name them when buyers ask for tools like theirs.
What I did
- Started it after seeing, while working at Sperm Racing, that there wasn't much of a GEO presence
- Built the audit: it sends the questions buyers ask to the OpenAI, Gemini and Claude APIs, keeps every answer, and records who gets named and which sources get cited
- Built the diagnosis: for each answer that left a company out, Claude picks a reason from a fixed set (a competitor was chosen instead, the question was read as a different category, no strong candidate, not in its training data, or a factual gap). The product labels it as AI inference, not measurement
- Built Boost, the agent that drafts content from verified facts, publishes it to sites like WordPress and DEV.to, and checks it actually went live. It can also decide to do nothing: when the question is outside what the company offers (an AI judgment, labeled that way), or when the company was already named in every captured answer (measured)
Who did what
- Me
- Co-founder. I built the product (the audit, the diagnosis and Boost) and ran the business side.
- Two co-founders
- A fellow Haas student and an M.E.T. student.
- AI coding agents
- Wrote a big share of our commits, with us directing and reviewing them.
Challenges
- Startups in our target market (our ICP, or ideal customer profile) were often bringing GEO staff in-house instead of outsourcing it, and the ones we met that did outsource were already working with established providers like Profound
One question, start to finish
Buyer question
“how to check what chatgpt says about my brand”
Measured
Agentline was named in 0 of 9 captured API responses: 0 of 3 each from Claude, Gemini and OpenAI. The answers cited sources like vertexaisearch.cloud.google.com and pingmybrand.com.
Why it lost (AI inference)
No clear winner: all three recommended other brand-monitoring tools instead of naming Agentline.
Recommended action
A third-party article on DEV.to, written only from verified facts about Agentline. Not a change to Agentline's own website.
Outcome
The plan was waiting for review when this was captured. No result was measured for it.
From a real Boost plan in our self-audit on Agentline's own brand (the Boost plan screenshot below).
From the code: when Boost recommends nothing
Boost can decide not to write anything. If the AI assessment judges a question to be outside what the company offers, it returns no action, and labels that judgment as inference, not measurement.
If the company was already named in every captured answer, it also returns no action. That one is measured.
Real excerpts from the Agentline codebase, trimmed where marked.
export function decideBoostIntervention(
input: BoostDecisionInput,
): BoostDecision {
const { gap, brand, aiAssessment: ai } = input;
const measured = gap.measured;
// … build shared context and pick destinations …
if (
ai !== null &&
ai.queryFit === "does_not_fit" &&
!measured.questionNamesBrand
) {
return noAction(
shared,
diagnosis(
shared,
"query_outside_offering",
"ai_inferred",
`${shared.observed} AI assessment (inference, not measured): ${ai.queryFitRationale ?? ai.rationale}`,
),
`No content is recommended. The AI assessment judged this question to be outside what ${brand.name} offers, so content written for it would be off-message and unlikely to earn recommendations. If that judgement is wrong, reject this plan with a note and add verified facts or tracked competitors that show the fit before the next audit.`,
);
}
if (gap.isFactualQuestion) {
return decideFactual(shared, owned);
}
if (gap.outcome === "present") {
return noAction(
shared,
diagnosis(shared, "already_visible", "measured", shared.observed),
`No content is recommended: ${brand.name} was named in every captured response to this question.`,
);
}
const decision = decideVisibilityGap(shared, owned, thirdPartyArticle);
return withOpportunities(shared, decision);
}What happened, when
2025
Working at Sperm Racing, I saw there wasn't much of a GEO presence, looked into the fixes out there, didn't like what I saw, and decided to build my own
2026
Built the audit, the diagnosis and Boost. Got 5 design partners and ran the agent 100+ times
2026
Early design partners said there was a big need. MyLife, a startup out of UC Berkeley, told us they were optimizing for GEO presence because that's where commerce is moving
2026
Met more startups in our target market: many were bringing GEO in-house, or already working with established providers like Profound
Oct 2026
Audited Agentline's own brand: named in 0 of 89 completed AI answers, with 1 run failed
Oct 2026
Wound down, because of what we heard from our target market
Evidence
One audit of Agentline's own brand: each row is one question sent to the OpenAI, Gemini or Claude API, and every answer is kept as evidence.
Requested Oct 7, 2026
What was asked: 30 buyer questions, with the three AIs' answers side by side, each marked mentioned or not.
Oct 2026
A Boost plan for one lost question: what was measured, why it lost (labeled as AI inference), and the one recommended action.
Oct 2026
Self-audit results: Agentline was named in 0 of 89 completed AI answers, 1 run failed, and the answers cited 424 sources.
Oct 2026
Note: A baseline on our own brand. It doesn't show any customer gaining visibility.
The landing page: paste your website, see how AI describes your brand.
Oct 2026
Supporting context
Stack: Next.js and TypeScript on Supabase (Postgres), the Claude, OpenAI and Gemini APIs, and background workers · GEO (generative engine optimization): how often AI answers mention and recommend a company
What I learned
Ship fast, and talk to more customers than lines of code you write.
Next time, I'd do a lot more customer interviews before building the product.
Millad Afshar