Executive Summary of Mycroft

Mycroft scores 12 AI companies' Hacker News attention with a deterministic buzz score and a Llama 3 grounded sentiment read, then honestly walks through an attribution bug that misread an unrelated viral post.

5:48 video5 min readWatch on YouTube

Wall Street reacts to AI news on its own schedule, but engineers argue about it on Hacker News first. Mycroft is built on that gap, an experiment using AI to invest in AI by turning free public discussion into a structured, daily attention signal for the AI sector. Om Mali's week eight update walks through how the pipeline scores buzz, reads community opinion, and one honest place where it still gets attribution wrong.

What Mycroft actually tracks

Mycroft's Hacker News agent runs end-to-end every day, producing a buzz score for 12 companies plus a comment-grounded read of what the community actually thinks about each one. The underlying hypothesis is that argument volume on Hacker News is a leading indicator of what matters in the AI sector, and the project is built to explicitly test that idea rather than assume it. As Om puts it, AI made execution cheap, but it didn't make judgment cheap, which is the gap this project is trying to close with real engineering rather than vibes.

Computing a deterministic buzz score

Every day, a scheduled trigger walks all 12 companies through a Hacker News search, using an entity-and-term pair for each one, for example OpenAI paired with GPT-5, so the search catches relevant discussion under multiple phrasings. Quoting each search term forces exact phrase matching, which matters because without it, a term like AMD would match hundreds of unrelated posts. The pipeline deduplicates stories by ID, so a single post matched by two different search terms only counts once, then sums points and comments and keeps each entity's top three stories by score. If fewer than three stories turn up for a company, that result gets flagged as low confidence right away.

From there, a deterministic buzz score from 0 to 100 gets computed with no model involved, built from four capped components worth up to 30 points each for volume and engagement, 20 for front-page impact, and 20 for acceleration. Story counts are log-scaled, so a company with 100 stories in a week doesn't drown out everyone else in the ranking. Acceleration is measured against the previous day's score with that day's own acceleration already stripped out, specifically so momentum can't compound on itself artificially. With no history yet, an entity's acceleration component simply reads zero.

Reading community sentiment with Llama 3

The buzz score measures how much attention a company is getting; a separate step tries to capture what people actually think. Before the model sees anything, the pipeline fetches every comment on each entity's top stories, cleans and groups them by company, strips HTML, removes duplicates, drops deleted comments, and caps how many comments any one company can contribute. Up to 15 real comments per entity go into building an opinion prompt, which calls a Llama 3 70B model running on Groq, chosen specifically for speed since a full run makes over a dozen of these calls. The prompt is strict: summarize the community's opinion grounded only in what commenters actually wrote, and never invent a fact. The output includes a summary, a sentiment label, recurring themes, and notable opinions, and the pipeline enforces its own confidence rule here too, an opinion built on fewer than three comments gets flagged so a single comment can't pose as the community's view.

That strict grounding created a real bug along the way: Groq's strict JSON mode kept rejecting quote-heavy comment text, causing every single entity to fail. The fix was to drop strict mode, parse the output leniently, and ask for paraphrased highlights instead of verbatim quotes, which took that part of the pipeline from zero working entities to nine out of 12.

Week eight's dashboard

This week's work centered on building the AI buzz tracker dashboard itself. A leaderboard ranks every company by its buzz score with breakouts flagged, seven-day trend plots show each company's score across the past week so direction is visible rather than just a single day's number, and a theme breakdown tallies the model's theme tags, launches, funding, outages, controversy, to show what kind of news is actually driving the week. A community opinion card shows entity-by-entity reads: AMD came back negative from real skepticism in the comments, Nvidia's single comment was correctly flagged as low confidence rather than treated as a verdict, and Mistral showed a mixed read on valuation and competition drawn from five real comments. Every run lands as one row in Postgres, so the score, the narrative, and the opinion are logged and comparable day over day.

An honest finding about attribution

The most valuable part of this update might be the bug it admits to rather than hides. The pipeline currently picks each company's top story by Hacker News points, with no check that the story is actually about that company. A Show HN post for a slide tool called Bento hit over 1,000 points while only name-dropping OpenAI and Anthropic in passing, and because it was the most popular matching post, it became the top story for both companies. The community opinion step then summarized Bento's own comments as if they were opinions about OpenAI and Anthropic, and both came back reading positive, effectively praised for presentation software they had nothing to do with. The existing low-confidence guard didn't catch it, because 15 real comments existed; that guard only catches cases with fewer than three. The planned fix is to require the company's name appear in the story title itself, which is scheduled as the next piece of work after this week's dashboard build.

Key takeaways

  • Mycroft scores 12 AI companies daily using a deterministic 0-100 buzz score built from volume, engagement, front-page impact, and acceleration, with no model involved in that calculation.
  • Community sentiment is read separately using a Llama 3 70B model on Groq, grounded strictly in real comments and flagged as low confidence under three comments.
  • A strict JSON parsing bug on Groq initially caused every entity's sentiment analysis to fail; switching to lenient parsing with paraphrased highlights fixed nine of 12.
  • Week eight added a leaderboard, seven-day trend plots, a theme breakdown, and a per-company community opinion card, all logged to Postgres for day-over-day comparison.
  • An honest attribution bug let an unrelated viral Show HN post become the "top story" for OpenAI and Anthropic, producing a false positive sentiment read; the fix is requiring the company name in the story title.

Who this is for

This is for anyone interested in how AI-driven market signals actually get engineered, warts and all, including the kind of honest bug-hunting that separates a real pipeline from a polished demo. It's part of the Mycroft Financial AI project within the Humanitarians AI Fellows program.

Chapters

  1. 0:00Introduction: What is Project Mycroft?
  2. 0:25The Pipeline: Turning Discussion into Data
  3. 0:50Computing the Deterministic Buzz Score (0–100)
  4. 1:20Community Sentiment: Llama 3 & Grounded Opinions
  5. 2:00Week 8 Dashboard Tour: Trends & Leaderboards
  6. 2:45Honest Finding: The Attribution Bug and Future Fixes
Full transcript(auto-generated, with timestamps)

Introduction: What is Project Mycroft?

[0:00]Hi, I'm Om Mali. This video walks through week eight of Mycroft, my Hacker News AI attention signal project. It covers how the pipeline scores buzz and reads community opinion for each company, this week's new dashboard, and one honest finding about where it still gets attribution wrong. This is Mycroft's Hacker News agent. It turns free public discussion into a structured attention signal for the AI sector, a buzz score for 12 companies, plus a comment grounded read of what the

The Pipeline: Turning Discussion into Data

[0:26]Community actually thinks. It runs end-to-end every day. Part of Mycroft, an experiment using AI to invest in AI. Hacker News is where engineers argue about AI launches before Wall Street notices. The hypothesis that argument volume is a leading indicator, and this project explicitly practices it, it doesn't assume it. AI made execution cheap, it did not make judgment cheap. Week eight's work was building a dashboard, but before we look

Computing the Deterministic Buzz Score (0–100)

[0:51]At that, let's walk through what came before it, so this product actually makes sense. Every day, a scheduled trigger walks 12 companies through Hacker News search. A deterministic buzz score is computed straight from real engagement numbers, no model involved. A Grok narrative writes one paragraph per company on what happened and why. Then a full comment analysis, a saved snapshot, and a live dashboard. It starts with one free API. Entity term pair builds a search term per company, say entity as OpenAI and term as GPT-5. Merge and loop

Community Sentiment: Llama 3 & Grounded Opinions

[1:20]Over entities, cycle through them. HTTP request queries Hacker News. Quoting each term forces exact phrase matching, so AMD stops matching hundreds of unrelated posts. Loop over entities and merge one feed get metrics, which shapes raw hits into signal. It deduplicates stories by ID, so the same post matched by two search terms counts once, sums points and comments, and keeps each entity's top three stories by score. Those ID feed the comment analysis later. Fewer than three stories and it's flagged low confidence right here. Get previous run pulls yesterday's post cursor snapshot. Merge two is where today meets yesterday, feeding compute buzz score, the deterministic core, 0 to 100.

Week 8 Dashboard Tour: Trends & Leaderboards

[2:00]Four capped components, volume and engagement, 30 points each. Front page impact, 20. Acceleration, 20. Story counts are log scaled, so one company with 100 stories doesn't drown out everyone else. Acceleration is measured against yesterday's base score with yesterday's own acceleration stripped out, so momentum can't compound on itself. Cold start, no history, every entity reads a flat zero. Build run row assembles the ranked leaderboard. The score's real inputs, how many stories this week, how many points and comments they earned, how many cleared the front page threshold, and how much that's changed since yesterday. Four numbers in, one score out, zero to 100 every time. Before the model sees anything, a chain of steps fetches every comment on each entity's top stories, then cleans and groups them by company, stripping HTML,

Honest Finding: The Attribution Bug and Future Fixes

[2:47]Removing duplicates, dropping deleted comments, and capping how many anyone company can contribute. The buzz score says how much attention a company is getting. This says what people actually think. Clean and group comments hands up to 15 real comments per entity to build opinion prompts, which calls community opinion a Llama 3 370B model on Grok chosen for speed since a full run makes over a dozen of these calls. The prompt is strict, summarize the community's opinion grounded only in what commenters wrote, never invent a fact. Merge opinions collects the output, a summary, a sentiment label, recurring themes, notable opinions. Attach opinions parses those responses and it's where the hardest bug lived. Grok's strict JSON mode kept rejecting quote-heavy comment text, every entity was failing. The fix, drop strict mode, parse leniently, ask for paraphrased highlights instead of verbatim quotes. That took this branch from zero working to nine of 12. It also enforces the confidence rule, an opinion built on fewer than three comments gets flagged. So a one comment take can't pose as

The community's view. Build sector prompt asks one last question, is there anything real to summarize? Has usable opinions checks. If yes, cluster sector themes writes the sector mood on Grok. If not, it routes straight to skip sector clustering. Early on, with every entity degraded, the model still confidently invented a sector narrative from nothing. A pipeline should never let a model narrate a void. Coming to week eight's work, this week involved building the AI buzz tracker dashboard. The leaderboard ranks every company by its buzz score, zero to 100. Who's getting the most Hacker News attention right now with breakouts flagged. The seven-day trend plots each company's score across the past week, so you see direction, not just today's number. Who's rising and who's fading. And the theme breakdown shows what kind of news is driving the week, launches, funding, outages, controversy, by tallying the LLM's theme tag across the watchlist. The community opinion card, entity by entity. AMD reads negative from real skepticism. Nvidia, one comment correctly flagged low confidence. Mistral, a mixed read

On valuation and competition from five real comments. Every run lands as one row in Postgres, the score, the narrative, and the opinion, logged and comparable day-over-day. But here's an honest finding. The pipeline picks each company's top story by Hacker News points popularity, with no check the story is actually about that company. A show HN post for Bento, a slide tool, hit over 1,000 points while only name-dropping OpenAI and Anthropic in passing. Because it was the most popular matching post, it became the top story for both. Community opinion summarized its comments as each company's opinion. Both came back positive, praised for presentation software they had nothing to do with. The safety net missed it because 15 real comments existed. The low confidence guard only catches under three. It limits thin data noise, it doesn't fix picking the wrong story. The real fix, scheduled next, require the company's name in the story title itself. That's up to this week, fetch to dashboard running end-to-end with the honest gaps still labeled. Next, fixing attribution at the source.

More from Mycroft Financial AI

Humanitarians AI Lyrical Literacy Project