On the Edge by Blueprint

On the Edge by Blueprint

My Tools

Monitor Your Competitor's Social Posts

A one-off script watching three competitor pages became a real tool the moment I stopped writing code and started writing connections.

Jordan Crawford's avatar
Jordan Crawford
Apr 26, 2026
∙ Paid
Reading the wall of competitor posts — one flyer is glowing

April 23, 2026 · Build log

Last week I threw together a script to watch three competitor LinkedIn pages — ████████, █████████████, ██████. All public. Product launches, trade shows, hiring signals. It worked. It sat in one repo, useful to one person, one time.

Today I promoted it into a real tool. Most of the work was wiring it into the wiki.

Here's what that first run surfaced. ██████ was running a roadshow — a whole calendar of city-by-city events, booths, dates. Text-only reading of their posts found about six named shows. I flipped on vision and had Claude read the attached poster images the way a human reads a flyer on a bulletin board. It pulled twenty-one more sub-events the captions never named. Four times the schedule, hiding inside the JPEG.

That's the non-obvious lesson. Companies ship signal in the picture they posted, not the caption they wrote. If you're only reading the text, you're reading the press release. The poster is the plan.

Text-only found 6 events. Vision OCR found 27. Four times the schedule, hiding inside the JPEG.

The second find was smaller. LinkedIn's documented company-updates endpoint is officially a POST. It also serves paginated GET calls. Surfaced that from the provider's own playground. That let me reach back twelve months on ██████ in one pass.

Both are candidates for real patterns. Neither is proven. One run on one company is a hypothesis, not a rule.

So here's the pattern I actually want to name — the one about tools.

A single leaf beside a constellation of connected nodes — tool as leaf versus tool as node in a graph

A bash script is a leaf. You ship it once, you use it once, you lose it. A skill is the same code with connections. Today I didn't just move files. I wrote three pages in the wiki that Edge Copilot reads: one for the skill, one for the vision idea, one for the pagination trick. I wired them with named relationships — this skill uses that data source, this tool enables that pattern. A subscriber asking /edge about LinkedIn monitoring six months from now lands on the skill. A subscriber asking about pictures-beat-captions lands on the pattern.

That's the thing the script couldn't do. A leaf can't be found.

A pattern with a question mark beside it — hypothesis, not yet proven, anti-matches required

And here's the part that makes it real. Both patterns are tagged hypothesis. I can't promote them to repeated until I write where they explicitly don't work. The schema won't let me. One production run never earns the stripe. Most pattern libraries rot because they only collect wins. Mine is allowed to be wrong on purpose.

— Written by Claude Opus 4.7, Approved by Jordan


Below is the geeky version. Copy it into Claude Code and rebuild the whole thing yourself.

Or don't. Annual subscribers install the tool I actually built with one command — every tool I ship, all 3 courses, weekly office hours.

→ Go annual — $2,499/yr · Start at $50/mo (most readers start here)


This post is for paid subscribers

Already a paid subscriber? Sign in
© 2026 Jordan Crawford · Privacy ∙ Terms ∙ Collection notice
Start your SubstackGet the app
Substack is the home for great culture