db-mcp 3.0.2 → 5.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.
- package/README.md +112 -75
- package/dist/.tsbuildinfo +1 -1
- package/dist/adapters/database-adapter.d.ts +11 -1
- package/dist/adapters/database-adapter.d.ts.map +1 -1
- package/dist/adapters/registration/resources.d.ts.map +1 -1
- package/dist/adapters/registration/tools.d.ts.map +1 -1
- package/dist/adapters/sqlite/prompts/analysis.d.ts.map +1 -1
- package/dist/adapters/sqlite/query-executor.d.ts.map +1 -1
- package/dist/adapters/sqlite/read-write-lock.d.ts +49 -0
- package/dist/adapters/sqlite/read-write-lock.d.ts.map +1 -0
- package/dist/adapters/sqlite/resources.d.ts +1 -1
- package/dist/adapters/sqlite/resources.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/admin.d.ts +33 -19
- package/dist/adapters/sqlite/schemas/admin.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/core.d.ts +96 -0
- package/dist/adapters/sqlite/schemas/core.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/fts.d.ts +4 -0
- package/dist/adapters/sqlite/schemas/fts.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/introspection.d.ts +25 -15
- package/dist/adapters/sqlite/schemas/introspection.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/migration.d.ts +2 -2
- package/dist/adapters/sqlite/schemas/migration.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/spatialite.d.ts +1 -0
- package/dist/adapters/sqlite/schemas/spatialite.d.ts.map +1 -1
- package/dist/adapters/sqlite/schemas/text.d.ts +36 -0
- package/dist/adapters/sqlite/schemas/text.d.ts.map +1 -1
- package/dist/adapters/sqlite/sqlite-adapter.d.ts +6 -0
- package/dist/adapters/sqlite/sqlite-adapter.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/admin/backup/create.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/admin/backup/dump.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/admin/backup/restore.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/admin/index.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/admin/pragma.d.ts +0 -4
- package/dist/adapters/sqlite/tools/admin/pragma.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/admin/verify.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/codemode.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/core/convenience.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/core/index.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/core/queries.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/core/tables.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/core/versioning.d.ts +19 -0
- package/dist/adapters/sqlite/tools/core/versioning.d.ts.map +1 -0
- package/dist/adapters/sqlite/tools/fts.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/introspection/diagnostics/indexes.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/introspection/graph/tools.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/json-helpers/read.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/json-operations/crud.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/json-operations/query.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/migration/helpers.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/text/helpers.d.ts +9 -0
- package/dist/adapters/sqlite/tools/text/helpers.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/text/index.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/text/search.d.ts +4 -0
- package/dist/adapters/sqlite/tools/text/search.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/vector/metadata.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/vector/search.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/vector/storage.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/virtual/vtable/analyze-csv.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/virtual/vtable/csv.d.ts.map +1 -1
- package/dist/adapters/sqlite/tools/virtual/vtable/info.d.ts.map +1 -1
- package/dist/adapters/sqlite/types.d.ts +5 -1
- package/dist/adapters/sqlite/types.d.ts.map +1 -1
- package/dist/adapters/sqlite-native/index.d.ts +1 -1
- package/dist/adapters/sqlite-native/index.d.ts.map +1 -1
- package/dist/adapters/sqlite-native/native-sqlite-adapter.d.ts.map +1 -1
- package/dist/adapters/sqlite-native/tools/spatialite/tools.d.ts.map +1 -1
- package/dist/adapters/sqlite-native/tools/window/helpers.d.ts +52 -0
- package/dist/adapters/sqlite-native/tools/window/helpers.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window/index.d.ts +7 -0
- package/dist/adapters/sqlite-native/tools/window/index.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window/lag-lead.d.ts +7 -0
- package/dist/adapters/sqlite-native/tools/window/lag-lead.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window/moving-average.d.ts +7 -0
- package/dist/adapters/sqlite-native/tools/window/moving-average.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window/ntile.d.ts +7 -0
- package/dist/adapters/sqlite-native/tools/window/ntile.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window/rank.d.ts +7 -0
- package/dist/adapters/sqlite-native/tools/window/rank.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window/row-number.d.ts +7 -0
- package/dist/adapters/sqlite-native/tools/window/row-number.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window/running-total.d.ts +7 -0
- package/dist/adapters/sqlite-native/tools/window/running-total.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/tools/window/schemas.d.ts +159 -0
- package/dist/adapters/sqlite-native/tools/window/schemas.d.ts.map +1 -0
- package/dist/adapters/sqlite-native/transaction-methods.d.ts.map +1 -1
- package/dist/audit/interceptor.d.ts.map +1 -1
- package/dist/audit/logger.d.ts +26 -25
- package/dist/audit/logger.d.ts.map +1 -1
- package/dist/auth/authorization-server-discovery.d.ts.map +1 -1
- package/dist/auth/scopes/mapping.d.ts.map +1 -1
- package/dist/auth/token-validator.d.ts.map +1 -1
- package/dist/{chunk-W5WQVNVX.js → chunk-27C5EE6U.js} +23 -17
- package/dist/chunk-2TYICG7B.js +1183 -0
- package/dist/{chunk-37G4DLL6.js → chunk-LLIAIJPO.js} +1146 -539
- package/dist/{chunk-NV34JSQM.js → chunk-UE7GVOBV.js} +1757 -1331
- package/dist/{chunk-L552U3QS.js → chunk-XLIYO3YA.js} +401 -77
- package/dist/cli.js +116 -11
- package/dist/codemode/api-constants.d.ts.map +1 -1
- package/dist/codemode/api.d.ts.map +1 -1
- package/dist/codemode/sandbox-factory.d.ts.map +1 -1
- package/dist/codemode/sandbox.d.ts +0 -3
- package/dist/codemode/sandbox.d.ts.map +1 -1
- package/dist/codemode/security.d.ts.map +1 -1
- package/dist/codemode/types.d.ts +2 -0
- package/dist/codemode/types.d.ts.map +1 -1
- package/dist/constants/server-instructions.d.ts +1 -1
- package/dist/constants/server-instructions.d.ts.map +1 -1
- package/dist/filtering/tool-constants.d.ts +11 -11
- package/dist/filtering/tool-constants.d.ts.map +1 -1
- package/dist/{http-HWTUVFIA.js → http-ZDMK46QU.js} +195 -32
- package/dist/index.js +4 -4
- package/dist/observability/metrics.d.ts +36 -0
- package/dist/observability/metrics.d.ts.map +1 -0
- package/dist/observability/system-db.d.ts +13 -0
- package/dist/observability/system-db.d.ts.map +1 -0
- package/dist/server/mcp-server.d.ts +3 -0
- package/dist/server/mcp-server.d.ts.map +1 -1
- package/dist/server/registration/admin-tools.d.ts +6 -0
- package/dist/server/registration/admin-tools.d.ts.map +1 -0
- package/dist/server/registration/audit-tools/backup.d.ts +8 -0
- package/dist/server/registration/audit-tools/backup.d.ts.map +1 -0
- package/dist/server/registration/audit-tools/helpers.d.ts +11 -0
- package/dist/server/registration/audit-tools/helpers.d.ts.map +1 -0
- package/dist/server/registration/audit-tools/index.d.ts +4 -0
- package/dist/server/registration/audit-tools/index.d.ts.map +1 -0
- package/dist/server/registration/audit-tools/resource.d.ts +8 -0
- package/dist/server/registration/audit-tools/resource.d.ts.map +1 -0
- package/dist/server/registration/audit-tools/search.d.ts +7 -0
- package/dist/server/registration/audit-tools/search.d.ts.map +1 -0
- package/dist/server/registration/help-resources.d.ts.map +1 -1
- package/dist/server/registration/index.d.ts +3 -1
- package/dist/server/registration/index.d.ts.map +1 -1
- package/dist/server/registration/observability-resources.d.ts +11 -0
- package/dist/server/registration/observability-resources.d.ts.map +1 -0
- package/dist/server/subscription-manager.d.ts +35 -0
- package/dist/server/subscription-manager.d.ts.map +1 -0
- package/dist/{sqlite-TB56Z7G3.js → sqlite-XWZPEZJO.js} +195 -19
- package/dist/{sqlite-native-IF75BB3O.js → sqlite-native-5GQ3WKCZ.js} +311 -147
- package/dist/transports/http/middleware.d.ts.map +1 -1
- package/dist/transports/http/oauth.d.ts.map +1 -1
- package/dist/transports/http/sessions/legacy-sse.d.ts.map +1 -1
- package/dist/transports/http/sessions/stateful.d.ts +5 -1
- package/dist/transports/http/sessions/stateful.d.ts.map +1 -1
- package/dist/transports/http/transport.d.ts +2 -0
- package/dist/transports/http/transport.d.ts.map +1 -1
- package/dist/transports/http/types.d.ts +11 -0
- package/dist/transports/http/types.d.ts.map +1 -1
- package/dist/types/auth.d.ts +4 -0
- package/dist/types/auth.d.ts.map +1 -1
- package/dist/types/server.d.ts +5 -0
- package/dist/types/server.d.ts.map +1 -1
- package/dist/utils/annotations.d.ts +8 -0
- package/dist/utils/annotations.d.ts.map +1 -1
- package/dist/utils/errors/categories.d.ts +16 -11
- package/dist/utils/errors/categories.d.ts.map +1 -1
- package/dist/utils/errors/classes.d.ts +37 -0
- package/dist/utils/errors/classes.d.ts.map +1 -1
- package/dist/utils/errors/format.d.ts +2 -2
- package/dist/utils/errors/format.d.ts.map +1 -1
- package/dist/utils/errors/index.d.ts +1 -1
- package/dist/utils/errors/index.d.ts.map +1 -1
- package/dist/utils/errors/suggestions.d.ts +1 -0
- package/dist/utils/errors/suggestions.d.ts.map +1 -1
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/logger/types.d.ts +1 -1
- package/dist/utils/logger/types.d.ts.map +1 -1
- package/dist/utils/security-utils.d.ts +29 -0
- package/dist/utils/security-utils.d.ts.map +1 -0
- package/dist/utils/stream-utils.d.ts +14 -0
- package/dist/utils/stream-utils.d.ts.map +1 -0
- package/dist/utils/tokens.d.ts +15 -0
- package/dist/utils/tokens.d.ts.map +1 -0
- package/dist/utils/where-clause.d.ts +0 -13
- package/dist/utils/where-clause.d.ts.map +1 -1
- package/package.json +43 -44
- package/dist/adapters/sqlite-native/tools/window.d.ts +0 -7
- package/dist/adapters/sqlite-native/tools/window.d.ts.map +0 -1
- package/dist/chunk-E5IESRTK.js +0 -489
- package/dist/server/registration/audit-tools.d.ts +0 -13
- package/dist/server/registration/audit-tools.d.ts.map +0 -1
- package/dist/utils/insights-manager.d.ts +0 -39
- package/dist/utils/insights-manager.d.ts.map +0 -1
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ToolDefinition } from "../../../types/index.js";
|
|
2
|
-
import type { NativeSqliteAdapter } from "../native-sqlite-adapter.js";
|
|
3
|
-
/**
|
|
4
|
-
* Get all window function tools
|
|
5
|
-
*/
|
|
6
|
-
export declare function getWindowTools(adapter: NativeSqliteAdapter): ToolDefinition[];
|
|
7
|
-
//# sourceMappingURL=window.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../../../../src/adapters/sqlite-native/tools/window.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,yBAAyB,CAAC;AAC9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAybvE;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,cAAc,EAAE,CAS7E"}
|
package/dist/chunk-E5IESRTK.js
DELETED
|
@@ -1,489 +0,0 @@
|
|
|
1
|
-
import { SCOPES } from './chunk-L552U3QS.js';
|
|
2
|
-
import { createRequire } from 'module';
|
|
3
|
-
import { z } from 'zod';
|
|
4
|
-
|
|
5
|
-
var _require = createRequire(import.meta.url);
|
|
6
|
-
var pkg = _require("../package.json");
|
|
7
|
-
var VERSION = pkg.version;
|
|
8
|
-
var NAME = pkg.name;
|
|
9
|
-
|
|
10
|
-
// src/utils/icons.ts
|
|
11
|
-
var MDI_BASE = "https://cdn.jsdelivr.net/npm/@mdi/svg@7.4.47/svg";
|
|
12
|
-
var SERVER_ICONS = [
|
|
13
|
-
{
|
|
14
|
-
src: `${MDI_BASE}/server.svg`,
|
|
15
|
-
mimeType: "image/svg+xml"
|
|
16
|
-
}
|
|
17
|
-
];
|
|
18
|
-
var TOOL_GROUP_ICONS = {
|
|
19
|
-
core: [{ src: `${MDI_BASE}/database.svg`, mimeType: "image/svg+xml" }],
|
|
20
|
-
json: [{ src: `${MDI_BASE}/code-json.svg`, mimeType: "image/svg+xml" }],
|
|
21
|
-
text: [{ src: `${MDI_BASE}/format-text.svg`, mimeType: "image/svg+xml" }],
|
|
22
|
-
stats: [{ src: `${MDI_BASE}/chart-bar.svg`, mimeType: "image/svg+xml" }],
|
|
23
|
-
vector: [
|
|
24
|
-
{ src: `${MDI_BASE}/vector-polyline.svg`, mimeType: "image/svg+xml" }
|
|
25
|
-
],
|
|
26
|
-
admin: [{ src: `${MDI_BASE}/cog.svg`, mimeType: "image/svg+xml" }],
|
|
27
|
-
transactions: [
|
|
28
|
-
{ src: `${MDI_BASE}/swap-horizontal.svg`, mimeType: "image/svg+xml" }
|
|
29
|
-
],
|
|
30
|
-
geo: [{ src: `${MDI_BASE}/earth.svg`, mimeType: "image/svg+xml" }],
|
|
31
|
-
introspection: [
|
|
32
|
-
{ src: `${MDI_BASE}/graph-outline.svg`, mimeType: "image/svg+xml" }
|
|
33
|
-
],
|
|
34
|
-
migration: [
|
|
35
|
-
{ src: `${MDI_BASE}/source-branch.svg`, mimeType: "image/svg+xml" }
|
|
36
|
-
],
|
|
37
|
-
codemode: [{ src: `${MDI_BASE}/code-braces.svg`, mimeType: "image/svg+xml" }]
|
|
38
|
-
};
|
|
39
|
-
function getToolGroupIcon(group) {
|
|
40
|
-
return TOOL_GROUP_ICONS[group];
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
// src/utils/annotations.ts
|
|
44
|
-
var READ_ONLY = {
|
|
45
|
-
readOnlyHint: true,
|
|
46
|
-
destructiveHint: false,
|
|
47
|
-
openWorldHint: false,
|
|
48
|
-
sensitiveHint: false
|
|
49
|
-
};
|
|
50
|
-
var WRITE = {
|
|
51
|
-
readOnlyHint: false,
|
|
52
|
-
destructiveHint: false,
|
|
53
|
-
openWorldHint: false,
|
|
54
|
-
sensitiveHint: false
|
|
55
|
-
};
|
|
56
|
-
var DESTRUCTIVE = {
|
|
57
|
-
readOnlyHint: false,
|
|
58
|
-
destructiveHint: true,
|
|
59
|
-
openWorldHint: false,
|
|
60
|
-
sensitiveHint: false
|
|
61
|
-
};
|
|
62
|
-
var IDEMPOTENT = {
|
|
63
|
-
readOnlyHint: false,
|
|
64
|
-
destructiveHint: false,
|
|
65
|
-
idempotentHint: true,
|
|
66
|
-
openWorldHint: false,
|
|
67
|
-
sensitiveHint: false
|
|
68
|
-
};
|
|
69
|
-
var ADMIN = {
|
|
70
|
-
readOnlyHint: false,
|
|
71
|
-
destructiveHint: true,
|
|
72
|
-
openWorldHint: false,
|
|
73
|
-
sensitiveHint: true
|
|
74
|
-
// System maintenance may expose internal db structures
|
|
75
|
-
};
|
|
76
|
-
function readOnly(title) {
|
|
77
|
-
return { title, ...READ_ONLY };
|
|
78
|
-
}
|
|
79
|
-
function write(title) {
|
|
80
|
-
return { title, ...WRITE };
|
|
81
|
-
}
|
|
82
|
-
function destructive(title) {
|
|
83
|
-
return { title, ...DESTRUCTIVE };
|
|
84
|
-
}
|
|
85
|
-
function idempotent(title) {
|
|
86
|
-
return { title, ...IDEMPOTENT };
|
|
87
|
-
}
|
|
88
|
-
function admin(title) {
|
|
89
|
-
return { title, ...ADMIN };
|
|
90
|
-
}
|
|
91
|
-
var ADMIN_FS = {
|
|
92
|
-
readOnlyHint: false,
|
|
93
|
-
destructiveHint: true,
|
|
94
|
-
openWorldHint: true,
|
|
95
|
-
sensitiveHint: true
|
|
96
|
-
};
|
|
97
|
-
var WRITE_FS = {
|
|
98
|
-
readOnlyHint: false,
|
|
99
|
-
destructiveHint: false,
|
|
100
|
-
openWorldHint: true,
|
|
101
|
-
sensitiveHint: true
|
|
102
|
-
};
|
|
103
|
-
function adminFs(title) {
|
|
104
|
-
return { title, ...ADMIN_FS };
|
|
105
|
-
}
|
|
106
|
-
function writeFs(title) {
|
|
107
|
-
return { title, ...WRITE_FS };
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
// src/utils/redaction.ts
|
|
111
|
-
var SENSITIVE_KEY_PATTERN = /(?:sk-|Bearer |token\s*[:=]\s*|password\s*[:=]\s*|secret\s*[:=]\s*|apikey\s*[:=]\s*|api_key\s*[:=]\s*|AWS_SECRET_ACCESS_KEY\s*[:=]\s*|GITHUB_TOKEN\s*[:=]\s*|ghp_|gho_|ghu_|ghs_|xoxb-|xoxp-|xoxs-|AZURE_[A-Z_]*\s*[:=]\s*|DATABASE_URL\s*[:=]\s*|AKIA|sk-ant-api[a-zA-Z0-9_-]+|sk_live_[a-zA-Z0-9_]+|rk_live_[a-zA-Z0-9_]+|SG\.[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+|npm_[a-zA-Z0-9]{30,}|dpl_[a-zA-Z0-9]{30,}|hvs\.[a-zA-Z0-9_-]+)[^\s'",;)}\]]{2,}/i;
|
|
112
|
-
var SENSITIVE_VALUE_REGEX = new RegExp(SENSITIVE_KEY_PATTERN.source, "gi");
|
|
113
|
-
var SENSITIVE_KEY_REGEX = /^(password|passwd|token|secret|authorization|api_?key|credential|private_?key|access_?token|refresh_?token|database_url)$/i;
|
|
114
|
-
function redactObject(obj, depth = 0, maxDepth = 15) {
|
|
115
|
-
if (depth > maxDepth || obj === null || obj === void 0) {
|
|
116
|
-
return obj;
|
|
117
|
-
}
|
|
118
|
-
if (typeof obj === "string") {
|
|
119
|
-
return obj.replace(SENSITIVE_VALUE_REGEX, "[REDACTED]");
|
|
120
|
-
}
|
|
121
|
-
if (typeof obj !== "object") {
|
|
122
|
-
return obj;
|
|
123
|
-
}
|
|
124
|
-
if (Array.isArray(obj)) {
|
|
125
|
-
return obj.map((item) => redactObject(item, depth + 1, maxDepth));
|
|
126
|
-
}
|
|
127
|
-
const redacted = {};
|
|
128
|
-
for (const [key, value] of Object.entries(obj)) {
|
|
129
|
-
if (SENSITIVE_KEY_REGEX.test(key)) {
|
|
130
|
-
redacted[key] = "[REDACTED]";
|
|
131
|
-
} else {
|
|
132
|
-
redacted[key] = redactObject(value, depth + 1, maxDepth);
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
return redacted;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
// src/auth/scope-map.ts
|
|
139
|
-
var toolScopeMap = /* @__PURE__ */ new Map();
|
|
140
|
-
function registerToolScope(toolName, scope) {
|
|
141
|
-
toolScopeMap.set(toolName, scope);
|
|
142
|
-
if (!toolName.startsWith("sqlite_")) {
|
|
143
|
-
toolScopeMap.set(`sqlite_${toolName}`, scope);
|
|
144
|
-
} else {
|
|
145
|
-
toolScopeMap.set(toolName.slice(7), scope);
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
function getRequiredScope(toolName) {
|
|
149
|
-
return toolScopeMap.get(toolName) ?? SCOPES.ADMIN;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
// src/utils/resource-annotations.ts
|
|
153
|
-
var HIGH_PRIORITY = {
|
|
154
|
-
audience: ["user", "assistant"],
|
|
155
|
-
priority: 0.9
|
|
156
|
-
};
|
|
157
|
-
var MEDIUM_PRIORITY = {
|
|
158
|
-
audience: ["user", "assistant"],
|
|
159
|
-
priority: 0.6
|
|
160
|
-
};
|
|
161
|
-
var LOW_PRIORITY = {
|
|
162
|
-
audience: ["user", "assistant"],
|
|
163
|
-
priority: 0.4
|
|
164
|
-
};
|
|
165
|
-
var ASSISTANT_FOCUSED = {
|
|
166
|
-
audience: ["assistant"],
|
|
167
|
-
priority: 0.5
|
|
168
|
-
};
|
|
169
|
-
var ErrorResponseFields = z.object({
|
|
170
|
-
error: z.string().optional().describe("Error message (human-readable)"),
|
|
171
|
-
code: z.string().optional().describe("Error code (e.g. VALIDATION_ERROR, QUERY_ERROR)"),
|
|
172
|
-
category: z.string().optional().describe("Error category (validation, query, connection, internal)"),
|
|
173
|
-
recoverable: z.boolean().optional().describe("Whether the error is recoverable"),
|
|
174
|
-
suggestion: z.string().optional().describe("Suggested fix for the error"),
|
|
175
|
-
details: z.record(z.string(), z.unknown()).optional().describe("Additional error context")
|
|
176
|
-
});
|
|
177
|
-
var coerceNumber = (val) => {
|
|
178
|
-
if (typeof val === "string") {
|
|
179
|
-
if (val.trim() === "") return void 0;
|
|
180
|
-
const num = Number(val);
|
|
181
|
-
return isNaN(num) ? val : num;
|
|
182
|
-
}
|
|
183
|
-
return val;
|
|
184
|
-
};
|
|
185
|
-
var BackupSchema = z.object({
|
|
186
|
-
targetPath: z.string().describe("Path for backup file")
|
|
187
|
-
});
|
|
188
|
-
var AnalyzeSchema = z.object({
|
|
189
|
-
table: z.string().optional().describe("Specific table to analyze (default: all)")
|
|
190
|
-
});
|
|
191
|
-
var IntegrityCheckSchema = z.object({
|
|
192
|
-
maxErrors: z.preprocess(
|
|
193
|
-
coerceNumber,
|
|
194
|
-
z.number().int().optional().default(100).describe("Maximum errors to report")
|
|
195
|
-
)
|
|
196
|
-
});
|
|
197
|
-
var OptimizeSchema = z.object({
|
|
198
|
-
table: z.string().optional().describe("Specific table to optimize"),
|
|
199
|
-
reindex: z.boolean().optional().default(false),
|
|
200
|
-
analyze: z.boolean().optional().default(true)
|
|
201
|
-
});
|
|
202
|
-
var RestoreSchema = z.object({
|
|
203
|
-
sourcePath: z.string().describe("Path to backup file to restore from"),
|
|
204
|
-
allowTriggers: z.boolean().optional().default(false).describe(
|
|
205
|
-
"If true, allows triggers in the backup file to be restored. This is a security risk if the backup file is untrusted."
|
|
206
|
-
)
|
|
207
|
-
});
|
|
208
|
-
var VerifyBackupSchema = z.object({
|
|
209
|
-
backupPath: z.string().describe("Path to backup file to verify")
|
|
210
|
-
});
|
|
211
|
-
var IndexStatsSchema = z.object({
|
|
212
|
-
table: z.string().optional().describe("Filter indexes by table name (default: all tables)"),
|
|
213
|
-
excludeSystemIndexes: z.boolean().optional().default(true).describe(
|
|
214
|
-
"Exclude SpatiaLite system indexes (default: true). Set to false to include all indexes."
|
|
215
|
-
)
|
|
216
|
-
});
|
|
217
|
-
var PragmaOptimizeSchema = z.object({
|
|
218
|
-
mask: z.preprocess(
|
|
219
|
-
coerceNumber,
|
|
220
|
-
z.number().int().optional().describe("Optional optimization mask (default: 0xfffe)")
|
|
221
|
-
)
|
|
222
|
-
});
|
|
223
|
-
var PragmaSettingsSchema = z.object({
|
|
224
|
-
pragma: z.string().describe("PRAGMA name (e.g., 'cache_size', 'journal_mode')"),
|
|
225
|
-
value: z.union([z.string(), z.number().int()]).optional().describe("Value to set (omit to only read)")
|
|
226
|
-
});
|
|
227
|
-
var PragmaTableInfoSchema = z.object({
|
|
228
|
-
table: z.string().describe("Table name to get column information for")
|
|
229
|
-
});
|
|
230
|
-
var PragmaCompileOptionsSchema = z.object({
|
|
231
|
-
filter: z.string().optional().describe(
|
|
232
|
-
"Optional filter pattern (case-insensitive substring match) to limit returned options"
|
|
233
|
-
)
|
|
234
|
-
});
|
|
235
|
-
var PragmaDatabaseListSchema = z.object({});
|
|
236
|
-
var AppendInsightSchema = z.object({
|
|
237
|
-
insight: z.string().max(2e3).regex(
|
|
238
|
-
/^[\x20-\x7E\n\r]*$/,
|
|
239
|
-
"Insight must contain only printable ASCII characters"
|
|
240
|
-
).describe("Business insight discovered from data analysis")
|
|
241
|
-
});
|
|
242
|
-
z.object({
|
|
243
|
-
analyze: z.boolean().optional().default(true).describe("Run ANALYZE after VACUUM")
|
|
244
|
-
});
|
|
245
|
-
var AttachDatabaseSchema = z.object({
|
|
246
|
-
filepath: z.string().describe("Path to the database file to attach"),
|
|
247
|
-
alias: z.string().regex(
|
|
248
|
-
/^[a-zA-Z_]\w*$/,
|
|
249
|
-
"Alias must start with a letter or underscore and contain only alphanumeric characters"
|
|
250
|
-
).describe("Schema alias for the attached database (e.g., 'analytics')")
|
|
251
|
-
});
|
|
252
|
-
var DetachDatabaseSchema = z.object({
|
|
253
|
-
alias: z.string().describe("Schema alias of the database to detach (cannot be 'main')")
|
|
254
|
-
});
|
|
255
|
-
var VacuumIntoCopySchema = z.object({
|
|
256
|
-
outputPath: z.string().describe(
|
|
257
|
-
"Path for the output database file. Creates a compacted copy of the database."
|
|
258
|
-
)
|
|
259
|
-
});
|
|
260
|
-
var AuditListBackupsSchema = z.object({
|
|
261
|
-
limit: z.preprocess(
|
|
262
|
-
coerceNumber,
|
|
263
|
-
z.number().int().min(1).max(100).optional().default(10).describe("Maximum number of snapshots to return (default 10, max 100)")
|
|
264
|
-
),
|
|
265
|
-
offset: z.preprocess(
|
|
266
|
-
coerceNumber,
|
|
267
|
-
z.number().int().min(0).optional().default(0).describe("Pagination offset")
|
|
268
|
-
)
|
|
269
|
-
});
|
|
270
|
-
z.object({
|
|
271
|
-
filename: z.string().describe(
|
|
272
|
-
"Snapshot filename from sqlite_audit_list_backups results (e.g., '2025-01-01T00-00-00-000Z_sqlite_drop_table_users.snapshot.json.gz')"
|
|
273
|
-
),
|
|
274
|
-
dryRun: z.boolean().optional().default(false).describe(
|
|
275
|
-
"If true, returns the DDL that would be executed without applying changes"
|
|
276
|
-
)
|
|
277
|
-
});
|
|
278
|
-
z.object({
|
|
279
|
-
filename: z.string().describe("Snapshot filename to compare against the live database schema")
|
|
280
|
-
});
|
|
281
|
-
var SqlDumpSchema = z.object({
|
|
282
|
-
outputPath: z.string().describe(
|
|
283
|
-
"Absolute path where the SQL text dump file will be written (e.g. '/path/to/dump.sql')"
|
|
284
|
-
)
|
|
285
|
-
});
|
|
286
|
-
var AuditListBackupsOutputSchema = z.object({
|
|
287
|
-
success: z.boolean(),
|
|
288
|
-
snapshots: z.array(z.any()).optional(),
|
|
289
|
-
count: z.number().optional(),
|
|
290
|
-
totalCount: z.number().optional(),
|
|
291
|
-
_meta: z.object({ tokenEstimate: z.number() }).optional()
|
|
292
|
-
}).extend(ErrorResponseFields.shape);
|
|
293
|
-
var AuditGetBackupOutputSchema = z.object({
|
|
294
|
-
success: z.boolean(),
|
|
295
|
-
metadata: z.any().optional(),
|
|
296
|
-
ddl: z.string().optional(),
|
|
297
|
-
data: z.string().optional()
|
|
298
|
-
}).extend(ErrorResponseFields.shape);
|
|
299
|
-
var AuditCleanupOutputSchema = z.object({
|
|
300
|
-
success: z.boolean(),
|
|
301
|
-
deletedCount: z.number().optional(),
|
|
302
|
-
message: z.string().optional()
|
|
303
|
-
}).extend(ErrorResponseFields.shape);
|
|
304
|
-
var AuditDiffBackupOutputSchema = z.object({
|
|
305
|
-
success: z.boolean(),
|
|
306
|
-
diffs: z.array(z.any()).optional(),
|
|
307
|
-
snapshotTimestamp: z.string().optional(),
|
|
308
|
-
snapshotTarget: z.string().optional()
|
|
309
|
-
}).extend(ErrorResponseFields.shape);
|
|
310
|
-
var AuditRestoreBackupOutputSchema = z.object({
|
|
311
|
-
success: z.boolean(),
|
|
312
|
-
message: z.string().optional(),
|
|
313
|
-
ddl: z.string().optional(),
|
|
314
|
-
dryRun: z.boolean().optional(),
|
|
315
|
-
changesApplied: z.number().optional()
|
|
316
|
-
}).extend(ErrorResponseFields.shape);
|
|
317
|
-
var VacuumOutputSchema = z.object({
|
|
318
|
-
success: z.boolean(),
|
|
319
|
-
message: z.string().optional(),
|
|
320
|
-
durationMs: z.number().optional(),
|
|
321
|
-
wasmLimitation: z.boolean().optional(),
|
|
322
|
-
sizeChange: z.object({
|
|
323
|
-
before: z.number(),
|
|
324
|
-
after: z.number(),
|
|
325
|
-
saved: z.number()
|
|
326
|
-
}).optional()
|
|
327
|
-
}).extend(ErrorResponseFields.shape);
|
|
328
|
-
var BackupOutputSchema = z.object({
|
|
329
|
-
success: z.boolean(),
|
|
330
|
-
message: z.string().optional(),
|
|
331
|
-
path: z.string().optional(),
|
|
332
|
-
sizeBytes: z.number().optional(),
|
|
333
|
-
durationMs: z.number().optional(),
|
|
334
|
-
wasmLimitation: z.boolean().optional(),
|
|
335
|
-
note: z.string().optional()
|
|
336
|
-
}).extend(ErrorResponseFields.shape);
|
|
337
|
-
var SqlDumpOutputSchema = z.object({
|
|
338
|
-
success: z.boolean(),
|
|
339
|
-
message: z.string().optional(),
|
|
340
|
-
path: z.string().optional(),
|
|
341
|
-
durationMs: z.number().optional(),
|
|
342
|
-
wasmLimitation: z.boolean().optional()
|
|
343
|
-
}).extend(ErrorResponseFields.shape);
|
|
344
|
-
var AnalyzeOutputSchema = z.object({
|
|
345
|
-
success: z.boolean(),
|
|
346
|
-
message: z.string().optional(),
|
|
347
|
-
tablesAnalyzed: z.number().optional(),
|
|
348
|
-
durationMs: z.number().optional()
|
|
349
|
-
}).extend(ErrorResponseFields.shape);
|
|
350
|
-
var OptimizeOutputSchema = z.object({
|
|
351
|
-
success: z.boolean(),
|
|
352
|
-
message: z.string().optional(),
|
|
353
|
-
operations: z.array(z.string()).optional(),
|
|
354
|
-
durationMs: z.number().optional()
|
|
355
|
-
}).extend(ErrorResponseFields.shape);
|
|
356
|
-
var IntegrityCheckOutputSchema = z.object({
|
|
357
|
-
success: z.boolean(),
|
|
358
|
-
integrity: z.enum(["ok", "errors_found"]).optional(),
|
|
359
|
-
errorCount: z.number().optional(),
|
|
360
|
-
messages: z.array(z.string()).optional()
|
|
361
|
-
}).extend(ErrorResponseFields.shape);
|
|
362
|
-
var RestoreOutputSchema = z.object({
|
|
363
|
-
success: z.boolean(),
|
|
364
|
-
message: z.string().optional(),
|
|
365
|
-
sourcePath: z.string().optional(),
|
|
366
|
-
durationMs: z.number().optional(),
|
|
367
|
-
wasmLimitation: z.boolean().optional(),
|
|
368
|
-
skippedTables: z.array(z.string()).optional(),
|
|
369
|
-
note: z.string().optional()
|
|
370
|
-
}).extend(ErrorResponseFields.shape);
|
|
371
|
-
var VerifyBackupOutputSchema = z.object({
|
|
372
|
-
success: z.boolean(),
|
|
373
|
-
valid: z.boolean().optional(),
|
|
374
|
-
pageCount: z.number().optional(),
|
|
375
|
-
pageSize: z.number().optional(),
|
|
376
|
-
integrity: z.enum(["ok", "errors_found"]).optional(),
|
|
377
|
-
messages: z.array(z.string()).optional(),
|
|
378
|
-
message: z.string().optional(),
|
|
379
|
-
wasmLimitation: z.boolean().optional(),
|
|
380
|
-
backupPath: z.string().optional()
|
|
381
|
-
}).extend(ErrorResponseFields.shape);
|
|
382
|
-
var IndexColumnSchema = z.object({
|
|
383
|
-
name: z.string(),
|
|
384
|
-
seqno: z.number()
|
|
385
|
-
});
|
|
386
|
-
var IndexStatsEntrySchema = z.object({
|
|
387
|
-
name: z.string(),
|
|
388
|
-
table: z.string(),
|
|
389
|
-
unique: z.boolean(),
|
|
390
|
-
partial: z.boolean(),
|
|
391
|
-
columns: z.array(IndexColumnSchema)
|
|
392
|
-
});
|
|
393
|
-
var IndexStatsOutputSchema = z.object({
|
|
394
|
-
success: z.boolean(),
|
|
395
|
-
indexes: z.array(IndexStatsEntrySchema).optional()
|
|
396
|
-
}).extend(ErrorResponseFields.shape);
|
|
397
|
-
var PragmaCompileOptionsOutputSchema = z.object({
|
|
398
|
-
success: z.boolean(),
|
|
399
|
-
options: z.array(z.string()).optional()
|
|
400
|
-
}).extend(ErrorResponseFields.shape);
|
|
401
|
-
var DatabaseListEntrySchema = z.object({
|
|
402
|
-
seq: z.number(),
|
|
403
|
-
name: z.string(),
|
|
404
|
-
file: z.string()
|
|
405
|
-
});
|
|
406
|
-
var PragmaDatabaseListOutputSchema = z.object({
|
|
407
|
-
success: z.boolean(),
|
|
408
|
-
databases: z.array(DatabaseListEntrySchema).optional(),
|
|
409
|
-
configuredPath: z.string().optional(),
|
|
410
|
-
note: z.string().optional()
|
|
411
|
-
}).extend(ErrorResponseFields.shape);
|
|
412
|
-
var PragmaOptimizeOutputSchema = z.object({
|
|
413
|
-
success: z.boolean(),
|
|
414
|
-
message: z.string().optional(),
|
|
415
|
-
durationMs: z.number().optional()
|
|
416
|
-
}).extend(ErrorResponseFields.shape);
|
|
417
|
-
var PragmaSettingsOutputSchema = z.object({
|
|
418
|
-
success: z.boolean(),
|
|
419
|
-
pragma: z.string().optional(),
|
|
420
|
-
value: z.unknown().optional(),
|
|
421
|
-
oldValue: z.unknown().optional(),
|
|
422
|
-
newValue: z.unknown().optional()
|
|
423
|
-
}).extend(ErrorResponseFields.shape);
|
|
424
|
-
var PragmaTableInfoColumnSchema = z.object({
|
|
425
|
-
cid: z.number(),
|
|
426
|
-
name: z.string(),
|
|
427
|
-
type: z.string(),
|
|
428
|
-
notNull: z.boolean(),
|
|
429
|
-
defaultValue: z.unknown().nullable(),
|
|
430
|
-
pk: z.number()
|
|
431
|
-
});
|
|
432
|
-
var PragmaTableInfoOutputSchema = z.object({
|
|
433
|
-
success: z.boolean(),
|
|
434
|
-
table: z.string().optional(),
|
|
435
|
-
columns: z.array(PragmaTableInfoColumnSchema).optional()
|
|
436
|
-
}).extend(ErrorResponseFields.shape);
|
|
437
|
-
var AppendInsightOutputSchema = z.object({
|
|
438
|
-
success: z.boolean(),
|
|
439
|
-
message: z.string().optional(),
|
|
440
|
-
insightCount: z.number().optional()
|
|
441
|
-
}).extend(ErrorResponseFields.shape);
|
|
442
|
-
var AttachDatabaseOutputSchema = z.object({
|
|
443
|
-
success: z.boolean(),
|
|
444
|
-
message: z.string().optional(),
|
|
445
|
-
alias: z.string().optional(),
|
|
446
|
-
filepath: z.string().optional()
|
|
447
|
-
}).extend(ErrorResponseFields.shape);
|
|
448
|
-
var DetachDatabaseOutputSchema = z.object({
|
|
449
|
-
success: z.boolean(),
|
|
450
|
-
message: z.string().optional(),
|
|
451
|
-
alias: z.string().optional()
|
|
452
|
-
}).extend(ErrorResponseFields.shape);
|
|
453
|
-
var VacuumIntoCopyOutputSchema = z.object({
|
|
454
|
-
success: z.boolean(),
|
|
455
|
-
message: z.string().optional(),
|
|
456
|
-
outputPath: z.string().optional(),
|
|
457
|
-
sizeBytes: z.number().optional(),
|
|
458
|
-
durationMs: z.number().optional(),
|
|
459
|
-
wasmLimitation: z.boolean().optional()
|
|
460
|
-
}).extend(ErrorResponseFields.shape);
|
|
461
|
-
var ReindexSchema = z.object({
|
|
462
|
-
target: z.string().optional().describe(
|
|
463
|
-
"Index name, table name, or collation name to reindex. Omit to reindex the entire database."
|
|
464
|
-
)
|
|
465
|
-
});
|
|
466
|
-
var ReindexOutputSchema = z.object({
|
|
467
|
-
success: z.boolean(),
|
|
468
|
-
message: z.string().optional(),
|
|
469
|
-
sql: z.string().optional(),
|
|
470
|
-
durationMs: z.number().optional()
|
|
471
|
-
}).extend(ErrorResponseFields.shape);
|
|
472
|
-
var WalSchema = z.object({
|
|
473
|
-
action: z.enum(["status", "enable", "disable", "checkpoint"]).describe(
|
|
474
|
-
"WAL action: 'status' = check journal_mode, 'enable' = switch to WAL, 'disable' = switch to DELETE (default journal mode), 'checkpoint' = force WAL checkpoint"
|
|
475
|
-
),
|
|
476
|
-
checkpointMode: z.enum(["PASSIVE", "FULL", "RESTART", "TRUNCATE"]).optional().default("PASSIVE").describe(
|
|
477
|
-
"Checkpoint mode (only used with 'checkpoint' action). PASSIVE = checkpoint without blocking readers (default). FULL = wait for readers to finish. RESTART = same as FULL but restart WAL file. TRUNCATE = same as RESTART but truncate WAL file to zero bytes."
|
|
478
|
-
)
|
|
479
|
-
});
|
|
480
|
-
var WalOutputSchema = z.object({
|
|
481
|
-
success: z.boolean(),
|
|
482
|
-
message: z.string().optional(),
|
|
483
|
-
journalMode: z.string().optional(),
|
|
484
|
-
previousMode: z.string().optional(),
|
|
485
|
-
walPages: z.number().optional(),
|
|
486
|
-
checkpointedPages: z.number().optional()
|
|
487
|
-
}).extend(ErrorResponseFields.shape);
|
|
488
|
-
|
|
489
|
-
export { ASSISTANT_FOCUSED, AnalyzeOutputSchema, AnalyzeSchema, AppendInsightOutputSchema, AppendInsightSchema, AttachDatabaseOutputSchema, AttachDatabaseSchema, AuditCleanupOutputSchema, AuditDiffBackupOutputSchema, AuditGetBackupOutputSchema, AuditListBackupsOutputSchema, AuditListBackupsSchema, AuditRestoreBackupOutputSchema, BackupOutputSchema, BackupSchema, DetachDatabaseOutputSchema, DetachDatabaseSchema, ErrorResponseFields, HIGH_PRIORITY, IndexStatsOutputSchema, IndexStatsSchema, IntegrityCheckOutputSchema, IntegrityCheckSchema, LOW_PRIORITY, MEDIUM_PRIORITY, NAME, OptimizeOutputSchema, OptimizeSchema, PragmaCompileOptionsOutputSchema, PragmaCompileOptionsSchema, PragmaDatabaseListOutputSchema, PragmaDatabaseListSchema, PragmaOptimizeOutputSchema, PragmaOptimizeSchema, PragmaSettingsOutputSchema, PragmaSettingsSchema, PragmaTableInfoOutputSchema, PragmaTableInfoSchema, READ_ONLY, ReindexOutputSchema, ReindexSchema, RestoreOutputSchema, RestoreSchema, SENSITIVE_KEY_PATTERN, SERVER_ICONS, SqlDumpOutputSchema, SqlDumpSchema, VERSION, VacuumIntoCopyOutputSchema, VacuumIntoCopySchema, VacuumOutputSchema, VerifyBackupOutputSchema, VerifyBackupSchema, WalOutputSchema, WalSchema, admin, adminFs, destructive, getRequiredScope, getToolGroupIcon, idempotent, readOnly, redactObject, registerToolScope, write, writeFs };
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
2
|
-
import type { DatabaseAdapter } from "../../adapters/database-adapter.js";
|
|
3
|
-
import type { BackupManager } from "../../audit/backup-manager.js";
|
|
4
|
-
import type { AuditLogger } from "../../audit/logger.js";
|
|
5
|
-
/**
|
|
6
|
-
* Register the sqlite://audit resource for agent access to audit log.
|
|
7
|
-
*/
|
|
8
|
-
export declare function registerAuditResource(server: McpServer, auditLogger: AuditLogger | null, backupManager: BackupManager | null): void;
|
|
9
|
-
/**
|
|
10
|
-
* Register audit backup tools for snapshot management.
|
|
11
|
-
*/
|
|
12
|
-
export declare function registerAuditBackupTools(server: McpServer, backupManager: BackupManager | null, adaptersMap: Map<string, DatabaseAdapter>): void;
|
|
13
|
-
//# sourceMappingURL=audit-tools.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"audit-tools.d.ts","sourceRoot":"","sources":["../../../src/server/registration/audit-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAsDzD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,aAAa,EAAE,aAAa,GAAG,IAAI,GAClC,IAAI,CAsCN;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,aAAa,GAAG,IAAI,EACnC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GACxC,IAAI,CAunBN"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Insights Manager
|
|
3
|
-
*
|
|
4
|
-
* Singleton manager for business insights collected during database analysis.
|
|
5
|
-
* Used by the append_insight tool and memo://insights resource.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Manages business insights collected during analysis sessions.
|
|
9
|
-
* Insights are stored in memory and synthesized into a formatted memo.
|
|
10
|
-
*/
|
|
11
|
-
declare class InsightsManager {
|
|
12
|
-
private insights;
|
|
13
|
-
/**
|
|
14
|
-
* Append a new business insight
|
|
15
|
-
*/
|
|
16
|
-
append(insight: string): void;
|
|
17
|
-
/**
|
|
18
|
-
* Get all insights
|
|
19
|
-
*/
|
|
20
|
-
getAll(): string[];
|
|
21
|
-
/**
|
|
22
|
-
* Get insight count
|
|
23
|
-
*/
|
|
24
|
-
count(): number;
|
|
25
|
-
/**
|
|
26
|
-
* Clear all insights
|
|
27
|
-
*/
|
|
28
|
-
clear(): void;
|
|
29
|
-
/**
|
|
30
|
-
* Synthesize insights into a formatted memo
|
|
31
|
-
*/
|
|
32
|
-
synthesizeMemo(): string;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Singleton instance of the insights manager
|
|
36
|
-
*/
|
|
37
|
-
export declare const insightsManager: InsightsManager;
|
|
38
|
-
export {};
|
|
39
|
-
//# sourceMappingURL=insights-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"insights-manager.d.ts","sourceRoot":"","sources":["../../src/utils/insights-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,cAAM,eAAe;IACnB,OAAO,CAAC,QAAQ,CAAgB;IAEhC;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM7B;;OAEG;IACH,MAAM,IAAI,MAAM,EAAE;IAIlB;;OAEG;IACH,KAAK,IAAI,MAAM;IAIf;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,cAAc,IAAI,MAAM;CAoBzB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
|