Commit Graph
78 Commits
Author SHA1 Message Date
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 5f1352df86 🐛 fix(vscode): 重写注释直接调用 /ecc:writing-code-comments,不再自己读技能文件 2026-10-03 03:22:20 +08:00
cruldra 299acb979f ✨ feat(vscode): 注释卡片可按规范重写注释 2026-10-03 03:22:20 +08:00
cruldra ad5796787b 🐛 fix(vscode): Pydantic 规则的类型检查收紧空节点和差异格子 2026-10-03 03:22:20 +08:00
cruldra c70a456ef2 🐛 fix(vscode): Pydantic 规则只经契约拿信息,不再引用规则目录外面的模块 2026-10-03 03:11:47 +08:00
cruldra 597ab94562 ✨ feat(vscode): 代码阅读跨文件继承的 Pydantic 模型等索引查到后再换成数据模型卡片 2026-10-03 03:11:47 +08:00
cruldra 4d8b99db7b ✨ feat(vscode): 代码阅读把 Pydantic 的 BaseModel 子类画成数据模型卡片,字段摊成属性表 2026-10-03 03:11:47 +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 70a53e5a68 ⚡ perf(vscode): React 规则认组件体里的块时不合组件函数写法的直接放过,同一棵语法树的组件体只读一次;规格补上 React 三种卡片的图标 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
cruldra 15f3a6600d ✨ feat(vscode): 代码阅读的 React 组件卡片:原子图标,名称后面跟具名导出 / 默认导出 / 客户端组件 / 记忆化 / 转发 ref 小标签,属性表按属性一行(类型取字段、默认值、必填、说明,来自 XxxProps 可点,导入的类型经工作区索引查),"use client" 和组件上的 JSDoc 不再单独成块 2026-10-03 03:11:46 +08:00
cruldra 3b42be9002 ✨ feat(vscode): 代码阅读认出 React 函数组件,读出属性、状态、引用、读取的数据、派生值、副作用、处理函数和渲染的 JSX 大纲(纯函数,luffy 七个真实组件当测试样本) 2026-10-03 03:11:46 +08:00
cruldra 6120c85bc0 ✨ feat(vscode): 代码阅读差异加「只看改动」(连着没变的块折成一条、按工作区记住)、上一处 / 下一处改动、右边缘总览条 2026-09-30 08:54:23 +08:00
cruldra 2a5806c6b5 ✨ feat(vscode): 代码阅读预览按侧栏筛选算代码差异(未提交的更改对比上一次提交、审查对比 PR 目标分支;兄弟块按名字 / 相似度对齐,卡片内按行 / 值 / 词比对),算好后补发给预览 2026-09-30 08:35:17 +08:00
cruldra 70ea22543f 🐛 fix(vscode): 代码阅读编辑父卡片时显示整块代码(含子块)
- 块的编辑范围改成它在源码里的完整范围:头部连同各子孙块、收尾括号,保存时按整段写回;子卡片只有它自己连同子孙
- 范围由宿主统一算(blockSpans),各语言插件同一条路:else / elif / catch 这类展平的兄弟块按各块开头切开整条语句,最后一块到语句结尾(Shell 的 fi 归它)
- 库规则卡片的编辑范围并进同一套算法,去掉 claimedShape
- 块编辑时它的子孙都不画(代码都在编辑框里),点「编辑」时重叠的祖先、子孙、共用一行的兄弟块退出编辑
- 问 AI 的外层块开头改用新加的 headerEndLine,位置记号照旧按头部算,已有问答不受影响
- 着色改成整份源码算一次、各块按行取,编辑范围变大后排视图数据不变慢
2026-09-30 07:24:10 +08:00
cruldra 87d4360704 ✨ feat(vscode): 「未提交的更改」分暂存区两组、单文件暂存、隐藏测试文件
- 照源代码管理视图分「暂存的更改」「更改」两组(空的不摆,分组行写文件数),部分暂存的文件两组都有
- 「更改」组的文件行上加「暂存」按钮,走 git 扩展的 repository.add
- 标题栏「隐藏测试文件 / 显示测试文件」开关,按工作区记住,藏了几个写在标题后面;测试文件的判断集中在 isTestFile
- 以上只在「未提交的更改」里有:普通文件树、审查模式的行和菜单不变
2026-09-30 06:30:54 +08:00
cruldra 7f460d1257 ✨ feat(vscode): 代码阅读侧栏加「未提交的更改」筛选
- 标题栏新按钮「未提交的更改」:树里只剩工作区各 git 仓库里没提交的文件(暂存、没暂存、未跟踪、合并冲突),每个有改动的仓库一个根,跟着 git 状态自动重摆;上色和徽标交给 VS Code 自带的 git 装饰
- 两种筛选互斥,由 TreeFilters 统一管,上下文键合并成 superpowers.codeReader.filter(review / uncommitted)
- 改动文件树改成多根,buildChangedTree 挪到 explorer/changedTree 并改吃 {path, change}
- 内置 git 扩展 API 的类型和加载抽到 src/git/gitApi、gitExtension,提交按钮的监听也改用它
- 文件注释按文件所在的工作区文件夹记,不看树从哪个根摆下来
2026-09-29 23:42:10 +08:00
cruldra 489d0ef41f ✨ feat(vscode): 选工单也列「进行中」列里已经有 PR 的工单(开发完了没走自动审查的),弹框按「审查」「进行中」分组,进审查、刷新、重开窗口按同一条列规则判断 2026-09-29 04:23:57 +08:00
cruldra d4ec0e7de4 ✨ feat(vscode): 代码阅读支持 Dockerfile:解析指令、每个 FROM 一个阶段(阶段名能跳过去)、RUN 交给 shell 按命令拆、复制、构建参数 / 环境变量、设置、标签、健康检查、启动,连着写的 ENV / ARG / COPY / LABEL 并成一块加一张表;语法包取自 npm 包 tree-sitter-wasm,打包时复制进扩展 2026-09-28 11:54:01 +08:00
cruldra 0665f35821 ✨ feat(vscode): 命令规则加装软件包、装依赖、跑程序(apt-get、apk、pip、npm、pnpm、yarn、corepack、uv、uvicorn)和建用户、密钥、装文件、改属主(useradd、adduser、addgroup、gpg、install、chown);选项写到 4 个以上或写了几遍时排成「选项 | 意思」表;没有自己规则的命令交给管 * 的规则(只问 --version 的读成打印版本);curl -sS 只写不打印进度,source 读成读入里面的变量和函数 2026-09-28 11:53:54 +08:00
cruldra 149cb51cc0 ✨ feat(vscode): shell 被当成一串步骤执行时(Dockerfile 的 RUN)只用 && 连着的一串拆成一条一步;tree-sitter-bash 把 a && b > f 读成整串带重定向,重定向改算在最后那条命令上 2026-09-28 11:53:54 +08:00
cruldra 3353cf870c ✨ feat(vscode): 代码阅读能读嵌在一种语言里的另一种语言的代码:语言插件报出是哪几段,宿主交给那种语言的插件只解析这几段、分步、翻成子块并叠着上色,外层翻译插件只问读出来的样子;契约加构建文件的几种块(解析指令、阶段、执行、复制、设置、标签、健康检查、启动)、分作用范围的变量、并成一块的几条语句,引擎排这些块的属性表 2026-09-28 11:53:47 +08:00
cruldra e96694317d ✨ feat(vscode): 代码阅读支持 Shell 脚本(bash / sh / zsh):解释器、选项每个开关一行、变量展开读成中文、分情况表、函数按位置的参数 / 输出 / 返回、常用命令按命令规则读成一句、重定向、条件、遍历、管道;同一文件里的函数和变量能跳转、高亮 2026-09-28 00:44:53 +08:00
cruldra ff2a44f080 ✨ feat(vscode): 代码阅读契约加命令规则(按命令名注册、读一条命令)、按位置的参数 / 输出 / 返回、解释器和选项块、分情况 / 命令 / 管道种类、常量色;模板引擎加节点读法;没有定义、高亮提供者的语言用语言插件认的同一文件里的名字跳转、高亮 2026-09-28 00:44:46 +08:00
cruldra 285d711740 ✨ feat(vscode): 代码阅读的调用嵌套:实参的值又是跨多行的调用时在值那一格里写它的一行、套它的实参表,一层层往下套;埋在式子里后面还跟着东西的调用括起来 2026-09-27 22:31:35 +08:00
cruldra ecc415d763 ✨ feat(vscode): 代码阅读的调用与构造:跨多行写的调用排成「新建 / 调用 名字 · N 个参数」一行,实参摊成参数 / 值表;Python 查被调用名字的定义分新建和调用,查到后刷新 2026-09-27 22:08:16 +08:00
cruldra 71641bdc41 ✨ feat(vscode): 代码阅读的 FastAPI 路由器单独一张「路由器」卡片(前缀、标签、依赖、默认响应,接口表列挂在它上面的接口,函数名 ⌘ + 点击跳到接口卡片);接口卡片写所属路由器 2026-09-27 21:26:36 +08:00
cruldra b4e4879570 ✨ feat(vscode): 代码阅读的 FastAPI 接口多一个筛选属性「请求方法」(GET / POST …);库规则自己报的筛选属性由规则起名(LibraryRule.attributeNames) 2026-09-27 21:21:48 +08:00
cruldra 15790ce7c8 ✨ feat(vscode): 代码阅读的词可以讲源码里别处的名字(Segment.refers):FastAPI 路径里的 {user_id} 讲函数的参数,单击参数时跟着高亮,⌘ + 点击跳到参数 2026-09-27 21:18:19 +08:00
cruldra b186b007a4 ♻️ refactor(vscode): 代码阅读的种类图标改成插件自己定义的一组(契约里的封闭名字集合),webview 只带这些图标,不再打包 lucide 全套 2026-09-27 20:23:44 +08:00
cruldra 0798f7d1c7 ✨ feat(vscode): 代码阅读加 FastAPI 接口卡片:请求表(URL、方法、路径 / 查询参数、请求头、Cookie、请求体)、按状态码的响应表(成功、responses、函数里抛的异常、自动带的 422);别的文件里的异常状态码、类型别名经工作区索引和语言扩展查 2026-09-27 20:19:24 +08:00
cruldra 1dfc0c7b1e ✨ feat(vscode): 代码阅读的块种类只画图标(lucide,种类色),种类名放进鼠标停上去的提示和读屏文字;库规则给自己的图标 2026-09-27 20:02:32 +08:00
cruldra b3a829e658 🐛 fix(vscode): 选工单不再重新加载整个看板,直接列看板上摆着的「审查」列工单,文件数一项项补上,每一步记进日志 2026-09-27 17:45:48 +08:00
cruldra 8e2cdfaf17 ✨ feat(vscode): 代码阅读侧栏可以按审查工单只看 PR 改过的文件:标题栏「选工单」列出看板「审查」列,选中后树里只剩改过的文件(M / A / D 着色),点开的是本机工作副本里 PR 最新的代码,没有就拉 PR 分支建一个,「显示全部」退出 2026-09-27 17:36:02 +08:00
cruldra 0afd012c94 ✨ feat(vscode): 代码阅读加异常卡片,Python、TypeScript 的异常类画成同一张表(属性、构造参数),方法照常是子块 2026-09-27 10:42:10 +08:00
cruldra 44c221ea2b ✨ feat(vscode): 代码阅读认出代码里起的中文名(Annotated[…, Comment("…")]、@Comment 装饰器、行尾 # @Comment、docstring / JSDoc 的参数说明),预览里定义和用到它的各处都写中文名,悬停看原名,定义处后面淡淡写原名 2026-09-27 00:56:39 +08:00
cruldra 1b1299dc1f ♻️ refactor(vscode): 代码阅读不再在页面里拦 ⌘↓ / ⌘↑,快捷键只在「键盘快捷方式」里绑;跳到下一处时把浏览器自己的滚动拉回来,页面不再先滚到底 2026-09-27 00:33:18 +08:00
cruldra 49f253b80f ✨ feat(vscode): 代码阅读的名字高亮更显眼(当前那处描框、别处画细线),⌘↓ / ⌘↑ 在各处之间跳,跳到折叠处自动展开,筛选栏写第几处 2026-09-26 23:47:43 +08:00
cruldra c5c5d2b517 ✨ feat(vscode): 代码阅读认出 Python 数据类(@dataclass),整块换成「数据类」卡片,选项和字段的默认值、field 参数写成大白话 2026-09-26 23:31:06 +08:00
cruldra 36d842e18e ✨ feat(vscode): 问 AI 输入框能粘贴、拖进图片随问题发给 Claude Code,缩略图能点开看大图,图片存进 .spx/code-qa 跟着问答删 2026-09-26 23:15:02 +08:00
cruldra 9efae1f496 ✨ feat(vscode): 问 AI 输入框旁边能选 Claude profile,记住上次选的,问答灰字写用哪个 profile 答的 2026-09-26 22:28:29 +08:00
cruldra f0a3ad80e1 ✨ feat(vscode): 问 AI 收起再展开、重启后接着这块最近的会话问;代码改了对不上的问答不再显示 2026-09-26 21:25:22 +08:00
cruldra fb53bb727c ✨ feat(vscode): 代码阅读加「问 AI」,块下面问 Claude Code,问答存进 .spx 挂在块下 2026-09-26 21:12:47 +08:00
cruldra badc722640 ♻️ refactor(vscode): 文件注释的存法抽成按路径记的通用表,给问答共用 2026-09-26 21:12:34 +08:00
cruldra c84e21ff57 ✨ feat(vscode): 代码阅读侧栏行加复制菜单,块按钮只留图标,筛选菜单加全选 / 取消全选 2026-09-26 20:39:21 +08:00
cruldra 113b02657c 🐛 fix(vscode): 代码阅读工作区索引跳过嵌套的 checkout 和忽略文件忽略的,任务名不再查到两处 2026-09-26 20:14:30 +08:00