Skip to content

Conversation

@Myriad-Dreamin
Copy link
Contributor

@Myriad-Dreamin Myriad-Dreamin commented Dec 30, 2025

This PR adds the concept of the EverMemoryArchive.

  • UI is the user interface. Users can interacts with ema using WebUI, NapCatQQ, or TUI.
  • Ema Actor is the actor that takes user inputs and generates outputs.
    • Visit an actor instance using ActorClient.
  • LLM is the LLM that is responsible for the generation of the response.
    • Visit llm providers using EmaLLMClient.
    • Create a stateful agent by extending Agent.
    • Run a task with AgentScheduler by providing AgentTask.
  • Storage is the storage that is responsible for the storage of the data.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR establishes the foundational architecture for EverMemoryArchive by defining core interface contracts. It introduces a conceptual module that documents how different system components (UI, Actor, LLM, Storage) interact through well-defined TypeScript interfaces.

Key changes:

  • Introduces interface definitions for Actor client, LLM client, and storage components in a new concept module
  • Adds type-checking utilities for compile-time interface validation
  • Updates documentation generation to include the new concept module and adds Mermaid diagram rendering support

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
scripts/docs.js Refactored to include the new concept module in documentation generation
packages/ema/src/types.ts Added type-checking utilities for interface validation
packages/ema/src/concept/storage.ts Defined interfaces for actor state storage and memory management
packages/ema/src/concept/llm.ts Defined interface for LLM client interactions
packages/ema/src/concept/index.ts Module entry point with architecture documentation and Mermaid diagram
packages/ema/src/concept/actor.ts Defined Actor client interface with event-based communication
packages/ema/src/actor.ts Updated import to use new concept module location
docs/.vitepress/config.js Added Mermaid.js integration for rendering diagrams in documentation

@Myriad-Dreamin Myriad-Dreamin marked this pull request as ready for review December 30, 2025 13:11
@Myriad-Dreamin Myriad-Dreamin marked this pull request as draft January 3, 2026 13:48
@Myriad-Dreamin Myriad-Dreamin changed the title docs: define llm client and actor input/output interfaces docs: define llm and actor input/output interfaces Jan 6, 2026
@Myriad-Dreamin Myriad-Dreamin requested a review from Copilot January 6, 2026 09:41
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 7 out of 8 changed files in this pull request and generated 10 comments.

@Myriad-Dreamin Myriad-Dreamin marked this pull request as ready for review January 6, 2026 11:12
@Myriad-Dreamin Myriad-Dreamin linked an issue Jan 13, 2026 that may be closed by this pull request
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.

Scheduler MVP: Define job model and public Scheduler API

1 participant