Files
iAs/Cargo.toml
T
wunianxiao b2fe054eaf feat: 高德地图工具 + 多轮 bug 修复
新增:
- 高德地图 6 个内置工具: amap_poi_search, amap_geocode, amap_reverse_geocode, amap_route_plan, amap_travel_plan, amap_map_link
- CLI 子命令: ias tool amap (poi-search/geocode/route-plan/travel-plan/map-link)
- 工具优先级指南: build_capability_guide() 含 amap > weather > web_search 优先级
- DEFAULT_SYSTEM_PROMPT 内置工具优先级说明(不再依赖环境变量)

Bug 修复:
1. (HIGH) call_capability 参数契约修复 — 新增 unpack_call_params() 统一解包 prompt 字段
2. (MEDIUM) 天气 hours=0 不再调用逐时 API
3. (MEDIUM) 长期记忆 daemon 双写缓存+DB,无 DB 不丢失
4. (HIGH) 审批流程状态语义修复 — handle_reply 返回 ApprovalDecision,拒绝/过期不再当作通过
5. (HIGH) 审批有效期基于 expires_at 时间戳而非 receiver drop
6. (MEDIUM) 摘要保存改为 current_user_id 与读取一致
7. (MEDIUM) worker 审批通过后删除孤立 tool result,仅保留 approved_tool 状态放行

架构:
- daemon + worker IPC 架构 (Unix Domain Socket)
- build_capability_guide 共享函数消除 main.rs/worker.rs 重复
2026-06-03 17:01:04 +08:00

47 lines
1.1 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[package]
name = "iAs"
version = "0.1.0"
edition = "2024"
[dependencies]
# 异步运行时
tokio = { version = "1.0", features = ["full"] }
# HTTP 客户端
reqwest = { version = "0.12", features = ["json", "stream", "gzip"] }
# 序列化
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
# 环境变量
dotenvy = "0.15"
# CLI 参数解析
clap = { version = "4", features = ["derive"] }
# 终端输入
rustyline = "14.0"
# UUID
uuid = { version = "1", features = ["v4", "serde"] }
# 时间
chrono = { version = "0.4", features = ["serde"] }
# 加密
base64 = "0.22"
sha2 = "0.10"
hex = "0.4"
rand = "0.9"
# 日志
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# 二维码终端显示
qrcode = "0.14"
image = "0.25"
# 异步 trait
async-trait = "0.1"
# 流式处理
futures-util = "0.3"
sqlx = { version = "0.8.6", features = ["runtime-tokio-native-tls", "postgres", "uuid", "chrono", "derive", "migrate"] }
tracing-appender = "0.2.5"
dialoguer = "0.12.0"
console = "0.16.3"
dirs = "6.0.0"
# Ed25519 JWT 签名(天气 API
ed25519-dalek = { version = "2", features = ["pem"] }
scraper = "0.27.0"