Skip to content

design(reminder): integrate @endo/reminder into Familiar - #938

Draft
kriscendobot wants to merge 1 commit into
llmfrom
design/endo-reminder-familiar-integration
Draft

design(reminder): integrate @endo/reminder into Familiar#938
kriscendobot wants to merge 1 commit into
llmfrom
design/endo-reminder-familiar-integration

Conversation

@kriscendobot

Copy link
Copy Markdown
Collaborator

Plans the follow-up requested in the review of endojs/endo-but-for-bots#721 (kriskowal, 2026-07-15): "Please post plans to follow-up with integration of this plugin into Chat, Familiar, and minion.town." This PR is the Familiar plan; sibling plans cover Chat and minion.town.

Adds designs/endo-reminder-familiar-integration.md. Plan and propose only; no implementation here.

Headline findings

  • endojs/endo-but-for-bots#721 is merged (2026-07-30) and approved, so the @endo/reminder API is final. The integration is not blocked on the plugin changing shape, and the Phase 2 subscriber-capability delivery baseline needs no SturdyRef work.
  • Familiar is a thin Electron supervisor with no capability code of its own. All reminder wiring lands in the bundled Endo daemon + packages/lal (the LLM agent). "Integrate into Familiar" means wire the plugin against the LAL agent and have the Familiar deployment own the @pins retention that makes it wake on restart. This realizes the design's Phase 3 "one worked integration demonstrating restart-survival".
  • The one genuinely missing seam: LAL exposes no inbound notify facet (its only exo is Lal.help; the agent wakes only via followMessages()). A durable recipient-adapter exo must be built to translate notify(message) into a wake of the agent loop and settle the one-shot response.

What the plan delivers

The concrete integration points, the merged API surface actually used (read from sources + tests), persistence and lifetime, per-side changes, the trust-posture assessment (the unconfined shape fits, with interval-bomb and store-scope mitigations), the test strategy (recipient-adapter unit, restart-survival end-to-end, familiar-bundle CI, agent-tool), and the ordering against #721 and the two sibling plans (one shared LAL substrate, built once). Open questions name what could not be established: the exact store-minting mechanism, provisioning home (setup.js vs agent.js), recipient-adapter revival, and whether any packages/familiar source change is needed.

Draft because it is design-stage; un-drafting is the maintainer's decision after review.

🤖 Generated with Claude Code

Plans following up on the #721 review request to
integrate the merged @endo/reminder message-scheduler into Familiar.

Key finding: Familiar is a thin Electron supervisor with no capability
code of its own; the integration lives in the bundled Endo daemon +
packages/lal. The plan names the integration points (recipient adapter,
node-fs store, setup.js provisioning + @pins retention, the powers guest,
the agent scheduling tool, the familiar-bundle gate), the merged API
surface actually used, persistence/lifetime, per-side changes, the trust
posture, the test strategy, and the ordering against #721 (merged) and the
two sibling integration plans (shared LAL substrate).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant