sticky-note-cli 3.1.28 → 3.1.29

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 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,9 @@ function cmdUpdate() {
1460
1462
  mkdirSafe(path.join(envDir, "agents"));
1461
1463
  mkdirSafe(path.join(envDir, "commands"));
1462
1464
  if (!fs.existsSync(envManifestDest)) {
1463
- const detectedServers = Array.from(detectMcpServers().values());
1465
+ // Skip permission-detected entries — they are not real server configs and would
1466
+ // be synced back into .mcp.json by session-start.js, breaking Claude Code.
1467
+ const detectedServers = Array.from(detectMcpServers().values()).filter((s) => s.type !== "permission-detected");
1464
1468
  const manifestData = { version: "1", mcp_servers: {}, permissions: [], env_vars: {} };
1465
1469
  for (const server of detectedServers) {
1466
1470
  const entry = { type: server.type || "stdio", description: server.name, required: false };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sticky-note-cli",
3
- "version": "3.1.28",
3
+ "version": "3.1.29",
4
4
  "description": "Human-to-human handoff for AI coding assistants. Git-backed shared memory for Claude Code and Copilot CLI.",
5
5
  "license": "MIT",
6
6
  "bin": {
@@ -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;