sandboxbox 3.0.67 → 3.0.69
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 +7 -0
- package/package.json +1 -1
- package/utils/commands/claude.js +2 -1
- package/utils/sandbox.js +17 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,12 +6,19 @@
|
|
|
6
6
|
- `.claude-sandbox/` directory structure for bundled Claude settings and plugins
|
|
7
7
|
- Automatic plugin path rewriting during sandbox creation to point to sandbox locations
|
|
8
8
|
- Bundled glootie-cc MCP plugin in `.claude-sandbox/plugins/marketplaces/`
|
|
9
|
+
- MCP servers configuration in plugin.json and settings.json (glootie, playwright, vexify)
|
|
10
|
+
- Automatic MCP server path rewriting to use absolute sandbox directory paths
|
|
9
11
|
|
|
10
12
|
### Changed
|
|
11
13
|
- Sandbox creation now uses `.claude-sandbox/` configuration instead of `sandboxbox-settings.json`
|
|
12
14
|
- Plugin paths in `config.json` are automatically updated to sandbox-relative paths
|
|
15
|
+
- MCP server paths are rewritten from ${HOME} placeholders to actual sandbox paths
|
|
13
16
|
- Simplified Claude settings management with repository-based configuration
|
|
14
17
|
|
|
18
|
+
### Known Issues
|
|
19
|
+
- MCP tools not loading in Claude Code CLI - configuration is correct but servers not starting
|
|
20
|
+
- Requires investigation into Claude Code CLI MCP server loading mechanism
|
|
21
|
+
|
|
15
22
|
## [3.0.64] - 2025-10-27
|
|
16
23
|
|
|
17
24
|
### Fixed
|
package/package.json
CHANGED
package/utils/commands/claude.js
CHANGED
|
@@ -271,7 +271,8 @@ export async function claudeCommand(projectDir, prompt, flags = {}) {
|
|
|
271
271
|
const claudeArgs = [
|
|
272
272
|
'--verbose',
|
|
273
273
|
'--output-format', 'stream-json',
|
|
274
|
-
'--dangerously-skip-permissions'
|
|
274
|
+
'--dangerously-skip-permissions',
|
|
275
|
+
'--mcp-config', join(sandboxDir, '.claude', 'settings.json')
|
|
275
276
|
];
|
|
276
277
|
|
|
277
278
|
return new Promise((resolve, reject) => {
|
package/utils/sandbox.js
CHANGED
|
@@ -231,7 +231,23 @@ node_modules/
|
|
|
231
231
|
// Copy settings.json
|
|
232
232
|
const claudeSandboxSettingsPath = join(claudeSandboxDir, 'settings.json');
|
|
233
233
|
if (existsSync(claudeSandboxSettingsPath)) {
|
|
234
|
-
|
|
234
|
+
const sandboxSettingsPath = join(sandboxClaudeDir, 'settings.json');
|
|
235
|
+
cpSync(claudeSandboxSettingsPath, sandboxSettingsPath);
|
|
236
|
+
|
|
237
|
+
// Update MCP server paths to use actual sandbox directory
|
|
238
|
+
const settings = JSON.parse(readFileSync(sandboxSettingsPath, 'utf8'));
|
|
239
|
+
if (settings.mcpServers) {
|
|
240
|
+
Object.keys(settings.mcpServers).forEach(serverName => {
|
|
241
|
+
const server = settings.mcpServers[serverName];
|
|
242
|
+
if (server.args) {
|
|
243
|
+
server.args = server.args.map(arg =>
|
|
244
|
+
arg.replace('${HOME}', sandboxDir)
|
|
245
|
+
);
|
|
246
|
+
}
|
|
247
|
+
});
|
|
248
|
+
writeFileSync(sandboxSettingsPath, JSON.stringify(settings, null, 2));
|
|
249
|
+
}
|
|
250
|
+
|
|
235
251
|
if (VERBOSE_OUTPUT) {
|
|
236
252
|
console.log('✅ Copied .claude-sandbox settings to sandbox');
|
|
237
253
|
}
|