aboutsummaryrefslogtreecommitdiffstats
path: root/packages/db/schema.ts
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2025-12-22 16:59:04 +0200
committerGitHub <noreply@github.com>2025-12-22 14:59:04 +0000
commit0bdba54ba24a14e7dc2cfab64084452756bccce7 (patch)
treee7158eec50a462b58f1c25dbd9caf18d483e2e5e /packages/db/schema.ts
parentece68ed078be3f6d66b5dcd7de8ba9853d48be27 (diff)
downloadkarakeep-0bdba54ba24a14e7dc2cfab64084452756bccce7.tar.zst
feat: Add user settings to disable auto tagging/summarization (#2275)
* feat: Add per-user settings to disable auto-tagging and auto-summarization This commit adds user-level controls for AI features when they are enabled on the server. Users can now toggle auto-tagging and auto-summarization on/off from the AI Settings page. Changes: - Added autoTaggingEnabled and autoSummarizationEnabled fields to user table - Updated user settings schemas and API endpoints to handle new fields - Modified inference workers to check user preferences before processing - Added toggle switches to AI Settings page (only visible when server has features enabled) - Generated database migration for new fields - Exposed enableAutoTagging and enableAutoSummarization in client config The settings default to null (use server default). When explicitly set to false, the user's bookmarks will skip the respective AI processing. * revert migration * i18n --------- Co-authored-by: Claude <noreply@anthropic.com>
Diffstat (limited to 'packages/db/schema.ts')
-rw-r--r--packages/db/schema.ts6
1 files changed, 6 insertions, 0 deletions
diff --git a/packages/db/schema.ts b/packages/db/schema.ts
index fbb8d24f..278da072 100644
--- a/packages/db/schema.ts
+++ b/packages/db/schema.ts
@@ -77,6 +77,12 @@ export const users = sqliteTable("user", {
readerFontFamily: text("readerFontFamily", {
enum: ["serif", "sans", "mono"],
}),
+
+ // AI Settings (nullable = opt-in, null means use server default)
+ autoTaggingEnabled: integer("autoTaggingEnabled", { mode: "boolean" }),
+ autoSummarizationEnabled: integer("autoSummarizationEnabled", {
+ mode: "boolean",
+ }),
});
export const accounts = sqliteTable(