Merge pull request #7469 from omacom/hermes-agent
Add Hermes as a desktop app and a coding agent
(cherry picked from commit b71dcad96e)
(cherry picked from commit b27908369ed5fa95ca24dca2c68b895032d879d2)
This commit is contained in:
1 parent
15d64a7025
commit
68e3d7a2ec
24 files changed
+1247
-15
No files matched your search
Executable
+39
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
source "$(dirname "$0")/base-test.sh"
|
||||
|
||||
test_tmp=$(mktemp -d)
|
||||
trap 'rm -rf "$test_tmp"' EXIT
|
||||
|
||||
mock_bin="$test_tmp/bin"
|
||||
mkdir -p "$mock_bin" "$test_tmp/home" "$test_tmp/home/.hermes/profiles/james"
|
||||
|
||||
for command in xdg-user-dirs-update xdg-settings xdg-mime; do
|
||||
printf '#!/bin/bash\nexit 0\n' >"$mock_bin/$command"
|
||||
done
|
||||
chmod +x "$mock_bin"/*
|
||||
|
||||
# Provisioning prepends $OMARCHY_PATH/bin, which shadows a mock for anything
|
||||
# Omarchy ships, so the install suite is stubbed out at its path instead. The
|
||||
# real one rethemes the session it runs in: hyprctl reload against the live
|
||||
# compositor, gsettings against the live desktop, and a global Node install.
|
||||
mkdir -p "$test_tmp/install/user"
|
||||
: >"$test_tmp/install/user/all.sh"
|
||||
|
||||
HOME="$test_tmp/home" PATH="$mock_bin:$ROOT/bin:$PATH" OMARCHY_PATH="$ROOT" \
|
||||
OMARCHY_INSTALL="$test_tmp/install" bash "$ROOT/bin/omarchy-provision-user" >/dev/null ||
|
||||
fail "omarchy-provision-user finishes"
|
||||
|
||||
for skill in omarchy diagnose-crash; do
|
||||
link="$test_tmp/home/.hermes/skills/$skill"
|
||||
[[ -L $link && $(readlink "$link") == "$ROOT/default/agents/skills/$skill" ]] ||
|
||||
fail "omarchy-provision-user provisions the $skill skill for Hermes"
|
||||
|
||||
link="$test_tmp/home/.hermes/profiles/james/skills/$skill"
|
||||
[[ -L $link && $(readlink "$link") == "$ROOT/default/agents/skills/$skill" ]] ||
|
||||
fail "omarchy-provision-user provisions the $skill skill for a Hermes profile"
|
||||
done
|
||||
|
||||
pass "omarchy-provision-user provisions Hermes skills"
|
||||
Reference in new issue
Block a user