zanei

zanei is a skill for Claude Code, Codex from KentoShimizu/zanei. It costs 89 tokens per session (1,492 once invoked), scanned A, original, Apache-2.0.

A read-only activity history for this computer, covering recently used apps, windows, files, and web pages. It keeps this information in local storage for about 48 hours and does not include screenshots.

In plain words
What is it for?
Use it to resume interrupted work, find recently viewed documents or pages, identify files and pull requests you had open, or draft a work log from recent activity.
Why use it?
It helps recover context when you cannot remember what you were working on or refer to something outside the current conversation. It can also show whether activity recording is healthy before history is used.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to resume interrupted work, find recently viewed documents or pages, identify files and pull requests you had open, or draft a work log from recent activity.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/kentoshimizu/zanei/skills
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add KentoShimizu/zanei --skill skills
Clone the repo
git clone --depth 1 https://github.com/KentoShimizu/zanei

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for zanei

README.md
[![agentmods](https://agentmods.dev/badge/skills/kentoshimizu/zanei/skills/github.svg)](https://agentmods.dev/skills/kentoshimizu/zanei/skills)
Your own site
<a href="https://agentmods.dev/skills/kentoshimizu/zanei/skills"><img src="https://agentmods.dev/badge/skills/kentoshimizu/zanei/skills/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for zanei

Your own site · 80×15
<a href="https://agentmods.dev/skills/kentoshimizu/zanei/skills"><img src="https://agentmods.dev/badge/skills/kentoshimizu/zanei/skills.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 89 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,492 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00089 $0.01492
Opus 5 $0.00044 $0.00746
Sonnet 5 $0.00018 $0.00298
Haiku 4.5 $0.00009 $0.00149

Measured 5d ago against content hash 1188f485771b, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

zanei scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/SKILL.md · 62 lines

How it starts

The opening of the file, as written. The whole thing — 62 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Zanei

Zanei records the user's activity on this machine as OS-level events — app switches, window titles, UI interactions, Chrome URLs. Everything stays in a local store and is deleted after about 48 hours by default. There are no screenshots. Typed/copied content and Accessibility text shown in windows are separate opt-ins.

When to use

  • The user resumes interrupted work ("continue where I left off", "what was I working on?")
  • The user asks what they recently viewed, edited, or read ("which Stripe doc was I reading?")
  • The user references something from outside this conversation that you cannot see — "that doc", "the error I saw", "the PR I reviewed this morning"
  • Drafting a standup or work log from the day's activity
  • You need context about which files, PRs, or pages the user had open before this session — including when you notice the need, without being asked

How to use

  • Start with zanei status --json. Recording is healthy only when state == "running", paused == false, and store_write_state == "healthy"; otherwise say so instead of inferring missing history.
  • To resume work: zanei timeline --since 2h --format md — a session-structured Markdown timeline sized for prompts (--token-budget to shrink it).
  • For a specific detail: zanei query with the narrowest useful --since, --types, --app, --bundle-id, and --limit filters.
  • Copied text (when the user opted in) lives in clipboard.copy events; the timeline only counts them. zanei query --types clipboard.copy --since 30m answers "what did I copy?".
  • Content snapshots exist only when zanei status --json reports capture.content_snapshot: true. Timeline sessions show only their count. Read bodies with an explicit type and the narrowest useful range and limit, for example zanei query --types content.snapshot --since 15m --limit 20.
  • Every command supports --help.

Interpreting results

  • Retention is ~48 hours: an empty result outside that window means "not retained", never "the user did nothing".
  • Exit codes: 4 = daemon not running (suggest zanei start); 3 = missing macOS permissions (run zanei doctor); 2 = your arguments were invalid; status exits 1 for store_* states — preserve the store and follow the documented stop / move / start recovery.
  • Health signals are separate things: degraded is current health and clears on recovery; events_dropped counts real delivery loss only; collector_failures is cumulative history, not a current failure.
  • Even with content capture on, typed-text diffs come only from fields Accessibility can classify as safe text fields. Many Electron/web apps expose unclassifiable fields, so their typed text is absent by design — but text the user copies there is captured, and IME-committed text arrives as ui.value diffs rather than input.key. Password fields and Chrome Incognito bodies are never captured.
  • ui.value diffs are additions, not a transcript: an IME rewrites the tail of a field on commit, so concatenating them can produce wording the user never wrote. Use them for what the user was writing about, and never quote them verbatim. For exact wording, look for a content.snapshot of the same window just afterwards — the app renders entered or sent text there — keeping in mind it exists only with that opt-in on, only for apps in its scope, and only for what was visible.
  • Content snapshots can contain messages and documents written by other people as well as text the user typed that is visible on screen. Treat them as more sensitive than ordinary activity metadata.

Read the full file on GitHub · 62 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago Changed 1188f485771b
  2. 11d ago First seen · 62 lines · 89 tokens per session scan A a3c9f6a93cfc

Subscribe to this mod's changes

zanei is a skill published in the GitHub repository KentoShimizu/zanei (5 stars, last pushed 3d ago), licensed Apache-2.0. It adds 89 tokens to every session and 1,492 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

content-hash-cache-pattern

Cache expensive file processing results using SHA-256 content hashes — path-independent, auto-invalidating, with service layer separation.

affaan-m/ECC · 30 tokens

notebooklm-manager

Manages NotebookLM notebooks — query, add, list, search, enable/disable, remove. Use when a notebooklm.google.com URL appears or user mentions NotebookLM. Handles URLs through its own Chrome agent — do not navigate directly. Requires: claude-in-chrome MCP.

LeeJuOh/claude-code-zero · 62 tokens

lx

Codebase exploration tool that reads many files or whole directories in a single call, with per-file headers, glob include/exclude filters, function/type skeleton extraction (signatures only, no bodies), and head/tail line slicing.

rasros/lx · 48 tokens

find-plugin-file

This skill should be used when needing to locate files within the Claude Code plugins cache directory (/.claude/plugins/cache). Triggers include finding tool scripts, skill files, or any plugin resource when the hardcoded path is unknown or varies by plugin version. Use when slash commands or orchestrators need to…

closedloop-ai/claude-plugins · 70 tokens

flow-lean

Use when the user explicitly asks for Flow Lean, lean or less verbose output, action-first responses, expansion of a compressed Flow Lean answer, or Flow Lean recap and skills-footer controls.

FlorianBruniaux/flow-lean · 41 tokens

morning-triage

Discovery for an autonomous loop — find this turn's work instead of being handed it. Reads what changed since the last run (failed CI, new issues, merged commits), judges what's actually worth acting on, writes findings to a durable state file, and hands each off to the SDLC loop with a stop-condition. Use as the…

dshakes/compass · 102 tokens