WeChat channel support — connect your WeChat account via QR code scan, then interact with agents directly from WeChat. All session commands (/folder, /agent, /task, etc.) work seamlessly in WeChat conversations. - feature: supports WeChat channel. - feature: add click-to-preview for image attachments in chat. - feature: add commit and push option to git commit window. - fix: skip rendering img element when src is empty in image preview dialog. - fix: disable macOS overscroll bounce, Thanks to @isYangs https://github.com/xintaofei/codeg/pull/54. - optimize: terminal spawn lifecycle to eliminate output race condition. - optimize: WeChat QR code auth flow and channel reliability. - optimize: WeChat channel message handling and error resilience. ----------------------------- # 发布版本 0.6.4 支持微信消息通道 — 通过扫描二维码连接微信账号,即可直接在微信中与代理交互。所有会话指令(/folder、/agent、/task 等)均可在微信对话中无缝使用。 - 功能:支持微信消息通道; - 功能:聊天中的图片附件支持点击预览; - 功能:Git 提交窗口新增提交并推送选项; - 修复:图片预览对话框中 src 为空时跳过渲染 img 元素; - 修复:禁用 macOS 过度滚动回弹效果,感谢 @isYangs https://github.com/xintaofei/codeg/pull/54; - 优化:终端进程生命周期管理,消除输出竞态条件; - 优化:微信二维码认证流程及通道可靠性; - 优化:微信通道消息处理及错误恢复能力。
102 lines
3.3 KiB
TOML
102 lines
3.3 KiB
TOML
[package]
|
|
name = "codeg"
|
|
version = "0.6.4"
|
|
description = "Agent Code Generation App"
|
|
authors = ["feitao"]
|
|
edition = "2021"
|
|
default-run = "codeg"
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[lib]
|
|
# The `_lib` suffix may seem redundant but it is necessary
|
|
# to make the lib name unique and wouldn't conflict with the bin name.
|
|
# This seems to be only an issue on Windows, see https://github.com/rust-lang/cargo/issues/8519
|
|
name = "codeg_lib"
|
|
crate-type = ["staticlib", "cdylib", "rlib"]
|
|
|
|
[features]
|
|
default = ["tauri-runtime"]
|
|
tauri-runtime = [
|
|
"dep:tauri",
|
|
"dep:tauri-plugin-opener",
|
|
"dep:tauri-plugin-dialog",
|
|
"dep:fix-path-env",
|
|
"dep:tauri-build",
|
|
"dep:tauri-plugin-window-state",
|
|
"dep:tauri-plugin-updater",
|
|
"dep:tauri-plugin-process",
|
|
"dep:tauri-plugin-notification",
|
|
"dep:keyring",
|
|
]
|
|
|
|
[[bin]]
|
|
name = "codeg"
|
|
path = "src/main.rs"
|
|
|
|
[[bin]]
|
|
name = "codeg-server"
|
|
path = "src/bin/codeg_server.rs"
|
|
required-features = []
|
|
|
|
[build-dependencies]
|
|
tauri-build = { version = "2", features = [], optional = true }
|
|
|
|
[dependencies]
|
|
tauri = { version = "2", features = [], optional = true }
|
|
tauri-plugin-opener = { version = "2", optional = true }
|
|
tauri-plugin-dialog = { version = "2", optional = true }
|
|
async-trait = "0.1"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
chrono = { version = "0.4", features = ["serde"] }
|
|
thiserror = "2"
|
|
dirs = "6"
|
|
walkdir = "2"
|
|
sacp = "11.0.0-alpha.1"
|
|
sacp-tokio = "11.0.0-alpha.1"
|
|
tokio = { version = "1", features = ["process", "io-util", "sync", "macros", "rt", "net", "rt-multi-thread"] }
|
|
uuid = { version = "1", features = ["v4"] }
|
|
futures = "0.3"
|
|
reqwest = { version = "0.12", features = ["stream", "json"] }
|
|
flate2 = "1"
|
|
bzip2 = "0.5"
|
|
tar = "0.4"
|
|
zip = "2"
|
|
regex = "1"
|
|
portable-pty = "0.8"
|
|
urlencoding = "2"
|
|
fix-path-env = { git = "https://github.com/tauri-apps/fix-path-env-rs", version = "0.0.0", optional = true }
|
|
sea-orm = { version = "1.1", features = ["sqlx-sqlite", "runtime-tokio-rustls", "macros"] }
|
|
sea-orm-migration = { version = "1.1", features = ["sqlx-sqlite", "runtime-tokio-rustls"] }
|
|
toml = "0.8"
|
|
notify = "6"
|
|
base64 = "0.22"
|
|
agent-client-protocol-schema = { version = "0.10", features = ["unstable_session_usage", "unstable_session_fork"] }
|
|
kill_tree = { version = "0.2", features = ["tokio"] }
|
|
which = "7"
|
|
keyring = { version = "3", features = ["apple-native", "windows-native", "sync-secret-service"], optional = true }
|
|
axum = { version = "0.8", features = ["ws"] }
|
|
tower-http = { version = "0.6", features = ["fs", "cors"] }
|
|
tokio-tungstenite = { version = "0.26", features = ["native-tls"] }
|
|
futures-util = "0.3"
|
|
prost = "0.13"
|
|
rand = "0.8"
|
|
qrcode = "0.14"
|
|
image = { version = "0.25", default-features = false, features = ["png"] }
|
|
|
|
[target.'cfg(not(any(target_os = "android", target_os = "ios")))'.dependencies]
|
|
tauri-plugin-window-state = { version = "2", optional = true }
|
|
tauri-plugin-updater = { version = "2", optional = true }
|
|
tauri-plugin-process = { version = "2", optional = true }
|
|
tauri-plugin-notification = { version = "2", optional = true }
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
mac-notification-sys = "0.6"
|
|
|
|
[target.'cfg(target_os = "windows")'.dependencies]
|
|
windows-sys = { version = "0.59", features = ["Win32_Storage_FileSystem"] }
|
|
|
|
[patch.crates-io]
|
|
sacp-tokio = { path = "vendor/sacp-tokio" }
|