slaunt 0.1.11 → 0.1.13

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 CHANGED
@@ -64,6 +64,12 @@ npx slaunt audit --offline
64
64
  npx slaunt audit --json --no-report --no-server-starts
65
65
  ```
66
66
 
67
+ The interactive terminal view is a graphical evidence dashboard: the posture
68
+ signal, inventory coverage, risk bars, client/server access map, findings, and
69
+ full server explanations are grouped into bordered panels. Long explanations
70
+ wrap across lines instead of being shortened to fit a single row. Use
71
+ `--quick` when a non-animated report is easier to scan.
72
+
67
73
  Run `npx slaunt audit --help` for all options. Node.js 20.17 or newer is required.
68
74
 
69
75
  ## Privacy and consent
@@ -1 +1 @@
1
- {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/explanation/local.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAgB,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE9F,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AACjD,eAAO,MAAM,qBAAqB,wCAAwC,CAAC;AAC3E,eAAO,MAAM,mBAAmB,8CAA8C,CAAC;AAsD/E,MAAM,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAErF,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,yEAAyE;IACzE,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAmGD,UAAU,wBAAwB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,wBAA6B,GACrC,MAAM,CAoBR;AAkcD,wBAAsB,cAAc,CAClC,OAAO,EAAE,YAAY,EAAE,EACvB,MAAM,EAAE,WAAW,EAAE,EACrB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAuC9B"}
1
+ {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/explanation/local.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAgB,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE9F,eAAO,MAAM,mBAAmB,gBAAgB,CAAC;AACjD,eAAO,MAAM,qBAAqB,wCAAwC,CAAC;AAC3E,eAAO,MAAM,mBAAmB,8CAA8C,CAAC;AAwD/E,MAAM,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAErF,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,yEAAyE;IACzE,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AA6HD,UAAU,wBAAwB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,wBAA6B,GACrC,MAAM,CAoBR;AAmcD,wBAAsB,cAAc,CAClC,OAAO,EAAE,YAAY,EAAE,EACvB,MAAM,EAAE,WAAW,EAAE,EACrB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAuC9B"}
@@ -21,6 +21,7 @@ const EXPLANATION_PROMPT_PREFIX = [
21
21
  'Use ordinary English words and complete sentences.',
22
22
  'Include at least one concrete evidence fact: the server name, transport, tool count, a tool name, or inventory status.',
23
23
  'Return 2 to 4 concise plain-language sentences for an audit report; do not output JSON or markdown headings.',
24
+ 'Stop after a complete sentence and end with punctuation; never stop in the middle of a word or sentence.',
24
25
  ].join(' ');
25
26
  const MAX_TOOL_EVIDENCE = 80;
26
27
  const MAX_DESCRIPTION_LENGTH = 280;
@@ -30,6 +31,7 @@ const MIN_EXPLANATION_WORDS = 8;
30
31
  const MAX_EXPLANATION_WORDS = 80;
31
32
  const BUNDLED_CONTEXT_SIZE = 2_048;
32
33
  const BUNDLED_BATCH_SIZE = 256;
34
+ const BUNDLED_MAX_GENERATION_TOKENS = 192;
33
35
  const COMMON_EXPLANATION_WORDS = new Set([
34
36
  'a', 'about', 'access', 'agent', 'allows', 'and', 'are', 'as', 'because', 'can', 'capabilities',
35
37
  'configured', 'could', 'declared', 'declares', 'did', 'does', 'data', 'for', 'from', 'has', 'in',
@@ -49,6 +51,31 @@ function truncate(value, length) {
49
51
  const normalized = value.replace(/\s+/gu, ' ').trim();
50
52
  return normalized.length > length ? `${normalized.slice(0, length - 1)}…` : normalized;
51
53
  }
54
+ function completeGeneratedText(value) {
55
+ let normalized = value.normalize('NFKC').replace(/\s+/gu, ' ').trim();
56
+ if (!normalized)
57
+ return normalized;
58
+ // Tiny chat models sometimes repeat the compact instruction as their first
59
+ // sentence. Remove that harmless wrapper before presenting the explanation.
60
+ normalized = normalized.replace(/^Explain only these audit facts in (?:exactly )?two short plain-English sentences\.\s*/iu, '').trim();
61
+ normalized = normalized.replace(/^MCP audit facts:\s*/iu, '').trim();
62
+ normalized = normalized.replace(/^Write (?:exactly )?two short plain-English sentences using only these MCP audit facts\.\s*/iu, '').trim();
63
+ normalized = normalized.replace(/^(?:Write|Explain|Describe|Summarize)\b[^.!?]{0,180}\b(?:audit facts|facts)\.\s*/iu, '').trim();
64
+ normalized = normalized.replace(/(^|\s)\d+[.)](?=\s)/gu, '$1').trim();
65
+ normalized = normalized.replace(/\s*[;,]\s*\d+[.)]\s*$/u, '.').trim();
66
+ normalized = normalized.replace(/\s*(?:End with a period and )?do not repeat (?:the )?instructions\.?$/iu, '').trim();
67
+ normalized = normalized.replace(/\s*Write (?:exactly )?two short plain-English sentences using only these facts\.?$/iu, '').trim();
68
+ // Keep the product name stable when the quantized model drops a character.
69
+ normalized = normalized.replace(/\bSlaut\b/gu, 'Slaunt');
70
+ // A small model can exhaust its token budget after a valid prefix. Keep only
71
+ // complete sentences so a partial final word never reaches the report/TUI.
72
+ const sentenceEnds = [...normalized.matchAll(/(?:[.!?](?:["')\]]+)?)(?=\s|$)/gu)];
73
+ const lastEnd = sentenceEnds[Math.min(sentenceEnds.length, 2) - 1];
74
+ if (!lastEnd || lastEnd.index === undefined)
75
+ return normalized;
76
+ const end = lastEnd.index + lastEnd[0].length;
77
+ return normalized.slice(0, end).trim();
78
+ }
52
79
  function localUrl(value) {
53
80
  try {
54
81
  const url = new URL(value);
@@ -154,12 +181,12 @@ function buildBundledExplanationPrompt(server, probe) {
154
181
  .slice(0, BUNDLED_MAX_TOOL_EVIDENCE)
155
182
  .map((tool) => tool.name.slice(0, 120));
156
183
  if (probe.status !== 'ok') {
157
- return `Explain only these audit facts in two short plain-English sentences: server ${JSON.stringify(server.name)} is configured for ${JSON.stringify(server.transport)} MCP. Its tools/list inventory is unavailable because ${JSON.stringify(probeReason(probe))}.`;
184
+ return `Write exactly two short plain-English sentences using only these MCP audit facts. The server ${JSON.stringify(server.name)} is configured for ${JSON.stringify(server.transport)} MCP. Its tools/list inventory is unavailable because ${JSON.stringify(probeReason(probe))}.`;
158
185
  }
159
186
  const toolText = toolNames.length
160
- ? ` Examples include ${toolNames.slice(0, 4).map((name) => JSON.stringify(name)).join(', ')}.`
187
+ ? `; examples include ${toolNames.slice(0, 4).map((name) => JSON.stringify(name)).join(', ')}`
161
188
  : '';
162
- return `Explain only these audit facts in two short plain-English sentences: server ${JSON.stringify(server.name)} uses ${JSON.stringify(server.transport)} MCP and declares ${probe.tools.length} tool${probe.tools.length === 1 ? '' : 's'}.${toolText} The tools/list inventory was retrieved.`;
189
+ return `Write exactly two short plain-English sentences using only these MCP audit facts. The server ${JSON.stringify(server.name)} uses ${JSON.stringify(server.transport)} MCP and declares ${probe.tools.length} tool${probe.tools.length === 1 ? '' : 's'} through tools/list${toolText}. The tools/list inventory was retrieved.`;
163
190
  }
164
191
  function deterministicExplanation(server, probe, reason) {
165
192
  const transport = `${server.transport} MCP`;
@@ -167,9 +194,9 @@ function deterministicExplanation(server, probe, reason) {
167
194
  const names = probe.tools.slice(0, 4).map((tool) => tool.name);
168
195
  const examples = names.length ? ` Examples include ${names.join(', ')}.` : '';
169
196
  const truncated = probe.tools.length > names.length ? ' and other declared tools' : '';
170
- return `${server.clientLabel}'s ${server.name} server uses ${transport} access and declares ${probe.tools.length} tool${probe.tools.length === 1 ? '' : 's'} through tools/list${truncated}.${examples} This explains the declared interface only; Slaunt did not call any tool. [${reason}]`;
197
+ return `${server.clientLabel}'s ${server.name} server uses ${transport} access and declares ${probe.tools.length} tool${probe.tools.length === 1 ? '' : 's'} through tools/list${truncated}.${examples} This explains the declared interface only; Slaunt did not call any tool. [${reason}].`;
171
198
  }
172
- return `${server.clientLabel}'s ${server.name} server is configured for ${transport} access, but Slaunt could not retrieve its tools/list inventory because ${probeReason(probe)}. Its capabilities remain unverified, so this is not a clean inventory. [${reason}]`;
199
+ return `${server.clientLabel}'s ${server.name} server is configured for ${transport} access, but Slaunt could not retrieve its tools/list inventory because ${probeReason(probe)}. Its capabilities remain unverified, so this is not a clean inventory. [${reason}].`;
173
200
  }
174
201
  function timeoutSignal(timeoutMs) {
175
202
  const controller = new AbortController();
@@ -212,7 +239,7 @@ function hasConcreteEvidenceAnchor(text, words, server, probe) {
212
239
  function explanationQualityFailure(value, server, probe) {
213
240
  if (typeof value !== 'string')
214
241
  return UNUSABLE_GENERATION_REASON;
215
- const text = value.normalize('NFKC').replace(/\s+/gu, ' ').trim();
242
+ const text = completeGeneratedText(value);
216
243
  if (!text || text.length < 20)
217
244
  return UNUSABLE_GENERATION_REASON;
218
245
  if (text.length > MAX_EXPLANATION_LENGTH)
@@ -221,6 +248,8 @@ function explanationQualityFailure(value, server, probe) {
221
248
  return UNUSABLE_GENERATION_REASON;
222
249
  if (/[\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F]/u.test(text))
223
250
  return UNUSABLE_GENERATION_REASON;
251
+ if (!/(?:[.!?](?:["')\]]+)?$)/u.test(text))
252
+ return UNUSABLE_GENERATION_REASON;
224
253
  const words = explanationWords(text);
225
254
  if (words.length < MIN_EXPLANATION_WORDS || words.length > MAX_EXPLANATION_WORDS) {
226
255
  return UNUSABLE_GENERATION_REASON;
@@ -397,9 +426,9 @@ function createBundledGenerator() {
397
426
  const timeout = timeoutSignal(timeoutMs);
398
427
  try {
399
428
  return await session.prompt(prompt, {
400
- maxTokens: 96,
429
+ maxTokens: BUNDLED_MAX_GENERATION_TOKENS,
401
430
  temperature: 0.1,
402
- repeatPenalty: { penalty: 1.1, lastTokens: 64, penalizeNewLine: true },
431
+ repeatPenalty: { penalty: 1.15, lastTokens: 128, penalizeNewLine: true },
403
432
  signal: timeout.signal,
404
433
  stopOnAbortSignal: true,
405
434
  });
@@ -485,7 +514,7 @@ async function generateExplanation(fetchImpl, endpoint, model, prompt, timeoutMs
485
514
  const generated = isRecord(payload) ? textValue(payload.response) : undefined;
486
515
  if (!generated)
487
516
  throw new Error('local explanation returned no text');
488
- return truncate(generated, MAX_EXPLANATION_LENGTH);
517
+ return completeGeneratedText(generated);
489
518
  }
490
519
  function fallbackReason(endpoint, model, error) {
491
520
  if (!endpoint)
@@ -508,7 +537,7 @@ function bundledFallbackReason(error) {
508
537
  async function explainOne(server, probe, modelPromise, bundledGenerate, fetchImpl, endpoint, endpointConfigured, requestedModel, timeoutMs, fallbackReasonOverride) {
509
538
  if (bundledGenerate) {
510
539
  try {
511
- const text = await bundledGenerate(buildBundledExplanationPrompt(server, probe), timeoutMs);
540
+ const text = completeGeneratedText(await bundledGenerate(buildBundledExplanationPrompt(server, probe), timeoutMs));
512
541
  const qualityFailure = explanationQualityFailure(text, server, probe);
513
542
  if (qualityFailure) {
514
543
  const reason = fallbackReasonOverride || qualityFailure;
@@ -519,7 +548,7 @@ async function explainOne(server, probe, modelPromise, bundledGenerate, fetchImp
519
548
  text: deterministicExplanation(server, probe, reason),
520
549
  };
521
550
  }
522
- return { serverId: server.id, source: 'local-llm', model: BUNDLED_LOCAL_MODEL, text: truncate(text, MAX_EXPLANATION_LENGTH) };
551
+ return { serverId: server.id, source: 'local-llm', model: BUNDLED_LOCAL_MODEL, text };
523
552
  }
524
553
  catch (error) {
525
554
  const reason = fallbackReasonOverride || bundledFallbackReason(error);
@@ -1 +1 @@
1
- {"version":3,"file":"local.js","sourceRoot":"","sources":["../../src/explanation/local.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local.js","sourceRoot":"","sources":["../../src/explanation/local.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"analysis-path.d.ts","sourceRoot":"","sources":["../../src/tui/analysis-path.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,aAAa,CAAC;AAE3D,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,SAAS,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD;AAED,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAsBnD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,YAAY,EAAE,CAkIrE;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,IAAI,CAAC,CAkCf"}
1
+ {"version":3,"file":"analysis-path.d.ts","sourceRoot":"","sources":["../../src/tui/analysis-path.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAc,MAAM,aAAa,CAAC;AAE3D,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,SAAS,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACjD;AAED,eAAO,MAAM,4BAA4B,QAAS,CAAC;AAgCnD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,YAAY,EAAE,CAkIrE;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,WAAW,EACnB,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,IAAI,CAAC,CAkCf"}
@@ -15,6 +15,14 @@ function formatRemaining(milliseconds) {
15
15
  const remainder = seconds % 60;
16
16
  return `~${minutes}m ${remainder}s left`;
17
17
  }
18
+ function progressRail(completed, total, length = 18) {
19
+ const ratio = total > 0 ? Math.max(0, Math.min(1, completed / total)) : 1;
20
+ const filled = Math.round(ratio * length);
21
+ return `${chalk.hex('#a78bfa')('━'.repeat(filled))}${chalk.gray('╌'.repeat(length - filled))}`;
22
+ }
23
+ function phaseGlyph(index) {
24
+ return ['◌', '◍', '◎', '◉'][index % 4] || '◌';
25
+ }
18
26
  function hasAnyCapability(capabilities, expected) {
19
27
  return capabilities.some((capability) => expected.has(capability));
20
28
  }
@@ -163,11 +171,11 @@ export async function playAnalysisPath(result, options = {}) {
163
171
  const analysisDuration = Math.round(phaseDuration * 0.82);
164
172
  const evidenceDuration = Math.max(0, Math.round(phaseDuration) - analysisDuration);
165
173
  const position = chalk.gray(`${String(index + 1).padStart(2, '0')}/${beats.length}`);
166
- spinner.text = `${position} ${beat.active} ${chalk.gray(`· ${formatRemaining(remainingMs)}`)}`;
174
+ spinner.text = `${position} ${progressRail(index + 0.25, beats.length)} ${phaseGlyph(index)} ${beat.active} ${chalk.gray(`· ${formatRemaining(remainingMs)}`)}`;
167
175
  await sleep(analysisDuration);
168
176
  remainingMs = Math.max(0, remainingMs - analysisDuration);
169
177
  const marker = beat.tone === 'warning' ? chalk.yellow('!') : chalk.green('✓');
170
- spinner.text = `${position} ${marker} ${beat.complete}`;
178
+ spinner.text = `${position} ${progressRail(index + 1, beats.length)} ${marker} ${beat.complete}`;
171
179
  await sleep(evidenceDuration);
172
180
  remainingMs = Math.max(0, remainingMs - evidenceDuration);
173
181
  }
@@ -1 +1 @@
1
- {"version":3,"file":"analysis-path.js","sourceRoot":"","sources":["../../src/tui/analysis-path.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analysis-path.js","sourceRoot":"","sources":["../../src/tui/analysis-path.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/tui/render.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAoD,MAAM,aAAa,CAAC;AA6JjG,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA4EvD;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/tui/render.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAiF,MAAM,aAAa,CAAC;AAiP9H,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CA0DvD;AAED,wBAAgB,YAAY,IAAI,MAAM,CAKrC"}
@@ -14,35 +14,80 @@ const capabilityPriority = [
14
14
  'read-files', 'manage-auth', 'control-browser', 'send-message', 'network-access',
15
15
  'create-pull-request', 'execute-code', 'read-data',
16
16
  ];
17
+ const frameColor = chalk.hex('#6d5dd3');
18
+ const accentColor = chalk.hex('#a78bfa');
17
19
  function width() {
18
20
  return Math.max(36, Math.min(82, process.stdout.columns || 78));
19
21
  }
22
+ function stripAnsi(value) {
23
+ return value.replace(/\u001B\[[0-?]*[ -/]*[@-~]/gu, '');
24
+ }
25
+ function visibleLength(value) {
26
+ return Array.from(stripAnsi(value)).length;
27
+ }
28
+ function padVisible(value, target) {
29
+ return `${value}${' '.repeat(Math.max(0, target - visibleLength(value)))}`;
30
+ }
20
31
  function plural(value, singular, pluralForm = `${singular}s`) {
21
32
  return value === 1 ? singular : pluralForm;
22
33
  }
23
- function wrap(text, indent = '', continuationIndent = indent) {
24
- const firstWidth = Math.max(12, width() - indent.length);
25
- const continuationWidth = Math.max(12, width() - continuationIndent.length);
26
- const words = text.trim().split(/\s+/);
34
+ /**
35
+ * Wrap plain terminal copy without dropping long identifiers or URLs. A visual
36
+ * line break must never become content truncation in the audit result.
37
+ */
38
+ function wrap(text, indent = '', continuationIndent = indent, maxWidth = width()) {
39
+ const normalized = stripAnsi(text).replace(/\s+/gu, ' ').trim();
40
+ if (!normalized)
41
+ return [indent];
42
+ const usableWidth = Math.max(1, Math.min(maxWidth - visibleLength(indent), maxWidth - visibleLength(continuationIndent)));
43
+ const words = normalized.split(' ');
27
44
  const lines = [];
28
45
  let line = '';
29
- let available = firstWidth;
46
+ const flush = () => {
47
+ if (!line)
48
+ return;
49
+ lines.push(`${lines.length === 0 ? indent : continuationIndent}${line}`);
50
+ line = '';
51
+ };
30
52
  for (const word of words) {
31
- if (line && line.length + 1 + word.length > available) {
32
- lines.push(`${lines.length === 0 ? indent : continuationIndent}${line}`);
33
- line = word;
34
- available = continuationWidth;
53
+ if (visibleLength(word) <= usableWidth) {
54
+ if (!line) {
55
+ line = word;
56
+ }
57
+ else if (visibleLength(line) + 1 + visibleLength(word) <= usableWidth) {
58
+ line = `${line} ${word}`;
59
+ }
60
+ else {
61
+ flush();
62
+ line = word;
63
+ }
64
+ continue;
35
65
  }
36
- else {
37
- line = line ? `${line} ${word}` : word;
66
+ flush();
67
+ const characters = Array.from(word);
68
+ while (characters.length > usableWidth) {
69
+ lines.push(`${lines.length === 0 ? indent : continuationIndent}${characters.splice(0, usableWidth).join('')}`);
38
70
  }
71
+ line = characters.join('');
39
72
  }
40
- if (line)
41
- lines.push(`${lines.length === 0 ? indent : continuationIndent}${line}`);
73
+ flush();
42
74
  return lines;
43
75
  }
44
- function section(title) {
45
- return ['', chalk.bold(title)];
76
+ function box(title, content, accent = frameColor) {
77
+ const outerWidth = width();
78
+ const contentWidth = Math.max(24, outerWidth - 4);
79
+ const rows = content.flatMap((line) => line.length === 0 ? [''] : wrap(line, '', '', contentWidth));
80
+ const dashCount = Math.max(1, outerWidth - 5 - visibleLength(title));
81
+ const top = `${accent('╭─')} ${chalk.bold(title)} ${accent('─'.repeat(dashCount))}${accent('╮')}`;
82
+ const body = rows.map((line) => `${accent('│')} ${padVisible(line, contentWidth)} ${accent('│')}`);
83
+ const bottom = accent(`╰${'─'.repeat(Math.max(1, outerWidth - 2))}╯`);
84
+ return [top, ...body, bottom];
85
+ }
86
+ function riskBar(score, length = 16) {
87
+ const bounded = Math.max(0, Math.min(100, score));
88
+ const filled = Math.round((bounded / 100) * length);
89
+ const color = bounded >= 80 ? chalk.red : bounded >= 55 ? chalk.yellow : chalk.green;
90
+ return `${color('█'.repeat(filled))}${chalk.gray('░'.repeat(length - filled))}`;
46
91
  }
47
92
  function scoreLabel(score) {
48
93
  if (score >= 80)
@@ -67,9 +112,38 @@ function naturalList(values) {
67
112
  return `${values[0]} and ${values[1]}`;
68
113
  return `${values.slice(0, -1).join(', ')}, and ${values.at(-1)}`;
69
114
  }
70
- function findingLines(item) {
71
- const icon = item.severity === 'critical' ? '◆' : '▲';
72
- const color = severityColor[item.severity];
115
+ function toolsFor(result, serverId) {
116
+ return result.tools.filter((tool) => tool.serverId === serverId);
117
+ }
118
+ function probeFor(result, serverId) {
119
+ return result.probes.find((probe) => probe.serverId === serverId);
120
+ }
121
+ function maxRisk(tools) {
122
+ return Math.max(0, ...tools.map((tool) => tool.classification.riskScore));
123
+ }
124
+ function shortCapabilities(capabilities) {
125
+ const set = new Set(capabilities);
126
+ const labels = capabilityPriority
127
+ .filter((capability) => set.has(capability))
128
+ .map(plainCapability);
129
+ return [...new Set(labels)].slice(0, 3).join(', ') || 'Tool inventory unavailable';
130
+ }
131
+ function dashboardLines(result, unavailable) {
132
+ const { summary } = result;
133
+ const inventoryTotal = result.discovery.servers.length;
134
+ const inventoryAvailable = result.probes.filter((probe) => probe.status === 'ok').length;
135
+ const coverage = inventoryTotal > 0 ? Math.round((inventoryAvailable / inventoryTotal) * 100) : 0;
136
+ const score = summary.tools > 0 ? summary.postureScore : 0;
137
+ return box('Audit complete', [
138
+ postureLine(result, unavailable),
139
+ `${riskBar(score, 24)} ${summary.tools > 0 ? `${score}% signal` : 'coverage incomplete'}`,
140
+ `◉ ${summary.clientsDetected} agent ${plural(summary.clientsDetected, 'client')} ◈ ${summary.serverBindings} MCP ${plural(summary.serverBindings, 'binding')}`,
141
+ `◇ ${summary.tools} ${plural(summary.tools, 'tool')} ⚠ ${summary.sensitiveCapabilities} sensitive ? ${summary.unclassified} unclassified`,
142
+ `◎ inventory coverage ${coverage}% · ${inventoryAvailable}/${inventoryTotal || 0} server ${plural(inventoryAvailable, 'inventory', 'inventories')} retrieved`,
143
+ 'Agent clients are the AI applications being audited. MCP servers expose tools those agents can use.',
144
+ ], accentColor);
145
+ }
146
+ function findingCard(item) {
73
147
  const copy = plainFinding(item);
74
148
  const assistants = naturalList(item.clients.map(plainClient));
75
149
  const services = naturalList(item.serverNames);
@@ -77,68 +151,60 @@ function findingLines(item) {
77
151
  const serverLabel = item.serverNames.length === 1 ? 'MCP server' : 'MCP servers';
78
152
  const toolLabel = item.toolNames.length === 1 ? 'Tool' : 'Tools';
79
153
  const capabilityLabel = item.access.length === 1 ? 'Capability' : 'Capabilities';
80
- return [
154
+ const icon = item.severity === 'critical' ? '◆' : item.severity === 'high' ? '▲' : '●';
155
+ const color = severityColor[item.severity];
156
+ return box(`${icon} ${copy.label}`, [
157
+ `${icon} ${copy.label.toUpperCase()} ${copy.title}`,
158
+ ...(assistants ? [`${clientLabel}: ${assistants}`] : []),
159
+ ...(services ? [`${serverLabel}: ${services}`] : []),
160
+ ...(item.toolNames.length ? [`${toolLabel}: ${item.toolNames.join(', ')}`] : []),
161
+ ...(item.access.length ? [`${capabilityLabel}: ${item.access.join(', ')}`] : []),
162
+ `Why this matters: ${copy.why}`,
163
+ `Recommended control: ${copy.recommendation}`,
164
+ ], color);
165
+ }
166
+ function accessOverviewLines(result) {
167
+ const lines = [
168
+ 'Capabilities describe what each MCP server allows an agent to do. Risk bars show the highest classified tool risk in each binding.',
81
169
  '',
82
- ...wrap(`${icon} ${copy.label.toUpperCase()} ${copy.title}`),
83
- ...(assistants ? wrap(`${clientLabel}: ${assistants}`, ' ').map((line) => chalk.gray(line)) : []),
84
- ...(services ? wrap(`${serverLabel}: ${services}`, ' ').map((line) => chalk.gray(line)) : []),
85
- ...(item.toolNames.length ? wrap(`${toolLabel}: ${item.toolNames.join(', ')}`, ' ').map((line) => chalk.gray(line)) : []),
86
- ...(item.access.length ? wrap(`${capabilityLabel}: ${item.access.join(', ')}`, ' ').map((line) => chalk.gray(line)) : []),
87
- ...wrap(`Why this matters: ${copy.why}`, ' '),
88
- ...wrap(`Recommended control: ${copy.recommendation}`, ' ').map((line) => color(line)),
89
170
  ];
90
- }
91
- function shortCapabilities(capabilities) {
92
- const set = new Set(capabilities);
93
- const labels = capabilityPriority
94
- .filter((capability) => set.has(capability))
95
- .map(plainCapability);
96
- return [...new Set(labels)].slice(0, 3).join(', ') || 'Tool inventory unavailable';
97
- }
98
- function accessLines(result) {
99
- const lines = [];
100
171
  for (const client of result.discovery.clients.filter((item) => item.detected)) {
101
- lines.push('', chalk.bold(client.label));
102
- const highestRisk = (serverId) => Math.max(0, ...result.tools
103
- .filter((tool) => tool.serverId === serverId)
104
- .map((tool) => tool.classification.riskScore));
105
- const servers = result.discovery.servers
106
- .filter((item) => item.client === client.id)
107
- .sort((left, right) => highestRisk(right.id) - highestRisk(left.id));
172
+ lines.push(`◉ ${client.label}`);
173
+ const servers = result.discovery.servers.filter((server) => server.client === client.id);
108
174
  if (servers.length === 0) {
109
- lines.push(chalk.gray(' No enabled MCP servers'));
175
+ lines.push(' └─ No enabled MCP servers');
110
176
  continue;
111
177
  }
112
- for (const server of servers.slice(0, 6)) {
113
- const capabilities = [...new Set(result.tools
114
- .filter((tool) => tool.serverId === server.id)
115
- .flatMap((tool) => tool.classification.capabilities))];
116
- const name = server.name.slice(0, 14).padEnd(14);
117
- lines.push(` ${chalk.hex('#a78bfa')(name)}${shortCapabilities(capabilities)}`);
178
+ for (const [index, server] of servers.entries()) {
179
+ const tools = toolsFor(result, server.id);
180
+ const probe = probeFor(result, server.id);
181
+ const capabilities = [...new Set(tools.flatMap((tool) => tool.classification.capabilities))];
182
+ const branch = index === servers.length - 1 ? '└─' : '├─';
183
+ const status = probe?.status === 'ok' ? '✓ tools/list' : `! inventory ${probe?.status || 'unavailable'}`;
184
+ const score = maxRisk(tools);
185
+ lines.push(` ${branch} ${server.name} · ${server.transport.toUpperCase()} · ${status} · ${tools.length} ${plural(tools.length, 'tool')} · ${riskBar(score)} ${score}/100`);
186
+ lines.push(` ${index === servers.length - 1 ? ' ' : '│ '} access: ${shortCapabilities(capabilities)}`);
118
187
  }
119
- if (servers.length > 6)
120
- lines.push(chalk.gray(` + ${servers.length - 6} more in the full report`));
121
188
  }
122
189
  return lines;
123
190
  }
124
- function compactExplanation(explanation, serverName) {
125
- const source = explanation?.source === 'local-llm' ? 'local 1B model' : 'local fallback';
126
- const prefix = ` ${serverName}: `;
127
- const suffix = ` [${source}]`;
128
- const available = Math.max(18, width() - prefix.length - suffix.length);
129
- const text = (explanation?.text || 'No explanation was generated.').replace(/\s+/gu, ' ').trim();
130
- const body = text.length > available ? `${text.slice(0, Math.max(1, available - 1))}…` : text;
131
- return `${prefix}${body}${suffix}`;
191
+ function explanationSource(explanation) {
192
+ if (explanation?.source === 'local-llm') {
193
+ return 'Local 1B model';
194
+ }
195
+ return 'Deterministic evidence fallback';
132
196
  }
133
- function explanationLines(result) {
134
- const lines = [];
197
+ function explanationCards(result) {
135
198
  const explanations = new Map(result.explanations.map((explanation) => [explanation.serverId, explanation]));
136
- for (const client of result.discovery.clients.filter((item) => item.detected)) {
137
- const servers = result.discovery.servers.filter((server) => server.client === client.id);
138
- for (const server of servers) {
139
- const explanation = explanations.get(server.id);
140
- lines.push(compactExplanation(explanation, `${server.name} (${server.scope}/${server.transport})`));
141
- }
199
+ const lines = [];
200
+ for (const server of result.discovery.servers) {
201
+ const explanation = explanations.get(server.id);
202
+ const accent = explanation?.source === 'local-llm' ? accentColor : chalk.yellow;
203
+ lines.push(...box(`${server.clientLabel} · explanation`, [
204
+ `MCP server: ${server.name} (${server.scope}/${server.transport})`,
205
+ `◌ ${explanationSource(explanation)}`,
206
+ explanation?.text || 'No explanation was generated.',
207
+ ], accent));
142
208
  }
143
209
  return lines;
144
210
  }
@@ -147,65 +213,61 @@ function reportPath(path) {
147
213
  return local && !local.startsWith('..') ? `./${local}` : path;
148
214
  }
149
215
  export function renderAudit(result) {
150
- const { summary } = result;
151
216
  const priority = result.findings.filter((finding) => finding.severity === 'critical' || finding.severity === 'high');
152
217
  const otherFindings = result.findings.length - priority.length;
153
218
  const unknown = result.tools.filter((tool) => tool.classification.source === 'unknown');
154
219
  const failedProbes = result.probes.filter((probe) => probe.status !== 'ok');
155
- const lines = [
156
- '',
157
- chalk.bold('Audit complete'),
158
- postureLine(result, failedProbes.length),
159
- '',
160
- `${chalk.bold(String(summary.clientsDetected))} agent ${plural(summary.clientsDetected, 'client')} ${chalk.gray('·')} ${chalk.bold(String(summary.serverBindings))} MCP ${plural(summary.serverBindings, 'server binding')} ${chalk.gray('·')} ${chalk.bold(String(summary.tools))} ${plural(summary.tools, 'tool')}`,
161
- `${chalk.bold(String(summary.sensitiveCapabilities))} sensitive ${plural(summary.sensitiveCapabilities, 'tool')} ${chalk.gray('·')} ${chalk.bold(String(summary.unclassified))} unclassified ${plural(summary.unclassified, 'tool')}`,
162
- ...wrap('Agent clients are the AI applications being audited. MCP servers expose tools those agents can use.').map((line) => chalk.gray(line)),
163
- ...section('High-priority findings'),
164
- ];
165
- if (priority.length) {
166
- for (const finding of priority.slice(0, 3))
167
- lines.push(...findingLines(finding));
168
- }
169
- else if (failedProbes.length > 0) {
170
- lines.push('', chalk.yellow('No critical or high-risk paths were found in the retrieved tool inventories.'), chalk.gray('Missing inventories prevent a complete assessment.'));
171
- }
172
- else {
173
- lines.push('', chalk.green('✓ No critical or high-risk access paths found.'));
174
- }
220
+ const lines = ['', ...dashboardLines(result, failedProbes.length), ''];
221
+ const prioritySummary = priority.length
222
+ ? `◆ ${priority.length} high-priority ${plural(priority.length, 'path')} surfaced. The cards below show the evidence chain and recommended control.`
223
+ : failedProbes.length > 0
224
+ ? 'No critical or high-risk paths were found in the retrieved tool inventories. Missing inventories prevent a complete assessment.'
225
+ : '✓ No critical or high-risk access paths found in the retrieved tool inventories.';
226
+ lines.push(...box('High-priority findings', [prioritySummary], priority.length ? chalk.hex('#f59e0b') : chalk.green));
227
+ for (const finding of priority.slice(0, 3))
228
+ lines.push(...findingCard(finding));
175
229
  if (otherFindings > 0) {
176
- lines.push('', chalk.gray(`${otherFindings} additional ${plural(otherFindings, 'finding')} included in the full report.`));
230
+ lines.push(...box('Additional findings', [
231
+ `${otherFindings} additional ${plural(otherFindings, 'finding')} included in the full local report.`,
232
+ ], chalk.gray));
177
233
  }
178
- lines.push(...section('Access overview'), ...accessLines(result));
179
- lines.push('', ...wrap('Capabilities describe what each MCP server allows an agent to do. The three most sensitive capabilities are shown per server.').map((line) => chalk.gray(line)));
180
- lines.push(...section('Server explanations'));
181
- lines.push(...explanationLines(result));
234
+ lines.push(...box('Access overview', accessOverviewLines(result), accentColor));
235
+ lines.push(...box('Server explanations', [
236
+ 'Every configured server is shown below. Text is wrapped to the terminal width for readability; the explanation body is never shortened or replaced with an ellipsis.',
237
+ ], accentColor));
238
+ lines.push(...explanationCards(result));
182
239
  if (unknown.length) {
183
- const visibleUnknown = unknown.slice(0, 8);
184
- lines.push(...section(`Unclassified tools (${unknown.length})`), '', ...wrap(visibleUnknown.map((tool) => tool.name).join(' · '), ' '), ...(unknown.length > visibleUnknown.length
185
- ? [chalk.gray(` + ${unknown.length - visibleUnknown.length} more in the full report`)]
186
- : []), ...wrap('Unclassified means no reviewed catalog rule matched the tool. Slaunt treats it as potentially sensitive until a person reviews it.', ' ').map((line) => chalk.gray(line)));
240
+ const visibleUnknown = unknown.slice(0, 12);
241
+ lines.push(...box(`Unclassified tools (${unknown.length})`, [
242
+ visibleUnknown.map((tool) => tool.name).join(' · '),
243
+ ...(unknown.length > visibleUnknown.length ? [`+ ${unknown.length - visibleUnknown.length} more in the full report`] : []),
244
+ 'Unclassified means no reviewed catalog rule matched the tool. Slaunt treats it as potentially sensitive until a person reviews it.',
245
+ ], chalk.yellow));
187
246
  }
188
247
  if (failedProbes.length) {
189
- lines.push(...section(`Tool inventories unavailable (${failedProbes.length})`));
190
- lines.push(...wrap('A tool inventory is the list of tools an MCP server reports through tools/list.', ' ').map((line) => chalk.gray(line)));
191
- for (const probe of failedProbes.slice(0, 4)) {
192
- const server = result.discovery.servers.find((item) => item.id === probe.serverId);
193
- lines.push(...wrap(`${server?.clientLabel || 'Client'} / ${server?.name || probe.serverId}: ${probe.message || probe.status}`, ' '));
194
- }
195
- if (failedProbes.length > 4)
196
- lines.push(chalk.gray(` + ${failedProbes.length - 4} more in the full report`));
248
+ lines.push(...box(`Tool inventories unavailable (${failedProbes.length})`, [
249
+ 'A tool inventory is the list of tools an MCP server reports through tools/list.',
250
+ ...failedProbes.map((probe) => {
251
+ const server = result.discovery.servers.find((item) => item.id === probe.serverId);
252
+ return `${server?.clientLabel || 'Client'} / ${server?.name || probe.serverId}: ${probe.message || probe.status}`;
253
+ }),
254
+ ], chalk.yellow));
197
255
  }
198
- lines.push(...section('Full local report'), ...(result.reportPath ? ['', chalk.cyan(reportPath(result.reportPath))] : ['', chalk.gray('HTML report disabled for this run.')]), '', ...wrap('Scope: configured MCP servers and their declared tools. The audit did not call tools or inspect prompts, file contents, credentials, or tool-use history.').map((line) => chalk.gray(line)), ...section('Optional next step'), '', ...wrap('Add approval policies and role-scoped access so each agent has only the capabilities it needs:'), chalk.cyan.underline('https://slaunt.ai/setup'));
256
+ lines.push(...box('Full local report', [
257
+ result.reportPath ? `▣ ${reportPath(result.reportPath)}` : 'HTML report disabled for this run.',
258
+ 'Scope: configured MCP servers and their declared tools. The audit did not call tools or inspect prompts, file contents, credentials, or tool-use history.',
259
+ 'Optional next step: Add approval policies and role-scoped access so each agent has only the capabilities it needs.',
260
+ '→ https://slaunt.ai/setup',
261
+ ], chalk.gray));
199
262
  if (result.discovery.warnings.length) {
200
- lines.push(...section('Notes'));
201
- for (const warning of result.discovery.warnings.slice(0, 3))
202
- lines.push(...wrap(warning, ' ').map((line) => chalk.gray(line)));
203
- if (result.discovery.warnings.length > 3)
204
- lines.push(chalk.gray(` + ${result.discovery.warnings.length - 3} more in the full report`));
263
+ lines.push(...box('Notes', result.discovery.warnings, chalk.yellow));
205
264
  }
206
265
  return lines.join('\n');
207
266
  }
208
267
  export function renderHeader() {
209
- return `${chalk.bold.hex('#a78bfa')('SLAUNT')} ${chalk.gray('· MCP agent access audit')}\n${chalk.gray('Local analysis of configured tool access · no audit data uploaded')}`;
268
+ return box('SLAUNT · MCP agent access audit', [
269
+ 'Local analysis of configured tool access · no audit data uploaded',
270
+ 'Evidence graph ◉ discover ◈ inventory ◇ classify ◎ explain',
271
+ ], accentColor).join('\n');
210
272
  }
211
273
  //# sourceMappingURL=render.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/tui/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/tui/render.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "slaunt",
3
- "version": "0.1.11",
3
+ "version": "0.1.13",
4
4
  "description": "Privacy-first MCP agent access auditor for Claude and Codex",
5
5
  "type": "module",
6
6
  "bin": {