Release history
wazionapps/nexo releases
Cognitive memory for AI agents with Atkinson-Shiffrin memory model (STM/LTM/sensory register), semantic RAG, Ebbinghaus decay, trust scoring, and 76+ MCP tools.
All releases
140 shown
- Auto‑migration runs on first `nexo update` from v6.x: snapshots to `~/.nexo-pre-f06-snapshot/`, moves 13 directories, updates config (`personal_scripts.path`), rewrites all `com.nexo.*.plist` files, writes `.structure-version=F0.6`. Rollback by moving the snapshot back.
- Use new helpers from `paths.py` for any directory access to ensure compatibility with both legacy and new layouts during upgrade window.
- Removed flat `~/.nexo/scripts/`, `brain/`, `data/`, `operations/` etc.; replaced by explicit three‑zone tree (`core/`, `personal/`, `runtime/`).
- Legacy paths no longer exist after migration; all code must use new locations or the transition‑aware helpers in `paths.py`.
- Added `paths.py` with transition‑aware runtime path helpers (e.g., `core_scripts_dir`, `personal_scripts_dir`).
- Companion NEXO Desktop v0.21.0 receives matching transition‑aware path helpers for database and brain files.
Full changelog
Plan Consolidado · Fase F0.6 — BREAKING
NEXO Brain v7.0.0 closes the multi-release migration that began with F0.0 (schema marker) and walked through F0.5 (safe symlinks): the flat ~/.nexo/scripts/, brain/, data/, operations/, ... layout is replaced by an explicit three-zone tree.
New layout
~/.nexo/
├── core/ ← shipped with the package
│ ├── scripts/, plugins/, hooks/, rules/, contracts/
├── core-dev/ ← dev-only, off by default
├── personal/ ← operator-owned, never touched by `nexo update`
│ ├── scripts/, skills/, plugins/, hooks/, rules/
│ ├── brain/, config/, lib/, overrides/
└── runtime/ ← dynamic state
├── data/, logs/, operations/, backups/
├── memory/, cognitive/, coordination/, exports/
├── nexo-email/, doctor/, snapshots/, crons/
Auto-migration
On first nexo update from v6.x, _maybe_migrate_to_f06_layout() in auto_update.py runs once: snapshots to ~/.nexo-pre-f06-snapshot/, moves 13 dirs per-item (symlink-loop safe), classifies scripts via runtime-core-artifacts.json, UPDATEs personal_scripts.path transactionally, rewrites every com.nexo.*.plist (script paths + log paths), writes ~/.nexo/.structure-version=F0.6. Idempotent. Rollback: mv ~/.nexo-pre-f06-snapshot ~/.nexo. Total downtime: ~30 sec.
New paths.py
Centralizes every runtime path helper (core_scripts_dir, personal_scripts_dir, brain_dir, data_dir, db_path, logs_dir, operations_dir, ...). Each is transition-aware: returns the new (post-F0.6) location if it exists; falls back to legacy when only legacy is present; defaults to new for fresh installs.
Scope
- 28 src files refactored (
auto_update.py,cli.py,evolution_cycle.py,runtime_power.py,cron_recovery.py,user_data_portability.py,system_catalog.py,public_contribution.py,tools_sessions.py,bootstrap_docs.py,calibration_migration.py,desktop_bridge.py,health_check.py,script_registry.py,db/_skills.py,plugins/{recover,personal_plugins,update}.py,doctor/providers/{boot,deep,runtime}.py, ...). - 7 shell scripts in
src/scripts/updated (cron-wrapper DB, watchdog dirs, backup, deep-sleep, inbox-hook, snapshot-restore, tcc-approve). script_registry.classify_scripts_dir()scans every dir inpaths.all_scripts_dirs()(core/scripts + personal/scripts + core-dev/scripts) and dedups by(name, classification)so personal scripts that share a name with core remain visible.
Audit
2 passes Opus 4.7 xhigh. Pass-1 BLOCKED on 6 findings (most critical: no migrator code in PR despite changelog claim). Pass-2 APPROVED WITH PATCHES after fixes (commits 953c504 + c5d8d1a + fb6de99). 1551/1551 pytest pass. bash scripts/check_no_personal_data.sh exit 0.
Companion
NEXO Desktop v0.21.0 (closed-source companion at https://systeam.es/nexo-desktop) gets the same transition-aware treatment for its 11 hardcoded ~/.nexo/data/nexo.db, ~/.nexo/brain/{calibration,profile}.json references via new nexoDbPath(), nexoBrainCalibrationPath(), nexoBrainProfilePath() helpers.
What's Changed
- v7.0.0 (BREAKING) — Plan Consolidado fase F0.6: physical layout split by @wazionapps in https://github.com/wazionapps/nexo/pull/221
Full Changelog: https://github.com/wazionapps/nexo/compare/v6.5.0...v7.0.0
- Tier‑only setup enforced (non‑tier configurations removed)
- auto_capture behavior changed to enabled by default
- Hooks manifest introduced
- auto_capture feature enhanced and engaged automatically
Full changelog
What's Changed
- feat!: v6.0.0 — Tier-only setup, hooks manifest, auto_capture enganchado by @wazionapps in https://github.com/wazionapps/nexo/pull/203
Full Changelog: https://github.com/wazionapps/nexo/compare/v5.10.2...v6.0.0