anarlog is a local-first AI meeting notetaker that captures device audio, transcribes meetings, and stores notes, transcripts, and recordings on the user's computer. It is for people who want meeting notes without adding a bot to calls or sending conversation data to an external cloud. The catalogue entries provide agent integrations and workflows for the application.
Borrowing it
Nothing to install: this file belongs to fastrepl/anarlog. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/fastrepl/anarlog/main/.agents/skills/testing/SKILL.mdgit clone --depth 1 https://github.com/fastrepl/anarlogWrote 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.
[](https://agentmods.dev/skills/fastrepl/anarlog/testing)<a href="https://agentmods.dev/skills/fastrepl/anarlog/testing"><img src="https://agentmods.dev/badge/skills/fastrepl/anarlog/testing/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.
<a href="https://agentmods.dev/skills/fastrepl/anarlog/testing"><img src="https://agentmods.dev/badge/skills/fastrepl/anarlog/testing.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00068 | $0.00728 |
| Opus 5.5 | $0.00027 | $0.00291 |
| Sonnet 5.5 | $0.00014 | $0.00146 |
| Haiku 4.5 | $0.00007 | $0.00073 |
Grade A, and why
testing 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 29d 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.
How it starts
The opening of the file, as written. The whole thing — 43 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Testing
Use this skill when adding, changing, deleting, or reviewing tests in Anarlog, deciding whether a change needs a test, or pruning a test suite. Tests are code we pay for on every CI run and every refactor; keep the ones that catch real regressions and nothing else.
Write a test when
- A bug was fixed: add one regression test that fails without the fix. One, not a matrix of neighbours.
- The behavior is observable by a user or another component: public APIs, tauri-specta bindings, OpenAPI contracts, MCP and CLI output, serializers and parsers, TipTap/ProseMirror JSON conversion.
- Losing it loses data or trust: SQLite migrations and desktop/mobile schema parity, CloudSync and E2EE, auth, billing and Stripe webhooks, permissions and RLS, recording and STT lifecycles.
- It is a real concurrency or recovery invariant: capture start/stop races, crash recovery, retry, cancellation, ordering between actors or tasks.
- It encodes release or store policy that a workflow edit could silently break (for example
scripts/desktop-release-provenance.test.mjs).
Do not write a test for
- CSS classes, DOM structure, exact copy, or log text, unless the text is a contract (CLI output parsed by another tool, i18n keys checked by CI).
- Mock call counts or call order when the observable result already proves the behavior.
- Private state, internal helpers already covered through their public caller, or trivial delegation.
- Framework or library behavior (React, TanStack, Tauri, Zustand, Tokio, serde).
- Constants, enum tables, type re-exports, or anything that mirrors source line by line.
- Package or file layout. Structural and import-boundary rules belong in oxlint/ESLint rules, not tests that read files from disk.
test.skip/#[ignore]without a linked issue.
Budget
- Prefer strengthening an existing test over adding a new one. Prefer one table-driven case over five copies only when the rows exercise different branches.
- A new test must name the regression it prevents in its title.
- Deleting a test is fine when the behavior is covered elsewhere, the code is gone, or it matches the "do not write" list. Say which in the commit or PR.
- Keep fixtures and helpers next to the tests that use them; delete them with the last caller.
- If a module's test file outgrows its source several times over, stop adding and consolidate first.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 29d ago First seen · 43 lines · 68 tokens per session scan A d1a6585cda17
testing is a skill published in the GitHub repository fastrepl/anarlog (9,621 stars, last pushed yesterday), licensed MIT. It adds 68 tokens to every session and 728 once invoked, about $0.0003 per session on Opus 5.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-09-30.
Other skills, from other repositories
testing-rules
Testing standards — frameworks, the testable-logic trigger, golden/snapshot rules, mocking rules, and the test-author → testing-reviewer pipeline. Load for /add-tests and any change that touches testable logic.
author-contract
Shared write-side contract every domain AUTHOR imports — smallest-diff implementation, ground-first, validation gates, tests-are-blocking, and never-approve-your-own-work. The write-side mirror of token-efficiency. Load at the start of any implementation task.
coding-standards
General repo rules enforced by ESLint/TypeScript/CI — PRs-only, never bypass lint, import ordering, type imports, path privacy, commit format. Load for any code change.
run-wenlan-app
Build, launch, screenshot, and drive the wenlan-app Tauri desktop app in dev mode on macOS (WKWebView) or Windows (WebView2). Use when asked to run or start the app, verify a UI change in the real running app (not just tests), or take a screenshot of it.
graphify-windows
Turn any folder of files into a navigable knowledge graph with community detection, an honest audit trail, and three outputs: interactive HTML, GraphRAG-ready JSON, and a plain-language GRAPHREPORT.md.
lessons
How to propose and query distilled lessons (the experiential memory). Only project-steward persists; every other agent proposes/queries. Use when you discover a durable lesson or need prior experience for the current task.