Feature request for product/service
Cursor CLI
Describe the request
Feature Goals
- Enable creating detailed plans from individual TODO tasks with automatic status synchronization.
- Support transferring plans and task statuses between chats and external AI assistants (Codex, Cline, Gemini Code Assist, etc.).
User Stories
- As a user, I want to decompose a complex TODO task into a detailed plan and have the original task automatically marked as complete/superseded when subtasks are done.
- As a user, when context window fills up, I want to export my incomplete plan and import it into a new chat or different AI assistant without losing progress.
Requirements
FEAT-1: Plan from Task with Status Sync
- FEAT-1.1: Add “Create Plan from Task” action in TODO context menu.
- FEAT-1.2: New plan receives
derived_from_todo_idandparent_plan_id(if applicable). - FEAT-1.3: Creation wizard offers choice:
- a) “Replace original task” → mark as
superseded by <plan_id> - b) “Link without replacement” → keep both active
- a) “Replace original task” → mark as
- FEAT-1.4: When child plan subtasks complete → automatically update parent task status to
doneorsuperseded. - FEAT-1.5: Display relationship graph in plan card: original task ↔ child plan ↔ subtasks; clickable navigation.
FEAT-2: Cross-Chat and Cross-Tool Portability
- FEAT-2.1: Export plan/statuses to open portable format:
- Primary:
plan.bundle.json(JSON, UTF-8, no BOM) - Alternative:
plan.bundle.yaml(YAML 1.2)
- Primary:
- FEAT-2.2: Bundle contents: plan metadata, TODO list with fields (
todo_id,text,status,tags[],scope,source_path?,links[]), relationships (parent_plan_id,derived_from_todo_id[]), progress, timestamps. - FEAT-2.3: Import from bundle into new chat:
- Restore plan, TODOs, and relationships
- Assign new
session_id(chat) - Preserve original
plan_id/todo_idasorigin_*for traceability
- FEAT-2.4: Matching on import: by
todo_id(if matches) or hash of normalized text; merge statuses by priority (see BUG-2.2). - FEAT-2.5: External compatibility: format is self-contained, documented, no proprietary Cursor extensions required; suitable for Codex/Cline/Gemini/etc.
- FEAT-2.6: Support external plan references: store
external_refs[](URL/URN, tool name, schema version).
UX for Features
- UX-FEAT-1: Task context menu: “Create Plan from Task” with 2-step wizard (link/replacement → confirm decomposition).
- UX-FEAT-2: Original task card displays badge (
supersededorlinked) with link to child plan after decomposition. - UX-FEAT-3: Export/import accessible from plan header and TODO list (bulk export of incomplete tasks).
Acceptance Criteria
- AC-FEAT-1: “Create Plan from Task” creates new plan with correct links; original task status changes per user choice (done/superseded); completing subtasks updates parent status automatically.
- AC-FEAT-2: Export/import bundle preserves all identifiers, statuses, and links; after import in new chat or external tool, plan and TODOs are ready to continue without manual edits.
Non-Functional Requirements (Both Parts)
- NFR-1: Backward compatibility — old plans without new fields read as independent, without history.
- NFR-2: Performance — opening history (50+ plans) ≤ 500 ms; search/filter ≤ 300 ms.
- NFR-3: Storage — retention policy configurable by count/age per session (default: 100 versions/90 days).
- NFR-4: Portability — bundle validates against JSON Schema (documented), no binary data, max 2 MB default.
Risks
- R-1: False hash matches in merge → mitigate with user confirmation and decision log with rollback.
- R-2: History overflow → mitigate with retention policy and “Clear Old Versions” action.
- R-3: Format incompatibility with external assistants → mitigate with public JSON Schema and example converters.
Open Questions
- Session boundaries → chat.
session_idformat: chat name + timestamp.
Operating System (if it applies)
Windows 10/11