Skip to content
6 changes: 6 additions & 0 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,12 @@
"version": "1.1.1",
"description": "Comprehensive analysis of Claude Code sessions to identify successful patterns, problematic areas, and opportunities for improvement."
},
{
"name": "bitwarden-daily-recap",
"source": "./plugins/bitwarden-daily-recap",
"version": "1.0.0",
"description": "Generate polished, interactive HTML recaps of a person's daily work. Pulls activity from the relevant systems, shapes it into a standup-ready, colleague-shareable artifact, and applies Bitwarden brand styling."
},
{
"name": "claude-config-validator",
"source": "./plugins/claude-config-validator",
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ A curated collection of plugins for AI-assisted development at Bitwarden. Enable

| Plugin | Version | Description |
| ------------------------------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------- |
| [bitwarden-tech-lead](plugins/bitwarden-tech-lead/) | 2.0.0 | Software architect for technical planning, architecture reviews, and implementation phasing |
| [bitwarden-tech-lead](plugins/bitwarden-tech-lead/) | 2.0.0 | Software architect for technical planning, architecture reviews, and implementation phasing |
| [bitwarden-atlassian-tools](plugins/bitwarden-atlassian-tools/) | 2.2.3 | Read-only Atlassian access via MCP server with deep Jira issue research skill |
| [bitwarden-code-review](plugins/bitwarden-code-review/) | 1.10.0 | Autonomous code review agent following Bitwarden engineering standards with GitHub integration |
| [bitwarden-delivery-tools](plugins/bitwarden-delivery-tools/) | 1.0.0 | Generic delivery workflow skills for committing, PR creation, preflight checks, and change labeling |
Expand All @@ -17,6 +17,7 @@ A curated collection of plugins for AI-assisted development at Bitwarden. Enable
| [bitwarden-software-engineer](plugins/bitwarden-software-engineer/) | 0.4.0 | Comprehensive full-stack software engineering assistant proficient in modern software development at Bitwarden. |
| [claude-config-validator](plugins/claude-config-validator/) | 1.1.1 | Validates Claude Code configuration files for security, structure, and quality |
| [claude-retrospective](plugins/claude-retrospective/) | 1.1.1 | Analyze Claude Code sessions to identify successful patterns and improvement opportunities |
| [bitwarden-daily-recap](plugins/bitwarden-daily-recap/) | 1.0.0 | Generate polished, interactive HTML recaps of a person's daily work with Bitwarden brand styling |

## Usage

Expand Down
19 changes: 19 additions & 0 deletions plugins/bitwarden-daily-recap/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"name": "bitwarden-daily-recap",
"version": "1.0.0",
"description": "Generate polished, interactive HTML recaps of a person's daily work. Pulls activity from the relevant systems, shapes it into a standup-ready, colleague-shareable artifact, and applies Bitwarden brand styling.",
"author": {
"name": "Bitwarden",
"url": "https://github.com/bitwarden"
},
"homepage": "https://github.com/bitwarden/ai-plugins/tree/main/plugins/bitwarden-daily-recap",
"repository": "https://github.com/bitwarden/ai-plugins",
"keywords": [
"bitwarden-daily-recap",
"standup",
"summary",
"retrospective",
"activity-tracking",
"interactive-html"
]
}
18 changes: 18 additions & 0 deletions plugins/bitwarden-daily-recap/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Changelog

All notable changes to the Bitwarden Daily Recap Plugin will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.0.0] - 2026-05-01

### Added

- Initial release with `engineering-recap` skill β€” generates an interactive HTML recap of the user's engineering work for a given day
- Output written to `${CLAUDE_PLUGIN_DATA}/recaps/engineering-recap-{YYYY-MM-DD}.html` (persistent per-plugin storage; survives plugin updates). Filename pattern uses a `{recap-type}-recap-` prefix to leave room for sibling recap skills
- Local-timezone day-boundary handling (late-night work folds into the prior workday); cutoff hour and timezone are configurable via the `DAILY_RECAP_CUTOFF_HOUR` and `TZ` env vars
- Bundled HTML template tuned to the Bitwarden brand palette (Bitwarden Blue, Teal, Inter font, brand shield)
- Bundled `gather-gh-events.sh` script that pulls GitHub events scoped to the user's workday window
- Bundled `render-guide.md` reference covering placeholder map and HTML injection recipes
- Cross-plugin integration with `claude-retrospective:extracting-session-data` for session extraction
57 changes: 57 additions & 0 deletions plugins/bitwarden-daily-recap/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Bitwarden Daily Recap

Generate polished, interactive HTML recaps of a person's daily work. Pulls activity from the relevant systems, shapes it into a standup-ready, colleague-shareable artifact, and applies Bitwarden brand styling.

## Skills

| Skill | Purpose |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `engineering-recap` | Generates a recap of the user's engineering work β€” Claude Code session activity combined with GitHub events (PRs, reviews, comments, pushes, branch ops, repo creates, sweeps). Produces an interactive HTML page with a copy-ready standup card, project workstreams, GitHub timeline, and theme block. |

## Usage

The `engineering-recap` skill triggers on retrospective queries about the user's own coding work β€” phrases like:

- _"what did I work on yesterday?"_
- _"recap please"_
- _"standup prep"_
- _"summarize my work this morning"_
- _"create me a daily recap for april 28 to show colleagues"_

The output is saved to `${CLAUDE_PLUGIN_DATA}/recaps/engineering-recap-{YYYY-MM-DD}.html` and opened in the default browser. `${CLAUDE_PLUGIN_DATA}` is the per-plugin persistent directory provided by Claude Code (resolves to `~/.claude/plugins/data/{plugin-id}/`); recaps survive plugin updates and are not tied to a hardcoded user path. The `{recap-type}-recap-` filename pattern keeps the `recaps/` directory tidy as new recap skills are added to this plugin (e.g. `design-recap-`, `management-recap-`).

## Day boundary

The skill treats **7am in the user's local timezone** as the day boundary, not midnight UTC. Late-night work folds into the prior calendar day. A "Today / Fresh" banner appears only when there is activity past today's cutoff hour.

Both knobs are env-var configurable:

- `DAILY_RECAP_CUTOFF_HOUR` (default `7`) β€” the hour-of-day cutoff. Set to `5` for early-morning crews, `9` for late risers.
- `TZ` (standard env var) β€” override the timezone, e.g. `TZ=America/Los_Angeles` when generating a recap for someone else.

## Dependencies

- `claude-retrospective` β€” session extraction is delegated to `claude-retrospective:extracting-session-data`. Install this plugin first.
- `gh` CLI authenticated against GitHub β€” required for the events feed and PR title enrichment.
- `jq` β€” required by bundled scripts.

## Files

```
bitwarden-daily-recap/
β”œβ”€β”€ .claude-plugin/plugin.json
β”œβ”€β”€ CHANGELOG.md
β”œβ”€β”€ README.md
β”œβ”€β”€ examples/
β”‚ └── engineering-recap-sample.html β€” Hydrated example with fake data
└── skills/
└── engineering-recap/
β”œβ”€β”€ SKILL.md
β”œβ”€β”€ assets/template.html β€” Bitwarden-branded HTML scaffold
β”œβ”€β”€ scripts/gather-gh-events.sh β€” Events feed window helper
└── references/render-guide.md β€” Placeholder map + HTML recipes
```

## Example
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

πŸ’‘ I am cool with an example file being added with the skill, but I think that it's very important to include clear instructions about when and how the next engineer should maintain it. Keeping that information here in the README.md feels like the correct place to me. I think it's also worth pairing it's maintenance with the template file to keep them both in alignment.


Open [`examples/engineering-recap-sample.html`](examples/engineering-recap-sample.html) (one sample per skill) for a hydrated view of the produced report. The file uses fake data (persona "Alex Carter", date 2026-05-04) and exercises every section β€” stats, today banner, standup card with copy button, project chips and filters, collapsible streams across 5 projects, full GitHub timeline with cross-references and an after-midnight tail, and the theme block.
Loading
Loading