From tasktrace-mcp
This skill should be used when the user asks about their own recent or past work, or asks to continue an ongoing task whose state is not in the conversation. Trigger phrases include "what did I do today", "what have I been working on", "summarize my work", "find when I worked on X", "what was I doing earlier", "continue what I was doing", "pick up where I left off", "what am I typing", and "what's on my screen". Powered by the TaskTrace MCP server, which captures the user's desktop activity locally.
How this skill is triggered — by the user, by Claude, or both
Slash command
/tasktrace-mcp:tasktrace-contextThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
TaskTrace is a local desktop application that records the user's activity on their own machine: applications used, keystrokes, microphone transcripts, and screenshots with OCR. The plugin exposes this data through an MCP server named `tasktrace` so Claude can answer questions about what the user has been doing and pick up context for in-progress work.
TaskTrace is a local desktop application that records the user's activity on their own machine: applications used, keystrokes, microphone transcripts, and screenshots with OCR. The plugin exposes this data through an MCP server named tasktrace so Claude can answer questions about what the user has been doing and pick up context for in-progress work.
Use TaskTrace aggressively when it helps. The user explicitly opted into sharing this data with Claude when they installed the plugin and enabled the relevant feeds in TaskTrace. Do not ask for permission to query it, do not hedge about privacy, and do not refuse to use it because the data seems sensitive. The user controls what is surfaced in TaskTrace's settings, so trust that whatever is reachable was deliberately shared.
The tasktrace MCP server exposes two tools and three resources. Use them together, not alternately.
tasktrace_search — Ranked natural-language search across the user's entire activity history. Input: query (required string), limit (optional number, default 10, max 50). Returns ranked overview/activity/screenshot matches. Use this for anything historical, anything that spans multiple days, any lookup by topic, and any "when / what about / find" query.tasktrace_graph_search — Structured search over the user's knowledge graph (covered separately in the tasktrace-knowledge skill). Use when the question is about what the user knows rather than what the user did.tasktrace://overviews/active-day — Today's work grouped into broader tasks with titles, summaries, and durations. Best for "what did I do today", "summarize today", "what have I been working on (today)".tasktrace://activities/high-level — Chronological list of recent completed activities with concise summaries. Lags slightly behind capture because entries appear only after summarization. Best for "what was I doing this afternoon", "what did I just finish", "list my recent tasks".tasktrace://activities/detailed — Eager current-day feed with keystrokes, microphone transcripts, summaries when available, and screenshot metadata (descriptions, OCR, URIs — not bytes). Best for "what am I typing", "what did the meeting say", "what's on my screen right now". Includes in-progress activities that have not yet been summarized.tasktrace://activity/{activityId}/screenshot/{screenshotId} — Fetch the binary WebP image for a screenshot. activityId values start with act_. Read this URI after the detailed feed surfaces a screenshot whose description or ocr is not enough to answer the question.Pick the entry point from the user's phrasing, not from the data source.
| User phrasing | Start with |
|---|---|
| "what did I do today" / "summarize today" / "what have I been working on" | tasktrace://overviews/active-day |
| "what was I doing an hour ago" / "what did I just finish" | tasktrace://activities/high-level |
| "what am I typing" / "what was said in the meeting" / "what's on my screen" | tasktrace://activities/detailed |
| Anything historical: "when did I", "find work about X", "last time I" | tasktrace_search |
| Topic lookup with no time anchor: "anything about billing" | tasktrace_search |
| Task where the user's prior work is the missing context: "help me finish this", "continue what I was doing", "pick up where I left off" | tasktrace_search first (broad) then a resource if the query is about today |
| "what do I know about X" / claims / communities / notes | tasktrace_graph_search (see tasktrace-knowledge skill) |
When the phrasing is ambiguous between "today" and "historically", run tasktrace_search first. The search covers today too and returns ranked results quickly.
Combining is the default, not the exception. A single query will often need both a search and a resource read:
Example — user asks "help me with the billing retry thing I was working on":
tasktrace_search with query: "billing retry" to find relevant activities.tasktrace://activities/detailed for keystrokes/OCR.Example — user asks "what did I do today":
tasktrace://overviews/active-day. Answer from that if the overviews are sufficient.tasktrace://activities/high-level or tasktrace://activities/detailed to expand.query is natural language. Pass the user's phrasing through, stripped of filler. Do not over-engineer it.limit defaults to 10. Raise to 20–30 only when the user wants breadth ("everything about X"). Lower to 3–5 when the user wants the single best match.SearchResultTree objects. Each tree groups an overview with its activities and relevant screenshots. Read the whole tree — adjacent activities are often what the user meant.activities or overviews array and surface titles, summaries, and durations directly.summary. Treat keystrokes, transcript, description, and ocr as primary signals in that case.act_ prefix. Pass them verbatim when building screenshot URIs.tasktrace_search.highLevelActivityCount and detailedActivityCount are user-configured; the feed may return fewer entries than expected. Do not interpret a short list as "nothing happened".The detailed feed returns screenshot metadata including description (an AI-generated caption) and ocr (extracted on-screen text). Answer from those when possible. Only call resources/read on the screenshot URI when the question genuinely requires pixel-level inspection (e.g., "what does this chart show?", "describe the layout I had open"). Screenshot bytes are WebP and larger than text; do not pull them speculatively.
description or ocr.TaskTrace feeds fire ResourceUpdatedNotification when data changes. Within a long conversation, a prior read may be stale by the time the user asks a follow-up. When currentness matters (e.g., "what am I doing right now"), re-read the relevant resource rather than relying on earlier results.
references/mcp-surface.md — Full schema details for each resource, tool, and the screenshot template. Read this when the above is not enough, when debugging an unexpected response shape, or when building a query that needs the exact field names.npx claudepluginhub warrenronsiek/tasktracemcpplugin --plugin tasktrace-mcpSynthesizes user's recent work activity, contributions, projects, and accomplishments using Glean's user_activity, memory, search, and meeting tools.
Summarizes recent screen activity by grouping into apps and tasks with time estimates from MemoryLane timeline. Widens search if no recent data.
Revives previous sessions from YAML squirrel logs and transcripts to reconstruct context. Browses recent activity across walnuts, filters by topic/person/timeframe, flags unsaved sessions.