kimun-notes 0.11.0

A terminal-based notes application
Documentation

Kimün

Crates.io License: MIT Docs

Built With Ratatui

A terminal-based notes app focused on simplicity and powerful search.

It doesn't try to do everything; there are already more powerful tools for more complex workflows and knowledge management. Kimün aims to be simple and give you the tools to integrate with your own workflow. You can even combine it with other note taking apps that support local notes.

Features:

  • Local Markdown files indexed for fast search
  • Simple Markdown syntax highlighting
  • Powerful but simple search syntax to browse your notes
  • Telescope-like search and note navigation with previews
  • Wikilink and Markdown links note navigation with keyboard shortcuts
  • Multiple workspaces, so you keep your notes in separate contexts
  • Backlink support with previews
  • Skills and MCP Server for integrating with your favorite LLM
  • Embedded Neovim mode in the editor, so you can use your search and replace commands and move with HJKL
  • FAST

And more: Check the docs for more on what you can do with Kimün.

Notes are plain Markdown files stored in a directory you own. Kimün indexes them into a local SQLite database for fast full-text and structured search.

If you are already using another markdown, local-first, note-taking app, you should feel right at home and be able to use Kimün just like your existing app (QownNotes, Obsidian, Logseq, etc.) or alongside with it, only that in this case, it is on your terminal emulator.

Interactive and cli tool

TUI — an interactive terminal interface for writing, browsing, and organizing notes. Navigate your vault, search across notes, follow wiki links, and manage files without leaving the terminal.

CLI — a scriptable interface for automation and integration. Pipe output, capture command results into notes, log to your journal from cron jobs, or build custom workflows with jq and shell scripts:

# Quick capture from anywhere
kimun note journal "Fixed the auth bug, deploying at 17:00"

# Pipe command output into a note
./run-tests.sh | tail -5 | kimun note append "logs/test-log"

# Search and process results
kimun search "todo" --format json | jq '.notes[] | {title, path}'

The CLI can be used with AI tools and agents. An AI assistant can create, append, and search notes on your behalf — logging findings, organizing research, or updating your journal as part of an automated workflow. You can use the skill located under the skills directory, or create your own (in that case, create a pull request here and share yours!)

Note: There is a fair amount of AI-assisted code (using Claude) with manual reviews, although most of the core was written with my human hands. Initially AI was used for tedious refactors, data structures I'm too lazy to code myself, but also to help me building the foundations of more complex stuff, especially on the UI side. Anyway, I guess the lesson is, use AI as a tool, not as a replacement.

Oh, and about the app logo: maybe is not the most beautiful one, but I did it myself with Inkscape! (it's a k! that looks like an open book! get it?) Pay artists or do it yourself, but don't take away the fun creative things from people.

Kimün demo

Kimün screenshot

Quick Start

Kimün is a terminal UI for browsing and editing your Markdown notes with a powerful search engine. Use the TUI to write and organize notes, or the CLI for automation and scripting. Everything is stored as plain .md files — no lock-in.

Homebrew (macOS and Linux):

brew tap nico2sh/kimun
brew install kimun

Cargo:

cargo install kimun-notes

Try It

The example/ directory contains two sample workspaces (personal and work) with interconnected notes, journal entries, inbox items, and wikilinks — ready to explore.

# Clone and run from source
git clone https://github.com/nico2sh/kimun.git
cd kimun
cargo run -- --config example/config.toml

The first launch initializes the search index. After that, you can:

  • Browse notes in the sidebar, follow [[wikilinks]] with Ctrl+G
  • Search with Ctrl+K
  • Quick note with Ctrl+W — captures a thought to the inbox
  • Backlinks panel with Ctrl+E — see what links to the current note
  • Switch workspace with F4 — toggle between personal and work
  • Open settings with Ctrl+P — workspace management, themes, key bindings

The example config uses relative paths (personal/, work/), resolved against the config file's directory.

AI Skills

The skills/ directory contains ready-made skills for AI coding assistants, so they can use the Kimün CLI on your behalf — capturing notes, appending to your journal, searching your vault, and more.

Claude Code

# Copy the skill to your Claude skills directory
cp -r skills/kimun-cli ~/.claude/skills

Claude Code will pick it up automatically. In any session, Claude can now create and append notes, log to your journal, and search your vault using the CLI.

Other AI tools (Codex, Gemini CLI, etc.)

Copy skills/kimun-cli/SKILL.md to wherever your tool loads skills from, following that tool's skill installation instructions.

MCP Server

For richer AI integration, kimun mcp runs as a Model Context Protocol server. MCP gives the AI direct access to your vault through structured tools and prompt templates — no shell commands needed.

# Claude Code (one-time setup)
claude mcp add kimun -- kimun mcp

Tools let the AI create, read, search, and reorganise notes. Prompt templates load vault content and ask the model to reason over it — reviewing your day, scanning a week of journal entries, finding unlinked related notes, or brainstorming ideas grounded in what you've already written.

See the MCP Server docs for the full tool and prompt reference, and setup instructions for Claude Desktop and other clients.


Documentation

Full documentation is available in docs/:

To browse the docs locally with search:

# Install Zola: https://www.getzola.org/documentation/getting-started/installation/
zola serve docs/

Roadmap

  • Command palette
  • Backlinks panel
  • Inline tags and search by tag (#important)
  • Resolve relative paths on links and images
  • Paste images into notes
  • Auto-continue list formatting on Enter
  • Quick add note
  • Multiple workspaces
  • Search under Markdown sections
  • File management (create, rename, move, delete notes and directories)
  • Autosave
  • Wikilinks in preview
  • Navigate notes via links in preview
  • Embed neoVim as an option (currently experimental)

Contributing

Contributions are welcome! This project uses Conventional Commits to automate versioning and changelog generation.

If you want to automate enforcing the Conventional Commits, after cloning enable the included git hook:

git config core.hooksPath .githooks

This will reject commit messages that don't follow the format. Common types:

Type When to use
feat: New feature (minor version bump)
fix: Bug fix (patch bump)
feat!: Breaking change (major bump)
chore:, docs:, ci: No release triggered

Credits

Built with Ratatui (and ratatui-textarea), Nucleo for fuzzy searching, Ignore for fast file read, nvim-rs for Neovim integration. Inspired by Obsidian, Logseq and QownNotes.