feat: expand threads and npcs schema with deeper tracking fields

Adds detailed tracking columns to threads (stakes, origin, next beat,
etc.) and npcs (appearance, personality, secrets, disposition, etc.),
plus a migration script to add the columns to existing databases.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
claudecode
2026-07-01 11:56:35 -04:00
parent 85d2cb5581
commit 2e8de105b2
2 changed files with 98 additions and 13 deletions
+42 -13
View File
@@ -130,22 +130,51 @@ CREATE TABLE campaigns (
--- Trackers ---
CREATE TABLE threads (
id INTEGER PRIMARY KEY,
campaign_id INTEGER NOT NULL REFERENCES campaigns(id),
title TEXT NOT NULL,
status TEXT NOT NULL DEFAULT 'active',
notes TEXT,
created_at TEXT NOT NULL DEFAULT (datetime('now'))
id INTEGER PRIMARY KEY,
campaign_id INTEGER NOT NULL REFERENCES campaigns(id),
title TEXT NOT NULL,
status TEXT NOT NULL DEFAULT 'active',
notes TEXT,
related_npcs TEXT,
related_location TEXT,
origin TEXT,
stakes TEXT,
last_development TEXT,
next_beat TEXT,
suspected_resolution TEXT,
created_at TEXT NOT NULL DEFAULT (datetime('now'))
);
CREATE TABLE npcs (
id INTEGER PRIMARY KEY,
campaign_id INTEGER NOT NULL REFERENCES campaigns(id),
name TEXT NOT NULL,
description TEXT,
notes TEXT,
motivations TEXT,
created_at TEXT NOT NULL DEFAULT (datetime('now'))
id INTEGER PRIMARY KEY,
campaign_id INTEGER NOT NULL REFERENCES campaigns(id),
name TEXT NOT NULL,
description TEXT,
notes TEXT,
motivations TEXT,
appearance TEXT,
age TEXT,
gender TEXT,
pronouns TEXT,
voice TEXT,
distinguishing_features TEXT,
faction TEXT,
occupation TEXT,
social_status TEXT,
relationship_to_pc TEXT,
loyalty TEXT,
personality_traits TEXT,
fears TEXT,
desires TEXT,
secrets TEXT,
first_encountered TEXT,
last_seen TEXT,
current_location TEXT,
current_goal TEXT,
role_in_threads TEXT,
alive_status TEXT DEFAULT 'alive',
disposition TEXT DEFAULT 'unknown',
created_at TEXT NOT NULL DEFAULT (datetime('now'))
);
--- Notes ---