ML.

All Posts

Analyzing Firecrawl: How Do You Build an API That Turns the Web Into LLM-Ready Markdown?

Firecrawl is a data API that turns any website into clean, LLM-ready Markdown or structured JSON. It orchestrates in TypeScript, cleans in Rust, converts to Markdown in Go, races several scrape engines in a waterfall, and drives crawls with a hand-built Postgres queue. We analyze the scrape/crawl/map/search/extract pipelines and contrast them with Browser Use as "two ways to feed the web to LLMs."

Analyzing SkillSpector: How Do You Check Whether an Agent Skill Is Safe?

SkillSpector is NVIDIA's security scanner for AI agent skills. It vets a skill before install to find prompt injection, data exfiltration, and malicious code. We analyze its structure — a LangGraph map-reduce graph that fans out to 25 analyzers (static patterns, AST, taint, YARA, MCP, LLM semantics) and reduces them to a single risk score — against Superpowers and ponytail, which inject skills.

Analyzing ponytail: How Does a Skill That Makes Agents "Write Less Code" Ship to 16 Agents?

ponytail packs a single discipline — the "lazy senior dev" laziness ladder — into one SKILL.md and ships it to 16 agents via every mechanism (skill, hook, command, MCP, plugin), proving a ~54% code cut with a real agentic benchmark. We analyze it against Superpowers, and the idea that a skill is a bundle of discipline, distribution, and measurement rather than code.

Analyzing Browser Use: How Do You Show a Web Page to an LLM So It Can Drive a Browser?

Browser Use is a Python agent in which an LLM drives a real browser. It pre-chews the page into an indexed list of interactive elements for the LLM, drives the browser via CDP instead of Playwright, and runs the session with an event bus and watchdogs. We look at why this fits LLMs better, picking up from the earlier Playwright analysis.