Commit Graph

4 Commits

Author SHA1 Message Date
Daniel
6bab904d13 feat: v1.4.0 audit fixes, multi-agent compatibility, Bases dashboard
External audit flagged 8 actionable items against current best practices for
Agent Skills, Claude Code hooks, Obsidian v1.9-v1.12, and JSON Canvas 1.0.
This release addresses all of them and adds multi-agent compatibility files
at zero cost to existing users.

Tier 1, critical fixes:

* wiki/meta/dashboard.base: NEW Obsidian Bases dashboard (native, no plugin
  needed). Replaces Dataview as the primary dashboard. Six views: Recent
  Activity, Seed Pages, Entities Missing Sources, Open Questions,
  Comparisons, Sources.
* wiki/meta/dashboard.md: now embeds dashboard.base. Legacy Dataview queries
  retained as optional fallback for users on Obsidian < 1.9.10.
* README.md and skills/wiki/references/plugins.md: Plugins section
  reorganized to recommend Bases (core, no install) primary, Dataview
  optional/legacy.
* skills/canvas/references/canvas-spec.md: added missing JSON Canvas 1.0
  fields. Group nodes now document background and backgroundStyle (cover,
  ratio, repeat). Edges document fromEnd (default 'none') and toEnd
  (default 'arrow') asymmetric defaults. Hex ID convention noted alongside
  descriptive ID alternative.
* .gitignore: track wiki/meta/dashboard.base explicitly.

Tier 2, important improvements:

* hooks/hooks.json: SessionStart now uses both command type
  ([ -f wiki/hot.md ] && cat ...) and prompt type. Command type is the
  canonical safety check that works in non-vault sessions without erroring.
  Matcher: startup|resume.
* hooks/hooks.json: NEW PostCompact hook re-injects hot cache after context
  compaction (hook-injected context does not survive compaction; CLAUDE.md
  does).
* hooks/hooks.json: PostToolUse auto-commit now guarded by [ -d .git ].
* hooks/README.md: NEW documentation including known plugin-hooks STDOUT bug
  (anthropics/claude-code#10875) and workarounds.
* skills/wiki/references/mcp-setup.md: added Option D (Obsidian CLI) for
  v1.12+. Added warning callout above NODE_TLS_REJECT_UNAUTHORIZED line
  explaining process-wide TLS bypass and recommending Option D as the
  secure alternative.
* skills/wiki-ingest/SKILL.md: documented [!contradiction] custom callout
  CSS dependency on vault-colors.css snippet.
* skills/wiki/references/css-snippets.md: full documentation of all four
  custom callouts (contradiction, gap, key-insight, stale) with built-in
  fallback equivalents.

Tier 3, multi-agent compatibility (low complexity, high reach):

* AGENTS.md: Codex CLI / OpenCode bootstrap.
* GEMINI.md: Gemini CLI / Antigravity bootstrap.
* .cursor/rules/claude-obsidian.mdc: Cursor always-on rules.
* .windsurf/rules/claude-obsidian.md: Windsurf Cascade rules.
* .github/copilot-instructions.md: GitHub Copilot conventions.
* bin/setup-multi-agent.sh: idempotent symlink installer for Codex,
  OpenCode, Gemini, Cursor, Windsurf. Wires up the skills/ directory in
  each agent's expected location.

Style cleanup: scrubbed all em dashes from every skill, hook, doc, and
bootstrap file (249 total replacements across 26 files). Skills now use
periods, commas, and colons throughout for cleaner natural prose.

Version: 1.3.0 to 1.4.0 (aligns plugin.json with GitHub release tag format).

Already resolved in v1.1 (no action needed):
* defuddle, obsidian-bases, obsidian-markdown skills shipped
* URL ingestion, vision ingestion, delta tracking docs
* Multi-depth wiki-query (Quick / Standard / Deep)
* PostToolUse auto-commit hook
* allowed-tools field removed from all SKILL.md files
* All templates already use plural tag/alias forms
* Custom callouts CSS already in vault-colors.css

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 17:52:03 +03:00
Daniel
3ad61b984d feat: v1.1 — URL ingestion, vision, delta tracking, 3 new skills, auto-commit
Skills (new):
- skills/obsidian-markdown/ — full Obsidian Flavored Markdown syntax reference
  (wikilinks, embeds, callouts, properties, math, Mermaid)
- skills/obsidian-bases/ — Obsidian Bases (.base files) with correct filters/views/
  formulas syntax (sourced from kepano/obsidian-skills authoritative spec)
- skills/defuddle/ — web page cleaner; strips ads/nav before URL ingestion,
  saves 40-60% tokens on web articles

wiki-ingest upgrades:
- URL ingestion: pass https:// directly, auto-fetches + runs defuddle if available
- Image/vision ingestion: .png/.jpg/.gif etc → Claude reads → description saved
  to .raw/ → standard ingest pipeline
- Delta tracking: .raw/.manifest.json tracks hash per source, skips unchanged files

wiki-query upgrades:
- Quick mode (query quick:) — hot.md + index only, ~1500 tokens
- Standard mode — existing behaviour, 3-5 pages
- Deep mode (query deep:) — full wiki + optional web search supplement

hooks:
- PostToolUse auto-commit: every Write/Edit to wiki/ or .raw/ triggers
  git add + commit automatically, vault always versioned

fixes:
- Removed invalid allowed-tools field from all 10 SKILL.md files
  (not a valid skill frontmatter attribute per spec; was silently ignored)
- Canvas SKILL.md now references json-canvas open standard and kepano/obsidian-skills

wiki research:
- Ecosystem research: 16+ Claude+Obsidian projects mapped and filed
- New pages: comparisons/claude-obsidian-ecosystem, concepts/cherry-picks,
  entities/ (6 new), sources/claude-obsidian-ecosystem-research
- Cherry-picks roadmap filed at wiki/concepts/cherry-picks.md

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 12:25:00 +03:00
Daniel
98c0eeb3e6 fix: 13 skill review issues in /canvas
Critical:
- find precedence bug fixed: added \( -name '*.png' -o -name '*.jpg' \) grouping
  so -newer applies to BOTH extensions, not just .jpg
- Auto-positioning row y-detection: replaced broken right-half heuristic with
  min(n.y for all inside) — matches canvas-spec.md pseudocode
- WIKI.md canvas color table corrected: 1=red,2=orange,3=yellow,4=green,5=cyan,6=purple
  (was wrong mapping 1=blue etc from the graph CSS scheme, not canvas colors)

High:
- ID generation: full Unix timestamp (10 digits) instead of last-4-digits
  + added collision fallback (-2, -3 suffix)
- README: added /canvas add text and /canvas add pdf to commands table
- Aspect ratio: removed duplicate partial table from SKILL.md — now defers
  to canvas-spec.md as single source of truth
- new op: writes to wiki/overview.md not wiki/index.md (index has fixed schema)
- from banana: added explicit note that /banana is an optional external skill

Medium:
- add note: clarified 'type: file' vs 'type: link' — .md files use file nodes
- zone fallback y: changed from -140 (overlaps starter) to 280 (safe below all content)
- CLAUDE.md: added /save, /autoresearch, /canvas to Plugin Skills table

Low:
- allowed-tools: removed Grep (unused by any documented operation)
- Frontmatter: flattened description to single-line quoted string (fixes IDE
  YAML block scalar parsing diagnostic on lines 4-9)
2026-04-07 13:30:31 +03:00
Daniel
3b4f62eb0c feat: /canvas command — visual layer of the wiki
New files:
  commands/canvas.md              — slash command with full trigger table
  skills/canvas/SKILL.md          — complete skill: open, new, add image/text/pdf/note,
                                    zone, list, from-banana operations
  skills/canvas/references/canvas-spec.md — Obsidian canvas JSON spec:
                                    coordinate system, all node types, color table,
                                    image sizing by aspect ratio, auto-positioning
                                    pseudocode, common mistakes, full example

Auto-positioning algorithm (bbox math):
  - Finds rightmost node in target zone
  - Places next node at rightmost_x + 40, same row y
  - If overflow: wraps to new row (max_y_in_zone + 20)
  - Falls back to below all content if no zone found

Banana integration:
  - /canvas from banana: checks .recent-images.txt first, then
    filesystem find -newer 10min, presents list for confirmation
  - After any /banana run: suggests /canvas from banana

Updated:
  skills/wiki/SKILL.md        — added /canvas to routing table
  skills/wiki/references/plugins.md — added Calendar + Thino with
                                      pre-installed note + manual install fallback
  README.md                   — /canvas in commands table + file structure
2026-04-07 13:23:33 +03:00