2.7 KiB
2.7 KiB
Scripts (Python-first, cross-platform)
This folder now uses Python as the default runtime for orchestration and diagnostics.
Preferred scripts
diag.py: tool probing and install-plan generation (dotnet,python,node,npm,cargo,tauri)build.py: normalized build actions used by SDT workflowsdev_shell.py: cross-platform shell bootstrap export/doctor helperdotnet-min.py: resilientdotnetwrapper with local cache envpip-min.py: resilientpipwrapper with local cache env and repo-local target defaultnpm-clean.py: removenode_modulescross-platformmigration-gate.py: build/test quality gatenuget-export-cache.py: archive.nugetcachenuget-import-cache.py: restore.nugetcache from archivepublish-app.py: build web or tauri app (cross-platform)publish-sidecar.py: publish sidecar .NET servicepublish-webgateway.py: publish gateway .NET service and optional web assetsrun-webgateway.py: run gateway in dev or published-output modepublish-output.py: orchestrate sidecar/web/gateway/desktop publish stepssync-output.py: sweep newest build artifacts intooutput/script_common.py: shared helpers (repo root resolution, env shaping, command runner)project.rootHintssupports glob markers (for example*.sln) and directory/file markers (.git,package.json)- Windows PATH token expansion (
%NVM_HOME%,%NVM_SYMLINK%, etc.) is applied during command resolution
Shell bootstrap wrappers
dev-shell.ps1: PowerShell wrapper overdev_shell.pydev-shell.sh: bash/zsh wrapper overdev_shell.pydev-shell.cmd: cmd wrapper overdev_shell.py
Legacy scripts
Existing .ps1 entrypoints are now compatibility wrappers that forward to Python scripts.
script-common.ps1 is legacy-only compatibility and not used by active SDT workflows.
Original PowerShell implementations are archived under scripts/legacy/ as *.legacy.ps1 for reference during transition.
Root Hint Semantics
project.rootHints is evaluated in this order:
- Exact marker exists at candidate root (file or directory)
- Root-level glob match (
glob) - Recursive glob match (
rglob)
Examples:
"*.sln"".git""package.json""src-tauri/tauri.conf.json"
Quick usage
python scripts/diag.py probe --tool dotnet --json
python scripts/dotnet-min.py build
python scripts/migration-gate.py
python scripts/nuget-export-cache.py --output-zip nuget-cache-export.zip
python scripts/nuget-import-cache.py --input-zip nuget-cache-export.zip
python scripts/npm-clean.py --working-dir .
python scripts/dev_shell.py export --shell pwsh --json
python scripts/dev_shell.py doctor