원클릭으로
bip-scout
Check remote server CPU, memory, and GPU availability via SSH
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Check remote server CPU, memory, and GPU availability via SSH
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Cold-start into a worktree/clone from a fresh conversation — read the PR, issue, and any status files, figure out where things stand, then STOP and ask the user what to do next. Use for a fresh conversation dropped into a bip-spawn or bip-epic-spawn worktree/clone that already has history (a PR, an in-progress phase, or a stalled worker).
Quick poll of tracked EPICs and code repos for new manuscript-relevant results
Persist manuscript session state before context reset
Cold-start for a manuscript session — the paper is the source of truth and shared context; discuss results, orchestrate research through issues/PRs, and update the paper as threads complete
Spawn a Claude session in a clone for an EPIC issue
Worker self-spawns a follow-up issue and hands off to a new slot
| name | bip-scout |
| description | Check remote server CPU, memory, and GPU availability via SSH |
Check remote server availability and resource usage. Runs bip scout to collect metrics, presents a human-readable summary, and answers follow-up questions by reasoning over the data.
/bip-scout [question]
Arguments:
[question] — Optional natural-language question (e.g., "which server has free GPUs?", "where should I run a training job?")If no question is given, show a full summary of all servers.
Run bip scout to get JSON output:
bip scout
If the command fails, check for common issues:
servers.yml: "No servers.yml found — see bip scout --help for config location."~/.ssh/config.The JSON output has this structure:
{
"servers": [
{
"name": "servername",
"status": "online",
"metrics": {
"cpu_percent": 45.2,
"memory_percent": 62.1,
"load_avg_1min": 2.3,
"load_avg_5min": 1.8,
"load_avg_15min": 1.5,
"gpus": [
{
"utilization_percent": 85,
"memory_used_mb": 30720,
"memory_total_mb": 49152
}
],
"top_users": [
{"user": "alice", "cpu_percent": 45.2},
{"user": "bob", "cpu_percent": 12.1}
]
}
},
{
"name": "deadserver",
"status": "offline",
"error": "connection timed out"
}
]
}
If no question was asked, present a summary table showing:
If a question was asked, reason over the JSON data to answer it. Common question types:
| Question Type | How to Answer |
|---|---|
| "Which server has free GPUs?" | Find online servers where GPU utilization < 50% and GPU memory has headroom |
| "Where should I run a training job?" | Find servers with lowest GPU utilization and most free GPU memory |
| "Is server X available?" | Check that specific server's status and metrics |
| "What's the GPU memory on Y?" | Report per-GPU memory used/total for that server |
| "Which servers are idle?" | Find servers with CPU < 20% and memory < 50% |
| "Who is using server X?" | Report top_users with their CPU percentages |
Formatting guidelines:
After presenting results, briefly note that the user can ask follow-up questions like:
Once you've picked a host, two rules keep remote runs from silently breaking or clobbering a neighbor:
REMOTE_DIR
explicitly on every make remote-sync/remote-run/remote-tmux call (or ssh to
an explicit path). The config-derived default (~/.config/dasm2/config.yaml) is the
same directory for every clone/worktree on the box, so concurrent runs overwrite
each other's checkout — the rule bip-epic-spawn states for EPIC slots applies to
any remote run, not just EPIC workers. Don't trust that default to be non-empty
either: the Makefile resolves it with a bare python3 that may lack the project's
deps and silently return "" (cd → "not a git repository").make remote-tmux (its tmux window is a login
shell) or ssh <host> 'bash -lc "…"' — not a bare
ssh <host> "source .venv/bin/activate && …". A non-login shell skips lmod module
init, so a venv Python built against a module-provided libpython dies with
libpython3.XX.so.1.0: cannot open shared object file. In a long ssh command
string cd is easy to drop — prefer absolute paths (e.g. the full
.venv/bin/activate path).go build -o bip ./cmd/biphas_gpu: true