Commit Graph

45 Commits

Author SHA1 Message Date
Arnav 77d74e0261 feat(config): XDG-style config location, with legacy fallback (#172) (#173)
* feat(config): resolve global config from an XDG-style location (#172)

The global config lived at ~/.obsidian-wiki, which isn't XDG-compliant.
It now resolves to $XDG_CONFIG_HOME/obsidian-wiki (default
~/.config/obsidian-wiki).

Existing installs are unaffected: if ~/.obsidian-wiki is present and the
XDG path is not, the legacy directory is used as-is. No migration is
required, and nothing moves on upgrade. Once the XDG path exists it wins,
so `mv ~/.obsidian-wiki ~/.config/obsidian-wiki` is all a migration takes.

Resolution is implemented identically in Python (cli.py), bash (setup.sh,
scripts/daily-update.sh, scripts/wiki-notify.sh), and the Config
Resolution Protocol that every skill defers to, so vault-scoped state and
named `config.<name>` profiles stay in one place.

* fix(config): stop setup from wiping user-added config keys

`write_config` rewrote the global config with only the three setup-managed
keys, so every `obsidian-wiki setup` — including the one a pip upgrade
prompts for — silently destroyed anything else in the file:
OBSIDIAN_LINK_FORMAT, QMD_WIKI_COLLECTION, WIKI_SKIP_PROJECTS, sync
settings, and comments.

Setup now owns only OBSIDIAN_VAULT_PATH, OBSIDIAN_WIKI_REPO and
OBSIDIAN_WIKI_VERSION, updating those in place and carrying every other
line over untouched. Duplicate definitions of a managed key collapse to
one.

Predates the XDG change (same behavior on main) but is fixed here because
this branch already touches config writing, and the XDG work makes
re-running setup more likely.

Also pins PYTHONPATH in both new test files so they exercise this
checkout rather than whatever obsidian_wiki happens to be installed.
2026-08-16 20:40:09 -07:00
Mike Tsai b7c7b747a3 fix: sync wiki-history-ingest router targets; translate trust ledger for zh-TW (#165)
* docs: design git project manifest identity

* docs: narrow git project identity to safe MVP

* docs: add Git project identity MVP implementation plan

* docs: sync README translations and fix history router references

- README_TW.md: add missing trust-check/trust-record commands and wiki-narrate row
- README.md/README_TW.md: document all 37 skills (table + project structure tree),
  add README_TW.md and package/extension entries to the tree
- wiki-history-ingest: update router targets from 4 to 6 agents (add copilot,
  openclaw) in README.md, README_TW.md, AGENTS.md, SETUP.md,
  copilot-instructions.md, and windsurf rules
2026-08-11 10:35:57 -07:00
ar9av 4bf87a8d19 feat(sessions): add session brain; restructure README behind docs/
Two strands of work.

Session brain — a topic graph over raw agent session history, so you can
find the session where something happened instead of remembering its
UUID. Reads every Claude transcript plus the pruned sessions that survive
only as prompts in history.jsonl, clusters them with local TF-IDF and
community detection (no embeddings, no API calls, no new dependencies),
and writes a sidecar at ~/.claude/session-brain/ — the vault is never
touched. Ships five modules, the sessions-* CLI commands, an interactive
graph.html, and the /session-brain and /wiki-sessions skills. This is
retrieval, deliberately distinct from wiki-history-ingest, which distils
sessions into permanent vault pages.

Docs — README.md was 598 lines and put trust-check flags and a 17-row
agent matrix in front of anyone evaluating the project. Cut it to a 129-
line landing page (problem statement, 60-second install, four blocks of
runnable commands, graph screenshot, why-not-a-notes-folder) and move the
reference material into docs/: installation, agents, skills, cli,
configuration, architecture, session-brain, contributing. README_TW.md
mirrors the new structure; docs/ stays English-only for now.

The restructure also closed real drift:

- Ten skills existed but appeared in no reference — session-brain,
  session-search, wiki-dedup, wiki-digest, wiki-import, wiki-context-pack,
  wiki-stage-commit, wiki-switch, vault-skill-factory, and
  obsidian-layout-adjustment.
- SETUP.md listed 12 of 39 skills and still claimed "no scripts, no
  dependencies" despite the pip package. It is now a signpost into docs/.
- Eight config variables were undocumented anywhere, including
  WIKI_STAGED_WRITES, which wiki-setup prompts for and three skills read.
  Added to .env.example and docs/configuration.md.
- sessions-name and a number of CLI flags were missing from the docs.

Two details worth noting. README links are absolute GitHub URLs because
pyproject sets readme = "README.md" as the PyPI long_description, and PyPI
resolves relative hrefs against pypi.org rather than the repo — docs/
links would have 404'd on the package page. And three doc-drift guards
asserted their facts against README.md; since those facts moved rather
than disappeared, the assertions were repointed at the page that now owns
each one instead of padding content back into the README.

Also gitignore /vault/ (a local knowledge vault, not a fixture) and the
packed browser extension.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-30 12:07:48 -07:00
Mike Tsai 3288eb648b feat: add vault-backed agent context (#149) 2026-07-26 23:15:52 -07:00
Mike Tsai e8172201fc refactor(ci): make README translation sync advisory, not a merge gate
The readme-sync workflow no longer fails when README.md and
README_TW.md don't change together. Instead, check_readme_sync.py
reports drift: it lists commits that touched README.md after the
last README_TW.md update, plus the pending English diff to translate
and backfill. CI surfaces drift as a warning annotation only.

Claude-Session: https://claude.ai/code/session_01PG9Pz6tcUfgpTHLjq3BT5Q
2026-07-18 10:35:45 +08:00
Mike Tsai d2b89f15c4 docs: require synchronized README translations 2026-07-16 00:53:18 +08:00
Mike Tsai efee785d63 docs: exclude _readouts/ from vault-scanning skills
wiki-narrate saves derived readouts to _readouts/, but cross-linker,
wiki-export, and wiki-lint scanned every .md in the vault and would
have linked, exported, or lint-flagged them. Exclude the directory in
all three and document it in the AGENTS.md vault structure.
2026-07-12 17:37:36 +08:00
Mike Tsai 198befd96b docs: document wiki narrate 2026-07-12 14:08:18 +08:00
Mike Tsai 2cc64265e5 docs: route wiki-context-pack, wiki-stage-commit, obsidian-layout-adjustment in skill table (#131)
Three skills existed in .skills/ but were missing from the AGENTS.md
Skill Routing table, making them invisible to agent dispatch.


Claude-Session: https://claude.ai/code/session_015e5m1CuEE5DTQcFFmeCgRu

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-11 12:52:43 -07:00
Arnav d6dee95ede Add inline vault targeting docs
Document @name named-vault routing across shared skills, bootstrap docs, and README; add regression tests for config-resolution consistency.
2026-06-29 16:24:47 -07:00
Arnav 30a1e01725 feat(export/import): OKF (Open Knowledge Format) bundle interop (#103)
Add lossless OKF v0.1 round-trip to wiki-export and wiki-import. OKF
(Google's knowledge-catalog) is a vendor-neutral spec for knowledge as
markdown + YAML frontmatter — structurally near-identical to this vault.

- wiki-export: new "OKF bundle" output mode (wiki-export/okf/), the
  canonical frontmatter mapping (category/summary/sources/updated ⇄
  type/description/resource/timestamp), [[wikilink]]→file-relative
  markdown link transform, per-folder index.md generation, okf_version.
- wiki-import: source-type detection (graph.json vs OKF dir) + Step 4-OKF
  that reconstructs full pages (not stubs) via reverse mapping.
- AGENTS.md: routing triggers + OKF-conformance architecture note.

Native frontmatter keys ride along as OKF extension frontmatter, making
the round-trip lossless — unlike the stub-only graph.json round-trip.

Forward-references (wikilinks to not-yet-written pages) are preserved as
links per OKF §5.3 rather than dropped to plain text.

Verified on st3ve (46-page vault): 46/46 exported, 0 OKF §9 conformance
issues, 25/25 frontmatter lossless, 46/46 body/link-graph lossless.
2026-06-14 10:57:53 +05:30
Arnav 9e85b62b40 feat(skills): add vault-skill-factory — generate Agent Skills from mature wiki pages (#98)
Implements the proposal from issue #96. Turns a cluster of mature, curated
Obsidian wiki pages into a portable Agent Skill (SKILL.md + references/),
the inverse of wiki-capture.

- .skills/vault-skill-factory/SKILL.md: new skill with hard guardrails
  (never writes to .skills/, never auto-installs), QMD-based cluster
  discovery, maturity filtering, and provenance manifest.
- .env.example: SKILL_FACTORY_OUTPUT_DIR and SKILL_FACTORY_MATURITY keys.
- AGENTS.md: routing row for /vault-skill-factory and related phrasings.

Closes #96
2026-06-14 07:41:35 +05:30
Arnav f057168ea8 refactor(skills): fold 3 redundant skills into survivors (38→35) (#85)
Continues the skill-surface consolidation (#84). Removes three skills
whose capability fully overlaps a survivor, so users and the router stop
disambiguating near-duplicates. No functionality lost.

- obsidian-wiki-ingest: a self-described "wrapper for wiki-ingest" that
  never did anything wiki-ingest doesn't. Deleted outright.

- wiki-quick-chat-capture -> wiki-capture --quick: quick mode folded in
  as a documented fast path (gate, _raw/ staging, <60s, no manifest
  writes). RAW-FORMAT.md moved to wiki-capture/references/. The
  session-end Stop hook now asks for `/wiki-capture --quick`.

- ingest-url -> wiki-ingest: URL ingestion folded in. The full URL
  mechanics (project detection, defuddle, dedup, slug, project/misc
  frontmatter, affinity scoring, stub handling, INGEST_URL log) moved
  verbatim to wiki-ingest/references/url-sources.md, pointed to from a
  new "Web URL sources" section.

Repointed every reference: AGENTS.md (+CLAUDE.md symlink), README,
wiki-setup, wiki-query, llm-wiki, RAW-FORMAT.md.
2026-06-11 12:04:19 +05:30
Arnav 4b1cd29dc8 refactor(skills): merge data-ingest into wiki-ingest (#84)
data-ingest was effectively wiki-ingest plus a format-detection
preamble — its own process step said "Follow the wiki-ingest skill's
process for creating/updating pages". The split forced users and the
skill router to disambiguate two overlapping ingest skills (a .md
ChatGPT export fit either one).

Fold it in to keep the skill surface small:
- wiki-ingest now handles structured docs AND raw/unstructured text
  (chat exports, Slack/Discord JSON, CSV/JSON, transcripts, logs).
- Added an "Unstructured & conversational sources" section to Step 1
  with format detection, chat-export shapes, and "distill substance,
  not dialogue" guidance carried over from data-ingest.
- Expanded the description to absorb data-ingest's triggers.
- Removed .skills/data-ingest/ and repointed every reference
  (CLAUDE.md/AGENTS.md, README, SETUP, llm-wiki, wiki-status,
  wiki-rebuild, wiki-quick-chat-capture, and the mirror rule files
  for cursor/windsurf/agent/kiro/copilot).
2026-06-11 11:45:36 +05:30
ar9av 0234628f4c feat(skill): wiki-import — reconstruct vault pages from graph.json export
Pairs with wiki-export: takes a graph.json snapshot and rebuilds page stubs
in the target vault with correct frontmatter, wikilinks, and typed relationships.
Supports skip/overwrite/merge conflict modes and updates all vault metadata files.
2026-05-28 11:39:17 +05:30
Arnav 7d56116679 feat(skill): wiki-quick-chat-capture — zero-friction mid-session finding capture (#70)
* feat(skill): add wiki-quick-chat-capture for zero-friction mid-session finding capture

Implements the skill proposed in issue #69. Extracts reusable technical findings
(bugs, gotchas, API quirks) from the current conversation and stages them as
structured _raw/ files in under 60 seconds — no subagents, no QMD, no manifest
writes. Full promotion to wiki pages happens later via /wiki-ingest or /data-ingest.

* refactor(wiki-quick-chat-capture): add agentskills.io frontmatter, RAW-FORMAT reference, OBSIDIAN_RAW_DIR support

- Add compatibility, metadata, and allowed-tools frontmatter fields for cross-agent portability
- Extract body format spec and provenance/confidence calibration table to references/RAW-FORMAT.md
  (keeps SKILL.md under 500 lines; details loaded on demand)
- Support OBSIDIAN_RAW_DIR config key so _raw/ can live outside the vault root
- Trim inline format docs from SKILL.md now that they live in the reference file

Incorporates feedback from @BenRoe in PR #70 comment.
2026-05-27 08:09:33 +05:30
Louis van Schalwkyk 6f20faaa0f feat(pi): add first-class Pi coding agent support (#63)
Thanks for the well-structured PR — mirrors the existing `claude-history-ingest` / `codex-history-ingest` pattern cleanly and the Pi session-format details (tree JSONL with id/parentId, message roles, compaction/branch_summary) line up with pi.dev.

Reviewed:
- New `pi-history-ingest` skill, routing across `wiki-history-ingest`, `wiki-agent` (`/wiki-pi`), and `memory-bridge`
- `setup.sh`, `.env.example`, `AGENTS.md`, `README.md`, `SETUP.md`, and all four IDE rule files updated consistently
- 38 committed symlinks under `.pi/skills/` + 5 cross-agent symlinks

One small follow-up: the SKILL.md cites `references/pi-data-format.md` but the file isn't shipped (the claude/codex skills both ship that companion reference). I'll add it in a follow-up so the family stays consistent.
2026-05-20 13:05:14 +05:30
Arnav 1d7e980777 feat: wiki-dedup skill — identity resolution and page-level deduplication (#44) (#54)
* feat: add wiki-dedup skill — identity resolution and page-level deduplication (closes #44)

* fix: correct scoring weights and YAML block scalar title parsing in wiki-dedup

st3ve testing found two bugs:
- Scoring cap of 0.50 was too tight — obvious duplicates like 'Fine-tuning LLMs' vs
  'LLM Fine-tuning' scored 0.70 (LOW) instead of MEDIUM. Raised title score cap to 0.65,
  tag overlap 3+ bonus to 0.15, giving real duplicate pairs MEDIUM (0.75+) scores.
- YAML block scalar titles (title: >-) were parsed as the literal string '>-', causing
  false-positive matches between unrelated pages. Added extraction note covering >-, >, |, |-.
2026-05-16 09:38:43 +05:30
Ar9av 3b4e6c00b1 feat: add wiki-digest skill — periodic knowledge newsletter generator
New skill that produces a human-readable digest of what was learned,
updated, and connected in the wiki over a configurable period (day /
week / month). Triggered by "/wiki-digest", "what did I learn this
week", "weekly summary", etc.

What it does:
- Collects pages active in the period by created/updated frontmatter
- Identifies top themes from tags, flagging new vocabulary
- Surfaces notable cross-category wikilinks formed this period, ranked
  by interestingness (hub proximity, inferred claims, cross-domain score)
- Reports open threads: drafts, ^[ambiguous] claims, _raw/ files, taxonomy gaps
- Recommends pre-period pages worth revisiting given new connections
- Generates a structured digest with Headlines, New Knowledge, Themes,
  Connections, Open Threads, and Re-reads sections
- Optionally saves to journal/digest-YYYY-MM-DD.md and logs to log.md
- Respects visibility/ tags (omits pii pages from output unless asked)

Distinct from wiki-status (which reports *source* ingestion delta) —
wiki-digest summarizes *knowledge*, not pending sources.

Changes:
- .skills/wiki-digest/SKILL.md — full skill instructions
- Symlinks in all 5 mirror dirs (.agents, .claude, .cursor, .windsurf, .kiro)
- AGENTS.md routing table updated with trigger phrases
2026-05-10 18:21:22 +00:00
Henry a352018f76 feat: add wiki-switch skill for multi-vault profile management
Adds a new skill that lets users switch between named Obsidian vault
profiles via ~/.obsidian-wiki/config.NAME symlinks. Supports list,
show, switch, and new-vault-scaffold operations.
2026-05-09 00:15:28 +08:00
Ar9av 23c4a92b59 fix: sync missing skills to all mirrors and document new skills
- Copy 6 missing skills to .claude, .cursor, .agents, .windsurf mirrors:
  codex-history-ingest, copilot-history-ingest, graph-colorize,
  hermes-history-ingest, openclaw-history-ingest, wiki-history-ingest
- Add .skills/obsidian-wiki-ingest and its mirror copies (was untracked)
- Update README skill table to include all 30 skills (was missing 8)
- Update AGENTS.md routing table: add copilot-history-ingest and
  obsidian-wiki-ingest trigger phrases
2026-05-08 13:00:23 +00:00
Mikhail Lai 8696fa9989 docs: sweep config protocol references (#31) 2026-05-08 15:35:50 +05:30
ar9av ae2cff3e4a feat: add wiki-agent skill for targeted cross-agent history search
Introduces /wiki-claude, /wiki-codex, /wiki-hermes, /wiki-openclaw,
/wiki-copilot commands. Unlike wiki-history-ingest (bulk), this does
query-driven targeted search: find sessions about a specific topic in
one agent's raw history, extract the relevant blob using per-agent
extraction strategies, ingest into wiki, and return a synthesized answer
immediately usable in the current session.

Primary use case: you're on agent A, want to pull in how you solved X
in agent B's history, without ingesting all of B's sessions.

Registered across all 5 tool dirs (.claude, .kiro, .agents, .cursor, .windsurf).
2026-05-06 10:15:35 +05:30
ar9av 22f48feee4 feat: add memory-bridge, impl-validator, and daily-update skills
- memory-bridge: browse wiki by source tool; diff mode surfaces knowledge
  blind spots between AI tools (Claude vs Codex vs Hermes etc.)
- impl-validator: quality-checking subagent spawned by other skills to
  verify output correctness before presenting to the user
- daily-update: daily maintenance cycle (freshness check, index reconcile,
  hot.md refresh) with launchd cron and zshrc terminal notification
- scripts/: daily-update.sh, wiki-notify.sh, launchd plist

All three skills registered across .claude, .kiro, .agents, .cursor, .windsurf.
source_type mappings verified against actual manifest specs in each history-ingest skill.
2026-05-05 16:22:03 +05:30
Arnav 1fc282b936 Merge pull request #27 from Ar9av/feat/standard-markdown-links
feat: add OBSIDIAN_LINK_FORMAT for standard Markdown links
2026-04-30 20:14:00 +05:30
ar9av f0dcf27b83 feat: add OBSIDIAN_LINK_FORMAT config for standard Markdown links
Adds a new `OBSIDIAN_LINK_FORMAT` config variable (default: `wikilink`)
that lets users opt into standard relative Markdown links instead of
Obsidian `[[wikilinks]]` for all newly generated or updated pages.

Closes #26
2026-04-30 19:32:37 +05:30
Henry e87505b70b fix: load vault AGENTS.md universally
Add a single universal rule in AGENTS.md telling agents to read
$OBSIDIAN_VAULT_PATH/AGENTS.md after config — covers all skills
automatically without per-skill changes. The vault AGENTS.md
carries owner-specific conventions (domain vocabulary, ingest
preferences, writing style, project scoping) that should override
framework defaults for the session.

Mirrors this repo's own AGENTS.md/CLAUDE.md pattern so the same
file works for any agent (Claude Code, Codex, Cursor, etc.).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-29 17:12:36 +08:00
ar9av c64cfd8374 feat: add wiki-capture, wiki-research, wiki-dashboard skills + hot.md session cache
- wiki-capture: save any conversation as a permanent wiki note; classifies into 5
  types (synthesis/concept/source/decision/session) and rewrites content as
  declarative knowledge rather than a chat transcript
- wiki-research: autonomous 3-round web research loop that decomposes topics,
  fills gaps, resolves contradictions, and self-files into sources/concepts/
  entities/synthesis
- wiki-dashboard: creates Obsidian Bases .base files (native, no plugin needed)
  for dynamic queryable views — tables, cards, lists filtered from vault frontmatter
- hot.md session cache: ~500-word semantic snapshot of recent activity; all write
  skills (wiki-ingest, wiki-update, ingest-url, data-ingest) now update it at the
  end of each run; wiki-query reads it first for cheap context
- ingest-url: preflight check for defuddle CLI — uses it for cleaner URL extraction
  when available (~40-60% token reduction on articles), falls back to WebFetch
- Routing table in AGENTS.md updated; symlinks created across all 5 platforms
2026-04-24 16:15:26 +05:30
ar9av d393e61960 feat: add graph-colorize skill to tint Obsidian graph nodes by tag, category, or visibility
Rewrites .obsidian/graph.json colorGroups from the vault's real vocabulary.
Backs up the existing file and only touches colorGroups so user zoom/physics/filter
prefs stay intact. Modes: by-tag (default), by-category, by-visibility, combined, custom.
2026-04-24 15:11:36 +05:30
ar9av c52f1a223f feat: add ingest-url skill with misc staging and project affinity promotion
- New skill: ingest-url fetches any URL via WebFetch, distills content into
  misc/<slug>.md, computes initial project affinity from wikilinks, and
  surfaces promotion candidates when a project score reaches 3+
- cross-linker: new Step 5 rescores affinity for all misc/ pages after the
  main linking pass and reports promotion candidates in the Cross-Link Report
- wiki-lint: new check #10 flags misc/ pages with affinity >= 3 in the
  health report; log line gets promotion_candidates= field
- Skill routing: AGENTS.md updated with /ingest-url trigger phrases
- Platform parity: ingest-url symlink deployed to .agents, .claude, .cursor,
  .windsurf, .kiro
2026-04-22 11:31:01 +05:30
Ar9av f012c81ede feat: add OpenClaw agent integration
- Add openclaw-history-ingest skill for mining ~/.openclaw/workspace/MEMORY.md,
  daily notes (memory/YYYY-MM-DD.md), and agents/*/sessions/*.jsonl transcripts
- Add references/openclaw-data-format.md with field-level parsing notes for all
  OpenClaw artifact types (MEMORY.md, daily notes, session JSONL, sessions.json index)
- Update wiki-history-ingest router to dispatch /wiki-history-ingest openclaw
- Add openclaw-history-ingest routing to AGENTS.md (OpenClaw reads this at priority 10)
- Update setup.sh to symlink skills into ~/.openclaw/skills/ (managed path) in addition
  to the existing ~/.agents/skills/ (shared path)
- Update README: agent table (slash commands now listed), skills table, project structure,
  manual setup section, multi-agent ingest bullet

No separate bootstrap file needed — OpenClaw already reads AGENTS.md first.
2026-04-16 09:37:10 +00:00
Ar9av ed9999c292 refactor: make .hermes.md a symlink to AGENTS.md
Replaces the copied bootstrap file with a symlink so there is a single
source of truth. Also adds the hermes routing entries to AGENTS.md so all
AGENTS.md-aware agents (Codex, OpenClaw, etc.) can trigger hermes-history-ingest.

setup.sh now recreates the symlink on every run so fresh clones stay consistent.
2026-04-16 09:27:17 +00:00
ar9av 8d0a1fef78 Add visibility/ tag system for content reach control
Introduces optional visibility/ tags (visibility/public, visibility/internal,
visibility/pii) that let users mark pages as team-only or sensitive without
splitting the vault. Default behavior is unchanged — all pages visible unless
filtered mode is explicitly requested in a query or export.
2026-04-13 18:13:47 +05:30
medenor bcff8f24bb feat(history): add unified history ingest router for Claude and Codex 2026-04-12 18:54:43 +02:00
medenor 45ec6134db Add codex-history-ingest skill and routing entry 2026-04-12 12:17:34 +02:00
ar9av 62ec5f04a9 docs: add skills CLI install path and rewrite AGENTS.md for cross-project use
README: add `npx skills add Ar9av/obsidian-wiki` as the primary install
method with a link to skills.sh listing. Simplify kepano companion
install to use the same CLI.

AGENTS.md: rewrite for agents arriving from other projects — add vault
structure tree, cross-project workflow (wiki-update/wiki-query), global
config as primary config source, simplified skill routing table, and
merged core principles.
2026-04-12 12:26:24 +05:30
ar9av dc5a57d2bd feat: enhance wiki skills with graph analysis and add wiki-export skill
- wiki-ingest: add SHA-256 content-hash change detection; skip re-ingest
  when file content is unchanged even if mtime differs; write content_hash
  to manifest entries
- wiki-status: add bridge pages, tag cohesion scoring, composite surprise
  scoring, graph delta diffing (via GRAPH_SNAPSHOT comment), and a
  "Questions Worth Asking" section to insights mode; add Touched status
  for mtime-bumped but hash-identical files
- wiki-lint: tighten provenance thresholds (AMBIGUOUS>15%, INFERRED>40%
  unsourced, hub pages with INFERRED>20%); add fragmented tag cluster
  check using cohesion = actual_links / (n*(n-1)/2) with 0.15 threshold
- cross-linker: add cross-category and peripheral-to-hub scoring bonuses;
  label candidates EXTRACTED/INFERRED/AMBIGUOUS; skip AMBIGUOUS by default
- wiki-export: new skill — exports vault wikilink graph to graph.json,
  graph.graphml, cypher.txt (Neo4j), and graph.html (vis.js interactive)
2026-04-09 15:15:36 +05:30
ar9av 47ebeb4d13 feat: add OpenClaw as a supported agent
OpenClaw discovers skills from ~/.agents/skills/ (per docs.openclaw.ai/skills)
and reads AGENTS.md for project-level instructions. Both paths are now wired
into the framework:

- setup.sh adds a new global symlink step that mirrors all skills into
  ~/.agents/skills/, and normalizes ln -s to drop the trailing slash so
  re-runs don't churn the per-agent symlink directories.
- AGENTS.md (and CLAUDE.md by mirror) document the new skill discovery paths.
- README adds an OpenClaw row to the agent compatibility table, a manual-setup
  collapsible, the new global symlink in the project structure tree, and a
  fifth bullet under "Using from other projects".
- Per-agent symlink directories (.claude/.cursor/.windsurf/.agents) get the
  new wiki-update entry that was missing, and existing entries normalize to
  the no-trailing-slash form.
2026-04-08 01:54:15 +05:30
ar9av 841b0433c6 feat: add wiki insights mode to analyze vault structure and update README with multimodal and provenance features 2026-04-07 10:49:21 +05:30
ar9av befd13698b feat: add support for global Codex skill symlinking via setup.sh 2026-04-07 03:21:10 +05:30
ar9av e3baffaf7a chore: update setup.sh and documentation to support global skill symlinks for Gemini/Antigravity 2026-04-07 03:03:27 +05:30
ar9av f1b73a0b7f docs: update AGENTS.md to include wiki-update skill and clarify skill directory symlinking 2026-04-06 20:54:32 +05:30
ar9av 700dae4e5b refactor: rename obsidian-* skill references to wiki-* and remove redundant agent-specific skill configuration files 2026-04-06 18:02:43 +05:30
ar9av 1d5053276f feat: add cross-linker and tag-taxonomy skills, update documentation, and refine claude-history-ingest workflow. 2026-04-06 17:05:31 +05:30
ar9av b9cbf01e6d feat: add agent-specific configuration and documentation for the Obsidian wiki skill-based framework 2026-04-06 14:29:57 +05:30