feat: add React UI and AI page sharing tools

Move HTTP page rendering to the React app, fix multi-tool-call message handling, add API docs lookup, web page lookup, and Markdown preview page sharing.
This commit is contained in:
2026-07-07 22:27:14 +08:00
parent 3d77733e11
commit 640ba9e7d2
65 changed files with 8020 additions and 1732 deletions
Generated
+38 -7
View File
@@ -929,6 +929,12 @@ dependencies = [
"pin-project-lite",
]
[[package]]
name = "http-range-header"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9171a2ea8a68358193d15dd5d70c1c10a2afc3e7e4c5bc92bc9f025cebd7359c"
[[package]]
name = "httparse"
version = "1.10.1"
@@ -1036,7 +1042,7 @@ dependencies = [
[[package]]
name = "ias-ai"
version = "0.1.2"
version = "0.1.5"
dependencies = [
"anyhow",
"chrono",
@@ -1054,7 +1060,7 @@ dependencies = [
[[package]]
name = "ias-common"
version = "0.1.0"
version = "0.1.1"
dependencies = [
"anyhow",
"reqwest",
@@ -1066,7 +1072,7 @@ dependencies = [
[[package]]
name = "ias-context"
version = "0.1.1"
version = "0.1.2"
dependencies = [
"anyhow",
"axum",
@@ -1080,7 +1086,7 @@ dependencies = [
[[package]]
name = "ias-http"
version = "0.1.4"
version = "0.1.9"
dependencies = [
"anyhow",
"axum",
@@ -1095,7 +1101,7 @@ dependencies = [
[[package]]
name = "ias-mail"
version = "0.1.13"
version = "0.1.15"
dependencies = [
"anyhow",
"async-imap",
@@ -1114,7 +1120,7 @@ dependencies = [
[[package]]
name = "ias-main"
version = "0.2.8"
version = "0.2.15"
dependencies = [
"anyhow",
"clap",
@@ -1129,7 +1135,7 @@ dependencies = [
[[package]]
name = "ias-service"
version = "0.1.7"
version = "0.1.12"
dependencies = [
"anyhow",
"axum",
@@ -1425,6 +1431,16 @@ version = "0.3.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
[[package]]
name = "mime_guess"
version = "2.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e"
dependencies = [
"mime",
"unicase",
]
[[package]]
name = "minimal-lexical"
version = "0.2.1"
@@ -2639,10 +2655,19 @@ checksum = "4cfcf7e2740e6fc6d4d688b4ef00650406bb94adf4731e43c096c3a19fe40840"
dependencies = [
"bitflags",
"bytes",
"futures-core",
"futures-util",
"http",
"http-body",
"http-body-util",
"http-range-header",
"httpdate",
"mime",
"mime_guess",
"percent-encoding",
"pin-project-lite",
"tokio",
"tokio-util",
"tower",
"tower-layer",
"tower-service",
@@ -2748,6 +2773,12 @@ version = "1.20.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20"
[[package]]
name = "unicase"
version = "2.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142"
[[package]]
name = "unicode-bidi"
version = "0.3.18"