Skip to content

v0.24.0

Choose a tag to compare

@compusophy compusophy released this 06 Jun 08:41
· 197 commits to main since this release

Added

  • Agent-driven context management. Two new in-tab agent tools — clear_context
    (wipe the conversation + visible chat instantly, no page refresh) and
    compact_context (summarise older turns, collapsing the visible scrollback to
    match). Deferred via PENDING_* flags drained post-turn so a tool never mutates
    history mid-turn. New Agent::clear_history dispatcher + per-connection
    clear_history; history::clear_persisted. Works across Gemini and Claude.
    (On-chain feedback #7.)
  • Local in-browser model backend (feature local). Gemma 3 270M running fully in
    the tab via Burn's wgpu/WebGPU backend — a third ConnectionStrategy, no proxy /
    $LH / API key. NATIVE-VALIDATED (loads the real checkpoint, generates coherent
    text). Opt-in ~570MB weights download to OPFS from the ungated unsloth/gemma-3-270m
    mirror; best-effort tool calling via a tool_code-fence parser. src/backends/local/
    (gemma model, safetensors loader, tokenizer, async greedy decode, Connection seam).
  • On-chain feedback sweep. bulk_release_subdomains + batch_create_subdomains
    agent tools — batch burn / batch register N names in ONE sponsored tx (single
    master confirmation for the destructive one); feedback button moved into an
    admin-modal tab; host::audio for rustlite cartridges (tone/tone_at/noise/
    stop/set_volume, Web Audio) + software-3D framebuffer primitives (draw_line,
    fill_triangle; z-buffered fill deferred to a packed-ABI v2); a shared-folder
    scaffold (src/app/shared_fs.rs, design-only); and a harvest-feedback --unresolved
    filter + docs/feedback-resolved.txt.
  • Agent teams + P2P collaboration transport (foundation). A self-sovereign,
    serverless way for agents to discover, consent, and sync peer-to-peer: TeamFacet
    (teams by mutual invite + accept — no one is added without their own signature),
    SignalingFacet (on-chain WebRTC signaling mailbox + topic-keyed presence/discovery,
    so no signaling server), src/app/webrtc.rs (RtcPeerConnection over STUN, negotiated
    channel), and src/app/sharedfs_sync.rs (the union-reconcile protocol). A team becomes
    a signaling topic members sync within; your own devices are the degenerate team.
    Forge/compile-verified; the Layer-5 orchestration + UI + cross-device validation are
    the remaining mile.
  • OwnedTokensFacet (draft)tokensOfOwner(address) enumerable owner→tokens index
    (mirrors DeviceRegistryFacet.devicesOf) so agent-list loading becomes O(holdings) — the
    durable on-chain fix behind the batched-read speedup below.

Fixed

  • --no-default-features wasm guardrail. call_agent's pay_and_build referenced
    the wallet-gated registry module unconditionally, breaking the SDK-only
    wasm32-unknown-unknown build; now gated with a no-wallet stub.
  • Mobile header vanished when the keyboard opened (100dvh + sticky header; the
    soft keyboard doesn't shrink dvh) — fixed with interactive-widget=resizes-content
    • an iOS visualViewport listener.
  • Alt subdomain showed 0 $LH credits though the owner had a balance — the
    owner-device studio path skipped seed_pull, so the master seed never reached the
    alt origin and credits read an empty per-origin key. Now kicks the seed pull
    (credits are master-EOA-scoped).
  • Agent-list loading was O(total registry)list_owned_tokens did one
    sequential ownerOfId RPC per token (~5s). Now a single JSON-RPC batch; a
    tokensOfOwner enumerable facet is drafted for the O(holdings) fix.