Document Athena containers and expand Hermes operator skill
This commit is contained in:
1 parent
87a2ae5704
commit
b4f4bf37fd
13 files changed
+232
-29
No files matched your search
@@ -11,17 +11,26 @@ die() { printf 'FEHLER: %s\n' "$*" >&2; exit 1; }
|
||||
[[ -s $PROFILE_MATRIX ]] || die "Profilmatrix fehlt: $PROFILE_MATRIX"
|
||||
|
||||
install_skill() {
|
||||
local source=$1 root=$2 name target
|
||||
local source=$1 root=$2 name source_dir target_dir target path relative
|
||||
name=${source%/SKILL.md}
|
||||
name=${name##*/}
|
||||
target=$root/platform/$name/SKILL.md
|
||||
source_dir=${source%/SKILL.md}
|
||||
target_dir=$root/platform/$name
|
||||
target=$target_dir/SKILL.md
|
||||
grep -Fxq -- "name: $name" "$source" || \
|
||||
die "Skill-Quelle hat kein gültiges Frontmatter: $source"
|
||||
install -d -o 10000 -g 10000 -m 0750 "${target%/*}"
|
||||
install -d -o 10000 -g 10000 -m 0750 "$target_dir"
|
||||
if [[ -s $target ]] && ! cmp -s "$source" "$target"; then
|
||||
cp -a "$target" "$target.before-managed-update-$(date +%Y%m%d-%H%M%S)"
|
||||
fi
|
||||
install -o 10000 -g 10000 -m 0640 "$source" "$target"
|
||||
while IFS= read -r path; do
|
||||
relative=${path#"$source_dir"/}
|
||||
if [[ -d $path ]]; then
|
||||
install -d -o 10000 -g 10000 -m 0750 "$target_dir/$relative"
|
||||
else
|
||||
install -o 10000 -g 10000 -m 0640 "$path" "$target_dir/$relative"
|
||||
fi
|
||||
done < <(find "$source_dir" -mindepth 1 -print)
|
||||
cmp -s "$source" "$target" || die "Skill-Synchronisierung fehlgeschlagen: $target"
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user