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.
npx skills add diillson/chatcli --skill obsidiangit clone --depth 1 https://github.com/diillson/chatcliWrote 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/diillson/chatcli/obsidian)<a href="https://agentmods.dev/skills/diillson/chatcli/obsidian"><img src="https://agentmods.dev/badge/skills/diillson/chatcli/obsidian/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/diillson/chatcli/obsidian"><img src="https://agentmods.dev/badge/skills/diillson/chatcli/obsidian.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00064 | $0.00643 |
| Opus 5.5 | $0.00026 | $0.00257 |
| Sonnet 5.5 | $0.00013 | $0.00129 |
| Haiku 4.5 | $0.00006 | $0.00064 |
Grade A, and why
obsidian 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 1mo 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.
What it actually says
Obsidian Vault
Filesystem-first Obsidian work: the vault is just markdown files, so use ChatCLI's file
tools (@read, @search, Read/Write/Edit) over shell cat/find — they give line
numbers, pagination, and handle paths with spaces.
Resolve the vault path first
Order of resolution:
OBSIDIAN_VAULT_PATHenv var, if set.- Common defaults:
~/Documents/Obsidian Vault(macOS/Windows),~/obsidian,~/vault. - If unknown, ask the user for the path.
File tools don't expand $OBSIDIAN_VAULT_PATH — resolve it to a concrete absolute path first
(@coder exec echo $OBSIDIAN_VAULT_PATH on Unix, $Env:OBSIDIAN_VAULT_PATH on Windows),
then pass the literal path.
Read / list / search
- Read a note →
@readwith the absolute path. - List notes →
@searchfor files matching*.mdunder the vault. - Search content →
@search(ripgrep-backed) for the term across the vault. Summarize hits asnote title — matching line, don't dump raw output.
Create a note
Write a new <vault>/<folder>/<Title>.md. Start with frontmatter when the vault uses it:
---
created: 2026-06-03
tags: [meeting]
---
# Title
...body...
Append (e.g. daily note)
Resolve today's daily note path (often <vault>/Daily/2026-06-03.md), then Edit to append a
section — never overwrite an existing note's body.
Wikilinks
Link notes with [[Note Title]]. When creating a note that references others, add the
[[...]] links so the graph stays connected. Tags are #tag inline or in frontmatter.
Rules
- Prefer file tools; only shell out to resolve the vault path.
- Never clobber an existing note — append or create a new one unless told to replace.
- Keep the user's existing frontmatter/tag conventions; mirror what neighboring notes do.
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.
- 1mo ago First seen · 71 lines · 64 tokens per session scan A 51d357f36e23
obsidian is a skill published in the GitHub repository diillson/chatcli (93 stars, last pushed today), licensed Apache-2.0. It adds 64 tokens to every session and 643 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-03.
Other skills, from other repositories
05-improve
Reads complete conversation evidence, measures visible cost, and recommends minimal improvements. Use when the user wants to improve a conversation, reduce wasted time or tokens, or choose files to revise. Not for delivery review or automatic edits.
10-todo
Split the user prompt into independent todos and run one executor agent per todo in parallel, then report a minimal table. Use when the user says "todo" or asks to fan out a multi-part request into parallel implementations.
09-for-sure
Run an iterative agent loop that retries until a runnable success condition passes. Use when the user says "for sure", "keep trying until", or wants guaranteed completion against a success command. Not for one-shot tasks or uncheckable goals.
12-cook
Manage project recipes/how-to sheets by listing, creating, updating, researching, or applying a recipe. Use for recipe, cook, /cook, list, new, update, research, apply.
claudeshrink
Automatically compress large natural text or log files before processing. Trigger when the user pastes massive text blobs, or asks to analyze a large file (logs, docs, transcripts), or provides a prompt that is too large for the context window. DO NOT trigger on source code files or structural data (JSON, XML).
agent-state-bar
A design guide for an agent status bar: a short, automatically updated summary of progress, remaining tasks, tool counts, errors, and system state placed near the latest model input.