@grindxp/cli 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,236 @@
1
+ CREATE TABLE `companion_insights` (
2
+ `id` text PRIMARY KEY NOT NULL,
3
+ `user_id` text NOT NULL,
4
+ `category` text NOT NULL,
5
+ `content` text NOT NULL,
6
+ `confidence` real DEFAULT 0.7 NOT NULL,
7
+ `source` text DEFAULT 'ai-observed' NOT NULL,
8
+ `metadata` text DEFAULT '{}' NOT NULL,
9
+ `created_at` integer NOT NULL,
10
+ `updated_at` integer NOT NULL,
11
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
12
+ );
13
+ --> statement-breakpoint
14
+ CREATE INDEX `companion_insights_user_updated_idx` ON `companion_insights` (`user_id`,`updated_at`);--> statement-breakpoint
15
+ CREATE INDEX `companion_insights_user_category_idx` ON `companion_insights` (`user_id`,`category`);--> statement-breakpoint
16
+ CREATE TABLE `companion_settings` (
17
+ `id` text PRIMARY KEY NOT NULL,
18
+ `user_id` text NOT NULL,
19
+ `name` text,
20
+ `emoji` text,
21
+ `mode` text DEFAULT 'suggest' NOT NULL,
22
+ `trust_level` integer DEFAULT 0 NOT NULL,
23
+ `trust_score` integer DEFAULT 0 NOT NULL,
24
+ `provider` text DEFAULT 'anthropic' NOT NULL,
25
+ `model` text DEFAULT 'claude-3-5-haiku-latest' NOT NULL,
26
+ `system_prompt` text,
27
+ `user_context` text,
28
+ `config` text DEFAULT '{}' NOT NULL,
29
+ `created_at` integer NOT NULL,
30
+ `updated_at` integer NOT NULL,
31
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
32
+ );
33
+ --> statement-breakpoint
34
+ CREATE UNIQUE INDEX `companion_settings_user_idx` ON `companion_settings` (`user_id`);--> statement-breakpoint
35
+ CREATE TABLE `conversations` (
36
+ `id` text PRIMARY KEY NOT NULL,
37
+ `user_id` text NOT NULL,
38
+ `title` text,
39
+ `created_at` integer NOT NULL,
40
+ `updated_at` integer NOT NULL,
41
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
42
+ );
43
+ --> statement-breakpoint
44
+ CREATE INDEX `conversations_user_updated_idx` ON `conversations` (`user_id`,`updated_at`);--> statement-breakpoint
45
+ CREATE TABLE `forge_rules` (
46
+ `id` text PRIMARY KEY NOT NULL,
47
+ `user_id` text NOT NULL,
48
+ `name` text NOT NULL,
49
+ `trigger_type` text NOT NULL,
50
+ `trigger_config` text DEFAULT '{}' NOT NULL,
51
+ `action_type` text NOT NULL,
52
+ `action_config` text DEFAULT '{}' NOT NULL,
53
+ `enabled` integer DEFAULT true NOT NULL,
54
+ `created_at` integer NOT NULL,
55
+ `updated_at` integer NOT NULL,
56
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
57
+ );
58
+ --> statement-breakpoint
59
+ CREATE INDEX `forge_rules_user_enabled_idx` ON `forge_rules` (`user_id`,`enabled`);--> statement-breakpoint
60
+ CREATE TABLE `forge_runs` (
61
+ `id` text PRIMARY KEY NOT NULL,
62
+ `user_id` text NOT NULL,
63
+ `rule_id` text NOT NULL,
64
+ `trigger_type` text NOT NULL,
65
+ `trigger_payload` text DEFAULT '{}' NOT NULL,
66
+ `action_type` text NOT NULL,
67
+ `action_payload` text DEFAULT '{}' NOT NULL,
68
+ `status` text NOT NULL,
69
+ `dedupe_key` text NOT NULL,
70
+ `error` text,
71
+ `started_at` integer NOT NULL,
72
+ `finished_at` integer NOT NULL,
73
+ `created_at` integer NOT NULL,
74
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade,
75
+ FOREIGN KEY (`rule_id`) REFERENCES `forge_rules`(`id`) ON UPDATE no action ON DELETE cascade
76
+ );
77
+ --> statement-breakpoint
78
+ CREATE INDEX `forge_runs_user_started_idx` ON `forge_runs` (`user_id`,`started_at`);--> statement-breakpoint
79
+ CREATE INDEX `forge_runs_rule_started_idx` ON `forge_runs` (`rule_id`,`started_at`);--> statement-breakpoint
80
+ CREATE UNIQUE INDEX `forge_runs_rule_dedupe_idx` ON `forge_runs` (`rule_id`,`dedupe_key`);--> statement-breakpoint
81
+ CREATE TABLE `messages` (
82
+ `id` text PRIMARY KEY NOT NULL,
83
+ `conversation_id` text NOT NULL,
84
+ `role` text NOT NULL,
85
+ `content` text NOT NULL,
86
+ `tool_calls` text,
87
+ `tool_results` text,
88
+ `attachments` text,
89
+ `created_at` integer NOT NULL,
90
+ FOREIGN KEY (`conversation_id`) REFERENCES `conversations`(`id`) ON UPDATE no action ON DELETE cascade
91
+ );
92
+ --> statement-breakpoint
93
+ CREATE INDEX `messages_conversation_idx` ON `messages` (`conversation_id`,`created_at`);--> statement-breakpoint
94
+ CREATE TABLE `prompt_history` (
95
+ `id` text PRIMARY KEY NOT NULL,
96
+ `user_id` text NOT NULL,
97
+ `content` text NOT NULL,
98
+ `created_at` integer NOT NULL,
99
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
100
+ );
101
+ --> statement-breakpoint
102
+ CREATE INDEX `prompt_history_user_created_idx` ON `prompt_history` (`user_id`,`created_at`);--> statement-breakpoint
103
+ CREATE TABLE `proofs` (
104
+ `id` text PRIMARY KEY NOT NULL,
105
+ `quest_log_id` text NOT NULL,
106
+ `type` text NOT NULL,
107
+ `confidence` real,
108
+ `data` text DEFAULT '{}' NOT NULL,
109
+ `created_at` integer NOT NULL,
110
+ FOREIGN KEY (`quest_log_id`) REFERENCES `quest_logs`(`id`) ON UPDATE no action ON DELETE cascade
111
+ );
112
+ --> statement-breakpoint
113
+ CREATE INDEX `proofs_quest_log_idx` ON `proofs` (`quest_log_id`);--> statement-breakpoint
114
+ CREATE TABLE `quest_logs` (
115
+ `id` text PRIMARY KEY NOT NULL,
116
+ `quest_id` text NOT NULL,
117
+ `user_id` text NOT NULL,
118
+ `completed_at` integer NOT NULL,
119
+ `duration_minutes` integer,
120
+ `xp_earned` integer NOT NULL,
121
+ `proof_type` text NOT NULL,
122
+ `proof_data` text DEFAULT '{}' NOT NULL,
123
+ `streak_day` integer DEFAULT 0 NOT NULL,
124
+ `created_at` integer NOT NULL,
125
+ FOREIGN KEY (`quest_id`) REFERENCES `quests`(`id`) ON UPDATE no action ON DELETE cascade,
126
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
127
+ );
128
+ --> statement-breakpoint
129
+ CREATE INDEX `quest_logs_quest_completed_idx` ON `quest_logs` (`quest_id`,`completed_at`);--> statement-breakpoint
130
+ CREATE INDEX `quest_logs_user_completed_idx` ON `quest_logs` (`user_id`,`completed_at`);--> statement-breakpoint
131
+ CREATE TABLE `quests` (
132
+ `id` text PRIMARY KEY NOT NULL,
133
+ `user_id` text NOT NULL,
134
+ `parent_id` text,
135
+ `title` text NOT NULL,
136
+ `description` text,
137
+ `type` text NOT NULL,
138
+ `difficulty` text NOT NULL,
139
+ `status` text DEFAULT 'available' NOT NULL,
140
+ `objectives` text DEFAULT '[]' NOT NULL,
141
+ `skill_tags` text DEFAULT '[]' NOT NULL,
142
+ `schedule_cron` text,
143
+ `streak_count` integer DEFAULT 0 NOT NULL,
144
+ `base_xp` integer DEFAULT 10 NOT NULL,
145
+ `metadata` text DEFAULT '{}' NOT NULL,
146
+ `deadline_at` integer,
147
+ `completed_at` integer,
148
+ `created_at` integer NOT NULL,
149
+ `updated_at` integer NOT NULL,
150
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade,
151
+ FOREIGN KEY (`parent_id`) REFERENCES `quests`(`id`) ON UPDATE no action ON DELETE set null
152
+ );
153
+ --> statement-breakpoint
154
+ CREATE INDEX `quests_user_status_idx` ON `quests` (`user_id`,`status`);--> statement-breakpoint
155
+ CREATE INDEX `quests_user_updated_idx` ON `quests` (`user_id`,`updated_at`);--> statement-breakpoint
156
+ CREATE INDEX `quests_status_deadline_idx` ON `quests` (`status`,`deadline_at`);--> statement-breakpoint
157
+ CREATE INDEX `quests_parent_idx` ON `quests` (`parent_id`);--> statement-breakpoint
158
+ CREATE INDEX `quests_user_title_idx` ON `quests` (`user_id`,`title`);--> statement-breakpoint
159
+ CREATE TABLE `rituals` (
160
+ `id` text PRIMARY KEY NOT NULL,
161
+ `user_id` text NOT NULL,
162
+ `name` text NOT NULL,
163
+ `description` text,
164
+ `frequency` text NOT NULL,
165
+ `state` text DEFAULT 'active' NOT NULL,
166
+ `schedule_cron` text,
167
+ `window_start` text,
168
+ `window_end` text,
169
+ `streak_current` integer DEFAULT 0 NOT NULL,
170
+ `streak_best` integer DEFAULT 0 NOT NULL,
171
+ `metadata` text DEFAULT '{}' NOT NULL,
172
+ `created_at` integer NOT NULL,
173
+ `updated_at` integer NOT NULL,
174
+ `completed_at` integer,
175
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
176
+ );
177
+ --> statement-breakpoint
178
+ CREATE INDEX `rituals_user_state_idx` ON `rituals` (`user_id`,`state`);--> statement-breakpoint
179
+ CREATE TABLE `signals` (
180
+ `id` text PRIMARY KEY NOT NULL,
181
+ `user_id` text NOT NULL,
182
+ `source` text NOT NULL,
183
+ `type` text NOT NULL,
184
+ `confidence` real NOT NULL,
185
+ `payload` text DEFAULT '{}' NOT NULL,
186
+ `detected_at` integer NOT NULL,
187
+ `ingested_at` integer NOT NULL,
188
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
189
+ );
190
+ --> statement-breakpoint
191
+ CREATE INDEX `signals_user_detected_idx` ON `signals` (`user_id`,`detected_at`);--> statement-breakpoint
192
+ CREATE TABLE `skills` (
193
+ `id` text PRIMARY KEY NOT NULL,
194
+ `user_id` text NOT NULL,
195
+ `parent_id` text,
196
+ `name` text NOT NULL,
197
+ `category` text NOT NULL,
198
+ `xp` integer DEFAULT 0 NOT NULL,
199
+ `level` integer DEFAULT 0 NOT NULL,
200
+ `metadata` text DEFAULT '{}' NOT NULL,
201
+ `created_at` integer NOT NULL,
202
+ `updated_at` integer NOT NULL,
203
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade,
204
+ FOREIGN KEY (`parent_id`) REFERENCES `skills`(`id`) ON UPDATE no action ON DELETE set null
205
+ );
206
+ --> statement-breakpoint
207
+ CREATE UNIQUE INDEX `skills_user_name_idx` ON `skills` (`user_id`,`name`);--> statement-breakpoint
208
+ CREATE INDEX `skills_parent_idx` ON `skills` (`parent_id`);--> statement-breakpoint
209
+ CREATE INDEX `skills_user_category_idx` ON `skills` (`user_id`,`category`);--> statement-breakpoint
210
+ CREATE TABLE `trust_log` (
211
+ `id` text PRIMARY KEY NOT NULL,
212
+ `user_id` text NOT NULL,
213
+ `level` integer NOT NULL,
214
+ `action` text NOT NULL,
215
+ `outcome` text NOT NULL,
216
+ `trust_delta` integer NOT NULL,
217
+ `metadata` text DEFAULT '{}' NOT NULL,
218
+ `created_at` integer NOT NULL,
219
+ FOREIGN KEY (`user_id`) REFERENCES `users`(`id`) ON UPDATE no action ON DELETE cascade
220
+ );
221
+ --> statement-breakpoint
222
+ CREATE INDEX `trust_log_user_created_idx` ON `trust_log` (`user_id`,`created_at`);--> statement-breakpoint
223
+ CREATE TABLE `users` (
224
+ `id` text PRIMARY KEY NOT NULL,
225
+ `display_name` text NOT NULL,
226
+ `level` integer DEFAULT 1 NOT NULL,
227
+ `total_xp` integer DEFAULT 0 NOT NULL,
228
+ `timezone` text DEFAULT 'UTC' NOT NULL,
229
+ `locale` text DEFAULT 'en-US' NOT NULL,
230
+ `notifications_enabled` integer DEFAULT true NOT NULL,
231
+ `companion_enabled` integer DEFAULT false NOT NULL,
232
+ `preferred_model` text,
233
+ `metadata` text DEFAULT '{}' NOT NULL,
234
+ `created_at` integer NOT NULL,
235
+ `updated_at` integer NOT NULL
236
+ );