sqlew 1.0.0

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.
Files changed (47) hide show
  1. package/ARCHITECTURE.md +636 -0
  2. package/CHANGELOG.md +107 -0
  3. package/LICENSE +21 -0
  4. package/README.md +359 -0
  5. package/assets/schema.sql +320 -0
  6. package/assets/sqlew-logo.png +0 -0
  7. package/dist/constants.d.ts +146 -0
  8. package/dist/constants.d.ts.map +1 -0
  9. package/dist/constants.js +230 -0
  10. package/dist/constants.js.map +1 -0
  11. package/dist/database.d.ts +94 -0
  12. package/dist/database.d.ts.map +1 -0
  13. package/dist/database.js +214 -0
  14. package/dist/database.js.map +1 -0
  15. package/dist/index.d.ts +7 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +771 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/schema.d.ts +50 -0
  20. package/dist/schema.d.ts.map +1 -0
  21. package/dist/schema.js +161 -0
  22. package/dist/schema.js.map +1 -0
  23. package/dist/tools/constraints.d.ts +29 -0
  24. package/dist/tools/constraints.d.ts.map +1 -0
  25. package/dist/tools/constraints.js +192 -0
  26. package/dist/tools/constraints.js.map +1 -0
  27. package/dist/tools/context.d.ts +56 -0
  28. package/dist/tools/context.d.ts.map +1 -0
  29. package/dist/tools/context.js +442 -0
  30. package/dist/tools/context.js.map +1 -0
  31. package/dist/tools/files.d.ts +30 -0
  32. package/dist/tools/files.d.ts.map +1 -0
  33. package/dist/tools/files.js +201 -0
  34. package/dist/tools/files.js.map +1 -0
  35. package/dist/tools/messaging.d.ts +50 -0
  36. package/dist/tools/messaging.d.ts.map +1 -0
  37. package/dist/tools/messaging.js +151 -0
  38. package/dist/tools/messaging.js.map +1 -0
  39. package/dist/tools/utils.d.ts +29 -0
  40. package/dist/tools/utils.d.ts.map +1 -0
  41. package/dist/tools/utils.js +131 -0
  42. package/dist/tools/utils.js.map +1 -0
  43. package/dist/types.d.ts +388 -0
  44. package/dist/types.d.ts.map +1 -0
  45. package/dist/types.js +50 -0
  46. package/dist/types.js.map +1 -0
  47. package/package.json +60 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Schema initialization module
3
+ * Loads and executes SQL schema from docs/schema.sql
4
+ */
5
+ import { Database } from 'better-sqlite3';
6
+ /**
7
+ * Initialize database schema
8
+ * Reads schema.sql and executes all CREATE and INSERT statements
9
+ *
10
+ * @param db - SQLite database connection
11
+ * @throws Error if schema initialization fails
12
+ */
13
+ export declare function initializeSchema(db: Database): void;
14
+ /**
15
+ * Check if schema is already initialized
16
+ * Checks for existence of the agents table
17
+ *
18
+ * @param db - SQLite database connection
19
+ * @returns true if schema exists, false otherwise
20
+ */
21
+ export declare function isSchemaInitialized(db: Database): boolean;
22
+ /**
23
+ * Get schema version information
24
+ * Returns counts of all master tables to verify schema integrity
25
+ *
26
+ * @param db - SQLite database connection
27
+ * @returns Object with table counts
28
+ */
29
+ export declare function getSchemaInfo(db: Database): {
30
+ agents: number;
31
+ files: number;
32
+ context_keys: number;
33
+ layers: number;
34
+ tags: number;
35
+ scopes: number;
36
+ constraint_categories: number;
37
+ };
38
+ /**
39
+ * Verify schema integrity
40
+ * Checks that all required tables, indexes, views, and triggers exist
41
+ *
42
+ * @param db - SQLite database connection
43
+ * @returns Object with integrity check results
44
+ */
45
+ export declare function verifySchemaIntegrity(db: Database): {
46
+ valid: boolean;
47
+ missing: string[];
48
+ errors: string[];
49
+ };
50
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAQ1C;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAyBnD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAUzD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,GAAG;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAwBA;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG;IACnD,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAoFA"}
package/dist/schema.js ADDED
@@ -0,0 +1,161 @@
1
+ /**
2
+ * Schema initialization module
3
+ * Loads and executes SQL schema from docs/schema.sql
4
+ */
5
+ import { readFileSync } from 'fs';
6
+ import { join, dirname } from 'path';
7
+ import { fileURLToPath } from 'url';
8
+ const __filename = fileURLToPath(import.meta.url);
9
+ const __dirname = dirname(__filename);
10
+ /**
11
+ * Initialize database schema
12
+ * Reads schema.sql and executes all CREATE and INSERT statements
13
+ *
14
+ * @param db - SQLite database connection
15
+ * @throws Error if schema initialization fails
16
+ */
17
+ export function initializeSchema(db) {
18
+ try {
19
+ // Read schema file
20
+ const schemaPath = join(__dirname, '..', 'assets', 'schema.sql');
21
+ const schemaSql = readFileSync(schemaPath, 'utf-8');
22
+ // Execute schema in a transaction for atomicity
23
+ db.exec('BEGIN TRANSACTION');
24
+ try {
25
+ // Execute the entire schema
26
+ // SQLite's exec() can handle multiple statements separated by semicolons
27
+ db.exec(schemaSql);
28
+ db.exec('COMMIT');
29
+ console.log('✓ Database schema initialized successfully');
30
+ }
31
+ catch (error) {
32
+ db.exec('ROLLBACK');
33
+ throw error;
34
+ }
35
+ }
36
+ catch (error) {
37
+ const message = error instanceof Error ? error.message : String(error);
38
+ throw new Error(`Failed to initialize schema: ${message}`);
39
+ }
40
+ }
41
+ /**
42
+ * Check if schema is already initialized
43
+ * Checks for existence of the agents table
44
+ *
45
+ * @param db - SQLite database connection
46
+ * @returns true if schema exists, false otherwise
47
+ */
48
+ export function isSchemaInitialized(db) {
49
+ try {
50
+ const result = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='agents'").get();
51
+ return result !== undefined;
52
+ }
53
+ catch (error) {
54
+ return false;
55
+ }
56
+ }
57
+ /**
58
+ * Get schema version information
59
+ * Returns counts of all master tables to verify schema integrity
60
+ *
61
+ * @param db - SQLite database connection
62
+ * @returns Object with table counts
63
+ */
64
+ export function getSchemaInfo(db) {
65
+ const counts = {
66
+ agents: 0,
67
+ files: 0,
68
+ context_keys: 0,
69
+ layers: 0,
70
+ tags: 0,
71
+ scopes: 0,
72
+ constraint_categories: 0,
73
+ };
74
+ try {
75
+ counts.agents = db.prepare('SELECT COUNT(*) as count FROM agents').get().count;
76
+ counts.files = db.prepare('SELECT COUNT(*) as count FROM files').get().count;
77
+ counts.context_keys = db.prepare('SELECT COUNT(*) as count FROM context_keys').get().count;
78
+ counts.layers = db.prepare('SELECT COUNT(*) as count FROM layers').get().count;
79
+ counts.tags = db.prepare('SELECT COUNT(*) as count FROM tags').get().count;
80
+ counts.scopes = db.prepare('SELECT COUNT(*) as count FROM scopes').get().count;
81
+ counts.constraint_categories = db.prepare('SELECT COUNT(*) as count FROM constraint_categories').get().count;
82
+ }
83
+ catch (error) {
84
+ // If tables don't exist yet, return zeros
85
+ }
86
+ return counts;
87
+ }
88
+ /**
89
+ * Verify schema integrity
90
+ * Checks that all required tables, indexes, views, and triggers exist
91
+ *
92
+ * @param db - SQLite database connection
93
+ * @returns Object with integrity check results
94
+ */
95
+ export function verifySchemaIntegrity(db) {
96
+ const result = {
97
+ valid: true,
98
+ missing: [],
99
+ errors: [],
100
+ };
101
+ const requiredTables = [
102
+ 'agents', 'files', 'context_keys', 'constraint_categories', 'layers', 'tags', 'scopes',
103
+ 'decisions', 'decisions_numeric', 'decision_history', 'decision_tags', 'decision_scopes',
104
+ 'agent_messages', 'file_changes', 'constraints', 'constraint_tags',
105
+ ];
106
+ const requiredViews = [
107
+ 'tagged_decisions', 'active_context', 'layer_summary',
108
+ 'unread_messages_by_priority', 'recent_file_changes', 'tagged_constraints',
109
+ ];
110
+ const requiredTriggers = [
111
+ 'cleanup_old_messages', 'cleanup_old_file_changes', 'record_decision_history',
112
+ ];
113
+ try {
114
+ // Check tables
115
+ for (const table of requiredTables) {
116
+ const exists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name=?").get(table);
117
+ if (!exists) {
118
+ result.valid = false;
119
+ result.missing.push(`table:${table}`);
120
+ }
121
+ }
122
+ // Check views
123
+ for (const view of requiredViews) {
124
+ const exists = db.prepare("SELECT name FROM sqlite_master WHERE type='view' AND name=?").get(view);
125
+ if (!exists) {
126
+ result.valid = false;
127
+ result.missing.push(`view:${view}`);
128
+ }
129
+ }
130
+ // Check triggers
131
+ for (const trigger of requiredTriggers) {
132
+ const exists = db.prepare("SELECT name FROM sqlite_master WHERE type='trigger' AND name=?").get(trigger);
133
+ if (!exists) {
134
+ result.valid = false;
135
+ result.missing.push(`trigger:${trigger}`);
136
+ }
137
+ }
138
+ // Verify standard data exists
139
+ const layerCount = db.prepare('SELECT COUNT(*) as count FROM layers').get().count;
140
+ if (layerCount < 5) {
141
+ result.errors.push(`Expected 5 standard layers, found ${layerCount}`);
142
+ result.valid = false;
143
+ }
144
+ const categoryCount = db.prepare('SELECT COUNT(*) as count FROM constraint_categories').get().count;
145
+ if (categoryCount < 3) {
146
+ result.errors.push(`Expected 3 standard categories, found ${categoryCount}`);
147
+ result.valid = false;
148
+ }
149
+ const tagCount = db.prepare('SELECT COUNT(*) as count FROM tags').get().count;
150
+ if (tagCount < 10) {
151
+ result.errors.push(`Expected 10 standard tags, found ${tagCount}`);
152
+ result.valid = false;
153
+ }
154
+ }
155
+ catch (error) {
156
+ result.valid = false;
157
+ result.errors.push(error instanceof Error ? error.message : String(error));
158
+ }
159
+ return result;
160
+ }
161
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Constraint management tools for MCP Shared Context Server
3
+ * Handles constraint tracking with priority, layer assignment, and tags
4
+ */
5
+ import type { AddConstraintParams, AddConstraintResponse, GetConstraintsParams, GetConstraintsResponse, DeactivateConstraintParams, DeactivateConstraintResponse } from '../types.js';
6
+ /**
7
+ * Add a constraint with priority, layer, and tags
8
+ *
9
+ * @param params - Constraint parameters
10
+ * @returns Constraint ID and timestamp
11
+ */
12
+ export declare function addConstraint(params: AddConstraintParams): AddConstraintResponse;
13
+ /**
14
+ * Retrieve constraints with advanced filtering
15
+ * Uses tagged_constraints view for token efficiency
16
+ *
17
+ * @param params - Filter parameters
18
+ * @returns Array of constraints matching filters
19
+ */
20
+ export declare function getConstraints(params: GetConstraintsParams): GetConstraintsResponse;
21
+ /**
22
+ * Deactivate a constraint (soft delete)
23
+ * Idempotent - deactivating already-inactive constraint is safe
24
+ *
25
+ * @param params - Constraint ID to deactivate
26
+ * @returns Success status
27
+ */
28
+ export declare function deactivateConstraint(params: DeactivateConstraintParams): DeactivateConstraintResponse;
29
+ //# sourceMappingURL=constraints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constraints.d.ts","sourceRoot":"","sources":["../../src/tools/constraints.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,EAC1B,4BAA4B,EAI7B,MAAM,aAAa,CAAC;AA+BrB;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,qBAAqB,CAsEhF;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,oBAAoB,GAAG,sBAAsB,CAmEnF;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,4BAA4B,CA0BrG"}
@@ -0,0 +1,192 @@
1
+ /**
2
+ * Constraint management tools for MCP Shared Context Server
3
+ * Handles constraint tracking with priority, layer assignment, and tags
4
+ */
5
+ import { getDatabase, getOrCreateAgent, getLayerId, transaction, getOrCreateTag } from '../database.js';
6
+ import { STRING_TO_PRIORITY, DEFAULT_PRIORITY, SQLITE_TRUE, SQLITE_FALSE } from '../constants.js';
7
+ /**
8
+ * Validate constraint category (must be one of predefined)
9
+ * Categories: performance, architecture, security
10
+ */
11
+ function validateCategory(category) {
12
+ const validCategories = ['performance', 'architecture', 'security'];
13
+ if (!validCategories.includes(category)) {
14
+ throw new Error(`Invalid category. Must be one of: ${validCategories.join(', ')}`);
15
+ }
16
+ }
17
+ /**
18
+ * Get or create constraint category ID
19
+ * Uses INSERT OR IGNORE for idempotent operation
20
+ */
21
+ function getOrCreateCategoryId(db, category) {
22
+ // Insert if doesn't exist
23
+ db.prepare('INSERT OR IGNORE INTO constraint_categories (name) VALUES (?)').run(category);
24
+ // Get the ID
25
+ const result = db.prepare('SELECT id FROM constraint_categories WHERE name = ?').get(category);
26
+ if (!result) {
27
+ throw new Error(`Failed to get or create category: ${category}`);
28
+ }
29
+ return result.id;
30
+ }
31
+ /**
32
+ * Add a constraint with priority, layer, and tags
33
+ *
34
+ * @param params - Constraint parameters
35
+ * @returns Constraint ID and timestamp
36
+ */
37
+ export function addConstraint(params) {
38
+ const db = getDatabase();
39
+ try {
40
+ // Validate required parameters
41
+ if (!params.category || !params.constraint_text) {
42
+ throw new Error('category and constraint_text are required');
43
+ }
44
+ // Validate category
45
+ validateCategory(params.category);
46
+ // Validate priority if provided
47
+ const priorityStr = params.priority || 'medium';
48
+ if (!['low', 'medium', 'high', 'critical'].includes(priorityStr)) {
49
+ throw new Error('Invalid priority. Must be: low, medium, high, or critical');
50
+ }
51
+ const priority = STRING_TO_PRIORITY[priorityStr] || DEFAULT_PRIORITY;
52
+ // Validate and get layer ID if provided
53
+ let layerId = null;
54
+ if (params.layer) {
55
+ const validLayers = ['presentation', 'business', 'data', 'infrastructure', 'cross-cutting'];
56
+ if (!validLayers.includes(params.layer)) {
57
+ throw new Error(`Invalid layer. Must be one of: ${validLayers.join(', ')}`);
58
+ }
59
+ layerId = getLayerId(db, params.layer);
60
+ if (!layerId) {
61
+ throw new Error(`Layer not found: ${params.layer}`);
62
+ }
63
+ }
64
+ // Use transaction for multi-table insert
65
+ const result = transaction(db, () => {
66
+ // Get or create category
67
+ const categoryId = getOrCreateCategoryId(db, params.category);
68
+ // Get or create created_by agent
69
+ const createdBy = params.created_by || 'system';
70
+ const agentId = getOrCreateAgent(db, createdBy);
71
+ // Insert constraint
72
+ const insertResult = db.prepare(`
73
+ INSERT INTO constraints (category_id, layer_id, constraint_text, priority, active, created_by, ts)
74
+ VALUES (?, ?, ?, ?, ?, ?, unixepoch())
75
+ `).run(categoryId, layerId, params.constraint_text, priority, SQLITE_TRUE, agentId);
76
+ const constraintId = insertResult.lastInsertRowid;
77
+ // Insert tags if provided
78
+ if (params.tags && params.tags.length > 0) {
79
+ const tagStmt = db.prepare('INSERT INTO constraint_tags (constraint_id, tag_id) VALUES (?, ?)');
80
+ for (const tagName of params.tags) {
81
+ const tagId = getOrCreateTag(db, tagName);
82
+ tagStmt.run(constraintId, tagId);
83
+ }
84
+ }
85
+ return { constraintId };
86
+ });
87
+ return {
88
+ success: true,
89
+ constraint_id: result.constraintId,
90
+ };
91
+ }
92
+ catch (error) {
93
+ const message = error instanceof Error ? error.message : String(error);
94
+ throw new Error(`Failed to add constraint: ${message}`);
95
+ }
96
+ }
97
+ /**
98
+ * Retrieve constraints with advanced filtering
99
+ * Uses tagged_constraints view for token efficiency
100
+ *
101
+ * @param params - Filter parameters
102
+ * @returns Array of constraints matching filters
103
+ */
104
+ export function getConstraints(params) {
105
+ const db = getDatabase();
106
+ try {
107
+ // Build query conditions
108
+ const conditions = [];
109
+ const values = [];
110
+ // Use tagged_constraints view (already filters active=1)
111
+ let sql = 'SELECT * FROM tagged_constraints WHERE 1=1';
112
+ // Filter by category
113
+ if (params.category) {
114
+ validateCategory(params.category);
115
+ conditions.push('category = ?');
116
+ values.push(params.category);
117
+ }
118
+ // Filter by layer
119
+ if (params.layer) {
120
+ conditions.push('layer = ?');
121
+ values.push(params.layer);
122
+ }
123
+ // Filter by priority
124
+ if (params.priority) {
125
+ conditions.push('priority = ?');
126
+ values.push(params.priority);
127
+ }
128
+ // Filter by tags (OR logic - match ANY tag)
129
+ if (params.tags && params.tags.length > 0) {
130
+ const tagConditions = params.tags.map(() => 'tags LIKE ?').join(' OR ');
131
+ conditions.push(`(${tagConditions})`);
132
+ for (const tag of params.tags) {
133
+ values.push(`%${tag}%`);
134
+ }
135
+ }
136
+ // Add all conditions to query
137
+ if (conditions.length > 0) {
138
+ sql += ' AND ' + conditions.join(' AND ');
139
+ }
140
+ // Note: tagged_constraints view already orders by priority DESC, category, ts DESC
141
+ // Add limit if provided
142
+ const limit = params.limit || 50;
143
+ sql += ' LIMIT ?';
144
+ values.push(limit);
145
+ // Execute query
146
+ const rows = db.prepare(sql).all(...values);
147
+ // Parse tags from comma-separated to array for consistency
148
+ const constraints = rows.map(row => ({
149
+ ...row,
150
+ tags: row.tags ? row.tags.split(',') : null,
151
+ }));
152
+ return {
153
+ constraints,
154
+ count: constraints.length,
155
+ };
156
+ }
157
+ catch (error) {
158
+ const message = error instanceof Error ? error.message : String(error);
159
+ throw new Error(`Failed to get constraints: ${message}`);
160
+ }
161
+ }
162
+ /**
163
+ * Deactivate a constraint (soft delete)
164
+ * Idempotent - deactivating already-inactive constraint is safe
165
+ *
166
+ * @param params - Constraint ID to deactivate
167
+ * @returns Success status
168
+ */
169
+ export function deactivateConstraint(params) {
170
+ const db = getDatabase();
171
+ try {
172
+ // Validate constraint_id
173
+ if (!params.constraint_id || typeof params.constraint_id !== 'number') {
174
+ throw new Error('constraint_id is required and must be a number');
175
+ }
176
+ // Check if constraint exists
177
+ const constraint = db.prepare('SELECT id, active FROM constraints WHERE id = ?').get(params.constraint_id);
178
+ if (!constraint) {
179
+ throw new Error(`Constraint not found: ${params.constraint_id}`);
180
+ }
181
+ // Update constraint to inactive (idempotent)
182
+ db.prepare('UPDATE constraints SET active = ? WHERE id = ?').run(SQLITE_FALSE, params.constraint_id);
183
+ return {
184
+ success: true,
185
+ };
186
+ }
187
+ catch (error) {
188
+ const message = error instanceof Error ? error.message : String(error);
189
+ throw new Error(`Failed to deactivate constraint: ${message}`);
190
+ }
191
+ }
192
+ //# sourceMappingURL=constraints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constraints.js","sourceRoot":"","sources":["../../src/tools/constraints.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACxG,OAAO,EACL,kBAAkB,EAElB,gBAAgB,EAChB,WAAW,EACX,YAAY,EACb,MAAM,iBAAiB,CAAC;AAazB;;;GAGG;AACH,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,eAAe,GAAG,CAAC,aAAa,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IACpE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,qCAAqC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrF,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,EAAY,EAAE,QAAgB;IAC3D,0BAA0B;IAC1B,EAAE,CAAC,OAAO,CAAC,+DAA+D,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE1F,aAAa;IACb,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC,GAAG,CAAC,QAAQ,CAA+B,CAAC;IAE7H,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,MAAM,CAAC,EAAE,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAA2B;IACvD,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,IAAI,CAAC;QACH,+BAA+B;QAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAED,oBAAoB;QACpB,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAElC,gCAAgC;QAChC,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC;QAChD,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,WAAW,CAAC,IAAI,gBAAgB,CAAC;QAErE,wCAAwC;QACxC,IAAI,OAAO,GAAkB,IAAI,CAAC;QAClC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,WAAW,GAAG,CAAC,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC;YAC5F,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,kCAAkC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9E,CAAC;YACD,OAAO,GAAG,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YACvC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,yCAAyC;QACzC,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE;YAClC,yBAAyB;YACzB,MAAM,UAAU,GAAG,qBAAqB,CAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAE9D,iCAAiC;YACjC,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC;YAChD,MAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAEhD,oBAAoB;YACpB,MAAM,YAAY,GAAG,EAAE,CAAC,OAAO,CAAC;;;OAG/B,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,eAAe,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YAEpF,MAAM,YAAY,GAAG,YAAY,CAAC,eAAyB,CAAC;YAE5D,0BAA0B;YAC1B,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,mEAAmE,CAAC,CAAC;gBAEhG,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBAClC,MAAM,KAAK,GAAG,cAAc,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;oBAC1C,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,OAAO,EAAE,YAAY,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,aAAa,EAAE,MAAM,CAAC,YAAY;SACnC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,MAA4B;IACzD,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,IAAI,CAAC;QACH,yBAAyB;QACzB,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,MAAM,GAAU,EAAE,CAAC;QAEzB,yDAAyD;QACzD,IAAI,GAAG,GAAG,4CAA4C,CAAC;QAEvD,qBAAqB;QACrB,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAClC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;QAED,kBAAkB;QAClB,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;QAED,qBAAqB;QACrB,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;QAED,4CAA4C;QAC5C,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxE,UAAU,CAAC,IAAI,CAAC,IAAI,aAAa,GAAG,CAAC,CAAC;YACtC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,8BAA8B;QAC9B,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,GAAG,IAAI,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAED,mFAAmF;QACnF,wBAAwB;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QACjC,GAAG,IAAI,UAAU,CAAC;QAClB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEnB,gBAAgB;QAChB,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAuB,CAAC;QAElE,2DAA2D;QAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnC,GAAG,GAAG;YACN,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;SAC5C,CAAC,CAAU,CAAC;QAEb,OAAO;YACL,WAAW;YACX,KAAK,EAAE,WAAW,CAAC,MAAM;SAC1B,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAkC;IACrE,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IAEzB,IAAI,CAAC;QACH,yBAAyB;QACzB,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QAED,6BAA6B;QAC7B,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAA+C,CAAC;QAEzJ,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,yBAAyB,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,6CAA6C;QAC7C,EAAE,CAAC,OAAO,CAAC,gDAAgD,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;QAErG,OAAO;YACL,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;AACH,CAAC"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Context management tools for MCP Shared Context Server
3
+ * Implements set_decision, get_context, and get_decision tools
4
+ */
5
+ import type { SetDecisionParams, GetContextParams, GetDecisionParams, SetDecisionResponse, GetContextResponse, GetDecisionResponse, SearchByTagsParams, SearchByTagsResponse, GetVersionsParams, GetVersionsResponse, SearchByLayerParams, SearchByLayerResponse } from '../types.js';
6
+ /**
7
+ * Set or update a decision in the context
8
+ * Auto-detects numeric vs string values and routes to appropriate table
9
+ * Supports tags, layers, scopes, and version tracking
10
+ *
11
+ * @param params - Decision parameters
12
+ * @returns Response with success status and metadata
13
+ */
14
+ export declare function setDecision(params: SetDecisionParams): SetDecisionResponse;
15
+ /**
16
+ * Get context decisions with advanced filtering
17
+ * Uses tagged_decisions view for token efficiency
18
+ * Supports filtering by status, layer, tags, and scope
19
+ *
20
+ * @param params - Filter parameters
21
+ * @returns Array of decisions with metadata
22
+ */
23
+ export declare function getContext(params?: GetContextParams): GetContextResponse;
24
+ /**
25
+ * Get a specific decision by key
26
+ * Returns full metadata including tags, layer, scopes, version
27
+ *
28
+ * @param params - Decision key
29
+ * @returns Decision details or not found
30
+ */
31
+ export declare function getDecision(params: GetDecisionParams): GetDecisionResponse;
32
+ /**
33
+ * Search for decisions by tags with AND/OR logic
34
+ * Provides flexible tag-based filtering with status and layer support
35
+ *
36
+ * @param params - Search parameters (tags, match_mode, status, layer)
37
+ * @returns Array of decisions matching tag criteria
38
+ */
39
+ export declare function searchByTags(params: SearchByTagsParams): SearchByTagsResponse;
40
+ /**
41
+ * Get version history for a specific decision key
42
+ * Returns all historical versions ordered by timestamp (newest first)
43
+ *
44
+ * @param params - Decision key to get history for
45
+ * @returns Array of historical versions with metadata
46
+ */
47
+ export declare function getVersions(params: GetVersionsParams): GetVersionsResponse;
48
+ /**
49
+ * Search for decisions within a specific architecture layer
50
+ * Supports status filtering and optional tag inclusion
51
+ *
52
+ * @param params - Layer name, optional status and include_tags
53
+ * @returns Array of decisions in the specified layer
54
+ */
55
+ export declare function searchByLayer(params: SearchByLayerParams): SearchByLayerResponse;
56
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EAInB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAErB;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,mBAAmB,CAkH1E;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,MAAM,GAAE,gBAAqB,GAAG,kBAAkB,CAiE5E;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,mBAAmB,CA2B1E;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,oBAAoB,CAkE7E;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,mBAAmB,CA4D1E;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,qBAAqB,CAkGhF"}