@weave_protocol/mund 0.3.1 → 0.4.1
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/DETECTION_CLAIMS.md +48 -0
- package/README.md +23 -2
- package/dist/agent-audit.d.ts +139 -0
- package/dist/agent-audit.d.ts.map +1 -0
- package/dist/agent-audit.js +424 -0
- package/dist/agent-audit.js.map +1 -0
- package/dist/analyzers/mcp-server-analyzer.d.ts.map +1 -1
- package/dist/analyzers/mcp-server-analyzer.js +4 -0
- package/dist/analyzers/mcp-server-analyzer.js.map +1 -1
- package/dist/cli/agent.d.ts +9 -0
- package/dist/cli/agent.d.ts.map +1 -0
- package/dist/cli/agent.js +91 -0
- package/dist/cli/agent.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/rugpull.d.ts +6 -0
- package/dist/rugpull.d.ts.map +1 -1
- package/dist/rugpull.js +18 -5
- package/dist/rugpull.js.map +1 -1
- package/dist/threat-intel-tools.d.ts +60 -7
- package/dist/threat-intel-tools.d.ts.map +1 -1
- package/dist/tools/monitoring.js +2 -2
- package/dist/tools/monitoring.js.map +1 -1
- package/package.json +3 -3
- package/src/agent-audit.ts +499 -0
- package/src/analyzers/mcp-server-analyzer.ts +3 -0
- package/src/cli/agent.ts +80 -0
- package/src/index.ts +9 -0
- package/src/rugpull.ts +19 -5
- package/src/tools/monitoring.ts +2 -2
- package/tests/analyzers/mcp-server-analyzer.test.ts +1 -3
- package/tests/fixtures/preinstall/fake-mcp-server.mjs +8 -0
- package/tests/fixtures/preinstall/mcp-config/clean-pinned.json +13 -0
- package/tests/fixtures/preinstall/mcp-config/env-reference.json +15 -0
- package/tests/fixtures/preinstall/mcp-config/exfil-service-url.json +10 -0
- package/tests/fixtures/preinstall/mcp-config/inline-token.json +16 -0
- package/tests/fixtures/preinstall/mcp-config/name-typosquat.json +13 -0
- package/tests/fixtures/preinstall/mcp-config/plain-http-remote.json +10 -0
- package/tests/fixtures/preinstall/mcp-config/scope-typosquat.json +13 -0
- package/tests/fixtures/preinstall/mcp-config/shell-pipeline-launcher.json +13 -0
- package/tests/fixtures/preinstall/mcp-config/unpinned-package.json +14 -0
- package/tests/fixtures/preinstall/skills/bidi-override/SKILL.md +6 -0
- package/tests/fixtures/preinstall/skills/bidi-override/expected.json +4 -0
- package/tests/fixtures/preinstall/skills/clean/SKILL.md +6 -0
- package/tests/fixtures/preinstall/skills/clean/expected.json +3 -0
- package/tests/fixtures/preinstall/skills/curl-bash-installer/SKILL.md +6 -0
- package/tests/fixtures/preinstall/skills/curl-bash-installer/expected.json +4 -0
- package/tests/fixtures/preinstall/skills/embedded-secret/SKILL.md +6 -0
- package/tests/fixtures/preinstall/skills/embedded-secret/expected.json +4 -0
- package/tests/fixtures/preinstall/skills/exfil-url/SKILL.md +6 -0
- package/tests/fixtures/preinstall/skills/exfil-url/expected.json +4 -0
- package/tests/fixtures/preinstall/skills/hidden-tag-characters/SKILL.md +6 -0
- package/tests/fixtures/preinstall/skills/hidden-tag-characters/expected.json +4 -0
- package/tests/preinstall.test.ts +153 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Mund detection claims
|
|
2
|
+
|
|
3
|
+
Every claim below is backed by a fixture in this repository and a test that checks Mund returns the stated verdict. If a claim stops holding, CI fails.
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
cd mund && npm ci && npx vitest run tests/preinstall.test.ts tests/fixtures.test.ts
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
Verdicts: **block** (deny), **warn** (ask the user), **allow**. All fixture content is benign: the checks look at *how* something is built (hidden characters, package names, URLs), so no real attack payloads are needed to prove them.
|
|
10
|
+
|
|
11
|
+
## Skills: checked before install
|
|
12
|
+
|
|
13
|
+
| Claim: Mund catches… | Fixture | Verdict |
|
|
14
|
+
|---|---|---|
|
|
15
|
+
| Invisible Unicode tag characters (ASCII smuggling: text the model reads but a reviewer can't see) | [`skills/hidden-tag-characters`](tests/fixtures/preinstall/skills/hidden-tag-characters/SKILL.md) | **block** |
|
|
16
|
+
| Bidirectional override characters that reorder what a reviewer sees | [`skills/bidi-override`](tests/fixtures/preinstall/skills/bidi-override/SKILL.md) | **block** |
|
|
17
|
+
| A credential embedded in a skill | [`skills/embedded-secret`](tests/fixtures/preinstall/skills/embedded-secret/SKILL.md) | **block** |
|
|
18
|
+
| Instructions to POST data to a collection service | [`skills/exfil-url`](tests/fixtures/preinstall/skills/exfil-url/SKILL.md) | **block** |
|
|
19
|
+
| `curl … \| bash` installers | [`skills/curl-bash-installer`](tests/fixtures/preinstall/skills/curl-bash-installer/SKILL.md) | warn |
|
|
20
|
+
| …and leaves a plain skill alone | [`skills/clean`](tests/fixtures/preinstall/skills/clean/SKILL.md) | allow |
|
|
21
|
+
|
|
22
|
+
## MCP servers: how they're launched (static, nothing is started)
|
|
23
|
+
|
|
24
|
+
| Claim: Mund catches… | Fixture | Verdict |
|
|
25
|
+
|---|---|---|
|
|
26
|
+
| A package scope imitating `@modelcontextprotocol` | [`scope-typosquat`](tests/fixtures/preinstall/mcp-config/scope-typosquat.json) | **block** |
|
|
27
|
+
| A server URL pointing at a data-collection service | [`exfil-service-url`](tests/fixtures/preinstall/mcp-config/exfil-service-url.json) | **block** |
|
|
28
|
+
| A package name within two edits of a known server (`githbu`) | [`name-typosquat`](tests/fixtures/preinstall/mcp-config/name-typosquat.json) | warn |
|
|
29
|
+
| A remote server over plain HTTP | [`plain-http-remote`](tests/fixtures/preinstall/mcp-config/plain-http-remote.json) | warn |
|
|
30
|
+
| A token written into the config instead of `${ENV_VAR}` | [`inline-token`](tests/fixtures/preinstall/mcp-config/inline-token.json) | warn |
|
|
31
|
+
| A launcher that pipes a download into a shell | [`shell-pipeline-launcher`](tests/fixtures/preinstall/mcp-config/shell-pipeline-launcher.json) | warn |
|
|
32
|
+
| An unpinned package (flagged, low severity) | [`unpinned-package`](tests/fixtures/preinstall/mcp-config/unpinned-package.json) | allow |
|
|
33
|
+
| …and accepts `${ENV_VAR}` references and pinned official packages | [`env-reference`](tests/fixtures/preinstall/mcp-config/env-reference.json), [`clean-pinned`](tests/fixtures/preinstall/mcp-config/clean-pinned.json) | allow |
|
|
34
|
+
|
|
35
|
+
## MCP servers: live checks and rug pulls
|
|
36
|
+
|
|
37
|
+
Tested against a local fake MCP server ([`fake-mcp-server.mjs`](tests/fixtures/preinstall/fake-mcp-server.mjs)) in [`tests/preinstall.test.ts`](tests/preinstall.test.ts) and [`tests/fixtures/rugpull/`](tests/fixtures/rugpull):
|
|
38
|
+
|
|
39
|
+
| Claim | Verdict |
|
|
40
|
+
|---|---|
|
|
41
|
+
| A tool description that changes after approval (a rug pull) is flagged until you accept it | warn |
|
|
42
|
+
| A rug pull that adds a command-execution tool | **block** |
|
|
43
|
+
| Mund never starts a project server you haven't approved; it checks it statically | — |
|
|
44
|
+
| Mund never starts a server whose package or URL it already distrusts | — |
|
|
45
|
+
|
|
46
|
+
## Limits
|
|
47
|
+
|
|
48
|
+
Detection is pattern-based. These claims cover the attack shapes listed, not every variant: a paraphrased instruction with no hidden characters, URL or secret won't be caught by these checks. See the [OWASP coverage tables](README.md#️-owasp-coverage) for what is and isn't covered.
|
package/README.md
CHANGED
|
@@ -333,6 +333,27 @@ A rug pull is an MCP server that passes review at install time and then changes
|
|
|
333
333
|
|
|
334
334
|
Re-check servers on startup or on a schedule. After a human reviews a change, pass `accept_changes: true` to update the baseline. Baselines are stored in `~/.config/mund/mcp-baselines.json` (override with `MUND_BASELINE_PATH`).
|
|
335
335
|
|
|
336
|
+
## 🚪 Pre-Install Checks for Skills and MCP Servers
|
|
337
|
+
|
|
338
|
+
Mund checks agent skills and MCP servers **before they get to act**. Every check is backed by a fixture; see [DETECTION_CLAIMS.md](DETECTION_CLAIMS.md).
|
|
339
|
+
|
|
340
|
+
```bash
|
|
341
|
+
npx @weave_protocol/mund agent-audit --live # audit installed skills + configured MCP servers
|
|
342
|
+
npx @weave_protocol/mund check-skill ./my-skill/ # check one skill before you install it
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
- **Skills:** hidden Unicode (invisible tag characters, bidi overrides), prompt injection, exfiltration instructions, dangerous commands, and embedded secrets, across `SKILL.md` and every file the skill ships.
|
|
346
|
+
- **MCP servers, static:** package typosquats (including scopes imitating `@modelcontextprotocol`), unpinned packages, plain-HTTP or data-collection URLs, inline secrets, and shell-pipeline launchers.
|
|
347
|
+
- **MCP servers, live (`--live`):** connects, lists the tools, scans their descriptions, and compares them with the rug-pull baseline.
|
|
348
|
+
|
|
349
|
+
Verdicts are **block**, **warn** or **allow**. Configs are read from Claude Code (`.mcp.json`, `~/.claude.json`, Claude Desktop) or, with `--harness=antigravity`, from Antigravity (`.agents/`, `~/.gemini/config/`).
|
|
350
|
+
|
|
351
|
+
**Safety:** the live check never starts a project or workspace server you haven't approved, or a server whose package or URL it already distrusts. Those get static checks only.
|
|
352
|
+
|
|
353
|
+
**Enforcement** comes from the harness adapters, which run these checks as hooks:
|
|
354
|
+
- [`@weave_protocol/adapter-claudecode`](../adapter-claudecode#mund-pre-install-hooks): `weave-claude-code mund install`
|
|
355
|
+
- [`@weave_protocol/adapter-antigravity`](../adapter-antigravity#mund-pre-install-hooks): `weave-antigravity mund install`
|
|
356
|
+
|
|
336
357
|
## 🐤 Canary Tokens (System Prompt Leakage)
|
|
337
358
|
|
|
338
359
|
Put a canary in your system prompt. If a model is ever talked into revealing its instructions, the canary comes out with them, and Mund flags it in any scanned output. That includes copies with changed case, spacing or zero-width characters inserted, base64 encoding, or reversal.
|
|
@@ -459,14 +480,14 @@ Detection is pattern-based: it catches known shapes of an attack, not every vari
|
|
|
459
480
|
| ASI02 | Tool Misuse and Exploitation | 🟡 | ✅ | **Hundredmen** intercepts every MCP tool call: argument scanning, server reputation, intent analysis, then approve, block or hold for review ([interceptor.ts](https://github.com/Tyox-all/Weave_Protocol/blob/main/hundredmen/src/interceptor.ts)). |
|
|
460
481
|
| ASI03 | Identity and Privilege Abuse | 🟡 | ✅ | **Hord**: HMAC-signed capability tokens with expiry, revocation and a delegation-depth cap ([capability/token.ts](https://github.com/Tyox-all/Weave_Protocol/blob/main/hord/src/capability/token.ts)). **Domere**: signed handoff tokens bound to one agent, with expiry and revocation ([handoff/verification.ts](https://github.com/Tyox-all/Weave_Protocol/blob/main/domere/src/handoff/verification.ts)). Mund catches leaked credentials. |
|
|
461
482
|
| ASI04 | Agentic Supply Chain Vulnerabilities | ✅ | ✅ | Mund: static MCP manifest scanning, OSV CVEs, and **rug-pull detection**, which baselines every tool and escalates changes that turn malicious ([rugpull.ts](https://github.com/Tyox-all/Weave_Protocol/blob/main/mund/src/rugpull.ts), [fixtures](https://github.com/Tyox-all/Weave_Protocol/blob/main/mund/tests/fixtures/rugpull)). **Tollere**: package, container and extension supply chain. |
|
|
462
|
-
| ASI05 | Unexpected Code Execution | 🟡 |
|
|
483
|
+
| ASI05 | Unexpected Code Execution | 🟡 | ✅ | Mund: dangerous-code rules and command validation. **Hundredmen** can block or hold execution calls. **Hord**'s sandbox isolates network, filesystem and environment (`sandbox-exec` on macOS, `bwrap` on Linux), kills the process group on memory or time overruns, and reports what it enforced; strict mode refuses to run without full isolation ([sandbox/isolation.ts](https://github.com/Tyox-all/Weave_Protocol/blob/main/hord/src/sandbox/isolation.ts), [escape tests](https://github.com/Tyox-all/Weave_Protocol/blob/main/hord/tests/sandbox-isolation.test.ts)). |
|
|
463
484
|
| ASI06 | Memory and Context Poisoning | 🟡 | 🟡 | Mund scans content before it enters context, and **Hord** stores memory encrypted. Gap: stored memory isn't scanned on write or integrity-checked. |
|
|
464
485
|
| ASI07 | Insecure Inter-Agent Communication | ⬜ | ✅ | **Domere**: handoffs carry a signed token with an intent hash, are bound to the receiving agent, and expire or can be revoked ([handoff/verification.ts](https://github.com/Tyox-all/Weave_Protocol/blob/main/domere/src/handoff/verification.ts)). |
|
|
465
486
|
| ASI08 | Cascading Failures | ⬜ | 🟡 | **Witan**: checkpoints, transaction rollback and recovery plans ([recovery.ts](https://github.com/Tyox-all/Weave_Protocol/blob/main/witan/src/recovery.ts)). Gap: recovers after failure; no circuit breaker to contain one. |
|
|
466
487
|
| ASI09 | Human-Agent Trust Exploitation | ⬜ | ⬜ | Not covered. |
|
|
467
488
|
| ASI10 | Rogue Agents | ⬜ | 🟡 | **Hord**: signed, hash-chained attestations of agent actions ([attestation/service.ts](https://github.com/Tyox-all/Weave_Protocol/blob/main/hord/src/attestation/service.ts)). **Hundredmen** monitors and can block calls. Gap: no behavioral baseline to spot a rogue agent automatically. |
|
|
468
489
|
|
|
469
|
-
**Totals:** Mund alone has **3 ✅** out of 20; the Weave suite has **
|
|
490
|
+
**Totals:** Mund alone has **3 ✅** out of 20; the Weave suite has **11 ✅**. Next on the path to more green: injection detection measured against Adversary's corpus (LLM01 / ASI01) and scanning memory on write (ASI06).
|
|
470
491
|
|
|
471
492
|
---
|
|
472
493
|
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mund - The Guardian Protocol
|
|
3
|
+
* Agent audit: pre-install checks for skills and MCP servers
|
|
4
|
+
*
|
|
5
|
+
* Backs the "pre-install" hooks in the Weave Protocol harness adapters:
|
|
6
|
+
*
|
|
7
|
+
* - Skills: scan SKILL.md and every text file in a skill directory for
|
|
8
|
+
* prompt injection, exfiltration, dangerous code, secrets and hidden
|
|
9
|
+
* Unicode (invisible "tag" characters can smuggle instructions that a
|
|
10
|
+
* human reviewer never sees).
|
|
11
|
+
* - MCP servers: static checks on how each configured server is launched
|
|
12
|
+
* (package typosquats, unpinned packages, insecure or exfil URLs, inline
|
|
13
|
+
* secrets), plus an optional live check that connects, lists the tools,
|
|
14
|
+
* scans their descriptions, and compares them with the rug-pull baseline.
|
|
15
|
+
*
|
|
16
|
+
* SAFETY: the live check starts server processes. It only does that for
|
|
17
|
+
* servers the user configured themselves (user/local scope) or explicitly
|
|
18
|
+
* approved for this project. Project `.mcp.json` servers that Claude Code
|
|
19
|
+
* would still ask about are checked statically only, so opening a
|
|
20
|
+
* malicious repository never runs its servers through Mund.
|
|
21
|
+
*/
|
|
22
|
+
import type { SecurityIssue } from './types.js';
|
|
23
|
+
import { type McpServerManifest } from './analyzers/mcp-server-analyzer.js';
|
|
24
|
+
import { type RiskScore } from './scoring.js';
|
|
25
|
+
import { BaselineStore, type RugPullResult } from './rugpull.js';
|
|
26
|
+
export type Verdict = 'allow' | 'warn' | 'block';
|
|
27
|
+
/** Which agent harness's config layout to audit. */
|
|
28
|
+
export type Harness = 'claude' | 'antigravity';
|
|
29
|
+
export interface SkillAudit {
|
|
30
|
+
name: string;
|
|
31
|
+
path: string;
|
|
32
|
+
scope: 'project' | 'user' | 'workspace' | 'global' | 'plugin';
|
|
33
|
+
verdict: Verdict;
|
|
34
|
+
risk: RiskScore;
|
|
35
|
+
issues: SecurityIssue[];
|
|
36
|
+
}
|
|
37
|
+
export interface McpServerConfig {
|
|
38
|
+
type?: string;
|
|
39
|
+
command?: string;
|
|
40
|
+
args?: string[];
|
|
41
|
+
env?: Record<string, string>;
|
|
42
|
+
url?: string;
|
|
43
|
+
/** Antigravity spelling of url */
|
|
44
|
+
serverUrl?: string;
|
|
45
|
+
headers?: Record<string, string>;
|
|
46
|
+
disabled?: boolean;
|
|
47
|
+
}
|
|
48
|
+
export interface McpServerAudit {
|
|
49
|
+
name: string;
|
|
50
|
+
scope: 'project' | 'local' | 'user' | 'desktop' | 'workspace' | 'global';
|
|
51
|
+
transport: 'stdio' | 'http' | 'sse' | 'unknown';
|
|
52
|
+
target: string;
|
|
53
|
+
verdict: Verdict;
|
|
54
|
+
risk: RiskScore;
|
|
55
|
+
issues: SecurityIssue[];
|
|
56
|
+
live: {
|
|
57
|
+
status: 'ok' | 'error' | 'skipped';
|
|
58
|
+
reason?: string;
|
|
59
|
+
tools?: number;
|
|
60
|
+
rugpull?: RugPullResult['status'];
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
export interface AgentAuditReport {
|
|
64
|
+
version: 1;
|
|
65
|
+
tool: {
|
|
66
|
+
name: 'mund';
|
|
67
|
+
version: string;
|
|
68
|
+
};
|
|
69
|
+
generatedAt: string;
|
|
70
|
+
cwd: string;
|
|
71
|
+
servers: McpServerAudit[];
|
|
72
|
+
skills: SkillAudit[];
|
|
73
|
+
summary: Record<Verdict, number>;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* critical → block; high in a blocking category (injection, exfiltration,
|
|
77
|
+
* hidden Unicode) → block; other high/medium → warn; else allow.
|
|
78
|
+
*/
|
|
79
|
+
export declare function verdictFor(issues: Array<Pick<SecurityIssue, 'severity' | 'type'>>): Verdict;
|
|
80
|
+
/** Scan one piece of skill content (a SKILL.md or a file shipped with the skill). */
|
|
81
|
+
export declare function scanSkillContent(content: string): Promise<SecurityIssue[]>;
|
|
82
|
+
export declare function scanSkillDir(dir: string, scope?: SkillAudit['scope']): Promise<SkillAudit>;
|
|
83
|
+
export declare function skillRoots(cwd: string, home?: string, harness?: Harness): Array<[string, SkillAudit['scope']]>;
|
|
84
|
+
export declare function discoverSkillDirs(cwd: string, home?: string, harness?: Harness): Array<{
|
|
85
|
+
dir: string;
|
|
86
|
+
scope: SkillAudit['scope'];
|
|
87
|
+
}>;
|
|
88
|
+
interface DiscoveredServer {
|
|
89
|
+
name: string;
|
|
90
|
+
scope: McpServerAudit['scope'];
|
|
91
|
+
config: McpServerConfig;
|
|
92
|
+
/** Started by the user's own configuration or explicitly approved; safe to start for a live check. */
|
|
93
|
+
approved: boolean;
|
|
94
|
+
}
|
|
95
|
+
/** Claude Desktop's config, which also supplies MCP servers to its Code tab. */
|
|
96
|
+
export declare function claudeDesktopConfigPath(home?: string): string;
|
|
97
|
+
/**
|
|
98
|
+
* Claude Code MCP config: <cwd>/.mcp.json (project), ~/.claude.json (user +
|
|
99
|
+
* per-project local), and Claude Desktop's claude_desktop_config.json.
|
|
100
|
+
*/
|
|
101
|
+
export declare function discoverMcpServers(cwd: string, home?: string): DiscoveredServer[];
|
|
102
|
+
/**
|
|
103
|
+
* Antigravity MCP config: <workspace>/.agents/mcp_config.json and
|
|
104
|
+
* ~/.gemini/config/mcp_config.json. Workspace servers are checked
|
|
105
|
+
* statically only (same consent rule as Claude Code project servers);
|
|
106
|
+
* servers marked "disabled" are never started.
|
|
107
|
+
*/
|
|
108
|
+
export declare function discoverAntigravityMcpServers(cwd: string, home?: string): DiscoveredServer[];
|
|
109
|
+
/** The package a launcher like `npx -y pkg@1.2.3` runs, if any. */
|
|
110
|
+
export declare function launchedPackage(config: McpServerConfig): {
|
|
111
|
+
name: string;
|
|
112
|
+
version?: string;
|
|
113
|
+
} | null;
|
|
114
|
+
/** Static checks on how a server is launched. No processes are started. */
|
|
115
|
+
export declare function checkMcpServerConfig(name: string, config: McpServerConfig): Promise<SecurityIssue[]>;
|
|
116
|
+
/** Connect to a server, list its tools, and return them as a manifest. */
|
|
117
|
+
export declare function fetchLiveManifest(name: string, config: McpServerConfig, timeoutMs?: number): Promise<McpServerManifest>;
|
|
118
|
+
export declare function calibrateLiveFindings(issues: SecurityIssue[]): SecurityIssue[];
|
|
119
|
+
export declare function auditMcpServer(server: DiscoveredServer, opts?: {
|
|
120
|
+
live?: boolean;
|
|
121
|
+
store?: BaselineStore;
|
|
122
|
+
timeoutMs?: number;
|
|
123
|
+
accept?: string[];
|
|
124
|
+
harness?: Harness;
|
|
125
|
+
}): Promise<McpServerAudit>;
|
|
126
|
+
/** Cache key: sha256(resolved cwd), plus the harness for non-Claude layouts. */
|
|
127
|
+
export declare function auditCachePath(cwd: string, harness?: Harness): string;
|
|
128
|
+
export declare function runAgentAudit(opts?: {
|
|
129
|
+
cwd?: string;
|
|
130
|
+
live?: boolean;
|
|
131
|
+
home?: string;
|
|
132
|
+
store?: BaselineStore;
|
|
133
|
+
timeoutMs?: number;
|
|
134
|
+
writeCache?: boolean;
|
|
135
|
+
accept?: string[];
|
|
136
|
+
harness?: Harness;
|
|
137
|
+
}): Promise<AgentAuditReport>;
|
|
138
|
+
export {};
|
|
139
|
+
//# sourceMappingURL=agent-audit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-audit.d.ts","sourceRoot":"","sources":["../src/agent-audit.ts"],"names":[],"mappings":"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"}
|