SolidCraft-MCP 0.1.0 aufnehmen, damit der Skill mit eigenem Installer wie die anderen Crafts ausgeliefert werden kann.

This commit is contained in:
Dominic Gundel committed 2026-10-20 00:26:49 +02:00
1 parent ad0ea86adc
commit f3e49b5d37
21 files changed
+629 -22

No files matched your search

+22 -5
View File
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
# Checks that the ArtCraft-Launcher CLI is installed and refreshes upstream.json + LICENSES.
# Checks that the skill CLI is installed and refreshes upstream.json + LICENSES.
# Does NOT copy or ship the EXE into the extension package.
# Usage: scripts/fetch-cli.sh <skill-name> [cli-path]
set -euo pipefail
@@ -18,6 +18,7 @@ if [[ ! -f "$ext/manifest.json" ]]; then
exit 1
fi
source_name='ArtCraft-Launcher'
case "$name" in
wordcraft-mcp)
exe_name=wordcraft-cli.exe
@@ -49,6 +50,13 @@ case "$name" in
repo='https://github.com/storytold/vectorcraft'
repo_slug='storytold/vectorcraft'
;;
solidcraft-mcp)
exe_name=solidcraft-cli.exe
default='C:/Program Files/SolidCraft/solidcraft-cli.exe'
repo='https://github.com/tangency-labs/solidcraft'
repo_slug='tangency-labs/solidcraft'
source_name='SolidCraft-Installer'
;;
*)
echo "Kein CLI-Mapping fuer Skill '$name'." >&2
exit 1
@@ -58,16 +66,25 @@ esac
src="${cli_path:-$default}"
if [[ ! -f "$src" ]]; then
echo "CLI fehlt: $src" >&2
echo "Bitte die App ueber den ArtCraft-Launcher installieren, oder Pfad als Argument angeben." >&2
if [[ "$source_name" == ArtCraft-Launcher ]]; then
echo "Bitte die App ueber den ArtCraft-Launcher installieren, oder Pfad als Argument angeben." >&2
else
echo "Bitte die App ueber den eigenen Installer installieren, oder Pfad als Argument angeben." >&2
fi
exit 1
fi
mkdir -p "$ext/server"
rm -f "$ext/server"/*.exe
if [[ ! -f "$ext/server/README.txt" ]]; then
if [[ "$source_name" == ArtCraft-Launcher ]]; then
install_line='Installiere die App ueber den ArtCraft-Launcher.'
else
install_line='Installiere die App ueber den eigenen Installer.'
fi
printf '%s\n' \
'Diese Erweiterung enthaelt keine CLI.' \
'Installiere die App ueber den ArtCraft-Launcher.' \
"$install_line" \
"Erwarteter Pfad: $src" > "$ext/server/README.txt"
fi
@@ -103,7 +120,7 @@ fi
python3 -c "
import json, sys
print(json.dumps({
'source': 'ArtCraft-Launcher',
'source': sys.argv[6],
'path': sys.argv[1],
'exe': sys.argv[2],
'version': sys.argv[3],
@@ -112,7 +129,7 @@ print(json.dumps({
'tag': 'v' + sys.argv[3],
'bundled': False,
}, separators=(',', ':')))
" "$src" "$exe_name" "$ver" "$hash" "$repo" > "$ext/upstream.json"
" "$src" "$exe_name" "$ver" "$hash" "$repo" "$source_name" > "$ext/upstream.json"
printf '\n' >> "$ext/upstream.json" || true
mkdir -p "$ext/LICENSES"