zachmueller529 downloadsA transparent, extensible, autonomous-capable AI assistant for note taking and knowledge management.
A transparent, extensible AI assistant for note-taking and knowledge management in Obsidian.
Notor gives you a full AI chat panel inside Obsidian with the ability to read, search, create, and surgically edit notes in your vault. Every AI action is visible inline, write operations require approval by default, and automatic checkpoints let you roll back any change. Bring your own LLM — local or cloud — and keep your data under your control.
[[Note#Section]]), external files (including .docx), images, and PDFs. Ambient workspace context (open notes, vault structure, OS) is injected automatically..docx)<include_note> tag — dynamically inject vault note content into workflow bodies, system prompts, and rule filesBRAT (Beta Reviewer's Auto-update Tool) is an Obsidian community plugin that installs and updates plugins directly from GitHub.
zachmueller/notor and click Add PluginBRAT can also keep the plugin up to date automatically — enable auto-updates in Settings → Obsidian42-BRAT, or run BRAT: Check for updates to all beta plugins and UPDATE from the command palette at any time.
Requires Node.js 18+.
git clone https://github.com/zachmueller/notor.git
cd notor
npm install
npm run build
Copy main.js, manifest.json, and styles.css to your vault:
<Vault>/.obsidian/plugins/notor/
Reload Obsidian and enable Notor in Settings → Community plugins.
http://localhost:11434/v1)medium). See docs/model-presets.md.For full setup walkthroughs — including creating your first persona, workflow, and MCP server connection — see docs/getting-started.md.
fetch_webpage requests).src/
main.ts # Plugin entry point and lifecycle
types.ts # Shared TypeScript types
chat/ # Conversation orchestration, history, context management, system prompt
providers/ # LLM provider integrations (Anthropic, OpenAI, Bedrock, local)
tools/ # Vault tool implementations (including fetch_webpage, execute_command, read_file, read_docx, write_docx)
checkpoints/ # Checkpoint storage and management
context/ # Auto-context injection, attachment handling, message assembly, compaction
hooks/ # LLM lifecycle hook configuration, execution engine, event dispatch
presets/ # Model preset resolution and stale detection
personas/ # Persona discovery, activation/switching, per-persona auto-approve resolution
workflows/ # Workflow discovery, prompt assembly, executor, concurrency management, hook parsing
include-note/ # <include_note> tag parser and resolver (vault-relative paths and wikilinks)
rules/ # Vault-level instruction file evaluation
shell/ # Shell executor, shell resolver, output buffer (shared by execute_command and hooks)
mcp/ # MCP server hub, tool adapter, and type definitions
sub-agents/ # Sub-agent profile discovery, manager, built-in profiles, preamble, semaphore
extensions/ # User-defined tool, automation, and chat block runtime: discovery, parsing,
# compilation, settings, built-in scaffolds
memory/ # Evergreen memory note format, dedup cache, concept resolver
settings/ # Settings interface, defaults, tab UI, per-section UI components
template-vars/ # Template variable registry and built-in variable definitions
ui/ # Chat panel, chat blocks, diff view, approval UI, tool call display,
# attachment chips, compaction markers, persona picker,
# workflow activity indicator, workflow slash-command suggest
utils/ # Logging, token utilities, secret helpers, shared path-validation
specs/ # Detailed specifications for each development phase
design/ # Architecture, UX, tool design, and roadmap documents
e2e/ # End-to-end test scripts and Playwright configuration
The design/ directory contains the full medium-term vision for Notor, written to inform architectural decisions. Not everything described there is implemented yet.
| Document | Contents |
|---|---|
design/README.md |
Overview, design principles, and document index |
design/roadmap.md |
Phased implementation plan (Phases 0–5) |
design/architecture.md |
LLM provider layer, context management, personas, workflows, agents, hooks, checkpoints |
design/ux.md |
Chat panel, editor behavior, diff preview, transparency, and UI patterns |
design/tools.md |
Built-in tool definitions, web fetching, shell access, and custom MCP tool extensibility |
design/user-defined-tools.md |
User-defined extension system: vault-authored tools, automations, shared settings, runtime context, compilation pipeline |
design/research/ |
Pre-implementation research findings (secrets manager, vault API, system prompt design, LLM model APIs) |
version in manifest.json (SemVer, no v prefix).versions.json to map the new plugin version to the minimum Obsidian version.npm run build to produce main.js.manifest.json, main.js, and styles.css as release assets.You can automate the version bump with
npm version patch|minor|majorafter manually updatingminAppVersioninmanifest.json.