com um clique
oma-recap
// Analyze conversation histories from multiple AI tools (Claude, Codex, Qwen, Cursor, Antigravity) and generate themed daily/period work summaries. Filter by date or time window.
// Analyze conversation histories from multiple AI tools (Claude, Codex, Qwen, Cursor, Antigravity) and generate themed daily/period work summaries. Filter by date or time window.
HTML presentation deck generator and multi-format exporter. Generates distinctive, animation-rich HTML decks at a fixed 1920×1080 stage, then deterministically validates, bundles, and exports them to PDF/PNG/PPTX via the `oma slide` CLI. Use for slide, deck, presentation, slides, pptx, keynote, 슬라이드, 발표자료, プレゼン, 幻灯片 requests. Produces self-contained single-file HTML with keyboard/touch nav, speaker notes, and print-to-PDF support.
Context-aware translation that preserves tone, style, and natural word order. Use when translating UI strings, documentation, marketing copy, or any multilingual content. Infers register, domain, and style from the source text and surrounding codebase context.
Software architecture workflow that diagnoses architecture problems, selects the right analysis method, compares options, synthesizes stakeholder input, and produces a recommendation, review, or ADR
Design-first ideation workflow that explores user intent, clarifies constraints, proposes approaches, and produces an approved design document before planning
Structured bug diagnosis and fixing workflow that reproduces, diagnoses root cause, applies a minimal fix, writes regression tests, and scans for similar patterns
Initialize project harness with AGENTS.md as table of contents, ARCHITECTURE.md as domain map, and a structured docs/ knowledge base
| name | oma-recap |
| description | Analyze conversation histories from multiple AI tools (Claude, Codex, Qwen, Cursor, Antigravity) and generate themed daily/period work summaries. Filter by date or time window. |
Analyze AI tool conversation histories for a given period and generate themed work summaries.
Collect AI tool conversation history for a date or window and synthesize it into a themed, project-oriented recap with saved Markdown output.
oma retrooma dashboardoma statsoma recap --json or fallback sources.agents/results/recap/{date}.md or range filenameoma recap --json~/.claude/history.jsonl.agents/oma-config.yaml for language behavior| Action | SSL primitive | Evidence |
|---|---|---|
| Resolve date/window | INFER | Natural-language date rules |
| Collect history | CALL_TOOL | oma recap --json or jq fallback |
| Read extracted records | READ | Conversation history |
| Group themes/projects | INFER | Time/content grouping rules |
| Validate output shape | VALIDATE | Daily or multi-day template |
| Write recap | WRITE | .agents/results/recap/ |
| Report summary | NOTIFY | Displayed recap |
oma recap --jsonjq fallback for Claude historyoma recap --json
oma recap --window 7d --json
oma recap --date YYYY-MM-DD --json
| Scope | Resource target |
|---|---|
LOCAL_FS | Conversation history and recap output files |
PROCESS | oma recap, jq, date commands |
USER_DATA | Conversation prompts and project activity |
MEMORY | Theme grouping and summary notes |
.agents/results/recap/.Determine the target date or window from the user's natural language input. Default is today.
Resolution rules:
--date YYYY-MM-DD--date YYYY-MM-DD--window Nd--window 1d)Extract normalized conversation history via CLI.
# Default (today, all tools)
oma recap --json
# Time window
oma recap --window 7d --json
# Specific date
oma recap --date 2026-04-10 --json
# Tool filter
oma recap --tool claude,gemini --json
Fallback when CLI is not installed: process Claude history only via inline jq:
TARGET_DATE=$(date +%Y-%m-%d)
TZ=Asia/Seoul start_ts=$(date -j -f "%Y-%m-%d %H:%M:%S" "${TARGET_DATE} 00:00:00" +%s)000
end_ts=$((start_ts + 86400000))
TZ=Asia/Seoul 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
Read all extracted data and analyze with the following criteria:
Grouping rules:
Cross-tool analysis:
Extract from each theme:
Save results to .agents/results/recap/{date}.md and display simultaneously.
Output in the following markdown format. Response language follows language setting in .agents/oma-config.yaml.
## {date} Recap
> **TL;DR**
> - {What I accomplished 1: project name + outcome}
> - {What I accomplished 2}
> - {What I accomplished 3}
### Overview
2-3 sentence summary of the day. Written from "I did X" perspective.
Focus on outcomes and progress, not tool ratios or technical details.
### {Theme 1} (AM 09:36~11:30)
- Core work performed
- Key decisions
- 2-4 bullets per theme
### {Theme 2} (PM 13:33~15:21)
- Core work performed
- Key decisions
### Miscellaneous
- Brief summary of sub-15-minute tasks
### Tool Usage Patterns
- Tool usage ratios and primary purposes
- Notable tool-switching patterns
For any multi-day window, use a project-driven structure like a sprint report. Focus on what was accomplished per project, not day-by-day chronology.
## {start} ~ {end} Monthly Recap
> **TL;DR**
> - {What I accomplished 1: project name + outcome}
> - {What I accomplished 2}
> - {What I accomplished 3}
### Overview
3-5 sentence narrative of the month. Major focus shifts week-by-week,
key milestones achieved, and overall direction. Written from "I did X" perspective.
### {Project A}
What this project is, what was accomplished during the period.
- Key milestone or deliverable 1
- Key milestone or deliverable 2
- Key decision made
- Current status (shipped / in progress / blocked)
### {Project B}
- ...
### Side Projects
Projects with <30 prompts, summarized briefly.
- {project}: one-line summary
- {project}: one-line summary
### Tool Usage Patterns
- Tool usage ratios and how they evolved over the month
- Notable shifts (e.g., "started using Codex mid-month")
Multi-day grouping rules:
Save to .agents/results/recap/{date}.md.
For window ranges, use {start-date}~{end-date}.md format.
# Example paths
.agents/results/recap/2026-04-12.md
.agents/results/recap/2026-04-06~2026-04-12.md
(AM/PM/Evening HH:MM~HH:MM). AM: .agents/results/recap/.language setting in .agents/oma-config.yaml if configured.— (em dash).oma recap --json.agents/results/recap/.agents/oma-config.yaml~/.claude/history.jsonl