@duckmind/dm-darwin-x64 0.66.6 → 0.66.7

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/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
  No UI overhead. Just plan, run, and get things done.
5
5
  </p>
6
6
 
7
- ## What's new in 0.66.6
7
+ ## What's new in 0.66.7
8
8
 
9
- Remote control and monitoring of DM through a web terminal, plus multi-agent DM collaboration. Run `/tty start` inside DM, or start DM with `dm --host 0.0.0.0`.
9
+ What's new: Web control, monitoring, and multi-agent DM. Use `/tty start` or `dm --host 0.0.0.0`.
10
10
 
@@ -1988,8 +1988,8 @@
1988
1988
  "tools/symbol-search.js"
1989
1989
  ],
1990
1990
  "file_count": 1042,
1991
- "before_bytes": 19610078,
1992
- "after_bytes": 9249384,
1991
+ "before_bytes": 19610076,
1992
+ "after_bytes": 9249382,
1993
1993
  "runtime_specifier_rewrites": 12,
1994
1994
  "runtime_filename_rewrites": 502,
1995
1995
  "declaration_files_removed": 3
@@ -2189,8 +2189,8 @@
2189
2189
  "utils.js"
2190
2190
  ],
2191
2191
  "file_count": 141,
2192
- "before_bytes": 2449681,
2193
- "after_bytes": 2069292,
2192
+ "before_bytes": 2450535,
2193
+ "after_bytes": 2070087,
2194
2194
  "runtime_specifier_rewrites": 57,
2195
2195
  "runtime_filename_rewrites": 88,
2196
2196
  "declaration_files_removed": 48
@@ -2307,8 +2307,8 @@
2307
2307
  "web/client.js"
2308
2308
  ],
2309
2309
  "file_count": 7,
2310
- "before_bytes": 86031,
2311
- "after_bytes": 83201,
2310
+ "before_bytes": 86145,
2311
+ "after_bytes": 83320,
2312
2312
  "runtime_specifier_rewrites": 3,
2313
2313
  "runtime_filename_rewrites": 6,
2314
2314
  "declaration_files_removed": 0
@@ -135,7 +135,7 @@ function notifyStartupWarmSkip(args) {
135
135
  reason: `${reason}; ${bound.name}=${bound.value}`,
136
136
  metadata: { reason, [bound.name]: bound.value }
137
137
  });
138
- args.notify(`\uD83D\uDCE6 Project-size limits disabled background warm scans (heavy scans, TODO scan, LSP pre-warm) (${bound.hint}).`, "warning");
138
+ args.notify(`\uD83D\uDCE6 Background warm scans skipped for this project size (heavy scans, TODO scan, LSP pre-warm) (${bound.hint}).`, "info");
139
139
  }
140
140
  async function demandBootstrapDeps(deps, reason) {
141
141
  const clients = await deps.bootstrap.request(reason);
@@ -151,6 +151,27 @@ function legacyMcpConfigHasContent(filePath) {
151
151
  return false;
152
152
  }
153
153
  }
154
+ function migrateLegacyMcpConfig(source, target) {
155
+ if (!existsSync(source) || existsSync(target))
156
+ return;
157
+ try {
158
+ const sourceStat = lstatSync(source);
159
+ if (!sourceStat.isFile())
160
+ return;
161
+ const raw = readFileSync(source, "utf-8");
162
+ const parsed = parseJsonWithComments(raw);
163
+ if (!isRecord(parsed))
164
+ return;
165
+ mkdirSync(dirname(target), { recursive: true, mode: 448 });
166
+ const temporary = `${target}.tmp-${process.pid}-${Date.now()}`;
167
+ writeFileSync(temporary, raw, { encoding: "utf-8", mode: sourceStat.mode & 511 });
168
+ renameSync(temporary, target);
169
+ rmSync(source);
170
+ return `Migrated ${source} to ${target}.`;
171
+ } catch {
172
+ return;
173
+ }
174
+ }
154
175
  export function getLegacyMcpMigrationNotices(cwd = process.cwd(), overridePath) {
155
176
  if (piMcpConfigEnabled) {
156
177
  return getConfigSources(overridePath, cwd).flatMap((source) => {
@@ -179,6 +200,9 @@ export function getLegacyMcpMigrationNotices(cwd = process.cwd(), overridePath)
179
200
  return candidates.flatMap(([source, target]) => {
180
201
  if (resolve(source) === explicitPath || !legacyMcpConfigHasContent(source))
181
202
  return [];
203
+ const migrated = migrateLegacyMcpConfig(source, target);
204
+ if (migrated)
205
+ return [migrated];
182
206
  const fix = existsSync(target) ? `Merge ${source} into ${target}, then remove ${source}.` : `Move it with: mv ${JSON.stringify(source)} ${JSON.stringify(target)}`;
183
207
  return [`dm-mcp-adapter no longer reads ${source}. ${fix}`];
184
208
  });
@@ -638,6 +638,8 @@ terminal.attachCustomKeyEventHandler((event) => {
638
638
  return false;
639
639
  if (event.type !== "keydown" || !ctrl && !alt)
640
640
  return true;
641
+ if ((event.metaKey || event.ctrlKey) && event.key.toLowerCase() === "c" && terminal.hasSelection())
642
+ return true;
641
643
  if (event.metaKey || event.ctrlKey && event.shiftKey && ["c", "v"].includes(event.key.toLowerCase()))
642
644
  return true;
643
645
  event.preventDefault();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duckmind/dm-darwin-x64",
3
- "version": "0.66.6",
3
+ "version": "0.66.7",
4
4
  "description": "DuckMind (dm) binary payload for darwin x64",
5
5
  "license": "MIT",
6
6
  "os": [