5 Commits

Author SHA1 Message Date
pablo-mano 321330ac3f Bump version to 1.0.2
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-27 22:50:49 +01:00
pablo-mano 47d3d78f66 Restructure to valid Claude Code plugin format
- Move plugin manifest to .claude-plugin/plugin.json (correct location)
- Move SKILL.md to skills/obsidian-cli/SKILL.md (auto-discovered by Claude Code)
- Move references/ inside skill directory to preserve relative paths
- Update README: Claude Code install uses --plugin-dir, fix reference paths

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-27 22:50:13 +01:00
pablo-mano 2fc0cd7c7d Bump release reference to v1.0.1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-27 21:18:26 +01:00
pablo-mano 55abf71ab0 Add .gitignore; fix move command syntax (name= → to=)
- Add .gitignore to exclude test-results/ from version control
- Fix `obsidian move` syntax in SKILL.md and command-reference.md:
  the parameter is `to=<full-path>` not `name=<filename>` (confirmed
  by live testing against TestVault — CLI exits 0 with error message
  when name= is used, silent failure)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-27 21:16:15 +01:00
pablo-mano 2c78b1e658 Revamp installation guide: Cursor native skills, add Openclaw/Nanoclaw
- Cursor: rewrite section to use native skills system (.cursor/skills/
  or Remote Rule from GitHub) — rules file approach was incorrect
- Windsurf: note 12K char limit per file, instruct users to split
  SKILL.md and command-reference into separate rule files
- Nanoclaw: new section — skills load from .claude/skills/obsidian-cli/
- Openclaw: new section — skills load from skills/obsidian-cli/ at
  project root (50+ skills confirmed in SKILL.md format)
- GitHub Copilot: add path-scoped instructions alternative
- Generic section: remove tool-specific names, keep generic

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-27 21:04:39 +01:00
6 changed files with 84 additions and 35 deletions
+10
View File
@@ -0,0 +1,10 @@
{
"name": "obsidian-cli",
"description": "Interact with Obsidian vaults using the official Obsidian CLI (v1.12+). Read, create, append, search, and manage notes, daily notes, properties, tags, tasks, bookmarks, templates, themes, sync, plugins, and links — all from the terminal.",
"version": "1.0.2",
"author": {
"name": "pablo-mano"
},
"homepage": "https://github.com/pablo-mano/Obsidian-CLI-skill",
"repository": "https://github.com/pablo-mano/Obsidian-CLI-skill"
}
+1
View File
@@ -0,0 +1 @@
test-results/
+69 -23
View File
@@ -53,53 +53,99 @@ Covers **100+ commands** across all major areas:
### Claude Code — Plugin (native)
Install directly from GitHub using the Claude Code plugin system:
1. Open Claude Code and run:
1. Clone this repository:
```bash
git clone https://github.com/pablo-mano/Obsidian-CLI-skill
```
/plugin marketplace add https://github.com/pablo-mano/Obsidian-CLI-skill
2. Load the plugin with the `--plugin-dir` flag:
```bash
claude --plugin-dir ./Obsidian-CLI-skill
```
2. Install the `obsidian-cli` skill from the plugin list.
3. Done — the skill auto-triggers when you ask Claude to interact with Obsidian, automate vault operations, manage daily notes, search your vault, etc.
**Alternative — manual install:**
1. Download `obsidian-cli-skill-v1.0.0.zip` from the [Releases](https://github.com/pablo-mano/Obsidian-CLI-skill/releases) page.
2. Open Claude Code → Skills plugin settings → Import → select the `.zip`.
**Persistent setup** — add to your project's `.claude/settings.json` so the plugin loads automatically:
```json
{
"plugins": {
"obsidian-cli": {
"source": { "source": "github", "repo": "pablo-mano/Obsidian-CLI-skill" }
}
}
}
```
> The `plugin.json` manifest at the repo root makes this repository directly compatible with Claude Code's plugin system.
> The `.claude-plugin/plugin.json` manifest makes this repository directly compatible with Claude Code's plugin system.
---
### Cursor
Cursor loads context via [Rules](https://docs.cursor.com/context/rules-for-ai). Add the skill as a project-level or global rule:
Cursor has a native skills system (launched Feb 2026) that is directly compatible with the `SKILL.md` format — no rules file needed.
1. Create the file `.cursor/rules/obsidian-cli.mdc` in your project root (or in `~/.cursor/rules/` for global scope).
2. Paste the body of `SKILL.md` (everything after the `---` frontmatter block) into the file.
3. Optionally append the contents of `references/command-reference.md` for the full command reference.
**Option A — GitHub install (recommended):**
1. Open Cursor Settings → Rules
2. Click **Add Rule** → **Remote Rule (GitHub)**
3. Paste `https://github.com/pablo-mano/Obsidian-CLI-skill`
4. Done — the skill auto-triggers on Obsidian-related tasks.
Cursor will now apply Obsidian CLI knowledge when you work on related tasks.
**Option B — Local copy:**
1. Clone or download this repo
2. Copy the folder into your project: `.cursor/skills/obsidian-cli/`
(or globally: `~/.cursor/skills/obsidian-cli/`)
3. Cursor picks it up automatically — no restart needed.
---
### Windsurf
Windsurf uses [Rules](https://docs.windsurf.com/windsurf/memories-and-rules) stored in `.windsurf/rules/`:
Windsurf uses a Rules system (`.windsurf/rules/`). Rules have a 12,000 character limit per file, so split the skill across two files:
1. Create `.windsurf/rules/obsidian-cli.md` in your project.
2. Paste the body of `SKILL.md` (below the frontmatter) into the file.
3. Optionally include the command reference from `references/command-reference.md`.
1. Create `.windsurf/rules/obsidian-cli.md` — paste the body of `SKILL.md` (everything after the `---` frontmatter).
2. Create `.windsurf/rules/obsidian-cli-reference.md` — paste the contents of `skills/obsidian-cli/references/command-reference.md`.
Set the activation mode to **Always On** or **Model Decision** in each file's frontmatter to control when the rules apply.
---
### Nanoclaw
Nanoclaw loads skills from `.claude/skills/` using the same `SKILL.md` format — directly compatible.
1. Clone or download this repo
2. Copy the skill folder into your Nanoclaw project:
```bash
cp -r Obsidian-CLI-skill /path/to/nanoclaw/.claude/skills/obsidian-cli
```
3. The skill is available as a slash command (`/obsidian-cli`) or auto-triggers when you ask the agent to interact with Obsidian.
> This is a knowledge skill — it adds Obsidian CLI awareness to the agent without modifying Nanoclaw's codebase.
---
### Openclaw
Openclaw loads skills from the `skills/` directory at the project root using the `SKILL.md` format — directly compatible.
1. Clone or download this repo
2. Copy the skill folder into Openclaw's skills directory:
```bash
cp -r Obsidian-CLI-skill /path/to/openclaw/skills/obsidian-cli
```
3. Restart the Openclaw agent — skills are discovered automatically.
---
### GitHub Copilot (VS Code)
Copilot supports [custom instructions](https://docs.github.com/en/copilot/customizing-copilot/adding-custom-instructions-for-github-copilot) via a repository-level file:
Copilot supports [custom instructions](https://docs.github.com/en/copilot/customizing-copilot/adding-custom-instructions-for-github-copilot) via repository files:
**Repository-wide** (applies to all files):
1. Create `.github/copilot-instructions.md` in your repo.
2. Paste the body of `SKILL.md` into the file.
For workspace-level instructions in VS Code, add the content to your VS Code settings under `"github.copilot.chat.codeGeneration.instructions"`.
**Path-scoped** (optional alternative):
1. Create `.github/instructions/obsidian-cli.instructions.md`
2. Add frontmatter `applyTo: "**/*"` then paste the `SKILL.md` body.
---
@@ -109,9 +155,9 @@ For workspace-level instructions in VS Code, add the content to your VS Code set
1. Open the agent's system prompt / custom instructions settings.
2. Paste the contents of `SKILL.md` (with or without the YAML frontmatter — most agents accept either).
3. Optionally include `references/command-reference.md` for the complete command reference.
3. Optionally include `skills/obsidian-cli/references/command-reference.md` for the complete command reference.
This works with Aider, Continue.dev, LM Studio, Open Interpreter, or any chat interface with a system prompt field.
This works with any chat interface or coding agent that has a system prompt or custom instructions field.
---
@@ -152,7 +198,7 @@ obsidian daily:append content="- Started [[projects/new-feature|New Feature]]"
## Full Command Reference
See [`references/command-reference.md`](references/command-reference.md) for the complete reference covering all commands, parameters, flags, output formatting, multi-vault usage, and headless Linux setup.
See [`skills/obsidian-cli/references/command-reference.md`](skills/obsidian-cli/references/command-reference.md) for the complete reference covering all commands, parameters, flags, output formatting, multi-vault usage, and headless Linux setup.
---
-8
View File
@@ -1,8 +0,0 @@
{
"name": "obsidian-cli",
"version": "1.0.0",
"description": "Interact with Obsidian vaults using the official Obsidian CLI (v1.12+). Read, create, search, and manage notes, daily notes, properties, tags, tasks, bookmarks, templates, sync, plugins, and links — all from the terminal.",
"author": "pablo-mano",
"repository": "https://github.com/pablo-mano/Obsidian-CLI-skill",
"skills": ["."]
}
+1 -1
View File
@@ -85,7 +85,7 @@ obsidian create path="folder/note" content="# New Note"
obsidian create path="folder/note" template="meeting-notes"
obsidian append path="folder/note.md" content="New paragraph"
obsidian prepend path="folder/note.md" content="Top content"
obsidian move path="old/note.md" name="new-name"
obsidian move path="old/note.md" to="new/note.md"
obsidian delete path="folder/note.md"
obsidian delete path="folder/note.md" permanent
```
@@ -63,11 +63,11 @@ obsidian prepend path="folder/note.md" content="Prepended text"
### Moving & Renaming
```bash
obsidian move path="old/path/note.md" name="new-name"
obsidian move path="old/path/note.md" to="new/path/note.md"
```
- `name=` is the new filename (moves/renames).
- The target path must include the `.md` extension when specifying a full path.
- `to=` is the full vault-relative target path including the `.md` extension.
- Can be used to move, rename, or both in a single command.
### Deleting