Brain capabilities
Brain as of 2026-04-18T22:07:18.060Z -- 122 skills, 20 graduated, 314 runs in last 7 days.
Generated by state/bin/brain/capabilities.ts. Source of truth: state/log/capabilities.ndjson.
_This page is machine-generated. Do not edit by hand; regenerate with npx tsx state/bin/brain/capabilities.ts --markdown._
Image (5)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
ffmpeg | prose | snappy-ffmpeg/api.ts — Local ffmpeg primitive layer. | `` | 0 | - |
image | prose | Generate a self-inspected image via generate-iterate.sh and ship it to the CDN. | image: generate-iterate → linkedin-post → CDN (turns=1) | 1 | 0.50 |
remotion | prose | Programmatic video generation via Remotion. | `` | 0 | - |
snappy-stop | graduated | Stop a named background agent by id. Byline 🤖 row for that agent drops on next render. | /snappy-stop # stops "default" (back-compat) /snappy-stop conten | 0 | - |
video | prose | Video processing pipeline via Mac Mini SSH. | `` | 0 | - |
Email drafts (7)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
dormant-ping | prose | Surface clients dormant past threshold; draft a check-in DM; never auto-send. | score("dormant-ping", run_id, { score: shape_ok && never_sent && all_draft | 0 | - |
inbound | prose | Inbound detection and classification. | `` | 0 | - |
meeting-followup | prose | Fetch recent Krisp meetings, compose follow-up summary emails, create Gmail drafts for Robert to review and send. | import { fetchMeetings, fetchMeetingDocument, type KrispMeeting } from "../lib/k | 13 | 0.46 |
outbound | prose | Channel router for outbound messages. | `` | 0 | - |
ray-send | graduated | Convert a ready ray-drafts row into a Gmail draft. Called from the slash-command after the operator approves the draft. Never auto-sends — Gmail still requires a click. | /ray-send # latest ready draft /ray-send <YYYY-MM-DD> # specifi | 0 | - |
sweep | prose | Multi-channel inbox sweep (Slack + Gmail + LinkedIn + Skool). Returns actionable items; scope-only by default. | <no args> | 5 | 0.97 |
testimonial-ask | prose | For clients with a recent silent-ship, draft a testimonial request; never auto-send. | score("testimonial-ask", run_id, { score: shape_ok && never_sent && all_tone_o | 0 | - |
Meeting actions (10)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean | ||
|---|---|---|---|---|---|---|---|
catchup | prose | Per-client pre-meeting brief: commits + messages + open commitments since last meeting. | score("catchup", run_id, { score: shape_ok && tone_ok && has_all_four_sign | 0 | - | ||
commitment-audit | prose | Cross-check promised deliverables (Krisp + inbox) against actual completions (commits + Xano). | score("commitment-audit", run_id, { score: orphaned.length + silent_shipped.le | 2 | 0.93 | ||
corpus | prose | Krisp transcript corpus operations for all snappy-* skills. | `` | 0 | - | ||
krisp-inbox | prose | Read latest Krisp meetings and surface follow-ups waiting on Robert. | `` | 0 | - | ||
meeting-triage | graduated | Surface commitments Robert made in a recent Krisp meeting so he can act on them in the 60 seconds after hanging up. Reads the Krisp action-items cache, filters to Robert's open items, ranks by urgency, and writes to state/log/followups.ndjson. The byline reads that log and routes to /snappy-triage. | npx tsx state/bin/meeting-triage/run.ts | 9 | 1.00 | ||
morning-brief | prose | Chain sweep + krisp cache into a one-screen brief of what needs Robert today. | <no args> | 5 | 0.78 | ||
ray-todo | prose | Surface Krisp commitments Robert made but hasn't closed. | `score("ray-todo", run_id, { score: (open.length > 0 \ | \ | reason_empty) ? 1.0 :` | 0 | - |
scheduling | prose | Meeting scheduling for all snappy-* skills. | `` | 0 | - | ||
snappy-triage | graduated | Turn the byline's 📬 meeting: N items row into a two-keystroke picker. For each open followup, call AskUserQuestion with four options — Mark done / Delegate to <name> / Queue for Friday update / Forget. Writes the resolution back to state/log/followups.ndjson so the byline row drops. This is the action half of Commit 2; meeting-triage is the detection half. | /snappy-triage | 1 | 1.00 | ||
tool-scout | prose | Scan Krisp transcripts for tool mentions Robert demoed and check if each has a snappy skill / mini lib. | score("tool-scout", run_id, { score: 1.0, mentioned: mentioned.length, cov | 2 | 1.00 |
Browse / scrape (4)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
api-sniffer | prose | Capture XHR/fetch traffic from a real browser session | `` | 0 | - |
dom-cartographer | prose | master DOM mapper helpers. | `` | 0 | - |
linkedin-post-scraper | prose | Daily LinkedIn feed scrape — captures posts from network for content mining. | {"ts":"2026-04-16T18:00:00Z","skill":"linkedin-post-scraper","run_id":"<uuid>"," | 5 | 0.44 |
scrape-competitor-pricing-weekly | prose | Weekly competitor pricing check — captures pricing pages for drift detection. | `` | 0 | - |
Memory ops (5)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
brain-growth | graduated | Daily growth snapshot — skills, loader pitfalls, eval rolling means, parity, breakage, sync drift, memory. Shows the brain getting bigger and sharper over time. Feeds the Brain view. | --deltas | 5 | 1.00 |
content-mine | graduated | Extract citable atoms from transcripts/commits into content_atoms, filtered by Robert-signal. | latest | 44 | 0.95 |
memory-consolidation | prose | Daily memory cleanup — deduplicate, prune stale entries, merge related memories. | `` | 4 | 0.84 |
mine | prose | Content mining operations for all snappy-* skills. | `` | 0 | - |
positioning | prose | Voice constitution, tone rules, banned phrases. | `` | 0 | - |
Code gen (15)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
bootstrap | prose | The meta-skill. Closes a gap in snappy-os by porting a kernel skill into state/lib + state/skills without human editing. | cp ~/projects/snappy-kernel/skills/$kernel_skill/api.ts \ ~/projects/snappy-o | 4 | 1.00 |
content-polish | prose | Polish a draft until voice.checkTone() passes. Eval is the gate, not the exit code. | for turn in 1..max_turns: dispatch { model: "gemini", prompt: <draft> | 5 | 0.80 |
database | prose | Xano database catalog and content engine queries. | `` | 0 | - |
deploy | prose | Deployment orchestrator for all snappy-* skills. | `` | 0 | - |
evolve | graduated | 999-iteration hill-climb on self — propose, apply, measure, keep if better, revert if worse. | npx tsx state/bin/evolve/run.ts --max=3 # smoke (3 iterations) npx tsx state | 0 | - |
graduate | graduated | Promote a prose skill to graduated by scaffolding state/bin/<name>/run.ts from its prose code blocks. | # Read top candidate from state/log/graduation-candidates.ndjson and graduate it | 17 | 1.00 |
hooks | prose | Hook management for the Claude Code harness. | `` | 0 | - |
implement-spec | prose | Meta-verb — dispatch a subagent to implement a plan section, then audit the output and log an eval row so build work produces PID signal. | append("chain", { run_id, skill: "implement-spec", action: "implement-spec-done" | 2 | 0.38 |
infra | prose | Infrastructure foundation for all snappy-* skills. | `` | 0 | - |
notion | prose | Legacy Notion skill. | `` | 0 | - |
query-xano | prose | Read-only Xano introspection + content-engine SQL. | import { listTables } from "../lib/xano.ts"; const rows = await listTables(); // | 2 | 1.00 |
skill | prose | snappy-skill/api.ts — Meta-skill scaffolder for the Snappy namespace. | `` | 0 | - |
swarm | prose | snappy-swarm/api.ts — How to construct agent prompts for BOTH code-review and browser-testing agents, collect results, resolve conflicts, and decide when to stop. | `` | 0 | - |
website | prose | snappy.ai site health and deploy operations for all snappy-* skills. | `` | 0 | - |
xano-mcp | prose | MCP server health checks and tool testing. | `` | 0 | - |
Schedule / loops (9)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
calendar | prose | Google Calendar (readonly) for the weekly Ray-update — pull Mon-Fri events from Robert's primary calendar via service-account JWT. | `` | 2 | 0.50 |
pid-regen | prose | Self-improvement loop — detect declining skills from eval trends and regenerate their spec pages. | score("pid-regen", run_id, { score: rewrites_passed_lint === rewrites_atte | 0 | - |
polish-digest | graduated | Aggregate recent content-polish runs; surface dominant voice violations (drift report). | const raw_polish_rows = evals_ndjson.filter(r => r.skill === "content-polish" && | 22 | 1.00 |
snappy-autopilot-twocron | graduated | state/log/breakage-report.ndjson ▲ ▲ | 0 | - | |
snappy-pause | graduated | Pause a named background agent without forgetting it. Tick skips it until /snappy-resume. | /snappy-pause # pauses "default" /snappy-pause content-miner # | 0 | - |
snappy-resume | graduated | Resume a previously paused background agent. Tick starts firing for it again. | /snappy-resume # resumes "default" /snappy-resume content-miner | 0 | - |
snappy-sync | prose | Push and pull the snappy-os canonical between local disk and DO Spaces via the Worker. Joe never holds DO credentials. | append("chain", { run_id, skill: "snappy-sync", action, files, | 0 | - |
sync | graduated | Pull-then-push git sync for snappy-os — keeps every machine current without human-in-the-loop. | cd ~/projects/snappy-os git status --porcelain | 11 | 0.59 |
sync-creds | prose | Pull the latest .env.cache from the authoritative source — new-machine setup or post-rotation propagation. | # On the target machine, pull from the authoritative machine: rsync -av macbook- | 0 | - |
Compute / control (15)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
analytics | prose | Metrics aggregator for all snappy-* skills. | `` | 0 | - |
chain | prose | Ported from kernel. | `` | 0 | - |
channel-contract | prose | Ported from kernel. | `` | 0 | - |
client-ray | prose | Ray's weekly Friday dev update. | `` | 0 | - |
dashboard | prose | snappy-dashboard/api.ts — Base URL for all examples: ``bash BASE="https://backend-dashboard-api.fly.dev" `` | `` | 0 | - |
ops | prose | Operator console for the Snappy agent system. | `` | 0 | - |
settings | prose | Credential management API for all snappy-* skills. | `` | 0 | - |
shell | prose | snappy-shell/api.ts — Kernel-loaded fallback runner. | `` | 0 | - |
snappy-go | graduated | Start a named background agent with a directive prompt. Multiple agents can run in parallel; each fires every 10 min until max_ticks or /snappy-stop. | /snappy-go "Keep going, close all remaining gaps" # name defaults t | 20 | 1.00 |
snappy-list | graduated | List every running snappy-os background agent with ticks/cap/age. Routes to pause/resume/stop. | /snappy-list | 0 | - |
snappy-recover | prose | Snapshot, restore, or rollback the snappy-os canonical via DO Spaces bucket versioning. Restore is non-destructive; rollback requires explicit apply + label confirmation. | append("chain", { run_id, skill: "snappy-recover", action, sna | 0 | - |
snappy-run | prose | Run a snappy-os agent on demand. Triggered when the user says /snappy-run <agent> or asks "run the X agent now". Looks up the agent's runcmd from state/bin/byline/agents.sh, fires it in the background, reports PID + tail path. | inbox-sweep | 6 | 1.00 |
snappy-statusline | prose | ▲ autopilot:on 2m recipes:4 goals:1 push:13m doctor:20/21 ● smoke-ubuntu | 0 | - | |
update | prose | Dev updates to client channels for all snappy-* skills. | `` | 0 | - |
xano-dashboard | prose | Browser-driven Xano admin operations. | `` | 0 | - |
Audit / triage (12)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
ai-spend | prose | Roll up dispatch + shell + API spend from ndjson logs into a daily total. | const source_rows = dispatches_ndjson.length; const sum_check = Object.values(by | 2 | 1.00 |
brain-showcase | graduated | Receipts-based audit of what the brain has actually produced (images, drafts, followups, mining, pitfalls, self-rewrites). | npx tsx state/bin/brain/showcase.ts --date 2026-04-18 | 2 | 1.00 |
bug-triage | prose | Cluster incoming bug signals (sweep + GitHub + Xano errors) by root cause; emit priority-ranked triage. | score("bug-triage", run_id, { score: shape_ok && clusters_are_unique ? 1.0 | 2 | 0.94 |
client-pulse | prose | Per-client health check: last contact, open commitments, unbilled work, dormant risk. | const last_contacts_valid = clients.every(c => c.last_contact_ts <= Date.now() | 1 | 0.50 |
commit-report | prose | Git-log roll-up across active repos, grouped by repo + scope. | const raw_count = repos.reduce((a, r) => a + revListCount(r, since), 0); const p | 7 | 0.57 |
gh-triage | prose | List open issues and PRs across active repos, cluster by label, surface items aged > 7 days without response. | { total_open, by_label: { [label]: count }, stale: [{ repo, number, title, k | 3 | 1.00 |
inbox-sweep | prose | snappy-inbox-sweep/api.ts — Deterministic multi-channel inbox sweep. | `` | 8 | 1.00 |
linkedin-likes-only | prose | Daily LinkedIn engagement — likes only, no comments, no replies, no posting. | export AGENT_BROWSER_SESSION="linkedin-likes-$$-$(date +%s)" | 1 | 1.00 |
ray-update | prose | Weekly update draft for Ray — aggregates commit-report + client-pulse + ai-spend, then hard-gates on content-polish. | score("ray-update", run_id, { score: shape_ok && polish_score === 1.0 ? 1. | 5 | 0.80 |
reconcile | prose | Cross-check Xano invoices vs Stripe payments vs bank deposits; flag mismatches. | score("reconcile", run_id, { score: shape_ok && all_three_sources_loaded ? | 0 | - |
snappy-fix | graduated | Triage and fix the top open p0/p1 issue in snappy-os. Triggered when the user says /snappy-fix or asks "fix the top issue". Reads breakage-report.ndjson + frictions.ndjson, picks the highest-severity oldest open row, shows its JSON (especially repro/expected/actual/fix), and either applies the fix or routes the operator to the file that owns it. | <no args> | 79 | 1.00 |
testimonial-scan | prose | Query the content-engine DB for existing testimonials and score fresh candidate quotes on a 4-dimension rubric (specificity, authenticity, impact, clarity). | import { getTestimonials, scoreTestimonial } from "../lib/testimonials.ts"; // | 0 | - |
Publish (12)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
blog | prose | Blog MDX operations for all snappy-* skills. | `` | 0 | - |
community | prose | Skool HTTP API operations for snappy-* skills. | `` | 0 | - |
course | prose | Free agentic-building course structure. | `` | 0 | - |
post | prose | Unified distribution router for all snappy-* skills. | `` | 0 | - |
publish | prose | Git-based MDX publishing operations for all snappy-* skills. | `` | 1 | 1.00 |
publish-bootstrap | prose | Publish snappy-os (the npm bootstrap) to the npm registry. | bash state/bin/publish-bootstrap.sh # patch bump (0.1.0 → 0.1.1 | 0 | - |
ray-sheet-embed | prose | Embed a polished ray-update markdown file as a fresh tab in the live business-tracking Google Sheet, idempotent re-runs replace the prior tab. | npx tsx state/bin/ray-sheet/embed-update.ts state/log/ray-update/2026-04-18.md | 1 | 1.00 |
ray-update-friday | graduated | Friday 18:00 publish gate for Ray's weekly update. Scans state/log/ray-update/ for a fresh draft, scrubs advisor-question sections, emits a status=ready row to ray-drafts.ndjson so the byline can surface "📬 Ray draft ready". | 📬 Ray draft ready · score X · → /ray-send | 2 | 1.00 |
ship-lesson | prose | Upload a course lesson draft to Skool. Serialized (no parallel writes). Content-polish gate before upload. | const draft = readFileSync(draft_path, "utf8"); const polish_result = await poli | 0 | - |
skool-daily-post | prose | Daily Skool community post — surfaces a lesson, tip, or discussion prompt. | `` | 3 | 0.67 |
skool-partner-cta | prose | Recurring Skool community post asking members to complete the four Skilljar courses required to activate the Claude Partner Network. | bash state/bin/image/generate-iterate.sh \ --illustration "<6-layer fragment — | 3 | 0.83 |
walkthrough | prose | Recipe-driven annotated tutorial capture. | `` | 0 | - |
Unclassified (28)
| Skill | Graduation | Description | Sample input | 7d runs | 7d mean |
|---|---|---|---|---|---|
ads | prose | YouTube advertising targets and metrics. | `` | 0 | - |
ai-models | prose | Direct OpenAI API for all snappy-* skills. | `` | 0 | - |
box | prose | Box server HTTP API for all snappy-* skills. | `` | 0 | - |
brain-capabilities | graduated | Capability catalog -- scan state/skills/, classify by verb_family, emit capabilities.ndjson + brain-capabilities.md wiki page for the Brain view. | npx tsx state/bin/brain/capabilities.ts # write ndjson only npx tsx s | 0 | - |
brain-insights | graduated | Show unread proactive findings the brain detected about itself (new capabilities, new pitfalls, parity climbs). Cursor-based so each insight is shown once. | # The byline shows "💡 N new insights" # Operator runs: /brain-insights | 0 | - |
client-orbiter | prose | Orbiter-specific client API. | `` | 0 | - |
client-scott | prose | Scott-specific client API. | `` | 0 | - |
client-template | prose | Factory for per-client API modules. | `` | 0 | - |
client-total | prose | Total CRM client API. | `` | 0 | - |
clients | prose | Client lifecycle router for all snappy-* skills. | `` | 0 | - |
content | prose | Content production orchestrator for all snappy-* skills. | `` | 0 | - |
desktop | prose | macOS desktop automation via Midscene vision AI. | `` | 0 | - |
docs | prose | Notion REST API operations for all snappy-* skills. | `` | 0 | - |
freshbooks | prose | FreshBooks operations via direct API for all snappy-* skills. | `` | 0 | - |
gateway | prose | Skills gateway operations at skills.snappy.ai. | `` | 0 | - |
gemini | prose | Google Generative AI REST API for all snappy-* skills. | `` | 0 | - |
imessage | prose | iMessage sending via Mac Mini SSH. | `` | 0 | - |
maintenance | prose | Project health checks across all Snappy infrastructure. | `` | 0 | - |
offer | prose | Business offer, model, and pricing data. | `` | 0 | - |
openrouter | prose | OpenRouter multi-vendor LLM gateway for all snappy-* skills. | `` | 0 | - |
os | prose | The kernel manifest — what every snappy-os installation is guaranteed to have on disk, what self-maintains it, and how it expands. | `` | 0 | - |
playbook | prose | WeTube SS mastermind 6-week curriculum structure. | `` | 0 | - |
ray-sheet | prose | Populate Ray's business-tracking Google Sheet from FreshBooks daily. 5 tabs (Cash / Hours / Invoices / Receivables / Retainer Balance) refreshed at 06:00 ET. | 0 10 * * * /Users/robertboulos/robot-rob/claude-cron.sh ray-sheet >> /Users/robe | 3 | 1.00 |
sales | prose | Sales pipeline operations via snappy-knowledge. | `` | 0 | - |
sheets | prose | Google Sheets operations via service-account JWT — create workbooks, share, read, append. | `` | 4 | 0.00 |
transcripts | prose | Transcript retrieval for all snappy-* skills. | `` | 0 | - |
whatsapp | prose | WhatsApp messaging via Meta Cloud API for all snappy-* skills. | `` | 0 | - |
youtube | prose | YouTube operations via direct YouTube Data API v3. | `` | 0 | - |
Legend
- graduated = deterministic script in
state/bin/<skill>/ - prose = still markdown-only; graduates after repeat identical execution
- 7d mean = arithmetic mean of
scoreinstate/log/evals.ndjsonover the last 7 days - unclassified verb_family = gap in
CLASSIFIERSinstate/bin/brain/capabilities.ts; add a keyword