@backendkit-labs/curator-codex-agent 0.2.0 → 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.
- package/dist/analyzer.d.ts +1 -17
- package/dist/analyzer.d.ts.map +1 -1
- package/dist/analyzer.js +80 -163
- package/dist/analyzer.js.map +1 -1
- package/dist/audit.d.ts +27 -0
- package/dist/audit.d.ts.map +1 -0
- package/dist/audit.js +43 -0
- package/dist/audit.js.map +1 -0
- package/dist/checksum.d.ts +0 -22
- package/dist/checksum.d.ts.map +1 -1
- package/dist/checksum.js +14 -103
- package/dist/checksum.js.map +1 -1
- package/dist/documentation-curator.d.ts +1 -1
- package/dist/documentation-curator.d.ts.map +1 -1
- package/dist/documentation-curator.js +79 -95
- package/dist/documentation-curator.js.map +1 -1
- package/dist/index.d.ts +19 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -22
- package/dist/index.js.map +1 -1
- package/dist/knowledge/embedder-worker.d.ts +2 -0
- package/dist/knowledge/embedder-worker.d.ts.map +1 -0
- package/dist/knowledge/embedder-worker.js +55 -0
- package/dist/knowledge/embedder-worker.js.map +1 -0
- package/dist/knowledge/engine.d.ts +10 -56
- package/dist/knowledge/engine.d.ts.map +1 -1
- package/dist/knowledge/engine.js +42 -153
- package/dist/knowledge/engine.js.map +1 -1
- package/dist/knowledge/rag-provider.d.ts +14 -56
- package/dist/knowledge/rag-provider.d.ts.map +1 -1
- package/dist/knowledge/rag-provider.js +63 -154
- package/dist/knowledge/rag-provider.js.map +1 -1
- package/dist/knowledge/synthesis.d.ts +0 -10
- package/dist/knowledge/synthesis.d.ts.map +1 -1
- package/dist/knowledge/synthesis.js +32 -77
- package/dist/knowledge/synthesis.js.map +1 -1
- package/dist/knowledge/transformers-embedder.d.ts +61 -0
- package/dist/knowledge/transformers-embedder.d.ts.map +1 -0
- package/dist/knowledge/transformers-embedder.js +222 -0
- package/dist/knowledge/transformers-embedder.js.map +1 -0
- package/dist/pdf-reader.d.ts +11 -0
- package/dist/pdf-reader.d.ts.map +1 -0
- package/dist/pdf-reader.js +21 -0
- package/dist/pdf-reader.js.map +1 -0
- package/dist/project.d.ts +28 -0
- package/dist/project.d.ts.map +1 -0
- package/dist/project.js +88 -0
- package/dist/project.js.map +1 -0
- package/dist/providers/anthropic-adapter.d.ts +2 -2
- package/dist/providers/anthropic-adapter.d.ts.map +1 -1
- package/dist/providers/anthropic-adapter.js +7 -13
- package/dist/providers/anthropic-adapter.js.map +1 -1
- package/dist/providers/index.d.ts +1 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +13 -20
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/openai-adapter.d.ts +2 -2
- package/dist/providers/openai-adapter.d.ts.map +1 -1
- package/dist/providers/openai-adapter.js +7 -13
- package/dist/providers/openai-adapter.js.map +1 -1
- package/dist/providers/types.d.ts +8 -1
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js +1 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -3
- package/dist/types.js.map +1 -1
- package/dist/vault-dedup.d.ts +35 -0
- package/dist/vault-dedup.d.ts.map +1 -0
- package/dist/vault-dedup.js +130 -0
- package/dist/vault-dedup.js.map +1 -0
- package/package.json +43 -56
- package/AGENT.md +0 -187
- package/README.md +0 -475
- package/dist/api/config.d.ts +0 -57
- package/dist/api/config.d.ts.map +0 -1
- package/dist/api/config.js +0 -183
- package/dist/api/config.js.map +0 -1
- package/dist/api/http-server.d.ts +0 -24
- package/dist/api/http-server.d.ts.map +0 -1
- package/dist/api/http-server.js +0 -108
- package/dist/api/http-server.js.map +0 -1
- package/dist/api/routes.d.ts +0 -8
- package/dist/api/routes.d.ts.map +0 -1
- package/dist/api/routes.js +0 -382
- package/dist/api/routes.js.map +0 -1
- package/dist/api/security.d.ts +0 -107
- package/dist/api/security.d.ts.map +0 -1
- package/dist/api/security.js +0 -200
- package/dist/api/security.js.map +0 -1
- package/dist/http-server-main.d.ts +0 -28
- package/dist/http-server-main.d.ts.map +0 -1
- package/dist/http-server-main.js +0 -69
- package/dist/http-server-main.js.map +0 -1
- package/dist/server.d.ts +0 -33
- package/dist/server.d.ts.map +0 -1
- package/dist/server.js +0 -640
- package/dist/server.js.map +0 -1
- package/dist/watcher.d.ts +0 -26
- package/dist/watcher.d.ts.map +0 -1
- package/dist/watcher.js +0 -168
- package/dist/watcher.js.map +0 -1
package/dist/checksum.js
CHANGED
|
@@ -1,62 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.calculateFileHash = calculateFileHash;
|
|
37
|
-
exports.loadManifest = loadManifest;
|
|
38
|
-
exports.saveManifest = saveManifest;
|
|
39
|
-
exports.hasFileChanged = hasFileChanged;
|
|
40
|
-
exports.createManifest = createManifest;
|
|
41
|
-
exports.updateManifestEntry = updateManifestEntry;
|
|
42
|
-
exports.isCodeFile = isCodeFile;
|
|
43
|
-
exports.isDocFile = isDocFile;
|
|
44
|
-
exports.findAllFiles = findAllFiles;
|
|
45
|
-
exports.generateReport = generateReport;
|
|
46
|
-
const fs = __importStar(require("node:fs/promises"));
|
|
47
|
-
const crypto = __importStar(require("node:crypto"));
|
|
48
|
-
const path = __importStar(require("node:path"));
|
|
49
|
-
/**
|
|
50
|
-
* Calculate SHA256 hash of a file
|
|
51
|
-
*/
|
|
52
|
-
async function calculateFileHash(filePath) {
|
|
1
|
+
import * as fs from 'node:fs/promises';
|
|
2
|
+
import * as crypto from 'node:crypto';
|
|
3
|
+
import * as path from 'node:path';
|
|
4
|
+
export async function calculateFileHash(filePath) {
|
|
53
5
|
const content = await fs.readFile(filePath);
|
|
54
6
|
return crypto.createHash('sha256').update(content).digest('hex');
|
|
55
7
|
}
|
|
56
|
-
|
|
57
|
-
* Load manifest from INPUT_PATH
|
|
58
|
-
*/
|
|
59
|
-
async function loadManifest(inputPath) {
|
|
8
|
+
export async function loadManifest(inputPath) {
|
|
60
9
|
const manifestPath = path.join(inputPath, '.codex-manifest.json');
|
|
61
10
|
try {
|
|
62
11
|
const content = await fs.readFile(manifestPath, 'utf-8');
|
|
@@ -66,18 +15,12 @@ async function loadManifest(inputPath) {
|
|
|
66
15
|
return null;
|
|
67
16
|
}
|
|
68
17
|
}
|
|
69
|
-
|
|
70
|
-
* Save manifest to INPUT_PATH
|
|
71
|
-
*/
|
|
72
|
-
async function saveManifest(inputPath, manifest) {
|
|
18
|
+
export async function saveManifest(inputPath, manifest) {
|
|
73
19
|
const manifestPath = path.join(inputPath, '.codex-manifest.json');
|
|
74
20
|
manifest.lastUpdated = new Date().toISOString();
|
|
75
21
|
await fs.writeFile(manifestPath, JSON.stringify(manifest, null, 2), 'utf-8');
|
|
76
22
|
}
|
|
77
|
-
|
|
78
|
-
* Check if file changed since last analysis
|
|
79
|
-
*/
|
|
80
|
-
async function hasFileChanged(filePath, relativePath, manifest) {
|
|
23
|
+
export async function hasFileChanged(filePath, relativePath, manifest) {
|
|
81
24
|
if (!manifest)
|
|
82
25
|
return true;
|
|
83
26
|
const entry = manifest.files[relativePath];
|
|
@@ -86,10 +29,7 @@ async function hasFileChanged(filePath, relativePath, manifest) {
|
|
|
86
29
|
const currentHash = await calculateFileHash(filePath);
|
|
87
30
|
return currentHash !== entry.hash;
|
|
88
31
|
}
|
|
89
|
-
|
|
90
|
-
* Create initial manifest
|
|
91
|
-
*/
|
|
92
|
-
function createManifest(inputPath, outputPath) {
|
|
32
|
+
export function createManifest(inputPath, outputPath) {
|
|
93
33
|
return {
|
|
94
34
|
version: '1.0',
|
|
95
35
|
created: new Date().toISOString(),
|
|
@@ -99,10 +39,7 @@ function createManifest(inputPath, outputPath) {
|
|
|
99
39
|
files: {},
|
|
100
40
|
};
|
|
101
41
|
}
|
|
102
|
-
|
|
103
|
-
* Update manifest with file analysis result
|
|
104
|
-
*/
|
|
105
|
-
async function updateManifestEntry(manifest, filePath, relativePath, status) {
|
|
42
|
+
export async function updateManifestEntry(manifest, filePath, relativePath, status) {
|
|
106
43
|
const stat = await fs.stat(filePath);
|
|
107
44
|
const hash = await calculateFileHash(filePath);
|
|
108
45
|
manifest.files[relativePath] = {
|
|
@@ -114,20 +51,17 @@ async function updateManifestEntry(manifest, filePath, relativePath, status) {
|
|
|
114
51
|
status,
|
|
115
52
|
};
|
|
116
53
|
}
|
|
117
|
-
/**
|
|
118
|
-
* Recursively find all code and documentation files
|
|
119
|
-
*/
|
|
120
54
|
const CODE_EXTENSIONS = [
|
|
121
55
|
'.ts', '.tsx', '.js', '.jsx', '.py', '.go', '.rs', '.java', '.c', '.cpp', '.kt', '.swift',
|
|
122
56
|
];
|
|
123
|
-
const DOC_EXTENSIONS = ['.md', '.txt'];
|
|
124
|
-
function isCodeFile(filePath) {
|
|
57
|
+
const DOC_EXTENSIONS = ['.md', '.txt', '.pdf', '.yaml', '.yml'];
|
|
58
|
+
export function isCodeFile(filePath) {
|
|
125
59
|
return CODE_EXTENSIONS.some(ext => filePath.toLowerCase().endsWith(ext));
|
|
126
60
|
}
|
|
127
|
-
function isDocFile(filePath) {
|
|
61
|
+
export function isDocFile(filePath) {
|
|
128
62
|
return DOC_EXTENSIONS.some(ext => filePath.toLowerCase().endsWith(ext));
|
|
129
63
|
}
|
|
130
|
-
async function findAllFiles(dirPath, relativePath = '') {
|
|
64
|
+
export async function findAllFiles(dirPath, relativePath = '') {
|
|
131
65
|
const results = [];
|
|
132
66
|
try {
|
|
133
67
|
const entries = await fs.readdir(dirPath, { withFileTypes: true });
|
|
@@ -149,9 +83,7 @@ async function findAllFiles(dirPath, relativePath = '') {
|
|
|
149
83
|
results.push(...subResults);
|
|
150
84
|
}
|
|
151
85
|
else if (entry.isFile()) {
|
|
152
|
-
|
|
153
|
-
const hasDocExt = isDocFile(entry.name);
|
|
154
|
-
if (hasCodeExt || hasDocExt) {
|
|
86
|
+
if (isCodeFile(entry.name) || isDocFile(entry.name)) {
|
|
155
87
|
results.push({ fullPath, relativePath: relPath });
|
|
156
88
|
}
|
|
157
89
|
}
|
|
@@ -162,25 +94,4 @@ async function findAllFiles(dirPath, relativePath = '') {
|
|
|
162
94
|
}
|
|
163
95
|
return results;
|
|
164
96
|
}
|
|
165
|
-
/**
|
|
166
|
-
* Generate analysis report
|
|
167
|
-
*/
|
|
168
|
-
function generateReport(manifest) {
|
|
169
|
-
const entries = Object.values(manifest.files);
|
|
170
|
-
const succeeded = entries.filter(e => e.status === 'success').length;
|
|
171
|
-
const failed = entries.filter(e => e.status === 'failed').length;
|
|
172
|
-
const skipped = entries.filter(e => e.status === 'skipped').length;
|
|
173
|
-
return `
|
|
174
|
-
📊 Code Analysis Report
|
|
175
|
-
───────────────────────
|
|
176
|
-
Total Files: ${entries.length}
|
|
177
|
-
✓ Analyzed: ${succeeded}
|
|
178
|
-
✗ Failed: ${failed}
|
|
179
|
-
⊘ Skipped: ${skipped}
|
|
180
|
-
Processed: ${succeeded + failed} / ${entries.length}
|
|
181
|
-
Efficiency: ${skipped > 0 ? `${Math.round((skipped / entries.length) * 100)}% of files unchanged` : 'All files processed'}
|
|
182
|
-
|
|
183
|
-
Last Updated: ${new Date(manifest.lastUpdated).toLocaleString()}
|
|
184
|
-
`;
|
|
185
|
-
}
|
|
186
97
|
//# sourceMappingURL=checksum.js.map
|
package/dist/checksum.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checksum.js","sourceRoot":"","sources":["../src/checksum.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"checksum.js","sourceRoot":"","sources":["../src/checksum.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export declare class DocumentationCurator {
|
|
|
10
10
|
private readonly vaultPath;
|
|
11
11
|
private readonly maxInputChars;
|
|
12
12
|
constructor(opts: DocumentationCuratorOptions);
|
|
13
|
-
curateText(text: string, source: string, areaHint?: string): Promise<CodeAnalysisResult>;
|
|
13
|
+
curateText(text: string, source: string, areaHint?: string, sourcePath?: string): Promise<CodeAnalysisResult>;
|
|
14
14
|
curateFile(filePath: string, areaHint?: string): Promise<CodeAnalysisResult>;
|
|
15
15
|
private callLLM;
|
|
16
16
|
private writeNote;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"documentation-curator.d.ts","sourceRoot":"","sources":["../src/documentation-curator.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"documentation-curator.d.ts","sourceRoot":"","sources":["../src/documentation-curator.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AA6GrD,MAAM,WAAW,2BAA2B;IACxC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;gBAE3B,IAAI,EAAE,2BAA2B;IAMvC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA8C7G,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;YAgCpE,OAAO;YAwBP,SAAS;CAiB1B"}
|
|
@@ -1,89 +1,55 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.DocumentationCurator = void 0;
|
|
37
|
-
const fs = __importStar(require("node:fs/promises"));
|
|
38
|
-
const path = __importStar(require("node:path"));
|
|
39
|
-
const zod_1 = require("zod");
|
|
40
|
-
const DocumentationNoteSchema = zod_1.z.object({
|
|
41
|
-
type: zod_1.z.enum(['politica', 'decision', 'procedimiento', 'leccion', 'norma_externa']),
|
|
42
|
-
area: zod_1.z.enum(['rrhh', 'finanzas', 'operaciones', 'ventas', 'soporte', 'legal', 'calidad', 'general']),
|
|
43
|
-
title: zod_1.z.string().max(120),
|
|
44
|
-
resumen: zod_1.z.string().max(500),
|
|
45
|
-
content: zod_1.z.string(),
|
|
46
|
-
tags: zod_1.z.array(zod_1.z.string()),
|
|
47
|
-
vigente_desde: zod_1.z.string().optional(),
|
|
48
|
-
version: zod_1.z.number().optional(),
|
|
49
|
-
expires_at: zod_1.z.string().optional(),
|
|
50
|
-
decidido_por: zod_1.z.array(zod_1.z.string()).optional(),
|
|
51
|
-
aplica_a: zod_1.z.array(zod_1.z.string()).optional(),
|
|
1
|
+
import * as fs from 'node:fs/promises';
|
|
2
|
+
import * as path from 'node:path';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { extractPdfText } from './pdf-reader.js';
|
|
5
|
+
import { removeNotesForSource, normalizeSourcePath } from './vault-dedup.js';
|
|
6
|
+
const DocumentationNoteSchema = z.object({
|
|
7
|
+
type: z.enum(['politica', 'decision', 'procedimiento', 'leccion', 'norma_externa']),
|
|
8
|
+
area: z.enum(['rrhh', 'finanzas', 'operaciones', 'ventas', 'soporte', 'legal', 'calidad', 'general']),
|
|
9
|
+
title: z.string().max(120),
|
|
10
|
+
resumen: z.string().max(500),
|
|
11
|
+
content: z.string(),
|
|
12
|
+
tags: z.array(z.string()),
|
|
13
|
+
vigente_desde: z.string().optional(),
|
|
14
|
+
version: z.number().optional(),
|
|
15
|
+
expires_at: z.string().optional(),
|
|
16
|
+
decidido_por: z.array(z.string()).optional(),
|
|
17
|
+
aplica_a: z.array(z.string()).optional(),
|
|
52
18
|
});
|
|
53
|
-
const DocumentationResponseSchema =
|
|
54
|
-
notes:
|
|
19
|
+
const DocumentationResponseSchema = z.object({
|
|
20
|
+
notes: z.array(DocumentationNoteSchema),
|
|
55
21
|
});
|
|
56
|
-
const SYSTEM_PROMPT = `\
|
|
57
|
-
You are a Knowledge Curator for an enterprise vault.
|
|
58
|
-
Your task: analyze a document and extract structured knowledge notes.
|
|
59
|
-
|
|
60
|
-
IMPORTANT: Return ONLY a valid JSON object — no markdown, no prose, no code fences.
|
|
61
|
-
|
|
62
|
-
Schema (return exactly this shape):
|
|
63
|
-
{
|
|
64
|
-
"notes": [
|
|
65
|
-
{
|
|
66
|
-
"type": "politica" | "decision" | "procedimiento" | "leccion" | "norma_externa",
|
|
67
|
-
"area": "rrhh" | "finanzas" | "operaciones" | "ventas" | "soporte" | "legal" | "calidad" | "general",
|
|
68
|
-
"title": string,
|
|
69
|
-
"resumen": string,
|
|
70
|
-
"content": string,
|
|
71
|
-
"tags": string[],
|
|
72
|
-
"vigente_desde": "YYYY-MM-DD" | undefined,
|
|
73
|
-
"version": number | undefined,
|
|
74
|
-
"expires_at": "YYYY-MM-DD" | undefined,
|
|
75
|
-
"decidido_por": string[] | undefined,
|
|
76
|
-
"aplica_a": string[] | undefined
|
|
77
|
-
}
|
|
78
|
-
]
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
Rules:
|
|
82
|
-
- If the document covers multiple areas, create one note per area (max 5 total).
|
|
83
|
-
- Each note must be self-contained.
|
|
84
|
-
- "resumen" must contain all key searchable terms: amounts, dates, percentages, proper nouns.
|
|
85
|
-
- "content" must use ## headings.
|
|
86
|
-
- Documents in any language are valid. Output in the same language as the document.
|
|
22
|
+
const SYSTEM_PROMPT = `\
|
|
23
|
+
You are a Knowledge Curator for an enterprise vault.
|
|
24
|
+
Your task: analyze a document and extract structured knowledge notes.
|
|
25
|
+
|
|
26
|
+
IMPORTANT: Return ONLY a valid JSON object — no markdown, no prose, no code fences.
|
|
27
|
+
|
|
28
|
+
Schema (return exactly this shape):
|
|
29
|
+
{
|
|
30
|
+
"notes": [
|
|
31
|
+
{
|
|
32
|
+
"type": "politica" | "decision" | "procedimiento" | "leccion" | "norma_externa",
|
|
33
|
+
"area": "rrhh" | "finanzas" | "operaciones" | "ventas" | "soporte" | "legal" | "calidad" | "general",
|
|
34
|
+
"title": string,
|
|
35
|
+
"resumen": string,
|
|
36
|
+
"content": string,
|
|
37
|
+
"tags": string[],
|
|
38
|
+
"vigente_desde": "YYYY-MM-DD" | undefined,
|
|
39
|
+
"version": number | undefined,
|
|
40
|
+
"expires_at": "YYYY-MM-DD" | undefined,
|
|
41
|
+
"decidido_por": string[] | undefined,
|
|
42
|
+
"aplica_a": string[] | undefined
|
|
43
|
+
}
|
|
44
|
+
]
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
Rules:
|
|
48
|
+
- If the document covers multiple areas, create one note per area (max 5 total).
|
|
49
|
+
- Each note must be self-contained.
|
|
50
|
+
- "resumen" must contain all key searchable terms: amounts, dates, percentages, proper nouns.
|
|
51
|
+
- "content" must use ## headings.
|
|
52
|
+
- Documents in any language are valid. Output in the same language as the document.
|
|
87
53
|
- If the document has no enterprise relevance, return { "notes": [] }.`;
|
|
88
54
|
function slugify(title) {
|
|
89
55
|
return title
|
|
@@ -95,7 +61,7 @@ function slugify(title) {
|
|
|
95
61
|
.replace(/\s+/g, '-')
|
|
96
62
|
.slice(0, 60);
|
|
97
63
|
}
|
|
98
|
-
function buildFrontmatter(note, source, date) {
|
|
64
|
+
function buildFrontmatter(note, source, date, sourcePath) {
|
|
99
65
|
const tagsLine = `[${note.tags.map(t => `"${t}"`).join(', ')}]`;
|
|
100
66
|
const lines = [
|
|
101
67
|
'---',
|
|
@@ -106,8 +72,10 @@ function buildFrontmatter(note, source, date) {
|
|
|
106
72
|
`author: "agent/codex"`,
|
|
107
73
|
`date: ${date}`,
|
|
108
74
|
`source_ref: "${source}"`,
|
|
109
|
-
`tags: ${tagsLine}`,
|
|
110
75
|
];
|
|
76
|
+
if (sourcePath)
|
|
77
|
+
lines.push(`source_path: "${normalizeSourcePath(sourcePath)}"`);
|
|
78
|
+
lines.push(`tags: ${tagsLine}`);
|
|
111
79
|
if (note.vigente_desde)
|
|
112
80
|
lines.push(`vigente_desde: ${note.vigente_desde}`);
|
|
113
81
|
if (note.version)
|
|
@@ -123,7 +91,7 @@ function buildFrontmatter(note, source, date) {
|
|
|
123
91
|
lines.push('---', '', note.content);
|
|
124
92
|
return lines.join('\n');
|
|
125
93
|
}
|
|
126
|
-
class DocumentationCurator {
|
|
94
|
+
export class DocumentationCurator {
|
|
127
95
|
provider;
|
|
128
96
|
vaultPath;
|
|
129
97
|
maxInputChars;
|
|
@@ -132,7 +100,7 @@ class DocumentationCurator {
|
|
|
132
100
|
this.vaultPath = opts.vaultPath;
|
|
133
101
|
this.maxInputChars = opts.maxInputChars ?? 12_000;
|
|
134
102
|
}
|
|
135
|
-
async curateText(text, source, areaHint) {
|
|
103
|
+
async curateText(text, source, areaHint, sourcePath) {
|
|
136
104
|
const start = Date.now();
|
|
137
105
|
const result = {
|
|
138
106
|
notesWritten: [],
|
|
@@ -155,9 +123,12 @@ class DocumentationCurator {
|
|
|
155
123
|
return result;
|
|
156
124
|
}
|
|
157
125
|
const date = new Date().toISOString().slice(0, 10);
|
|
126
|
+
// Borra notas previas del mismo archivo de origen para no acumular duplicados.
|
|
127
|
+
if (sourcePath)
|
|
128
|
+
await removeNotesForSource(this.vaultPath, sourcePath);
|
|
158
129
|
for (const note of parsed.notes) {
|
|
159
130
|
try {
|
|
160
|
-
const written = await this.writeNote(note, source, date);
|
|
131
|
+
const written = await this.writeNote(note, source, date, sourcePath);
|
|
161
132
|
if (written === null) {
|
|
162
133
|
result.notesSkipped.push(note.title);
|
|
163
134
|
}
|
|
@@ -173,6 +144,22 @@ class DocumentationCurator {
|
|
|
173
144
|
return result;
|
|
174
145
|
}
|
|
175
146
|
async curateFile(filePath, areaHint) {
|
|
147
|
+
const isPdf = filePath.toLowerCase().endsWith('.pdf');
|
|
148
|
+
if (isPdf) {
|
|
149
|
+
try {
|
|
150
|
+
const { text, pages, filename } = await extractPdfText(filePath);
|
|
151
|
+
const source = `${filename} (${pages} pages)`;
|
|
152
|
+
return await this.curateText(text, source, areaHint, filePath);
|
|
153
|
+
}
|
|
154
|
+
catch (err) {
|
|
155
|
+
return {
|
|
156
|
+
notesWritten: [],
|
|
157
|
+
notesSkipped: [],
|
|
158
|
+
errors: [`Cannot extract PDF text: ${err.message}`],
|
|
159
|
+
durationMs: 0,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
}
|
|
176
163
|
let text;
|
|
177
164
|
try {
|
|
178
165
|
text = await fs.readFile(filePath, 'utf-8');
|
|
@@ -185,10 +172,8 @@ class DocumentationCurator {
|
|
|
185
172
|
durationMs: 0,
|
|
186
173
|
};
|
|
187
174
|
}
|
|
188
|
-
|
|
189
|
-
return await this.curateText(text, source, areaHint);
|
|
175
|
+
return await this.curateText(text, path.basename(filePath), areaHint, filePath);
|
|
190
176
|
}
|
|
191
|
-
// ── Private ────────────────────────────────────────────────────────────────
|
|
192
177
|
async callLLM(text, source, areaHint) {
|
|
193
178
|
const truncated = text.slice(0, this.maxInputChars);
|
|
194
179
|
const hintLine = areaHint ? `\nArea hint: this document is primarily about "${areaHint}".` : '';
|
|
@@ -210,7 +195,7 @@ class DocumentationCurator {
|
|
|
210
195
|
}
|
|
211
196
|
return DocumentationResponseSchema.parse(parsed);
|
|
212
197
|
}
|
|
213
|
-
async writeNote(note, source, date) {
|
|
198
|
+
async writeNote(note, source, date, sourcePath) {
|
|
214
199
|
const dir = path.join(this.vaultPath, note.area);
|
|
215
200
|
const slug = slugify(note.title);
|
|
216
201
|
const filename = `${date}-${slug}.md`;
|
|
@@ -223,9 +208,8 @@ class DocumentationCurator {
|
|
|
223
208
|
// doesn't exist — proceed
|
|
224
209
|
}
|
|
225
210
|
await fs.mkdir(dir, { recursive: true });
|
|
226
|
-
await fs.writeFile(filePath, buildFrontmatter(note, source, date), 'utf-8');
|
|
211
|
+
await fs.writeFile(filePath, buildFrontmatter(note, source, date, sourcePath), 'utf-8');
|
|
227
212
|
return filePath;
|
|
228
213
|
}
|
|
229
214
|
}
|
|
230
|
-
exports.DocumentationCurator = DocumentationCurator;
|
|
231
215
|
//# sourceMappingURL=documentation-curator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"documentation-curator.js","sourceRoot":"","sources":["../src/documentation-curator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"documentation-curator.js","sourceRoot":"","sources":["../src/documentation-curator.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,16 +1,26 @@
|
|
|
1
|
+
export type { CodeAnalysisNote, CodeAnalysisResponse, CodeAnalysisResult, AssociatedDocs, FileAnalysisContext, } from './types.js';
|
|
2
|
+
export { resolveProject, findNote } from './project.js';
|
|
3
|
+
export type { ProjectContext } from './project.js';
|
|
1
4
|
export { CodeAnalyzer } from './analyzer.js';
|
|
5
|
+
export type { CodeAnalyzerOptions } from './analyzer.js';
|
|
2
6
|
export { DocumentationCurator } from './documentation-curator.js';
|
|
3
|
-
export type {
|
|
4
|
-
export {
|
|
5
|
-
export type {
|
|
6
|
-
export {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export type {
|
|
7
|
+
export type { DocumentationCuratorOptions } from './documentation-curator.js';
|
|
8
|
+
export { extractPdfText } from './pdf-reader.js';
|
|
9
|
+
export type { PdfContent } from './pdf-reader.js';
|
|
10
|
+
export { normalizeSourcePath, readSourcePath, removeNotesForSource, findOrphanedNotes, deleteNotes, } from './vault-dedup.js';
|
|
11
|
+
export type { OrphanedNote } from './vault-dedup.js';
|
|
12
|
+
export { calculateFileHash, loadManifest, saveManifest, hasFileChanged, createManifest, updateManifestEntry, isCodeFile, isDocFile, findAllFiles, } from './checksum.js';
|
|
13
|
+
export type { CodexManifest, FileChecksum } from './checksum.js';
|
|
14
|
+
export { CodexAuditLogger, buildCodexAuditPath } from './audit.js';
|
|
15
|
+
export type { CodexEvent, CodexAuditEntry } from './audit.js';
|
|
16
|
+
export { createProvider, OpenAIAdapter, AnthropicAdapter } from './providers/index.js';
|
|
17
|
+
export type { CuratorLLMProvider, ProviderConfig, ProviderName } from './providers/index.js';
|
|
18
|
+
export { KnowledgeEngine } from './knowledge/engine.js';
|
|
19
|
+
export type { SearchResponse, ReloadResponse } from './knowledge/engine.js';
|
|
10
20
|
export { CuratorRagProvider } from './knowledge/rag-provider.js';
|
|
11
21
|
export type { RagSearchResult, RagSearchOptions } from './knowledge/rag-provider.js';
|
|
12
22
|
export { KnowledgeSynthesizer } from './knowledge/synthesis.js';
|
|
13
23
|
export type { SynthesizedNote } from './knowledge/synthesis.js';
|
|
14
|
-
export {
|
|
15
|
-
export type {
|
|
24
|
+
export { TransformersEmbedder } from './knowledge/transformers-embedder.js';
|
|
25
|
+
export type { EmbedderProgress } from './knowledge/transformers-embedder.js';
|
|
16
26
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACR,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,GACtB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxD,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,YAAY,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAE9E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EACH,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,GACd,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EACH,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,UAAU,EACV,SAAS,EACT,YAAY,GACf,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACnE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE9D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACvF,YAAY,EAAE,kBAAkB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAE7F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAErF,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,YAAY,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,23 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var http_server_js_1 = require("./api/http-server.js");
|
|
14
|
-
Object.defineProperty(exports, "CuratorHttpServer", { enumerable: true, get: function () { return http_server_js_1.CuratorHttpServer; } });
|
|
15
|
-
var config_js_1 = require("./api/config.js");
|
|
16
|
-
Object.defineProperty(exports, "ConfigManager", { enumerable: true, get: function () { return config_js_1.ConfigManager; } });
|
|
17
|
-
var rag_provider_js_1 = require("./knowledge/rag-provider.js");
|
|
18
|
-
Object.defineProperty(exports, "CuratorRagProvider", { enumerable: true, get: function () { return rag_provider_js_1.CuratorRagProvider; } });
|
|
19
|
-
var synthesis_js_1 = require("./knowledge/synthesis.js");
|
|
20
|
-
Object.defineProperty(exports, "KnowledgeSynthesizer", { enumerable: true, get: function () { return synthesis_js_1.KnowledgeSynthesizer; } });
|
|
21
|
-
var engine_js_1 = require("./knowledge/engine.js");
|
|
22
|
-
Object.defineProperty(exports, "KnowledgeEngine", { enumerable: true, get: function () { return engine_js_1.KnowledgeEngine; } });
|
|
1
|
+
export { resolveProject, findNote } from './project.js';
|
|
2
|
+
export { CodeAnalyzer } from './analyzer.js';
|
|
3
|
+
export { DocumentationCurator } from './documentation-curator.js';
|
|
4
|
+
export { extractPdfText } from './pdf-reader.js';
|
|
5
|
+
export { normalizeSourcePath, readSourcePath, removeNotesForSource, findOrphanedNotes, deleteNotes, } from './vault-dedup.js';
|
|
6
|
+
export { calculateFileHash, loadManifest, saveManifest, hasFileChanged, createManifest, updateManifestEntry, isCodeFile, isDocFile, findAllFiles, } from './checksum.js';
|
|
7
|
+
export { CodexAuditLogger, buildCodexAuditPath } from './audit.js';
|
|
8
|
+
export { createProvider, OpenAIAdapter, AnthropicAdapter } from './providers/index.js';
|
|
9
|
+
export { KnowledgeEngine } from './knowledge/engine.js';
|
|
10
|
+
export { CuratorRagProvider } from './knowledge/rag-provider.js';
|
|
11
|
+
export { KnowledgeSynthesizer } from './knowledge/synthesis.js';
|
|
12
|
+
export { TransformersEmbedder } from './knowledge/transformers-embedder.js';
|
|
23
13
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGxD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAGlE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,OAAO,EACH,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,WAAW,GACd,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACH,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,UAAU,EACV,SAAS,EACT,YAAY,GACf,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGnE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGvF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAGhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embedder-worker.d.ts","sourceRoot":"","sources":["../../src/knowledge/embedder-worker.ts"],"names":[],"mappings":""}
|