From 898b52edcb47bcb3e9d6106e74ca73e74ea01e70 Mon Sep 17 00:00:00 2001 From: sillylaird Date: Thu, 3 Sep 2026 00:33:59 +0000 Subject: import live www.sillylaird.ca webroot --- .agents/skills/obsidian-markdown/SKILL.md | 196 +++++++++++++++++++++ .../obsidian-markdown/references/CALLOUTS.md | 58 ++++++ .../skills/obsidian-markdown/references/EMBEDS.md | 63 +++++++ .../obsidian-markdown/references/PROPERTIES.md | 61 +++++++ 4 files changed, 378 insertions(+) create mode 100644 .agents/skills/obsidian-markdown/SKILL.md create mode 100644 .agents/skills/obsidian-markdown/references/CALLOUTS.md create mode 100644 .agents/skills/obsidian-markdown/references/EMBEDS.md create mode 100644 .agents/skills/obsidian-markdown/references/PROPERTIES.md (limited to '.agents/skills/obsidian-markdown') diff --git a/.agents/skills/obsidian-markdown/SKILL.md b/.agents/skills/obsidian-markdown/SKILL.md new file mode 100644 index 0000000..bca51a4 --- /dev/null +++ b/.agents/skills/obsidian-markdown/SKILL.md @@ -0,0 +1,196 @@ +--- +name: obsidian-markdown +description: Create and edit Obsidian Flavored Markdown with wikilinks, embeds, callouts, properties, and other Obsidian-specific syntax. Use when working with .md files in Obsidian, or when the user mentions wikilinks, callouts, frontmatter, tags, embeds, or Obsidian notes. +--- + +# Obsidian Flavored Markdown Skill + +Create and edit valid Obsidian Flavored Markdown. Obsidian extends CommonMark and GFM with wikilinks, embeds, callouts, properties, comments, and other syntax. This skill covers only Obsidian-specific extensions -- standard Markdown (headings, bold, italic, lists, quotes, code blocks, tables) is assumed knowledge. + +## Workflow: Creating an Obsidian Note + +1. **Add frontmatter** with properties (title, tags, aliases) at the top of the file. See [PROPERTIES.md](references/PROPERTIES.md) for all property types. +2. **Write content** using standard Markdown for structure, plus Obsidian-specific syntax below. +3. **Link related notes** using wikilinks (`[[Note]]`) for internal vault connections, or standard Markdown links for external URLs. +4. **Embed content** from other notes, images, or PDFs using the `![[embed]]` syntax. See [EMBEDS.md](references/EMBEDS.md) for all embed types. +5. **Add callouts** for highlighted information using `> [!type]` syntax. See [CALLOUTS.md](references/CALLOUTS.md) for all callout types. +6. **Verify** the note renders correctly in Obsidian's reading view. + +> When choosing between wikilinks and Markdown links: use `[[wikilinks]]` for notes within the vault (Obsidian tracks renames automatically) and `[text](url)` for external URLs only. + +## Internal Links (Wikilinks) + +```markdown +[[Note Name]] Link to note +[[Note Name|Display Text]] Custom display text +[[Note Name#Heading]] Link to heading +[[Note Name#^block-id]] Link to block +[[#Heading in same note]] Same-note heading link +``` + +Define a block ID by appending `^block-id` to any paragraph: + +```markdown +This paragraph can be linked to. ^my-block-id +``` + +For lists and quotes, place the block ID on a separate line after the block: + +```markdown +> A quote block + +^quote-id +``` + +## Embeds + +Prefix any wikilink with `!` to embed its content inline: + +```markdown +![[Note Name]] Embed full note +![[Note Name#Heading]] Embed section +![[image.png]] Embed image +![[image.png|300]] Embed image with width +![[document.pdf#page=3]] Embed PDF page +``` + +See [EMBEDS.md](references/EMBEDS.md) for audio, video, search embeds, and external images. + +## Callouts + +```markdown +> [!note] +> Basic callout. + +> [!warning] Custom Title +> Callout with a custom title. + +> [!faq]- Collapsed by default +> Foldable callout (- collapsed, + expanded). +``` + +Common types: `note`, `tip`, `warning`, `info`, `example`, `quote`, `bug`, `danger`, `success`, `failure`, `question`, `abstract`, `todo`. + +See [CALLOUTS.md](references/CALLOUTS.md) for the full list with aliases, nesting, and custom CSS callouts. + +## Properties (Frontmatter) + +```yaml +--- +title: My Note +date: 2024-01-15 +tags: + - project + - active +aliases: + - Alternative Name +cssclasses: + - custom-class +--- +``` + +Default properties: `tags` (searchable labels), `aliases` (alternative note names for link suggestions), `cssclasses` (CSS classes for styling). + +See [PROPERTIES.md](references/PROPERTIES.md) for all property types, tag syntax rules, and advanced usage. + +## Tags + +```markdown +#tag Inline tag +#nested/tag Nested tag with hierarchy +``` + +Tags can contain letters, numbers (not first character), underscores, hyphens, and forward slashes. Tags can also be defined in frontmatter under the `tags` property. + +## Comments + +```markdown +This is visible %%but this is hidden%% text. + +%% +This entire block is hidden in reading view. +%% +``` + +## Obsidian-Specific Formatting + +```markdown +==Highlighted text== Highlight syntax +``` + +## Math (LaTeX) + +```markdown +Inline: $e^{i\pi} + 1 = 0$ + +Block: +$$ +\frac{a}{b} = c +$$ +``` + +## Diagrams (Mermaid) + +````markdown +```mermaid +graph TD + A[Start] --> B{Decision} + B -->|Yes| C[Do this] + B -->|No| D[Do that] +``` +```` + +To link Mermaid nodes to Obsidian notes, add `class NodeName internal-link;`. + +## Footnotes + +```markdown +Text with a footnote[^1]. + +[^1]: Footnote content. + +Inline footnote.^[This is inline.] +``` + +## Complete Example + +````markdown +--- +title: Project Alpha +date: 2024-01-15 +tags: + - project + - active +status: in-progress +--- + +# Project Alpha + +This project aims to [[improve workflow]] using modern techniques. + +> [!important] Key Deadline +> The first milestone is due on ==January 30th==. + +## Tasks + +- [x] Initial planning +- [ ] Development phase + - [ ] Backend implementation + - [ ] Frontend design + +## Notes + +The algorithm uses $O(n \log n)$ sorting. See [[Algorithm Notes#Sorting]] for details. + +![[Architecture Diagram.png|600]] + +Reviewed in [[Meeting Notes 2024-01-10#Decisions]]. +```` + +## References + +- [Obsidian Flavored Markdown](https://help.obsidian.md/obsidian-flavored-markdown) +- [Internal links](https://help.obsidian.md/links) +- [Embed files](https://help.obsidian.md/embeds) +- [Callouts](https://help.obsidian.md/callouts) +- [Properties](https://help.obsidian.md/properties) diff --git a/.agents/skills/obsidian-markdown/references/CALLOUTS.md b/.agents/skills/obsidian-markdown/references/CALLOUTS.md new file mode 100644 index 0000000..c086824 --- /dev/null +++ b/.agents/skills/obsidian-markdown/references/CALLOUTS.md @@ -0,0 +1,58 @@ +# Callouts Reference + +## Basic Callout + +```markdown +> [!note] +> This is a note callout. + +> [!info] Custom Title +> This callout has a custom title. + +> [!tip] Title Only +``` + +## Foldable Callouts + +```markdown +> [!faq]- Collapsed by default +> This content is hidden until expanded. + +> [!faq]+ Expanded by default +> This content is visible but can be collapsed. +``` + +## Nested Callouts + +```markdown +> [!question] Outer callout +> > [!note] Inner callout +> > Nested content +``` + +## Supported Callout Types + +| Type | Aliases | Color / Icon | +|------|---------|-------------| +| `note` | - | Blue, pencil | +| `abstract` | `summary`, `tldr` | Teal, clipboard | +| `info` | - | Blue, info | +| `todo` | - | Blue, checkbox | +| `tip` | `hint`, `important` | Cyan, flame | +| `success` | `check`, `done` | Green, checkmark | +| `question` | `help`, `faq` | Yellow, question mark | +| `warning` | `caution`, `attention` | Orange, warning | +| `failure` | `fail`, `missing` | Red, X | +| `danger` | `error` | Red, zap | +| `bug` | - | Red, bug | +| `example` | - | Purple, list | +| `quote` | `cite` | Gray, quote | + +## Custom Callouts (CSS) + +```css +.callout[data-callout="custom-type"] { + --callout-color: 255, 0, 0; + --callout-icon: lucide-alert-circle; +} +``` diff --git a/.agents/skills/obsidian-markdown/references/EMBEDS.md b/.agents/skills/obsidian-markdown/references/EMBEDS.md new file mode 100644 index 0000000..14a8989 --- /dev/null +++ b/.agents/skills/obsidian-markdown/references/EMBEDS.md @@ -0,0 +1,63 @@ +# Embeds Reference + +## Embed Notes + +```markdown +![[Note Name]] +![[Note Name#Heading]] +![[Note Name#^block-id]] +``` + +## Embed Images + +```markdown +![[image.png]] +![[image.png|640x480]] Width x Height +![[image.png|300]] Width only (maintains aspect ratio) +``` + +## External Images + +```markdown +![Alt text](https://example.com/image.png) +![Alt text|300](https://example.com/image.png) +``` + +## Embed Audio + +```markdown +![[audio.mp3]] +![[audio.ogg]] +``` + +## Embed PDF + +```markdown +![[document.pdf]] +![[document.pdf#page=3]] +![[document.pdf#height=400]] +``` + +## Embed Lists + +```markdown +![[Note#^list-id]] +``` + +Where the list has a block ID: + +```markdown +- Item 1 +- Item 2 +- Item 3 + +^list-id +``` + +## Embed Search Results + +````markdown +```query +tag:#project status:done +``` +```` diff --git a/.agents/skills/obsidian-markdown/references/PROPERTIES.md b/.agents/skills/obsidian-markdown/references/PROPERTIES.md new file mode 100644 index 0000000..e46a63a --- /dev/null +++ b/.agents/skills/obsidian-markdown/references/PROPERTIES.md @@ -0,0 +1,61 @@ +# Properties (Frontmatter) Reference + +Properties use YAML frontmatter at the start of a note: + +```yaml +--- +title: My Note Title +date: 2024-01-15 +tags: + - project + - important +aliases: + - My Note + - Alternative Name +cssclasses: + - custom-class +status: in-progress +rating: 4.5 +completed: false +due: 2024-02-01T14:30:00 +--- +``` + +## Property Types + +| Type | Example | +|------|---------| +| Text | `title: My Title` | +| Number | `rating: 4.5` | +| Checkbox | `completed: true` | +| Date | `date: 2024-01-15` | +| Date & Time | `due: 2024-01-15T14:30:00` | +| List | `tags: [one, two]` or YAML list | +| Links | `related: "[[Other Note]]"` | + +## Default Properties + +- `tags` - Note tags (searchable, shown in graph view) +- `aliases` - Alternative names for the note (used in link suggestions) +- `cssclasses` - CSS classes applied to the note in reading/editing view + +## Tags + +```markdown +#tag +#nested/tag +#tag-with-dashes +#tag_with_underscores +``` + +Tags can contain: letters (any language), numbers (not first character), underscores `_`, hyphens `-`, forward slashes `/` (for nesting). + +In frontmatter: + +```yaml +--- +tags: + - tag1 + - nested/tag2 +--- +``` -- cgit v1.2.3