t8y2
98e2d03f64
feat(agent): support offline driver import via ZIP bundle and local JAR
...
Add two offline import methods for users behind corporate firewalls:
- ZIP offline bundle: import all drivers + JRE from a single ZIP file
- Single JAR import: import individual driver JARs per database type
2026-05-20 09:44:03 +08:00
t8y2
5df7fbf062
feat(agent): add compatible driver handshake
2026-05-19 15:17:21 +08:00
t8y2
ea5e15612f
feat(redis): search keys by value
2026-05-18 21:27:47 +08:00
t8y2
b2be49367c
feat(app): handle SQL export and tray updates
2026-05-18 18:39:59 +08:00
t8y2
70a8ff2d24
fix(app): restore offscreen windows on startup
2026-05-18 16:47:14 +08:00
t8y2
978c68f98f
fix(app): allow native window maximization
2026-05-18 10:57:08 +08:00
t8y2
556f7a7999
fix(app): clamp restored window size
2026-05-18 02:10:34 +08:00
t8y2
7188465161
feat(app): open sql files in editor
2026-05-17 13:59:42 +08:00
t8y2
7c226ce684
fix(app): support portable data directory
2026-05-17 12:44:34 +08:00
t8y2
f4566221b1
feat(query): add paged result fetching
2026-05-17 00:10:18 +08:00
t8y2
ecb878315c
chore: add startup timing diagnostics for #270
...
Add [STARTUP] timing logs to Rust setup (plugin registration, storage
open, migration) and Vue frontend (onMounted, initFromStorage,
initFromDisk) to help diagnose slow startup reported in #270 .
2026-05-14 19:35:34 +08:00
t8y2
c37caeba78
fix: apply only visible checked values when local filter has active search
...
When a user searches in the column filter dialog, non-visible options
retained their selected state, making it impossible to filter to just
the searched values. Now when a search query is active, only visible
checked items are included in the applied filter.
2026-05-14 19:19:21 +08:00
t8y2
081a356832
feat(plugins): support local JDBC plugin installation
...
Add a "local install" button that lets users install the JDBC plugin
from a local zip file when online download fails (e.g. draft release).
2026-05-14 11:42:21 +08:00
t8y2
abd3450814
feat(connection): make driver manager link clickable in install hint
2026-05-14 11:03:12 +08:00
t8y2
43bd3a9ef8
feat(drivers): add upgrade all drivers button
...
Add a batch upgrade command that sequentially updates all drivers with
available updates, with per-driver progress tracking in the UI.
2026-05-14 10:58:47 +08:00
t8y2
3d7b149e53
feat(agents): support system Java runtime
2026-05-13 23:30:55 +08:00
t8y2
809448a161
feat: multi-JRE support, Oracle 10g driver profile, and JRE uninstall
...
- Support multiple JRE versions per agent driver (jre-8/, jre-17/)
- Auto-migrate legacy jre/ directory to jre-17/
- Detect macOS Adoptium JRE 8 Contents/Home/ layout
- Route Oracle 10g connections to oracle-10g agent via driver_profile
- Add Oracle 10g option in connection dialog
- Add JRE uninstall with dependency check
- Show per-JRE status and controls in driver management UI
2026-05-13 16:08:00 +08:00
t8y2
fa0dfc9383
perf: race GitHub proxies concurrently for driver downloads and registry fetch
...
Replace sequential proxy fallback (up to 30s worst-case) with concurrent
racing via futures::select_ok, returning the first successful response.
Add list_installed_agents_local command for instant UI rendering with
async registry update. Fix missing useToast import in RedisValueViewer.
2026-05-13 14:18:28 +08:00
t8y2
e87876c923
feat(driver-store): badge-style version/size, refresh button, fix dameng icon
...
- Show version and size as rounded badges instead of plain text
- Display remote version with amber badge when update available
- Add refresh button to clear registry cache and reload
- Add invalidate_agent_registry_cache Tauri command
- Fix dameng icon mapping (dameng -> dm)
2026-05-13 12:26:56 +08:00
t8y2
bc687cee7f
feat(agent): add reinstall JRE button in Driver Manager
2026-05-13 05:05:00 +08:00
t8y2
e85f9df1fe
feat(agent): pluggable database drivers via JDBC agent subprocess
...
Migrate domestic database support (DaMeng, KingBase, Vastbase, GoldenDB) from
built-in ODBC/protocol drivers to standalone Java agent processes communicating
via stdin/stdout JSON-RPC 2.0. Agents are distributed as fat JARs with embedded
JDBC drivers, downloaded on-demand from GitHub Releases with proxy fallback.
- Add AgentDriverClient for subprocess lifecycle + JSON-RPC communication
- Add AgentManager for JRE/JAR install state management
- Add Tauri commands for driver install/uninstall/list
- Add DriverManager UI panel in settings dialog
- Extend DatabaseType with Kingbase, Vastbase, Goldendb variants
- Migrate Dameng from ODBC (dm_driver.rs) to JDBC agent
- Delete dm_driver.rs (343 lines)
- Add GitHub proxy fallback for downloads (update.hwdns.net, gh-proxy.org)
Agent code lives at https://github.com/t8y2/dbx-agents
2026-05-13 04:44:52 +08:00
t8y2
83216b2765
feat(docs): 升级首页与更新日志
2026-05-13 01:04:58 +08:00
t8y2
bf58045a28
Revert "feat(cli): add dbx-cli runtime and agent integration ( #229 )"
...
This reverts commit 58c47adef5 , reversing
changes made to 3bcec8ef7f .
2026-05-12 17:31:54 +08:00
Illuminated2020
636f4ee055
fix(agent-runtime): 修正 handoff 风险重算连接来源
2026-05-12 16:52:35 +08:00
Illuminated2020
780311a542
feat(agent-runtime): 接入 handoff 审阅状态
...
- 支持 handoff queued/shown 状态加载、mark shown 和 reject 持久化
- 为 Tauri/API/Pinia store 接入 handoff 审阅状态流转
- 新增 AgentHandoffDialog 审阅 UI,拒绝操作不执行 SQL
2026-05-12 16:52:34 +08:00
Illuminated2020
9425658ecd
feat(agent-runtime): 新增 Tauri agent runtime 服务
...
- 启动独立 localhost server 并写入 owner-only discovery
- 提供 token 认证的 context、selection、result 和 handoff 端点
- 接入 Tauri 启动、invoke 命令和退出清理
- 补充认证、路由、discovery 权限与 symlink 防护测试
2026-05-12 16:49:29 +08:00
t8y2
368fa5a102
feat(redis): add bulk operations and command runner
2026-05-12 13:38:43 +08:00
t8y2
70db0aa62c
refactor(ci): switch 1Panel appstore to community repo and manual trigger
2026-05-11 11:41:51 +08:00
t8y2
6d513afc16
feat(objects): show routines in object browser
2026-05-10 21:14:16 +08:00
t8y2
10bfede1c7
feat(jdbc): add optional JDBC plugin support
2026-05-10 12:57:38 +08:00
t8y2
b013a2ac29
feat(sql): persist SQL library in app database
2026-05-10 00:41:17 +08:00
t8y2
5c52560368
feat(schema): 增加数据库对象列表缓存
2026-05-09 17:36:20 +08:00
t8y2
1a1f128f2b
feat: Redis browser overhaul — Navicat-style table, editing, and pagination
...
- Unified key table with columns: key, type, value preview, size, TTL
- Top-bottom split layout: key table above, value detail below
- Virtual scrolling via RecycleScroller for large key sets
- ZSet editing: add/remove members with scores
- TTL inline editing: click badge to modify expiration
- Batch key deletion with checkbox selection
- Paginated loading for Hash/Set/ZSet/List values (HSCAN/SSCAN/ZSCAN)
- Debounced auto-search (400ms) for key filtering
- Value previews fetched during key scan for instant display
2026-05-09 11:45:50 +08:00
t8y2
d6e273e136
feat: custom titlebar with integrated window controls
...
- macOS: overlay mode with native traffic lights, toolbar as drag region
- Windows/Linux: frameless window with custom minimize/maximize/close buttons
- Double-click toolbar to toggle maximize
2026-05-09 10:44:34 +08:00
t8y2
68c0639e3a
feat: persist and restore window state across sessions
2026-05-08 00:12:09 +08:00
rarnu
814fda7433
add: 增加对于查询得到的结果集直接进行数据编辑的功能。当查询是单表且包含主键(有联合主键时包含全部主键)时,可以在结果集内双击单元格修改数据,修改结果以事务形式提交或回滚。
2026-05-07 15:09:59 +08:00
t8y2
41445ff474
chore: add rustfmt.toml and apply unified code formatting
2026-05-05 14:16:18 +08:00
t8y2
f9a9945f1f
feat: migrate storage from JSON files to SQLite
...
Replace all JSON file storage (connections, secrets, history, AI config,
conversations, sidebar layout) with a single SQLite database (dbx.db).
Auto-migrates existing JSON data on first launch, renaming old files to
.bak. Remove keyring dependency — passwords now stored in SQLite.
2026-05-05 04:48:45 +08:00
t8y2
af9c206d75
feat: add auto-update support via tauri-plugin-updater
2026-05-04 18:14:40 +08:00
t8y2
bc7f521604
feat: add connection group management and sidebar layout persistence
2026-05-04 13:52:42 +08:00
t8y2
ae21053f69
feat: add execute_multi command and update query handling for multiple results
2026-05-04 02:55:19 +08:00
t8y2
3cd328ece8
feat: enhance application run logic to handle macOS window reopening
2026-05-03 18:50:12 +08:00
t8y2
aa59c26fa2
feat: add MCP bridge for AI agent integration
...
Localhost HTTP listener (dynamic port) allows MCP Server and other AI agents
to open tables directly in DBX UI via Tauri events.
2026-05-03 14:35:48 +08:00
SuLea-IT
4d6cd5351c
fix: address lineage review feedback
2026-05-03 06:02:39 +08:00
SuLea-IT
2ebd72b3b7
feat: import table data from files
2026-05-02 19:04:41 +08:00
SuLe
15fa5b0d2c
execute sql files with progress
2026-05-02 04:47:43 +08:00
t8y2
3f71cd6dfa
feat: enhance AI functionality with conversation management and cancellation
2026-05-02 03:05:02 +08:00
t8y2
65cd285567
feat: add AiApiStyle support and integrate into AI completion and streaming functions
2026-05-01 12:10:32 +08:00
806a855ef0
Add query cancellation controls ( #41 )
...
Co-authored-by: SuLe <sule@SuLedeMacBook-Air.local >
Co-authored-by: skyler <77960507+t8y2@users.noreply.github.com >
2026-05-01 00:05:15 +08:00
t8y2
c840ab4e45
feat: implement data transfer functionality with progress tracking
2026-05-01 00:00:59 +08:00