* Add tools for creating, retrieving, updating, and deleting thoughts. * Implement project management tools for creating and listing projects. * Introduce linking functionality between thoughts. * Add search and recall capabilities for thoughts based on semantic queries. * Implement statistics and summarization tools for thought analysis. * Create database migrations for thoughts, projects, and links. * Add helper functions for UUID parsing and project resolution.
18 lines
545 B
SQL
18 lines
545 B
SQL
create table if not exists thoughts (
|
|
id uuid default gen_random_uuid() primary key,
|
|
content text not null,
|
|
embedding vector(1536),
|
|
metadata jsonb default '{}'::jsonb,
|
|
created_at timestamptz default now(),
|
|
updated_at timestamptz default now()
|
|
);
|
|
|
|
create index if not exists thoughts_embedding_hnsw_idx
|
|
on thoughts using hnsw (embedding vector_cosine_ops);
|
|
|
|
create index if not exists thoughts_metadata_gin_idx
|
|
on thoughts using gin (metadata);
|
|
|
|
create index if not exists thoughts_created_at_idx
|
|
on thoughts (created_at desc);
|