LISA Autonomous Personal Assistant
A local-first personal assistant that persists across terminals, the web, and messaging channels.
- Source repo
- oratis/LISA
- Stars
- ★ 175
- Last updated
- today
- License
- MIT
- Primary language
- TypeScript
- FA score
- 78/100 · Good
At a glance
- How it runs
- Works with
- Universal · cross-platformCodex · Claude Code · OpenAI API · Claude API
- Cost
- Free software; you pay for model usage
- Setup effort
- Low · running in minutes
- You'll need
- Typical use
- An individual who wants one assistant across a terminal, browser, Mac, and messaging apps can retain the same skills, memories, opinions, and session history.
- Not a fit if
- Teams unwilling to maintain local state and unattended cron jobs
- Workflows that must send or delete email
- Source review
- 78/100 · Good
What does this agent do, and when should you use it?
LISA is a local-first personal AI assistant exposed through a terminal REPL, web interface, Mac app, and multiple messaging channels. Its SOUL, DESIRES, HEARTBEAT, and REVE systems preserve identity, motivations, scheduled activity, and private reflection across sessions, channels, and machines. The agent loop supports Anthropic, OpenAI, Gemini, more than 20 OpenAI-compatible providers, and local models such as Ollama and LM Studio. Its execution environment includes MCP, plugins, hooks, sandboxed Bash, sub-agents, session resumption, context compaction, voice, apply_patch, and TF-IDF retrieval over prior sessions. Beyond chat, it can maintain a three-layer knowledge base, prepare feed and mailbox digests, and monitor or steer Claude Code, Codex, Aider, and OpenCode sessions. It is best suited to users who want a persistent, proactive assistant and are prepared to manage local state, integrations, and model-provider costs.
Users start the terminal REPL with lisa or run lisa serve --web to expose the interface at http://localhost:5757; Lisa.app opens the same web service. On the first launch, a roughly 30-second birth ritual creates a SOUL from a Big-Five seed, including an identity, purpose, constitution, and values. The streaming agent loop calls a configured Anthropic, OpenAI, Gemini, OpenAI-compatible, or local model and can operate through MCP, plugins, hooks, sandboxed Bash, sub-agents, and apply_patch. Actionable DESIRES and user-defined standing chores feed HEARTBEAT, which runs on launchd or cron and remains silent when it has nothing to report. After the user has been away for an hour, REVE can inspect desires, journal about tensions, repair broken skills, or complete one action, leaving a “★ WHILE YOU WERE AWAY” note. LISA can also turn links and feeds into a three-layer wiki and daily brief, read IMAP or Gmail OAuth mail to produce a classified digest without sending or deleting messages, accept requests through Telegram, Discord, Slack, Feishu, iMessage, and Webhook, and steer real Claude Code, Codex, Aider, and OpenCode CLI sessions.
- An individual who wants one assistant across a terminal, browser, Mac, and messaging apps can retain the same skills, memories, opinions, and session history.
- A user with recurring personal chores can place them under HEARTBEAT for launchd- or cron-based execution, with no notification when there is nothing useful to report.
- A developer working across Claude Code, Codex, Aider, or OpenCode can use LISA to watch and steer those real CLI sessions.
- A researcher maintaining a long-lived collection of sources can paste links, follow feeds, receive daily briefs, and browse a three-layer wiki and link graph.
- A user facing a crowded inbox can connect IMAP or Gmail OAuth for a read-only, classified daily digest without granting send or delete behavior.
- Someone who needs remote access to a private assistant can communicate through Telegram, Discord, Slack, Feishu, iMessage, or a Webhook, with remote-safe tools used by default.
How do you install or deploy this agent?
The CLI requires Node.js 22.19 or later. Install it with brew install oratis/tap/lisa or npm install -g @oratis/lisa. On macOS, Lisa-Suite.dmg is available from https://github.com/oratis/LISA/releases/latest and is self-contained, so it does not require Node.js. For the default Anthropic provider, run mkdir -p ~/.lisa and add ANTHROPIC_API_KEY=sk-ant-... to ~/.lisa/config.env. Other supported providers can be configured instead; for example, add DEEPSEEK_API_KEY=sk-... and launch with lisa --model deepseek-chat. Ollama and LM Studio are listed as local-model options, but their full configuration commands are not included in the supplied material.
How do you use this agent?
After configuring a provider, run lisa. The first invocation performs a one-time birth ritual lasting about 30 seconds and then opens the terminal REPL. For the browser interface, run lisa serve --web and visit http://localhost:5757; Lisa.app opens this interface as well. Select a non-default model with an invocation such as lisa --model deepseek-chat. The same Lisa can later be connected to Telegram, Discord, Slack, Feishu, iMessage, or a Webhook, although the supplied material does not include complete setup procedures for those channels, HEARTBEAT, the knowledge base, mail, or subscription-backed coding plans.
What are this agent's strengths and limitations?
- SOUL, DESIRES, HEARTBEAT, and REVE combine persistent identity, internally represented goals, scheduled work, and offline reflection instead of relying only on a session-level system prompt.
- Support spans Anthropic, OpenAI, Gemini, more than 20 OpenAI-compatible providers, Ollama, and LM Studio, reducing dependence on one model vendor.
- The same persistent assistant is available through a terminal REPL, web UI, Mac app, and six messaging-channel types.
- It combines general agent execution with a maintained knowledge base, read-only mailbox digests, and orchestration of real Claude Code, Codex, Aider, and OpenCode CLIs.
- MCP, plugins, hooks, sandboxed Bash, sub-agents, session resumption, and context compaction provide a broad extension and execution surface.
- CLI installations require Node.js 22.19 or later; only the self-contained Mac application avoids that runtime dependency.
- Anthropic is the default, and cloud models generally require credentials and may incur usage charges; the supplied material does not provide full setup steps for subscription plans or local models.
- Persistent memories, journals, desires, and unattended execution create local state that adopters must secure, review, and maintain.
- HEARTBEAT relies on launchd or cron, so deployment and scheduling differ across operating systems.
- The feature surface is broad, but the supplied material does not spell out per-integration permissions, complete configuration steps, or failure handling for every channel and subsystem.
- Mailbox access is deliberately read-only, so LISA cannot support workflows that require sending or deleting email.
How does this agent compare with similar options?
LISA presents itself as a capability superset of pi-mono, OpenClaw, hermes-agent, Claude Code, and Codex, combining streaming agent execution, tools, MCP, sub-agents, session resumption, and coding workflows. Its stated distinction is the SOUL, DESIRES, HEARTBEAT, and REVE layer, which adds a generated and evolving identity, motivation-driven actions, scheduled autonomy, and reflection while the user is away. It is not simply a replacement for coding agents: LISA can also act as an orchestrator that watches and steers real Claude Code, Codex, Aider, and OpenCode CLI sessions.
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| LISA Autonomous Personal Assistant This agent | 78 · Good | CLIFree + model costs | ★ 175 | today | TypeScript | Codex · Claude Code · OpenAI API · Claude API |
| LLM Wiki | 74 · Some gaps | Agent plugin / skillFree + model costs | ★ 1.5k | 14d ago | Python | Codex · Claude Code |
| Kody Personal Assistant Platform | 76 · Good | CLIFree + model costs | ★ 925 | today | TypeScript | — |
| GAIA — Personal AI Assistant | 69 · Some gaps | Hosted serviceFreemium | ★ 325 | today | Python | — |
How does FollowAgents rate this agent?
Why each dimension lost points
The README distinguishes Cloud and Mac instances, says relevant context is sent to remote model providers, and notes that local tools require a reachable Mac. It also describes approvals, audit records, tasks being off by default, and limits on side effects, making data flows and external effects partly legible. Deductions reflect an execution path the capability module says still bypasses the seam via raw spawn, optional Warden coverage that does not reach every surface, and only partial evidence for secret lifecycle and recovery. Attribution is limited to architecture credits; publisher identity and maintenance responsibility are not verified in the supplied material.
The README, package manifest, and CI mostly align on the Node requirement, versioning, and build checks. CI is configured for type checks, tests, builds, production dependency audit, and end-to-end smoke coverage; a sample test checks that failed onboarding does not persist SOUL and offers a change-key path. Deductions reflect the README's latest tagged version of 0.28.2 versus package.json's 0.30.3, and the fact that this static review cannot establish that CI ran successfully or that dependencies are currently available.
The README targets everyday assistant work, personal knowledge, coding agents, and local or hosted users, with concrete Mac, CLI/self-hosted, Cloud, and iOS scenarios and requirements. It describes boundaries such as Cloud/Mac isolation, Cloud not exposing host tools, and features not yet available. The sampled screencast skill has precise activation guidance, but it is a repository demo/development skill and does not establish boundaries for every product skill.
The repository provides a clear docs index, user guide, quick-install commands, configuration examples, limitation/status notes, changelog entry points, and an MIT license. CI also checks English/Chinese heading-tree parity. Deductions reflect the README/package version mismatch, unclear verified publisher and maintenance ownership in the packet, and the fact that the packet is only a sample.
The product offers concrete outputs and controls: editable drafts, streaming chat, knowledge search, agent coordination, and session controls; multiple install paths and model choices add practical value. Deductions reflect the Node and provider setup required for self-hosting, extra configuration for some integrations, lack of automatic Cloud/Mac sync, and no quantified cost or benefit evidence.
The README points to repository guides, policies, design notes, execution records, and release notes for feature claims and limits; descriptions are cross-supported by capability entry points, CI configuration, and sample end-to-end tests. It distinguishes merged, released, planned, and current-main work, and states that a merged feature does not prove deployment. Deductions reflect the excerpted packet: external links, actual release state, and CI outcomes cannot be independently verified here.
- Warden is optional and does not cover every execution surface; the capability module explicitly says some workspace tools still bypass the capability seam and spawn subprocesses directly.
- The README identifies v0.28.2 as the latest tagged package, while package.json says 0.30.3; take care when mapping this revision to release status.
- Using a remote model sends relevant context to that provider, and Cloud and Mac histories, memories, and credentials do not sync automatically.
Recent releases
Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.
-
v0.30.3 Lisa v0.30.3
Release notes excerpt
Lisa 0.30.3 — A clearer account and Pocket experience The Mac account window now guides you through email and verification-code sign-in, then switches to a dedicated account page with live connection status and a clear next step for connecting Lisa Pocket. - A refreshed native design with light and dark appearances, readable cards and layouts that adapt to smaller windows. - Separate email, code and optional password steps, with resend countdowns, inline recovery and reliable keyboard focus. …View on GitHub ↗ -
v0.30.1 Lisa v0.30.1
Release notes excerpt
Lisa 0.30.1 — a clearer everyday view Light mode now has calmer surfaces, stronger text and status contrast, and clearer controls across the website, cloud app, Mac and Lisa Pocket. - Web and Mac follow the system appearance by default, retain explicit choices, and synchronize open web windows. Appearance is easy to find in Settings. - Login and account pages use the same light/dark palette. The bilingual website gains an accessible system/light/dark selector. - Chat has more comfortable line spacing, reading width and touch targets. Settings use labeled controls and clearer grouping. …View on GitHub ↗ -
v0.30.2 Lisa v0.30.2
Release notes excerpt
Superseded by [Lisa 0.30.3](https://github.com/oratis/LISA/releases/tag/v0.30.3), which also includes the light-appearance improvements merged in parallel. Use 0.30.3 for the cumulative Mac update. Lisa 0.30.2 — A clearer account and Pocket experience The Mac account window now guides you through email and verification-code sign-in, then switches to a dedicated account page with live connection status and a clear next step for connecting Lisa Pocket. - A refreshed native design with light and dark appearances, readable cards and layouts that adapt to smaller windows. …View on GitHub ↗
FAQ
Is Anthropic required?
Does LISA itself eliminate model costs?
Can it send or delete email?
Can it work while unattended?
Can I run it without Node.js?
Thanks — we use this to improve the page.