Skip to content

Releases: TiveCS/krust-studio

1.7.0-beta.4

1.7.0-beta.4 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 07 Jul 02:03

Krust Studio 1.7.0-beta.4

Packaging fix for the 1.7.0 beta line. Opt in via Settings → Updates.

  • Fix: MySQL/MariaDB connections failed in the packaged app with "Cannot find
    module 'safer-buffer'" — mysql2's transitive dependency (via iconv-lite) was
    not packed into the build's asar. Pinned it as a direct dependency so
    electron-builder includes it, the same fix that shipped cluster-key-slot for
    Redis in beta.2. Verified present in the packaged asar this release.

Full Changelog: v1.7.0-beta.3...v1.7.0-beta.4

1.7.0-beta.3

1.7.0-beta.3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 07 Jul 00:27

Krust Studio 1.7.0-beta.3

The big one for the 1.7.0 beta line: AI Schema Sync over MCP, plus Redis and
routine polish. Opt in via Settings → Updates.

New — AI / MCP (ADR-0022)

  • In-app MCP server. Settings → AI / MCP: enable a local Model Context
    Protocol endpoint on 127.0.0.1 so an AI agent (Claude Code, Codex CLI,
    Cursor…) can inspect schema and propose schema fixes. Off by default; a
    connection is invisible to the AI until you grant it. Bearer-token auth;
    copy-paste client setup (HTTP + a bundled stdio bridge for stdio-first agents).
  • Schema Sync tab. An agent diffs an external code model (e.g. .NET EF Core
    entities) against the live DB and proposes additive fixes — missing tables,
    columns, indexes — which stage here for you to review, then Commit or Export a
    .sql for a DevOps handoff. The AI never writes the database; commit
    re-checks the live DB and skips anything already applied. Read-only connections
    can still diff + export.
  • AI Read Allowlist + audit. Default-deny per table with column masking for
    the read tools; every AI call is logged to an append-only access audit.

Redis

  • Binary collection members (hash/set/zset/list) are read-safe and removable;
    binary key names can be opened (read) and deleted.
  • Live TTL re-sync corrects the countdown after an external PERSIST/EXPIRE.
  • Deleting a key is now a simple Yes/No confirm (key name highlighted), not a
    type-the-name step.

Procedures & functions

  • SQL-editor autocomplete for routines (procedures after CALL, functions in
    expressions).
  • The routine tab now surfaces grants and (PostgreSQL) overload signatures.

Fixes

  • Redis connections now show their engine badge in the connection switcher.
  • Faster schema introspection for the AI (bulk catalog queries instead of one
    round-trip per table — a big win on remote/serverless Postgres).

Full Changelog: v1.7.0-beta.2...v1.7.0-beta.3

1.7.0-beta.2

1.7.0-beta.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Jul 22:35

1.7.0-beta.1

1.7.0-beta.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 02 Jul 15:54

Krust Studio 1.7.0-beta.1

The first pre-release of the 1.7.0 line. Beta builds are opt-in: enable
Settings → Updates → Receive beta (pre-release) updates. Stable users are
unaffected; beta users keep getting newer betas and then stable 1.7.0. Turning
the toggle off stops future betas but does not downgrade a beta already
installed.

Redis (Beta)

  • Native key browser driven by incremental SCAN (never KEYS), MATCH glob,
    logical-database switcher, live TTL countdown.
  • Key tab per key with a type-aware viewer/editor: strings (text/JSON/hex/base64,
    binary-safe), hashes, lists, sets, sorted sets, and append-only streams.
  • Staged edits preview the exact Redis commands and commit atomically
    (WATCH + MULTI/EXEC) with conflict Reload / compatibility-gated Force.
  • Rename (RENAMENX), delete (UNLINK) and expiry changes with typed confirms;
    TTL preserved across value edits.
  • Every mutation captured in a dedicated Redis Mutation history stream.
  • Redis keys are searchable in the command palette (Ctrl/⌘+P).

Procedures & Functions (Beta)

  • Sidebar Procedures and Functions sections (MySQL/MariaDB + PostgreSQL).
  • Routine tab: definition viewer + metadata + an Execute panel. Procedures
    run as CALL (confirmed, blocked on read-only, captured as Routine
    Execution
    ); functions run as SELECT and stay Data Retrieval.
  • Typed parameter form with explicit NULL; MySQL OUT/INOUT values surfaced
    via the generated SET @v; CALL; SELECT @v sequence; PostgreSQL overloads
    targeted by signature.
  • Create (PG CREATE OR REPLACE) and drop (typed confirm, exact signature) with
    captured DDL. A durable definition draft survives restart.
  • Known limitation: editing an existing MySQL/MariaDB routine is blocked in
    this beta (safe non-atomic replacement + recovery copy lands in a later beta).

Data grid

  • Keyboard navigation: arrows / Shift+arrows, Tab/Shift+Tab, Home/End,
    PageUp/PageDown, with the active cell auto-scrolled into view.
  • Enter/F2 edits the active cell (staged, not persisted) and stays put; type any
    character to start editing; Ctrl/⌘+A selects all loaded cells (also the "#"
    corner).
  • Client-side Find (Ctrl/⌘+F): case-insensitive search over the loaded
    page's displayed text; highlights matches; Next/Prev jump the active cell.

Settings

  • Configurable Find shortcut in Keybindings.
  • Toast position (Notifications).
  • Beta update channel (Updates) + Check for updates.

Other

  • Vertical mouse-wheel now scrolls the tab strip horizontally (VSCode-style).
  • Sidebar toolbar: filter input gets its own row so it isn't cramped.

Under the hood

  • Capability-based drivers (ADR-0020) — engines advertise only what they support
    (SQL, tabular, routines, keys, …) instead of assuming everything is relational.
  • New capability: routines (ADR-0021).

Not in this beta (planned for later 1.7.0 betas)

  • StarRocks (Experimental engine).
  • MySQL/MariaDB safe routine replacement (Routine Recovery Copy + grants).
  • Routine-aware autocomplete, typed scalar param helpers, routine viewer Pretty
    toggle.

Verification still needed

Redis (ACL, TLS, expiry, optimistic concurrency, binary, large collections) and
routine CRUD/execution against real MySQL, MariaDB, and PostgreSQL servers.
Please report through the 1.7.0-beta tracking issue.

Full Changelog: v1.6.6...v1.7.0-beta.1

1.7.0-beta.5

1.7.0-beta.5 Pre-release
Pre-release

Choose a tag to compare

@TiveCS TiveCS released this 08 Jul 00:26

Krust Studio 1.7.0-beta.5

Follow-up to the AI Schema Sync beta line, from live testing on real projects.
Adds typed Data changesets, gives the AI a way to query big tables, and
fixes several editor/viewer papercuts. Opt in via Settings → Updates.

Changesets — now Schema and Data (ADR-0023)

  • Data changesets. INSERT / UPDATE / DELETE can now be grouped into a
    Data changeset and exported as a .sql for the DevOps handoff — the same
    capture-and-hand-off workflow you already had for schema DDL, applied to
    seed/reference-data changes.
  • Cleanly separated by kind. A changeset is Schema (DDL) or Data
    (DML); the two never mix in storage. The History rail groups them into a
    Schema and a Data section, each with its own active changeset and its
    own Unassigned inbox; "Move to changeset" only offers same-kind targets.
  • Two optional active slots. Set a Schema changeset and/or a Data changeset
    active independently; matching captures auto-attach only when a slot is active
    (nothing auto-collects until you say so). Destructive DML (TRUNCATE,
    no-WHERE DELETE/UPDATE) never auto-attaches.
  • Export together. Pick a Schema + a Data changeset and export one .sql
    with the statements interleaved in execution order — for when a data
    backfill needs to sit between two DDL steps.

AI / MCP

  • read_rows can filter now. The read tool takes structured
    filter / orderBy / columns (no raw SQL), so an agent can target rows in a
    large table instead of paging blind through it. Any column used in a
    filter/sort/projection must be allowlisted and unmasked — a masked column can't
    be probed indirectly.

Fixes & polish

  • Changeset actions are visible. The per-changeset menu (set active, rename,
    export, delete) was hover-only and easy to miss — it's now persistently shown.
  • Copy SQL by selecting it. Read-only SQL displays (history detail, DDL
    preview, routine viewer) are now mouse-selectable with a visible highlight, so
    you can drag-select and copy without hunting for the Copy button.
  • Smoother tab scroll. Vertical mouse-wheel over the tab strip now glides
    horizontally instead of jumping a notch at a time.
  • JSON viewer FK follows the selection. Expanding a foreign key in the row
    JSON panel now re-fetches when you pick another row (it used to stick on the
    previously-expanded row's parent). The panel's resize handle is also easier to
    grab.

Verification still needed

The Data-changeset and read_rows-filter paths build clean but want a real run:
a live agent reading a filtered big table, DML auto-attaching to an active Data
changeset, and an export-together .sql in the right order. Manual promotion of a
destructive DML entry into a Data changeset is not yet behind a typed confirm —
that lands next. Please report through the 1.7.0-beta tracking issue.

Krust Studio 1.6.6

Choose a tag to compare

@github-actions github-actions released this 24 Jun 23:30

Krust Studio 1.6.6

SQL formatting and update-path validation.

Added

Format SQL

Query tabs now include Format SQL with the Shift+Alt+F shortcut. Formatting
uses the active connection's dialect:

  • MySQL / MariaDB → MySQL
  • PostgreSQL → PostgreSQL
  • SQLite → SQLite

Formatting rewrites the editor text as a normal undoable edit. Invalid SQL is
left untouched and reports an error.

Pretty DDL

Structure → DDL and generated DDL review now have a display-only Pretty
toggle. This never changes the SQL that Krust copies, executes, captures in
History, or exports through Changesets.

Fixed

In-app restart-to-update verified

A real 1.6.5 → 1.6.6 update downloaded, installed, and relaunched
successfully. This confirms the quitAndInstall shutdown-race fix shipped in
1.6.5.

Install

Grab the 1.6.6 installer for your OS below:

  • Windows: krust-studio-app-1.6.6-setup.exe
  • macOS Apple Silicon: krust-studio-app-1.6.6.dmg
  • Linux: krust-studio-app-1.6.6.AppImage or .deb

Windows SmartScreen and macOS Gatekeeper may warn because these builds are not
publicly notarized/code-signed.

Full changelog: https://github.com/TiveCS/krust-studio/blob/main/CHANGELOG.md

1.6.5

Choose a tag to compare

@github-actions github-actions released this 24 Jun 00:20

Patch release adding the ability to open and save .sql files directly from the SQL editor.

Added

Open / save .sql files

You can now move SQL between files and Krust's editor:

  • Open SQL file… - in the tab bar (button) or the tab right-click menu. Opens an OS file dialog and loads the chosen .sql into a new query tab. The filename shows as the tab title.
  • Save .sql - in the editor toolbar. Writes the current editor SQL to a .sql file via a save dialog (defaults to the opened filename, else query.sql).

Opening is a one-shot import: the file's text seeds the tab, but the tab is not linked to the file. Editing the tab never changes the file on disk, and saving always goes through an explicit save dialog. A file-backed editor (live path, Ctrl+S write-back, dirty-vs-file tracking) is deferred to a later release.

Install

Grab the 1.6.5 installer for your OS below:

  • Windows: krust-studio-app-1.6.5-setup.exe
  • macOS Apple Silicon: krust-studio-app-1.6.5.dmg
  • Linux: krust-studio-app-1.6.5.AppImage or .deb

Windows SmartScreen and macOS Gatekeeper may warn because these builds are not publicly notarized/code-signed.

Full changelog: https://github.com/TiveCS/krust-studio/blob/main/CHANGELOG.md

Full Changelog: v1.6.4...v1.6.5

1.6.3

Choose a tag to compare

@github-actions github-actions released this 23 Jun 09:17

Patch release focused on preserving database-style date/time values in the table explorer.

Fixed

Date and datetime display

DATE / DATETIME values in the table explorer could appear as JavaScript ISO strings such as 2026-06-16T17:00:00..., which made date-only columns look like shifted datetimes.

Krust Studio now renders Date-like values as database-style literals in the visible table UI:

  • DATE: yyyy-mm-dd
  • DATETIME / timestamp-like values: yyyy-mm-dd hh:mm:ss
  • millisecond precision is preserved when present

The same literal formatting is used for the main grid, FK picker, copy text, filter-by-value, edit drafts, and commit review text. Hover tooltips still expose readable local and UTC time.

Install

Grab the 1.6.3 installer for your OS below:

  • Windows: krust-studio-app-1.6.3-setup.exe
  • macOS Apple Silicon: krust-studio-app-1.6.3.dmg
  • Linux: krust-studio-app-1.6.3.AppImage or .deb

Windows SmartScreen and macOS Gatekeeper may warn because these builds are not publicly notarized/code-signed.

Full changelog: https://github.com/TiveCS/krust-studio/blob/main/CHANGELOG.md

1.6.2

Choose a tag to compare

@github-actions github-actions released this 18 Jun 09:12

[1.6.2] — 2026-06-18

Fixed

  • Renaming a MySQL/MariaDB column no longer errors on older servers — the
    alter path emitted ALTER TABLE … RENAME COLUMN x TO y, syntax that only
    exists on MySQL 8.0.3+ / MariaDB 10.5.2+, so renames failed with a SQL syntax
    error on older MariaDB. Renames now go through CHANGE COLUMN, which is
    portable across every MySQL/MariaDB version; the column's verbatim
    SHOW CREATE TABLE definition is preserved (type, collation, default,
    comment, auto_increment). A rename combined with a retype or reorder is folded
    into a single CHANGE.

Full Changelog: v1.6.1...v1.6.2

1.6.1

Choose a tag to compare

@github-actions github-actions released this 17 Jun 15:15

Krust Studio v1.6.1

A small but annoying bug fix: your unsaved SQL no longer disappears.

Fixed

  • Unsaved query text survives switching tabs. Previously, if you typed or pasted SQL into the query editor and
    switched to another tab before running it, the draft could vanish when you came back. The editor's unsaved text is now
    reliably saved to the correct tab — on blur, while you type, and when you switch away.
  • Unsaved SQL also survives quitting the app. The workspace is now flushed on close, so an abrupt quit no longer drops
    your last few seconds of edits.

No action needed — just update and your drafts stay put.


Full Changelog: v1.6.0...v1.6.1