Skip to content
Back to skills

Add Task

ASecurity

Use when you want to quickly capture a new task in the vault from a title, with optional priority and due date.

  • 13 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added May 26, 2026
tools

Works with

  • mcp

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add AdrianV101/obsidian-pkm-plugin --skill add-task --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Add Task?

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

Security grade badge for Add Task
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/adrianv101-add-task/badge)](https://www.skillsdirectory.com/skills/adrianv101-add-task)

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
---
name: add-task
description: Use when you want to quickly capture a new task in the vault from a title, with optional priority and due date.
---

# Add Task — Fast Vault Task Capture

Create a task note with minimal friction. Duplicate check → create → confirm. Done in one pass.

## Step 1: Resolve Task Details

Extract from skill arguments or the user's message:

| Field | Source | Default |
|---|---|---|
| **title** | args / message | required — ask if missing |
| **priority** | args | `normal` |
| **due** | args (any recognisable date) | none |
| **description** | remaining text after title/priority/due | none |

Priority shorthands: `h` / `hi` / `high` → `high`; `u` / `urg` / `urgent` → `urgent`; `l` / `lo` / `low` → `low`; anything else → `normal`.

## Step 2: Detect Project

Read CLAUDE.md for the `# PKM: <path>` line (regex: `/^#\s+PKM:\s*(.+)$/m`):
- **Matched**: use the vault project path (e.g., `01-Projects/Obsidian-MCP`)
- **No match**: ask which project, or offer `00-Inbox` for unassigned tasks

Task path: `<project>/tasks/<kebab-title>.md`
- `<kebab-title>` = title lowercased, spaces → `-`, strip characters other than `a-z0-9-`
- `<project-folder-name>` for the `project:` frontmatter field is the **basename** of the vault path (e.g., `Obsidian-MCP` from `01-Projects/Obsidian-MCP`)

## Step 3: Duplicate Check

```
vault_semantic_search({ query: "<title>", folder: "<project>", limit: 3, threshold: 0.7 })
```

If unavailable (no `VAULT_PKM_OPENAI_KEY`):
```
vault_search({ query: "<title>", folder: "<project>" })
vault_query({ type: "task", folder: "<project>" })
```

If a similar task exists (similarity > 0.8 or exact/near-exact title in search results):
> "Similar task found: `<path>` — `<title>`. Create a new one anyway, or skip?"

If skipping, exit cleanly. If creating anyway, proceed.

## Step 4: Create Task Note

```
vault_write({
  template: "task",
  path: "<task-path>",
  frontmatter: {
    tags: ["task"],
    status: "pending",
    priority: "<priority>",
    project: "<project-folder-name>",
    ...(due ? { due: "<YYYY-MM-DD>" } : {})   // omit due entirely if not provided
  }
})
```

## Step 5: Fill Description (if provided)

If a description was given in Step 1, append it into the Description section:

```
vault_append({
  path: "<task-path>",
  heading: "## Description",
  position: "after_heading",
  content: "<description>"
})
```

Skip if no description was provided — leave the section blank for later.

## Step 6: Confirm

Report the created task concisely:

> **Task created**: `<project>/tasks/<kebab-title>.md`
> Priority: `<priority>` · Due: `<due or none>` · Status: `pending`

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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.