修雨
fbfcd69c2b
feat(connect): make /new vs /clear use each channel's real session op
...
Before, /new and /clear were identical: both just dropped the local
conversationId->sessionId mapping. The agent-side session was never
disposed (opencode sessions leaked), and the two commands had no real
difference beyond their ack text.
Align them to each channel's real capability:
- /new (resetSession): drop the local mapping only; the old agent session
is left intact and stays resumable where the agent supports it.
- /clear (new sessionClearer): actively dispose the current session via the
agent's real delete primitive. opencode implements it with
DELETE /session/:id (idempotent on 404). Channels whose agent exposes no
delete in the mode DWS drives it (Codex app-server, Qoder stream, Claude
exec) fall back to resetSession, so /clear behaves like /new there.
Tests pin both directions: /clear issues exactly one DELETE and drops the
mapping; /new (resetSession) issues zero DELETEs so the old session stays
resumable. Doc updated to describe the per-channel behavior.
go build ./... ok; go vet ok; go test ./internal/helpers ok.
2026-06-25 10:43:21 +08:00
quanming
c993086d9d
feat(connect): keep qoder sessions on stream-json
2026-06-24 20:36:26 +08:00
wxianfeng
d89649f9bb
event search first
2026-06-24 17:53:08 +08:00
Aemeath and quanming
f218a05ead
[codex] use opencode server sessions for OpenCode connect
...
Co-authored-by: quanming <quanming@code.alibaba-inc.com >
2026-06-24 17:18:58 +08:00
quanming
fc5e4d0d8d
fix(connect): align codex and qoder sessions
2026-06-24 15:09:50 +08:00
qinze and Claude Opus 4.8
91e67e2e45
docs(dev): event.md 事件码改用 event list 查询
...
去掉"以开放平台文档为准/dev doc search",改成"可订阅事件码通过 event list 查询
(返回 events[] 列出 eventCode/eventName/subscribed)"——event list 本就列出所有可订阅事件,更准。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 09:58:40 +08:00
wxianfeng
029bfdd2ed
version publish approval
2026-06-23 19:44:36 +08:00
wxianfeng
cfad3bbf4a
name
2026-06-23 13:57:21 +08:00
qinze
7cb33e970c
Merge branch 'feat/dws-devapp' of https://github.com/wxianfeng/dingtalk-workspace-cli into feat/dws-devapp
...
# Conflicts:
# skills/multi/dingtalk-dev/references/event.md
2026-06-23 09:19:27 +08:00
qinze and Claude Opus 4.8
567cf163f1
docs(dev): event.md 澄清 connect/event 在 Stream 上的差异 + Stream 建立指向官方文档
...
- 加「connect 与事件订阅的关系」: connect 收机器人消息、event 只是配置订阅,
dws 当前不消费事件; 两者唯一关联是先 connect 让长连在线 subscribe 才成功
- 「Stream 长连怎么建」改为命令视角 + 指向官方 SDK 文档(事件 RegisterAllEventHandler
vs 机器人 RegisterChatBotCallbackRouter 别混), 不固化易过时的 SDK 代码
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-23 09:18:37 +08:00
wxianfeng
d9ae15f9a6
Merge branch 'feat/dws-devapp' of github.com:wxianfeng/dingtalk-workspace-cli into feat/dws-devapp
2026-06-22 20:46:12 +08:00
wxianfeng
922745f318
event search
2026-06-22 20:45:14 +08:00
qinze and Claude Opus 4.8
5d5884a0d7
fix(dev): 校准 dingtalk-dev skill 与真机一致 + 清理重复安装脚本
...
- skill 订正(以真机/schema 为准): app appStatus 字符串/permission 状态字段与
apiPreview/credentials 去掉不存在的 showSecret/webapp 结构化空态/connect 去过时
警告并补 flag/robot 去掉错误的 success 字段; version 用远端结构化审批字段
- 删除重复的 install-dev.sh, 保留 install-devapp.sh 并去掉会误拦用户的 go/make 检查
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-22 18:07:14 +08:00
quanming
f69d9ed281
fix: align devapp member user ids
2026-06-18 19:37:17 +08:00
wxianfeng
f2b2de89f4
fix cr problem
2026-06-18 18:34:12 +08:00
qinze
518b1cb631
Merge remote-tracking branch 'origin/feat/dws-devapp' into feat/dws-devapp
...
# Conflicts:
# skills/multi/dingtalk-dev/references/version.md
2026-06-18 10:48:58 +08:00
玉澜
f29655e7e4
fix(devapp): let server assign app version
2026-06-18 10:32:52 +08:00
qinze and Claude Opus 4.8
cc8a726b0a
docs(dev): dingtalk-dev references 二次精简
...
- permission/robot/version 删 bash 命令示例堆叠(schema/--help 已覆盖),
保留状态机/枚举语义/链路/gotcha
- 去掉所有 reference 的"概念锚点"自造词标签,保留指向概念地图的引语
- SKILL.md 生效模型去"(最重要)";connect 去加粗
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-18 09:09:04 +08:00
qinze and Claude Opus 4.8
70d66daa5f
feat(dev): schema 覆盖 dev doc + dingtalk-dev skill 精简
...
- dws schema 支持 dev.doc.search:fetcher 按 source 取(op-app 钉死 pre/
devdoc 走运行时解析),给 doc search 叶子加 mcp-tool/mcp-source 注解
- dev doc search flag 对齐 MCP 参数名(--keyword/--size 为主,旧名隐藏兼容)
- dingtalk-dev SKILL.md:顶部加 MUST DO(每次先 --help/schema 查),核心规则
瘦身、去重、去加粗/箭头符号
- references 精简:删参数表/flag 列表(schema/--help 已实时提供),只留状态机/
覆盖语义/链路/gotcha;event 补"订阅前需先建联"业务规则;新增 recipes.md
端到端链路;典型任务收成指针
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-17 21:56:11 +08:00
qinze and Claude Opus 4.8
6244222adf
feat(dev): schema 实时拉取 MCP + flag 全面对齐 MCP 参数名
...
- 新增 dws schema dev.* 实时从 op-app tools/list 拉取参数(gws 扁平格式),
description/type/required/default 全部 verbatim 来自服务端,零本地合成
- flag 全部改为 kebab(MCP 参数名),去掉别名,schema 展示与 CLI flag 完全一致,
修掉 schema 显示假参数名的问题
- CLI 同步新 MCP 契约(工具名复数化、参数名 rename)
- dingtalk-dev skill 文档同步新 flag 名
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-17 16:43:19 +08:00
qinze and Claude Opus 4.8
2640338803
docs(dev): dingtalk-dev skill reference (2/2) + dev 功能测试
...
webapp 产品文档;dev 命令集功能测试用例与报告(测试产物 results.jsonl 不入库)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-16 17:11:21 +08:00
qinze and Claude Opus 4.8
dbcbb1de85
docs(dev): dingtalk-dev skill 概念结构 + 产品 reference (1/2)
...
SKILL.md 重构为「概念地图 + 核心规则/通用出参约定 + 典型任务 + 产品索引」;
reference 改为一命令组一文件;不在 agent 文档暴露内部 MCP tool 名。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-16 17:11:09 +08:00