@cremini/skillpack 1.0.6 → 1.0.8

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
@@ -84,7 +84,7 @@ skillpack/
84
84
 
85
85
  ```bash
86
86
  # macOS / Linux
87
- chmod +x start.sh && ./start.sh
87
+ ./start.sh
88
88
 
89
89
  # Windows
90
90
  start.bat
package/dist/cli.js CHANGED
@@ -317,6 +317,13 @@ import fs3 from "fs";
317
317
  import path3 from "path";
318
318
  import { fileURLToPath } from "url";
319
319
  var __dirname = path3.dirname(fileURLToPath(import.meta.url));
320
+ var EXECUTABLE_RUNTIME_FILES = /* @__PURE__ */ new Set(["start.sh", "start.bat"]);
321
+ function isExecutableRuntimeFile(relativePath) {
322
+ return EXECUTABLE_RUNTIME_FILES.has(relativePath);
323
+ }
324
+ function withExecuteBits(mode) {
325
+ return mode | 73;
326
+ }
320
327
  function getRuntimeDir() {
321
328
  const projectRoot = path3.resolve(__dirname, "..");
322
329
  return path3.join(projectRoot, "runtime");
@@ -374,6 +381,16 @@ function copyRuntimeTemplate(runtimeDir, workDir) {
374
381
  fs3.chmodSync(destinationPath, entry.stats.mode);
375
382
  }
376
383
  }
384
+ function ensureRuntimeLaunchersExecutable(workDir) {
385
+ for (const relativePath of EXECUTABLE_RUNTIME_FILES) {
386
+ const filePath = path3.join(workDir, relativePath);
387
+ if (!fs3.existsSync(filePath)) {
388
+ continue;
389
+ }
390
+ const currentMode = fs3.statSync(filePath).mode;
391
+ fs3.chmodSync(filePath, withExecuteBits(currentMode));
392
+ }
393
+ }
377
394
  function addRuntimeFiles(archive, runtimeDir, prefix) {
378
395
  const entries = collectRuntimeTemplateEntries(runtimeDir);
379
396
  for (const entry of entries) {
@@ -387,7 +404,7 @@ function addRuntimeFiles(archive, runtimeDir, prefix) {
387
404
  }
388
405
  archive.file(entry.absolutePath, {
389
406
  name: archivePath,
390
- mode: entry.stats.mode
407
+ mode: isExecutableRuntimeFile(entry.relativePath) ? withExecuteBits(entry.stats.mode) : entry.stats.mode
391
408
  });
392
409
  }
393
410
  }
@@ -610,6 +627,7 @@ async function initCommand(directory, options) {
610
627
  installConfiguredSkills(workDir, config);
611
628
  refreshDescriptionsAndSave(workDir, config);
612
629
  copyRuntimeTemplate(getRuntimeDir(), workDir);
630
+ ensureRuntimeLaunchersExecutable(workDir);
613
631
  if (options.bundle) {
614
632
  await bundle(workDir);
615
633
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cremini/skillpack",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "description": "Turn Skills into a Standalone App with UI",
5
5
  "type": "module",
6
6
  "repository": {
@@ -16,14 +16,7 @@
16
16
  },
17
17
  "files": [
18
18
  "dist",
19
- "runtime/README.md",
20
- "runtime/scripts",
21
- "runtime/server/chat-proxy.js",
22
- "runtime/server/index.js",
23
- "runtime/server/package.json",
24
- "runtime/server/routes.js",
25
- "runtime/server/skills-loader.js",
26
- "runtime/web",
19
+ "runtime",
27
20
  "README.md",
28
21
  "LICENSE"
29
22
  ],
@@ -61,4 +54,4 @@
61
54
  "tsup": "^8.5.1",
62
55
  "typescript": "^5.9.3"
63
56
  }
64
- }
57
+ }