No description
  • Python 54.8%
  • Shell 38.1%
  • Dockerfile 7.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-01 17:07:49 +01:00
defaults v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
.gitignore v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
CHANGELOG.md v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
check-memory.sh v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
CloudronManifest.json v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
CloudronVersions.json v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
DESCRIPTION.md v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
Dockerfile v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
LICENSE v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
logo.png v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
POSTINSTALL.md v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
README.md v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
save-memory.sh v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
screenshot.jpg v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
server_wrapper.py v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00
start.sh v0.0.0.8 upstream 1.2.3 2026-09-01 17:07:49 +01:00

EverOS for Cloudron

Cloudron package for EverOS — portable memory layer for every AI agent: local-first, Markdown-native, user-owned, and self-evolving across apps, tools, and workflows.

Architecture

EverOS is a pure local-first service. All persistent state lives under /app/data via the localstorage addon. No external addons required — no PostgreSQL, Redis, MongoDB, Elasticsearch, or Milvus.

Storage stack (EverOS upstream design):

/app/data/
├── api_key.txt              Cloudron-generated X-API-Key credential (persisted across restarts)
├── .initialized             First-run flag
└── everos/                  EVEROS_ROOT
    ├── everos.toml          Provider & API config (edit via File Manager, restart after saving)
    ├── ome.toml             OME scheduler settings (hot-reloaded, ~2 s)
    ├── .index/
    │   ├── sqlite/system.db    State, queues, relational index
    │   └── lancedb/            Vector similarity + BM25 keyword indexes
    └── <app_id>/<project_id>/  Canonical Markdown memory source of truth
        ├── users/<user_id>/       User profile, episodes, atomic facts, foresights
        ├── agents/<agent_id>/     Agent profiles, Cases (trajectories), Skills (distilled)
        └── knowledge/             Knowledge Wiki pages

Markdown files are authoritative — SQLite and LanceDB are derived indexes. Edit any .md file directly in File Manager and the cascade watcher re-syncs the indexes within seconds.

Networking

  • Port: 8000 (httpPort in manifest)
  • Bind: 0.0.0.0 via EVEROS_API__HOST env in start.sh
  • Health check: /health — returns 200 JSON with {"status":"ok", ...} and a live capability matrix (Cloudron healthcheck hits this unauthenticated)
  • Auth: API-key-only, per server_wrapper.py. /health, /docs, /openapi.json, /redoc are public; all other routes require X-API-Key: <value> header (or ?api_key= query param for ad-hoc curl). The key is generated on first boot and stored in /app/data/api_key.txt; delete + restart to rotate.

Provider tiers

EverOS ships four independent provider tiers (fill progressively in everos/everos.toml via File Manager):

Tier Unlocks Minimal viable
[llm] Memory extraction + keyword search One OpenRouter key
[embedding] Vector search, hybrid search, reflection, skill extraction DeepInfra embedding key
[rerank] Agentic search, Knowledge Wiki DeepInfra rerank key
[multimodal] Image / PDF / audio / Office ingestion Multimodal-capable endpoint + LibreOffice bundled in image

All sections accept any OpenAI-compatible endpoint (base_url + model + api_key).

End-user workflow (POSTINSTALL recap)

  1. Get the API key via Web Terminal: cat /app/data/api_key.txt
  2. Visit https://<app>/health to verify service is up and check the live capability matrix
  3. Open File Manager → everos/everos.toml, fill in at least [llm].api_key, save, and restart the app
  4. Test with POST /api/v2/memory/addPOST /api/v2/memory/flushPOST /api/v2/memory/search (use method: "keyword" if only the LLM tier is configured)
  5. Interact with memories directly as Markdown under everos/<app_id>/<project_id>/

Upstream