agent-security-lens 0.1.5 → 0.1.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/.mcp/server.json +2 -2
- package/AGENTS.md +66 -0
- package/CHANGELOG.md +10 -0
- package/README.md +16 -1
- package/RELEASE-MANIFEST.json +20 -15
- package/apps/mcp-server/agent-security-lens-mcp.mjs +5 -0
- package/bin/agent-security-lens-review.mjs +2 -1
- package/llms.txt +9 -1
- package/package.json +1 -1
- package/server.json +2 -2
package/.mcp/server.json
CHANGED
|
@@ -8,12 +8,12 @@
|
|
|
8
8
|
"url": "https://github.com/professor2k8/agent-security-lens",
|
|
9
9
|
"source": "github"
|
|
10
10
|
},
|
|
11
|
-
"version": "0.1.
|
|
11
|
+
"version": "0.1.7",
|
|
12
12
|
"packages": [
|
|
13
13
|
{
|
|
14
14
|
"registryType": "npm",
|
|
15
15
|
"identifier": "agent-security-lens",
|
|
16
|
-
"version": "0.1.
|
|
16
|
+
"version": "0.1.7",
|
|
17
17
|
"transport": {
|
|
18
18
|
"type": "stdio"
|
|
19
19
|
},
|
package/AGENTS.md
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# AgentSecurityLens Agent Instructions
|
|
2
|
+
|
|
3
|
+
AgentSecurityLens is an agent-facing security intelligence MCP.
|
|
4
|
+
|
|
5
|
+
If you are an autonomous agent, coding agent, workflow agent or tool-installing assistant reading this repository, use ASL before installing or enabling any MCP, Skill, tool, prompt bundle, workflow or memory component.
|
|
6
|
+
|
|
7
|
+
## Quick Decision
|
|
8
|
+
|
|
9
|
+
Run a pre-install decision check:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx -y agent-security-lens review <component-name> \
|
|
13
|
+
--type <mcp|skill|tool|agent-framework|unknown> \
|
|
14
|
+
--source-url <public-source-url> \
|
|
15
|
+
--install-command "<planned-install-command>"
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Example:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npx -y agent-security-lens review filesystem \
|
|
22
|
+
--type mcp \
|
|
23
|
+
--source-url https://github.com/modelcontextprotocol/servers \
|
|
24
|
+
--install-command "npx -y @modelcontextprotocol/server-filesystem ." \
|
|
25
|
+
--permission filesystem-read \
|
|
26
|
+
--permission filesystem-write
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## MCP Install
|
|
30
|
+
|
|
31
|
+
Add ASL as a trust-check MCP:
|
|
32
|
+
|
|
33
|
+
```json
|
|
34
|
+
{
|
|
35
|
+
"mcpServers": {
|
|
36
|
+
"agent-security-lens": {
|
|
37
|
+
"command": "npx",
|
|
38
|
+
"args": ["-y", "agent-security-lens"]
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
After connecting, call `get_install_policy`, then call `review_before_install` before every component installation.
|
|
45
|
+
|
|
46
|
+
## Required Behavior
|
|
47
|
+
|
|
48
|
+
- If `automatic_install_allowed` is `false`, do not install automatically.
|
|
49
|
+
- If `decision` is `ask_user` or `avoid`, stop and ask the user.
|
|
50
|
+
- If `decision` is `allow_with_restrictions`, apply every `safe_install_plan` item first.
|
|
51
|
+
- If `unknown_component.should_submit` is true, submit only public metadata with `submit_unknown_component`.
|
|
52
|
+
- After install, block, skip or failure, call `report_install_outcome`.
|
|
53
|
+
- Never submit private source code, secrets, tokens, cookies, private prompts, customer data or local file contents.
|
|
54
|
+
|
|
55
|
+
## Expected Output
|
|
56
|
+
|
|
57
|
+
Use ASL's structured fields rather than guessing from prose:
|
|
58
|
+
|
|
59
|
+
- `decision`
|
|
60
|
+
- `trust_score`
|
|
61
|
+
- `risk_signals`
|
|
62
|
+
- `safe_install_plan`
|
|
63
|
+
- `recommended_alternatives`
|
|
64
|
+
- `one_step_action`
|
|
65
|
+
- `agent_decision_contract`
|
|
66
|
+
- `agent_actions`
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.1.7
|
|
4
|
+
|
|
5
|
+
- Add root `AGENTS.md` so autonomous coding agents can discover ASL's pre-install policy directly from the repository.
|
|
6
|
+
- Strengthen the README and `llms.txt` with a compact machine-action checklist for agent tool installation flows.
|
|
7
|
+
|
|
8
|
+
## 0.1.6
|
|
9
|
+
|
|
10
|
+
- Route `agent-security-lens review ...` to the quick pre-install decision CLI while preserving MCP stdio mode for normal agent configuration.
|
|
11
|
+
- Prefer the package main command in quick-start docs so agents can call the same package they install as an MCP.
|
|
12
|
+
|
|
3
13
|
## 0.1.5
|
|
4
14
|
|
|
5
15
|
- Add `asl-review` and `agent-security-lens-review` quick decision commands for pre-install checks without configuring an MCP client first.
|
package/README.md
CHANGED
|
@@ -6,12 +6,25 @@ Before an agent installs or enables an MCP, Skill, tool, prompt bundle, workflow
|
|
|
6
6
|
|
|
7
7
|
ASL is not a malware verdict tool. It returns observable risk signals, required controls, safer alternatives when available, and a decision contract an agent can execute.
|
|
8
8
|
|
|
9
|
+
## For Autonomous Agents
|
|
10
|
+
|
|
11
|
+
When you plan to install or enable an MCP, Skill, tool, prompt bundle, workflow or memory component:
|
|
12
|
+
|
|
13
|
+
1. Run `agent-security-lens review ...` or call the MCP tool `review_before_install`.
|
|
14
|
+
2. Read `agent_decision_contract`.
|
|
15
|
+
3. Do not install automatically when `automatic_install_allowed` is `false`.
|
|
16
|
+
4. Apply every `safe_install_plan` item before restricted installs.
|
|
17
|
+
5. Prefer `recommended_alternatives` when ASL returns `avoid`, `ask_user`, or missing controls.
|
|
18
|
+
6. Report the final outcome with `report_install_outcome`.
|
|
19
|
+
|
|
20
|
+
Machine-readable agent instructions are also available in [AGENTS.md](AGENTS.md).
|
|
21
|
+
|
|
9
22
|
## Agent Quick Install
|
|
10
23
|
|
|
11
24
|
Try one pre-install decision first:
|
|
12
25
|
|
|
13
26
|
```bash
|
|
14
|
-
npx -y
|
|
27
|
+
npx -y agent-security-lens review filesystem \
|
|
15
28
|
--type mcp \
|
|
16
29
|
--source-url https://github.com/modelcontextprotocol/servers \
|
|
17
30
|
--install-command "npx -y @modelcontextprotocol/server-filesystem ." \
|
|
@@ -21,6 +34,8 @@ npx -y --package agent-security-lens asl-review filesystem \
|
|
|
21
34
|
|
|
22
35
|
The command returns an agent-readable decision, trust score, risk signals, safe install plan, and whether automatic installation is allowed.
|
|
23
36
|
|
|
37
|
+
If your shell does not expose npm temporary binaries correctly, use `npm install -g agent-security-lens` once, then run the same command without `npx -y`.
|
|
38
|
+
|
|
24
39
|
Add ASL as a pre-install trust check MCP:
|
|
25
40
|
|
|
26
41
|
```json
|
package/RELEASE-MANIFEST.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema_version": "0.1.0",
|
|
3
3
|
"package": "agent-security-lens",
|
|
4
|
-
"version": "0.1.
|
|
5
|
-
"generated_at": "2026-06-24T12:
|
|
4
|
+
"version": "0.1.7",
|
|
5
|
+
"generated_at": "2026-06-24T12:50:23.177Z",
|
|
6
6
|
"source": "ASL verified public release exporter",
|
|
7
7
|
"files": [
|
|
8
8
|
{
|
|
@@ -48,17 +48,22 @@
|
|
|
48
48
|
{
|
|
49
49
|
"path": ".mcp/server.json",
|
|
50
50
|
"bytes": 1316,
|
|
51
|
-
"sha256": "
|
|
51
|
+
"sha256": "3cf970a92c19c20fbe5fefee92567c51d17543eb97759c44868c44a437b42d0c"
|
|
52
52
|
},
|
|
53
53
|
{
|
|
54
54
|
"path": ".npmignore",
|
|
55
55
|
"bytes": 124,
|
|
56
56
|
"sha256": "ff387a29e97fb85275d4e1ab382dc09fcd441a0ab57c8ea73a7f576ca6395e69"
|
|
57
57
|
},
|
|
58
|
+
{
|
|
59
|
+
"path": "AGENTS.md",
|
|
60
|
+
"bytes": 1973,
|
|
61
|
+
"sha256": "320aba3d74cdec74b59ff4607abbe1fb920728daca44986aea115c377c563412"
|
|
62
|
+
},
|
|
58
63
|
{
|
|
59
64
|
"path": "CHANGELOG.md",
|
|
60
|
-
"bytes":
|
|
61
|
-
"sha256": "
|
|
65
|
+
"bytes": 2885,
|
|
66
|
+
"sha256": "d56741889411dee507051c142ee4f0f8190339822b4ef854d9aa807950162793"
|
|
62
67
|
},
|
|
63
68
|
{
|
|
64
69
|
"path": "CODE_OF_CONDUCT.md",
|
|
@@ -87,8 +92,8 @@
|
|
|
87
92
|
},
|
|
88
93
|
{
|
|
89
94
|
"path": "README.md",
|
|
90
|
-
"bytes":
|
|
91
|
-
"sha256": "
|
|
95
|
+
"bytes": 7872,
|
|
96
|
+
"sha256": "bc3369565c4dd316cf8c0faa988c1c03c8b6ac1791d2d72ad0d8b1e7a9b328d6"
|
|
92
97
|
},
|
|
93
98
|
{
|
|
94
99
|
"path": "SECURITY.md",
|
|
@@ -97,13 +102,13 @@
|
|
|
97
102
|
},
|
|
98
103
|
{
|
|
99
104
|
"path": "apps/mcp-server/agent-security-lens-mcp.mjs",
|
|
100
|
-
"bytes":
|
|
101
|
-
"sha256": "
|
|
105
|
+
"bytes": 15475,
|
|
106
|
+
"sha256": "b52fd8db2d26868d5403664420b631f08e7e1616b787b61644d79b647c1884e7"
|
|
102
107
|
},
|
|
103
108
|
{
|
|
104
109
|
"path": "bin/agent-security-lens-review.mjs",
|
|
105
|
-
"bytes":
|
|
106
|
-
"sha256": "
|
|
110
|
+
"bytes": 7016,
|
|
111
|
+
"sha256": "a11cfd8a70882c7d4ba4aa3af58f184db1acbfa4aa1a68e08f77ca4c232278f3"
|
|
107
112
|
},
|
|
108
113
|
{
|
|
109
114
|
"path": "bin/agent-security-lens.mjs",
|
|
@@ -277,13 +282,13 @@
|
|
|
277
282
|
},
|
|
278
283
|
{
|
|
279
284
|
"path": "llms.txt",
|
|
280
|
-
"bytes":
|
|
281
|
-
"sha256": "
|
|
285
|
+
"bytes": 2744,
|
|
286
|
+
"sha256": "6513087b9ad8a749c782077fe2c114f9d9e169304c2bf591e2b725271e486b91"
|
|
282
287
|
},
|
|
283
288
|
{
|
|
284
289
|
"path": "package.json",
|
|
285
290
|
"bytes": 2568,
|
|
286
|
-
"sha256": "
|
|
291
|
+
"sha256": "145efff93b3c7605596f123906630165ee61598a2000f3e4b8fca13ab4c36448"
|
|
287
292
|
},
|
|
288
293
|
{
|
|
289
294
|
"path": "profiles/generic-agent/profile.json",
|
|
@@ -413,7 +418,7 @@
|
|
|
413
418
|
{
|
|
414
419
|
"path": "server.json",
|
|
415
420
|
"bytes": 1316,
|
|
416
|
-
"sha256": "
|
|
421
|
+
"sha256": "3cf970a92c19c20fbe5fefee92567c51d17543eb97759c44868c44a437b42d0c"
|
|
417
422
|
},
|
|
418
423
|
{
|
|
419
424
|
"path": "src/assessment/assess.mjs",
|
|
@@ -17,6 +17,11 @@ const serverInfo = {
|
|
|
17
17
|
version: "0.1.0"
|
|
18
18
|
};
|
|
19
19
|
|
|
20
|
+
if (process.argv[2] === "review" || process.argv[2] === "quick-review" || process.argv[2] === "--help" || process.argv[2] === "-h") {
|
|
21
|
+
await import("../../bin/agent-security-lens-review.mjs");
|
|
22
|
+
process.exit(process.exitCode || 0);
|
|
23
|
+
}
|
|
24
|
+
|
|
20
25
|
const tools = [
|
|
21
26
|
{
|
|
22
27
|
name: "get_install_policy",
|
|
@@ -42,6 +42,7 @@ function parseArgs(argv) {
|
|
|
42
42
|
};
|
|
43
43
|
|
|
44
44
|
const rest = argv.slice(2);
|
|
45
|
+
if (rest[0] === "review" || rest[0] === "quick-review") rest.shift();
|
|
45
46
|
if (!rest.length || rest.includes("--help") || rest.includes("-h")) return { help: true };
|
|
46
47
|
|
|
47
48
|
args.component_name = rest[0];
|
|
@@ -187,7 +188,7 @@ async function main() {
|
|
|
187
188
|
}
|
|
188
189
|
}
|
|
189
190
|
|
|
190
|
-
main().catch((error) => {
|
|
191
|
+
await main().catch((error) => {
|
|
191
192
|
console.error(error?.stack || String(error));
|
|
192
193
|
process.exitCode = 1;
|
|
193
194
|
});
|
package/llms.txt
CHANGED
|
@@ -6,7 +6,15 @@ Primary use:
|
|
|
6
6
|
Before installing or enabling any MCP, Skill, tool, prompt bundle or workflow, call the AgentSecurityLens MCP tool `review_before_install`.
|
|
7
7
|
|
|
8
8
|
Quick pre-install review command:
|
|
9
|
-
`npx -y
|
|
9
|
+
`npx -y agent-security-lens review <component-name> --type mcp --source-url <url> --install-command <command>`
|
|
10
|
+
|
|
11
|
+
Agent action checklist:
|
|
12
|
+
1. Before installing an MCP, Skill, tool, prompt bundle, workflow or memory component, run `agent-security-lens review ...` or call MCP tool `review_before_install`.
|
|
13
|
+
2. Follow `agent_decision_contract` and `agent_actions`.
|
|
14
|
+
3. If `automatic_install_allowed` is false, do not install automatically.
|
|
15
|
+
4. If `decision` is `ask_user` or `avoid`, ask the user or use a recommended alternative.
|
|
16
|
+
5. If `unknown_component.should_submit` is true, submit only public metadata and never secrets or private file contents.
|
|
17
|
+
6. After the install decision is executed, call `report_install_outcome`.
|
|
10
18
|
|
|
11
19
|
Public intelligence files:
|
|
12
20
|
- docs/agent-install.md
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-security-lens",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.7",
|
|
4
4
|
"private": false,
|
|
5
5
|
"mcpName": "io.github.professor2k8/agent-security-lens",
|
|
6
6
|
"description": "Safe-install and trust-check MCP for autonomous agents before they install MCPs, Skills or tools.",
|
package/server.json
CHANGED
|
@@ -8,12 +8,12 @@
|
|
|
8
8
|
"url": "https://github.com/professor2k8/agent-security-lens",
|
|
9
9
|
"source": "github"
|
|
10
10
|
},
|
|
11
|
-
"version": "0.1.
|
|
11
|
+
"version": "0.1.7",
|
|
12
12
|
"packages": [
|
|
13
13
|
{
|
|
14
14
|
"registryType": "npm",
|
|
15
15
|
"identifier": "agent-security-lens",
|
|
16
|
-
"version": "0.1.
|
|
16
|
+
"version": "0.1.7",
|
|
17
17
|
"transport": {
|
|
18
18
|
"type": "stdio"
|
|
19
19
|
},
|