Skip to content
← Projects

Own project · running since October 2026

Opportunity Radar

My own agent system: it watches AI publications, respects each source’s usage rights and writes me an opportunities briefing.

Counted in the system’s own files on 26 Oct 2026.

The problem

Hundreds of AI reports and articles come out every week. Nobody can read them all, and consulting firms’ reports can’t be copied or put through an AI.

How it’s built

Two halves that work independently: a watcher in the cloud, with no AI, and an analyst on my laptop running Claude Code. Between them, a rights policy decides what may be read.

Opportunity Radar architectureCLOUD · GITHUB ACTIONS · NO AIMY LAPTOP · CLAUDE CODEallowedconsulting firms21 sources(RSS and sitemaps)radar watchtwice a dayReading queue+ email alertpublications.jsonMy uploadsradar ingestRights policyFull text(local only)Title, dateand link onlyClaude skills/process · /briefingSignals → themes→ opportunitiesOne-page briefingMe: read and rate

What the machine does and what I decide

Briefing process, step by stepCodeAIPerson1Watch 21 sources2Check each publisher’s rights3Read permitted full text; titles for therest4Extract signals through 6 lenses (A–F)5Group into themes: ≥ 2 independentorigins6Score opportunities; weak evidence pullstoward 37Write the one-page briefing8Decide, rate and talk to customers
My verdicts flow back in; the AI never edits them.

One real run

The briefing of 24 October 2026, step by step.

Sequence diagram of the 24 Oct 2026 briefingMeClaude Coderadar(Python)Publishers/briefingradar ingest395 newpublicationsfull text where allowed(robots.txt, 2 s apart)30 articlesfrom 11 publishers30 texts + digest of 365(68 consulting titles)9 signals, 1 theme,2 new opportunitiesradar index + checkbriefing 2026-10-24
Source: reports/2026-10-24-briefing.md and the /briefing skill.

What a briefing reads like

Summarised excerpt of the 24 Oct 2026 briefing. No consulting-firm text; opportunities and personal sections left out.

reports/2026-10-24-briefing.md

Strengthening theme

Cost per useful outcome replaces adoption as the AI metric

From 3 to 6 independent origins. The briefing’s own caveat: much of the evidence is vendor marketing.

Signals behind the theme and the week

  • SIG-0012

    A (soon) open-weight model nears the frontier at half the price. Simon Willison

  • SIG-0011

    Specialised small models cut inference cost by about 77%. Hugging Face blog

  • SIG-0013

    Agent Skills becomes an open Linux Foundation standard. Anthropic

Coverage

395 publications: 30 read in full from 11 publishers and 365 by title only, 68 of them from consulting firms.

Rules it keeps by itself

  • Consulting firms (McKinsey, BCG, Bain, Deloitte, PwC, EY, Accenture, Oliver Wyman): title, date and link only. Not even the feed summary.
  • Full documents stay on my laptop; a check before every commit blocks PDFs and keys.
  • Undated items stay undated. Nothing counts as read unless it was read.
  • No API bills: the cloud half runs on free GitHub minutes and the analysis on my Claude subscription.

Stack: Python (stdlib + PyYAML) · GitHub Actions · Claude Code: 13 skills · Markdown + YAML

Why it matters to you

It’s the same method I use in the diagnosis: evidence first, then scored opportunities, and a person decides. And it shows a system like this can run on its own every day while respecting data and licences.

Tell me about a process that eats your time.

In 30 minutes we’ll see whether AI can help. No commitment.