Releases: pardnchiu/KuraDB
Release list
v0.4.2
v0.4.1 -> v0.4.2
Summary
Lets the server pin to a fixed port across restarts instead of always picking a random one. Worker footer links get a small update alongside it.
翻譯
伺服器現在可固定在指定連接埠上重啟,不再每次隨機挑選。同時更新 worker 頁尾連結。
Changes
FEAT
- Add fixed port control and update footer links (@pardnchiu) [d62b361]
翻譯
- 新增固定連接埠控制並更新頁尾連結
Scope
cmd/app/— FEAT (commands.go,http.go,main.go)internal/api/router.go— FEATinternal/config/config.go— FEATMakefile— FEATworker/public/— FEAT (index.html,zh/index.html)
Generated by SKILL
v0.4.1
v0.4.0 -> v0.4.1
Summary
Hotfixes make build so it no longer installs the binary to the system PATH as a side effect, restoring the contract expected by the release installer script.
翻譯
修正 make build 誤將二進位檔安裝至系統路徑的副作用,恢復安裝腳本原本預期的建置契約。
Changes
FIX
- Stop make build from installing binary to system PATH (@pardnchiu) [5ea3ed9]
翻譯
- 修正
make build誤將二進位檔安裝至系統路徑
Scope
Makefile— FIX
Generated by SKILL
v0.4.0
v0.3.1 -> v0.4.0
Summary
Adds a daemon mode with background forking and a stop subcommand, and consolidates keyword and semantic search into a single API handler. The worker landing site is rebuilt with internationalization after a brief removal, alongside a new bilingual documentation set.
翻譯
新增背景常駐模式與 stop 子指令,並將關鍵字與語意搜尋整合進單一 API handler。官網於短暫下架後以多語系重新上線,同時新增雙語文件。
Changes
FEAT
- Daemonize server with background fork and stop subcommand (@pardnchiu) [22aca4b]
- Add KuraDB worker static site with i18n (@pardnchiu) [dfae6b5]
- Add KuraDB landing site as Cloudflare Worker and host installer (@pardnchiu) [b5c53df]
翻譯
- 伺服器新增背景常駐模式與 stop 子指令
- 新增支援多語系的 KuraDB 官網靜態站
- 新增 KuraDB 官網作為 Cloudflare Worker 並附安裝腳本
REFACTOR
- Consolidate keyword and semantic search into unified /api/search handler (@pardnchiu) [9f79291]
翻譯
- 將關鍵字與語意搜尋整合為統一的 /api/search handler
CHORE
- Bump go-pkg dependency (@pardnchiu) [af9a8ba]
翻譯
- 升級 go-pkg 相依套件
DOC
- Add bilingual README, architecture, and technical documentation (@pardnchiu) [995d620]
翻譯
- 新增雙語 README、架構與技術文件
Scope
cmd/app/,internal/runtime/,Makefile— FEATinternal/api/handler/,internal/api/router.go— REFACTORworker/— FEAT, REMOVEdoc/,README.md— DOCgo.mod,go.sum— CHORE
Generated by SKILL
v0.3.1
v0.3.0 -> v0.3.1
Summary
Modernizes the SQLite layer with a read/write-split connection pool and guards oversized embedding input. Prunes dead weight by deleting unreferenced functions and a fully-commented integration package. Tests realign with the new connection split.
翻譯
將 SQLite 連線層改為讀寫分離連線池,並對過長的 embedding 輸入加上保護。移除無引用函式與整檔註解的整合套件以清理死碼。測試同步對齊新的連線分流。
Changes
REFACTOR
- Swap DB connection layer to go-sqlkit and guard embedding input length (@pardnchiu) [3eaa08c]
翻譯
- 連線層改用 go-sqlkit 讀寫分離池,並限制 embedding 輸入長度
REMOVE
- Delete dead functions and fully-commented agenvoy package (@pardnchiu) [de6d092]
翻譯
- 移除無引用函式與整檔註解的 agenvoy package
TEST
- Align database handler tests with go-sqlkit read/write split (@pardnchiu) [5a133fb]
翻譯
- 對齊資料庫 handler 測試至 go-sqlkit 讀寫分離
Scope
internal/database/— REFACTOR, REMOVEinternal/openai/— REFACTOR, REMOVEinternal/agenvoy/— REMOVEinternal/vector/setAndGet.go— REMOVEcmd/app/http.go— REMOVEtests/internal/database/handler/— TESTgo.mod,go.sum— REFACTOR
Generated by SKILL
v0.3.0
v0.2.0 -> v0.3.0
Summary
Aligns the keychain service identifier to lowercase, breaking existing keychain lookups that stored secrets under the old casing.
翻譯
將 keychain service 名稱統一為小寫,既有以舊大小寫儲存的 secret 需重新設定。⚠️ Breaking Changes
Keychain service name changed from "KuraDB" to "kuradb"
Before:
go_pkg_keychain.Init("KuraDB", configDir)After:
go_pkg_keychain.Init("kuradb", configDir)Migration:
macOS — re-add the secret under the new service name:
security add-generic-password -s "kuradb" -a "OPENAI_API_KEY" -w "<your-key>" -ULinux (secret-tool) — store under the new service:
echo -n "<your-key>" | secret-tool store --label="kuradb OPENAI_API_KEY" service kuradb username OPENAI_API_KEYAlternatively, set the environment variable OPENAI_API_KEY directly — the keychain fallback chain still reads os.Getenv as last resort.
翻譯
Keychain service 名稱從 "KuraDB" 改為 "kuradb"。既有 keychain 條目需以新 service 名稱重新儲存,或改用環境變數 OPENAI_API_KEY 作為 fallback。
Changes
BREAKING
- Change keychain service name from "KuraDB" to "kuradb" for lowercase consistency [921354f]
翻譯
- Keychain service 名稱從 "KuraDB" 改為 "kuradb",對齊小寫慣例
Scope
cmd/app/main.go— BREAKING
Generated by SKILL
v0.2.0
v0.1.0 -> v0.2.0
Summary
Rewires the server bootstrap so OpenAI secrets live in the OS keychain instead of a plaintext dotfile, lowercases the config directory to align with Unix conventions, and persists the listening URL to a fixed path for downstream consumers. Agenvoy tool manifest registration is paused while the surface stabilizes.
翻譯
重整 server 啟動流程:OpenAI 密鑰改由作業系統 keychain 讀取而非明文 dotfile、配置目錄改為小寫對齊 Unix 慣例、並將監聽 URL 寫入固定路徑供下游消費者取用。Agenvoy tool manifest 註冊在介面穩定前暫時停用。⚠️ Breaking Changes
Config directory renamed to lowercase
Before: ~/.config/KuraDB/
After: ~/.config/kuradb/
Migration:
mv ~/.config/KuraDB ~/.config/kuradb翻譯
配置目錄全小寫化以對齊 Unix 慣例與 ~/.config/agenvoy/。symlink ~/Kura_<db> 與品牌名 KuraDB 不變。
.env no longer auto-loaded by the binary
The joho/godotenv dependency was removed. .env is now sourced via the Makefile's include .env + export block. Running ./bin/kura directly no longer picks up .env.
Migration (pick one):
- Run through
make appso.envis loaded by Make. - Or move the API key into the OS keychain (now the primary lookup):
# macOS security add-generic-password -s KuraDB -a OPENAI_API_KEY -w sk-... # Linux echo -n "sk-..." | secret-tool store --label "KuraDB/OPENAI_API_KEY" \ service KuraDB account OPENAI_API_KEY
- Or export the key in the parent shell before invoking the binary.
翻譯
OPENAI_API_KEY 優先從 OS keychain 讀取(macOS security / Linux secret-tool),找不到才退回 os.Getenv。.env 載入由 Makefile 接手,binary 直接呼叫時不再自動套用。
Agenvoy tool manifest registration paused
runHTTP no longer writes ~/.config/agenvoy/tools/api/rag_*.json on startup or removes them on shutdown. Existing manifests from prior versions are not cleaned up automatically.
Migration:
rm -f ~/.config/agenvoy/tools/api/rag_search_keyword.json
rm -f ~/.config/agenvoy/tools/api/rag_search_semantic.json
rm -f ~/.config/agenvoy/tools/api/rag_list_db.jsonConsumers should read the new endpoint file (~/.config/kuradb/endpoint) for the current server URL instead.
翻譯
agenvoy.Register / Unregister 暫時註解,等介面穩定後恢復。消費者改讀 ~/.config/kuradb/endpoint 取得當前 server URL。
Changes
FEAT
- Write
http://localhost:<port>to~/.config/kuradb/endpointon startup, remove on shutdown (@pardnchiu) [bebdcd0]
翻譯
- 啟動時將 server URL 寫入
~/.config/kuradb/endpoint,shutdown 時移除
REFACTOR
- Rework server bootstrap: keychain-first
OPENAI_API_KEYlookup, lowercase config dir, paused Agenvoy registration (@pardnchiu) [bebdcd0]
翻譯
- 重整啟動流程:
OPENAI_API_KEY改 keychain 優先、配置目錄改小寫、暫停 Agenvoy 註冊
CHORE
- Drop
github.com/joho/godotenv; delegate.envloading toMakefile(@pardnchiu) [bebdcd0]
翻譯
- 移除
github.com/joho/godotenv依賴,.env載入改由Makefile接管
Scope
cmd/app/main.go— REFACTORcmd/app/http.go— FEAT, REFACTORinternal/openai/openai.go— REFACTORinternal/agenvoy/agenvoy.go— REFACTORMakefile— UPDATEgo.mod,go.sum— CHORE
Generated by SKILL
v0.1.0
v0.0.0 -> v0.1.0
Summary
Initial release of KuraDB, a read-only RAG database that ingests local files, embeds them, and serves semantic and keyword search to the Agenvoy ecosystem. Storage centers on a single source of truth with an in-memory vector cache rebuilt at startup. Multi-database registry, two-stage retrieval, and a persistent query embedding cache round out the surface.
翻譯
KuraDB 首版發布。一套唯讀 RAG 資料庫服務,匯入本地檔案、產生向量並向 Agenvoy 生態提供語意與關鍵字搜尋。儲存以單一資料源為核心,啟動時重建記憶體向量索引;包含多資料庫註冊、兩階段檢索與持久化 query embedding 快取。Changes
FEAT
- Ingest CSV/XLSX, gate unknown files via UTF-8 sniff, relocate Agenvoy manifests (@pardnchiu) [25511ae]
- Persist query embedding cache in database (@pardnchiu) [c3c7636]
- Add API endpoint to list running and registered databases (@pardnchiu) [ae44e6d]
- Add Markdown and text file parsing with long paragraph splitting (@pardnchiu) [4ea736a]
- Add DB registry CLI and Agenvoy RAG tool registration (@pardnchiu) [991b868]
- Add search API with semantic and keyword retrieval (@pardnchiu) [ea1ce60]
- Add embedding cache preload and reset stale vectors (@pardnchiu) [8e390c4]
- Add background embedding pipeline and persistence support (@pardnchiu) [a65c446]
- Add Office document parsers and indexing integration (@pardnchiu) [e1420db]
- Add env-based workspace setup and snapshot persistence (@pardnchiu) [df28320]
- Add file dismissal timestamps and recursive dismiss sync (@pardnchiu) [61b8e97]
- Add SQLite-backed file storage and PDF ingestion pipeline (@pardnchiu) [ac1bf97]
- Add PDF parsing support during file change detection (@pardnchiu) [7c0d88c]
- Add file polling worker (@pardnchiu) [6ebe1ce]
翻譯
- 新增 CSV/XLSX 匯入,未知副檔名以 UTF-8 sniff 過濾,搬遷 Agenvoy manifest 目錄
- 持久化 query embedding 快取至 SQLite
- 新增列出運行中與已註冊資料庫的 API endpoint
- 新增 Markdown 與純文字檔解析,含長段落保護
- 新增 DB registry CLI 與 Agenvoy RAG tool 註冊
- 新增語意與關鍵字搜尋 API
- 啟動時預載 embedding 快取並重置 stale 向量
- 新增背景 embedding pipeline 與持久化支援
- 新增 Office 文件解析(DOCX / PPTX)與索引整合
- 新增環境變數 workspace 設定與 snapshot 持久化
- 新增檔案 dismiss 時間戳與遞迴 dismiss 同步
- 新增 SQLite 檔案儲存與 PDF 匯入 pipeline
- 新增 PDF 解析支援於檔案變動偵測流程
- 新增檔案輪詢 worker
UPDATE
- Pass vector cache into embedder and reduce embedding dimensions (@pardnchiu) [321756f]
- Add env ignore and file timestamps to parser data (@pardnchiu) [be90942]
翻譯
- 將 vector cache 傳入 embedder 並縮減 embedding 維度
- 加入 env 忽略名單與檔案時間戳至 parser 資料
REFACTOR
- Move module path to github.com/agenvoy/kuradb and bump go-pkg to v0.12.1 (@pardnchiu) [8edf9a0]
- Migrate shared utils and parser code to go-pkg (@pardnchiu) [2993b98]
- Restructure multi-db RAG runtime and search pipeline (@pardnchiu) [f582a9b]
- Rename module path and storage directories to KuraDB (@pardnchiu) [393126d]
- Move database handlers into dedicated package (@pardnchiu) [ee4ff30]
- Extract database dismiss and upsert into dedicated files (@pardnchiu) [a33442b]
翻譯
- 模組路徑遷移至 github.com/agenvoy/kuradb,升級 go-pkg 至 v0.12.1
- 共用 utils 與 parser 抽離至 go-pkg
- 重構多資料庫 RAG runtime 與搜尋 pipeline
- 模組路徑與儲存目錄改名為 KuraDB
- database handler 移至獨立 package
- 拆分 dismiss 與 upsert 至各自檔案
TEST
- Add integration tests for filesystem, parser, openai, database handler packages (@pardnchiu) [a83ebc6]
翻譯
- 新增 filesystem、parser、openai、database handler 等 package 的整合測試
Scope
cmd/app/— FEAT, REFACTORinternal/agenvoy/— FEATinternal/api/— FEATinternal/database/— FEAT, REFACTORinternal/filesystem/— FEATinternal/openai/— FEAT, UPDATEinternal/segmenter/— FEATinternal/vector/— FEAT, UPDATE