---
name: obsid-link-builder
description: Create and normalize shareable links for Obsidian notes. Use when asked to generate links like https://links.xfiner.com/?vault=...&file=... or line-aware links with &line=... for chat/messages, convert obsidian://open and obsidian://open-line links to shareable HTTPS links, or verify URL encoding of vault/file parameters.
---

# Obsid Link Builder

Create canonical links in this format:

https://links.xfiner.com/?vault=<ENCODED_VAULT>&file=<ENCODED_FILE_PATH>[&line=<LINE>][&column=<COLUMN>]

## Workflow

1. Gather input in one of these forms:
- vault + file values
- existing obsidian://open?vault=...&file=... URL
- existing obsidian://open-line?vault=...&file=...&line=... URL

2. Normalize file separators to '/'.
3. URL-encode vault and file values.
4. For a line-aware link, preserve the 1-based line value and optional column value.
5. Output only the final shareable HTTPS URL unless explanation is requested.

## CLI Helper

"$CODEX_HOME/skills/obsid-link-builder/scripts/build_obsid_link.sh" \
  --vault "Obsidian" \
  --file "Sites/Joost.blog/Posts" \
  --line 44

"$CODEX_HOME/skills/obsid-link-builder/scripts/build_obsid_link.sh" \
  --obsidian-url "obsidian://open?vault=Obsidian&file=Sites%2FJoost.blog%2FPosts"

"$CODEX_HOME/skills/obsid-link-builder/scripts/build_obsid_link.sh" \
  --obsidian-url "obsidian://open-line?vault=Obsidian&file=Sites%2FJoost.blog%2FPosts.md&line=44"
