MoonshotAI / MoonshotAI/kimi-code

feat(vis): Organize sessions with project folders, tags, and custom visual markers in Session Visualizer

Open
#1,147 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
7.5k
Forks
1.2k
Avg merge
11h 53m
Merged PRs (30d)
350

Description

Feature Request: Organize Sessions in Session Visualizer with Projects, Tags, and Custom Markers

Motivation

The Session Visualizer (kimi vis) currently displays all sessions in a flat list. As usage grows, users accumulate dozens or hundreds of sessions across different workdirs and tasks. There is no way to:

  • Group sessions that belong to the same logical project but live in different directories
  • Tag sessions for cross-project search (e.g. "bugfix", "refactor", "experiment")
  • Visually flag important sessions for quick access

This makes it difficult to find, navigate, and manage related sessions.

Proposed Features
1. Project Folders
  • Allow users to create named Project folders (e.g. "Website Redesign", "API Migration").
  • Users can drag-and-drop or assign sessions into project folders.
  • A session can belong to one or more projects.
  • The sidebar tree shows: Projects > Project Name > Sessions.
  • Sessions without a project remain in an "Ungrouped" section.
  • Folders can be renamed, merged, or deleted (sessions are not deleted, just unassigned).

Use case: A user works on "Website Redesign" across 3 different workdirs over 2 weeks. They want to see all those sessions together in one place.

2. Session Tags
  • Allow users to assign free-form tags to sessions (e.g. bugfix, refactor, wip, archived, frontend).
  • Tags are searchable and filterable — click a tag to see all sessions with that tag.
  • Multi-tag filter: tag:bugfix AND tag:frontend.
  • Tags support color coding (user picks a color per tag, or defaults are assigned).

Use case: A user wants to find all sessions where they were debugging authentication, regardless of which project those sessions belong to.

3. Custom Visual Markers
  • Allow users to mark sessions with colored stars, flags, or custom icons for quick visual identification.
  • Built-in marker set:
    • Stars: red, yellow, green, blue, purple (priority levels).
    • Flags: red (blocked), yellow (needs review), green (done).
    • Custom icons: bookmark, fire, warning, checkmark, lock.
  • Markers are visible in the session list sidebar and in the session detail header.
  • Filter by marker: "show only red-starred sessions".

Use case: A user marks a session with a red star to indicate it is high-priority, or a red flag to indicate it is blocked and needs to come back later.

Proposed UI
Session Visualizer Sidebar:

Projects
   Website Redesign          (3 sessions)
      [red star]  auth-fix-session     2026-06-24
                  api-refactor         2026-06-23
                  css-cleanup          2026-06-22
   API Migration             (5 sessions)
                  endpoint-design      2026-06-20
      [red flag]  data-migration       2026-06-19  (blocked)
      ...
Ungrouped                   (12 sessions)

Tags
   bugfix (4)  refactor (2)  wip (3)  frontend (5)

Search: [tag:bugfix AND project:"Website Redesign"]
Data Storage
  • Session metadata (project assignment, tags, markers) stored in a local sidecar file, e.g. ~/.kimi-code/session-metadata.json or alongside each session wire file.
  • No changes to the wire protocol — metadata is a visualizer-level concern.
  • Export/import metadata for portability.
Non-Goals
  • This feature is scoped to the Session Visualizer only. It does not change how sessions are stored or how the TUI/web sidebar works (though the concepts could be ported later).
  • No cloud sync — metadata is local-only.
Uniqueness Check

Searched the issue tracker for: "session visualizer", "session organization", "session folders", "session tags", "session grouping", "session bookmarks", "session icons", "session colors". No matching requests found.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the kimi vis entry point and locate the Session Visualizer’s session list, sidebar, and metadata handling. Compare the proposed project, tag, marker, search, and import/export behavior with the existing UI and local session storage design. Done requires an agreed scope and implementation covering the requested organization features without changing the wire protocol or TUI/web sidebar.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
cli, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.