Skip to content

Commit 67d9b8f

Browse files
committed
feat: add Kimi CLI support with project path resolution
1 parent d3f4326 commit 67d9b8f

6 files changed

Lines changed: 415 additions & 28 deletions

File tree

docs/ARCHITECTURE.md

Lines changed: 32 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Overview
44

5-
CodeDash is a zero-dependency Node.js dashboard for AI coding agent sessions. Supports 6 agents: Claude Code, Claude Extension, Codex, Cursor, OpenCode, Kiro. Single process serves a web UI at `localhost:3847`.
5+
CodeDash is a zero-dependency Node.js dashboard for AI coding agent sessions. Supports 7 agents: Claude Code, Claude Extension, Codex, Cursor, OpenCode, Kiro, Kimi. Single process serves a web UI at `localhost:3847`.
66

77
```
88
Browser (localhost:3847) Node.js Server
@@ -21,10 +21,11 @@ Browser (localhost:3847) Node.js Server
2121
| convert/export/ | | +-- changelog.js |
2222
| import/update | +-------------------------------+
2323
+-------------------+ |
24-
reads from 5 locations:
24+
reads from 6 locations:
2525
~/.claude/ ~/.codex/ ~/.cursor/
2626
~/.local/share/opencode/opencode.db
2727
~/Library/Application Support/kiro-cli/data.sqlite3
28+
~/.kimi/sessions/
2829
```
2930

3031
## Project Structure
@@ -197,6 +198,30 @@ FROM conversations_v2 ORDER BY updated_at DESC
197198
}
198199
```
199200

201+
### 7. Kimi CLI
202+
203+
| Item | Location |
204+
|------|----------|
205+
| Session data | `~/.kimi/sessions/<PROJECT_HASH>/<SESSION_ID>/context.jsonl` |
206+
| Metadata | `~/.kimi/sessions/<PROJECT_HASH>/<SESSION_ID>/state.json` |
207+
208+
**PROJECT_HASH**: MD5 hash of the project directory path.
209+
210+
**context.jsonl** — one JSON object per line:
211+
```json
212+
{"role": "user", "content": "fix the bug"}
213+
{"role": "assistant", "content": [{"type": "think", "think": "..."}, {"type": "text", "text": "I'll fix..."}]}
214+
```
215+
216+
**state.json** — session metadata:
217+
```json
218+
{
219+
"custom_title": "Session title",
220+
"archived": false,
221+
"plan_mode": false
222+
}
223+
```
224+
200225
---
201226

202227
## Data Flow
@@ -209,11 +234,12 @@ FROM conversations_v2 ORDER BY updated_at DESC
209234
3. scanOpenCodeSessions() → merge (tool: "opencode")
210235
4. scanCursorSessions() → merge (tool: "cursor")
211236
5. scanKiroSessions() → merge (tool: "kiro")
212-
6. Enrich Claude sessions with detail files:
237+
6. scanKimiSessions() → merge (tool: "kimi")
238+
7. Enrich Claude sessions with detail files:
213239
- Count messages, get file size
214240
- Check entrypoint → change tool to "claude-ext" if not "cli"
215-
7. Scan orphan sessions from ~/.claude/projects/ (Claude Extension)
216-
8. Sort by last_ts DESC, format dates
241+
8. Scan orphan sessions from ~/.claude/projects/ (Claude Extension)
242+
9. Sort by last_ts DESC, format dates
217243
```
218244

219245
### Search Index
@@ -240,7 +266,7 @@ Codex fallback: estimate from file size (~4 bytes per token).
240266

241267
```
242268
1. Read ~/.claude/sessions/*.json → PID-to-session map
243-
2. ps aux | grep "claude|codex|opencode|kiro-cli|cursor-agent"
269+
2. ps aux | grep "claude|codex|opencode|kiro-cli|kimi|cursor-agent"
244270
3. For each process: parse PID, CPU%, memory, state
245271
4. Status: "active" (CPU >= 1%) or "waiting" (sleeping/stopped)
246272
5. Map PID → sessionId via PID files

docs/README_RU.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# CodeDash
22

3-
Дашборд + CLI для сессий AI-агентов. 5 агентов: Claude Code, Codex, Cursor, OpenCode, Kiro.
3+
Дашборд + CLI для сессий AI-агентов. 6 агентов: Claude Code, Codex, Cursor, OpenCode, Kiro, Kimi.
44

55
[English](../README.md) | [Chinese / 中文](README_ZH.md)
66

@@ -19,12 +19,13 @@ npm i -g codedash-app && codedash run
1919
| Cursor | JSONL | LIVE/WAITING | - | Open in Cursor |
2020
| OpenCode | SQLite | LIVE/WAITING | - | Терминал |
2121
| Kiro CLI | SQLite | LIVE/WAITING | - | Терминал |
22+
| Kimi CLI | JSONL | LIVE/WAITING | - | Терминал |
2223

2324
## Возможности
2425

2526
- Grid/List, группировка по проектам, trigram поиск + deep search
2627
- GitHub-стиль SVG heatmap активности со стриками
27-
- LIVE/WAITING бейджи для всех 5 агентов, анимированная рамка
28+
- LIVE/WAITING бейджи для всех 6 агентов, анимированная рамка
2829
- Session Replay с ползунком, hover превью, раскрытие карточек
2930
- Аналитика стоимости из реальных usage данных
3031
- Конвертация сессий Claude <-> Codex, Handoff между агентами

docs/README_ZH.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# CodeDash
22

3-
AI 编程代理会话仪表板 + CLI。支持 5 个代理:Claude Code、Codex、Cursor、OpenCode、Kiro。
3+
AI 编程代理会话仪表板 + CLI。支持 6 个代理:Claude Code、Codex、Cursor、OpenCode、Kiro、Kimi
44

55
[English](../README.md) | [Russian / Русский](README_RU.md)
66

@@ -19,12 +19,13 @@ npm i -g codedash-app && codedash run
1919
| Cursor | JSONL | LIVE/WAITING | - | 在 Cursor 中打开 |
2020
| OpenCode | SQLite | LIVE/WAITING | - | 终端 |
2121
| Kiro CLI | SQLite | LIVE/WAITING | - | 终端 |
22+
| Kimi CLI | JSONL | LIVE/WAITING | - | 终端 |
2223

2324
## 功能
2425

2526
- 网格/列表视图、项目分组、Trigram 搜索 + 深度搜索
2627
- GitHub 风格 SVG 活动热力图
27-
- 所有 5 个代理的 LIVE/WAITING 徽章
28+
- 所有 6 个代理的 LIVE/WAITING 徽章
2829
- 会话回放、成本分析、跨代理转换和交接
2930
- 导出/导入迁移、Dark/Light/System 主题
3031

0 commit comments

Comments
 (0)