home / skills / zpankz / mcp-skillset / process

process skill

/process

This skill performs vault-wide Obsidian processing, including tag normalization, wikilink fixes, frontmatter edits, and migration workflows at scale.

npx playbooks add skill zpankz/mcp-skillset --skill process

Review the files below or copy the command above to add this skill to your agents.

Files (14)
SKILL.md
2.1 KB
---
name: process
description: "Batch processing for Obsidian vaults: bulk tag normalization, wikilink extraction/fixing, frontmatter edits, vault analysis, and migration workflows. Use when asked to analyze or modify many notes in an Obsidian vault at scale, or to script/automate vault-wide changes."
---

# Obsidian Batch Processing Skill

Use this skill to perform repeatable, vault-wide operations on Obsidian markdown files.
Keep this file lean and route to the correct reference or script instead of duplicating detail.

## Routing Map (read only what you need)

- `references/quickstart.md` - Setup plus a 5-minute tutorial. Use for first run or quick orientation.
- `references/cli-usage.md` - Full CLI reference. Use for exact flags, subcommands, and examples.
- `references/obsidian-syntax.md` - Obsidian markdown syntax, regex patterns, and edge cases. Use when parsing or transforming content.
- `references/processing-patterns.md` - Advanced workflows, migrations, QA, rollback strategies. Use for multi-step or high-risk operations.
- `examples/use-case-1-migrate-flat-to-hierarchical.md` - Large-scale migration example.
- `examples/use-case-2-fix-broken-links.md` - Broken link repair example.
- `examples/use-case-3-normalize-tags.md` - Tag normalization example.
- `examples/use-case-4-vault-statistics-report.md` - Analytics/reporting example.

## Script Index (entry points)

- `scripts/batch_processor.py` - Main CLI entry point and command routing.
- `scripts/wikilink_extractor.py` - Extract and analyze wikilinks.
- `scripts/tag_normalizer.py` - Normalize tags across a vault.
- `scripts/frontmatter_processor.py` - Bulk frontmatter operations.
- `scripts/vault_analyzer.py` - Vault statistics and health reports.

## Standard Workflow

1. Back up the vault.
2. Run a dry run when available.
3. Execute the operation.
4. Verify results with a report or spot checks.

## How to Use This Skill

- Pick the smallest reference file that answers the question.
- Summarize only what is needed, then point to the exact script or command.
- If the user asks for edits or new behavior, modify the relevant script and keep the CLI consistent with `references/cli-usage.md`.

Overview

This skill provides batch-processing tools for Obsidian vaults to perform large-scale, repeatable edits and analysis. It bundles scripts for tag normalization, wikilink extraction/fixing, frontmatter edits, vault analytics, and migration workflows. Use it to automate vault-wide changes safely with dry-run and rollback patterns.

How this skill works

The skill exposes a set of scripts and a CLI entry point that inspect and modify markdown files in a vault. It parses Obsidian syntax, applies transformations (tags, wikilinks, frontmatter), and produces reports or dry-run outputs before writing changes. Core scripts include a batch processor, tag normalizer, wikilink extractor, frontmatter processor, and vault analyzer.

When to use it

  • Normalize tag formats across hundreds of notes
  • Find and fix broken or inconsistent wikilinks at scale
  • Apply consistent frontmatter templates or bulk metadata edits
  • Generate vault statistics and health reports before a migration
  • Execute large-structure migrations (flat → hierarchical) with repeatable steps

Best practices

  • Always back up the vault before running operations
  • Run a dry run first and review the generated report or diff
  • Start with small, representative subsets before full-vault runs
  • Use the provided CLI flags for verbosity and rollback safety
  • Refer to the specific reference file for syntax edge cases before transforming content

Example use cases

  • Normalize all tags to kebab-case and merge tag variants across a vault using scripts/tag_normalizer.py
  • Detect and repair broken wikilinks, updating link targets with scripts/wikilink_extractor.py and scripts/batch_processor.py
  • Bulk-insert or update YAML frontmatter fields (author, status, tags) using scripts/frontmatter_processor.py
  • Produce an index of note counts, orphan notes, and backlink coverage with scripts/vault_analyzer.py
  • Migrate a flat note structure to a folder-based hierarchy following the example in examples/use-case-1-migrate-flat-to-hierarchical.md

FAQ

Can I undo a batch operation?

The skill recommends backups and provides dry-run reporting; undo depends on your backup or VCS. Use version control or the vault backup made before the run to revert changes.

How do I avoid breaking complex Obsidian syntax during transforms?

Use references/obsidian-syntax.md to handle edge cases and run transformations with dry-run mode. Test on a subset and inspect diffs before applying changes vault-wide.