13 Commits
Author SHA1 Message Date
zipg d662c6a39e fix(plugin): align dev host asset limit with runtime 2026-10-17 17:43:07 +08:00
_Mr丶s ゛😁® aaa8e15791 feat(ai): add the AI config import plugin entry (CC-SWITCH) 2026-10-13 16:03:46 +08:00
jearhe 4e144035b1 feat(plugin): expose stable contribution identity 2026-10-07 00:13:30 +08:00
二丫讲梵 e6edd02bbe feat(ai): add plugin recommendations and agent context 2026-09-27 12:04:09 +08:00
t8y2 90d1d94a04 fix(plugins): clear dev-host lint regressions 2026-09-24 14:01:25 +08:00
t8y2 865b9fba84 feat(plugins): add host.storage bridge and document sidecar data dir 2026-09-21 11:41:58 +08:00
Jinpy b1b99eccfb feat(desktop): deliver font settings to plugin sandboxes 2026-09-19 19:13:30 +08:00
Freedom 1321dc9b9d feat(plugins): improve connection lifecycle and session tabs 2026-09-18 22:10:37 +08:00
Jinpy e4bda693fb feat(plugins): add interactive prompts and richer connection forms 2026-09-17 19:29:28 +08:00
t8y2 0239d2c56b feat(dev-host): persist the auto-reload preference across restarts
Auto-reload lived only in the dev host process, so every restart reset
it to off and re-enabling it cost a confirmation dialog each session.
The setting now persists to settings.json in the development data
directory (same atomic write pattern as connections.json) and is
restored — and re-armed — at startup.
2026-09-16 15:29:39 +08:00
t8y2 2c4f2091a6 fix(dev-host): reload manifest.json instead of failing the identity check
The dev host read manifest.json once at startup and froze that copy in
the Sidecar, while the backend watcher happily rebuilt the binary on any
source edit. Editing the manifest while the host ran — a routine version
bump during a release, for example — then made every restart compare the
fresh binary against the stale in-memory manifest and fail with "Sidecar
identity or protocol does not match manifest" until the whole dev host
was restarted.

Two layers of fixing: the project root now watches manifest.json and hot
swaps the in-memory copy (plus secret-key collection), and the sidecar
handshake re-reads the manifest from disk before declaring a mismatch, so
the check can no longer race the watcher. A genuinely disagreeing
manifest still fails the handshake.
2026-09-16 15:10:06 +08:00
t8y2 e8e1ece80d feat(plugins): display manifest icons in dev host 2026-09-14 00:44:02 +08:00
t8y2 b5072f1a3e feat(plugin): add plugin framework workflow 2026-09-13 10:39:17 +08:00