Roadmap
Evergreen tracking issue for notepad-cleanup development priorities. Updated as work lands; never closed.
Current focus: v0.3.0 — generalizing from "a Notepad tool" to "an editor-agnostic extraction pipeline", starting with Sublime Text.
Phase 1: Foundation — shipped
Phase 2: Editor-agnostic sources — v0.3.0, in progress
The pipeline downstream of extraction (dedup, compare, organize, links) binds to manifest.json and the output directory, never to an editor. Only ~7% of the codebase is Notepad-specific, so sources become pluggable.
Phase 3: Backends — v0.3.0
Extends the existing --backend option beyond claude / prompt-only. Sensitive content routes to a self-hosted model so credentials never leave the network.
Phase 4: Semantic triage — v0.3.x
Phase 5: Session drain — v0.3.x
Phase 6: Extraction improvements
Phase 7: Reach
Related
Design documents live in the maintainers' private notes and are referenced by filename in commit messages under a Design: section.
Roadmap
Evergreen tracking issue for notepad-cleanup development priorities. Updated as work lands; never closed.
Current focus: v0.3.0 — generalizing from "a Notepad tool" to "an editor-agnostic extraction pipeline", starting with Sublime Text.
Phase 1: Foundation — shipped
WM_GETTEXT, UIA tab switching for unloaded tabs)organize)links separate/links join...notation, MRU, search dirscomparemissingnc-*session folders (compare misses nc-* format session folders (pattern/format mismatch) #14)organizesilently overwriting files with duplicate names (v0.2.5)Phase 2: Editor-agnostic sources — v0.3.0, in progress
The pipeline downstream of extraction (dedup, compare, organize, links) binds to
manifest.jsonand the output directory, never to an editor. Only ~7% of the codebase is Notepad-specific, so sources become pluggable.sources/base.py—Source/Container/Tabcontracts, capability flagssources/notepad.py— adapter over existing discovery/extractorsources/sublime.py— session-file parser with buffer taxonomysources/__init__.py— lazy mode registrycompare_to_origin()— source-agnostic buffer-vs-file comparisonsaver.py— generalizehwndtocontainer_id; addsourceto manifest--mode {notepad,sublime}dispatch incli.pydefault_modein the config systemPhase 3: Backends — v0.3.0
Extends the existing
--backendoption beyondclaude/prompt-only. Sensitive content routes to a self-hosted model so credentials never leave the network.backends/base.py—Backend.plan()contract,data_stays_on_premflag (Support additional AI CLI backends (OpenAI Codex CLI, Gemini CLI, etc.) #6)backends/claude_cli.py— move existing invocation behind the contractbackends/openai_compat.py— LM Studio / Ollama (one adapter, base-URL difference)backends testpreflight that measures throughput, not just reachability--backend autosends flagged content on-prem, clean content to cloudPhase 4: Semantic triage — v0.3.x
Phase 5: Session drain — v0.3.x
drain --dry-run— report only, no write pathPhase 6: Extraction improvements
TabItem.Namefor better tab metadata (Capture UIA TabItem.Name for better tab metadata #3)Phase 7: Reach
Related
Design documents live in the maintainers' private notes and are referenced by filename in commit messages under a
Design:section.