English
Download
macOS

Windows Coming soon

Linux Coming soon

← Blog

Why I Built Kuku

Kuku를 만든 이유

なぜ Kuku を作ったのか

Abstract line illustration on a dark grid background

Translated from the Korean original using Claude Opus 4.7.

Obsidian is great, but it’s Electron. Notion is nice, but your data lives in the cloud. Apple Notes is native, but doesn’t support Markdown.

I wanted an editor that is:

  • Truly native (not Electron)
  • Stores files as plain markdown on my machine
  • Supports Obsidian-style [[wikilinks]] and backlinks
  • Has AI that can read and edit my documents directly (like Cursor)

So I built it myself.

The Stack

Frontend: React 19 + TypeScript + Vite
Editor:   Tiptap (ProseMirror-based)
Backend:  Tauri v2 (Rust)
Storage:  SQLite (FTS5 full-text search)
AI:       Gemini API (tool calling)
STT:      Whisper.cpp (local, offline)

Thanks to Tauri, bundle size is ~15MB and memory usage ~80MB. An equivalent Electron app would consume 200MB+.

What Makes It Different

Plain Markdown Files

Your notes are stored as .md files. Open them in vim, version control with git, or open the same folder in Obsidian. No lock-in.

AI Agent, Not Just Chat

This isn’t a chatbot. Using Gemini’s tool calling, the AI can actually:

  • Search your vault (search_vault)
  • Read, create, and edit files
  • Insert wikilinks automatically
  • Find related documents

Ask it to “summarize last week’s meeting notes” and it will search your vault, read the relevant files, and offer to create a new summary document.

Cursor-Style Edit Preview

AI edits aren’t applied directly. You see a diff and choose to Accept or Reject:

- Original content here.
+ AI-modified content here.

[Keep] [Undo]

When editing multiple files, manage them all from a floating bar. Cmd+Y to Keep, Cmd+N to Undo.

Local Speech-to-Text

Voice recognition runs locally with whisper.cpp. Download the model once, then it works completely offline. No API calls to OpenAI.

SQLite FTS5 with BM25 ranking. Search through titles and full document content. Korean tokenization supported.

Honest Comparison

KukuObsidianNotion
Native appYes (Tauri)No (Electron)No (Electron)
Local filesYesYesNo
AI with tool useYesChat onlyLimited
Edit previewYesNoNo
Local STTYesNoNo
Plugin ecosystemNoExtensiveLimited
MobileNoYesYes

Use Obsidian if you need the plugin ecosystem or mobile apps.

Use Kuku if you want native performance, AI that edits your files, and local voice recognition.

What It’s Not

  • No cloud sync — use iCloud or Dropbox folder directly
  • No mobile app — macOS only for now
  • No collaboration — this is for personal use
  • No plugin system — yet

Try It

Kuku is free to download. AI features require a subscription, but the core editor works without any account.

Requirements: macOS 12.0+, Apple Silicon.

Obsidian은 훌륭하지만 Electron입니다. Notion도 좋지만 데이터가 클라우드에 있죠. Apple Notes는 네이티브지만 Markdown을 지원하지 않습니다.

제가 원하던 에디터는 이런 거였습니다:

  • 진짜 네이티브 (Electron이 아님)
  • 파일을 내 컴퓨터에 일반 마크다운으로 저장
  • Obsidian 스타일의 [[위키링크]]와 백링크 지원
  • 문서를 직접 읽고 편집할 수 있는 AI (Cursor처럼)

그래서 직접 만들었습니다.

기술 스택

Frontend: React 19 + TypeScript + Vite
Editor:   Tiptap (ProseMirror 기반)
Backend:  Tauri v2 (Rust)
Storage:  SQLite (FTS5 전문 검색)
AI:       Gemini API (tool calling)
STT:      Whisper.cpp (로컬, 오프라인)

Tauri 덕분에 번들 크기는 약 15MB, 메모리 사용량은 약 80MB 수준입니다. 비슷한 기능의 Electron 앱이라면 200MB 이상을 차지했을 겁니다.

무엇이 다른가

일반 마크다운 파일

노트는 .md 파일로 저장됩니다. vim에서 열어도 되고, git으로 버전 관리해도 되고, 같은 폴더를 Obsidian에서 열어도 됩니다. 락인이 없습니다.

채팅이 아닌 AI 에이전트

챗봇이 아닙니다. Gemini의 tool calling을 통해 AI가 실제로 다음 작업을 할 수 있습니다:

  • 보관함 검색 (search_vault)
  • 파일 읽기, 생성, 편집
  • 위키링크 자동 삽입
  • 관련 문서 찾기

“지난주 회의록 요약해 줘”라고 요청하면 보관함을 뒤지고, 관련 파일을 읽고, 새 요약 문서를 만들자고 제안합니다.

Cursor 스타일 편집 미리보기

AI의 편집은 바로 적용되지 않습니다. diff를 확인하고 Accept 또는 Reject를 선택합니다:

- Original content here.
+ AI-modified content here.

[Keep] [Undo]

여러 파일을 동시에 편집할 때는 플로팅 바에서 한꺼번에 관리합니다. Cmd+Y로 유지, Cmd+N으로 되돌리기.

로컬 음성 인식

음성 인식은 whisper.cpp로 로컬에서 돌아갑니다. 모델을 한 번 내려받으면 이후에는 완전히 오프라인에서 동작합니다. OpenAI로 API 호출을 보내지 않습니다.

전문 검색

SQLite FTS5와 BM25 랭킹. 제목과 본문 전체를 검색합니다. 한국어 토크나이징도 지원합니다.

솔직한 비교

KukuObsidianNotion
네이티브 앱네 (Tauri)아니오 (Electron)아니오 (Electron)
로컬 파일아니오
tool use 지원 AI채팅만제한적
편집 미리보기아니오아니오
로컬 음성 인식아니오아니오
플러그인 생태계아니오풍부제한적
모바일아니오

Obsidian을 쓰세요 — 플러그인 생태계나 모바일 앱이 필요하다면.

Kuku를 쓰세요 — 네이티브 성능, 파일을 편집하는 AI, 로컬 음성 인식이 필요하다면.

없는 것

  • 클라우드 동기화 없음 — iCloud나 Dropbox 폴더를 직접 사용하세요
  • 모바일 앱 없음 — 지금은 macOS 전용입니다
  • 협업 없음 — 개인용입니다
  • 플러그인 시스템 없음 — 아직은요

써 보세요

Kuku는 무료로 내려받을 수 있습니다. AI 기능은 구독이 필요하지만, 에디터 기본 기능은 계정 없이도 동작합니다.

요구 사항: macOS 12.0 이상, Apple Silicon.

この記事は韓国語の原文を Claude Opus 4.7 で翻訳したものです。

Obsidian は素晴らしいけれど、Electron です。Notion もいいけれど、データはクラウドにあります。Apple Notes はネイティブだけれど、Markdown に対応していません。

欲しかったのは、こんなエディターでした:

  • 本当にネイティブ (Electron ではない)
  • ファイルを自分のマシンにプレーンな Markdown で保存
  • Obsidian 風の [[wikilinks]] とバックリンクに対応
  • ドキュメントを直接読んで編集できる AI (Cursor のような)

だから自分で作りました。

技術スタック

Frontend: React 19 + TypeScript + Vite
Editor:   Tiptap (ProseMirror ベース)
Backend:  Tauri v2 (Rust)
Storage:  SQLite (FTS5 全文検索)
AI:       Gemini API (tool calling)
STT:      Whisper.cpp (ローカル、オフライン)

Tauri のおかげで、バンドルサイズは約 15MB、メモリ使用量は約 80MB です。同等の Electron アプリなら 200MB を超えるでしょう。

何が違うのか

プレーンな Markdown ファイル

ノートは .md ファイルとして保存されます。vim で開いても、git でバージョン管理しても、同じフォルダを Obsidian で開いても構いません。ロックインはありません。

チャットではない AI エージェント

チャットボットではありません。Gemini の tool calling を使って、AI は実際に次のことができます:

  • ボールトの検索 (search_vault)
  • ファイルの読み取り、作成、編集
  • wikilink の自動挿入
  • 関連ドキュメントの探索

「先週の会議メモを要約して」と頼めば、ボールトを検索し、関連するファイルを読み、新しい要約ドキュメントを作ろうと提案してくれます。

Cursor スタイルの編集プレビュー

AI の編集は直接は適用されません。diff を確認して Accept か Reject を選びます:

- Original content here.
+ AI-modified content here.

[Keep] [Undo]

複数ファイルを編集しているときは、フローティングバーからまとめて操作できます。Cmd+Y で Keep、Cmd+N で Undo。

ローカル音声認識

音声認識は whisper.cpp を使ってローカルで走ります。モデルを一度ダウンロードすれば、以降は完全オフラインで動きます。OpenAI への API 呼び出しはありません。

全文検索

SQLite FTS5 と BM25 ランキング。タイトルと本文全体を横断して検索します。韓国語のトークナイズにも対応しています。

率直な比較

KukuObsidianNotion
ネイティブアプリ対応 (Tauri)非対応 (Electron)非対応 (Electron)
ローカルファイル対応対応非対応
tool use 対応 AI対応チャットのみ限定的
編集プレビュー対応非対応非対応
ローカル STT対応非対応非対応
プラグインエコシステム非対応充実限定的
モバイル非対応対応対応

Obsidian を使ってください — プラグインエコシステムやモバイルアプリが必要なら。

Kuku を使ってください — ネイティブのパフォーマンス、ファイルを編集する AI、ローカル音声認識が必要なら。

ないもの

  • クラウド同期なし — iCloud や Dropbox のフォルダを直接ご利用ください
  • モバイルアプリなし — 現時点では macOS のみ
  • コラボレーションなし — 個人利用向けです
  • プラグインシステムなし — まだ

使ってみる

Kuku は無料でダウンロードできます。AI 機能にはサブスクリプションが必要ですが、エディターの中心機能はアカウントなしで動作します。

動作条件: macOS 12.0 以上、Apple Silicon。