Compress agent skills

This commit is contained in:
2026-05-11 12:05:04 +01:00
parent e145482cd3
commit 7fed91d98b
20 changed files with 1009 additions and 2350 deletions

View File

@@ -1,138 +1,62 @@
---
name: obsidian
description: For registering personal notes and task tracking for Popdog.
description: Manage Harry's Obsidian vault notes and Popdog task tracking with the Obsidian CLI. Use when registering tasks, reading or updating Popdog notes, rolling completed work into daily roundup notes, or searching the vault.
---
# Obsidian
I have registered the `obsidian` cli. I'm using it for task tracking for Popdog.
Use the registered `obsidian` CLI for vault operations. The important working area is `Work/Popdog`, with `Work/Popdog/_Todo.md` as the outstanding-work index.
The relevant information you'll find is in Work/Popdog. There's an overall _Todo.md meta file that lists all my outstanding work.
Obsidian CLI requires the desktop app to be running; if it is not running, the first command may launch it. Target this vault explicitly if needed with `vault=<name>` as the first parameter.
Once items are verified complete they should be rolled up into the daily roundup files named YYYY-MM-DD.md.
## Popdog Task Rules
Format tasks as follows:
Use this format in `Work/Popdog/_Todo.md`:
```
```markdown
- [ ] ==**High**== Task Title
- [ ] Sub task/portion of task
- [ ] Sub task/portion of task
- [ ] **Medium** Task Title
- [ ] Sub tas/portion of task
- [ ] Sub task/portion of task
```
Note that only High priority receives highlighting == ==.
Only High priority receives `== ==` highlighting.
## Task Completion
When a task is verified complete:
When tasks are completed, mark them as such by checking the box next to the task.
- Mark it complete in `_Todo.md`.
- Roll it into the daily roundup note named `YYYY-MM-DD.md`.
- Include the PR and repo next to completed work when known.
Also roll up the completed tasks into the daily roundup files.
```markdown
- [x] Task Title (PR# - Catwalk)
- [x] Task Title (PR# - Harvester)
```
We should
## Agent Workflow
1. Read the relevant note before changing it: `obsidian read path="Work/Popdog/_Todo.md"`.
2. Use `obsidian tasks path="Work/Popdog/_Todo.md" verbose` when you need line numbers for task updates.
3. Prefer CLI mutations (`task`, `append`, `prepend`, `create`) over manual file editing when they fit.
4. Use exact `path=` values for Popdog files; use `file=` only when the name is unambiguous.
5. After updates, re-read the touched note to verify the result.
# Obsidian CLI Docs
## Common Commands
Run a command
Run an individual command without opening the TUI:
```bash
obsidian read path="Work/Popdog/_Todo.md"
obsidian tasks path="Work/Popdog/_Todo.md" todo verbose
obsidian task path="Work/Popdog/_Todo.md" line=12 done
obsidian append path="Work/Popdog/2026-05-11.md" content="- [x] Task Title (PR# - Repo)"
obsidian create path="Work/Popdog/2026-05-11.md" content="# 2026-05-11" open
obsidian search query="billing" path="Work/Popdog"
```
## Run the help command
obsidian help
Use the terminal interface
Use the TUI by entering obsidian. Subsequent commands can be entered without obsidian.
## CLI Notes
## Open the TUI, then run help
obsidian
help
The TUI supports autocomplete, command history, and reverse search. Use Ctrl+R to search your command history. See Keyboard shortcuts for all available shortcuts.
- Parameters use `key=value`; quote values with spaces.
- Flags are bare words, for example `open`, `overwrite`, `todo`, `done`, `verbose`.
- Multiline content uses `\n` and tabs use `\t`.
- Add `--copy` to copy command output to the clipboard when useful.
Files and folders
file
Show file info (default: active file).
file=<name> # file name
path=<path> # file path
Example:
path Notes/Recipe.md
name Recipe
extension md
size 1024
created 1700000000000
modified 1700001000000
files
List files in the vault.
folder=<path> # filter by folder
ext=<extension> # filter by extension
total # return file count
folder
Show folder info.
path=<path> # (required) folder path
info=files|folders|size # return specific info only
folders
List folders in the vault.
folder=<path> # filter by parent folder
total # return folder count
open
Open a file.
file=<name> # file name
path=<path> # file path
newtab # open in new tab
create
Create or overwrite a file.
name=<name> # file name
path=<path> # file path
content=<text> # initial content
template=<name> # template to use
overwrite # overwrite if file exists
open # open file after creating
newtab # open in new tab
read
Read file contents (default: active file).
file=<name> # file name
path=<path> # file path
append
Append content to a file (default: active file).
file=<name> # file name
path=<path> # file path
content=<text> # (required) content to append
inline # append without newline
prepend
Prepend content after frontmatter (default: active file).
file=<name> # file name
path=<path> # file path
content=<text> # (required) content to prepend
inline # prepend without newline
move
Move or rename a file (default: active file). This will automatically update internal links if turned on in your vault settings.
file=<name> # file name
path=<path> # file path
to=<path> # (required) destination folder or path
rename
Rename a file (default: active file). The file extension is preserved automatically if omitted from the new name. Use move to rename and move a file at the same time. This will automatically update internal links if turned on in your vault settings.
file=<name> # file name
path=<path> # file path
name=<name> # (required) new file name
delete
Delete a file (default: active file, trash by default).
file=<name> # file name
path=<path> # file path
permanent # skip trash, delete permanently
See [the CLI reference](references/cli-reference.md) for agent-oriented command coverage from the official Obsidian CLI docs.

View File

@@ -0,0 +1,127 @@
# Obsidian CLI Reference
This is a compact agent-facing reference derived from the official Obsidian CLI docs. Use it when `SKILL.md` does not include enough command detail.
## Invocation Rules
- Run one command as `obsidian <command> key=value flag`.
- Use `vault=<name>` or `vault=<id>` as the first parameter to target a specific vault.
- If the current working directory is a vault, that vault is used; otherwise the active Obsidian vault is used.
- Use `path=<vault-relative/path.md>` for exact paths and `file=<name>` for wikilink-style name resolution.
- Use `\n` for multiline content and quote values containing spaces.
- Use `--copy` with any command to copy output to the clipboard.
## Discovery
```bash
obsidian help
obsidian version
obsidian vault
obsidian vaults verbose
obsidian files folder="Work/Popdog"
obsidian folders folder="Work"
obsidian search query="text" path="Work/Popdog"
obsidian search:context query="text" path="Work/Popdog"
```
## Files
```bash
obsidian read path="Work/Popdog/_Todo.md"
obsidian open path="Work/Popdog/_Todo.md" newtab
obsidian create path="Work/Popdog/New Note.md" content="# Title" open
obsidian append path="Work/Popdog/_Todo.md" content="- [ ] Task"
obsidian prepend path="Work/Popdog/_Todo.md" content="Intro"
obsidian move path="Old.md" to="Archive/Old.md"
obsidian rename path="Old.md" name="New"
obsidian delete path="Scratch.md"
```
Use `overwrite` with `create` only when intentionally replacing an existing note.
## Daily Notes
```bash
obsidian daily
obsidian daily:path
obsidian daily:read
obsidian daily:append content="- [x] Finished task (PR# - Repo)"
obsidian daily:prepend content="# Roundup"
```
Use daily commands for the active daily-note configuration. For Popdog roundup files with a known path, exact `path=` file commands are often safer.
## Tasks
```bash
obsidian tasks
obsidian tasks todo
obsidian tasks done
obsidian tasks path="Work/Popdog/_Todo.md" todo verbose
obsidian tasks daily total
obsidian task ref="Work/Popdog/_Todo.md:12" done
obsidian task path="Work/Popdog/_Todo.md" line=12 toggle
obsidian task path="Work/Popdog/_Todo.md" line=12 todo
obsidian task path="Work/Popdog/_Todo.md" line=12 status="-"
```
Use `verbose` when you need file paths and line numbers before updating tasks.
## Metadata And Organization
```bash
obsidian tags counts
obsidian tag name="#project" verbose
obsidian backlinks path="Work/Popdog/_Todo.md" counts
obsidian links path="Work/Popdog/_Todo.md"
obsidian unresolved counts verbose
obsidian outline path="Work/Popdog/_Todo.md" format=md
obsidian properties path="Work/Popdog/_Todo.md" format=yaml
obsidian property:set path="Note.md" name=status value=active type=text
obsidian property:read path="Note.md" name=status
obsidian property:remove path="Note.md" name=status
```
## Templates
```bash
obsidian templates
obsidian template:read name="Daily" resolve title="2026-05-11"
obsidian create path="Work/Popdog/2026-05-11.md" template="Daily" open
```
## History And Recovery
```bash
obsidian diff path="Work/Popdog/_Todo.md"
obsidian diff path="Work/Popdog/_Todo.md" from=2 to=1
obsidian history path="Work/Popdog/_Todo.md"
obsidian history:read path="Work/Popdog/_Todo.md" version=1
obsidian history:restore path="Work/Popdog/_Todo.md" version=1
obsidian sync:history path="Work/Popdog/_Todo.md" total
obsidian sync:read path="Work/Popdog/_Todo.md" version=1
```
Prefer reading or diffing history before restoring anything.
## Developer And UI Commands
```bash
obsidian commands filter="app:"
obsidian command id="command-id"
obsidian devtools
obsidian dev:errors
obsidian dev:console limit=100 level=error
obsidian dev:screenshot path="screenshot.png"
obsidian dev:dom selector=".workspace" text
obsidian eval code="app.vault.getFiles().length"
```
Use developer commands only when working on Obsidian plugins/themes or diagnosing the running app.
## Troubleshooting
- Obsidian CLI requires Obsidian 1.12.7+ and the CLI setting enabled in Settings -> General.
- Obsidian must be running; if not, the first command may launch it.
- On Linux, the CLI binary is normally copied to `~/.local/bin/obsidian`; ensure `~/.local/bin` is on `PATH`.
- If commands fail after registration, restart the terminal and verify `obsidian version`.