skills/omnisess-recap/SKILL.md
Produce a structured markdown briefing of AI coding sessions for a given time window. Groups sessions by project and summarizes each group with intent, outcome, and status. Use this skill when asked to recap recent coding work, summarize today's sessions, show what was worked on, or produce a daily/weekly session summary. Trigger phrases: "recap", "what did I work on", "daily summary", "session summary", "summarize my sessions", "what sessions did I have today", "coding recap". This is the sessions-only public version — no Slack, Jira, Granola, or Todoist integration.
npx skillsauth add psacc/omnisess recapInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Produce a structured markdown briefing of AI coding sessions for a given time window.
/omnisess:recap [today|yesterday|Nd]
today (last 24 hours)yesterday — last 48 hours (rolling approximation — includes today's sessions too)Nd — last N days (e.g., 3d = last 72 hours)Check that the omnisess binary is available before proceeding:
if ! command -v omnisess &>/dev/null; then
echo "omnisess not found. Install it with:"
echo " go install github.com/psacc/omnisess@latest"
exit 1
fi
Determine the --since duration from the argument (default to today if none provided):
today (or no argument) → --since=24hyesterday → --since=48hNd where N is an integer → --since=<N*24>h (e.g., 3d → --since=72h)If the argument does not match any of the above patterns, print:
Unknown window: <arg>. Use: today, yesterday, or Nd (e.g., 3d).
and exit 1.
Run:
omnisess list --since=<resolved-duration> --json
Capture the JSON output. If the command exits with a non-zero status, print:
No sessions found for <window>.
and exit 1.
From the JSON array, discard:
preview field is empty or missingpreview field starts with / (these are Claude Code slash-command invocations — operational noise, not coding work)If the filtered list is empty, print:
No sessions found for <window>.
and exit 0.
Group the remaining sessions by their project field (the project path). Use the basename of the path for display (e.g., ~/prj/myapp → myapp), but preserve the full path for the session detail lines.
For each project group, read the session previews and reason about:
complete, in-progress, or unclearKeep summaries concise (1–2 sentences per session).
Output the following structure:
# Recap: <date range>
_<N> sessions across <M> projects_
## <project-basename>
- **<tool>:<short-id>** (`<full-project-path>`): <intent> — <outcome> · _<status>_
## Pending
- **<tool>:<short-id>** in `<project-basename>`: <reason why in-progress or unclear>
Rules:
## Pending section is omitted entirely if all sessions have status completeThis skill is the public sessions-only version of /recap. It does not integrate with Slack, Jira, Granola, or Todoist. Those integrations belong in a private local skill.
tools
Print AI coding sessions for a calendar day as Obsidian-compatible markdown with the full Q&A content of every session. Intended for daily-note workflows: paste the output into a daily journal to preserve a searchable record of what was discussed with which AI tool. Use this skill when asked to dump today's sessions as markdown, prepare a daily-note entry, archive Q&A for Obsidian, or export a calendar-day's coding conversations. Trigger phrases: "digest today's sessions", "dump sessions as markdown", "obsidian daily note", "archive my coding chats", "export today's Q&A", "session log for daily note".
development
Classify agent skills by usage tier (Keep / Borderline / Archive / Unknown) using Claude Code session JSONL transcripts as the signal source. Read-only — never modifies skills, sessions, or any file on disk. Use this skill when asked to audit skills, find unused skills, classify skills, check which skills get used, produce a skill usage report, or prune skills. Trigger phrases: "audit skills", "find unused skills", "classify skills", "which skills do I use", "skill usage report", "prune skills", "what skills are unused", "skills I can remove", "trim my skill list". Output is a recommendation (Keep / Borderline / Archive) — acting on it is always a manual step.
testing
Test skill eta
testing
Test skill epsilon