feat: add Gemini CLI session log usage tracking

Parse ~/.gemini/tmp/*/chats/session-*.json for precise per-message
token data (input/output/cached/thoughts). Integrates with existing
background sync and manual sync button alongside Claude and Codex.
This commit is contained in:
Jason
2026-04-06 19:48:06 +08:00
parent 8ad1bb7924
commit f5d7064d57
8 changed files with 525 additions and 3 deletions
+13
View File
@@ -187,6 +187,19 @@ pub fn sync_session_usage(
}
}
// 同步 Gemini 使用数据
match crate::services::session_usage_gemini::sync_gemini_usage(&state.db) {
Ok(gemini_result) => {
result.imported += gemini_result.imported;
result.skipped += gemini_result.skipped;
result.files_scanned += gemini_result.files_scanned;
result.errors.extend(gemini_result.errors);
}
Err(e) => {
result.errors.push(format!("Gemini 同步失败: {e}"));
}
}
Ok(result)
}