Bump VERSION to v1.3.3 and npm/package.json to 1.3.3. Stabilizes the
v1.3.3-beta.1 -> v1.3.3-beta.5 line (~235 PRs since v1.3.2) plus 7
post-beta fixes (qoder streaming, weixin typing ticket, daemon
linger_other.go, wps-xiezuo newlines, /switch history loss, minimax TTS
trailer, provider-resume regression tests).
- Add changelogs/v1.3.3.md with themed summary (New Agents, Platform
Capabilities, Core, Behavior Changes, Fixed)
- Prepend v1.3.3 section to CHANGELOG.md with highlights + post-beta
delta + behavior-change checklist
- Refresh "What's New" in README.md and README.zh-CN.md to v1.3.3
- Fix CUJ test flake: bump TestCUJ_H2_TwoPlatformsConcurrentNoBleed
deadline from 5s to 30s so it stays green under `-race -parallel=N`
on constrained CI hosts (passes <2s in isolation)
Co-authored-by: Cursor <cursoragent@cursor.com>
* feat(cli): expose --silent flag for cron add (#858)
PR #875 (4ebcb7a5) exposed --silent on 'cron add' plus added 'silent'
to the bool case in 'cron edit'. PR #915 (7055ecd9) landed the edit-side
fix separately, so only the add side remains. Re-apply the add-side
diff on top of current main and add a help-text regression test.
Changes:
- runCronAdd: parse --silent, set body['silent'] = true.
- printCronAddUsage: document --silent option and example.
- cron_add_test.go: guard that --silent stays documented.
Build: go build -tags no_web ./cmd/cc-connect (success)
Tests: go test ./cmd/cc-connect -count=1 (pass, including new test)
Refs #858, #875
* docs(changelog): note cron add --silent flag
---------
Co-authored-by: dev-claudecode <dev-claudecode@spaceship.local>
* feat(qqbot): add support for inline keyboard buttons and interaction events
- Update default intents to include INTERACTION_CREATE
- Implement SendWithButtons to send messages with inline keyboard buttons
- Encode permission decisions and session key in button_data for routing callbacks
- Handle INTERACTION_CREATE events to process button clicks as permission responses
- Create synthetic message for permission decisions and forward to engine
- Add ackInteraction to acknowledge INTERACTION_CREATE events via API call
- Add extensive tests for sending buttons, handling interactions, and edge cases
* fix(qqbot): ignore ackInteraction error and correct test URL check
- Suppress error from ackInteraction to avoid unused error variable warning
- Update test to expect corrected interaction URL path "/interactions/interact-1" instead of "/v2/interactions/interact-1"
* - Add sessionKey field to replyContext to embed in button_data and session routing
- Refactor SendWithButtons to use sessionKey from replyContext and validate emptiness
- Enhance replyContext construction with sessionKey in various message scenarios
- Implement new tests for sharing session keys in channel, empty session key errors,
and interaction_create event permission routing
- Update config.example.toml to document new required intents for interaction support
- Modify changelog with instructions on enabling INTERACTION_CREATE intent (bit 26) for QQ Bot
- Permission requests now use clickable inline buttons instead of text replies, requiring
enabling the INTERACTION capability in QQ Open Platform settings
* test(qqbot): ignore errors and returned values in test HTTP handlers
- fix(core): reject empty/whitespace content as AskUserQuestion answers (#1086)
Platform delivery receipts arriving within ~500ms were accepted as valid answers,
resolving the tool immediately with empty answers before the user could respond.
- fix(feishu): treat require_mention=false as alias for group_reply_all=true (#1141)
Platform read group_reply_all from opts but users set require_mention=false;
group messages without @mention were silently dropped.
- fix(dingtalk): accept msgtype="picture" as image message (#1128)
DingTalk delivers image messages as either "image" or "picture" depending on client.
"picture" fell through to the text handler (empty content) and was dropped.
- feat(core): add max_turn_time_mins config option for #1091
Absolute wall-clock cap per agent turn that does NOT reset on tool-call events.
Prevents long-running bash commands from permanently locking the session.
Two-phase shutdown: soft stop (10s grace) then force-kill.
Session is preserved; next message resumes via --resume.
Co-authored-by: Cursor <cursoragent@cursor.com>
First stable 1.3 release with 555 commits since v1.2.1. Key features:
web admin UI, lifecycle event hooks, skill management page, global
provider management, cc-connect web CLI, and broad community contributions.
Made-with: Cursor
- Feishu/Lark CLI onboarding with QR terminal display
- Pi agent support
- Session TUI browser
- Multi-workspace mode
- Role-based ACL system
- Bug fixes for rate limiter and session management
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>