Files
common-skills/scripts/puml2svg.sh
T
Team c0d14c6ac1 chore: restructure skills repo with new agents and skill bundles
- Add new skills: deep-dive, docs-rag, meta-creator, ppt-maker, sdlc
- Add agent configs: g-assistent, meta-creator, sdlc with prompt files
- Add reference docs for custom agents and skills specification
- Add utility scripts: install-agents.sh, orchestrate.py, puml2svg.sh
- Update README and commit-message skill config
- Remove deprecated skills: codereview, python, testing, typescript
- Add .gitignore
2026-04-18 13:07:46 +08:00

40 lines
1.1 KiB
Bash
Executable File

#!/usr/bin/env bash
# puml2svg.sh — Convert all .puml files under skills/ to SVG
# Usage:
# bash scripts/puml2svg.sh # convert all
# bash scripts/puml2svg.sh commit-message deep-dive # convert specific skills
set -uo pipefail
PLANTUML_JAR="${PLANTUML_JAR:-/home/xrv/.vscode-server/extensions/jebbs.plantuml-2.18.1/plantuml.jar}"
SKILLS_DIR="$(cd "$(dirname "$0")/../skills" && pwd)"
if [[ ! -f "$PLANTUML_JAR" ]]; then
echo "ERROR: plantuml.jar not found at $PLANTUML_JAR"
echo "Set PLANTUML_JAR=/path/to/plantuml.jar and retry."
exit 1
fi
# Build list of target skill dirs
if [[ $# -gt 0 ]]; then
targets=("$@")
else
targets=()
for d in "$SKILLS_DIR"/*/; do
targets+=("$(basename "$d")")
done
fi
converted=0
for skill in "${targets[@]}"; do
assets_dir="$SKILLS_DIR/$skill/assets"
mapfile -t puml_files < <(find "$assets_dir" -name "*.puml" 2>/dev/null)
for puml in "${puml_files[@]}"; do
echo "$puml"
java -jar "$PLANTUML_JAR" -tsvg "$puml" 2>&1
((converted++)) || true
done
done
echo "Done. $converted file(s) converted."