Elyan is a local-first personal agent runtime with a separate hosted control plane on elyan.dev.
The real v1 product surface is intentionally small:
- local chat runtime
- local health and readiness
- capability discovery
- dashboard
- CLI
- optional search
- optional MCP
- optional channels
- optional hosted control-plane integration
Everything else is secondary.
- Install dependencies:
npm install- Prepare local storage, safe environment defaults, and zero-cost model routing:
npm install -g .
elyan setup --zero-costIf the CLI is not linked globally yet:
node bin/elyan.js setup --zero-costelyan setup runs the safe bootstrap path, checks local model/search reachability, and prints the next local-first step without requiring hosted account linking.
- Start Ollama and pull the recommended local model if setup reports that Ollama is not reachable:
elyan models setupCloud keys are optional and should only be set when you intentionally want cloud inference:
OPENAI_API_KEYANTHROPIC_API_KEYGROQ_API_KEY
- Run Elyan:
npm run devProduction-like:
npm run build
npm run start- Check health and open the command center:
http://localhost:3000/api/healthzhttp://localhost:3000/manage
You need one usable model source:
- local Ollama at
OLLAMA_URL, or - one cloud provider key
Zero-cost mode uses local Ollama and local storage. Without a model source, Elyan is not ready.
elyan setup --zero-cost
elyan doctor
elyan doctor --fix --zero-cost
elyan health
elyan status
elyan status --json
elyan capabilities
elyan settings view
elyan openLocal operator permissions:
elyan desktop status
elyan desktop grant .
elyan desktop enableService mode:
elyan service install
elyan service start
elyan service statusChannel diagnostics:
elyan channels list
elyan channels doctor
elyan channels setup telegram
elyan channels test telegramMCP diagnostics:
elyan mcp list
elyan mcp doctor
elyan mcp enable <server>
elyan mcp disable <server>
elyan mcp disable-tool <server> <tool>v1.3 operator runs:
elyan run --mode research "compare local-first agent runtimes with sources"
elyan run --mode code "inspect this repo and plan a safe patch"
elyan run --mode cowork "plan the next product milestone"
elyan runs list
elyan runs show <runId>
elyan approvals list
elyan approvals approve <approvalId>
elyan approvals reject <approvalId>Operator runs are local-first planning records. Each run records an adaptive reasoning profile (shallow, standard, or deep) so Elyan can stay fast for simple work and slow down for research, code, cowork, and verification-heavy tasks. Runs also track quality gates for the selected mode: research needs sources or an honest unavailable state, code needs repository inspection plus approval-safe verification, and cowork needs inspectable role artifacts. Risky file, terminal, browser, MCP, or automation actions must still pass typed action, policy, approval, audit, and verification before execution.
Hybrid quantum-inspired optimization:
elyan optimize demo assignment
elyan optimize demo resource-allocation --jsonThe v1.3 optimization capability is TEKNOFEST-oriented decision support, not a separate quantum chatbot. It models assignment and resource-allocation problems, builds a QUBO representation, compares greedy, simulated annealing, and small brute-force QUBO fallback solvers, then returns an auditable JSON plus Markdown decision report. No real quantum hardware is claimed or required.
SearXNG is optional. If it is reachable, Elyan uses live retrieval and citations. If it is missing, Elyan stays usable in local-only mode.
MCP is optional. Only configure it if you actively use MCP servers.
Telegram, WhatsApp Cloud, WhatsApp Baileys, and iMessage/BlueBubbles are optional.
- Telegram uses the official Bot API and supports polling or webhook mode.
- WhatsApp Cloud is the official Meta surface and can incur template-message costs.
- WhatsApp Baileys is local best-effort and unofficial; it is not a guaranteed business channel.
- iMessage requires a local BlueBubbles server on a Mac with iMessage available.
The shared VPS control plane is optional and only for shared business/device state:
- accounts
- sessions
- plans
- subscriptions
- entitlements
- hosted usage accounting
- device linking and token rotation
- notifications and ledger entries
Private local runtime state stays local by default.
The local operator is permissioned computer control, not unrestricted system takeover.
- It is disabled until enabled in runtime settings or through
elyan desktop enable. - It can only operate inside configured
allowedRoots. - Sensitive paths such as
.env, SSH keys, cloud credentials, wallets, shell profiles, and system directories are protected by default. - Write, destructive, and system-critical actions require explicit approval policy levels.
- Evidence is written under
ELYAN_STORAGE_DIR/evidence.
Base local runtime:
ELYAN_STORAGE_DIR=storageELYAN_RUNTIME_SETTINGS_PATH=storage/runtime/settings.jsonOLLAMA_URL=http://127.0.0.1:11434SEARXNG_URL=http://localhost:8080
Optional cloud providers:
OPENAI_API_KEYANTHROPIC_API_KEYGROQ_API_KEY
Optional hosted control plane:
DATABASE_URLNEXTAUTH_URLNEXTAUTH_SECRETIYZICO_API_KEYIYZICO_SECRET_KEYIYZICO_MERCHANT_ID
Optional MCP:
ELYAN_MCP_SERVERSELYAN_DISABLED_MCP_SERVERSELYAN_DISABLED_MCP_TOOLS
npm run lint
npm run test
npm run build
npm run release:check- Public-facing hosted and control-plane routes use hardened HTTP headers and no-store defaults on private surfaces.
- Do not commit secrets, tokens, or private credentials to the repository.
- Do not grant broad local operator roots unless you are comfortable with that machine scope.
- Report vulnerabilities privately through GitHub Security Advisories or
SECURITYbefore public disclosure.
Elyan v1.3 is not:
- a Docker-first product
- a fake hosted everything-app
- an unrestricted computer-control bot
- a replacement for explicit channel credentials and platform rules
Elyan v1.3 is a directly runnable local-first runtime with guided setup, safer release/install surfaces, and a clearer operator workflow. The hosted surface is separate and only adds shared account and billing features when configured.
Elyan is licensed under AGPL-3.0-or-later.
If you modify and deploy it as a network service, you must make the corresponding source available under the same terms.