Agent skill

Oma Recap

by first-fluke in first-fluke/oh-my-agent

Summarize AI conversation histories for a specified date or period.

MITAuto-check passedProductivity & Automation

Install Oma Recap

skills CLI
$ npx skills add first-fluke/oh-my-agent --skill oma-recap -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install first-fluke/oh-my-agent oma-recap --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/first-fluke/oh-my-agent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/oma-recap .claude/skills/oma-recap && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
oma-recap
GitHub stars
1.3k
Token cost
~2.6k tokens
SKILL.md length
1,113 words
Files
2
Skills in repo
57
Repo updated
First seen
Licence
MIT

At a glance

Summarize AI conversation histories for a specified date or period.

  • Works in 5 steps: Resolve Date → Collect Data → Theme Analysis and Grouping → …
  • Daily work recaps and cross-tool activity summaries
  • SKILL.md covers Scheduling, Structural Flow and Logical Operations
  • Calls jq

What it does

Oma Recap is an agent skill from first-fluke/oh-my-agent. Summarize AI conversation histories for a specified date or period. Use for daily work recaps and cross-tool activity summaries.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `resources/output-formats.md`).

It sits in Productivity & Automation. The repository describes itself as: Mechanical verification for AI coding agents — skills pack or full harness (stop-hook gates, artifact checks, independent judges). The licence is MIT.

When your agent uses it

  • Daily work recaps and cross-tool activity summaries

Example prompts

  • “/oma-recap”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Resolve Date
  2. Collect Data
  3. Theme Analysis and Grouping
  4. Output Format
  5. Save Results

What it can do on your machine

Read from SKILL.md and the folder at commit 268bb4a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • jq

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Oma Recap loads about 2.6k tokens when it runs. Until then it costs about 35 tokens; SKILL.md has 1,113 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~35
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from first-fluke/oh-my-agent at commit 268bb4a, republished under its MIT licence (© first-fluke). 1,113 words, ~2,641 tokens.

Download SKILL.mdSave it as .claude/skills/oma-recap/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
oma-recap
description
Summarize AI conversation histories for a specified date or period. Use for daily work recaps and cross-tool activity summaries.

AI Tool Conversation History Summary

Analyze AI tool conversation histories for a given period and generate themed work summaries.

Scheduling

Goal

Collect AI tool conversation history for a date or window and synthesize it into a themed, project-oriented recap with saved Markdown output.

Intent signature
  • User asks for daily recap, weekly/monthly summary, standup notes, work log, tool usage pattern, or AI conversation history analysis.
  • User wants conversation histories grouped by work content rather than raw chronological logs.
When to use
  • Summarizing a day or period of work activity
  • Understanding the overall flow of work across multiple AI tools
  • Analyzing tool-switching patterns between sessions
  • Preparing daily standups, weekly retros, or work logs
When NOT to use
  • Git commit-based code change retrospective -> use oma retro
  • Real-time agent monitoring -> use oma dashboard terminal
  • Productivity metrics -> use oma stats get
Expected inputs
  • Date, relative date, time window, or tool filter
  • Conversation history available through oma recap --json or fallback sources
  • Desired daily or multi-day recap scope
Expected outputs
  • Markdown recap saved to .agents/results/recap/{date}.md or range filename
  • TL;DR, overview, themes/projects, miscellaneous or side projects, and tool usage patterns
  • User-facing summary in configured response language
Dependencies
  • oma recap --json
  • Optional Claude fallback history at ~/.claude/history.jsonl
  • .agents/oma-config.yaml for language behavior
Control-flow features
  • Branches by date resolution, window length, available tool history, and daily vs multi-day output shape
  • Reads local history data and writes Markdown recap files
  • Groups by content, not by tool

Structural Flow

Entry
  1. Resolve requested date or window.
  2. Collect normalized conversation history.
  3. Decide daily versus multi-day output structure.
Scenes
  1. PREPARE: Resolve time range and tool filters.
  2. ACQUIRE: Collect history through CLI or fallback; retain completion evidence where available.
  3. REASON: Group by content and classify each item as requested, in progress, or completed from its evidence.
  4. ACT: Write recap Markdown in the required format.
  5. VERIFY: Check that every completion claim has direct evidence, then check grouping, language, and output path.
  6. FINALIZE: Save and display summary.
Transitions
  • If no date is specified, use today via --date (bare --window is a rolling window ending now, not calendar-aligned).
  • If window is 3 days or longer, group by project instead of day chronology.
  • If CLI is unavailable, use Claude fallback only and report scope limits.
  • If tasks are under threshold, group them into Miscellaneous or Side Projects.
Failure and recovery
  • If history is unavailable, report missing source and requested range.
  • If timestamps are ambiguous, use configured timezone and state assumption.
  • If extracted data is sparse, produce a concise recap and note limited coverage.
Exit
  • Success: recap file exists and summary is displayed.
  • Partial success: missing tools/history or fallback-only coverage is explicit.

Logical Operations

Actions
ActionSSL primitiveEvidence
Resolve date/windowINFERNatural-language date rules
Collect historyCALL_TOOLoma recap --json or jq fallback
Read extracted recordsREADConversation history
Group and classify themes/projectsINFERTime/content rules plus prompt, progress, completion, receipt, or artifact evidence
Validate output shapeVALIDATEDaily or multi-day template
Write recapWRITE.agents/results/recap/
Report summaryNOTIFYDisplayed recap
Tools and instruments
  • oma recap --json
  • jq fallback for Claude history
  • Markdown output templates
Canonical command path
bash
oma recap --date YYYY-MM-DD --json
oma recap --window 7d --json
oma recap --json  # rolling last 24h, not "today"
Resource scope
ScopeResource target
LOCAL_FSConversation history and recap output files
PROCESSoma recap, jq, date commands
USER_DATAConversation prompts and project activity
MEMORYTheme grouping and summary notes
Preconditions
  • Requested time range can be resolved.
  • At least one history source is available.
Effects and side effects
  • Writes recap Markdown under .agents/results/recap/.
  • Reads local conversation history data.
Show full SKILL.md (538 more words)Show less
Guardrails
  1. Evidence status: A prompt alone proves a request, not a result. Mark work completed only with an explicit completion/result message, a receipt, or an artifact that supports the stated outcome. Mark it in progress with progress evidence; otherwise call it requested. Do not infer completion from a tool invocation or elapsed time.
  2. TL;DR required: Top 3 supported outcomes. Use "completed" only when the evidence-status rule permits it; otherwise summarize requested or in-progress work plainly. Project name + status/outcome. No tool names or unnecessary detail.
  3. Overview: After TL;DR, describe the flow. Start with "I" as subject and preserve evidence status.
  4. Daily: themes by time block (15+ min). Rest goes to "Miscellaneous".
  5. Multi-day (3d+): sections by project, ordered by activity. Read like a sprint report, not a daily log.
  6. 2-4 bullets per theme/project: Concise essentials only. Don't enumerate every step.
  7. Themes by content: Group by actual work, not by tool.
  8. Time range (daily only): (AM/PM/Evening HH:MM~HH:MM). AM: 12:00, PM: 12:0018:00, Evening: 18:00~.
  9. Save results: Write markdown to .agents/results/recap/.
  10. Response language: Follows language setting in .agents/oma-config.yaml if configured.
  11. No em dashes: Use commas, periods, or parentheses instead of — (em dash).
Process
1. Resolve Date

Determine the target date or window from the user's natural language input. Default is today.

Resolution rules:

  • Relative day references (today, yesterday, day before yesterday, etc.) → calculate --date YYYY-MM-DD
  • Specific date mentions (month + day, or full date) → convert to --date YYYY-MM-DD
  • Relative weekday references (last Monday, this Friday, etc.) → calculate the date
  • Period references (this week, last 3 days, past 2 weeks, etc.) → convert to --window Nd
  • No date specified → today, resolved to --date YYYY-MM-DD (bare --window 1d is a rolling 24-hour window ending now, not the calendar day)
  • The CLI caps windows at 30 days (longer values are trimmed with a warning) — when a requested period gets capped, say so in the recap
2. Collect Data

Extract normalized conversation history via CLI.

bash
# Today (calendar day, all tools)
oma recap --date $(date +%F) --json

# Last 24 hours (rolling window ending now)
oma recap --json

# Time window (rolling, ends now; capped at 30d)
oma recap --window 7d --json

# Specific date
oma recap --date 2026-04-10 --json

# Tool filter (supported: grok, claude, codex, gemini, qwen, cursor, antigravity)
oma recap --tool claude,codex --json

Fallback when CLI is not installed: process Claude history only via inline jq:

bash
# Uses the system timezone; export TZ=<zone> first to override, and state the
# timezone assumption in the recap (per the Failure and recovery rules).
TARGET_DATE=$(date +%Y-%m-%d)
# macOS/BSD date: advance the calendar date, then parse both local midnights.
next_date=$(date -j -v+1d -f "%Y-%m-%d %H:%M:%S" "${TARGET_DATE} 12:00:00" +%Y-%m-%d)
start_ts=$(date -j -f "%Y-%m-%d %H:%M:%S" "${TARGET_DATE} 00:00:00" +%s)000
end_ts=$(date -j -f "%Y-%m-%d %H:%M:%S" "${next_date} 00:00:00" +%s)000
# Linux/GNU date alternatives (replace all three lines above):
# next_date=$(date -d "${TARGET_DATE} 12:00:00 tomorrow" +%Y-%m-%d)
# start_ts=$(date -d "${TARGET_DATE} 00:00:00" +%s)000
# end_ts=$(date -d "${next_date} 00:00:00" +%s)000
# Do not add a fixed 24 hours: DST calendar days can have 23 or 25 hours.

jq -r --argjson start "$start_ts" --argjson end "$end_ts" '
  select(.timestamp >= $start and .timestamp < $end and .display != null and .display != "") |
  {
    time: (.timestamp / 1000 | localtime | strftime("%H:%M")),
    project: (.project | split("/") | .[-1]),
    prompt: (.display | gsub("\n"; " ") | if length > 150 then .[0:150] + "..." else . end)
  }
' ~/.claude/history.jsonl
3. Theme Analysis and Grouping

Read all extracted data and analyze with the following criteria:

Grouping rules:

  • Only classify as a separate theme if the work spans 15+ minutes (based on timestamp gaps and prompt count)
  • Merge consecutive prompts on the same topic into one theme
  • Collect sub-15-minute tasks into a "Miscellaneous" section
  • Group by work content, not by tool

Cross-tool analysis:

  • Track workflow when multiple tools are used in the same time window
  • Example: "Designed in Antigravity -> Implemented in Claude -> Reviewed in Codex"
  • Derive insights from tool-switching patterns

Extract from each theme:

  • Core work performed
  • Key decisions made
  • Tool combinations used
  • Artifacts produced (docs, code, config, etc.)
4. Output Format

Save results to .agents/results/recap/{date}.md and display simultaneously.

Use the markdown templates in resources/output-formats.md:

  • Daily format (1d or specific date): TL;DR → Overview → time-blocked themes → Miscellaneous → Tool Usage Patterns.
  • Multi-day format (3d+): project-driven sprint-report structure with Side Projects for small (<30 prompts) work; follow the multi-day grouping rules in the same file.

Response language follows language setting in .agents/oma-config.yaml.

5. Save Results

Save to .agents/results/recap/{date}.md. For window ranges, use {start-date}~{end-date}.md format.

bash
# Example paths
.agents/results/recap/2026-04-12.md
.agents/results/recap/2026-04-06~2026-04-12.md

References

  • Output format templates: resources/output-formats.md
  • Recap CLI: oma recap --json
  • Output directory: .agents/results/recap/
  • Language config: .agents/oma-config.yaml
  • Claude fallback history: ~/.claude/history.jsonl

© first-fluke, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/oma-recap of first-fluke/oh-my-agent.

  • SKILL.md
  • resources/output-formats.md

Open the folder on GitHubat commit 268bb4a

Used in 1 other repository

We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders. This page covers the copy in first-fluke/oh-my-agent, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Oma Recap next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Oma Recap compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Oma Recap this skillfirst-fluke/oh-my-agent1.3k—~2.6kAutomated safety check: PassMIT
Agent Browserquran/quran.com-frontend-next1.9k40 repos~3.3kAutomated safety check: PassNone
Dependency Watchtelegramdesktop/tdesktop33k1 repos~2.2kAutomated safety check: PassGPL-3.0
Perform Tasktelegramdesktop/tdesktop33k2 repos~3kAutomated safety check: PassGPL-3.0
Brave Searchbadlogic/pi-skills2.6k5 repos~592Automated safety check: PassMIT
Garden Inboxpaperclipai/paperclip99k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Agent Browser

    quran/quran.com-frontend-next

    Automates browser interactions for web testing, form filling, screenshots, and data extraction.

    1.9k GitHub starsUsed in 40 repos~3.3k tokens
    Productivity & AutomationAuto-check passed
  • Dependency Watch

    telegramdesktop/tdesktop

    Audit Telegram Desktop dependencies on freshly fetched origin/dev for releases and security fixes, including upstream lag and backport candidates in patched forks.

    33k GitHub starsUsed in 1 repo~2.2k tokens
    Productivity & AutomationAuto-check passed
  • Perform Task

    telegramdesktop/tdesktop

    Resolve, start or resume, implement, review, test, and publish exactly one existing ai-tdesktop task by short slug or full dated id, including rare blocked retries and split-required results.

    33k GitHub starsUsed in 2 repos~3k tokens
    Productivity & AutomationAuto-check passed
  • Brave Search

    badlogic/pi-skills

    Web search and content extraction via Brave Search API. An agent skill from badlogic/pi-skills.

    2.6k GitHub starsUsed in 5 repos~592 tokens
    Productivity & AutomationAuto-check passed
  • Garden Inbox

    paperclipai/paperclip

    Scan a Paperclip user's Mine inbox, classify reversible archive candidates, request checkbox confirmation, and archive only accepted selections.

    99k GitHub stars~1.1k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Continue

    telegramdesktop/tdesktop

    Continue autonomous Telegram Desktop development from the shared ai-tdesktop repository.

    33k GitHub starsUsed in 2 repos~9.4k tokens
    Productivity & AutomationAuto-check passed

More from first-fluke/oh-my-agent

All 57 skills in this repo
  • OMA Multi-Agent Orchestration

    first-fluke/oh-my-agent

    Decomposes a complex feature into tasks, dispatches parallel specialist agents with durable state, and supervises verification, QA review and retries.

    1.3k GitHub stars~4.1k tokensUpdated today
    Auto-check passed
  • OMA Multi-Agent Orchestrator

    first-fluke/oh-my-agent

    Splits a complex feature into prioritized tasks, spawns specialist CLI subagents in parallel, tracks them through shared memory and verifies each result.

    1.3k GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Architecture Decisions and ADRs

    first-fluke/oh-my-agent

    Evaluates system boundaries and tradeoffs and writes architecture recommendations, option comparisons or ADRs, with a Mermaid diagram when structure changes.

    1.3k GitHub stars~2.6k tokensUpdated today
    Auto-check passed
  • OMA Brainstorm

    first-fluke/oh-my-agent

    Explores goals, constraints and alternative designs one question at a time and saves an approved design document before any planning or coding starts.

    1.3k GitHub stars~2.8k tokensUpdated today
    Auto-check passed
  • Oma Coordination

    first-fluke/oh-my-agent

    Coordinate assigned specialist tasks and handoffs manually. An agent skill from first-fluke/oh-my-agent.

    1.3k GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Oma Image

    first-fluke/oh-my-agent

    Generate raster images or reference-guided variations through the OMA image CLI.

    1.3k GitHub stars~2k tokensUpdated today
    Auto-check passed

Questions about Oma Recap

What does Oma Recap do?

Summarize AI conversation histories for a specified date or period. Oma Recap is an agent skill from first-fluke/oh-my-agent. Summarize AI conversation histories for a specified date or period.

When should I use Oma Recap?

Oma Recap fits situations like: daily work recaps and cross-tool activity summaries.

How do I install Oma Recap in Claude Code?

Run `npx skills add first-fluke/oh-my-agent --skill oma-recap -a claude-code`. Or copy the skill folder (skills/oma-recap in first-fluke/oh-my-agent) into .claude/skills/oma-recap in your project. Claude Code loads it when a task matches its description.

How do I install Oma Recap in Codex?

Run `npx skills add first-fluke/oh-my-agent --skill oma-recap -a codex`. Or copy the skill folder (skills/oma-recap in first-fluke/oh-my-agent) into .agents/skills/oma-recap in your project. Codex loads it when a task matches its description.

Can I use Oma Recap in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add first-fluke/oh-my-agent --skill oma-recap -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/oma-recap, .gemini/skills/oma-recap, .github/skills/oma-recap and .opencode/skills/oma-recap in your project.

What does Oma Recap need to run?

Going by SKILL.md and its folder, Oma Recap needs the command-line tools its instructions call (jq).

Does Oma Recap access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Oma Recap safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Oma Recap use?

Oma Recap is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Oma Recap use?

About 2.6k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Oma Recap?

Skills that share tags, products or a category with Oma Recap: Agent Browser (quran/quran.com-frontend-next, 1.9k stars), Dependency Watch (telegramdesktop/tdesktop, 33k stars), Perform Task (telegramdesktop/tdesktop, 33k stars) and Brave Search (badlogic/pi-skills, 2.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Oma Recap?

first-fluke (a GitHub organization) maintains it in first-fluke/oh-my-agent, which has 1,336 GitHub stars. The repository holds 57 skills in this directory. The repository was last updated on October 10, 2026.

Source: first-fluke/oh-my-agent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.