scout-plugin
Health Warn
- No license — Repository has no license file
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Pass
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
Autonomous daily briefing for Claude Code that cross-checks Slack, Gmail, Calendar, Linear & GitHub — so nothing falls through the cracks, and you can trust what it surfaces.
Scout
The autonomous daily briefing that cross-checks all your work tools — so nothing falls through the cracks, and you can trust what it surfaces.
Scout runs unattended as scheduled Claude Code sessions. It reads Slack, Calendar, Gmail, Linear, GitHub, and meeting transcripts; cross-checks every finding against the others; and each morning hands you a short list of what actually needs you — every item tagged by how many sources confirm it. What you get is a persistent, interlinked knowledge base you can browse in Obsidian, and a daily action list you can trust because you can see its work.
You shouldn't have to manually reconcile what happened across seven tools yesterday, what's still pending from last week, or what changed while you were in meetings. Scout does it — and when your tools disagree, it flags the contradiction instead of quietly picking a side.
Why Scout is different
Readable-markdown memory, scheduled runs, and a self-improvement loop are table stakes now — every serious agent has them. Scout's difference is what it does before it tells you anything:
- It cross-checks. No single tool is treated as the truth. A calendar invite is verified against the transcript; a Linear ticket against the PR; an email against Slack. Claims only one source supports are flagged, not asserted.
- It shows its confidence. Every entry is tagged —
verified(2+ sources),single-source,unverified,stale, orcontradicted. You always know how much weight to give it. - It's structured, not just stored. A formal knowledge graph — typed people, projects, tasks, and relationships you can actually query — not a flat pile of notes.
- It surfaces disagreement. When your sources conflict, that contradiction is the signal. Scout shows you both sides instead of guessing which is right.
Most assistants summarize. Scout corroborates — and that's the difference between output you skim and output you act on.
Install
curl -fsSL https://raw.githubusercontent.com/jordanrburger/scout-plugin/main/install.sh | bash
Then open Claude Code and run /scout-setup to create your vault.
Updating later: run /scout-update — it refreshes the plugin and upgrades your vault (sidecar-safe).
Quick Start
Scout is distributed as a Claude Code plugin via a built-in marketplace catalog (.claude-plugin/marketplace.json). Install it with:
/plugin marketplace add jordanrburger/scout-plugin
/plugin install scout@scout-plugin
The first command registers this repo as a plugin marketplace; the second installs the scout plugin from it. After installing, the /scout-* commands and skills are available in every Claude Code session.
Other ways to install
- One-off (no install):
claude --plugin-dir /path/to/scout-pluginloads the plugin for a single session without persisting it.- From a local clone via marketplace:
/plugin marketplace add /path/to/scout-plugin(give it the directory containing.claude-plugin/marketplace.json).See Discover and install plugins for the full Claude Code plugin documentation.
Then run /scout-setup in any Claude Code session. The setup wizard detects your connected tools (MCP connectors, gh CLI, local directories), collects your details (name, Slack ID, email), scaffolds the Scout directory with a knowledge graph ontology, assembles personalized skill files from phase modules matching your connectors, sets up budget tracking scripts, and configures scheduling. Done in under 5 minutes.
Check your installation at any time:
/scout-status
This shows connector health, schedule status, knowledge base freshness, knowledge graph health, budget tracking, and recent run history.
Launch sessions manually with skills:
/scout-briefing # Morning briefing (or auto-detected mode)
/scout-consolidation # Delta scan
/scout-dream # Evening self-improvement
/scout-research # Knowledge expansion
Or run interactive sessions in the current conversation:
/scout-work # Walk through today's action items one at a time, approve each action
/scout-meta-review # System-level audit — are sessions running, is the mistake audit trending well, are proposals flowing?
How It Works
Six session types, split into scheduled background sessions (Briefing, Consolidation, Dreaming, Research) and interactive conversation sessions (Work, Meta Review):
Morning Briefing (once per day, weekdays)
Full cold-start. Reads the entire knowledge base, queries every connected tool, cross-checks findings against each other, writes a fresh action items file, and updates the KB. Every action item must pass a multi-point cross-check before being committed — a meeting on your calendar is verified against transcripts, a Linear issue is verified against GitHub PRs, an email thread is verified against Slack messages. The briefing also queries the knowledge graph for personal tasks, deadline escalations, and birthday alerts. The briefing ends with a notification summarizing what needs your attention today.
Weekend Briefing (Saturday/Sunday mornings)
A lighter version designed for weekends. Focuses on personal tasks from the knowledge graph, urgent work deadlines, Gmail, Calendar, and GitHub PR reviews. Skips deep Slack channel scanning and Granola transcript processing. Includes a Monday Preview section to help prep for the upcoming week.
Consolidation (2-3x per day, weekdays)
Lightweight delta scan in six phases:
- What the user did — Reads recent Claude Code sessions, sent messages, committed code, and updated issues to build a picture of your activity since the last run.
- What happened — Queries all connectors for new events: messages, meetings, emails, issue updates, PR activity.
- Per-item reconciliation — Walks each action item and reconciles it against fresh data from both phases. Updates, flags staleness, resolves contradictions. Also checks personal task completion signals (e.g., Gmail confirmations).
- KB audit — Picks files for deep review. Every audit must pass a depth gate: "Would the user learn something new from what I touched?" Surface-level timestamp updates don't count. Includes GOOD vs BAD examples of audit work.
- Commit — Stages all changes and commits with a descriptive message summarizing what was found.
- Notification — Sends a summary of new findings, updated action items, and KB changes. Always mentions review queue items if any were added.
Dreaming (evening, 1-2x)
Self-improvement loop:
- Feedback processing — Reads reactions and replies on Scout's notifications. A thumbs-up on an action item confirms it was useful. A thumbs-down flags a pattern to avoid. Scans for inline comment markers (
//==<< comment >>==//) embedded in KB files. These signals feed back into future runs via the mistake audit. - KB deep work — Runs knowledge graph integrity checks (ontology validation, personal task staleness detection). Scores KB files by staleness, importance, and interconnectedness. Picks the highest-value targets for deep improvement — restructuring, merging related notes, surfacing buried insights. Generates a Scout Digest summarizing all sessions and items needing user attention.
- Wishlist — Checks the wishlist for user-requested features or improvements and maximizes progress — completing multiple sub-tasks or even multiple items per run.
Research (opportunistic, off-peak)
Knowledge expansion:
- Target selection — Checks the research queue for explicitly queued topics. If empty, scores KB entities by research need (recently interacted, thin context, high priority).
- Deep research — Web search, documentation reading, GitHub activity scanning, internal tool queries. Different research depth guidelines for people, organizations, projects, and technologies.
- Knowledge integration — Updates entity files, extends the knowledge graph with new relationships, creates new entity files for discovered entities. Validates against the ontology schema.
- Commit & notify — Commits findings, updates the session log, sends a concise summary to the user.
Work (interactive, user-triggered)
Runs in the current conversation instead of as a background process. Walks through today's action items one at a time — presenting each item with fresh context (latest PR state, last Slack reply, meeting conflicts), a recommended action, and a draft of any outbound message or command. Executes each item only with explicit approval (do it, skip, or a modification).
Commits land in the git log as work [HH:MM]: <summary>, distinguishing manual work from scheduled runs.
Meta Review (interactive, diagnostic)
A system-level audit that sits above the individual session types. Does not read SKILL.md or DREAMING.md — instead it reviews the Scout system itself: are sessions actually running? Is the mistake audit trending better or worse? Are dreaming proposals flowing or clogged? Is the data-source coverage matrix consistent across session types? Writes a report to knowledge-base/meta-review-YYYY-MM-DD.md, applies low-risk quick fixes directly, and writes proposals for anything that needs judgment. Run weekly, or when something feels off.
Everything is a git repo. Every change Scout makes is committed with a descriptive message. The commit history is as much a part of the system as the files.
Meeting Management
Scout tracks your recurring meetings in meetings/. Each meeting has:
- A home file with attendees, running themes, key decisions
- Dated session files that evolve through three phases: prep → notes → synthesis
Before each meeting, Scout generates a prep file with context from the last session, related project status, and suggested talking points. After meetings, it finds transcripts from Google Drive, synthesizes them with your manual notes, and propagates decisions and action items to project files.
Inbox
inbox.md is your quick-capture file. Dump anything — meeting notes, reminders, ideas, personal tasks. Scout processes it every run and routes entries to the right place:
- Meeting notes → the relevant meeting's home file
- Action items → today's action items
- Personal tasks → knowledge graph entities
- Ideas → research queue
Pre-Session Hooks
Scout's runner scripts call three shell hooks before launching Claude. Each hook writes a cache file into .scout-cache/, which the skill files read instead of running the same queries from inside the session. This trades a few seconds of shell work for a meaningful reduction in tool calls and tokens per session.
| Hook | Output | What it replaces |
|---|---|---|
hooks/kb-pre-filter.sh |
.scout-cache/kb-filter.md — KB files bucketed into stale / fresh / undated, with ages |
Walking every KB file from inside the session to check "Last updated" dates |
scripts/pre-session-data.sh |
.scout-cache/session-context.json — recent git log, open PRs, PR review requests, KB file dates, open personal tasks |
git log, gh pr list, gh search prs, ontology parser queries |
scripts/cc-session-cache.sh |
.scout-cache/cc-sessions.md — non-Scout Claude Code sessions from the last 24h: project paths, first prompts, files touched |
Discovering + parsing ~/.claude/projects/*/*.jsonl manually |
The .scout-cache/ directory is gitignored — everything in it is recomputed on every run. If a hook fails, the runner script continues anyway and the skill falls back to live queries. Hooks never block a run.
Supported Connectors
| Connector | What it provides | Required? |
|---|---|---|
| Slack | Message monitoring, outbound tracking, feedback loop | No (enables dreaming feedback) |
| Google Calendar | Meeting context, scheduling verification | No |
| Gmail | Email tracking, sent mail verification | No |
| Linear | Issue tracking, status sync | No |
GitHub (gh CLI) |
PR tracking, commit monitoring, review requests | No |
| Granola | Meeting transcripts | No |
| Google Drive | Documents, meeting notes | No |
| Claude Code sessions | Work session history | No (auto-detected) |
| Scout works with any subset of connectors. More connectors means richer cross-checking, but even a Calendar-only Scout is useful. The setup wizard detects what you have and assembles skill files accordingly. |
Knowledge Graph
Scout maintains a formal knowledge graph alongside the traditional markdown KB files. The ontology defines entity types (person, project, task, organization, technology, pet) with typed properties and relationships.
Entity Files
Entity files are markdown files with YAML frontmatter:
---
name: Jane Smith
type: person
email: [email protected]
slack_id: U12345
role: Engineering Lead
relationships:
- type: works_on
target: "[[Project Alpha]]"
- type: employed_by
target: "[[Acme Corp]]"
---
# Jane Smith
Additional context about Jane...
Parser
The knowledge graph parser (knowledge-base/ontology/parser.py) provides a CLI and Python API:
# Validate all entities against the schema
python knowledge-base/ontology/parser.py validate
# Show entity and relationship counts
python knowledge-base/ontology/parser.py stats
# Query entities by type
python knowledge-base/ontology/parser.py query --type task
# Look up a specific entity
python knowledge-base/ontology/parser.py entity --name "Jane Smith"
# Show relationships for an entity
python knowledge-base/ontology/parser.py related --name "Jane Smith"
Personal Tasks
Personal task entities (knowledge-base/personal/task-*.md) track non-work items like vet appointments, taxes, and errands. They have special fields:
domain: personal— marks them as personal vs work tasksdeadline— date-based priority escalation (3 days out → urgent)completion_signal: gmail_confirmation— auto-resolve when a matching email appearsstatus: open/completed— tracked across daily action items
Budget System
Scout includes a budget tracking and rate limit detection system:
- Budget check (
scripts/budget-check.sh) — runs before every session. Calculates rolling window cost, checks for recent rate limits, and skips sessions when budget is exhausted. - Session cost tracker (
scripts/write-session-cost.sh) — logs each session's cost as JSONL for analysis. - Rate limit detection (
scripts/rate-limit-detect.sh) — scans session logs for rate limit signals and triggers backoff. - Heartbeat (
scripts/heartbeat.sh) — polls every 30 minutes to trigger extra dreaming or research sessions when budget is available and work is pending.
Architecture
Scout is built from phase modules — small, focused markdown files that each handle one aspect of the workflow. During setup, the wizard selects the modules matching your connected tools and assembles them into complete, self-contained skill files.
Plugin structure
scout-plugin/
.claude-plugin/
plugin.json -- Plugin manifest
marketplace.json -- Marketplace catalog (lets the repo install via /plugin marketplace add)
commands/
scout-setup.md -- Interactive setup wizard
scout-status.md -- Dashboard command
scout-work.md -- Interactive work session (in-conversation)
scout-meta-review.md -- System-level diagnostic audit (in-conversation)
skills/
scout-briefing.md -- Launch a briefing session (background)
scout-consolidation.md -- Launch a consolidation session (background)
scout-dream.md -- Launch a dreaming session (background)
scout-research.md -- Launch a research session (background)
phases/
core/ -- Always included (git, KB management, action items, inbox, meetings)
connectors/ -- One per tool (Slack, Calendar, Linear, etc.)
modes/ -- Dreaming-specific (feedback, KB deep work, wishlist)
research/ -- Research session phases
templates/
hooks/ -- Pre-session hooks (kb-pre-filter)
scripts/ -- Budget tracking + pre-session data gathering
action-items/ -- MD-to-HTML dashboard renderer + file watcher
docs/ -- Wishlist templates (active / in-progress / done)
knowledge-base/ -- KB scaffold and ontology
inbox.md.tmpl -- Quick-capture template
meetings/ -- Meeting registry template
run-scout.sh.tmpl
run-dreaming.sh.tmpl
run-research.sh.tmpl
scout-config.yaml.tmpl
launchd-plist.tmpl
cron-entry.tmpl
What gets created in your Scout directory
~/Scout/
SKILL.md -- Assembled skill file (briefing + consolidation)
DREAMING.md -- Assembled skill file (dreaming)
RESEARCH.md -- Assembled skill file (research)
run-scout.sh -- Briefing/consolidation runner (calls pre-session hooks)
run-dreaming.sh -- Dreaming runner (calls pre-session hooks)
run-research.sh -- Research runner
scout-config.yaml -- Your configuration
inbox.md -- Quick-capture file (processed every run)
meetings/ -- Meeting registry + per-meeting folders (prep/notes/synthesis)
dreaming-proposals.md -- Proposal gate for skill improvements
hooks/
kb-pre-filter.sh -- Pre-session: bucket KB files by staleness
scripts/
budget-check.sh -- Pre-run budget verification
write-session-cost.sh -- Session cost logging
rate-limit-detect.sh -- Rate limit signal detection
heartbeat.sh -- Opportunistic session triggering
pre-session-data.sh -- Pre-session: gather git log, PRs, KB dates, tasks
cc-session-cache.sh -- Pre-session: summarize non-Scout CC sessions
knowledge-base/ -- Your persistent knowledge base (Obsidian vault)
ontology/
schema.yaml -- Knowledge graph schema
parser.py -- Query engine for the knowledge graph
entities/ -- Organization entity files
people/ -- Person entity files
personal/ -- Personal task and family entity files
projects/ -- Project files
research-queue.md -- Queued research topics
scout-mistake-audit.md -- Error-pattern log written by dreaming
review-queue.md -- Claims waiting on user verification
action-items/ -- Daily action items
archive/ -- Older-than-7-days action items
meeting-prep/ -- Auto-generated meeting prep docs
render.py -- Optional MD → HTML dashboard
watch.sh -- Auto-re-render HTML on MD change (fswatch)
docs/
Wishlist.md -- New feature requests
Wishlist-in-progress.md -- Active work, with sub-task checkboxes
Wishlist-done.md -- Completed items archive
.scout-cache/ -- Hook outputs (gitignored, regenerated every run)
.scout-logs/ -- Run logs and usage-tracker.jsonl (gitignored)
The assembled skill files are self-contained — they don't reference the plugin at runtime. You can customize them freely. Run /scout-setup again to regenerate from the latest phase modules.
Customization
- Edit skill files directly: The assembled
SKILL.md,DREAMING.md, andRESEARCH.mdare yours to modify. Add checks, remove sections, change wording — they're plain markdown. - Change schedule: Edit the launchd plist or cron entries, or re-run
/scout-setupto reconfigure timing. - Add KB files: Create new project folders following the convention
projects/<name>/<name>.md. Scout will pick them up on the next run. - Extend the ontology: Add new entity types and relationships in
knowledge-base/ontology/schema.yaml. The parser validates against this schema. - Queue research topics: Add items to
knowledge-base/research-queue.mdfor Scout to investigate during research sessions. - Adjust cross-checks: The cross-check logic in
SKILL.mdscales with connectors — add or remove verification points as needed. - Re-assemble: After plugin updates, run
/scout-setupand choose Reassemble to regenerate skill files with new improvements while preserving your configuration.
Design Philosophy
The principles that make Scout work:
Source Equality
No single connector is treated as authoritative. A meeting transcript is a signal, not a fact. A Slack message is context, not ground truth. Everything gets verified against other sources before it becomes a KB entry or an action item.
Verification Levels
KB content is tagged by confidence:
- No marker — verified by 2+ sources
[single-source]— only one source, plausible but unverified[unverified]— mentioned but not corroborated[stale]— was accurate, hasn't been confirmed recently[contradicted]— sources disagree
This makes trust explicit. When you read the KB, you know exactly how much weight to give each piece of information.
KB as Persistent Memory
The knowledge base isn't a log or a copy of your tools. It synthesizes information into a coherent picture — who's working on what, which projects are blocked, what decisions were made and why. Action items are ephemeral (regenerated each morning); the KB is permanent and evolving. The knowledge graph adds formal structure with typed entities and relationships queryable by the parser.
Git as Foundation
Every change is committed. The history is the system's memory of its own evolution. Scout uses git log and git diff to detect what changed since the last run, avoid duplicate work, and provide an audit trail. If something goes wrong, you can always trace back to when and why.
Feedback Loop
Scout sends notifications. You react with a thumbs-up or thumbs-down, or leave inline comments (//==<< comment >>==//) in KB files. Dreaming sessions process the feedback, identify patterns (action items that were always dismissed, KB entries that were always wrong), and feed those patterns into skill improvements. Future runs get better because past runs were evaluated.
Depth Self-Check
Every KB audit must pass a gate: "Would the user learn something new from what I touched?" Touching a file to bump a timestamp doesn't count. Rewriting a paragraph to say the same thing in different words doesn't count. The audit must produce genuine insight or it doesn't get committed.
Adaptive Cross-Checking
The more connectors you have, the more verification points each action item passes through. A 2-connector setup still produces useful results. A 7-connector setup produces thoroughly verified ones. The system adapts its verification depth to what's available rather than failing when a connector is missing.
Budget-Aware Scheduling
The heartbeat system opportunistically triggers extra sessions (dreaming or research) when budget is available and work is pending, while the budget check prevents overspend. Rate limit detection triggers automatic backoff, and the usage tracker provides cost visibility.
FAQ / Troubleshooting
My scheduled runs aren't firing.
On macOS, check launchctl list | grep scout. Make sure your machine is awake at scheduled times — launchd won't fire if the lid is closed. Verify the plist is loaded with launchctl list. Check logs in .scout-logs/ for errors from the last attempted run.
A connector stopped working.
Re-authenticate the MCP connector in Claude Code settings. Run /scout-status to see which tools are currently available and which are returning errors.
The KB is getting stale.
Check run logs in .scout-logs/. Verify your schedule is active with launchctl list | grep scout or by checking cron with crontab -l. Run /scout-status to see file freshness — it reports the last-modified time for every KB file.
I want to add a new connector.
Run /scout-setup and choose Reconfigure. The wizard will re-detect available tools and reassemble your skill files to include the new connector's phase modules.
I want to customize the skill file.
Edit SKILL.md, DREAMING.md, or RESEARCH.md directly in your Scout directory. Your changes persist until you explicitly run Reassemble from /scout-setup. The plugin never overwrites your skill files without asking.
How do I queue research topics?
Add items to knowledge-base/research-queue.md as unchecked checkboxes: - [ ] Topic — what to look for. Scout picks them up during the next research session.
How do I add personal tasks?
Create a file in knowledge-base/personal/task-<name>.md with YAML frontmatter including type: task, domain: personal, status: open, and optionally deadline, priority, and completion_signal. Scout will surface these in daily action items.
Can I use this without Obsidian?
Yes. The KB is just markdown files with [[wikilinks]] between them. Obsidian provides the best reading experience — you get a graph view of how projects, people, and channels connect — but any markdown viewer or text editor works fine.
Can multiple people use Scout on the same team?
Each person runs their own Scout instance with their own KB. Scout is designed around individual context — your meetings, your messages, your action items. Team-wide knowledge sharing happens through your normal tools; Scout helps each person stay on top of what matters to them.
How do I update the plugin?
Pull the latest version of the plugin repo. Then run /scout-setup and choose Reassemble to regenerate your skill files with the latest phase module improvements. Your configuration and KB are preserved.
What about costs?
Run /scout-status to see the budget tracking section. The usage tracker logs every session's cost. The budget check automatically skips sessions when the daily budget estimate is exceeded. You can adjust thresholds in scout-config.yaml.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found