docs: add missing migrations and documentation (NODE2, DAIS, infra)
This commit is contained in:
74
migrations/016_agent_prompts.sql
Normal file
74
migrations/016_agent_prompts.sql
Normal file
@@ -0,0 +1,74 @@
|
||||
-- Migration 016: Agent System Prompts
|
||||
-- Таблиця для зберігання системних промтів агентів з версіонуванням
|
||||
-- Частина DAIS (Decentralized AI Agent Standard)
|
||||
|
||||
-- ============================================================================
|
||||
-- agent_prompts — системні промти агентів
|
||||
-- ============================================================================
|
||||
|
||||
CREATE TABLE IF NOT EXISTS agent_prompts (
|
||||
id uuid PRIMARY KEY DEFAULT gen_random_uuid(),
|
||||
agent_id text NOT NULL,
|
||||
kind text NOT NULL CHECK (kind IN ('core', 'safety', 'governance', 'tools')),
|
||||
content text NOT NULL,
|
||||
version integer NOT NULL DEFAULT 1,
|
||||
created_at timestamptz NOT NULL DEFAULT now(),
|
||||
created_by text,
|
||||
note text, -- коментар/причина зміни
|
||||
is_active boolean NOT NULL DEFAULT true
|
||||
);
|
||||
|
||||
-- Індекси для швидкого пошуку
|
||||
CREATE INDEX IF NOT EXISTS idx_agent_prompts_agent_kind
|
||||
ON agent_prompts(agent_id, kind, is_active);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_agent_prompts_agent_created_at
|
||||
ON agent_prompts(agent_id, created_at DESC);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_agent_prompts_active
|
||||
ON agent_prompts(is_active) WHERE is_active = true;
|
||||
|
||||
-- ============================================================================
|
||||
-- Початкові дані: базові промти для існуючих агентів
|
||||
-- ============================================================================
|
||||
|
||||
-- Вставляємо дефолтні core промти для кількох ключових агентів
|
||||
INSERT INTO agent_prompts (agent_id, kind, content, version, created_by, note)
|
||||
SELECT
|
||||
id,
|
||||
'core',
|
||||
CASE
|
||||
WHEN kind = 'orchestrator' THEN
|
||||
'You are ' || display_name || ', a senior orchestrator agent in DAARION City. Your role is to coordinate complex multi-agent workflows, delegate tasks efficiently, and ensure smooth collaboration between agents. Maintain professional yet approachable communication.'
|
||||
WHEN kind = 'coordinator' THEN
|
||||
'You are ' || display_name || ', a coordinator agent in DAARION City. Your role is to manage workflows, track progress, and ensure timely delivery of tasks. Be organized, proactive, and helpful.'
|
||||
WHEN kind = 'developer' THEN
|
||||
'You are ' || display_name || ', a developer agent in DAARION City. Your expertise is in writing clean, efficient code. Explain technical concepts clearly and provide practical solutions.'
|
||||
WHEN kind = 'vision' THEN
|
||||
'You are ' || display_name || ', a vision specialist agent in DAARION City. You analyze images, videos, and visual content. Provide detailed, accurate observations and insights.'
|
||||
WHEN kind = 'research' THEN
|
||||
'You are ' || display_name || ', a research agent in DAARION City. You gather, analyze, and synthesize information from various sources. Be thorough, objective, and cite your sources.'
|
||||
WHEN kind = 'finance' THEN
|
||||
'You are ' || display_name || ', a finance specialist agent in DAARION City. You handle financial analysis, budgeting, and crypto/DeFi operations. Be precise with numbers and transparent about risks.'
|
||||
WHEN kind = 'security' THEN
|
||||
'You are ' || display_name || ', a security agent in DAARION City. You monitor for threats, audit systems, and ensure safety protocols. Be vigilant, thorough, and prioritize security.'
|
||||
WHEN kind = 'marketing' THEN
|
||||
'You are ' || display_name || ', a marketing agent in DAARION City. You create engaging content, manage campaigns, and build community. Be creative, data-driven, and audience-focused.'
|
||||
ELSE
|
||||
'You are ' || display_name || ', an AI agent in DAARION City. You are part of a decentralized autonomous organization. Be helpful, accurate, and collaborative with other agents and humans.'
|
||||
END,
|
||||
1,
|
||||
'SYSTEM',
|
||||
'Initial system prompt from migration 016'
|
||||
FROM agents
|
||||
WHERE is_active = true OR is_active IS NULL
|
||||
ON CONFLICT DO NOTHING;
|
||||
|
||||
-- Коментар
|
||||
COMMENT ON TABLE agent_prompts IS 'Системні промти агентів з версіонуванням. Частина DAIS v1.';
|
||||
COMMENT ON COLUMN agent_prompts.kind IS 'Тип промту: core (основна особистість), safety (обмеження), governance (правила DAO), tools (використання інструментів)';
|
||||
COMMENT ON COLUMN agent_prompts.version IS 'Версія промту, інкрементується при кожній зміні';
|
||||
COMMENT ON COLUMN agent_prompts.is_active IS 'Тільки один промт кожного типу може бути активним для агента';
|
||||
|
||||
SELECT 'Migration 016 completed: agent_prompts table created' AS result;
|
||||
|
||||
Reference in New Issue
Block a user