sticky-note-cli 3.1.28 → 3.1.30
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/bin/cli.js +19 -3
- package/package.json +1 -1
- package/sticky-server/.wrangler/state/v3/observability/miniflare-wobs-trace-store/a590acd76969f996ec6e4b599c3c09f58c283a76f2d61392b5d3046caf557602.sqlite-shm +0 -0
- package/sticky-server/.wrangler/state/v3/observability/miniflare-wobs-trace-store/a590acd76969f996ec6e4b599c3c09f58c283a76f2d61392b5d3046caf557602.sqlite-wal +0 -0
- package/templates/hooks/session-start.js +1 -0
package/bin/cli.js
CHANGED
|
@@ -1120,9 +1120,11 @@ async function cmdInit() {
|
|
|
1120
1120
|
mkdirSafe(path.join(envDir, "agents"));
|
|
1121
1121
|
mkdirSafe(path.join(envDir, "commands"));
|
|
1122
1122
|
if (!fs.existsSync(envManifestDest)) {
|
|
1123
|
-
// Build manifest from detected MCP servers and skills
|
|
1123
|
+
// Build manifest from detected MCP servers and skills.
|
|
1124
|
+
// Skip permission-detected entries — they are not real server configs and would
|
|
1125
|
+
// be synced back into .mcp.json by session-start.js, breaking Claude Code.
|
|
1124
1126
|
const manifestData = { version: "1", mcp_servers: {}, permissions: [], env_vars: {} };
|
|
1125
|
-
for (const server of mcpServers) {
|
|
1127
|
+
for (const server of mcpServers.filter((s) => s.type !== "permission-detected")) {
|
|
1126
1128
|
const entry = { type: server.type || "stdio", description: server.name, required: false };
|
|
1127
1129
|
if (server.command) entry.command = server.command;
|
|
1128
1130
|
if (server.args) entry.args = server.args;
|
|
@@ -1460,7 +1462,8 @@ function cmdUpdate() {
|
|
|
1460
1462
|
mkdirSafe(path.join(envDir, "agents"));
|
|
1461
1463
|
mkdirSafe(path.join(envDir, "commands"));
|
|
1462
1464
|
if (!fs.existsSync(envManifestDest)) {
|
|
1463
|
-
|
|
1465
|
+
// Create manifest from scratch, skipping permission-detected entries.
|
|
1466
|
+
const detectedServers = Array.from(detectMcpServers().values()).filter((s) => s.type !== "permission-detected");
|
|
1464
1467
|
const manifestData = { version: "1", mcp_servers: {}, permissions: [], env_vars: {} };
|
|
1465
1468
|
for (const server of detectedServers) {
|
|
1466
1469
|
const entry = { type: server.type || "stdio", description: server.name, required: false };
|
|
@@ -1491,6 +1494,19 @@ function cmdUpdate() {
|
|
|
1491
1494
|
}
|
|
1492
1495
|
fs.writeFileSync(envManifestDest, JSON.stringify(manifestData, null, 2) + "\n");
|
|
1493
1496
|
print(` [OK] Created environment/ in ${envDir} (${detectedServers.length} MCP server(s) detected)`);
|
|
1497
|
+
} else {
|
|
1498
|
+
// Manifest already exists — strip any permission-detected entries that may have
|
|
1499
|
+
// been written by an older version of sticky-note. These are not real server
|
|
1500
|
+
// configs and cause get_environment_status to report false "missing" servers.
|
|
1501
|
+
const manifest = readJsonSafe(envManifestDest, {});
|
|
1502
|
+
const servers = manifest.mcp_servers || {};
|
|
1503
|
+
const stale = Object.keys(servers).filter((k) => servers[k].type === "permission-detected");
|
|
1504
|
+
if (stale.length > 0) {
|
|
1505
|
+
for (const k of stale) delete servers[k];
|
|
1506
|
+
manifest.mcp_servers = servers;
|
|
1507
|
+
fs.writeFileSync(envManifestDest, JSON.stringify(manifest, null, 2) + "\n");
|
|
1508
|
+
print(` [OK] environment/manifest.json: removed ${stale.length} stale permission-detected entry(s)`);
|
|
1509
|
+
}
|
|
1494
1510
|
}
|
|
1495
1511
|
|
|
1496
1512
|
print(`\n ✨ Scripts updated to v${VERSION}`);
|
package/package.json
CHANGED
|
Binary file
|
|
Binary file
|
|
@@ -745,6 +745,7 @@ function ensureEnvironmentProvisioned() {
|
|
|
745
745
|
let mcpChanged = false;
|
|
746
746
|
for (const [name, serverDef] of Object.entries(mcpServers)) {
|
|
747
747
|
if (mcpConfig.mcpServers[name]) continue; // already present
|
|
748
|
+
if (serverDef.type === "permission-detected") continue; // not a real server config
|
|
748
749
|
if (hasEnvPlaceholders(serverDef)) {
|
|
749
750
|
if (debug) process.stderr.write(`[sticky-note] skipping MCP server "${name}" (has placeholders)\n`);
|
|
750
751
|
continue;
|