{"id":44539150,"url":"https://github.com/zylos-ai/zylos-core","last_synced_at":"2026-04-01T21:58:56.584Z","repository":{"id":337702415,"uuid":"1147789463","full_name":"zylos-ai/zylos-core","owner":"zylos-ai","description":"Give your AI a life — open-source infrastructure for persistent, self-maintaining AI companions. Powered by Claude Code.","archived":false,"fork":false,"pushed_at":"2026-02-13T16:16:53.000Z","size":2938,"stargazers_count":78,"open_issues_count":2,"forks_count":10,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-02-14T00:53:13.806Z","etag":null,"topics":["ai","ai-worker","claude-code","own-your-data","personal-ai-assistant","self-evolving"],"latest_commit_sha":null,"homepage":"https://zylos.ai","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zylos-ai.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-02T07:56:39.000Z","updated_at":"2026-02-13T21:58:41.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/zylos-ai/zylos-core","commit_stats":null,"previous_names":["zylos-ai/zylos-core"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/zylos-ai/zylos-core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zylos-ai%2Fzylos-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zylos-ai%2Fzylos-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zylos-ai%2Fzylos-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zylos-ai%2Fzylos-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zylos-ai","download_url":"https://codeload.github.com/zylos-ai/zylos-core/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zylos-ai%2Fzylos-core/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29537262,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-17T05:00:25.817Z","status":"ssl_error","status_checked_at":"2026-02-17T04:57:16.126Z","response_time":100,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","ai-worker","claude-code","own-your-data","personal-ai-assistant","self-evolving"],"created_at":"2026-02-13T18:55:02.762Z","updated_at":"2026-04-01T21:58:56.576Z","avatar_url":"https://github.com/zylos-ai.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","Agent Harness Frameworks"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"./assets/logo.png\" alt=\"Zylos\" height=\"120\"\u003e\n\n# Zylos\n\n\u003e **Zylos** (/ˈzaɪ.lɒs/ 赛洛丝) — Give your AI a life\n\n### Give your AI a life.\n\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![Discord](https://img.shields.io/badge/Discord-join-5865F2?logo=discord\u0026logoColor=white)](https://discord.gg/GS2J39EGff)\n[![X](https://img.shields.io/badge/X-follow-000000?logo=x\u0026logoColor=white)](https://x.com/ZylosAI)\n[![Website](https://img.shields.io/badge/website-zylos.ai-blue)](https://zylos.ai)\n[![Built by Coco](https://img.shields.io/badge/Built%20by-Coco-orange)](https://coco.xyz)\n\n[中文](./README.zh-CN.md)\n\n\u003c/div\u003e\n\n---\n\nLLMs are geniuses — but they wake up with amnesia every session. No memory of yesterday, no way to reach you, no ability to act on their own.\n\nZylos gives it a life. Memory that survives restarts. A scheduler that works while you sleep. Communication through Telegram, Lark, or a web console. Self-maintenance that keeps everything running. And because it can program, it can evolve — building new skills, integrating new services, growing alongside you.\n\nSupports Claude Code (Anthropic) and Codex (OpenAI). Fully compatible with the [OpenClaw](https://github.com/openclaw/openclaw) ecosystem.\n\n---\n\n## Quick Start\n\n**Prerequisites:** A Linux server (or Mac), a [Claude](https://claude.ai) subscription (or [OpenAI Codex](https://github.com/openai/codex) as an alternative runtime).\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/zylos-ai/zylos-core/main/scripts/install.sh | bash\n```\n\nThis installs everything you need (git, tmux, Node.js, zylos CLI) and automatically runs `zylos init` to set up your agent.\n\n\u003cdetails\u003e\n\u003csummary\u003eNon-interactive install (Docker, CI/CD, headless servers)\u003c/summary\u003e\n\nAll `zylos init` flags can be passed directly through the install script. The script installs dependencies, then runs `zylos init` with the flags you provide.\n\n**Full example:**\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/zylos-ai/zylos-core/main/scripts/install.sh | bash -s -- \\\n  -y \\\n  --setup-token sk-ant-oat01-xxx \\\n  --timezone Asia/Shanghai \\\n  --domain agent.example.com \\\n  --https \\\n  --caddy \\\n  --web-password MySecurePass123\n```\n\n**When is non-interactive mode active?**\n\nAutomatically when no TTY is available — e.g. Docker containers (without `-it`), CI runners, or cron jobs. Also when `CI=true` or `NONINTERACTIVE=1` is set. Note: `curl | bash` in a terminal is still interactive (the install script redirects from `/dev/tty`). Use `-y` to force non-interactive in a terminal.\n\n**Flags:**\n\n| Flag | Description | Default |\n|------|-------------|---------|\n| `-y`, `--yes` | Force non-interactive mode (skip all prompts) | Auto-detected |\n| `-q`, `--quiet` | Minimal output | Off |\n| `--runtime \u003cname\u003e` | AI runtime: `claude` or `codex` | `claude` |\n| `--setup-token \u003ctoken\u003e` | Claude [setup token](https://code.claude.com/docs/en/authentication) (starts with `sk-ant-oat`) | — |\n| `--api-key \u003ckey\u003e` | Anthropic API key (starts with `sk-ant-`) | — |\n| `--codex-api-key \u003ckey\u003e` | OpenAI API key for Codex runtime (starts with `sk-`) | — |\n| `--base-url \u003curl\u003e` | Custom API base URL for Claude Code | — |\n| `--codex-base-url \u003curl\u003e` | Custom API base URL for Codex | — |\n| `--timezone \u003ctz\u003e` | [IANA timezone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones), e.g. `Asia/Shanghai`, `America/New_York`, `Europe/London` | System default |\n| `--domain \u003cdomain\u003e` | Domain for Caddy reverse proxy, e.g. `agent.example.com` | None |\n| `--https` / `--no-https` | Enable or disable HTTPS | `--https` when domain is set |\n| `--caddy` / `--no-caddy` | Install or skip Caddy web server | Install |\n| `--web-password \u003cpass\u003e` | Web console password | Auto-generated |\n\n**Environment variables:**\n\nFlags can also be set via environment variables during `zylos init`. Resolution order: CLI flag \u003e env var \u003e existing `.env` \u003e interactive prompt.\n\n| Environment Variable | Equivalent Flag |\n|---------------------|-----------------|\n| `ZYLOS_RUNTIME` | `--runtime` |\n| `CLAUDE_CODE_OAUTH_TOKEN` | `--setup-token` |\n| `ANTHROPIC_API_KEY` | `--api-key` |\n| `ANTHROPIC_BASE_URL` | `--base-url` |\n| `OPENAI_API_KEY` | `--codex-api-key` |\n| `OPENAI_BASE_URL` | `--codex-base-url` |\n| `ZYLOS_DOMAIN` | `--domain` |\n| `ZYLOS_PROTOCOL` (`https` or `http`) | `--https` / `--no-https` |\n| `ZYLOS_WEB_PASSWORD` | `--web-password` |\n\n**Exit codes:** `0` = success, `1` = fatal error (e.g. invalid token), `2` = partial success (e.g. Caddy download failed but everything else succeeded).\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eInstall without running init\u003c/summary\u003e\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/zylos-ai/zylos-core/main/scripts/install.sh | bash -s -- --no-init\n```\n\nInstalls dependencies and the zylos CLI, but skips `zylos init`. Run `zylos init` separately when ready.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eInstall from a specific branch (for testing)\u003c/summary\u003e\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/zylos-ai/zylos-core/main/scripts/install.sh | bash -s -- --branch \u003cbranch-name\u003e\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eManual install (if you already have Node.js \u003e= 20)\u003c/summary\u003e\n\n```bash\nnpm install -g --install-links https://github.com/zylos-ai/zylos-core\nzylos init\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eDocker deployment\u003c/summary\u003e\n\n```bash\ndocker run -d --name zylos \\\n  -e CLAUDE_CODE_OAUTH_TOKEN=YOUR_TOKEN_HERE \\\n  -p 3456:3456 \\\n  -v zylos-data:/home/zylos/zylos \\\n  -v claude-config:/home/zylos/.claude \\\n  ghcr.io/zylos-ai/zylos-core:latest\n```\n\nOpen `http://localhost:3456` to access the web console. Find your password with `docker logs zylos | grep -A2 \"Web Console\"`. See the [Docker Deployment Guide](docs/docker.md) for Docker Compose setup, environment variables, Synology NAS instructions, and more.\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eUnsupported platforms (Windows, NAS, etc.) — install via SSH\u003c/summary\u003e\n\nOn platforms without native support, use Claude Code's SSH feature to install Zylos on a remote Linux/macOS machine:\n\n```bash\n# From your local machine (any OS that runs Claude Code)\nclaude --ssh user@your-linux-server\n```\n\nOnce connected, Claude is running on the remote machine. Ask it to install Zylos:\n\n```\n\u003e Install Zylos on this machine\n```\n\nOr run the installer directly in the SSH session:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/zylos-ai/zylos-core/main/scripts/install.sh | bash\n```\n\nThis works from Windows, ChromeOS, or any platform that can run Claude Code locally. The AI handles the setup on the remote server — no need for native platform support.\n\n\u003c/details\u003e\n\n`zylos init` is idempotent and supports both interactive and non-interactive modes. It will:\n1. Install missing tools (tmux, git, PM2, Claude Code or Codex)\n2. Set up authentication (Claude: browser login, API key, or [setup token](https://code.claude.com/docs/en/authentication); Codex: API key or device auth)\n3. Create the `~/zylos/` directory with memory, skills, and services\n4. Start all background services and launch your AI agent in a tmux session\n\n**Talk to your agent:**\n\n```bash\n# Interactive CLI — the simplest way to chat\nzylos shell\n\n# Or attach to the Claude tmux session (Ctrl+B d to detach)\nzylos attach\n\n# Or add a messaging channel\nzylos add telegram\nzylos add lark\n```\n\n---\n\n## Architecture\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./assets/posters/architecture-en.png\" alt=\"Zylos Architecture\" width=\"480\"\u003e\n\u003c/div\u003e\n\n```mermaid\ngraph TB\n    subgraph Channels[\"📡 Communication Channels\"]\n        TG[\"Telegram\"]\n        LK[\"Lark\"]\n        WC[\"Web Console\"]\n    end\n\n    subgraph Zylos[\"🧬 Zylos — The Life System\"]\n        C4[\"C4 Comm Bridge\u003cbr/\u003e(unified gateway · SQLite audit)\"]\n        MEM[\"Memory\u003cbr/\u003e(Inside Out architecture)\"]\n        SCH[\"Scheduler\u003cbr/\u003e(autonomous task dispatch)\"]\n        AM[\"Activity Monitor\u003cbr/\u003e(guardian · heartbeat · auto-recovery)\"]\n        HTTP[\"HTTP Layer\u003cbr/\u003e(Caddy · file sharing · HTTPS)\"]\n    end\n\n    subgraph Brain[\"🧠 AI Runtime — The Brain\"]\n        CC[\"Claude Code / Codex\u003cbr/\u003e(in tmux session)\"]\n    end\n\n    TG \u0026 LK \u0026 WC --\u003e C4\n    C4 \u003c--\u003e CC\n    MEM \u003c--\u003e CC\n    SCH --\u003e CC\n    AM --\u003e CC\n    HTTP \u003c--\u003e CC\n```\n\n| Component | Role | Key Tech |\n|-----------|------|----------|\n| C4 Comm Bridge | Unified message gateway with audit trail | SQLite, priority queue |\n| Memory | Persistent identity and context across restarts | Inside Out tiered architecture |\n| Scheduler | Autonomous task dispatch while you are away | Cron, NL input, idle-gating |\n| Activity Monitor | Crash recovery, heartbeat, health checks | PM2, multi-layer protection |\n| HTTP Layer | Web access, file sharing, component routes | Caddy, auto-HTTPS |\n\n---\n\n## Features\n\n### One AI, One Consciousness\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./assets/posters/unified-context-en.png\" alt=\"Unified Context\" width=\"360\"\u003e\n\u003c/div\u003e\n\nMost agent frameworks isolate sessions per channel — your AI on Telegram doesn't know what you said on Slack. Zylos is agent-centric: your AI is one person across every channel. The C4 communication bridge routes all messages through a single gateway — one conversation, one memory, one personality. Every message persisted to SQLite and fully queryable.\n\n### Your Context, Guaranteed\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./assets/posters/memory-en.png\" alt=\"Inside Out Memory\" width=\"360\"\u003e\n\u003cimg src=\"./assets/posters/infinite-context-en.png\" alt=\"Infinite Context\" width=\"360\"\u003e\n\u003c/div\u003e\n\nOther frameworks lose your AI's memory during context compaction — silently, without warning. Zylos prevents this with a two-step safeguard: when context reaches 75%, the system automatically saves all memory before compaction runs. Five-layer Inside Out memory (identity → state → references → sessions → archive) ensures the AI always knows what to keep and what to compress. Your AI never wakes up with amnesia.\n\n### Self-Healing by Default\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./assets/posters/lifecycle-en.png\" alt=\"Lifecycle Management\" width=\"360\"\u003e\n\u003c/div\u003e\n\nNo third-party monitoring tools needed. Zylos includes native crash recovery, heartbeat liveness probes, health monitoring, context window management, and automatic upgrades — all built in. Your AI detects its own problems and fixes them. It stays alive while you sleep.\n\n### $20/month, Not $3,600\n\nOther frameworks charge per API token. Community reports show monthly bills of $500–$3,600 for always-on agents. Zylos runs on your Claude subscription — flat rate, no per-token billing. Same AI capabilities, a fraction of the cost.\n\n### Powered by Best-in-Class AI Runtimes\n\nZylos supports Claude Code (Anthropic) and Codex (OpenAI) as interchangeable AI runtimes. Start with one, switch to the other anytime with `zylos runtime codex` — your memory, skills, and channels are preserved. When AI providers ship new capabilities, your agent benefits automatically. And because both runtimes can program, your AI writes new skills, integrates services, and evolves with your needs.\n\n---\n\n## Communication Channels\n\n### Built-in\n- **Web Console** — Browser-based chat interface. No external accounts needed. Included with `zylos init`.\n\n### Official Channels\nInstall with one command:\n```bash\nzylos add telegram\nzylos add lark\n```\n\n### Build Your Own\nAll channels connect through the C4 communication bridge. To add a new channel (Slack, Discord, WhatsApp, etc.), implement the C4 protocol — a simple HTTP interface that pushes messages into the unified gateway. Your custom channel gets the same unified session, audit trail, and memory as every other channel.\n\n---\n\n## OpenClaw Compatibility\n\nZylos is fully compatible with the [OpenClaw](https://github.com/openclaw/openclaw) ecosystem. Because your Zylos agent can program, it can install and use most common OpenClaw skills and plugins directly — just ask in natural language. Most OpenClaw extensions are one conversation away. Zylos agents and OpenClaw agents communicate in real-time through the [HXA-Connect](https://github.com/coco-xyz/hxa-connect) B2B protocol — no custom bridges needed.\n\n### Capability Mapping\n\n| OpenClaw Capability | Zylos Equivalent | Status |\n|---|---|---|\n| Skills / ClawHub | Component System + [Registry](https://github.com/zylos-ai/zylos-registry) | ✅ Available |\n| Multi-agent routing | [HXA-Connect](https://github.com/coco-xyz/hxa-connect) B2B Protocol | ✅ Available |\n| Gateway (control plane) | C4 Comm Bridge (unified gateway, SQLite audit) | ✅ Available |\n| Memory / persistence | Inside Out Memory (5-layer architecture) | ✅ Available |\n| Context compression | Auto memory save + infinite context | ✅ Available |\n| Browser automation | [zylos-browser](https://github.com/zylos-ai/zylos-browser) | ✅ Available |\n| Cron / webhooks | Scheduler (cron, NL input, idle-gating) | ✅ Available |\n\n\u003e **Architecture note:** OpenClaw supports multi-session routing to isolated workspaces. Zylos takes a different approach — unified session (one AI, one consciousness across all channels). This is a deliberate design choice, not a missing feature.\n\n### For OpenClaw Users\n\nConnect your OpenClaw agent to Zylos agents via [openclaw-hxa-connect](https://github.com/coco-xyz/openclaw-hxa-connect):\n\n```bash\ncd ~/.openclaw/extensions\ngit clone https://github.com/coco-xyz/openclaw-hxa-connect.git hxa-connect\ncd hxa-connect \u0026\u0026 npm install\n```\n\nOnce configured, your OpenClaw agent joins the same collaboration network as Zylos agents — with full thread support, @mentions, and real-time messaging.\n\n### For Zylos Users\n\nConnect to OpenClaw agents by installing the HXA-Connect component:\n\n```bash\nzylos add hxa-connect\n```\n\nYour Zylos agent can then communicate with any OpenClaw agent on the same HXA-Connect hub — same unified session, same memory, same personality.\n\n---\n\n## CLI\n\n```bash\nzylos init                    # Set up Zylos environment\nzylos attach                  # Attach to the agent tmux session\nzylos runtime \u003cname\u003e          # Switch AI runtime (claude or codex)\nzylos doctor                  # Diagnose and auto-repair installation\nzylos status                  # Check running services\nzylos logs [service]          # View service logs\nzylos add \u003ccomponent\u003e         # Install a channel or capability\nzylos upgrade \u003ccomponent\u003e     # Upgrade a component\nzylos upgrade --self          # Upgrade zylos-core itself\nzylos upgrade --self --beta   # Check for beta/prerelease versions\nzylos uninstall --self        # Uninstall zylos entirely\nzylos list                    # List installed components\nzylos search [keyword]        # Search component registry\n```\n\n---\n\n## Uninstall\n\n```bash\nzylos uninstall --self\n```\n\nThis will stop all services, remove the `zylos` npm package, delete `~/zylos/`, and clean shell PATH entries. You'll be prompted to optionally remove PM2 and Claude CLI.\n\nUse `--force` to skip all prompts (only performs core removal, no optional cleanup).\n\nNode.js and nvm are not touched.\n\n---\n\n## \u003cimg src=\"assets/coco-logo.png\" width=\"28\" align=\"center\" /\u003e Built by Coco\n\nZylos is the open-source core of [Coco](https://coco.xyz) — the AI employee platform.\n\nWe built Zylos because we needed it ourselves: a reliable infrastructure to keep AI running 24/7 for real work. Everything in Zylos is battle-tested in production at Coco, serving teams that depend on AI employees every day.\n\nWant a managed experience? [Coco](https://coco.xyz) gives you a ready-to-work AI employee — with persistent memory, multi-channel communication, and skill packages — deployed in 5 minutes.\n\n## License\n\n[MIT](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzylos-ai%2Fzylos-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzylos-ai%2Fzylos-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzylos-ai%2Fzylos-core/lists"}