Ingest Claude Code conversation/session history into Obsidian as distilled knowledge. Use for importing or mining past Claude sessions, .claude data, project/session history, or audit logs.
日本語の概要は準備中です。原文の説明を表示しています。
Ingest Codex CLI conversation/session history into Obsidian as distilled knowledge. Use for importing or mining ~/.codex sessions, rollout files, indexes, or transcript logs; use wiki-agent for targeted topic-only recall.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
You are extracting knowledge from the user's past Codex sessions and distilling it into the Obsidian wiki. Session logs are rich but noisy: focus on durable knowledge, not operational telemetry.
This skill can be invoked directly or via the wiki-history-ingest router (/wiki-history-ingest codex).
Writing profile: Before drafting or rewriting natural-language Markdown, read and apply the Writing Profile Resolution section in llm-wiki/SKILL.md. Framework schema, provenance, safety, and operation-specific requirements take precedence.
WRITING.md preferences apply only to newly drafted or rewritten natural-language Markdown; preserve source content and structured records.
llm-wiki/SKILL.md (inline @name override → walk up CWD for .env → global config → prompt setup). This gives OBSIDIAN_VAULT_PATH and CODEX_HISTORY_PATH (defaults to ~/.codex).manifest.json at the vault root to check what has already been ingestedindex.md at the vault root to understand what the wiki already containsCheck .manifest.json for each source file. Only process:
ingested_at in the manifestUse this mode for regular syncs.
Process everything regardless of manifest. Use after wiki-rebuild or if the user explicitly asks for a full re-ingest.
Codex stores local artifacts under ~/.codex/.
~/.codex/
├── sessions/ # Session rollout logs by date
│ └── YYYY/MM/DD/
│ └── rollout-<timestamp>-<id>.jsonl
├── archived_sessions/ # Archived rollout logs
├── session_index.jsonl # Lightweight index of thread id/name/updated_at
├── history.jsonl # Local transcript history (if persistence enabled)
├── config.toml # User config (contains history settings)
└── state_*.sqlite / logs_*.sqlite # Runtime DBs (usually skip)
session_index.jsonl — best inventory source for IDs, titles, and freshnesssessions/**/rollout-*.jsonl — rich structured transcript eventshistory.jsonl — useful fallback/timeline aid if enabledAvoid ingesting SQLite internals unless the user explicitly asks.
Scan CODEX_HISTORY_PATH and compare against .manifest.json:
~/.codex/session_index.jsonl~/.codex/sessions/**/rollout-*.jsonl~/.codex/archived_sessions/** (optional; only if user asks for archived history)~/.codex/history.jsonl (optional fallback)Classify each file:
ingested_atReport a concise delta summary before deep parsing.
session_index.jsonl typically has entries like:
{"id":"...","thread_name":"...","updated_at":"..."}
Use it to:
Each rollout-*.jsonl line is an event envelope with:
{
"timestamp": "...",
"type": "session_meta|turn_context|event_msg|response_item",
"payload": { ... }
}
response_item records with user/assistant message contentevent_msg selectively for meaningful milestones; ignore pure telemetrysession_meta as metadata (cwd, model, ids), not user knowledgeRollout logs can include injected instructions, tool payloads, and sensitive text. Do not ingest verbatim system/developer prompts or secrets.
Do not create one wiki page per session.
cwd from metadata to infer project scopeRoute extracted knowledge using existing wiki conventions:
projects/<name>/...concepts/skills/entities/synthesis/For each impacted project, create/update projects/<name>/<name>.md (project name as filename, never _project.md).
summary: frontmatter on each new/updated page (1-2 sentences, <= 200 chars)base_confidence: 0.42
lifecycle: draft
lifecycle_changed: <ISO date today>
Leave lifecycle unchanged on update.^[extracted] when directly grounded in explicit session content^[inferred] when synthesizing patterns across events/sessions^[ambiguous] when sessions conflictprovenance: frontmatter mix for each changed page.manifest.jsonFor each processed source file:
ingested_at, size_bytes, modified_atsource_type: codex_rollout | codex_index | codex_historyproject: inferred project name (when applicable)pages_created, pages_updatedAdd/update a top-level project/session summary block:
{
"project-name": {
"source_path": "~/.codex/sessions/...",
"last_ingested": "TIMESTAMP",
"sessions_ingested": 12,
"sessions_total": 40,
"index_updated_at": "TIMESTAMP"
}
}
Update index.md, log.md, and hot.md with one locked call:
obsidian-wiki memory sync CODEX_HISTORY_INGEST \
sessions=<sessions> pages_updated=<pages_updated> \
pages_created=<pages_created> mode=<mode> \
--takeaways "Ingested 12 Codex sessions; surfaced recurring patterns in CLI tooling and shell scripting."
Never hand-edit index.md, log.md, or hot.md — the command takes the lock that keeps a parallel writer from dropping your update. --takeaways is the one-line conceptual summary that used to go in Recent Activity;
omit it to leave the previous takeaways untouched.
See .skills/llm-wiki/references/MEMORY.md for the full procedure.
See references/codex-data-format.md for field-level parsing notes and extraction guidance.
QMD is a search index, not the source of truth. If $QMD_WIKI_COLLECTION is empty or unset, skip this step. Run it only after this skill has written or rewritten vault markdown. If QMD refresh fails, do not roll back the vault changes; report the QMD status separately.
Use $QMD_CLI if set; otherwise use qmd.
${QMD_CLI:-qmd} update
If the output says vectors are needed or embeddings may be stale, run:
${QMD_CLI:-qmd} embed
Verify the collection with either:
${QMD_CLI:-qmd} ls "$QMD_WIKI_COLLECTION"
or, when a specific page path is known:
${QMD_CLI:-qmd} get "qmd://$QMD_WIKI_COLLECTION/<page>.md" -l 5
Record one of:
QMD refreshed: update + embed + verifiedQMD refreshed: update only + verifiedQMD skipped: QMD_WIKI_COLLECTION unsetQMD skipped: qmd CLI unavailableQMD failed: <short error summary>まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Ingest Claude Code conversation/session history into Obsidian as distilled knowledge. Use for importing or mining past Claude sessions, .claude data, project/session history, or audit logs.
日本語の概要は準備中です。原文の説明を表示しています。
Map the load-bearing files, symbols, callers, and dependencies of an unfamiliar codebase before making changes. Use for architecture orientation, impact analysis, what-would-break questions, or finding callers. Uses CodeGraph when available and a dependency-free builtin fallback.
日本語の概要は準備中です。原文の説明を表示しています。
Ingest GitHub Copilot CLI/session history into Obsidian as distilled knowledge. Use for importing or mining Copilot history; not for general Copilot help, simple session search, or backup.
日本語の概要は準備中です。原文の説明を表示しています。
Find and add missing cross-references between wiki pages. Use when pages are disconnected or after large ingestion. This modifies pages to add links; use wiki-lint for report-oriented structural auditing.
日本語の概要は準備中です。原文の説明を表示しています。
Run or configure the daily wiki maintenance cycle: check source freshness, refresh the index and hot.md, and manage its scheduled 9 AM launchd/systemd/cron reminder. Use for daily or morning wiki refresh or scheduler setup and verification.
日本語の概要は準備中です。原文の説明を表示しています。
Configure Obsidian graph colors by tag, folder, category, or visibility by updating .obsidian/graph.json. Use for graph colorization; preserve other graph settings and back up before changes.
日本語の概要は準備中です。原文の説明を表示しています。