feat(feedback): support attaching logs and codebase (#1120)

* feat(feedback): support attaching logs and codebase

Add an attachment picker to /feedback (none / logs / logs + codebase).
Codebase uploads scan the working directory with sensitive files excluded
and are sent through a new multipart upload API on the oauth/node-sdk layers.

* fix(feedback): fall back to logs when codebase scan fails

* tiny fix

* fix(feedback): make diagnostic uploads partial-safe

* refactor(feedback): reuse harness session export and normalize upload url types

* docs(slash-commands): note optional feedback attachments

* refactor(feedback): reorganize feedback upload modules

Move the attachment orchestration out of tui/commands/info.ts into a
dedicated feedback/feedback-attachments.ts, and split the former
codebase-upload/attach.ts into a generic multipart uploader
(feedback/upload.ts) and an archive lifecycle module
(feedback/archive.ts). Both session and codebase archives now flow
through a single upload lifecycle, which also removes the temp-dir
leak that occurred when codebase packaging failed.

Rename FeedbackCodebaseArchive to FeedbackArchive and the
codebase-upload/ directory to codebase/ so module boundaries match
their actual responsibilities (scan + package only).
This commit is contained in:
7Sageer 2026-06-26 16:15:08 +08:00 committed by GitHub
parent 820d77ab4c
commit e736349a7c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
32 changed files with 2422 additions and 42 deletions

View file

@ -105,7 +105,7 @@ Prompt mode exits with code `0` when the goal completes, `3` when it blocks, and
| `/mcp` | — | List MCP servers and their connection status in the current session | Yes |
| `/plugins` | — | Open the interactive plugin manager | Yes |
| `/version` | — | Display the Kimi Code CLI version number | Yes |
| `/feedback` | — | Submit feedback to help improve Kimi Code CLI | Yes |
| `/feedback` | — | Submit feedback with optional diagnostic logs and codebase context | Yes |
## Exit

View file

@ -103,7 +103,7 @@ Prompt 模式在目标完成时以退出码 `0` 退出,在目标阻塞时以 `
| `/mcp` | — | 列出当前会话中的 MCP server 及连接状态 | 是 |
| `/plugins` | — | 打开交互式 plugin 管理器 | 是 |
| `/version` | — | 显示 Kimi Code CLI 版本号 | 是 |
| `/feedback` | — | 提交反馈以改进 Kimi Code CLI | 是 |
| `/feedback` | — | 提交反馈,可附加诊断日志和代码库上下文 | 是 |
## 退出