multicorn-shield 0.13.0 → 1.0.0
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/CHANGELOG.md +21 -13
- package/README.md +5 -5
- package/dist/multicorn-proxy.js +302 -133
- package/dist/multicorn-shield.js +3091 -31
- package/dist/openclaw-plugin/multicorn-shield.js +2 -2
- package/dist/proxy.cjs +1 -1
- package/dist/proxy.js +1 -1
- package/dist/shield-extension.js +1 -1
- package/package.json +3 -3
- package/plugins/windsurf/README.md +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -5,7 +5,15 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
-
## [
|
|
8
|
+
## [1.0.0] - 2026-05-02
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- CLI binary renamed from `multicorn-proxy` to `multicorn-shield`. The `multicorn-proxy` command still works but prints a deprecation warning. All user-facing documentation and dashboard references use `npx multicorn-shield`.
|
|
13
|
+
|
|
14
|
+
### Deprecated
|
|
15
|
+
|
|
16
|
+
- `multicorn-proxy` binary alias. Use `multicorn-shield` instead.
|
|
9
17
|
|
|
10
18
|
### Added
|
|
11
19
|
|
|
@@ -72,13 +80,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
72
80
|
### Added
|
|
73
81
|
|
|
74
82
|
- Windsurf native integration via Cascade Hooks (`pre_*` / `post_*` for reads, writes, terminal, and MCP). Hook scripts install to `~/.multicorn/windsurf-hooks/` and add entries to `~/.codeium/windsurf/hooks.json`.
|
|
75
|
-
- `npx multicorn-
|
|
83
|
+
- `npx multicorn-shield init`: when you pick Windsurf, choose Native plugin (recommended) or Hosted proxy. Native path registers Shield hooks and reminds you to restart Windsurf.
|
|
76
84
|
|
|
77
85
|
## [0.8.0] - 2026-04-12
|
|
78
86
|
|
|
79
87
|
### Added
|
|
80
88
|
|
|
81
|
-
- Windsurf IDE as a supported platform in `npx multicorn-
|
|
89
|
+
- Windsurf IDE as a supported platform in `npx multicorn-shield init`. Generates a proxy config and prints an `~/.codeium/windsurf/mcp_config.json` snippet using the Windsurf `mcpServers` / `serverUrl` schema.
|
|
82
90
|
- Auto-detection of existing Windsurf proxy entries (shows "● detected locally" in the platform selection list).
|
|
83
91
|
|
|
84
92
|
### Changed
|
|
@@ -89,23 +97,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
89
97
|
|
|
90
98
|
### Added
|
|
91
99
|
|
|
92
|
-
- New `--api-key <key>` CLI flag on `multicorn-
|
|
100
|
+
- New `--api-key <key>` CLI flag on `multicorn-shield --wrap`. Lets users run the proxy without first creating a config file.
|
|
93
101
|
- New `MULTICORN_API_KEY` environment variable support. Resolves with priority `--api-key` flag > `MULTICORN_API_KEY` env var > `~/.multicorn/config.json`.
|
|
94
|
-
- New "Local MCP / Other" option in the `multicorn-
|
|
102
|
+
- New "Local MCP / Other" option in the `multicorn-shield init` wizard. Skips the platform-specific setup steps and writes a minimal config suitable for wrapping any local MCP server with `--wrap`.
|
|
95
103
|
- SDK constructor now validates the API key format and rejects invalid keys (empty, wrong prefix, too short, or the literal placeholder `mcs_your_key_here`) with a clear error pointing at the settings page.
|
|
96
104
|
|
|
97
105
|
### Changed
|
|
98
106
|
|
|
99
|
-
- `multicorn-
|
|
100
|
-
- Error message when no API key is configured now mentions all three sources: the `--api-key` flag, the `MULTICORN_API_KEY` environment variable, and the `npx multicorn-
|
|
107
|
+
- `multicorn-shield init` platform menu now labels detected platforms as "detected locally" instead of "connected", with a dimmed dot icon instead of a green checkmark. The previous label implied account-level connection state, but the underlying detection only checks for local config files.
|
|
108
|
+
- Error message when no API key is configured now mentions all three sources: the `--api-key` flag, the `MULTICORN_API_KEY` environment variable, and the `npx multicorn-shield init` config file path.
|
|
101
109
|
- All references to the API keys settings page now use the fragment URL `https://app.multicorn.ai/settings#api-keys` instead of the previous `/settings/api-keys` path which did not exist.
|
|
102
110
|
|
|
103
111
|
### Fixed
|
|
104
112
|
|
|
105
|
-
- `multicorn-
|
|
106
|
-
- `multicorn-
|
|
107
|
-
- `multicorn-
|
|
108
|
-
- `multicorn-
|
|
113
|
+
- `multicorn-shield --wrap` now fails immediately at startup with a clear error if the configured API key is rejected by the Multicorn service. Previously the proxy logged "Agent resolved" and "Proxy ready" with empty agent state and only blocked tool calls at runtime, leaving users confused about why their setup was not working.
|
|
114
|
+
- `multicorn-shield --wrap` now correctly accepts proxy flags (`--api-key`, `--base-url`, `--log-level`, `--dashboard-url`, `--agent-name`) when they appear between `--wrap` and the wrap command. Previously the parser bailed with "requires a command to run" because the early-exit guard rejected any flag-shaped token in that position before the stripping logic ran.
|
|
115
|
+
- `multicorn-shield init` exit summary no longer renders a trailing dash for the "Local MCP / Other" option (which has no agent name). The summary line now reads `✓ Local MCP / Other` instead of `✓ Local MCP / Other -`.
|
|
116
|
+
- `multicorn-shield init` no longer prints a misleading "Next steps" block referencing "Other MCP Agent" and `--agent-name` after the "Local MCP / Other" option. The "Try it" example printed inside the option 4 branch is sufficient guidance.
|
|
109
117
|
|
|
110
118
|
## [0.6.2] - 2026-04-09
|
|
111
119
|
|
|
@@ -140,7 +148,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
140
148
|
### Added
|
|
141
149
|
|
|
142
150
|
- Multi-agent config support: `~/.multicorn/config.json` now stores an `agents` array with per-platform entries instead of a single `agentName`
|
|
143
|
-
- New CLI commands: `npx multicorn-
|
|
151
|
+
- New CLI commands: `npx multicorn-shield agents` (list configured agents) and `npx multicorn-shield delete-agent <name>` (remove an agent)
|
|
144
152
|
- New exported helpers: `getAgentByPlatform()`, `getDefaultAgent()`, `collectAgentsFromConfig()`, `deleteAgentByName()`
|
|
145
153
|
- `AgentEntry` interface exported from the SDK
|
|
146
154
|
- Automatic migration: legacy single-agent configs are upgraded to the new format on first read and written back to disk
|
|
@@ -160,7 +168,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
160
168
|
|
|
161
169
|
### Fixed
|
|
162
170
|
|
|
163
|
-
- Running `npx multicorn-
|
|
171
|
+
- Running `npx multicorn-shield init` for a second platform no longer overwrites the first agent's config
|
|
164
172
|
- `delete-agent` clears `defaultAgent` when deleting the default agent instead of leaving a dangling reference
|
|
165
173
|
|
|
166
174
|
### Security
|
package/README.md
CHANGED
|
@@ -35,21 +35,21 @@ npm install -g multicorn-shield
|
|
|
35
35
|
**Step 2: Set up your API key**
|
|
36
36
|
|
|
37
37
|
```bash
|
|
38
|
-
npx multicorn-
|
|
38
|
+
npx multicorn-shield init
|
|
39
39
|
```
|
|
40
40
|
|
|
41
|
-
The init wizard supports multiple agents. Run it again to add agents on different platforms (OpenClaw, Claude Code, Cursor) without losing existing config. Use `npx multicorn-
|
|
41
|
+
The init wizard supports multiple agents. Run it again to add agents on different platforms (OpenClaw, Claude Code, Cursor) without losing existing config. Use `npx multicorn-shield agents` to see configured agents.
|
|
42
42
|
|
|
43
43
|
**Step 3: Wrap your MCP server**
|
|
44
44
|
|
|
45
45
|
```bash
|
|
46
|
-
npx multicorn-
|
|
46
|
+
npx multicorn-shield --wrap <your-mcp-server>
|
|
47
47
|
```
|
|
48
48
|
|
|
49
49
|
For example, to wrap the MCP filesystem server:
|
|
50
50
|
|
|
51
51
|
```bash
|
|
52
|
-
npx multicorn-
|
|
52
|
+
npx multicorn-shield --wrap npx @modelcontextprotocol/server-filesystem /tmp
|
|
53
53
|
```
|
|
54
54
|
|
|
55
55
|
That's it. Every tool call now goes through Shield's permission layer, and activity appears in your [Multicorn dashboard](https://app.multicorn.ai) in real time.
|
|
@@ -86,7 +86,7 @@ If you're running [OpenClaw](https://openclaw.ai), Shield integrates directly as
|
|
|
86
86
|
|
|
87
87
|
```bash
|
|
88
88
|
npm install -g multicorn-shield
|
|
89
|
-
npx multicorn-
|
|
89
|
+
npx multicorn-shield init
|
|
90
90
|
```
|
|
91
91
|
|
|
92
92
|
Enter your API key when prompted. This saves your key to `~/.multicorn/config.json` and configures the OpenClaw hook environment.
|