Commit Graph
629 Commits
Author SHA1 Message Date
Liang Jiaqing 694d3e3aaf refactor(conductor): clarify strategic delegation prompt 2026-10-23 10:45:24 +08:00
Liang Jiaqing e6b1bcec92 hub: spawn lightweight phone sessions and close via existing put 2026-10-20 18:11:25 +08:00
Liang Jiaqing 326354bad3 hub: keep saved pairing waiting while phone is offline 2026-10-20 10:08:35 +08:00
Liang Jiaqing eaa2e6f14b Route Hub model switches through desktop state notifications 2026-10-19 13:17:25 +08:00
Liang Jiaqing 84ec7d55af Reuse independent conductor and scheduler without owning their lifecycle 2026-10-19 10:54:38 +08:00
Liang Jiaqing 4e8029f20e Limit pending restoration to sessions reloaded from storage 2026-10-19 10:40:35 +08:00
Liang Jiaqing 4f5a928a6e Preserve replay step boundaries for GA and Hub clients 2026-10-19 10:34:29 +08:00
Liang Jiaqing e92ef58488 Restore desktop sessions lazily into GA; use disposable output projection 2026-10-19 10:18:15 +08:00
Liang Jiaqing e6ed9b3f4d Remove obsolete desktop deferred model binding tests 2026-10-19 09:42:48 +08:00
Liang Jiaqing 5b48e7b300 Connect desktop GA instances to Hub with shared submit and cancel paths 2026-10-18 15:44:36 +08:00
Liang Jiaqing 9b3aff4358 Remove desktop global model default and preserve GA constructor selection 2026-10-18 09:15:16 +08:00
Liang Jiaqing a2eb5414c2 Store desktop session metadata only and replay MR or L4 history 2026-10-17 13:20:04 +08:00
Liang Jiaqing 2ba5529060 fix: synchronize live model reload and preserve config selection 2026-10-16 19:46:04 +08:00
Liang Jiaqing 250a7c2790 ci: assemble GA source deployments from standalone desktop components 2026-10-16 13:43:12 +08:00
Liang Jiaqing 62bdce49f0 fix(bridge): remove desktop static file dependency 2026-10-16 11:55:59 +08:00
Liang Jiaqing 5a4b6fa7a4 chore(desktop): keep only private desktop placeholder 2026-10-16 11:38:19 +08:00
Liang Jiaqing a5979eac50 fix: track applied mykeys snapshot per agent 2026-10-16 09:30:02 +08:00
Liang Jiaqing 24f7d6a0dc refactor(conductor): manage model selection in agent memory only 2026-10-15 21:34:28 +08:00
Liang Jiaqing 8b7d4e0a82 stapp: drop index= on keyed LLM selectbox; session-state-only avoids streamlit default-value warning spam on every rerun 2026-10-13 11:19:50 +08:00
Liang Jiaqing e29587dfb8 stapp: keep sidebar LLM widget state in sync with external (hub/phone) channel switch; stale session_state silently rolled it back 2026-10-13 10:17:01 +08:00
Liang Jiaqing 418c28a7bb stapp: fold long answers - last 50 steps individual, older grouped per 30 with lazy-load toggle + TOC 2026-09-30 17:52:52 +08:00
Liang Jiaqing a275570fc6 stapp: unbound starlette ws send queue (500-msg cap caused fake disconnect -> stuck RUNNING) 2026-09-30 17:52:52 +08:00
Liang Jiaqing 9dcbf5adf0 hub: persist token to temp/.hub_token; add intervene/keyinfo inject op + hub.call/peers helper 2026-09-29 09:28:08 +08:00
nianyucatfish e86ca723a9 fix(tui): polish rendering, history preview, and copy behavior (#816)
* fix(tui): repaint composer after macOS input

* feat(tui): add compact conversation history

* fix(tui): repaint messages after streaming and scroll

* fix(tui): polish history focus and scrollbar styling
2026-09-22 23:42:24 +08:00
Liang Jiaqing 86171aec3c hub_p2p: exponential backoff (1->60s) with jitter on reconnect failure; avoid thundering herd after relay restart 2026-09-11 10:18:38 +08:00
Liang Jiaqing 24aeead78c p2p_ws_client: fast-fail reconnect (ws ping 15/10s; Signal.expect aborts on closed/error instead of waiting full timeout) 2026-09-11 10:18:38 +08:00
Liang Jiaqing 4913a6162b hub: switch LLM channel (op llm / GET llms, POST llm) via agent.list_llms/next_llm only 2026-09-11 10:18:38 +08:00
Liang Jiaqing 7fa5fa4ec0 fix: prevent WeChat polling from consuming chat input 2026-09-02 08:20:28 +08:00
YI QI LIMandabraxas914 efb3bc6ad1 feat(desktop): compiled React Desktop 2.0 v0.2.1 renderer update (#787)
* fix(desktop): expose explicit backup capabilities

* fix(desktop): align titlebar controls with native metrics

* release(desktop): prepare portable v0.2.1

* build(desktop): rebuild compiled dist from source 4a67226

Rebuild the compiled-only React Desktop 2.0 renderer from abraxas914/GenericAgent
main @4a67226, carrying the v0.2.1 iterations that PR #784 was closed to await:
live turn-timer persistence across session switch, Mixin image-to-path fallback,
folder drag-drop, per-turn duration, and image-thumbnail repair.

- dist/**: regenerated 98 manifest assets + entry HTML
- build-provenance.json: sourceCommit -> 4a67226, manifest sha256 recomputed
- verify-compiled-dist.mjs: expectedSourceCommit -> 4a67226
- dist/README.md: provenance source commit updated
- desktop_bridge.py, test_bridge_origin_security.py: synced to 4a67226
- core (agentmain.py, llmcore*, src/**, public/**) remains zero-diff vs upstream

---------

Co-authored-by: abraxas914 <abraxas345589144233@outlook.com>
2026-08-30 14:21:51 +08:00
Liang Jiaqing 17d9f4d873 fix(wechatapp): avoid evaluating Win creationflags on Linux
_start_conductor built DETACHED_PROCESS/CREATE_NEW_PROCESS_GROUP before the
os.name=='nt' branch, causing AttributeError and crashing Conductor autostart
on Ubuntu. Keep those flags Windows-only; Linux uses start_new_session.
2026-08-27 21:44:07 +08:00
yiqi-017 bb4b2ca974 feat(desktop): refresh compiled React Desktop 2.0 distribution
Rebuild the compiled renderer from abraxas914/GenericAgent source
commit 9fe5d69b85cfad8778ace84b6f69bc75f9e0d392, refreshing:

- New-chat default model tag: the selected-model badge in Settings
  and the composer now read '新会话默认' / 'New chat default'.
- Model selectors display the configured profile name (备注名) so the
  same model served by different providers is distinguishable.
- desktop_bridge: syncing mixin llm_nos references when a profile is
  renamed, preventing orphan references in the mixin config.
- Release publisher sets GH_REPO so 'gh release create' resolves the
  target repository without checking out source, satisfying the
  publisher security contract while fixing the prerelease step.

Provenance and verifier updated to the new source commit and the
LF-normalized content manifest (98 generated assets).
2026-08-25 18:00:43 +08:00
Liang Jiaqing 13eef203f7 fix(stats): compute decode TPS at stream end 2026-08-25 11:36:25 +08:00
Liang Jiaqing 3327a6c88b fix stream recovery and runtime metrics 2026-08-25 10:16:19 +08:00
Liang Jiaqing ffe97347df fix(conductor): restore standalone model selection 2026-08-24 10:09:15 +08:00
abraxas914 dd99c5c3ac refactor(desktop): streamline release qualification tooling 2026-08-24 01:07:43 +08:00
abraxas914 dbdc63c368 docs(desktop): document source provenance and runtime boundaries 2026-08-23 18:15:52 +08:00
abraxas914 f526f4ad5b test(desktop): cover bridge, backup and package contracts 2026-08-23 18:15:52 +08:00
abraxas914andyiqi-017 6cc27a78c8 build(desktop): publish compiled React Desktop 2.0 distribution
Co-authored-by: yiqi-017 <22300246009@m.fudan.edu.cn>
2026-08-23 17:18:25 +08:00
abraxas914 f0d5bc7d44 feat(desktop): integrate Desktop 2.0 runtime services 2026-08-23 17:12:58 +08:00
Liang Jiaqing 30b24ad31d fix(stapp): own stream bubble inside fragment for cross-version rerun safety 2026-08-21 14:21:27 +08:00
Liang Jiaqing b0d270394d fix(stapp): repaint stream host fully each tick for Streamlit 1.62 wrapper reset
Streamlit >=1.62 resets a fragment's outside-container wrapper cursor to 0
on every fragment rerun and GCs children not re-emitted, so incremental
appends (_stream_frozen) lost folded expanders mid-stream. Merge _stream_ls
into the single _stream_fh host and repaint expanders + live tail every
tick; the unconditional write also claims the slot on the initial run
(no 'could not reserve a stable position') and removes the empty
placeholder that pushed the first reply's bubble down.
2026-08-20 22:20:39 +08:00
Liang Jiaqing d6403d9783 ui: idle fragment tick 5s + streamlit>=1.62; fix !!!Error tail check 2026-08-20 12:31:06 +08:00
Liang Jiaqing 3f39e2b980 harden hub put text type check; disable claude context_management 2026-08-15 11:30:46 +08:00
Liang Jiaqing 63f9db74e6 fix(p2p): rebuild socket after signaling loss 2026-08-12 06:54:59 +08:00
Liang Jiaqing 75ac18d478 fix(p2p): keep relay available during direct upgrade 2026-08-12 05:40:30 +08:00
Liang Jiaqing e55e198dc2 refactor(wm): unify turn-summary extraction (<summary> first, else full text, skip empty) across ga/worldline/continue_cmd; fix hinfo delta slicing base for old-tree mixed lineage 2026-08-11 11:50:11 +08:00
Liang Jiaqing a6ea3fa53c fix(conductor): escape raw HTML before marked to block stored XSS
renderMd fed untrusted chat/log into marked → innerHTML; strip '<' so
scripts/on* payloads cannot navigate (e.g. /login?from=/scriptText).
Markdown links and bare URLs remain intact.
2026-08-11 08:31:03 +08:00
Liang Jiaqing 4e92d5d88d p2p: split peer_timeout(120s) from direct_timeout(15s) so pairing code stays usable for its full TTL 2026-08-09 00:19:44 +08:00
Liang Jiaqing 8f9732ec0c hub: /api/peers incremental via psig (unchanged list -> {same:1}, ~68% less relay bytes) 2026-08-08 14:31:41 +08:00
Liang Jiaqing d426d45e9b hub: incremental polling (since= skeleton delta, nt rewind marker, seg ?off tail fetch) to cut relay traffic 2026-08-08 12:20:15 +08:00