Karakeep — Roadmap
Derived from karakeep-app/karakeep issues + pull requests as
shabda intake (external word, not verified fact). Each cited item
carries its verified author (resolved from the GitHub API, never
inferred) and an author/engagement weight. Inferred dependencies are flagged as
hypothesis, not maintainer decisions.
What to do next
- Cut the committed 0.33.0 release first.
The only committed milestone —
15 open issues, all weighted high
(milestone membership outranks reactions). Start with the four
maintainer-authored items (#2660,
#2667,
#2669 — MohamedBassem;
#2694 — esimkowitz),
then clear the remaining 11.
- Land the AI-native layer (#207): two
maintainer foundations already merged (embeddings PR #2857, assistant prep PR #2861);
finish the open AI PRs so the headline feature set ships.
- Keep self-hosting bounded (#208): the
memory/CPU leak risks (#1748, #2344, #2519) are the highest-confidence reliability
work; pair with the Postgres (PR#2825) and Docker-trim (PR#2625) PRs.
- Run mobile/reader (#210) in parallel; defer
Sharing & collaboration (#209) — it is
blocked behind #208.
Committed milestone tier — 0.33.0 committed
🜂 0.33.0 release · #198
adhimoksha (committed)
modes: pratyakshita · anagata · adhimoksha · GitHub milestone #7, opened 2026-04-20 · 15 open / 2 closed
Telos: Karakeep ships its committed
0.33.0 release — every one of the 15 open milestone issues
(10 approved features + 5 approved bugfixes) resolved or consciously bumped, so the
next version closes as planned rather than slipping issue-by-issue. Destination: the
0.33.0 milestone is empty of open issues.
Milestone membership outranks reaction
count — these are committed work regardless of engagement. The full milestone is
listed below; the release is not complete until every row is resolved
or consciously bumped. The ★ Gate column flags a top-priority
subset (maintainer-authored + highest-signal bugfixes) you may sequence first — it does
not mean the rest are optional.
| Ref | Title | Verified author | Assoc. | Weight | Kind | Gate |
| #2660 | feat: Agentic interaction improvements for search and content extraction | MohamedBassem | COLLABORATOR | high | feature | ★ |
| #2667 | feat: allow previewing rule engine rules | MohamedBassem | COLLABORATOR | high | feature | ★ |
| #2669 | bug: removing accounts with large number of bookmarks can lock the database for a long period of time (aka background reaping support) | MohamedBassem | COLLABORATOR | high | bug | ★ |
| #2694 | feat: Introduce bookmark "trash" and undo deletion button | esimkowitz | COLLABORATOR | high | feature | ★ |
| #2817 | Screenshot previewer does not show scroll bar | Summon528 | CONTRIBUTOR | high | bug | ★ |
| #441 | [Feature request] Selfhosted semantic search | JojiiOfficial | NONE | high | feature | |
| #863 | Chat about your bookmarks | sherry-ummen-zalando | NONE | high | feature | |
| #1592 | Share single bookmark to anyone | Draky50110 | NONE | high | feature | |
| #2172 | Uncertain origin of alpine chrome image | MemQu | NONE | high | bug | |
| #2502 | Saving a page that was previously saved fails | Garrett-R | NONE | high | feature | |
| #2591 | [FR] Basic article TTS | zblesk | NONE | high | feature | |
| #2594 | Links from collaborators are not visible in public lists | karabays | NONE | high | bug | |
| #2752 | RSS downstream should return full content | wesamjabali | NONE | high | feature | |
| #2798 | [bug][ux] Autosaving tags can autoclose the edit window when in the removed tag's feed | NotaInutilis | NONE | high | bug | |
| #2882 | Add title and favourites button to browser extension | shannonr | NONE | high | feature | |
Completeness guard: 15 of 15 open milestone issues
are listed above. The 5 ★ rows are a sequencing hint, not a claim that the subset
completes the milestone — the remaining 10 are still required for the release to cut.
Second milestone — Backlog (not committed):
GitHub milestone #5 ("Things that the project maintainers will want to work on at some
point"), 12 open / 7 closed. Not scheduled work; its highest-signal
items feed the thematic directions below, not the committed release.
Release dependency order (anantara)
The committed 0.33.0 release is
committed and is not itself blocked
by an anantara predecessor. Its issues are distributed across the thematic
directions below (each direction names which 0.33.0 issue it carries). The
single anantara edge in the map is between two thematic directions:
🜂 #208 Self-hosting robustness
──▶ unblocks ──▶
🜂 #209 Sharing & collaboration blocked
hypothesis
Thematic directions (in anantara dependency order)
1 · 🜂 AI-native bookmark intelligence · #207
ready
modes: anumita · vartamana · chanda · nothing blocks it
Telos: Karakeep becomes an AI-native bookmark
assistant — semantic search, chat over saved content, and agentic interaction become
first-class, built on the merged embedding + assistant foundations.
Carries from 0.33.0: #2660 (agentic, MohamedBassem,
COLLABORATOR), #2667 (rule preview, MohamedBassem, COLLABORATOR), #863 (chat,
sherry-ummen-zalando, NONE), #441 (semantic search, JojiiOfficial, NONE) — all high.
| Ref | What | Verified author | Assoc. | Weight |
| PR#2861 | AI assistant component prep (merged foundation) | MohamedBassem | COLLABORATOR | high |
| PR#2857 | Bookmark embedding support (merged foundation) | (PR) | — | high |
| PR#2820 | Agentic search content + bookmark slicing (carries #2660) | vbalko-claimate | CONTRIBUTOR | high |
| PR#2890 | Native Anthropic (Claude) inference provider | (PR) | — | medium |
| PR#2785 | Configurable LLM temperature (default 0) | (PR) | — | medium |
| PR#2684 | Automated tagging prompt/model evals | (PR) | — | medium |
| #2189 | Enhanced prompt customization for AI tagging (path) | (issue) | — | medium |
| #2716 | Retry-AI-tagging button (path) | (issue) | — | medium |
Unblocks: the headline feature set of the 0.33.0 release.
2 · 🜂 Self-hosting robustness and resource health · #208
ready
modes: anumita · vartamana · chanda · nothing blocks it · gates #209 (hypothesis)
Telos: Karakeep becomes dependable to self-host at
scale — crawls, imports, and containers stop leaking memory/CPU or corrupting data, and
the data layer (optional Postgres, preflight health checks, supply-chain clarity) holds
up for large deployments.
Carries from 0.33.0: #2669 (account-removal DB lock,
MohamedBassem, COLLABORATOR, high) · #2172 (alpine-chrome image, MemQu, NONE, high).
| Ref | What | Kind | Weight |
| #1748 | High worker memory on large imports | risk | high |
| #2344 | Memory leak in 0.30 with Pangolin | risk | high |
| #2519 | Orphaned assets left when parser OOMs | risk | high |
| #2369 | Chromium high idle CPU after large imports | risk | high |
| #2397 | Higher docker CPU usage since 0.29.3 | risk | medium |
| #1667 | Image-download failure fails entire crawl | risk | medium |
| #1977 | Full-page archives broken after CSP blocklist | risk | medium |
| #2304 | SingleFile support broken in 0.90.2/0.90.3 | risk | medium |
| #2404 | Cannot bind listen address to all interfaces | risk | medium |
| #2885 | Reddit crawling now blocked | risk | medium |
| PR#2825 | Postgres support (carrier in flight) | deed | high |
| PR#2625 | Split docker builders, trim worker image | deed | medium |
| #1782 | External database support (Postgres) — path | path | high |
| #1611 | Preflight health checks before background jobs — path | path | medium |
Unblocks: #209 Sharing and collaboration (hypothesis — see dependency note below).
3 · 🜂 Mobile and reader experience · #210
ready
modes: anumita · vartamana · chanda · nothing blocks it
Telos: Karakeep becomes pleasant on phone and in the
reader — offline mobile access, swipe actions, auto-hiding reader chrome,
text-alignment and math in the reader, and inline media make daily reading-on-the-go
smooth rather than desktop-first.
Carries from 0.33.0: #2502 (re-save previously saved
page, Garrett-R, NONE, high) · #2817 (screenshot scrollbar, Summon528, CONTRIBUTOR, high).
| Ref | What | Weight |
| PR#2895 | Inline video playback on bookmark cards | medium |
| PR#2843 | Android home-screen search-results widget | medium |
| PR#2855 | Text alignment option in reader settings | medium |
| PR#2733 | Auto-hiding reader chrome on mobile | medium |
| PR#2783 | Render Distill math in reader view | medium |
| #2401 | Offline mode for the mobile app — path | medium |
| #2781 | Swipe actions on mobile apps — path | medium |
Unblocks: nothing downstream; a parallel clean-up direction.
4 · 🜂 Sharing and collaboration · #209
blocked
modes: anumita · vartamana · chanda · blocked: after #208 hypothesis (kalpita)
Telos: Karakeep becomes genuinely shareable — public
single-bookmark links, searchable collaborative lists, pretty public-list/RSS URLs, and
full-content downstream RSS make shared and collaborative collections first-class
instead of private-only.
Carries from 0.33.0: #2594 (collaborator links missing,
karabays, NONE, high) · #2752 (full-content downstream RSS, wesamjabali, NONE, high) ·
#1592 (share single bookmark, Draky50110, NONE, high).
| Ref | What | Weight |
| #1800 | Pretty URLs for public lists and RSS — path | medium |
| #2247 | Searchable collaborative lists — path | medium |
Dependency (anantara): after #208
Self-hosting robustness and resource health — HYPOTHESIS
(kalpita), not a maintainer-stated ordering. Inferred because
searchable collaborative lists + collaborator visibility lean on the data-layer
robustness (Postgres / health checks) landing first. Validate before treating as a hard gate.
Provenance & honesty notes
- Shabda intake. Every issue/PR was landed as external word
(
kalpita), not verified fact. Treat directions as hypotheses until the
maintainer confirms.
- Authors verified, never inferred.
authorAssociation
resolved from the GitHub API per item. MohamedBassem is the repo owner; his issues
resolve as COLLABORATOR on the API and are weighted high. Community
contributions are attributed to their real authors, never to the maintainer.
- One inferred dependency, marked. The only
anantara
edge (#209 after #208) is an architectural inference (kalpita), hedged
above — not an established maintainer decision.
- Completeness guard. The committed
0.33.0 tier lists
all 15 open milestone issues; the 5 ★ rows are a sequencing hint,
not a claim that the subset completes the milestone.