Aider Delegate
amElnagdy/delegate-skills
Delegate a coding task to Aider (aider) as a background implementer, then review its diff and land it yourself.
Stand up a PUBLIC, shareable inference endpoint for an HF/gs model on an Iris TPU so people on the internet can vibe-test it in a browser or via an OpenAI-compatible API.
The automated check flagged lines worth reading first. See the safety section below.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent serve-model-vibe-test --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/serve-model-vibe-test .claude/skills/serve-model-vibe-test && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "serve-model-vibe-test" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/serve-model-vibe-test into .claude/skills/serve-model-vibe-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "serve-model-vibe-test", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/serve-model-vibe-testType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent serve-model-vibe-test --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/serve-model-vibe-test .agents/skills/serve-model-vibe-test && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "serve-model-vibe-test" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/serve-model-vibe-test into .agents/skills/serve-model-vibe-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "serve-model-vibe-test", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent serve-model-vibe-test --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/serve-model-vibe-test .cursor/skills/serve-model-vibe-test && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "serve-model-vibe-test" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/serve-model-vibe-test into .cursor/skills/serve-model-vibe-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "serve-model-vibe-test", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/open-thoughts/OpenThoughts-Agent.git --path .agents/skills/serve-model-vibe-test--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent serve-model-vibe-test --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/serve-model-vibe-test .gemini/skills/serve-model-vibe-test && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "serve-model-vibe-test" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/serve-model-vibe-test into .gemini/skills/serve-model-vibe-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "serve-model-vibe-test", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install open-thoughts/OpenThoughts-Agent serve-model-vibe-testInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/serve-model-vibe-test .github/skills/serve-model-vibe-test && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "serve-model-vibe-test" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/serve-model-vibe-test into .github/skills/serve-model-vibe-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "serve-model-vibe-test", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install open-thoughts/OpenThoughts-Agent serve-model-vibe-test --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/open-thoughts/OpenThoughts-Agent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/serve-model-vibe-test .opencode/skills/serve-model-vibe-test && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "serve-model-vibe-test" agent skill from https://github.com/open-thoughts/OpenThoughts-Agent/tree/main/.agents/skills/serve-model-vibe-test into .opencode/skills/serve-model-vibe-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "serve-model-vibe-test", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
serve-model-vibe-testStand up a PUBLIC, shareable inference endpoint for an HF/gs model on an Iris TPU so people on the internet can vibe-test it in a browser or via an OpenAI-compatible API.
Serve Model Vibe Test is an agent skill from open-thoughts/OpenThoughts-Agent. Stand up a PUBLIC, shareable inference endpoint for an HF/gs model on an Iris TPU so people on the internet can vibe-test it in a browser or via an OpenAI-compatible API. Use when asked to "serve a model for testing", "throw up a public endpoint", "let people play with model X", or to demo a checkpoint. Combines marin-serve (marin6556) + a Pinggy tunnel from our endpoint bank.
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in AI & LLM Engineering, covering Meeting notes and agendas. It works with OpenAI and vLLM. The repository describes itself as: Data recipes and robust infrastructure for training AI agents. The licence is Apache-2.0.
Read from SKILL.md and the folder at commit 3bd1917. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
curlpythonuvsshFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use curl, uv and ssh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Serve Model Vibe Test loads about 1.8k tokens when it runs. Until then it costs about 101 tokens; SKILL.md has 597 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found patterns that need a careful read before installing.
_SECRET_ENV` sourced (Pinggy uses your `~/.ssh` identity; SSH to `pro.pinggy.io:443`).Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from open-thoughts/OpenThoughts-Agent at commit 3bd1917, republished under its Apache-2.0 licence (© open-thoughts). 597 words, ~1,801 tokens.
.claude/skills/serve-model-vibe-test/SKILL.md (or your agent's skills folder).Spin up a public endpoint for a HuggingFace repo or gs:// checkpoint. marin-serve runs vLLM on a
single-host Iris TPU slice behind the controller proxy; a Pinggy tunnel makes its proxied port public at
https://<id>.a.pinggy.link/proxy/serve.<ep>/, with a dashboard and OpenAI-compatible API.
scripts/inference/serve_public.py wraps marin-serve, hpc.pinggy_utils.PinggyTunnel, and the Pinggy bank.
The public URL is unauthenticated. Use it only for throwaway vibe testing; keep --timeout-hours short,
use an unused Pinggy pair, and tear it down when done.
marin-serve available (marin#6556). serve_public.py invokes
~/Documents/marin/.venv/bin/python -m marin.inference.quick_serve_cli by default. Override with
--marin-serve-bin or MARIN_SERVE_BIN.~/Documents/marin), not from this repo. marin-serve bundles
Path.cwd() as the worker workspace (quick_serve_cli.py:227) and the worker runs
uv sync --all-packages --extra tpu --extra vllm against it. Only the marin workspace defines the
tpu/vllm extras (on marin-core); any other CWD → Extra 'tpu' is not defined in any project's 'optional-dependencies' table and the job dies before vLLM starts. serve_public.py resolves its
own repo root via parents[2] for the hpc import, so invoke it by absolute path from the marin CWD.iris CLI).$DC_AGENT_SECRET_ENV sourced (Pinggy uses your ~/.ssh identity; SSH to pro.pinggy.io:443).~/Documents/notes/ot-agent/pinggy_bank.md (override --pinggy-bank / PINGGY_BANK).v6e-8, v6e-4, v5litepod-8, …); multi-host is rejected.The bank has 10 pairs. Before launching, pick one that isn't already serving — a quick probe (a free pair returns a Pinggy "tunnel not found"/503 or connection error; an in-use one returns your model):
for i in 1 2 3; do u=$(sed -n "/## Pair $i$/,/pinggy.link/p" ~/Documents/notes/ot-agent/pinggy_bank.md | grep pinggy.link); \
echo "pair $i: $u -> $(curl -s -o /dev/null -w '%{http_code}' --max-time 6 https://$u/ || echo down)"; doneUse a pair that shows down/502/503 (free). Pass it as --pair N.
cd ~/Documents/marin # MUST be the marin repo — see Prerequisites
set -a; source "${DC_AGENT_SECRET_ENV:?set DC_AGENT_SECRET_ENV to the secrets file first}"; set +a
python -u ~/Documents/OpenThoughts-Agent/scripts/inference/serve_public.py <MODEL> --tpu <SLICE> [--region <R>] \
[--chat-template <FILE-or-URL>] --pair <N> --timeout-hours 6It launches marin-serve, waits for READY — dashboard: http://127.0.0.1:<port>/proxy/serve.<ep>/, opens the
Pinggy tunnel, and prints:
dashboard : https://<id>.a.pinggy.link/proxy/serve.<ep>/
OpenAI : https://<id>.a.pinggy.link/proxy/serve.<ep>/v1Keep the process running because it holds both tunnels. For unattended operation, use tmux, not
nohup setsid … on macOS:
tmux new-session -d -s serve-public \
"source \"${DC_AGENT_SECRET_ENV:?set DC_AGENT_SECRET_ENV first}\" && cd ~/Documents/marin && \
python -u ~/Documents/OpenThoughts-Agent/scripts/inference/serve_public.py <MODEL> ... 2>&1 | tee /tmp/serve_public.log"
# then poll /tmp/serve_public.log (or `tmux attach -t serve-public`) for the "OpenAI :" lineThis is the reference model: laion/delphi-1e22-p33m67-32p07b-lr0_67-54770ae7-wc386k_lr1e5-sft.
It needs its own chat template (the repo ships a plain Llama-3 one); use delphi_v0.jinja2.
marin-serve auto-derives the 4k context (malformed RoPE) and TP=2 (30 heads on a 4-chip slice).
# run from ~/Documents/marin (the bundled workspace); script is invoked by absolute path
cd ~/Documents/marin && source "${DC_AGENT_SECRET_ENV:?set DC_AGENT_SECRET_ENV first}"
python -u ~/Documents/OpenThoughts-Agent/scripts/inference/serve_public.py \
laion/delphi-1e22-p33m67-32p07b-lr0_67-54770ae7-wc386k_lr1e5-sft \
--tpu v6e-4 --region europe-west4 \
--chat-template https://raw.githubusercontent.com/open-thoughts/OpenThoughts-Agent/ed4d6f483151f14d6d78cf732f04cd3c8ff5c606/chat_templates/delphi_v0.jinja2 \
--pair 1 --timeout-hours 6Verify once the public URL prints:
BASE=https://<id>.a.pinggy.link/proxy/serve.<ep>
# from the laptop you must force the real Pinggy edge IP (ISP DNS poisons *.a.pinggy.link); see Gotchas
curl "$BASE/v1/models"
curl "$BASE/v1/chat/completions" -H 'content-type: application/json' \
-d '{"model":"laion/delphi-1e22-p33m67-32p07b-lr0_67-54770ae7-wc386k_lr1e5-sft",
"messages":[{"role":"user","content":"Give me a fun fact about otters."}]}'(Base/midtrained checkpoints with no chat template auto-default the dashboard to completion mode — omit --chat-template.)
Ctrl-C (tears down the Pinggy tunnel and the marin-serve job it launched).iris job stop <job> --cluster marin (the job name is in the log /
iris query), then kill the serve_public.py PID. The slice also self-stops at --timeout-hours.Path.cwd() becomes the worker workspace;
only marin defines the needed extras. Invoke serve_public.py by absolute path from ~/Documents/marin.ps state T): run kill -CONT <ssh_pid> <loop_pid>, then re-probe.
PinggyTunnel.start() prevents this with detached stdin, ssh -n, and setsid; serve_public.py prints
LIVE ✓ only after a DNS-aware /v1/models HTTP 200 probe.--ready-timeout (default 2700s) bounds the wait.--no-wait for the public path — the local proxied port only exists while the launching process runs; --no-wait returns immediately and there's nothing to tunnel./proxy/serve.<ep>/ base path (it's the controller proxy path), so the OpenAI base is https://<id>.a.pinggy.link/proxy/serve.<ep>/v1, not /v1.dig @1.1.1.1 and curl --resolve, or use
1.1.1.1/8.8.8.8 DNS. See .agents/projects/pinggy/pinggy.md.© open-thoughts, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/serve-model-vibe-test of open-thoughts/OpenThoughts-Agent.
Open the folder on GitHubat commit 3bd1917
Serve Model Vibe Test next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Serve Model Vibe Test this skillopen-thoughts/OpenThoughts-Agent | 301 | — | ~1.8k | Automated safety check: Warn | Apache-2.0 | |
| Aider DelegateamElnagdy/delegate-skills | 2.3k | 2 repos | ~3k | Automated safety check: Pass | MIT | |
| Model Serving MinefieldBlackwellboy/model-serving-minefield | 135 | — | ~2.1k | Automated safety check: Pass | MIT | |
| vLLM Model ServingOrchestra-Research/AI-Research-SKILLs | 13k | 5 repos | ~2.3k | Automated safety check: Pass | MIT | |
| Vllm Bench Random Syntheticvllm-project/vllm-skills | 103 | — | ~1.5k | Automated safety check: Pass | Apache-2.0 | |
| Vllm Bench Servevllm-project/vllm-skills | 103 | — | ~1.6k | Automated safety check: Pass | Apache-2.0 |
amElnagdy/delegate-skills
Delegate a coding task to Aider (aider) as a background implementer, then review its diff and land it yourself.
Blackwellboy/model-serving-minefield
Diagnose OpenAI-compatible model-serving failures from symptoms, endpoint reports, explicit configuration files, or logs while preserving evidence status and requiring confirm/refute checks.
Orchestra-Research/AI-Research-SKILLs
Deploys LLMs with vLLM for high-throughput serving, covering the OpenAI-compatible server, offline batch inference, monitoring and a Docker rollout.
vllm-project/vllm-skills
Run vLLM performance benchmark using synthetic random data to measure throughput, TTFT (Time to First Token), TPOT (Time per Output Token), and other key performance metrics.
vllm-project/vllm-skills
Benchmark vLLM or OpenAI-compatible serving endpoints using vllm bench serve.
vllm-project/vllm-skills
Deploy vLLM to Kubernetes (K8s) with GPU support, health probes, and OpenAI-compatible API endpoint.
open-thoughts/OpenThoughts-Agent
Analyze the token length of an OT-Agent conversation-format (ShareGPT-style) dataset — the per-trace distribution (median/p90/max) and/or counts under a token threshold + a metadata predicate (e.g.
open-thoughts/OpenThoughts-Agent
Given a list of models (HF name stubs) that have valid agentic ID eval scores in Supabase, build a ranking table: raw per-benchmark accuracy on the 3 ID benchmarks (SWE-Bench-100…
open-thoughts/OpenThoughts-Agent
Run the Iris harbor job-history analyzer (scripts/iris/analyzeirisharborjob.py) on a datagen/eval job and read its JSON sidecar for trustworthy throughput / preemption / productive-trial stats.
open-thoughts/OpenThoughts-Agent
Run the full RL behavioral-analysis pipeline (scripts/analysis/analyzerlbehavior.py) on a trained RL model to understand WHAT changed vs its pre-RL baseline, WHY, whether it PERSISTS, and its EVAL…
open-thoughts/OpenThoughts-Agent
Detailed health check for a Levanter/executor TRAINING run on the marin Iris cluster (e.g.
open-thoughts/OpenThoughts-Agent
DESIGN a non-trivial codebase change (Harbor / MarinSkyRL / vLLM / OT-Agent / LLaMA-Factory) as a dependency-ordered STAGED PLAN before writing code — a feature port, a multi-step fix with parity…
Stand up a PUBLIC, shareable inference endpoint for an HF/gs model on an Iris TPU so people on the internet can vibe-test it in a browser or via an OpenAI-compatible API. Serve Model Vibe Test is an agent skill from open-thoughts/OpenThoughts-Agent. Stand up a PUBLIC, shareable inference endpoint for an HF/gs model on an Iris TPU so people on the internet can vibe-test it in a browser or via an OpenAI-compatible API.
Serve Model Vibe Test fits situations like: asked to serve a model for testing; throw up a public endpoint; let people play with model X; demo a checkpoint.
Run `npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a claude-code`. Or copy the skill folder (.agents/skills/serve-model-vibe-test in open-thoughts/OpenThoughts-Agent) into .claude/skills/serve-model-vibe-test in your project. Claude Code loads it when a task matches its description.
Run `npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a codex`. Or copy the skill folder (.agents/skills/serve-model-vibe-test in open-thoughts/OpenThoughts-Agent) into .agents/skills/serve-model-vibe-test in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add open-thoughts/OpenThoughts-Agent --skill serve-model-vibe-test -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/serve-model-vibe-test, .gemini/skills/serve-model-vibe-test, .github/skills/serve-model-vibe-test and .opencode/skills/serve-model-vibe-test in your project.
Going by SKILL.md and its folder, Serve Model Vibe Test needs the command-line tools its instructions call (curl, python, uv and ssh). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use curl, uv and ssh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md flagged 1 warning(s): mentions a credentials file (ssh keys, cloud or package-manager tokens). Read the flagged lines before installing; the check is not a guarantee either way.
Serve Model Vibe Test is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Serve Model Vibe Test: Aider Delegate (amElnagdy/delegate-skills, 2.3k stars), Model Serving Minefield (Blackwellboy/model-serving-minefield, 135 stars), vLLM Model Serving (Orchestra-Research/AI-Research-SKILLs, 13k stars) and Vllm Bench Random Synthetic (vllm-project/vllm-skills, 103 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
open-thoughts (a GitHub organization) maintains it in open-thoughts/OpenThoughts-Agent, which has 301 GitHub stars. The repository holds 44 skills in this directory. The repository was last updated on September 28, 2026.
Source: open-thoughts/OpenThoughts-Agent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.