{"id":49644266,"url":"https://github.com/keel-labs/keel","last_synced_at":"2026-06-12T00:01:23.133Z","repository":{"id":355102186,"uuid":"1201791741","full_name":"Keel-Labs/keel","owner":"Keel-Labs","description":"An AI assistant whose memory belongs to you. Local-first Mac app, plain markdown workspace, bring your own model.","archived":false,"fork":false,"pushed_at":"2026-06-11T18:47:54.000Z","size":8575,"stargazers_count":43,"open_issues_count":14,"forks_count":6,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-06-11T20:17:06.693Z","etag":null,"topics":["ai","claude","electron","knowledge-base","llm","local-first","macos","markdown","ollama","openai","openrouter","personal-knowledge-management"],"latest_commit_sha":null,"homepage":"https://github.com/Keel-Labs/keel/releases/latest","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Keel-Labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":["medha"],"custom":["https://buymeacoffee.com/medha"]}},"created_at":"2026-04-05T06:52:28.000Z","updated_at":"2026-06-11T18:48:14.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Keel-Labs/keel","commit_stats":null,"previous_names":["keel-labs/keel"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/Keel-Labs/keel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Keel-Labs%2Fkeel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Keel-Labs%2Fkeel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Keel-Labs%2Fkeel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Keel-Labs%2Fkeel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Keel-Labs","download_url":"https://codeload.github.com/Keel-Labs/keel/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Keel-Labs%2Fkeel/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34222709,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","claude","electron","knowledge-base","llm","local-first","macos","markdown","ollama","openai","openrouter","personal-knowledge-management"],"created_at":"2026-05-05T23:03:30.827Z","updated_at":"2026-06-12T00:01:23.125Z","avatar_url":"https://github.com/Keel-Labs.png","language":"TypeScript","funding_links":["https://github.com/sponsors/medha","https://buymeacoffee.com/medha"],"categories":[],"sub_categories":[],"readme":"# Keel\n\n**An AI assistant whose memory belongs to you.**\n\nKeel is a local-first desktop app for macOS and Windows that captures what matters from your conversations into plain markdown files on your disk. Swap between Claude, GPT, OpenRouter, or a local model any time — your context stays with you, not the vendor.\n\nOpen source (MIT). No telemetry. No account required. You can bring your own API key.\n\n▶ **[Keel Walkthrough 🚀 — Watch Video](https://www.loom.com/share/29c1407fc2944b1fb5c6c1bbc953831b)**\n\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 35 27 PM\" src=\"https://github.com/user-attachments/assets/afdce370-2210-45a0-8008-f078bb893000\" /\u003e\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 40 13 PM\" src=\"https://github.com/user-attachments/assets/a76c2ea4-1f7d-4ede-aa19-86aacbf0a1f6\" /\u003e\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 43 46 PM\" src=\"https://github.com/user-attachments/assets/dbdbb413-8cb3-4764-81cb-f7933bb3e717\" /\u003e\n\n---\n\n## Your context is yours. The model is just a tenant.\n\nMost AI tools invert ownership. Your notes, your history, and the context that makes an assistant useful end up trapped inside someone else's product — tied to a specific model, a specific vendor, a specific subscription. The day that model gets deprecated or that company changes direction, your context goes with it.\n\nKeel flips that. **You own your memories. You own your context.** It all lives on your machine, in plain markdown, in a folder you control. Your projects, your captures, your wikis, your daily logs — they're files, not database rows inside someone else's cloud.\n\nThe model is the part that's interchangeable. Claude today, GPT tomorrow, a local Llama on a flight, Ollama when you want privacy — swap providers whenever you want. The assistant changes; your brain doesn't.\n\n**One portable harness, any model you like, no lock-in.**\n\n---\n\n## Download\n\n**[Download Keel for macOS](https://github.com/Keel-Labs/keel/releases/latest)** — universal DMG (Apple Silicon and Intel).\n\n**[Download Keel for Windows](https://github.com/Keel-Labs/keel/releases/latest)** — Windows x64 installer.\n\n### Install\n\n**macOS**\n1. Open the DMG and drag **Keel** to **Applications**.\n2. Double-click Keel to launch.\n\n**Windows**\n1. Run the `Keel-\u003cversion\u003e-win-x64.exe` installer.\n2. Launch Keel from the Start menu.\n\nOn first launch, you'll need an API key from at least one provider (Anthropic, OpenAI, or OpenRouter), or [Ollama](https://ollama.com) installed locally. Keel walks you through this.\n\n---\n\n## What Keel does\n\n**A local-first workspace you fully own.** Keel maintains a folder on your disk — typically `~/Keel` — made up of markdown files, project folders, daily logs, and wiki bases. Edit it in any editor. Back it up yourself. Move it between machines. Keel reads and writes it in the background as you work.\n\n\u003cimg width=70% height=auto alt=\"Screenshot 2026-04-29 at 12 40 27 PM\" src=\"https://github.com/user-attachments/assets/72ddaf82-9bdf-44ab-b86c-cb370c45a7dd\" /\u003e\n\n**Bring your own model.** Keel speaks to Claude, OpenAI, OpenRouter, and local models via Ollama. Swap providers in settings; fall back automatically when one is unavailable.\n\n\u003cimg width=70% height=auto alt=\"Screenshot 2026-04-29 at 12 40 13 PM\" src=\"https://github.com/user-attachments/assets/a76c2ea4-1f7d-4ede-aa19-86aacbf0a1f6\" /\u003e\n\n**Context-aware chat.** Every conversation draws on a system prompt assembled from your workspace: relevant project context, recent captures, open tasks, and search hits. Ask about a project and Keel already knows who's involved, where you left off, and what's open.\n\n**Auto-capture.** When a chat produces something worth keeping — a decision, a fact about a project, a new task — Keel quietly saves it back into your workspace so tomorrow's conversation starts with today's progress baked in.\n\n**Per-project knowledge bases.** Turn any project folder into a queryable wiki with `/create-kb` and `/refresh-kb`. Keel ingests markdown and PDFs, compiles them into a structured knowledge base, and keeps it in sync as files change.\n\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 43 58 PM\" src=\"https://github.com/user-attachments/assets/d6cb5cf0-147c-46ab-8254-fad2facec1de\" /\u003e\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 46 59 PM\" src=\"https://github.com/user-attachments/assets/90293f2a-8e92-4118-882a-4ee977f07676\" /\u003e\n\n**Dashboard.** A home view that surfaces your day at a glance — open tasks and reminders, recent activity, the morning brief, weather, and news — so you land somewhere useful instead of an empty chat.\n\u003cimg width=80% height=auto alt=\"Dashboard\" src=\"https://github.com/user-attachments/assets/c4e0c2a4-b86b-49ee-8000-2468c01784a8\" /\u003e\n\n**Tasks and reminders.** First-class to-dos backed by markdown, with due dates, projects, and time-based reminders that fire as desktop notifications.\n\n\u003cimg width=80% height=auto alt=\"Tasks\" src=\"https://github.com/user-attachments/assets/08684877-9d91-4a1d-aa48-a1677e19f8da\" /\u003e\n\n**Meeting transcription.** Record a meeting (or import audio) and Keel transcribes it locally with Whisper, then writes a structured summary — decisions, action items, attendees — back into the relevant project.\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 45 49 PM\" src=\"https://github.com/user-attachments/assets/80d6ffa3-a3ce-44f5-800c-93e13aa79936\" /\u003e\n\n**Voice input.** Speak instead of type, using local Whisper or OpenAI's API.\n\u003cimg width=60% height=auto alt=\"Screenshot 2026-04-29 at 1 52 25 PM\" src=\"https://github.com/user-attachments/assets/87ae1da5-775d-496d-8336-667472b213fc\" /\u003e\n\n**Daily briefs and end-of-day wraps.** Keel generates a morning brief and an EOD summary from your workspace, and \"pick up where you left off\" pulls yesterday's loose ends into today.\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 44 46 PM\" src=\"https://github.com/user-attachments/assets/cc734629-f1bc-46ef-b438-a73d2da4f815\" /\u003e\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 45 33 PM\" src=\"https://github.com/user-attachments/assets/e9f38e6d-7f00-424b-9512-849cdcd1858f\" /\u003e\n\n**Scheduled jobs.** Run any prompt or workflow on a recurring schedule — daily digests, weekly reviews, custom check-ins — with results captured back into your workspace.\n\u003cimg width=80% height=auto alt=\"Scheduled Jobs\" src=\"https://github.com/user-attachments/assets/79211140-4472-4259-9926-adff5cf35722\" /\u003e\n\n**Personalities.** Pick the voice your assistant speaks in — default, Butler, Hype Friend, Captain, or Documentary Narrator — or define your own.\n\n\u003cimg width=80% height=auto alt=\"Select a personality for your assistant\" src=\"https://github.com/user-attachments/assets/b8e3e03d-eb81-44b6-8e83-224db4e82a85\" /\u003e\n\n**Dark mode.** System-aware, with a manual override.\n\u003cimg width=80% height=auto alt=\"Dark mode\" src=\"https://github.com/user-attachments/assets/3201e9bc-7d3d-497e-81f7-fb1c5c359ee5\" /\u003e\n\n**Google Workspace and X integrations.** Sync Calendar events into context, read Google Docs into chat, export results back to Docs. Sync your X bookmarks into a searchable wiki, or publish posts directly from chat.\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 52 13 PM\" src=\"https://github.com/user-attachments/assets/f0babd41-4c84-42c9-922c-d00b8ba8a281\" /\u003e\n\n**Other Commands**\n\n\u003cimg width=80% height=auto alt=\"Screenshot 2026-04-29 at 12 45 11 PM\" src=\"https://github.com/user-attachments/assets/35135158-5e05-48a3-820b-a3bca7c625ba\" /\u003e\n\nA full feature list and configuration details live in the in-app help.\n\n---\n\n## Status: this is v1\n\nKeel is a working beta and stable enough for daily use on macOS. Windows support is newer and should be treated as beta until it has more release mileage. Some things you should know before installing:\n\n**What works today**\n- Chat with Claude, OpenAI, OpenRouter, and Ollama\n- Local markdown workspace with auto-capture\n- Dashboard with tasks, reminders, brief, weather, and activity\n- Wiki bases with ingestion, compile, and health checks\n- Tasks and reminders with desktop notifications\n- Meeting recording and local transcription with structured summaries\n- Daily briefs, end-of-day wraps, and \"pick up where you left off\"\n- Scheduled jobs for recurring prompts and workflows\n- Selectable assistant personalities (and custom)\n- Voice input via Whisper or OpenAI\n- Google Calendar, Google Docs, and X integrations\n- Light and dark mode\n- SQLite full-text search; optional LanceDB vector search\n\n**What doesn't work yet**\n- iPhone companion app is in TestFlight, not yet on the App Store. It captures thoughts on the go and forwards them to your Mac via Keel Cloud (an optional, opt-in service; the desktop app works fully without it). No Android app.\n- No multi-Mac sync — your workspace lives on one machine at a time. (Keel Cloud is a phone→Mac capture pipe, not a workspace sync.)\n- No team or sharing features\n- Some integrations (X bookmark sync) require API access you'll need to provision yourself\n\nIf you can live with them, Keel is genuinely useful right now.\n\n---\n\n## Roadmap\n\nKeel's roadmap lives as labeled issues so it's discoverable, commentable, and rankable in one place alongside incoming requests:\n\n**[→ View the full roadmap](https://github.com/Keel-Labs/keel/issues?q=is%3Aissue+is%3Aopen+label%3Aroadmap)**\n\nItems are stack-ranked into four tiers (filter by label):\n\n- **[`tier-1`](https://github.com/Keel-Labs/keel/issues?q=is%3Aissue+is%3Aopen+label%3Atier-1)** - ship next\n- **[`tier-2`](https://github.com/Keel-Labs/keel/issues?q=is%3Aissue+is%3Aopen+label%3Atier-2)** - high value, next few months\n- **[`tier-3`](https://github.com/Keel-Labs/keel/issues?q=is%3Aissue+is%3Aopen+label%3Atier-3)** - bigger commitments after the above\n- **[`tier-4`](https://github.com/Keel-Labs/keel/issues?q=is%3Aissue+is%3Aopen+label%3Atier-4)** - someday\n\nOrder is rough. The product's center is **memory and context**, not a general productivity suite.\n\nWant something that isn't there? **[Open an issue](https://github.com/Keel-Labs/keel/issues/new)** — feature requests and bug reports both go through the same channel, so other users hitting the same thing can find the discussion.\n\n---\n\n## A note on this being a one-person project\n\nKeel is built and maintained by one person. That shapes a few things you should know:\n\n- **Issues and feature requests are read but not always answered.** I'll prioritize bugs that block usage and ignore most feature requests until I have bandwidth. \n- **Pull requests are welcome but not guaranteed to be merged.** Before investing significant time in a PR, please open an issue first to discuss the change. Small fixes (typos, obvious bugs, doc improvements) can go straight to PR.\n- **Response times will vary.** Sometimes a few hours, sometimes a few weeks. If something is genuinely urgent, say so in the issue title.\n\nIf that tradeoff doesn't work, it's MIT licensed and can be forked.\n\n---\n\n## Install from source\n\nIf you want to build Keel yourself instead of downloading a prebuilt installer:\n\n**Prerequisites**\n- Node.js 18+ and npm\n- macOS or Windows\n- ~500MB disk space\n- Optional: [Ollama](https://ollama.com) for local models\n\n**Clone and run**\n```bash\ngit clone https://github.com/Keel-Labs/keel.git\ncd keel\nnpm install\nnpm run dev:electron\n```\n\n**Build a distributable**\n```bash\nnpm run dist:mac          # macOS DMG (requires macOS)\nnpm run dist:win          # Windows x64 NSIS installer + ZIP (requires Windows)\nnpm run build:desktop     # Generic desktop build\n```\n\nSee [`build/`](./build) for packaging configuration and signing entitlements.\n\n---\n\n## Where your data lives\n\nKeel never sends your workspace anywhere unless you explicitly ask it to (e.g., exporting to Google Docs, or sending a message to your chosen LLM provider).\n\n**Settings**\n- macOS: `~/Library/Application Support/Keel/settings.json`\n- Windows: `%APPDATA%/Keel/settings.json`\n- Linux: `$XDG_CONFIG_HOME/keel/settings.json`\n\n**Workspace** — by default at `~/Keel`, structured as plain markdown:\n```\nkeel.md                    # Home page\ntasks.md                   # Global task list\nprojects/{slug}/           # Per-project folders\ndaily-log/                 # Daily briefs and summaries\nknowledge-bases/{slug}/    # Wiki bases\n```\n\n**Indexes** — SQLite at `\u003cworkspace\u003e/.config/keel.db`; optional LanceDB at `\u003cworkspace\u003e/.config/lancedb`.\n\n**Logs** — Electron's default log directory for your OS, rotated at 10 MB. Local-only — no telemetry. To attach context to a bug report, open Settings → Help \u0026 Feedback → **Copy diagnostic info**, then paste into your GitHub issue. The blob is app version, OS, configured providers (names only, no keys), and the last 100 log lines with your home path replaced by `~`.\n\n**Updates** — Keel checks GitHub for new releases on launch and downloads them in the background. You'll see a native notification when an update is ready; the new version installs the next time you quit and reopen Keel. No telemetry — the only thing sent off your machine is a request for the latest release manifest from `github.com`.\n\nYou can move, back up, or version-control any of this yourself.\n\n---\n\n## Contributing\n\nSee [CONTRIBUTING.md](./CONTRIBUTING.md) for code style, branch discipline, and PR process. See [specs/repository-architecture.md](./specs/repository-architecture.md) for the runtime map and repository layout.\n\nPlease read [the note on this being a one-person project](#a-note-on-this-being-a-one-person-project) above before opening a large PR.\n\n---\n\n## Privacy \u0026 legal\n\n- [Privacy Policy](https://keel-labs.org/privacy)\n- [Terms of Service](./TERMS.md)\n- [Code of Conduct](./CODE_OF_CONDUCT.md)\n\n---\n\n## Support\n\n- **Bugs and feature requests:** [Fider board](https://keel.fider.io) or [GitHub issues](https://github.com/Keel-Labs/keel/issues) — preferred, so other users hitting the same thing can find the discussion\n- **General questions:** open a GitHub issue\n- **Security disclosures:** see [SECURITY.md](SECURITY.md). Email is reserved for security reports; everything else should go through Issues so it's discoverable.\n\n---\n\n## Sponsor\n\nIf Keel is useful to you and you want to chip in:\n\n- 💖 [Sponsor on GitHub](https://github.com/sponsors/medha)\n- ☕ [Buy Me a Coffee](https://buymeacoffee.com/medha)\n\nKeel is a one-person project. Every coffee covers a little more time spent shipping.\n\n---\n\n## License\n\n[MIT](./LICENSE).\n\n---\n\nIf you found this helpful, please give it a ⭐ to show your support!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeel-labs%2Fkeel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkeel-labs%2Fkeel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeel-labs%2Fkeel/lists"}