slidemind 0.3.3 → 0.3.4

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "slidemind",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "Connect Claude Code to the slidemind PowerPoint add-in — build and edit native, on-brand PowerPoint decks against the active corporate design, from the terminal.",
5
5
  "author": {
6
6
  "name": "statworx",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "slidemind",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "Connect Codex to the slidemind PowerPoint add-in — build and edit native, on-brand PowerPoint decks against the active corporate design. Requires the slidemind CLI (npm install -g slidemind); the skills explain the install when it is missing.",
5
5
  "author": {
6
6
  "name": "statworx",
package/bin/slidemind.mjs CHANGED
@@ -1113,6 +1113,33 @@ async function cmdSearch(rest) {
1113
1113
  // subtype no longer defaulted to "image"; when the subtype is unknown we omit
1114
1114
  // it and let the add-in resolve the caller's groups itself.
1115
1115
  let subtype = slideIntent ? "slide" : null;
1116
+ // `--engine Icons` — a display name straight off `ls engines` — would reach
1117
+ // the backend verbatim and 404 as "Engine not found". Humans type names,
1118
+ // agents paste ids; when the value cannot be an id (spaces, non-hex), look it
1119
+ // up in the live catalog by label. Best-effort on purpose: no unique match
1120
+ // passes the value through so the existing unknown-engine hint still fires.
1121
+ if (
1122
+ engineId &&
1123
+ !bundle.isSearchScopeId(engineId) &&
1124
+ !/^[0-9a-f-]{8,}$/i.test(engineId)
1125
+ ) {
1126
+ const live = await client.listEngines({ backendURL }).catch(() => null);
1127
+ const wanted = engineId.toLowerCase();
1128
+ const ids = new Set(
1129
+ (live?.engines ?? [])
1130
+ .filter((e) => String(e.label ?? "").toLowerCase() === wanted)
1131
+ .map((e) => e.id),
1132
+ );
1133
+ if (ids.size === 1) {
1134
+ const [id] = ids;
1135
+ process.stderr.write(`engine '${engineId}' resolved to ${id}\n`);
1136
+ engineId = id;
1137
+ } else if (ids.size > 1) {
1138
+ fail(
1139
+ `--engine '${engineId}' names ${ids.size} different engines across your connected environments — pass the id from 'slidemind ls engines', or scope with --backend.`,
1140
+ );
1141
+ }
1142
+ }
1116
1143
  if (!engineId) {
1117
1144
  if (slideIntent) {
1118
1145
  // Slide search with no engine named: search the corpus UNFILTERED rather
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "slidemind",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "Connect Claude Code, Codex & opencode to the slidemind PowerPoint add-in — let your coding agent build and edit native, on-brand PowerPoint decks against your active corporate design, from the terminal.",
5
5
  "type": "module",
6
6
  "bin": {