Files
agent-radar 2ed3415fb7
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
源码快照 @ 2026-09-01 (source-only, 剔除非源码素材)
2026-09-01 20:17:27 +08:00

887 B

@tutti-os/ui-react-hooks

Host-agnostic React hook helpers for shared Tutti frontend packages.

This package is published to npm as @tutti-os/ui-react-hooks.

Use it for narrow reusable React hook patterns such as external-store snapshot subscription, selector reads, and IME-safe controlled input state. Keep domain hooks and UI components in their owning packages.

Prefer this package over adding new direct useSyncExternalStore wrappers in shared frontend packages so subscription semantics stay consistent. useExternalStoreSnapshot keeps its React subscription callbacks stable while the source identity is unchanged, so source consumers do not unsubscribe and resubscribe on each render.

This package does not replace adapter-level snapshot memoization. If a non-React adapter exposes a derived getSnapshot(), keep reference-stable snapshot reuse in the owning package.