Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Zhang-Henry/CoEvoSkills --skill evo-simpo-lossgit clone --depth 1 https://github.com/Zhang-Henry/CoEvoSkillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/zhang-henry/coevoskills/evo-simpo-loss)<a href="https://agentmods.dev/skills/zhang-henry/coevoskills/evo-simpo-loss"><img src="https://agentmods.dev/badge/skills/zhang-henry/coevoskills/evo-simpo-loss/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/zhang-henry/coevoskills/evo-simpo-loss"><img src="https://agentmods.dev/badge/skills/zhang-henry/coevoskills/evo-simpo-loss.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00060 | $0.00807 |
| Opus 5.5 | $0.00024 | $0.00323 |
| Sonnet 5.5 | $0.00012 | $0.00161 |
| Haiku 4.5 | $0.00006 | $0.00081 |
Grade A, and why
evo-simpo-loss scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 108 lines — stays where its author put it; the contents beside it link to each section on GitHub.
SimPO Loss Implementation Skill
This skill implements the SimPO loss function based on the SimPO paper for preference optimization of language models.
Key Concepts
SimPO Loss Formula
SimPO defines reward as r(x,y) = (beta/|y|) * log pi_theta(y|x), which equals beta * avg_log_prob.
The loss inputs are already length-normalized average log probabilities from upstream.
Sigmoid loss (default):
losses = -log_sigmoid(beta * (chosen_logps - rejected_logps) - gamma)
With label smoothing epsilon:
losses = (1-eps) * (-log_sigmoid(logits - gamma)) + eps * (-log_sigmoid(-(logits - gamma)))
Hinge loss:
losses = max(0, gamma - beta * (chosen_logps - rejected_logps))
Parameters
beta: Scaling constant (default 2.0)gamma_beta_ratio: Ratio gamma/beta (default 0.25), sogamma = gamma_beta_ratio * betalabel_smoothing: Smoothing factor (default 0.0)loss_type: "sigmoid" or "hinge" (default "sigmoid")
Rewards (diagnostic only, detached)
chosen_rewards = beta * policy_chosen_logpsrejected_rewards = beta * policy_rejected_logps
Environment Setup
Required packages with known-good versions:
- torch==2.2.2
- transformers==4.44.2
- trl==0.9.6
- accelerate==0.29.2
- peft==0.7.1
- numpy==1.26.4
- rich (any version)
- datasets (any version)
Usage
import sys
sys.path.insert(0, '/app/environment/skills/evo-simpo-loss/scripts')
from run_task import run_simpo_task
# Run the complete task end-to-end
run_simpo_task(
project_dir='/root/SimPO',
output_path='/root/loss.npz',
python_info_path='/root/python_info.txt',
)
This will:
- Install any missing packages
- Inject the simpo_loss implementation into simpo_trainer.py
- Run the unit test to generate loss.npz
- Log Python version and packages to python_info.txt
- Validate the output
Utility Functions
compute_simpo_loss
Standalone function for computing SimPO loss (useful for testing independently):
import sys
sys.path.insert(0, '/app/environment/skills/evo-simpo-loss/scripts')
from utils import compute_simpo_loss
import torch
chosen = torch.tensor([-1.0, -2.0, -0.5])
rejected = torch.tensor([-2.0, -1.5, -1.0])
losses, c_rew, r_rew = compute_simpo_loss(chosen, rejected, beta=2.0, gamma_beta_ratio=0.25)
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 108 lines · 60 tokens per session scan A 1d952161d8ec
evo-simpo-loss is a skill published in the GitHub repository Zhang-Henry/CoEvoSkills (83 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 60 tokens to every session and 807 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
Assay
Assertion-first eval framework: code asserts, calibrated judges, pass@k, A/B comparison, agentic evals, judgment-layer question systems and code-extract-decide-write pipelines. USE WHEN eval, evaluate, benchmark, judge, judge prompt, judge panel, regression test, assert, llm-rubric, calibrate judge, judged residue…
bad-case-to-dpo
A guide to turning failed production agent runs into training and evaluation data. It explains how to find the first mistake, create preference examples for DPO (Direct Preference Optimization), and check that a fix does not damage other tasks.
edd
Eval-driven development loop for this repo (rag-loop, an aircraft-systems RAG app on LangGraph, OpenAI, Qdrant Cloud, and TruLens). Use when the user wants to run an experiment, inspect feedback metrics, or decide keep-or-reject on a config/prompt change.
writing-evals
Scaffolds evaluation suites for the Axiom AI SDK. Generates eval files, scorers, flag schemas, and config from natural-language descriptions. Use when creating evals, writing scorers, setting up flag schemas, or configuring axiom.config.ts.
migrate-etl
Stabilize an ETL code unit (SSIS, Informatica, or other platforms) by handing the converted artifacts off to etl-stabilization and recording the result on the registry entry.
ai-observability-promptfoo
Testing and evaluation framework for LLM prompts and applications -- promptfooconfig.yaml, assertions, model-graded evals, red teaming, CI/CD integration, custom providers, and comparative evaluation.