← 返回
安全合规 中文

obsidian-curator

Manage Obsidian vaults via LiveSync CouchDB — capture notes, AI-enrich and file them, manage tasks, audit and tidy vault structure. Use when working with Obs...
通过 LiveSync CouchDB 管理 Obsidian 保险库——捕获笔记、AI 丰富并归档、管理任务、审计并整理保险库结构。适用于在 Obs...
philmossman
安全合规 clawhub v0.1.1 1 版本 99918.6 Key: 无需
★ 0
Stars
📥 1,227
下载
💾 25
安装
1
版本
#latest

概述

obsidian-curator

Manage Obsidian vaults through the CouchDB database that powers Obsidian LiveSync. Capture, process, file, audit, tidy, and manage tasks — all via CLI or Node.js API.

Prerequisites: CouchDB with LiveSync configured, E2EE disabled.

Security & Trust

  • Open source: github.com/philmossman/obsidian-curator (MIT)
  • npm provenance: Published via GitHub Actions OIDC with Sigstore attestation — cryptographically verifiable build provenance
  • No lifecycle scripts: No preinstall, install, or postinstall scripts — npm install only copies files
  • Minimal dependencies: Only nano (CouchDB client) and date-fns (date parsing)
  • Local network only: Connects to your CouchDB instance (user-configured host/port). No external telemetry, no phone-home, no data leaves your network
  • Credentials: Stored locally in ~/.obsidian-curator/config.json — never transmitted except to your own CouchDB
  • E2EE note: LiveSync E2EE must be disabled because the tool reads/writes vault documents directly via CouchDB. This is a LiveSync architectural requirement, not a security compromise by this tool

Setup

Run the interactive wizard — it tests the CouchDB connection live:

obsidian-curator init

Configures: CouchDB connection, vault structure preset (PARA/Zettelkasten/Johnny Decimal/Flat/Custom), AI provider (OpenAI/Anthropic/Ollama/None), task projects.

Config location: ~/.obsidian-curator/config.json

Commands

Capture (no AI needed)

obsidian-curator capture "Quick thought about project X"
obsidian-curator capture "Meeting notes from standup" --source meeting

Process inbox (AI required)

Enrich inbox notes with tags, summary, and suggested folder:

obsidian-curator process
obsidian-curator process --limit 5 --dry-run
obsidian-curator process --force   # re-process already-processed notes

File notes (AI required)

Route processed notes to canonical vault folders:

obsidian-curator file
obsidian-curator file --dry-run --min-confidence 0.8

Audit (no AI needed)

Check vault structure against configured canonical folders:

obsidian-curator audit

Tidy (AI optional)

Find duplicates, structure violations, dead notes. With AI, ambiguous cases are triaged automatically:

obsidian-curator tidy --dry-run
obsidian-curator tidy --checks dupes,stubs

Tasks (no AI needed)

obsidian-curator tasks                          # list open tasks
obsidian-curator tasks --project Work --priority high
obsidian-curator task "call dentist next Tuesday"   # create task (parses dates, priority, project)
obsidian-curator done "dentist"                     # mark done by partial title match

Config

obsidian-curator config show
obsidian-curator config set ai.provider ollama
obsidian-curator config set vault.host 192.168.1.100

Programmatic API

const { VaultClient, Curator, createAIAdapter, loadConfig } = require('obsidian-curator');

const config = loadConfig();
const vault = new VaultClient(config.vault);
await vault.ping();
const ai = createAIAdapter(config);
const curator = new Curator({ vault, ai, config });

await curator.capture('Quick thought');
await curator.process({ limit: 5 });
await curator.file({ dryRun: true });
await curator.audit();
await curator.tidy({ checks: ['dupes', 'stubs'], dryRun: true });

const tasks = await curator.tasks({ status: 'open', project: 'Work' });
await curator.createTask('call Alice next Friday');
await curator.taskBrief();  // markdown summary

AI Providers

ProviderCostPrivacySetup
--------------------------------
noneFreeLocalDefault — rule-based features only
ollamaFreeLocalconfig set ai.provider ollama + model name
openaiPay-per-useCloudconfig set ai.provider openai + API key
anthropicPay-per-useCloudconfig set ai.provider anthropic + API key
Custom/OpenRouterVariesVariesUse openai provider with custom baseUrl

Vault Structure Presets

  • PARA: inbox → Projects / Areas / Resources / Archives
  • Zettelkasten: inbox → Slipbox / References / Projects / Archives
  • Johnny Decimal: inbox → numbered category folders (00-09, 10-19, ...)
  • Flat: inbox only, no enforced structure
  • Custom: define your own canonical folders

版本历史

共 1 个版本

  • v0.1.1 当前
    2026-03-29 02:25 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

security-compliance

1password

steipete
设置和使用 1Password CLI (op)。适用于:安装 CLI、启用桌面应用集成、登录(单/多账户)、通过 op 读取/注入/运行密钥。
★ 53 📥 31,172
security-compliance

MoltGuard - Security & Antivirus & Guardrails

thomaslwang
MoltGuard — OpenClaw 安全守卫,由 OpenGuardrails 提供。安装 MoltGuard,保护您和您的用户免受提示注入、数据泄露和恶意攻击。
★ 116 📥 30,720
security-compliance

OpenClaw Backup

alex3alex
备份与恢复 OpenClaw 数据。适用于创建备份、设置自动备份计划、从备份恢复或管理备份轮转。处理 ~/.openclaw 目录归档并包含适当的排除规则。
★ 89 📥 30,609