@jcode.labs/mimir 0.4.6 → 0.4.7
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 +10 -4
- package/dist/cli.js +47 -5
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +9 -0
- package/dist/config.js.map +1 -1
- package/dist/defaults.d.ts.map +1 -1
- package/dist/defaults.js +3 -0
- package/dist/defaults.js.map +1 -1
- package/dist/doctor.d.ts.map +1 -1
- package/dist/doctor.js +17 -2
- package/dist/doctor.js.map +1 -1
- package/dist/files.d.ts +6 -1
- package/dist/files.d.ts.map +1 -1
- package/dist/files.js +115 -6
- package/dist/files.js.map +1 -1
- package/dist/ingest.d.ts.map +1 -1
- package/dist/ingest.js +76 -19
- package/dist/ingest.js.map +1 -1
- package/dist/mcp.d.ts +1 -0
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +7 -1
- package/dist/mcp.js.map +1 -1
- package/dist/parsing.d.ts.map +1 -1
- package/dist/parsing.js +25 -1
- package/dist/parsing.js.map +1 -1
- package/dist/setup.js +2 -1
- package/dist/setup.js.map +1 -1
- package/dist/skill.d.ts +3 -0
- package/dist/skill.d.ts.map +1 -1
- package/dist/skill.js +68 -2
- package/dist/skill.js.map +1 -1
- package/dist/types.d.ts +32 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/examples/sovereign-rag-demo/README.md +13 -0
- package/examples/sovereign-rag-demo/raw/facility-scan.heic +3 -0
- package/package.json +2 -2
- package/skills/mimir/SKILL.md +35 -3
- package/skills/mimir-audio-summary/SKILL.md +2 -1
- package/skills/mimir-markdown-report/SKILL.md +110 -0
package/dist/skill.js
CHANGED
|
@@ -7,6 +7,7 @@ import { kbCommand } from "./package-manager.js";
|
|
|
7
7
|
const PACKAGE_ROOT = path.dirname(path.dirname(fileURLToPath(import.meta.url)));
|
|
8
8
|
const PRIMARY_SKILL_NAME = "mimir";
|
|
9
9
|
const AUDIO_SKILL_NAME = "mimir-audio-summary";
|
|
10
|
+
const REPORT_SKILL_NAME = "mimir-markdown-report";
|
|
10
11
|
export function bundledSkillPath(skillName = PRIMARY_SKILL_NAME) {
|
|
11
12
|
return path.join(PACKAGE_ROOT, "skills", skillName);
|
|
12
13
|
}
|
|
@@ -15,22 +16,34 @@ export async function installSkill(options = {}) {
|
|
|
15
16
|
const targetDir = path.resolve(cwd, options.targetDir ?? DEFAULT_SKILL_TARGET_DIR);
|
|
16
17
|
const skillPath = path.join(targetDir, PRIMARY_SKILL_NAME);
|
|
17
18
|
const audioSkillPath = path.join(targetDir, AUDIO_SKILL_NAME);
|
|
19
|
+
const reportSkillPath = path.join(targetDir, REPORT_SKILL_NAME);
|
|
18
20
|
const mimirDir = path.resolve(cwd, MIMIR_DIR);
|
|
19
21
|
const mcpConfigPath = path.join(mimirDir, "mcp.json");
|
|
22
|
+
const claudeConfigPath = path.join(mimirDir, "claude-mcp-server.json");
|
|
23
|
+
const codexConfigPath = path.join(mimirDir, "codex-mcp.toml");
|
|
20
24
|
const readmePath = path.join(mimirDir, "README.md");
|
|
21
25
|
await mkdir(targetDir, { recursive: true });
|
|
22
26
|
await mkdir(mimirDir, { recursive: true });
|
|
23
27
|
await cp(bundledSkillPath(PRIMARY_SKILL_NAME), skillPath, { recursive: true, force: true });
|
|
24
28
|
await cp(bundledSkillPath(AUDIO_SKILL_NAME), audioSkillPath, { recursive: true, force: true });
|
|
29
|
+
await cp(bundledSkillPath(REPORT_SKILL_NAME), reportSkillPath, {
|
|
30
|
+
recursive: true,
|
|
31
|
+
force: true,
|
|
32
|
+
});
|
|
25
33
|
const serveCommand = await kbCommand(cwd, ["serve-mcp"]);
|
|
26
34
|
const doctorCommand = await kbCommand(cwd, ["doctor"]);
|
|
27
35
|
await writeFile(mcpConfigPath, `${JSON.stringify(mcpConfig(cwd, serveCommand), null, 2)}\n`, "utf8");
|
|
28
|
-
await writeFile(
|
|
36
|
+
await writeFile(claudeConfigPath, `${JSON.stringify(claudeMcpServer(serveCommand), null, 2)}\n`, "utf8");
|
|
37
|
+
await writeFile(codexConfigPath, codexMcpConfig(cwd, serveCommand), "utf8");
|
|
38
|
+
await writeFile(readmePath, agentKitReadme(skillPath, audioSkillPath, reportSkillPath, mcpConfigPath, codexConfigPath, serveCommand.display, doctorCommand.display), "utf8");
|
|
29
39
|
const wroteGitignore = await ensureMimirGitignore(cwd);
|
|
30
40
|
const written = [
|
|
31
41
|
path.relative(cwd, skillPath),
|
|
32
42
|
path.relative(cwd, audioSkillPath),
|
|
43
|
+
path.relative(cwd, reportSkillPath),
|
|
33
44
|
path.relative(cwd, mcpConfigPath),
|
|
45
|
+
path.relative(cwd, claudeConfigPath),
|
|
46
|
+
path.relative(cwd, codexConfigPath),
|
|
34
47
|
path.relative(cwd, readmePath),
|
|
35
48
|
];
|
|
36
49
|
if (wroteGitignore) {
|
|
@@ -39,7 +52,10 @@ export async function installSkill(options = {}) {
|
|
|
39
52
|
return {
|
|
40
53
|
skillPath,
|
|
41
54
|
audioSkillPath,
|
|
55
|
+
reportSkillPath,
|
|
42
56
|
mcpConfigPath,
|
|
57
|
+
claudeConfigPath,
|
|
58
|
+
codexConfigPath,
|
|
43
59
|
readmePath,
|
|
44
60
|
written,
|
|
45
61
|
};
|
|
@@ -55,7 +71,28 @@ function mcpConfig(cwd, serveCommand) {
|
|
|
55
71
|
},
|
|
56
72
|
};
|
|
57
73
|
}
|
|
58
|
-
function
|
|
74
|
+
function claudeMcpServer(serveCommand) {
|
|
75
|
+
return {
|
|
76
|
+
type: "stdio",
|
|
77
|
+
command: serveCommand.command,
|
|
78
|
+
args: serveCommand.args,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
function codexMcpConfig(cwd, serveCommand) {
|
|
82
|
+
return `[mcp_servers.mimir]
|
|
83
|
+
command = ${tomlString(serveCommand.command)}
|
|
84
|
+
args = ${tomlArray(serveCommand.args)}
|
|
85
|
+
cwd = ${tomlString(cwd)}
|
|
86
|
+
|
|
87
|
+
`;
|
|
88
|
+
}
|
|
89
|
+
function tomlArray(values) {
|
|
90
|
+
return `[${values.map(tomlString).join(", ")}]`;
|
|
91
|
+
}
|
|
92
|
+
function tomlString(value) {
|
|
93
|
+
return JSON.stringify(value);
|
|
94
|
+
}
|
|
95
|
+
function agentKitReadme(skillPath, audioSkillPath, reportSkillPath, mcpConfigPath, codexConfigPath, serveCommand, doctorCommand) {
|
|
59
96
|
return `# Mimir Agent Kit
|
|
60
97
|
|
|
61
98
|
This folder contains portable agent instructions for Mimir.
|
|
@@ -80,6 +117,15 @@ Use it only when the user asks for a listenable summary. It renders generated au
|
|
|
80
117
|
local Mimir state by default. Use Transformers.js WAV for confidential content and Edge MP3 only
|
|
81
118
|
when online TTS is explicitly acceptable.
|
|
82
119
|
|
|
120
|
+
Optional Markdown-report skill folder:
|
|
121
|
+
|
|
122
|
+
\`\`\`plain text
|
|
123
|
+
${reportSkillPath}
|
|
124
|
+
\`\`\`
|
|
125
|
+
|
|
126
|
+
Use it when the user asks for a cited Markdown report, dossier, audit memo, or planning note. It
|
|
127
|
+
writes reports under ignored local Mimir state by default.
|
|
128
|
+
|
|
83
129
|
## MCP
|
|
84
130
|
|
|
85
131
|
MCP config example:
|
|
@@ -94,6 +140,26 @@ Use the MCP server when your agent supports MCP tools. The server command is:
|
|
|
94
140
|
${serveCommand}
|
|
95
141
|
\`\`\`
|
|
96
142
|
|
|
143
|
+
Claude Code local setup:
|
|
144
|
+
|
|
145
|
+
\`\`\`bash
|
|
146
|
+
claude mcp add-json --scope local mimir "$(cat ${MIMIR_DIR}/claude-mcp-server.json)"
|
|
147
|
+
\`\`\`
|
|
148
|
+
|
|
149
|
+
Run that command from this repository root. Mimir also reads \`CLAUDE_PROJECT_DIR\`, so the server
|
|
150
|
+
uses the active Claude Code project as the knowledge-base root.
|
|
151
|
+
|
|
152
|
+
For other MCP clients that cannot set a working directory, launch the server with
|
|
153
|
+
\`MIMIR_PROJECT_ROOT=/absolute/path/to/repository\`.
|
|
154
|
+
|
|
155
|
+
Codex setup:
|
|
156
|
+
|
|
157
|
+
\`\`\`plain text
|
|
158
|
+
${codexConfigPath}
|
|
159
|
+
\`\`\`
|
|
160
|
+
|
|
161
|
+
Copy that TOML snippet into \`~/.codex/config.toml\` or another trusted Codex config layer.
|
|
162
|
+
|
|
97
163
|
Before relying on retrieved context, run:
|
|
98
164
|
|
|
99
165
|
\`\`\`bash
|
package/dist/skill.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -17,6 +17,9 @@ export interface Config {
|
|
|
17
17
|
topK: number;
|
|
18
18
|
chunkSize: number;
|
|
19
19
|
chunkOverlap: number;
|
|
20
|
+
maxFileBytes: number;
|
|
21
|
+
ingestConcurrency: number;
|
|
22
|
+
embeddingBatchSize: number;
|
|
20
23
|
includeExtensions: string[];
|
|
21
24
|
}
|
|
22
25
|
export type EmbeddingProvider = "local-hash" | "transformers";
|
|
@@ -44,6 +47,19 @@ export interface SourceFile {
|
|
|
44
47
|
mtimeMs: number;
|
|
45
48
|
checksum: string;
|
|
46
49
|
}
|
|
50
|
+
export type SkippedSourceReason = "unsupported-extension" | "oversized" | "sensitive-name";
|
|
51
|
+
export interface SkippedSourceFile {
|
|
52
|
+
relativePath: string;
|
|
53
|
+
source: string;
|
|
54
|
+
extension: string;
|
|
55
|
+
bytes: number;
|
|
56
|
+
reason: SkippedSourceReason;
|
|
57
|
+
}
|
|
58
|
+
export interface SourceInventory {
|
|
59
|
+
discoveredFiles: number;
|
|
60
|
+
supportedFiles: SourceFile[];
|
|
61
|
+
skippedFiles: SkippedSourceFile[];
|
|
62
|
+
}
|
|
47
63
|
export interface ParsedDocument {
|
|
48
64
|
file: SourceFile;
|
|
49
65
|
text: string;
|
|
@@ -66,9 +82,18 @@ export interface IngestOptions {
|
|
|
66
82
|
rebuild?: boolean;
|
|
67
83
|
}
|
|
68
84
|
export interface IngestResult {
|
|
85
|
+
discoveredFiles: number;
|
|
86
|
+
supportedFiles: number;
|
|
69
87
|
indexedFiles: number;
|
|
70
88
|
chunks: number;
|
|
71
89
|
skippedFiles: number;
|
|
90
|
+
unsupportedFiles: number;
|
|
91
|
+
oversizedFiles: number;
|
|
92
|
+
sensitiveFiles: number;
|
|
93
|
+
unsupportedExtensions: Array<{
|
|
94
|
+
extension: string;
|
|
95
|
+
count: number;
|
|
96
|
+
}>;
|
|
72
97
|
redactions: number;
|
|
73
98
|
errors: Array<{
|
|
74
99
|
path: string;
|
|
@@ -96,6 +121,11 @@ export interface AuditReport {
|
|
|
96
121
|
chunks: number;
|
|
97
122
|
}>;
|
|
98
123
|
supportedFiles: string[];
|
|
124
|
+
skippedFiles: SkippedSourceFile[];
|
|
125
|
+
unsupportedExtensions: Array<{
|
|
126
|
+
extension: string;
|
|
127
|
+
count: number;
|
|
128
|
+
}>;
|
|
99
129
|
missingFromIndex: string[];
|
|
100
130
|
staleInIndex: string[];
|
|
101
131
|
totalChunks: number;
|
|
@@ -118,6 +148,8 @@ export interface DoctorReport {
|
|
|
118
148
|
redactionEnabled: boolean;
|
|
119
149
|
accessLog: boolean;
|
|
120
150
|
supportedFiles: number;
|
|
151
|
+
skippedFiles: number;
|
|
152
|
+
unsupportedFiles: number;
|
|
121
153
|
indexedFiles: number;
|
|
122
154
|
chunksIndexed: number;
|
|
123
155
|
missingFromIndex: number;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.4.
|
|
1
|
+
export declare const VERSION = "0.4.7";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = "0.4.
|
|
1
|
+
export const VERSION = "0.4.7";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
|
@@ -13,6 +13,7 @@ This folder must never contain real-world sensitive, regulated, or production do
|
|
|
13
13
|
- JSONL incident timelines.
|
|
14
14
|
- YAML policy metadata.
|
|
15
15
|
- A custom `.evidence` text extension enabled through `.kb/config.json`.
|
|
16
|
+
- Unsupported/skipped-file reporting through `audit --unsupported`.
|
|
16
17
|
|
|
17
18
|
## Run From This Repository Checkout
|
|
18
19
|
|
|
@@ -32,6 +33,7 @@ node ../../dist/cli.js search "offline retrieval approval"
|
|
|
32
33
|
node ../../dist/cli.js search "dataset residency"
|
|
33
34
|
node ../../dist/cli.js ask "What evidence supports offline operation?"
|
|
34
35
|
node ../../dist/cli.js audit
|
|
36
|
+
node ../../dist/cli.js audit --unsupported
|
|
35
37
|
node ../../dist/cli.js status
|
|
36
38
|
```
|
|
37
39
|
|
|
@@ -46,6 +48,17 @@ Retrieval is lexical/hash-based rather than model-semantic.
|
|
|
46
48
|
- `who owns the usage review`
|
|
47
49
|
- `what documents support sovereign deployment`
|
|
48
50
|
|
|
51
|
+
## Agent Report Prompt
|
|
52
|
+
|
|
53
|
+
After running `kb setup` in a real project, an MCP-compatible agent can use the generated
|
|
54
|
+
`.mimir/mcp.json`. For this synthetic demo, ask an agent:
|
|
55
|
+
|
|
56
|
+
```plain text
|
|
57
|
+
Use Mimir to inspect the local knowledge base, search for "offline retrieval approval", and write a
|
|
58
|
+
cited Markdown report under .mimir/reports/demo-sovereign-rag.md. Mention any unsupported or stale
|
|
59
|
+
files reported by the audit.
|
|
60
|
+
```
|
|
61
|
+
|
|
49
62
|
## Switch To Transformers Semantic Mode
|
|
50
63
|
|
|
51
64
|
To compare no-model retrieval with semantic local retrieval, change `.kb/config.json`:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jcode.labs/mimir",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.7",
|
|
4
4
|
"description": "Mimir: open-source sovereign local RAG for confidential datasets and AI agents.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
"unpdf": "^1.4.0",
|
|
66
66
|
"yaml": "^2.8.1",
|
|
67
67
|
"zod": "^4.1.13",
|
|
68
|
-
"@jcode.labs/mimir-tts": "0.4.
|
|
68
|
+
"@jcode.labs/mimir-tts": "0.4.7"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@types/html-to-text": "^9.0.4",
|
package/skills/mimir/SKILL.md
CHANGED
|
@@ -23,6 +23,7 @@ private/ # raw documents to ingest
|
|
|
23
23
|
.kb/sources.txt # optional extra source paths
|
|
24
24
|
.kb/storage/ # generated local index
|
|
25
25
|
.kb/access.log # metadata-only access log
|
|
26
|
+
.mimir/reports/ # generated local Markdown reports
|
|
26
27
|
```
|
|
27
28
|
|
|
28
29
|
## Data Safety
|
|
@@ -63,7 +64,7 @@ npx kb setup
|
|
|
63
64
|
```
|
|
64
65
|
|
|
65
66
|
Use `status`, `audit`, and `security-audit` for deeper checks after `doctor` explains the current
|
|
66
|
-
state.
|
|
67
|
+
state. Use `audit --unsupported` when files exist but may not have been indexed.
|
|
67
68
|
|
|
68
69
|
## Provider Modes
|
|
69
70
|
|
|
@@ -100,6 +101,7 @@ After documents are added or changed:
|
|
|
100
101
|
```bash
|
|
101
102
|
pnpm exec kb doctor --fix
|
|
102
103
|
pnpm exec kb audit
|
|
104
|
+
pnpm exec kb audit --unsupported
|
|
103
105
|
pnpm exec kb security-audit
|
|
104
106
|
pnpm exec kb status
|
|
105
107
|
```
|
|
@@ -160,6 +162,18 @@ If the agent supports MCP, configure a server for the repository:
|
|
|
160
162
|
}
|
|
161
163
|
```
|
|
162
164
|
|
|
165
|
+
For Claude Code, run this from the target repository root after `pnpm exec kb setup`:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
claude mcp add-json --scope local mimir "$(cat .mimir/claude-mcp-server.json)"
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
For Codex, copy `.mimir/codex-mcp.toml` into `~/.codex/config.toml` or another trusted Codex config
|
|
172
|
+
layer.
|
|
173
|
+
|
|
174
|
+
For other MCP clients that cannot set `cwd`, set `MIMIR_PROJECT_ROOT=/absolute/path/to/repository`
|
|
175
|
+
when launching `kb serve-mcp`.
|
|
176
|
+
|
|
163
177
|
Available MCP tools:
|
|
164
178
|
|
|
165
179
|
- `mimir_status`: show config and chunk count.
|
|
@@ -178,13 +192,26 @@ destroy-index --yes` from the shell when the user explicitly wants to remove the
|
|
|
178
192
|
If the user asks for a listenable or TTS summary, load the optional
|
|
179
193
|
`.mimir/skills/mimir-audio-summary/` skill installed by `pnpm exec kb setup`.
|
|
180
194
|
|
|
181
|
-
|
|
195
|
+
The audio skill should:
|
|
182
196
|
|
|
183
197
|
- gather evidence through Mimir first;
|
|
184
198
|
- write narration text only to a temp file outside the repository;
|
|
185
199
|
- render generated audio under `.mimir/audio/` by default;
|
|
186
200
|
- prefer offline TTS engines for confidential content.
|
|
187
201
|
|
|
202
|
+
## Optional Markdown Reports
|
|
203
|
+
|
|
204
|
+
If the user asks for a Markdown report, dossier, audit memo, planning note, or decision brief, load
|
|
205
|
+
the optional `.mimir/skills/mimir-markdown-report/` skill installed by `pnpm exec kb setup`.
|
|
206
|
+
|
|
207
|
+
The report skill should:
|
|
208
|
+
|
|
209
|
+
- gather evidence through multiple Mimir searches first;
|
|
210
|
+
- cite source paths and chunk numbers;
|
|
211
|
+
- separate facts, inference, uncertainty, and missing evidence;
|
|
212
|
+
- write reports under `.mimir/reports/` by default;
|
|
213
|
+
- keep generated reports uncommitted unless the user explicitly wants a sanitized tracked report.
|
|
214
|
+
|
|
188
215
|
## Installing This Skill Into A Repository
|
|
189
216
|
|
|
190
217
|
Most repositories should run the full setup command:
|
|
@@ -204,11 +231,16 @@ This creates:
|
|
|
204
231
|
|
|
205
232
|
```plain text
|
|
206
233
|
.mimir/skills/mimir/SKILL.md
|
|
234
|
+
.mimir/skills/mimir-audio-summary/SKILL.md
|
|
235
|
+
.mimir/skills/mimir-markdown-report/SKILL.md
|
|
207
236
|
.mimir/mcp.json
|
|
237
|
+
.mimir/claude-mcp-server.json
|
|
238
|
+
.mimir/codex-mcp.toml
|
|
208
239
|
.mimir/README.md
|
|
209
240
|
```
|
|
210
241
|
|
|
211
|
-
Agents that understand skill folders can load `.mimir/skills/mimir/`. Other agents can read
|
|
242
|
+
Agents that understand skill folders can load `.mimir/skills/mimir/`. Other agents can read
|
|
243
|
+
`.mimir/README.md` and `.mimir/mcp.json`.
|
|
212
244
|
|
|
213
245
|
## Answer Style
|
|
214
246
|
|
|
@@ -33,6 +33,7 @@ From the repository root, run:
|
|
|
33
33
|
pnpm exec kb doctor
|
|
34
34
|
pnpm exec kb status
|
|
35
35
|
pnpm exec kb audit
|
|
36
|
+
pnpm exec kb audit --unsupported
|
|
36
37
|
pnpm exec kb security-audit
|
|
37
38
|
```
|
|
38
39
|
|
|
@@ -40,7 +41,7 @@ If the audit reports missing or stale files, run:
|
|
|
40
41
|
|
|
41
42
|
```bash
|
|
42
43
|
pnpm exec kb doctor --fix
|
|
43
|
-
pnpm exec kb audit
|
|
44
|
+
pnpm exec kb audit --unsupported
|
|
44
45
|
```
|
|
45
46
|
|
|
46
47
|
`kb doctor --fix` rebuilds the index only when supported files are present and the privacy posture
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mimir-markdown-report
|
|
3
|
+
description: >-
|
|
4
|
+
Create a cited Markdown report from a Mimir local knowledge base. Use when the user asks for a
|
|
5
|
+
report, dossier, audit memo, planning note, evidence summary, or Markdown deliverable grounded in
|
|
6
|
+
private repository documents indexed by Mimir.
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Mimir Markdown Report
|
|
10
|
+
|
|
11
|
+
Use this skill to write a Markdown report from local Mimir evidence without leaking raw documents.
|
|
12
|
+
Generated reports are derived artifacts and should stay local unless the user explicitly decides a
|
|
13
|
+
sanitized report is safe to commit or share.
|
|
14
|
+
|
|
15
|
+
## Confidentiality Rules
|
|
16
|
+
|
|
17
|
+
- Treat source documents, retrieved passages, notes, drafts, and generated reports as sensitive.
|
|
18
|
+
- Prefer writing reports under `.mimir/reports/`, which is ignored by Git when Mimir is installed.
|
|
19
|
+
- Do not commit generated reports by default.
|
|
20
|
+
- Do not paste long raw passages into the report. Use summaries, short cited extracts when needed,
|
|
21
|
+
and source references.
|
|
22
|
+
- Separate proven facts, inference, uncertainty, and missing evidence.
|
|
23
|
+
- For legal, tax, medical, immigration, financial, or compliance reports, include a professional
|
|
24
|
+
review section instead of presenting the report as final advice.
|
|
25
|
+
|
|
26
|
+
## 1. Verify The Knowledge Base
|
|
27
|
+
|
|
28
|
+
From the repository root:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
pnpm exec kb doctor
|
|
32
|
+
pnpm exec kb audit
|
|
33
|
+
pnpm exec kb security-audit
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
If files are missing, stale, or setup is incomplete:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
pnpm exec kb doctor --fix
|
|
40
|
+
pnpm exec kb audit --unsupported
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Do not write a final report from stale evidence unless the user explicitly accepts that limitation.
|
|
44
|
+
|
|
45
|
+
## 2. Build An Evidence Plan
|
|
46
|
+
|
|
47
|
+
For a broad report, use multiple targeted retrieval passes instead of one generic query:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
pnpm exec kb search "<main report topic>" --top-k 8
|
|
51
|
+
pnpm exec kb search "<people, dates, amounts, obligations, risks, decisions>" --top-k 8
|
|
52
|
+
pnpm exec kb ask "<specific synthesis question>" --top-k 8
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
When MCP is available, prefer `mimir_search`, `mimir_ask`, `mimir_audit`, and
|
|
56
|
+
`mimir_security_audit` over shell commands.
|
|
57
|
+
|
|
58
|
+
Keep a working note of source paths and chunk numbers for each claim you plan to include.
|
|
59
|
+
|
|
60
|
+
## 3. Write The Report
|
|
61
|
+
|
|
62
|
+
Default report structure:
|
|
63
|
+
|
|
64
|
+
```markdown
|
|
65
|
+
# <Report Title>
|
|
66
|
+
|
|
67
|
+
## Scope
|
|
68
|
+
|
|
69
|
+
## Executive Summary
|
|
70
|
+
|
|
71
|
+
## Evidence Inventory
|
|
72
|
+
|
|
73
|
+
## Findings
|
|
74
|
+
|
|
75
|
+
## Risks And Open Questions
|
|
76
|
+
|
|
77
|
+
## Recommended Next Actions
|
|
78
|
+
|
|
79
|
+
## Sources
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Use tables only when they make comparisons easier. Keep each finding tied to one or more source
|
|
83
|
+
paths and chunk numbers when possible.
|
|
84
|
+
|
|
85
|
+
## 4. Save Locally
|
|
86
|
+
|
|
87
|
+
Create the report directory:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
mkdir -p .mimir/reports
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Write the report to:
|
|
94
|
+
|
|
95
|
+
```plain text
|
|
96
|
+
.mimir/reports/<subject-kebab>.md
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
If the user explicitly wants a tracked report, create a sanitized file outside `.mimir/` and state
|
|
100
|
+
which private details were excluded.
|
|
101
|
+
|
|
102
|
+
## 5. Report The Result
|
|
103
|
+
|
|
104
|
+
After writing the report, tell the user:
|
|
105
|
+
|
|
106
|
+
- the report path;
|
|
107
|
+
- whether the index was ready;
|
|
108
|
+
- how many source paths were used;
|
|
109
|
+
- any unsupported, stale, or missing files that weaken the report;
|
|
110
|
+
- whether the report is safe to commit or should remain local.
|