Sup
Claude + Obsidian knowledge companion. A persistent, compounding wiki vault based on Karpathy's LLM Wiki pattern — drop sources, ask questions, knowledge compounds.
npx -y skills add eliransu/digital-brain --skill supAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Read-only Top-10 dashboard built from the Obsidian vault. Reads `wiki/daily/<today>/{mentions.md, topics.md, linear.md, calendar.md, notes.md}` produced by `/digital-brain:sync` — does NOT call Gmail, Slack, Linear, or Calendar MCPs. If today's folder is missing or stale, prints a one-line prompt to run sync. Triggers on: "/digital-brain:sup", "/sup", "sup", "what's up", "what needs my attention", "where am I", "what's open".
SKILL.md
6.8 KB, as published. Nobody here has run it
sup: Vault-Only Top-10 Dashboard
/sup is fast because it does NOT live-query anything. It reads the markdown files that /digital-brain:sync already wrote into the daily vault folder and renders a Top-10 table.
Strict contract:
- No MCP calls. Not Gmail. Not Slack. Not Linear. Not Calendar. Not Notion. If you find yourself reaching for an MCP tool from
/sup, stop — that is a/syncjob. - Read-only. No writes to
wiki/. - Vault is the source of truth. If the vault doesn't have the data, say so and tell the user to run
/digital-brain:sync.
User identity: [email protected].
Workflow
-
Resolve today's folder.
today = date +%Y-%m-%d(local time). Path:wiki/daily/<today>/. -
Check freshness.
- If the folder doesn't exist → print:
no vault data for today — run /digital-brain:syncand stop. - If the folder exists but the most recent
## Update HH:MM(or top-of-file timestamp) is more than 4 hours old → print the dashboard anyway, but prepend a note:_⚠️ data is <N>h old — consider /digital-brain:sync_.
- If the folder doesn't exist → print:
-
Read all five files in parallel:
mentions.md,topics.md,linear.md,calendar.md,notes.mdfromwiki/daily/<today>/. Ifnotes.mdis missing (older sync), fall back to globbingwiki/notes/*.mddirectly. In-memory filter, no writes: drop any note row whose source file hasstatus: expiredorstatus: done, OR whoseexpires < today(defensive — the file may not have been swept yet). The actualstatusflip lives in/noteand/sync. (Optionally also peek at the prior day's folder if a Slack DM thread spans the boundary — but only if needed to fill the table.) -
Score and rank. Apply the Top-10 selection rules below. Build the table.
-
Render. Output the dashboard. End with a one-line next move.
Top-10 selection rules
| Row earns its spot when… | Skip when… |
|---|---|
| Explicit ask of you (question, review request, decision needed) | Reaction emoji, "ok"/"thanks"/"got it", Spotify links, banter |
| Hard deadline in the next 4h (Calendar event or "by HH:MM" in message) | Calendar invitation / accepted / declined / updated emails |
| Linear issue assigned to you with priority Urgent or High | [email protected], [email protected], |
| Linear mention in a comment within the last 48h | [email protected], AWS marketing |
who-does-what row where the assignee is stalled (>3 days no activity) | Linear-bot Slack messages that mirror an you message |
| Trip / travel / planning email needing a reply | Pure FYI announcements ("X accepted the invite") |
Note kind: task with status: open (always earns a row) | Notes with status: expired / done, or expires < today |
Note kind: reminder with due ≤ now + 24h | Reminders with due > now + 24h (those stay in notes.md but skip the table) |
Dedupe: If a Linear mention from linear.md already gets a row, do NOT also add the matching [email protected] email from mentions.md. If a note row carries a linear: ID that matches a Linear row, keep the note row (your own framing wins) and drop the duplicate Linear row.
Priority tier:
- 🔥 — deadline ≤ 4h away (Calendar event or explicit "by HH:MM" deadline in chat).
- High — explicit ask-of-you in last 24h, or Urgent/High Linear assigned.
- Med — older asks, context-only items.
Output format
## sup — <today HH:MM>
### Top 10
| # | Priority | Source | Item | Deadline / age | Action |
| - | -------- | ---------------------------- | ------------------------------------------ | ---------------- | -------------------- |
| 1 | 🔥 | Slack group DM (Erin/Carol…) | Dan: review red-team demo video | by 16:00 today | Watch + post take |
| 2 | 🔥 | Calendar | 14:30 Your Organization / AcmeCo (3 attendees) | in 35m | Open Mixmax prep doc |
| 3 | High | Linear TEAM-906 | Demo Review meeting Thu 10:00, you organize| 44h | Cut punch list |
| 4 | High | Gmail (Bob Lee) | Italy trip — finalize plan, hotels/trains | 6h ago | Reply with dates |
| 5 | High | Slack #product-innovation | Carol: when can we QA PR #899 on staging? | 27h ago | Reply w/ timeline |
| 6 | High | Note (task, TEAM-942) | ship BigCustomer retro | by 18:00 today | Open mirror note |
| 7 | Med | Note (reminder) | review red-team PR @[[Alice Smith]] | tomorrow 09:00 | Block 30m |
| … | … | … | … | … | … |
### Today's meetings (next 24h)
14:15 Globex/Initech Prep · 14:30 Your Organization/AcmeCo · 15:00 Your Organization // Northwind · 15:45 → 21:45 personal time (OOO)
### My open Linear (counts from linear.md)
In Progress (7) · Todo (6) · Triage (1) · Backlog (6) — top: TEAM-906 (Urgent), TEAM-873 / TEAM-875 / TEAM-648 (High)
### Active notes (counts from notes.md)
Tasks (3) · Reminders (2) — earliest: ship BigCustomer retro (by 18:00 today)
### Who does what (from linear.md "Mentions" + cross-ref)
- TEAM-936 — @alice — Todo — updated today
---
**Next move:** <one concrete next action — usually the #1 row, restated>
Rules
- No MCP. Period.
- Read-only. No writes.
- Top-10 is the headline. Sub-sections are short summaries from the daily files.
- If a section in the daily file is
_none_, omit it from sub-sections. - If today's folder is missing, just print the one-line prompt — don't fake the table.