From ziki
This skill should be used when the user asks to "add to ziki", "save to ziki", "file this in ziki", "add to inbox", or "save this to the knowledge base". Also used internally by the Stop and PreCompact hooks to autonomously file inbox-worthy content from the current session.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ziki:ziki-addThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
File content into the Ziki knowledge base inbox via the remote vault repository.
File content into the Ziki knowledge base inbox via the remote vault repository.
This skill is used both explicitly (user request or /ziki-add command) and
autonomously (Stop/PreCompact hooks).
Every inbox entry has two layers, and you must capture both in the same pass:
_inbox/<slug>.md._refs/<snapshot>.md (for cacheable
content) and/or stable URLs recorded in the inbox file's ground_truth: field.The synthesis is worthless without ground truth. A later /ziki-inbox pass —
possibly days later, in a different session — will re-verify your claims against
the ground-truth sources before promoting the draft to a wiki page. If you file a
synthesis with no ground truth, the re-verification step has nothing to check
against, and the knowledge you captured degrades into unverifiable hearsay.
Capture ground truth NOW, not later. This skill runs inside a live session
that has full context: which files were read, which commits were referenced,
which docs were fetched, which repo was explored. That context evaporates the
moment the session ends. /ziki-inbox can re-fetch external URLs, but it
cannot recover "the state of mikluko/yosh at commit abc1234 that the earlier
session was looking at". Ground truth that is not captured here is lost
permanently.
https://github.com/owner/repo/tree/<sha>) — never bare main._refs/._refs/._refs/ with a session:
origin marker.Ask: "If a future session had to verify every claim in my draft, what would it
need to read?" Capture exactly that. If you cannot name a single ground-truth
source for a draft, the draft is too speculative — file it with an explicit
ground_truth: [] and a status: unverified marker, or skip it.
You MUST read ~/.claude/ziki.md FIRST, before doing anything else. This file
contains the vault repository coordinates (YAML frontmatter) and the exact tools or
commands to use for reading and writing vault files (markdown body).
Do NOT write to the local filesystem. The vault is a remote git repository. Even
if you see a local checkout of the vault (e.g. ~/Documents/ziki/), do not use it.
All reads and writes go through the remote access method described in ~/.claude/ziki.md.
If ~/.claude/ziki.md does not exist, stop and tell the user to run /ziki-setup.
Handle any of the following (infer from context, no user input required). Each input implies a different ground-truth capture duty — see the right column.
| Input | Synthesis | Ground truth to capture alongside |
|---|---|---|
| URL | Extract clean text as the draft body, or summarize it | Cache the page verbatim to _refs/ and record the URL |
| File path | Summarize or extract key ideas | Snapshot the file contents to _refs/ with a session-origin marker |
| Topic / conversation excerpt | Synthesize a draft from session context | List every primary source the synthesis leans on and cache each one (see below) |
| Codebase exploration (you read files from a repo before filing) | Synthesis of architecture, design, behaviour | Repo URL pinned to commit SHA + _refs/ snapshots of the specific files you relied on |
| Combination | Draft that blends a URL with surrounding analysis | All sources above, combined |
For the Topic / conversation excerpt and Codebase exploration cases — the ones where you are writing from memory or derivation rather than a single obvious source — you are personally responsible for reconstructing the ground truth from the session. Before writing the draft, list out:
Then cache each of those to _refs/ and record them in the inbox file's
ground_truth: field. Only after that should you write the synthesis.
~/.claude/ziki.md: parse frontmatter for vault coordinates, read body
for access instructions._refs/ (see "Reference snapshots" below).
Do this BEFORE writing the draft, so the draft can reference the cached paths.wiki/_index.md and list _inbox/ directory from the vault
(using the remote access method). If a near-duplicate exists, skip silently.
Also list _refs/ and reuse any existing snapshot instead of creating a duplicate.<kebab-case-title>.md (short, descriptive, no dates).---
title: "<Title>"
type: concept | entity | comparison | synthesis | reference
tags: [tag1, tag2]
sources:
- <where the synthesis came from: session context, conversation excerpt, a user message, etc.>
ground_truth:
- _refs/<snapshot>.md
- https://github.com/owner/repo/tree/<commit-sha>
- https://docs.example.com/spec # stable canonical URL
created: YYYY-MM-DD
status: inbox
---
# Title
Content here. Claims that lean on a specific ground-truth source should say so
inline (e.g. "per `_refs/sing-box--vless-inbound.md`" or "per yosh `main.go` at
`abc1234`"), so the `/ziki-inbox` re-verification step can trace each claim to a
source without guessing.
The ground_truth: list is required and must be non-empty for any draft
that makes factual claims. An empty list is allowed only for pure opinion,
preference, or personal-journal entries — and those should also carry
status: unverified.
Write files to the vault in a single commit:
_inbox/<filename>.md_refs/<snapshot>.md per ground-truth source you cachedziki: add to inbox — <title>Prefer a single commit that contains the draft and all of its ground-truth snapshots together. A draft that lands without its refs breaks the verification chain.
_refs/)_refs/ is the ground-truth cache. Every inbox draft that makes factual claims
should land with at least one _refs/ snapshot in the same commit. This is not
optional sugar — it is the mechanism that makes the re-verification step in
/ziki-inbox possible at all.
When to cache: any primary source the draft depends on — web pages, docs, source files from a repo, specifications, transcripts, pasted user content. Do NOT cache trivial pages, search-result SERPs, or auto-generated dashboards.
When NOT to cache (reference the URL only instead): content already available
at a stable canonical URL that will not rot (RFCs on rfc-editor.org, W3C specs,
pinned git permalinks). In these cases record the stable URL directly in
ground_truth: and skip the _refs/ snapshot.
Naming convention:
<domain>--<kebab-title>.md
(e.g. docs-nats-io--jetstream-overview.md)<owner>-<repo>--<path-kebab>@<short-sha>.md
(e.g. [email protected])session--<kebab-title>.md
(e.g. session--yosh-design-notes.md)Frontmatter format (adapt to origin):
---
# For web content:
url: "https://docs.nats.io/nats-concepts/jetstream"
fetched: YYYY-MM-DD
content_type: documentation | article | specification | transcript
# For repo file snapshots (in addition to or instead of url):
repo: "mikluko/yosh"
path: "cmd/bot/main.go"
commit: "abc1234"
fetched: YYYY-MM-DD
content_type: source-code
# For session-origin content:
origin: session
captured: YYYY-MM-DD
content_type: design-note | pasted-text | transcript
---
# Page Title or File Path
Extracted content here (clean markdown / verbatim source, no HTML noise).
Rules for _refs/:
_refs/ and reuse an existing snapshot before creating a new onemain/HEADRead _meta/taxonomy.md from the vault to select tags. Extend the vocabulary there if
a new tag is clearly needed.
/ziki-add~/Documents/ziki/ or any other local pathmain/HEADground_truth: field; the only acceptable empty list
is on opinion/preference entries, which must also carry status: unverified_inbox/ file per distinct concept; do not bundle unrelated thingswiki/_index.md and existing _inbox/ files before creating
a near-duplicate; check _refs/ before creating a near-duplicate snapshotnpx claudepluginhub mikluko/ziki-plugin --plugin zikiFetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Applies a firm's KYC/AML rules grid to parsed onboarding records: assigns risk rating, checks required documents, outputs rule outcomes with citations, and routes for escalation.
Generates daily or weekly digests of activity from connected sources (chat, email, docs, tasks, CRM), highlighting action items, decisions, mentions, and project updates.