ワンクリックで
eval
Run a setup eval — launch a project, monitor the agent, record results
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Run a setup eval — launch a project, monitor the agent, record results
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Loopyard's spacing/grouping + gutter rules for ANY UI (sidebars, chat cards, option lists, panels, forms). Load this BEFORE writing Tailwind spacing/margin/gap classes on a multi-item layout — it's the fix for the recurring mistake where within-group and between-group spacing look the same, so nothing reads as a group.
Diagnose LiveView UI flashes, re-render loops, and state/view mismatches by introspecting the running app via mix loopyard.rpc. Use when the user reports anything that "flashes", "flickers", "keeps changing", "blinks", "keeps updating", or when an assign is suspected of being overwritten. RPC-based — no browser needed.
Fix a bug by reproducing it in a test first, then fixing
Build a new feature with proper isolation, tests, and multiplayer support
Review a PR against the project's code rules
Set up Loopyard on a new machine
| name | eval |
| description | Run a setup eval — launch a project, monitor the agent, record results |
| user_invocable | true |
Run an automated eval that launches a project in Loopyard and monitors the agent until services are healthy. (There's one self-determining agent — it inspects the workspace and bootstraps the dev env when it's missing; there's no separate "setup agent.")
Critical principle: zero nudges. An eval only truly passes if the agent completes setup with NO human intervention. If nudges are needed, that's a system failure to fix — not a successful eval.
Evals test the full Docker-based setup flow: source adapter seeds the volume, agent writes Dockerfile and docker-compose.yml, containers build and start, agent installs deps and verifies HTTP from the host. No host filesystem shortcuts.
mix loopyard.server)Eval projects live in ./evals/<name>/project/. The project/ subdirectory is gitignored — clone or copy test repos there.
Example structure:
evals/
rails-app/
project/ # <- the actual Rails repo (gitignored)
runs/ # <- eval results (tracked)
2024-01-15T10-30-00.md
Jack into the running server and call EvalRunner directly:
mix loopyard.rpc 'Loopyard.EvalRunner.run("evals/rails-app/project")'
Evals run asynchronously — run/2 returns immediately with {:ok, pid}.
# Check all running/completed evals
mix loopyard.rpc 'Loopyard.EvalRunner.status()'
# Deeper inspection
mix loopyard.rpc 'Loopyard.ChatAgent.list_agents()'
mix loopyard.rpc 'Loopyard.Workspace.ServiceManager.service_status("evals/rails-app/project")'
mix loopyard.rpc 'Loopyard.Docker.docker(["ps", "--format", "table {{.Names}}\t{{.Status}}"])'
mix loopyard.rpc 'Loopyard.ChatAgent.stop_agent("agent_id")'
Any Elixir expression works. The UI shows a yellow indicator while you're jacked in.
Other outcomes: failed (agent crashed/stopped), stalled (went idle before HTTP 200), timeout (deadline hit), web_error (HTTP response but non-2xx).
If an eval needs nudges, that's a bug to fix:
Results are written to evals/<name>/runs/<timestamp>.md (sibling to project/) with outcome, duration, tool calls, errors, and service status.
Run eval
Read results in evals/<name>/runs/
Diagnose — jack in with mix loopyard.rpc to inspect live state
Fix prompt or code
Hot-reload: mix loopyard.rpc 'Loopyard.HotReload.reload()'
Don't use IEx.Helpers.recompile() alone. If mix compile already ran in a separate shell (VS Code, editor save, CI), recompile() returns :noop and the BEAM keeps serving the OLD bytecode — your fix won't take effect and you'll chase a ghost. Loopyard.HotReload.reload/0 re-purges and re-loads every Loopyard.* / LoopyardWeb.* module whose .beam file was written in the last minute, which covers the common mix-compile-then-reload case. Verify the reload worked by calling the fixed function and inspecting its output before re-running an eval.
Run again, compare
Don't optimize for your current evals. If all evals are Ruby/Rails, you might accidentally hard-code Ruby assumptions.
Signs of overfitting:
/usr/local/bundle (Ruby-specific)How to prevent it:
When an eval fails, fix prompts or tools — not the system code with project-specific hacks.