Commit Graph
176 Commits
Author SHA1 Message Date
cruldra 6cf053dcd0 🐛 fix(vscode): 调用树弹框路径太长时不再挤乱标题、溢出卡片:文件名在前、目录淡色省略 2026-10-13 10:54:16 +11:00
cruldra 5120e50228 🐛 fix(vscode): 注释里不带路径的引用从被注释的声明起一层层往外找,同类的方法、类的成员都能链到 2026-10-12 16:56:31 +11:00
cruldra b83c445dd0 ✨ feat(vscode): 问 AI 和重写注释各用各的 profile,设置里加重写注释默认模型 2026-10-12 16:30:41 +11:00
cruldra ce5327dcd5 ✨ feat(vscode): 跳定义、点链接、编辑切回预览不改开着的预览对比什么 2026-10-12 16:10:41 +11:00
cruldra 3c7513b7cd ✨ feat(vscode): 只有从「未提交的更改」点开的预览才对比上一次提交 2026-10-12 15:52:35 +11:00
cruldra 880bf7fc57 ✨ feat(vscode): 新增「了解一块代码」:AI 找功能代码占一栏,对话里接着改
主栏标题栏的放大镜问要了解哪一块,占一个栏位建一栏(和收藏共用 30 个栏位,视图改名 slot1..30,按 slotKindN 分收藏 / 功能挂标题栏按钮),同时开对话页让 Claude 只读地在全部工作区文件夹里找,按 --json-schema 交回环节 → 文件 + 符号 + 一句话。
对话复用预览顶部的聊天(CodeQa.askTop:会话续接、进行中的一轮、记录存 workspaceState);结构不合格算这一轮没答成、留着能再画出来。
条目每次画、点时按眼下的代码找:有语言插件的解析成代码块按「类名.方法名」找,没有的问 VS Code 文档符号;找不到画成灰的。
2026-10-12 15:48:54 +11:00
cruldra aecc4d1ab5 ✨ feat(vscode): 重写注释排成一队,整个扩展一次只跑一段
OpenPencil 同一时间只能开一个画板,两段同时画会互相掐断。所有预览、所有文件的重写(第一轮和接着说)排成一队,前一段写成、出错、被叫停后按先后自动开始下一段;问 AI 照旧最多同时 3 个。
排着的那一轮记在扩展端(rewriteCurrent 的 queued),块下面写「排队中」、能取消排队,切标签页、页面重新加载后照样显示。
2026-10-12 15:11:22 +11:00
cruldra b40ddb5e3a ✨ feat(vscode): 代码阅读侧栏拆成多栏:常驻未提交的更改、收藏目录各占一栏 2026-10-12 14:29:48 +11:00
cruldra c9f60f5b30 ✨ feat(vscode): 重写注释留会话记录、能接着说,允许画原型图
每块的重写记录存进 .spx/comment-rewrites.json(和问答分开,改名、删文件跟着走),块下面同问答区:灰字历史、当前这一轮、输入框;输入框里的话接着这块最近一次重写的会话说,交回新正文照样写回,写回失败也记下原因。
重写跑在 claude --restricted 下:只放开读搜、OpenPencil 的 op、建 prototypes 目录、改草稿目录,写注释的插件单独加载;超时 15 分钟。
进行中的、出错被叫停留着的那一轮记在扩展端,切走标签页再切回来照样接上(问 AI 同一套)。
2026-10-12 13:45:37 +11:00
cruldra e66b19b3b4 ✨ feat(vscode): 同名接口靠同一路由对象上的其他接口定挂载前缀 2026-10-12 12:38:54 +11:00
cruldra 29cedcb751 ✨ feat(vscode): FastAPI 接口卡片的调用树带上前端调用它的地方 2026-10-12 12:22:51 +11:00
cruldra 83d1f4a675 🐛 fix(vscode): 调用树按钮一直显示,点开时没数到就当场再查 2026-10-11 22:49:42 +11:00
cruldra 645542eb5c ✨ feat(vscode): 代码阅读的函数和类可以看调用树 2026-10-11 00:37:24 -04:00
cruldra 012daf95b5 🐛 fix(vscode): 修复看板缓存并增加问答默认模型 2026-10-09 17:00:43 -04:00
cruldra 6723c1dcc3 🐛 fix(vscode): 按种类筛选后仍能展开匹配块的完整主体,接口改叫路由 2026-10-08 17:35:07 +08:00
cruldra 3abc87dbef 🐛 fix(vscode): 代码阅读的 Markdown 预览固定同一份 HTML,悬停链接不再闪 2026-10-08 17:35:07 +08:00
cruldra 5cf96af740 ♻️ refactor(vscode): 代码阅读的块数据去掉没人用的「注释」一行下标 commentRow 2026-10-08 08:04:51 +08:00
cruldra ebea984852 💄 style(vscode): 代码阅读的「按注释规范写注释」按钮统一排在卡片右上角那排最前面,不再画在「注释」一行上 2026-10-08 08:03:00 +08:00
cruldra 582ac4c987 ✨ feat(vscode): 代码阅读的注释挂到它讲的代码块上成「注释」一行,重写注释改用技能一句话加结构化结果
- 普通注释不再单独成卡片:同一层挂到后面最近的块(隔空行也算),后面没有挂到前面那块,整层没代码挂到父块;只有文件开头隔着空行的注释、模块 docstring、//!、@file 单独成「文件开头的说明」
- 各语言(Python、TypeScript、Rust、Shell、Dockerfile)建好树后统一调 attachComments;块的编辑范围连着挂上的注释,差异、跳转、钉住卡片都按它
- 宿主统一给每张卡片(语言卡片、翻译插件的属性表、库规则卡片、一行译文的语句卡片)插「注释」一行,排在名称、说明后面
- TypeScript 的 JSDoc 也能当常量、变量的说明;sqlx、React 不再单独处理前面的注释
- 「重写注释」每块都有:提示只发 /ecc:writing-code-comments 路径:起-止,模型只读、按 --json-schema 交 body,没交结构化正文就失败不写;扩展换掉块前面的注释或在块上面新写一段
2026-10-08 07:51:21 +08:00
cruldra fcee4143d4 ✨ feat(vscode): 会话交接改走阿里云 OSS 收件箱、换 xz 压缩,另加从 env 文件配置移交存储的 URI
- 会话包传到 OSS 上收件人的收件箱 spx-handoff/<owner>/<repo>/session/<收件人>/<sid>!<发送人>!<会话名>.tar.xz,对象私有;owner/repo/收件人转小写
- 待接收列表就是列自己的收件箱;同一会话再交给同一人先删旧包;接收后删包,包已被别处收走时提示并刷新
- 打包换成 xz 1 级,和工单移交共用 packHandoff / unpackHandoff,删掉 gzip 版
- 删掉邮箱工单整套(mailboxIssue、MAILBOX_*、isMailboxIssue 及看板 / webhook 里的过滤、附件名编解码)和不再用的 Gitea 附件、标签、建工单接口
- session-handoff/accept 与待接收项改用 OSS 对象 key 标识
- 没配移交存储时发送、接收、刷新都提示去配,刷新回空列表
- 进度提示照工单移交:同一条提示依次显示打包、上传、下载多少 MB、解包、装会话
- 新增 URI configure-handoff-store?envFile=<绝对路径>:读 OSS_ENDPOINT / OSS_BUCKET_NAME / OSS_ACCESS_KEY / OSS_SECRET_KEY 保存,和命令共用 saveHandoffStore;URI 入口按 path 统一分发,未知 path 报错
2026-10-08 07:17:26 +08:00
cruldra 499cfad7d7 ✨ feat(vscode): 工单移交的会话包改走阿里云 OSS、换 xz 压缩,两边进度一步步显示
- 会话包传到 OSS 的 spx-handoff/<owner>/<repo>/issue-<N>-<时间>.tar.xz,上传时对象设成私有;不再挂 Gitea 工单附件
- 新命令「配置移交存储」:endpoint、bucket 存扩展设置,AccessKey 存密钥存储;没配时移交 / 接管直接提示,什么都不改
- 共享 state 字段 handoffAttachmentId 改名 handoffBundleKey(含 spx CLI 与 schema)
- 打包换成 xz 1 级(tar -cJf),去掉 100MB 上限检查和先试压一遍的重复压缩
- 发送方提示打包 / 上传了多少 MB;接管方同一条提示依次显示下载、解包、建 worktree、装会话,完成前不消失
- 会话交接(单会话)仍走 Gitea 附件,Gitea 附件白名单没有 .xz,单独保留 gzip 打包
2026-10-08 07:17:26 +08:00
cruldra a1fbefd3aa 🐛 fix(vscode): 代码阅读的钉住卡片改成每张卡片都算一层,折叠着、没有子块的高卡片滚到一半也钉在顶上 2026-10-08 07:17:26 +08:00
cruldra eb3d1b90cd ✨ feat(vscode): 代码阅读滚进卡片的子块时把外层卡片钉在顶上,同 VS Code 的 Sticky Scroll 2026-10-08 07:17:26 +08:00
cruldra a48b016d73 ✨ feat(vscode): 代码阅读鼠标停在名字和注释链接上弹出定义所在那块的卡片,别的文件的也行 2026-10-08 07:17:26 +08:00
cruldra 300d8a07b9 ✨ feat(vscode): 代码阅读注释里不带路径的引用 [Name] 能点,本文件定义的优先、再找导入的 2026-10-08 07:17:26 +08:00
cruldra 0958506681 ✨ feat(vscode): 代码阅读把说明里的 @param / @return / @throws 拆到参数表、输出、异常表 2026-10-08 07:17:26 +08:00
cruldra c841ae678a ✨ feat(vscode): 代码阅读侧栏跟着当前文件走,目录链接在侧栏树上定位 2026-10-08 07:17:26 +08:00
cruldra 04a11eb0b2 ✨ feat(vscode): Rust 的 #![…] 内部属性做成「编译属性」卡片 2026-10-08 07:17:25 +08:00
cruldra 5e994cd90e ♻️ refactor(vscode): 卡片里的子块只留挂在子行上、点了才展开的一种,测试假数据换掉旧 React 卡片的名字 2026-10-08 07:17:25 +08:00
cruldra 6ce4ef7ee2 ✨ feat(vscode): React 文件照源码一块一张卡片,组件卡片只留名称、说明、构造参数
- 组件体的语句不再并进组件卡片,照源码顺序是它的子块;状态、引用、数据源、派生值、副作用、事件处理函数、渲染输出各成一张卡片,回调和函数里的语句是这些卡片下面的子卡片
- 普通变量、提前返回的 if、注释照语言默认的卡片;表格格子里只写名字和位置,去掉「改它的」「来自」格子里单独打开源码的那条路
- 用词改成书面叫法(更新位置、使用位置、计算表达式、依赖项、触发时机、清理函数、绑定事件、样式取决于……),新增 toggle-right、anchor、download、sigma、layout-template 五个种类图标
- 夹具加上 luffy 的 QueuedBubble.tsx、PlanChecklist.tsx,规格的 React 一节照新样子改写
2026-10-08 07:17:25 +08:00
cruldra 04c4b9f710 ✨ feat(vscode): Rust 的模块、常量和外部函数拆成卡片 2026-10-04 20:16:51 +08:00
cruldra e8ae19d084 ✨ feat(vscode): 构造参数区,改它的和来自能单独打开源码 2026-10-04 15:34:44 +08:00
cruldra 13e71507d6 🐛 fix(vscode): Rust 库规则只经契约和同目录共用代码 2026-10-04 14:42:46 +08:00
cruldra 6d58b681cf ✨ feat(vscode): 代码阅读预览 Rust 的语言卡片 2026-10-04 14:24:55 +08:00
cruldra 4094ffa49e ✨ feat(vscode): 审查列可以手动标记为通过 2026-10-04 10:01:41 +08:00
chehongweo f10e213ae3 💄 style(vscode): 设置里的提示词框按内容自动撑高 2026-10-03 04:28:23 +08:00
cruldra f158b76f77 🐛 fix(vscode): 审查状态改字色,不再改边框 2026-10-03 03:22:20 +08:00
cruldra 29e7c58006 🐛 fix(vscode): 审查状态改用边框颜色,不再撑高卡片 2026-10-03 03:22:20 +08:00
cruldra 177e75910e ✨ feat(vscode): 审查通过写入工单状态并在卡片上区分 2026-10-03 03:22:20 +08:00
cruldra 2c10acf9c4 ✨ feat(vscode): 文件和文件夹在预览顶部问
侧栏「问 AI」打开代码阅读预览。文件夹是没有代码块的一页,源码文件在整页顶部聊,代码块下面的问答不动。历史按工作区文件夹和相对路径记在窗口状态里,不写进按块存的记录。
2026-10-03 03:22:20 +08:00
cruldra fc403d5b20 🐛 fix(vscode): 跳到定义时对准名字并闪 2026-10-03 03:22:20 +08:00
cruldra 9faf9cde9e ✨ feat(vscode): 注释里的仓库图片按比例显示 2026-10-03 03:22:20 +08:00
cruldra a66e4410e7 ✨ feat(vscode): 有说明的函数、类卡片也能重写注释
重写按钮不再只挂在单独的注释卡片上。只替换说明那几行,上下文用这块代码,不当成文件顶上的说明。
2026-10-03 03:22:20 +08:00
cruldra c4113748e1 ✨ feat(vscode): 注释里的仓库路径链接能点开并跳到符号 2026-10-03 03:22:20 +08:00
cruldra 5e8e7b65ee ✨ feat(vscode): 重写注释时在卡片下展示模型过程 2026-10-03 03:22:20 +08:00
cruldra 299acb979f ✨ feat(vscode): 注释卡片可按规范重写注释 2026-10-03 03:22:20 +08:00
cruldra 394cd2fc1c ✨ feat(vscode): 代码阅读卡片横排多个概念图标 2026-10-03 03:11:47 +08:00
cruldra b16cc6409e 🐛 fix(vscode): 代码阅读按 ⌘↓ 跳高亮不再来回闪,筛选栏加上上一处、下一处 2026-10-03 03:11:46 +08:00
cruldra fd8b03a563 ✨ feat(vscode): 代码阅读 React 组件卡片加渲染大纲:原生标签灰色、组件用组件色能跳到定义,className 收成「样式 N 个类」点开看全部类名,cond && 写「当 … 时」、三元分是 / 否两支、.map 写「对 … 的每一项」标 key、提前 return null 写不渲染、片段和 JSX 注释照写;差异测试覆盖加属性、改副作用依赖 2026-10-03 03:11:46 +08:00
cruldra ee807ec7a4 ✨ feat(vscode): 代码阅读 React 组件卡片按钩子分区:状态 / 引用 / 读取的数据 / 派生值 / 副作用 / 事件处理;副作用、处理函数成子卡片放进卡片那一行下面(库规则新增把子块放进属性表某一行的机制,事件处理表点名称展开) 2026-10-03 03:11:46 +08:00