No description
Find a file
Merlijn Wajer 364b1be22b Add whisper fallback with config toggle
audio_extract() now checks audio_backend config key ('llm' or 'whisper').
Default is 'llm' — tries LLM first, falls back to whisper on failure.
Set to 'whisper' to skip the LLM audio call entirely.
2026-07-03 14:32:17 +02:00
bin Add whisper fallback with config toggle 2026-07-03 14:32:17 +02:00
skills org-inbox: classify items as note/idea/project-log with context-aware routing 2026-06-30 09:53:47 +02:00
.gitignore org-search: first CLI tool for chroma-based knowledge base search 2026-06-20 23:45:01 +02:00
config.json.sample Add whisper fallback with config toggle 2026-07-03 14:32:17 +02:00
initial-plan.md org-read: note viewer; config: LLM API endpoint in ~/.local/share/org/config.json 2026-06-20 23:54:23 +02:00
plan.md org-inbox: classify items as note/idea/project-log with context-aware routing 2026-06-30 09:53:47 +02:00
README.md add requirements.txt, update README quick start 2026-06-29 20:36:35 +02:00
requirements.txt Replace faster-whisper with direct audio-to-LLM via Gemma 4 2026-07-02 19:34:05 +02:00
TODO.md whisper: switch to base model for better language detection 2026-06-22 17:12:54 +02:00

org — personal LLM knowledge management

Capture thoughts (typed or audio→transcript) into topic-sorted markdown files, indexed for similarity search. The LLM extracts ideas, links, and tasks during ingest.

Quick start

pip install -r requirements.txt

Create ~/.config/org/config.json:

{"llm_base_url": "http://...:8000/v1", "llm_api_key": "key", "llm_model": "model"}

Tools

Tool What
org-inbox [--watch] Process inbox/ — LLM extracts topic, summary, tasks; routes to topic dir; indexes
org-search <query> [--topic X] Chroma similarity search, returns JSON
org-write <topic> <title> [--stdin] Add a note (opens $EDITOR or reads stdin)
org-read <path> Print note as JSON
org-recent [--topic X] Recent notes with LLM one-liner summaries
org-reflect <topic> Daily reflection: LLM synthesizes decisions + priorities
org-refresh Re-index all notes into chroma

Examples

# Write a note interactively
org-write maemo-leste "eBPF tracing thoughts"

# Write a note from stdin
echo "XDP gave 30% throughput gain" | org-write work "XDP results" --stdin

# Process everything in inbox/ (audio + text)
org-inbox

# Keep processing as files arrive
org-inbox --watch

# Search
org-search "eBPF kernel tracing"
org-search "deadline" --topic work

# Read a specific note
org-read maemo-leste/2026-06-20.md

# Recent changes with summaries
org-recent
org-recent --topic maemo-leste

# Daily reflection for a topic
org-reflect maemo-leste

# Rebuild chroma index after bulk edits
org-refresh

Directory layout

~/org/
├── inbox/        # drop files here → org-inbox processes them
├── life/         # topic directory
├── work/
├── maemo-leste/
└── .db/          # chroma persistence

SKILL file

skills/org.md documents these tools for LLM harnesses (Hermes, opencode, etc.). The harness reads it as system prompt context so the LLM can call tools during chat.

Design

  • CLI tools are harness-agnostic. Any LLM frontend can call them.
  • Chat context lives in the LLM conversation, not in the tools.
  • Tasks emerge from notes naturally; no separate task DB.