Install
$ agentstack add skill-tang-t21-weekly-report-weekly-report ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Generate Weekly Report
Build a weekly work report from three sources of evidence: local Codex sessions, local Claude Code sessions, and GitHub pull requests. Write it as Markdown or a single self-contained HTML deck. No external services are required for the HTML, which opens straight from disk.
Workflow
- Determine the date range.
- If the user specifies dates, use those exact dates.
- Otherwise use the last 7 calendar days ending today, inclusive, in the user's current timezone.
- Always render dates as
YYYY-MM-DD. - Use
Weekly Report YYYY-MM-DD to YYYY-MM-DDas the report H1. - Use
Weekly-Report-YYYY-MM-DD-to-YYYY-MM-DD.{md,html}as the filename. No spaces in report filenames.
- Collect local coding-agent activity.
- Unless the user explicitly scopes the report to one agent, collect both Codex and Claude Code activity.
- Run
scripts/collect_codex_activity.py --start YYYY-MM-DD --end YYYY-MM-DD --format markdownfor Codex. It scans$CODEX_HOME/sessions,$CODEX_HOME/archived_sessions,~/.codex/sessions, and~/.codex/archived_sessions. - Run
scripts/collect_claude_activity.py --start YYYY-MM-DD --end YYYY-MM-DD --format markdownfor Claude Code. It scans$CLAUDE_CONFIG_DIR/projects(or~/.claude/projects). - Treat a session as active when any event timestamp falls inside the range, not just when the file was created.
- Use user prompts, working directories, git branches, final assistant messages, changed files, git commands, commit hashes, PR URLs, and
pr-linkevents as evidence. Do not copy raw logs into the report. - Each collector's
--max-sessionsdefaults to 40; raise it for a busy week. If either output is truncated, say so. - If one agent has no session store or no activity in the range, continue with the other source and mention the missing coverage only when it materially limits the report.
- Collect GitHub PRs.
- Prefer the GitHub connector/MCP tools if available. Identify the authenticated user, search authored PRs created or updated in the range, then fetch metadata (and discussions for important ones).
- Otherwise, if
ghis authenticated:gh search prs --author @me --updated ">=YYYY-MM-DD" --json number,title,url,state,createdAt,updatedAt,closedAt,repository, then enrich the key PRs withgh pr view --repo --json mergedAt,additions,deletions,changedFiles,reviewDecision. - Note:
gh search prsdoes not supportmergedAt/additions/reviewDecisionin--json— get those fromgh pr view. - If neither is available, fall back to local
git logfrom repos seen in the sessions and note that PR coverage may be incomplete.
- Deduplicate and classify.
- Merge Codex, Claude Code, and PR evidence when they describe the same work. Avoid counting the same change twice when it appears in both coding agents.
- Drop meta-work such as the report-generation session itself, unless the user wants to report on tooling maintenance.
- Most important first: rank merged/shipped PRs and user-visible fixes above investigations, chores, and routine follow-up.
- Classify by outcome, not by tool:
Highlights,Merged PRs,Open / In Review,Investigations,Infrastructure / Cleanup,Risks / Blockers,Next Focus. Omit empty sections.
- Write the report. Choose the format from the request:
- Markdown (default) — save as
weekly-reports/Weekly-Report-….md. - HTML deck — when the user asks for HTML / slides / a deck / visual / 图文并茂. Save as
weekly-reports/Weekly-Report-….html. See HTML Deck Output. - Create
weekly-reports/in the current workspace unless the user names another destination. - Match the user's language (write in Chinese for Chinese requests, etc.).
- Include concrete PR links, repo names, and dates when available; keep bullets outcome-oriented (what changed, why it mattered, current status).
- Hand it back. Print the file path. For the HTML deck, tell the user they can open it directly:
open/xdg-open(or just double-click), or preview locally withpython3 -m http.serverin the folder. It is one self-contained file — no build, no server required.
Report Shape (Markdown)
# Weekly Report YYYY-MM-DD to YYYY-MM-DD
## Highlights
- ...
## Merged PRs
- ...
## Open / In Review
- ...
## Investigations
- ...
## Infrastructure / Cleanup
- ...
## Risks / Blockers
- ...
## Next Focus
- ...
HTML Deck Output
Produce a single self-contained .html file (inline CSS + JS; the only external reference is a Google-Fonts CDN link, which degrades gracefully to system fonts offline). No build step — it opens directly from disk.
Theme — pairs with the html-ppt skill. This skill owns the content; the html-ppt skill owns the design. Pick the design path:
- If the html-ppt skill is available (installed, or the user asks for a specific theme,
presenter mode, or a non-default look): use it. Invoke/read it, pick the theme the user wants from its 36 (tokyo-night, corporate-clean, swiss-grid, academic-paper, xiaohongshu-white, …) or start from its weekly-report full-deck template, and author the slides there. That unlocks its layouts, animations, presenter mode (speaker notes), and render-to-PNG export.
- Otherwise (default, zero-install): use the bundled
assets/deck-template.html, which
ships a single fixed theme (tokyo-night). For a quick restyle without html-ppt, swap the :root design tokens (e.g. a light corporate palette) — never hand-edit literal colors per element.
Authoring the bundled template:
- Copy
assets/deck-template.htmlto the.htmldestination, then replace only the slide content inside…. Keep the `,.deck-head, progress/overview chrome, and the` runtime unchanged. - The template's example content is fictional sample data — replace it wholesale with the real report.
- The template's top comment carries the slide-mapping recipe (Cover → KPIs → Highlights → Pipeline → Merged PRs → Open/Closed → Investigations → Risks → Next → Closing). Drop a slide whose section is empty; add the Pipeline slide only when one feature spans multiple repos.
- Map evidence to components:
.kpistat cards,.featfeature cards,.pipe/.stage/.arrowcross-repo pipeline,.prrows with size bars (bar width =additions / max-additions * 100%),.badgefor PR state,.blockerrisks,.next-rownext steps. Tags:t-feat/t-fix/t-infra/t-build/t-doc. Give each slide adata-title. - Built-in keyboard runtime:
← →/Space navigate,Ooverview grid,Ffullscreen,1-9jump,#/Ndeep-link, touch-swipe. - To restyle, swap the
:rootdesign tokens (e.g. a light corporate palette) — never hand-edit literal colors per element.
Quality Bar
- Prefer verified PR metadata over inferred session intent.
- Separate completed work from ongoing work.
- Never include secrets, tokens, raw environment dumps, or long command output.
- Don't overstate impact. If the evidence only shows investigation or debugging, say that.
- If coverage is incomplete (e.g.
ghnot authenticated, an agent store is unavailable, or sessions are truncated), add a shortData Notesline.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: tang-t21
- Source: tang-t21/weekly-report
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.