Skip to content
Back to skills

Templates

ASecurity

Obsidian Templates plugin: list, read, insert templates with {{date}}/{{time}}/{{title}} variables. Use when inserting or applying a template.

  • 58 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 3, 2026
ai-agentsbashdebugging

Works with

  • cursor
  • cli

Security analysis

A100/100

Scanned September 23, 2026

npx -y skills add laurigates/claude-plugins --skill templates --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Templates?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Templates
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/laurigates-templates/badge)](https://www.skillsdirectory.com/skills/laurigates-templates)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
created: 2026-04-30
modified: 2026-09-22
reviewed: 2026-09-22
name: templates
description: "Obsidian Templates plugin: list, read, insert templates with {{date}}/{{time}}/{{title}} variables. Use when inserting or applying a template."
user-invocable: false
allowed-tools: Bash(obsidian *), Read, Grep, Glob
---

# Obsidian Templates

## When to Use This Skill

| Use this skill when... | Use the alternative instead when... |
|---|---|
| Listing or previewing the templates configured in the vault | Editing template content as a plain note — use `vault-files` |
| Inserting a template into the currently open note | Creating a new note **from** a template — use `vault-files` `create … template=…` |
| Reading the resolved (`{{date}}` → real date) form of a template | Working with Templater plugin scripts — use `command-palette` for `templater-obsidian:*` |

This skill covers the **core Templates plugin**. The community Templater
plugin uses a different command surface — invoke it via `command-palette`
(`templater-obsidian:*`) instead.

## Prerequisites

- Obsidian desktop 1.12.7+ installer with CLI enabled
- Obsidian must be running
- Core **Templates** plugin enabled, with a templates folder configured

## List Templates

```bash
# All templates
obsidian templates

# Just the count
obsidian templates total
```

## Read a Template

```bash
# Raw template content (variables unresolved)
obsidian template:read name="Meeting"

# Resolve variables ({{date}}, {{time}}, {{title}})
obsidian template:read name="Meeting" resolve

# Provide a title for {{title}} resolution
obsidian template:read name="Meeting" title="Standup 2026-04-30" resolve
```

## Insert a Template

```bash
# Insert into the active file at the cursor
obsidian template:insert name="Meeting"
```

`template:insert` only works on the active editor. To create a new note
from a template instead, reach for `vault-files`:

```bash
obsidian create name="Meeting 2026-04-30" template="Meeting"
```

## Common Patterns

### "Preview what a template will produce before inserting"

```bash
obsidian template:read name="Daily" resolve
```

### "Bulk-create a week of daily notes from a template"

```bash
for offset in 0 1 2 3 4; do
  date=$(date -v+${offset}d +%F)   # macOS; use date -d "+$offset days" +%F on Linux
  obsidian create path="Daily/$date.md" template="Daily"
done
```

### "Open today's daily template raw vs resolved (debugging)"

```bash
obsidian template:read name="Daily"           # raw, with {{date}}
obsidian template:read name="Daily" resolve   # with today's date filled in
```

## Template Variables

The core Templates plugin understands:

| Variable | Resolves to |
|----------|-------------|
| `{{date}}` | Current date (format from Templates settings) |
| `{{time}}` | Current time (format from Templates settings) |
| `{{title}}` | The new note's title (or `title=` parameter) |

Use the `resolve` flag to apply these — without it, `template:read` returns
the raw source, which is what you want for editing the template itself.

## Agentic Optimizations

| Context | Command |
|---------|---------|
| List templates | `obsidian templates` |
| Template count | `obsidian templates total` |
| Raw template body | `obsidian template:read name=X` |
| Resolved template body | `obsidian template:read name=X resolve` |
| Insert into active file | `obsidian template:insert name=X` |
| Create new note from template | `obsidian create name=X template=Y` (see `vault-files`) |

## Related Skills

- **vault-files** — Create new notes from templates (`create … template=…`)
- **command-palette** — Invoke Templater (`templater-obsidian:*`) commands
- **plugins-themes** — Enable / configure the Templates core plugin

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…