Repository navigation
Replies: 1 comment
|
@ccch1mneyyy 想跟进一下 9 月 6 日的这个提案。行中 主要交互是输入 方便时能否看一下,这个交互是否适合进入上游?如果已有相关计划或希望调整方案,也请告知。后续实现会按当前贡献门禁和跟踪流程推进。 |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
现状:内核已经支持,输入框没跟上
dsh-tool-skill 的 pre-step 钩子(
invokedSkillNames)用matchAll扫描用户消息里所有空白边界的/nametoken,逐个注入 skill 正文。所以下面两种写法在内核层早就同时加载多个 skill:缺的是输入侧 UX:第二个及以后的
/name没有补全、没有高亮——用户看不出这个能力存在。(#86 给了首 token 的/菜单,#204 给了/skillspicker,行中手势两边都没覆盖。)提议:行中手势的补全 + 高亮(镜像 #15 的 @mention 架构)
@mention 已经解决了"光标处 token 触发 → 浮层 → Enter 只替换该 token"的全部机制,行中 skill 手势几乎可以 1:1 复用:
skillGestureAtCaret(value, cursor)——从光标回扫到空白边界,token 以/开头即触发。offset 0 除外:首 token 是命令浮层的领地(Enter 是"执行"语义),行中手势是"插入"语义,两者刻意不混。commandList里带skill标记的条源):行中/name只会被内核手势扫描裁决(注册表查找),永远不会当命令派发,把/model列出来会误导。/do→/dot-skill),行内其余文字不动,不发送。行尾补一个空格方便续写,后面已有 token 时不补(避免叠双空格)。matchAll手势正则,命中已知 skill 名的 token 在输入框里以强调色显示(选区/光标反显优先于强调色);未知名字保持 plain——与内核"扫到不存在的名字静默跳过"一致。实现量
PromptInput.js:两个小 helper(skillGestureAtCaret/skillGestureRanges,各 ~15 行)+ 状态与按键分支完全镜像 fileOverlayOpen 的每个出现点 +rowHighlightPieces从两段式(inverse/plain)改三段式(inverse/accent/plain),约 150 行。CommandSuggestions.js:可选titleprop(默认仍是「命令」,行中浮层传「技能」),不破坏现有调用。我在本地(0.10.0-beta.5)已实现并日用,可以直接提 PR。关联:#86(skill slash commands)、#15(@mention 行中补全)、#204(/skills picker)。
All reactions