Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 60 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# 在 PR / master 推送时做依赖安装、前端与 Rust 侧编译检查,避免明显破坏合并进主分支。
name: CI

on:
push:
branches: [master]
pull_request:
branches: [master]

concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: latest

- name: Install dependencies
run: bun install --frozen-lockfile

# 保证 CHANGELOG 与关于页数据源一致(脚本见 scripts/sync-changelog.mjs)
- name: Verify changelog sync
run: |
bun run sync:changelog
git diff --exit-code apps/desktop/src/data/app-changelog.md

- name: Build sidecar
run: cd packages/sidecar && bun run build

- name: Build desktop frontend
run: cd apps/desktop && bun run build

# Tauri 在 Linux 上链接需系统库,否则 cargo check 会失败
- name: Install Linux build dependencies (Tauri)
run: |
sudo apt-get update
sudo apt-get install -y \
libwebkit2gtk-4.1-dev \
build-essential \
curl \
libssl-dev \
libgtk-3-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
patchelf

- name: Setup Rust
uses: dtolnay/rust-toolchain@stable

- name: Cargo check (desktop)
run: cd apps/desktop/src-tauri && cargo check --all-targets
23 changes: 23 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# 推送形如 v0.1.2 的 tag 时自动创建 GitHub Release(含自动生成的提交说明)。
# 若后续需要上传各平台安装包,可在此 job 中追加 matrix 与 tauri build。
name: Release

on:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'

permissions:
contents: write

jobs:
github-release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
67 changes: 47 additions & 20 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,65 @@
# 寻迹(XunJi)更新日志

> 面向使用者的更新说明。实现细节见 `docs/CHANGELOG.md`。

## 0.1.2(2026-03-22 – 2026-03-23)

### 新增

- **CodeBuddy**:支持从 CodeBuddy 导入对话记录,与本机扩展数据位置一致(Mac / Linux 常见路径见设置说明)。需在 **设置 → 数据源** 中打开「CodeBuddy」;默认关闭,避免未安装时白白扫盘。
- **配置迁移**:若你用过旧版配置,应用启动时会**自动补全** CodeBuddy 相关选项,并把过时的扫描路径迁到当前扩展目录。

### 体验改进

- **CodeBuddy 对话更好认**:导入后,列表和详情会尽量显示与 CodeBuddy 里**相同的会话标题**,不必先「分析」也能分辨是哪一场对话。
- **项目分组更直观**:按你当时在本机打开的项目文件夹来归类;若文件夹名字是一长串数字或看不懂的编码,会尽量用**上一层文件夹的名字**显示,减少整屏「乱码」分组。
- **对话回放更清晰**:回看 CodeBuddy 对话时,AI **调用工具**、**思考过程**的展示更整齐,阅读起来更自然。

### 修正与调整

- **CodeBuddy**:存储位置已按**实际产品**对齐;此前若按旧路径采集会对不上,现已修正。
- **老版本 CodeBuddy 存的对话**也能正确识别项目与标题,减少「只能看到内部编号」的情况。
- **修复**部分会话在侧边栏只显示一长串内部 ID、**看不到真实项目名**的问题(与 CodeBuddy 保存消息的方式差异有关)。

### 其他

- 未做「提炼笔记」的会话,列表上会优先显示上面采集到的**会话标题**;详情页标题也会用上;工具名称在回放里显示更稳定。

---

## 0.1.1(2026-03-22)

### 新增与优化
### 新增

- **会话整理**:在对话记录侧栏可进入「会话整理」,在目录树中多选数据源、主机或项目后,一次性清理所选范围内的会话记录;清理的是应用内数据,**不会删除**本机上的原始对话文件;若一次选了多个范围,同一对话只会被删一次
- **关于**:在设置中可查看应用版本、运行环境与本次更新说明
- **导出**:笔记可导出为 Markdown,支持单条、多选或整库导出;整库导出不受当前列表筛选影响
- **会话与笔记**:列表与详情可查看会话路径与会话标识;列表标题优先展示首条用户消息摘要
- **分析**:分析失败时可看到原因;分析队列中可查看任务详情
- **阅读**:笔记正文 Markdown 显示效果优化
- **体验**:搜索与同步等相关提示与文案优化
- **会话整理**:在对话记录侧栏可进入「会话整理」,在目录树里多选数据源、本机或项目后,一次性清理**应用里**的记录;**不会删除**你电脑上的原始对话文件;多选时同一条对话只删一次。
- **关于**:在设置中可查看版本、运行环境和更新说明。
- **导出**:笔记可导出为 Markdown,支持单条、多选或整库;整库导出不受当前列表筛选影响。
- **会话与笔记**:列表与详情可查看来源路径和会话标识;列表标题优先用首条用户消息的摘要。
- **分析**:失败时会提示原因;可在分析队列里查看任务详情。
- **阅读**:笔记正文在界面上的阅读体验优化。
- **体验**:搜索、同步等提示与文案优化。

### 修复与调整
### 修正与调整

- 侧栏点选「未关联项目」时,列表能正确显示该分组下的会话
- 批量删除会话仅通过「会话整理」勾选分组后进行,避免误操作
- **侧栏**:选择「未关联项目」时,列表能正确显示该分组下的会话。
- **删除方式**:批量删除会话需通过「会话整理」勾选分组后进行,降低误删风险。

---

## 0.1.0

**发布说明**:首个正式版本,可在本机完成从采集对话、整理列表、提炼笔记到知识库浏览与搜索的完整流程。
**说明**:首个正式版本,可在本机完成从**采集对话 → 整理列表 → 提炼笔记 → 知识库浏览与搜索**的完整流程。

### 新增

- **应用**:桌面端应用,支持浅色与深色外观
- **采集**:支持从 Claude Code、Cursor 等来源导入对话到本地
- **整理**:对话列表、会话详情(含笔记与对话回放)、按数据源分组的侧栏目录
- **提炼**:对会话做价值判断并生成结构化笔记,接入本地模型或命令行工具
- **知识库**:笔记列表、全文搜索、标签与类型筛选
- **其他**:同步与设置、分析任务队列
- **应用**:桌面端,支持浅色与深色外观。
- **采集**:支持从 Claude Code、Cursor 等来源导入对话。
- **整理**:对话列表、会话详情(含笔记与对话回放)、按数据源分组的侧栏。
- **提炼**:对会话做价值判断并生成结构化笔记,可接入本机模型或命令行工具。
- **知识库**:笔记列表、全文搜索、标签与类型筛选。
- **其他**:同步与设置、分析任务队列。

### 已知限制

- 部分导出入口仍为占位或能力受限;个别数据源仅可配置名称与图标,尚不能采集
- 同步需手动触发;与其他工具的深度联动仍在完善中
- 部分导出能力仍在完善;个别数据源暂时只能改名称或图标,尚不能采集。
- 同步需手动触发;与其他工具的深度联动仍在加强中。
2 changes: 1 addition & 1 deletion apps/desktop/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@xunji/desktop",
"private": true,
"version": "0.1.1",
"version": "0.1.2",
"type": "module",
"scripts": {
"dev": "vite",
Expand Down
2 changes: 1 addition & 1 deletion apps/desktop/src-tauri/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "xunji-desktop"
version = "0.1.1"
version = "0.1.2"
description = "寻迹 - AI 编程知识管理平台"
authors = ["XunJi"]
edition = "2021"
Expand Down
1 change: 1 addition & 0 deletions apps/desktop/src-tauri/src/collector/claude_code.rs
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ impl ClaudeCodeCollector {
session_id,
project_path: final_project_path,
project_name: final_project_name,
analysis_title: None,
messages: parse_result.messages,
raw_path: file_path.to_string_lossy().to_string(),
created_at,
Expand Down
Loading
Loading