mirror of
https://github.com/OpenRouterTeam/spawn.git
synced 2026-04-28 03:49:31 +00:00
* fix: claude snapshot build — remove npm fallback from install command
The native install (curl | bash) succeeds but exits non-zero due to a
PATH warning. The || fallback then tries `npm install` which doesn't
exist on the "minimal" tier → exit 127.
Fix: replace npm fallback with binary existence check (same pattern
as hermes agent). If install exits non-zero but ~/.local/bin/claude
exists, the build succeeds.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: snapshot cleanup and lookup — use name prefix instead of tags
DO Packer builder `tags` only apply to the temporary build droplet,
not the resulting snapshot image. Both the workflow cleanup step and
the CLI's findSpawnSnapshot() were querying by `tag_name` which
returned nothing — old snapshots piled up and the CLI couldn't find
existing snapshots.
Fix: filter by snapshot name prefix (`spawn-{agent}-`) instead of
tags, in both the workflow and the CLI. Remove misleading `tags`
from the Packer template. Add test cases for name-prefix filtering.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
45 lines
1.3 KiB
JSON
45 lines
1.3 KiB
JSON
{
|
|
"claude": {
|
|
"tier": "minimal",
|
|
"install": [
|
|
"curl -fsSL https://claude.ai/install.sh | bash || [ -f /root/.local/bin/claude ]"
|
|
]
|
|
},
|
|
"codex": {
|
|
"tier": "node",
|
|
"install": [
|
|
"mkdir -p ~/.npm-global/bin && npm install -g --prefix ~/.npm-global @openai/codex"
|
|
]
|
|
},
|
|
"openclaw": {
|
|
"tier": "full",
|
|
"install": [
|
|
"mkdir -p ~/.npm-global/bin && npm install -g --prefix ~/.npm-global openclaw"
|
|
]
|
|
},
|
|
"opencode": {
|
|
"tier": "minimal",
|
|
"install": [
|
|
"mkdir -p ~/.opencode/bin && curl -fsSL https://opencode.ai/install | bash"
|
|
]
|
|
},
|
|
"kilocode": {
|
|
"tier": "node",
|
|
"install": [
|
|
"mkdir -p ~/.npm-global/bin && npm install -g --prefix ~/.npm-global @kilocode/cli"
|
|
]
|
|
},
|
|
"zeroclaw": {
|
|
"tier": "minimal",
|
|
"install": [
|
|
"if [ ! -f /swapfile ]; then fallocate -l 4G /swapfile && chmod 600 /swapfile && mkswap /swapfile && swapon /swapfile; fi",
|
|
"curl -LsSf https://raw.githubusercontent.com/zeroclaw-labs/zeroclaw/a117be64fdaa31779204beadf2942c8aef57d0e5/scripts/bootstrap.sh | bash -s -- --install-rust --install-system-deps --prefer-prebuilt"
|
|
]
|
|
},
|
|
"hermes": {
|
|
"tier": "minimal",
|
|
"install": [
|
|
"curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash || [ -f ~/.local/bin/hermes ]"
|
|
]
|
|
}
|
|
}
|