@shield-agent/kya 0.1.13 → 0.1.14

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.
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "shield-kya",
3
+ "version": "0.1.3",
4
+ "description": "Know Your Agent: fail-closed eval (ALLOW | DENY | REQUIRE_APPROVE), dual-plane host=ide|runtime, human approval. This plugin is a thin MCP gate — the control plane is the sole PEP.",
5
+ "author": {
6
+ "name": "Shield Agent",
7
+ "email": "it@shield-agent.com"
8
+ },
9
+ "homepage": "https://shield-agent.com",
10
+ "repository": "https://github.com/The-Pixel-Boys/shield-kya",
11
+ "license": "MIT",
12
+ "keywords": ["kya", "know-your-agent", "policy", "mcp", "approval", "dual-plane"],
13
+ "logo": "assets/logo.svg",
14
+ "variables": {
15
+ "type": "object",
16
+ "properties": {
17
+ "KYA_BASE_URL": {
18
+ "type": "string",
19
+ "title": "Control plane URL",
20
+ "description": "Shield KYA origin (http://127.0.0.1:8090 or https://shield-agent.com)"
21
+ },
22
+ "KYA_API_KEY": {
23
+ "type": "string",
24
+ "title": "API key",
25
+ "description": "Control-plane API key. Required when the plane enforces auth."
26
+ },
27
+ "KYA_HOST": {
28
+ "type": "string",
29
+ "title": "Host plane",
30
+ "description": "ide = authoring / dry-run. runtime = production work.",
31
+ "enum": ["ide", "runtime"],
32
+ "default": "ide"
33
+ },
34
+ "KYA_AGENT_ID": {
35
+ "type": "string",
36
+ "title": "Agent id",
37
+ "description": "Registered agent principal id on the control plane."
38
+ }
39
+ },
40
+ "required": ["KYA_BASE_URL", "KYA_API_KEY"]
41
+ }
42
+ }
package/.mcp.json ADDED
@@ -0,0 +1,13 @@
1
+ {
2
+ "mcpServers": {
3
+ "shield-kya": {
4
+ "command": "npx",
5
+ "args": ["-y", "@shield-agent/kya@0.1.14", "serve-mcp", "--stdio"],
6
+ "env": {
7
+ "KYA_BASE_URL": "https://shield-agent.com",
8
+ "KYA_API_KEY": "${KYA_API_KEY}",
9
+ "KYA_HOST": "ide"
10
+ }
11
+ }
12
+ }
13
+ }
package/LIMITATIONS.md CHANGED
@@ -17,3 +17,6 @@
17
17
 
18
18
  - Showback USD is an estimate from a checked-in published rate table. Unknown models report tokens only. ORR / metrics never ALLOW, DENY, or kill on spend.
19
19
  - `--usage` must sit inside `--path`. Usage rows drop secret-shaped strings and labels over 64/128 chars. Hosted ingest is merchant-scoped and length-capped the same way.
20
+
21
+ - Hosted Claude connector uses machine API keys (Bearer). It is a custom connector, not an Anthropic Directory listing. OAuth DCR is a later slice.
22
+ - Local HTTP MCP remains loopback-only. Do not bind it to a public interface.
package/README.md CHANGED
@@ -103,6 +103,19 @@ npx @shield-agent/kya reject --id <approval-id>
103
103
  `invoke` asks the live plane to authorize after Allow or APPROVED. It does not run the write on this machine.
104
104
  The TUI (`dash`) is observational. Keys `a`/`x` print this CLI. They do not decide.
105
105
 
106
+ ## Claude connector
107
+
108
+ **Desktop / Claude Code (local stdio):**
109
+
110
+ ```bash
111
+ npx -y @shield-agent/kya@0.1.14 serve-mcp --stdio
112
+ ```
113
+
114
+ Copy `claude/claude_desktop_config.example.json` into Claude Desktop MCP settings, or use `.mcp.json` for Claude Code.
115
+ Pack a Desktop extension with `npx @anthropic-ai/mcpb pack` (see `manifest.json`).
116
+
117
+ **Claude.ai / Cowork (hosted):** add custom connector URL `https://shield-agent.com/mcp` with request header `Authorization: Bearer <KYA_API_KEY>`. Not Directory-listed yet (API-key auth, no OAuth DCR).
118
+
106
119
  ## Cursor plugin
107
120
 
108
121
  `.cursor-plugin/plugin.json` + `mcp.json` + wrap skill. Public listing repo: https://github.com/The-Pixel-Boys/shield-kya
@@ -0,0 +1,6 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" role="img" aria-label="Shield Agent">
2
+ <rect width="32" height="32" rx="6" fill="#0A0A0A"/>
3
+ <path d="M16 2.5 4.5 7v9.4c0 6.7 4.7 11.5 11.5 13.1 6.8-1.6 11.5-6.4 11.5-13.1V7L16 2.5Z" fill="#F4F1EA" fill-opacity="0.12"/>
4
+ <path d="M16 2.5 4.5 7v9.4c0 6.7 4.7 11.5 11.5 13.1 6.8-1.6 11.5-6.4 11.5-13.1V7L16 2.5Zm0 2.2 9.5 3.7v8c0 5.4-3.7 9.4-9.5 10.9-5.8-1.5-9.5-5.5-9.5-10.9v-8L16 4.7Z" fill="#F4F1EA"/>
5
+ <path d="m11 16.5 3.4 3.5L21 13l-1.5-1.5-5.1 5.1-1.9-2-1.5 1.9Z" fill="#F4F1EA"/>
6
+ </svg>
@@ -0,0 +1,14 @@
1
+ {
2
+ "mcpServers": {
3
+ "shield-kya": {
4
+ "command": "npx",
5
+ "args": ["-y", "@shield-agent/kya@0.1.14", "serve-mcp", "--stdio"],
6
+ "env": {
7
+ "KYA_BASE_URL": "https://shield-agent.com",
8
+ "KYA_API_KEY": "${KYA_API_KEY}",
9
+ "KYA_HOST": "ide",
10
+ "KYA_AGENT_ID": "${KYA_AGENT_ID}"
11
+ }
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * MCPB entry stub. Claude Desktop launches via manifest mcp_config (npx).
4
+ * Running this file directly forwards to the published package.
5
+ */
6
+ import { spawn } from "node:child_process";
7
+
8
+ const child = spawn(
9
+ "npx",
10
+ ["-y", "@shield-agent/kya@0.1.14", "serve-mcp", "--stdio"],
11
+ { stdio: "inherit", env: process.env },
12
+ );
13
+ child.on("exit", (code, signal) => {
14
+ if (signal) process.kill(process.pid, signal);
15
+ process.exit(code ?? 1);
16
+ });
package/dist/mcp/http.js CHANGED
@@ -139,14 +139,30 @@ function authorizeMcp(req, res, sharedSecret) {
139
139
  if (!sharedSecret) {
140
140
  return true;
141
141
  }
142
- const presented = req.headers["x-kya-mcp-token"];
143
- const token = Array.isArray(presented) ? presented[0] : presented;
144
- if (!token || !tokensEqual(token, sharedSecret)) {
145
- json(res, 401, { error: "unauthorized" });
142
+ const presented = extractMcpToken(req);
143
+ if (!presented || !tokensEqual(presented, sharedSecret)) {
144
+ json(res, 401, {
145
+ error: "unauthorized",
146
+ hint: "send X-KYA-MCP-Token or Authorization: Bearer <token>",
147
+ });
146
148
  return false;
147
149
  }
148
150
  return true;
149
151
  }
152
+ /** Prefer X-KYA-MCP-Token; also accept Authorization Bearer (Claude connector shape). */
153
+ function extractMcpToken(req) {
154
+ const header = req.headers["x-kya-mcp-token"];
155
+ const fromHeader = Array.isArray(header) ? header[0] : header;
156
+ if (fromHeader && fromHeader.trim())
157
+ return fromHeader.trim();
158
+ const authRaw = req.headers.authorization;
159
+ const auth = Array.isArray(authRaw) ? authRaw[0] : authRaw;
160
+ if (auth && auth.length > 7 && auth.slice(0, 7).toLowerCase() === "bearer ") {
161
+ const token = auth.slice(7).trim();
162
+ return token || undefined;
163
+ }
164
+ return undefined;
165
+ }
150
166
  function tokensEqual(presented, expected) {
151
167
  const a = Buffer.from(presented);
152
168
  const b = Buffer.from(expected);
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/mcp/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/mcp/http.ts"],"names":[],"mappings":"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"}
package/manifest.json ADDED
@@ -0,0 +1,87 @@
1
+ {
2
+ "manifest_version": "0.3",
3
+ "name": "shield-kya",
4
+ "display_name": "Shield KYA",
5
+ "version": "0.1.14",
6
+ "description": "Know Your Agent MCP gate: ALLOW / DENY / REQUIRE_APPROVE. Sole PEP is Shield.",
7
+ "long_description": "Local Claude Desktop extension that runs `npx @shield-agent/kya serve-mcp --stdio` and talks to your Shield control plane (local or https://shield-agent.com). Tools evaluate policy, ingest session risk, and open Hold tickets. They never execute irreversible side effects.",
8
+ "author": {
9
+ "name": "Shield Agent",
10
+ "email": "it@shield-agent.com",
11
+ "url": "https://shield-agent.com"
12
+ },
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "https://github.com/The-Pixel-Boys/shield-kya.git"
16
+ },
17
+ "homepage": "https://shield-agent.com/install",
18
+ "documentation": "https://shield-agent.com/docs/kya/install",
19
+ "support": "https://github.com/The-Pixel-Boys/shield-kya/issues",
20
+ "icon": "assets/logo.svg",
21
+ "server": {
22
+ "type": "node",
23
+ "entry_point": "claude/run-stdio.mjs",
24
+ "mcp_config": {
25
+ "command": "npx",
26
+ "args": ["-y", "@shield-agent/kya@0.1.14", "serve-mcp", "--stdio"],
27
+ "env": {
28
+ "KYA_BASE_URL": "${user_config.base_url}",
29
+ "KYA_API_KEY": "${user_config.api_key}",
30
+ "KYA_HOST": "${user_config.host}",
31
+ "KYA_AGENT_ID": "${user_config.agent_id}"
32
+ }
33
+ }
34
+ },
35
+ "tools": [
36
+ {
37
+ "name": "kya.policy_evaluate",
38
+ "description": "Evaluate ALLOW | DENY | REQUIRE_APPROVE at the tool boundary"
39
+ },
40
+ {
41
+ "name": "kya.session_ingest",
42
+ "description": "Raise-only session / risk observation"
43
+ },
44
+ {
45
+ "name": "kya.request_approval",
46
+ "description": "Open a human Hold ticket. Does not execute the side effect"
47
+ }
48
+ ],
49
+ "tools_generated": false,
50
+ "keywords": ["kya", "know-your-agent", "policy", "mcp", "approval", "claude"],
51
+ "license": "MIT",
52
+ "compatibility": {
53
+ "platforms": ["darwin", "win32", "linux"],
54
+ "runtimes": {
55
+ "node": ">=20.0.0"
56
+ }
57
+ },
58
+ "user_config": {
59
+ "base_url": {
60
+ "type": "string",
61
+ "title": "Control plane URL",
62
+ "description": "Shield KYA origin (https://shield-agent.com or http://127.0.0.1:8090)",
63
+ "required": true,
64
+ "default": "https://shield-agent.com"
65
+ },
66
+ "api_key": {
67
+ "type": "string",
68
+ "title": "API key",
69
+ "description": "Machine API key (sk_live_…). Stored in the OS keychain.",
70
+ "sensitive": true,
71
+ "required": true
72
+ },
73
+ "host": {
74
+ "type": "string",
75
+ "title": "Host plane",
76
+ "description": "ide = authoring. runtime = production work.",
77
+ "required": false,
78
+ "default": "ide"
79
+ },
80
+ "agent_id": {
81
+ "type": "string",
82
+ "title": "Agent id",
83
+ "description": "Registered agent principal id (optional until first register).",
84
+ "required": false
85
+ }
86
+ }
87
+ }
package/mcp.json ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "mcpServers": {
3
+ "shield-kya": {
4
+ "description": "Know Your Agent local MCP gate: wrap-before-write, named-agent registry, Hold/Clear.",
5
+ "command": "npx",
6
+ "args": ["-y", "@shield-agent/kya@0.1.14", "serve-mcp", "--stdio"],
7
+ "env": {
8
+ "KYA_BASE_URL": "${KYA_BASE_URL}",
9
+ "KYA_API_KEY": "${KYA_API_KEY}",
10
+ "KYA_HOST": "${KYA_HOST}",
11
+ "KYA_AGENT_ID": "${KYA_AGENT_ID}"
12
+ }
13
+ }
14
+ }
15
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shield-agent/kya",
3
- "version": "0.1.13",
3
+ "version": "0.1.14",
4
4
  "description": "Know Your Agent light CLI + local MCP gate (provider-agnostic, zero vertical packs required).",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -23,7 +23,15 @@
23
23
  "README.md",
24
24
  "server.json",
25
25
  "LICENSE",
26
- "LIMITATIONS.md"
26
+ "LIMITATIONS.md",
27
+ "mcp.json",
28
+ "manifest.json",
29
+ ".mcp.json",
30
+ "claude",
31
+ "assets",
32
+ "skills",
33
+ "rules",
34
+ ".cursor-plugin"
27
35
  ],
28
36
  "homepage": "https://shield-agent.com/install",
29
37
  "repository": {
@@ -0,0 +1,10 @@
1
+ ---
2
+ description: Shield KYA is the sole PEP. Dual-plane host labels. Offline eval is a sample fixture.
3
+ alwaysApply: false
4
+ ---
5
+
6
+ - Before irreversible tool side effects, evaluate through Shield KYA (`ALLOW` | `DENY` | `REQUIRE_APPROVE`).
7
+ - Missing `APPROVED` means the side effect does not run.
8
+ - Label `host=ide` (authoring) or `host=runtime` (production). Same identity and trail on both.
9
+ - Offline `eval-tool --offline` / `dash --once --offline` are sample fixtures, not production enforcement.
10
+ - Scanners and ORR reports are evidence only. They never ALLOW.
package/server.json CHANGED
@@ -7,12 +7,12 @@
7
7
  "url": "https://github.com/The-Pixel-Boys/shield-kya",
8
8
  "source": "github"
9
9
  },
10
- "version": "0.1.13",
10
+ "version": "0.1.14",
11
11
  "packages": [
12
12
  {
13
13
  "registryType": "npm",
14
14
  "identifier": "@shield-agent/kya",
15
- "version": "0.1.13",
15
+ "version": "0.1.14",
16
16
  "transport": {
17
17
  "type": "stdio"
18
18
  },
@@ -0,0 +1,40 @@
1
+ ---
2
+ name: kya-wrap
3
+ description: Wrap an agent tool through Shield KYA evaluate before any irreversible side effect. Use when adding tools, MCP calls, or writes that need ALLOW | DENY | REQUIRE_APPROVE.
4
+ ---
5
+
6
+ # Wrap a tool through Shield KYA
7
+
8
+ This plugin is a **thin MCP gate**. It does not decide policy. Shield KYA
9
+ evaluate on the control plane is the **sole PEP**.
10
+
11
+ ## Verdicts
12
+
13
+ | Verdict | Meaning |
14
+ |---------|---------|
15
+ | `ALLOW` | Side effect may proceed |
16
+ | `DENY` | Do not execute. Never retry around the gate |
17
+ | `REQUIRE_APPROVE` | Wait for a human `APPROVED`. Missing approval ⇒ no irreversible effect |
18
+
19
+ Risk scores may only **raise** severity. They never auto-ALLOW.
20
+
21
+ ## Dual plane
22
+
23
+ - `host=ide`: authoring / dry-run
24
+ - `host=runtime`: production work
25
+
26
+ Same agent id, policy, approval, and trail on both. Label the host. Do not invent a second enforcement path in the editor.
27
+
28
+ ## How to wrap
29
+
30
+ 1. Register the agent principal (`register-agent` or console). Creating an agent is itself a tool (`kya.agent.register`). It is not a free write.
31
+ 2. Give the tool a stable `toolId`. No marketplace adapter required.
32
+ 3. Call evaluate (MCP `evaluate` / `eval-tool`) **before** the side effect.
33
+ 4. If `REQUIRE_APPROVE`, request approval and wait. Do not execute on a pending ticket.
34
+ 5. Offline `--offline` is a **sample fixture**. Do not treat it as production PEP.
35
+
36
+ ## Do not
37
+
38
+ - Bypass evaluate because the IDE "already reviewed" the change
39
+ - Treat scanners, ORR, or this skill as a second PEP
40
+ - Position Shield as a chargeback, dispute, or payment-recovery product