add claude-obsidian
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
---
|
||||
type: reference
|
||||
title: "Methodology Modes — Quick Decision Tree"
|
||||
tags:
|
||||
- reference
|
||||
- methodology
|
||||
- wiki-mode
|
||||
status: evergreen
|
||||
related:
|
||||
- "[[methodology-modes-guide]]"
|
||||
- "[[wiki-mode]]"
|
||||
---
|
||||
|
||||
# Methodology Modes — Quick Decision Tree
|
||||
|
||||
Pick a vault organizational style with `bash bin/setup-mode.sh`.
|
||||
|
||||
```
|
||||
┌──────────────────────────────────┐
|
||||
│ Do you have a methodology │
|
||||
│ preference for organizing notes? │
|
||||
└──────────────┬───────────────────┘
|
||||
│
|
||||
┌────────────────┴────────────────┐
|
||||
NO YES
|
||||
│ │
|
||||
▼ ▼
|
||||
┌────────────────┐ ┌──────────────────────────────┐
|
||||
│ GENERIC │ │ How do you think about content│
|
||||
│ (v1.7 default; │ └────────────────┬──────────────┘
|
||||
│ no opinion) │ │
|
||||
└────────────────┘ ┌────────────────────┼────────────────────┐
|
||||
│ │ │
|
||||
▼ ▼ ▼
|
||||
"topic clusters "active projects "atomic claims
|
||||
+ navigation vs ongoing with IDs +
|
||||
by links" responsibilities" dense links"
|
||||
│ │ │
|
||||
▼ ▼ ▼
|
||||
┌──────────┐ ┌──────────┐ ┌────────────────┐
|
||||
│ LYT │ │ PARA │ │ ZETTELKASTEN │
|
||||
│ (MOCs) │ │ (4-bucket│ │ (timestamped │
|
||||
│ │ │ actionable) │ IDs, flat) │
|
||||
└──────────┘ └──────────┘ └────────────────┘
|
||||
```
|
||||
|
||||
## Quick comparison
|
||||
|
||||
| | Generic | LYT | PARA | Zettelkasten |
|
||||
|---|---|---|---|---|
|
||||
| Folders | sources/entities/concepts/sessions/ | mocs/notes/ | projects/areas/resources/archives/ | (none — flat) |
|
||||
| Navigation | folder browse | link follow via MOCs | folder browse | ID reference |
|
||||
| Naming | descriptive | descriptive | descriptive | timestamp prefix |
|
||||
| Best for | beginners, mixed use | knowledge clusters | knowledge workers, GTD | researchers, academics |
|
||||
| Discipline | low | medium | medium | high |
|
||||
|
||||
## Per-mode follow-up
|
||||
|
||||
After setting mode:
|
||||
|
||||
- **Generic**: nothing further; v1.7 behavior preserved
|
||||
- **LYT**: create your first MOC; new ingests update MOCs automatically via wiki-ingest
|
||||
- **PARA**: process the `wiki/projects/inbox/` + `wiki/resources/incoming/` buckets periodically
|
||||
- **Zettelkasten**: build the parent/child relationship graph as notes accumulate; rely on Obsidian Graph view
|
||||
|
||||
## Cross-reference
|
||||
|
||||
Full guide: [[methodology-modes-guide]]
|
||||
Skill: [[wiki-mode]] (`skills/wiki-mode/SKILL.md`)
|
||||
Router: `scripts/wiki-mode.py`
|
||||
Setup: `bash bin/setup-mode.sh`
|
||||
@@ -0,0 +1,106 @@
|
||||
---
|
||||
type: reference
|
||||
title: "Transport Fallback Decision Tree"
|
||||
status: evergreen
|
||||
related:
|
||||
- "[[wiki-cli]]"
|
||||
- "[[mcp-setup]]"
|
||||
updated: 2026-05-17
|
||||
---
|
||||
|
||||
# Transport Fallback Decision Tree
|
||||
|
||||
claude-obsidian v1.7+ supports four ways to read and mutate vault notes. This document is the canonical decision tree skills consult when picking one.
|
||||
|
||||
## Quick reference
|
||||
|
||||
```
|
||||
┌─────────────────────────┐
|
||||
│ I need to read/write │
|
||||
│ a wiki note │
|
||||
└────────────┬────────────┘
|
||||
│
|
||||
▼
|
||||
┌─────────────────────────────────────────────┐
|
||||
│ Read .vault-meta/transport.json │
|
||||
│ (if missing, run scripts/detect-transport.sh)│
|
||||
└─────────────────────────────────────────────┘
|
||||
│
|
||||
┌────────────────┴────────────────┐
|
||||
│ │
|
||||
preferred = "cli" preferred = "filesystem"
|
||||
│ │
|
||||
▼ ▼
|
||||
┌──────────────────┐ ┌────────────────────┐
|
||||
│ obsidian-cli <op>│ │ Read/Write/Edit │
|
||||
│ │ │ tools with absolute│
|
||||
│ Falls through on │ │ vault paths │
|
||||
│ binary error to │ │ │
|
||||
│ filesystem. │ │ Final floor. │
|
||||
└──────────────────┘ └────────────────────┘
|
||||
```
|
||||
|
||||
## The fallback chain (highest to lowest precedence)
|
||||
|
||||
| # | Transport | When preferred | Strengths | Weaknesses |
|
||||
|---|-----------|----------------|-----------|------------|
|
||||
| 1 | **`cli`** | Desktop with Obsidian 1.12+ installed. Auto-detected by `scripts/detect-transport.sh`. | No MCP, no TLS, no plugins. Subprocess speed. Loud failure on missing binary. | Desktop-only. Single-vault per invocation. |
|
||||
| 2 | **`mcp-obsidian`** | When the user has the Local REST API plugin + an MCP server configured. Not auto-detected in v1.7 — user must edit `transport.json` by hand or override per call. | Persistent connection; rich tools (`mcp__obsidian-vault__*`); patch_note primitives. | Requires plugin install + TLS bypass for self-signed cert; reentrancy risk in self-MCP-calls. |
|
||||
| 3 | **`mcpvault`** | When user has `@bitbonsai/mcpvault` configured. Not auto-detected in v1.7. | No Obsidian plugin needed; BM25 search built in. | Filesystem-based — no Obsidian-native features (live render, hot reload). |
|
||||
| 4 | **`filesystem`** | Always available. Final floor. Used when nothing above is. | Zero setup. Works on any machine with the repo. | No Obsidian-aware features (no resolved Bases, no daily-note logic, no backlink graph). |
|
||||
|
||||
## When skills should consult this tree
|
||||
|
||||
Any skill that mutates a vault file should follow this pattern at the top:
|
||||
|
||||
```python
|
||||
# Pseudocode for any vault-mutating skill
|
||||
transport = read_json(".vault-meta/transport.json") # auto-created on first run
|
||||
match transport["preferred"]:
|
||||
case "cli":
|
||||
result = bash(f'obsidian-cli {operation} "{vault_root}" "{path}"')
|
||||
case "mcp-obsidian" | "mcpvault":
|
||||
result = mcp_call(operation, path)
|
||||
case "filesystem" | _:
|
||||
result = read_or_write_tool(absolute_path)
|
||||
```
|
||||
|
||||
Skills covered by this policy in v1.7:
|
||||
- `wiki-ingest` — page creation, frontmatter mutation, manifest updates
|
||||
- `wiki-query` — page reads (when standard or deep mode pulls full text)
|
||||
- `wiki-lint` — bulk reads for orphan/link analysis
|
||||
- `wiki-fold` — fold-page writes
|
||||
- `save` — session-note writes
|
||||
- `autoresearch` — source + concept page writes during the research loop
|
||||
|
||||
Skills that explicitly bypass the tree (always use direct filesystem):
|
||||
- `wiki-cli` — this skill IS the CLI wrapper; recursion is meaningless
|
||||
- `defuddle` — operates on HTTP-fetched content, not vault state
|
||||
- `obsidian-markdown` / `obsidian-bases` / `canvas` — reference skills, do not mutate the vault
|
||||
|
||||
## Refresh policy
|
||||
|
||||
`scripts/detect-transport.sh` rewrites `.vault-meta/transport.json` only if the existing snapshot is older than 7 days (`STALE_AFTER_DAYS=7`). To force a refresh after installing/uninstalling the Obsidian CLI:
|
||||
|
||||
```bash
|
||||
bash scripts/detect-transport.sh --force
|
||||
```
|
||||
|
||||
## Manual override
|
||||
|
||||
If you have an MCP transport configured (or any other transport not in the auto-detected set) and want claude-obsidian to use it as preferred:
|
||||
|
||||
1. Open `.vault-meta/transport.json` in any editor.
|
||||
2. Set `"preferred": "mcp-obsidian"` (or `"mcpvault"`, or any custom value).
|
||||
3. Set `"fallback_chain": ["mcp-obsidian", "filesystem"]` (or your preferred order).
|
||||
4. Add a `"manual_override": true` field at the top level so the detection script knows not to clobber your `preferred` + `fallback_chain` on next run.
|
||||
|
||||
The detection script (`scripts/detect-transport.sh`, v1.8.2+) parses the existing transport.json BEFORE running auto-detection. When `manual_override` is `true`, the script re-runs auto-detection only to refresh `available.cli.*` and `available.cli.obsidian_app_running` (so the human log line stays accurate), but preserves the user's `preferred` and `fallback_chain` choices across every cycle — including `--force` runs and post-staleness refreshes. The `manual_override` field itself round-trips through the snapshot, so the override survives indefinitely.
|
||||
|
||||
To disable the override later, edit the file and either set `"manual_override": false` or delete the field; the next detection pass will recompute `preferred` from auto-detection.
|
||||
|
||||
## See also
|
||||
|
||||
- Detection script: [`scripts/detect-transport.sh`](../../scripts/detect-transport.sh)
|
||||
- CLI recipe reference: [`skills/wiki-cli/SKILL.md`](../../skills/wiki-cli/SKILL.md)
|
||||
- Legacy 4-option MCP setup: [`skills/wiki/references/mcp-setup.md`](../../skills/wiki/references/mcp-setup.md) (still authoritative for MCP configuration steps)
|
||||
Reference in New Issue
Block a user