Nexora v0.1.2
Nexora 0.1.2
A right-click file manager in the Code editor, a matching context menu for Git changed files, encrypted export/import of database connections, and smarter AI assistants that know what time it is.
✨ Features
🗂️ Code editor — right-click the file tree
The file explorer is no longer read-only. Right-click any file, folder, or the empty space below them — common file chores no longer mean dropping out to a terminal or Finder.
- New File… / New Folder… — inline name entry right where you clicked; new files open in a tab automatically.
- Rename — edit in place with the basename pre-selected (the extension stays put); ⏎ commits, esc cancels.
- Duplicate — copies a file or whole folder to the next free
… copy/… copy 2sibling. - Delete — moves to the OS Trash (recoverable, with a confirm), never an unrecoverable unlink.
- Reveal in Finder — jump to the item in your OS file manager.
- Copy Path / Copy Relative Path / Copy Name — absolute, service-root-relative, or just the filename.
Expanded folders stay expanded after each change, tabs for renamed or trashed files close themselves, and every operation is sandboxed to the service's local checkout.
🌿 Git — right-click the changed-files list
The Commits tab's file list gets a context menu too — selection-aware, so right-clicking inside a multi-selection acts on every selected file (Stage (3)).
- Stage / Unstage — same as the hover buttons, but across a whole selection.
- Discard Changes… — now behind a proper confirmation that spells out what happens: tracked changes revert to the last commit, untracked files move to the OS Trash (recoverable) — which also means untracked files can finally be discarded at all.
- Open in Editor — jump straight to the file in the Code tab.
- Copy Path / Copy Relative Path — single file or the whole selection.
- Reveal in Finder — show the file in your OS file manager.
🔐 Database — export & import a connection (encrypted)
Move a database connection between Nexora installs without re-typing anything — each connection exports to a single password-protected *.nexdbconn file.
- Export (encrypted) — bundles the connection config, prerequisite/tunnel setup, saved password, data-dictionary annotations, and saved queries. Pick a passphrase and tick exactly what to include.
- Import — unlock with the passphrase, preview what's inside, optionally rename, and it lands as a brand-new connection. The password goes back into your OS keychain; annotations and saved queries reattach automatically.
- Double-click to import —
.nexdbconnfiles are registered with the OS: open one from Finder and Nexora launches, asks which service to import into, and drops you on the new connection. - Encrypted end-to-end — the entire bundle (hostnames and usernames included) is sealed with AES-256-GCM behind an Argon2id-stretched passphrase. No passphrase, no data — and a wrong passphrase or tampered file is rejected cleanly.
⬇️ Updates — grab the installer yourself
The update banner gains a Release page button next to Download — it opens the version's GitHub release page so you can install manually instead of in-app. It also appears next to Retry when an in-app update fails, so a broken auto-update always leaves a way out.
📊 K8s dashboards — readable widget error states
Failing dashboard widgets (e.g. 403s from RBAC-restricted clusters) no longer dump the raw Kubernetes API error into the widget body. You get a compact error state — icon, "Failed to load data", a one-line summary — plus a Details popup with the full raw error, copyable in one click. "Data source missing" notes (metrics-server / Prometheus) get the same treatment: summarized and clamped, no more overflowing text.
🕒 AI assistants — time & environment awareness
Every message to the AI (Service, Cluster, and Chat) now carries the current date & time, your timezone, locale, and the app/OS it's running in. The assistant can reason about "today", "now", and "the last 24 hours" — and line log timestamps up against the real clock — without asking or guessing. Rebuilt fresh on every send, so it stays current through long conversations.
🐛 Fixes
- AI composer — input clears reliably after sending. Text pre-filled from a seed (K8s logs "Ask AI", pinned evidence, or a Chat prompt template) could re-paste itself over the box after a send. Seeds are now strict one-shots: applied once, then retired — sending always empties the composer.