Loading...
Loading...
This skill should be used when the user asks to "validate my collection", "query markdown files", "create mdbase type", "mdbase schema", "init mdbase", "mdbase validate", "mdbase query", or mentions mdbase, typed markdown collections, or frontmatter schemas.
npx skill4agent add nikhilmaddirala/gtd-cc tools-mdbase./mdbase.yaml./90-system/_types/./90-system/docs/mdbase-schema.md| Namespace | Types |
|---|---|
| journals-* | |
| zettel-* | |
| entity-* | |
| para-* | |
| misc-* | |
global-typeglobal-type: zettel-sourcesource-urlsource-titlezettel-source# Run from repo root
npx mdbase <command> [options]# Create a source note
npx mdbase create --type zettel-source
# Create with fields
npx mdbase create --type zettel-source \
--source-title "Article Title" \
--source-url "https://example.com" \
--zettel-status drafted
# Create a task
npx mdbase create --type para-task \
--para-status todo \
--para-priority p2
# Create a project
npx mdbase create --type para-project \
--para-status active \
--para-area "[[Career]]"
# Create a person entity
npx mdbase create --type entity-person \
--entity-name "Jane Doe"
# Create a publication
npx mdbase create --type zettel-publication \
--pub-title "Episode Title" \
--pub-type podcast \
--zettel-status drafted# All active projects
npx mdbase query "global-type = para-project AND para-status = active"
# Unreviewed sources
npx mdbase query "global-type = zettel-source AND zettel-status = drafted"
# Tasks by priority
npx mdbase query "global-type = para-task AND para-priority = p1"
# Overdue tasks
npx mdbase query "global-type = para-task AND para-due-date < 2026-02-06"
# YouTube sources
npx mdbase query "source-platform = youtube" --types zettel-source
# Projects sorted by deadline
npx mdbase query "para-status = active" --types para-project --sort para-deadline
# Limit results
npx mdbase query "global-type = zettel-source" --limit 10 --sort "-source-fetched-date"# Validate entire vault
npx mdbase validate .
# Validate specific folder
npx mdbase validate 20-zettel/
npx mdbase validate 30-para/
# Validate single file
npx mdbase validate 30-para/31-projects/example-project.md# Mark source as reviewed
npx mdbase update 20-zettel/sources/article.md --set "zettel-status=reviewed"
# Complete a task
npx mdbase update 30-para/tasks/my-task.md --set "para-status=completed"
# Update project deadline
npx mdbase update 30-para/31-projects/project.md --set "para-deadline=2026-03-01"# Read a file
npx mdbase read 30-para/31-projects/example-project.md
# Get vault statistics
npx mdbase stats .
# Visualize links
npx mdbase links . --format dot > graph.dot# Export projects to CSV
npx mdbase export . --type para-project --format csv -o projects.csv
# Export sources to JSON
npx mdbase export . --type zettel-source --format json -o sources.json
# Import tasks from CSV
npx mdbase import tasks.csv --type para-task# Rename file and update all [[wikilinks]]
npx mdbase rename old-name.md new-name.md# Execute a .base query file
npx mdbase base run 90-system/bases/zettel-sources.base
npx mdbase base run 90-system/bases/para-tasks.basemisc-*global-type: misc-recipe90-system/_types/misc-example.md---
name: misc-example
matchFields: [global-type]
fields:
global-type:
type: enum
values: [misc-example]
required: true
custom-field:
type: string
required: false
---
# misc-example
Description of when to use this type.# Query inbox items (untyped files in 00-inbox)
ls 00-inbox/
# Create typed note from inbox content
npx mdbase create --type zettel-source --source-title "..." --source-url "..."
# Or create task
npx mdbase create --type para-task --para-status todo# Unreviewed sources
npx mdbase query "zettel-status = drafted" --types zettel-source
# Active projects
npx mdbase query "para-status = active" --types para-project
# Todo tasks
npx mdbase query "para-status = todo" --types para-task --sort para-priority
# Orphan ideas (no sources linked)
npx mdbase query "zettel-sources = []" --types zettel-idea# Archive old drafted sources
npx mdbase query "zettel-status = drafted AND source-fetched-date < 2025-01-01" \
--types zettel-source --format paths | \
xargs -I {} npx mdbase update {} --set "zettel-status=archived"node --version---global-type90-system/_types/90-system/docs/mdbase-schema.md90-system/_types/90-system/bases/