# Reports

Save and load timestamped reports.

- Repository: https://github.com/garrytan/gbrain (31427 stars)
- Category: AI and agents
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add garrytan/gbrain --skill reports -g -a claude-code -y`
Codex: `npx skills add garrytan/gbrain --skill reports -g -a codex -y`
Cursor: `npx skills add garrytan/gbrain --skill reports -g -a cursor -y`
Gemini CLI: `npx skills add garrytan/gbrain --skill reports -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add garrytan/gbrain`

## Description

Save and load timestamped reports. Keyword routing for fast lookup. Cron jobs save output as reports; the agent or user queries them by keyword. Includes the Actionability Gate: delivery-time link checks (Broken/Dead/Indirect/ Missing) for briefings, meeting digests, and research reports.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Reports Skill

## Contract

This skill guarantees:
- Reports saved with timestamped filenames and frontmatter
- Keyword routing: query → report category mapping
- Latest report loadable by category name
- Reports are searchable via gbrain search/query
- Outbound reports pass the Actionability Gate (below) before delivery

## Phases

1. **Save report.** Write to `reports/{category}/{YYYY-MM-DD-HHMM}.md` with frontmatter:
   ```yaml
   ---
   title: {report title}
   type: note            # a type the default pack declares; `report` is undeclared
   report_type: {category name}
   category: {category name}
   date: {YYYY-MM-DD}
   time: {HH:MM PT}
   ---
   ```
2. **Load latest.** Given a category, find the most recent report file.
3. **Keyword routing.** Map common queries to report categories:
   - "email" / "inbox" → ea-inbox-sweep
   - "social" / "mentions" → social-mentions
   - "briefing" / "morning" → morning-briefing
   - "meeting" → meeting-sync
   - Custom mappings configurable

## Output Format

Saved: `reports/{category}/{YYYY-MM-DD-HHMM}.md`
Loaded: full report content with metadata.

## Actionability Gate

Before any report reaches the user, a morning briefing, a meeting digest, a
research report, every link must answer one question: **can the user click
this and immediately act?** The link canon (deterministic, never-guessed URLs)
lives in `skills/_output-rules.md` under Deterministic Links; this gate adds
the delivery-time failure taxonomy and the retry loop.

### Four failure modes

The rest: https://github.com/garrytan/gbrain/blob/HEAD/plugin-variants/gbrain-daily/skills/reports/SKILL.md
