PenguinHarness is a local-first platform in which multiple AI agents create, evaluate, optimize, and deploy agent applications. It is for people building AI software who want agents to generate applications and improve their own behavior through skills.
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 Prism-Shadow/penguin-harness --skill opro-rsi-toolkitgit clone --depth 1 https://github.com/Prism-Shadow/penguin-harnessWrote 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/prism-shadow/penguin-harness/opro-rsi-toolkit)<a href="https://agentmods.dev/skills/prism-shadow/penguin-harness/opro-rsi-toolkit"><img src="https://agentmods.dev/badge/skills/prism-shadow/penguin-harness/opro-rsi-toolkit/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/prism-shadow/penguin-harness/opro-rsi-toolkit"><img src="https://agentmods.dev/badge/skills/prism-shadow/penguin-harness/opro-rsi-toolkit.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00000 | $0.03419 |
| Opus 5.5 | $0.00000 | $0.01368 |
| Sonnet 5.5 | $0.00000 | $0.00684 |
| Haiku 4.5 | $0.00000 | $0.00342 |
Grade A, and why
opro-rsi-toolkit 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 4d 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 — 167 lines — stays where its author put it; the contents beside it link to each section on GitHub.
OPRO
Large Language Models as Optimizers (Yang et al., Google DeepMind, 2023; paper v3, §4–5, especially §4.2 and §5.4), code at google-deepmind/opro. Verified implementation revision a76bdce2cbf6d4a0d1e570a6fcfe17be9c2abdd7: opro/optimization/optimize_instructions.py and opt_utils.py. OPRO optimizes one instruction: an optimizer model reads the instructions measured so far with their scores, proposes new ones, every proposal is measured on the training cases, and the highest training score is kept. Model weights, tools and the rest of the Target's harness stay fixed; OPRO has no Reflector, Curator, textual gradient or Trace critique, so add none. Run the method the way the paper does; every departure is a declared adaptation reported at the end.
Before you start
This Skill is the experiment's controller and needs run_subagent; if that tool is missing you are a subagent: stop and say the Skill needs a top-level Session. If the request only names this Skill, ask for the Target and the Benchmark, and offer the demo task. Otherwise resolve the inputs below, asking only for one the method needs and the request does not give:
test_agent_id: the Target, an existing Agent of this Project, orcreate: <id>for a fresh one. Never the Agent running this Skill: its workers are this Agent.benchmark_id: a published Benchmark of this Project; its cases are OPRO's training set. When the user asks for the demo task, build it fromreferences/demo-task.mdfirst: it fixes the Target, the Benchmark and the budget.case_ids: every case unless the user names a subset.runs: Runs per Case, 1 unless given.- The Target's runtime, fixed as
references/evaluation.mdsays. The proposer is this Session's model. - The method's parameters, with the values of the source script:
| Parameter | Source | Smoke profile (the default) |
|---|---|---|
num_search_steps (S) |
200 | 2 |
num_generated_instructions_in_each_step (P) |
8 | 2; the demo task uses 4 |
max_num_instructions |
20 | 20 |
num_score_buckets |
100 | 100 |
old_instruction_score_threshold |
0.3 with GPT scorers, 0 with text-bison | 0 |
Exemplars per step, k (num_few_shot_questions_for_instruction_refinement) |
3, drawn at random, seeded by the step | 3 |
few_shot_qa_pairs |
true: each exemplar carries its training answer | false unless the user supplies or authorizes training outputs |
initial_instructions |
Let's solve the problem. |
the same, unless the user declares a seed |
| Sampling | optimizer temperature 1.0, scorer 0.0 | the providers' defaults (Penguin sets no temperature); record it |
What ships with it
3 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.
- 4d ago First seen · 167 lines · 0 tokens per session scan A 63264a475823
opro-rsi-toolkit is a skill published in the GitHub repository Prism-Shadow/penguin-harness (2,753 stars, last pushed today), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 3,419 tokens. 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-10-13.
Other skills, from other repositories
agentscope-java
Expert Java developer skill for AgentScope Java framework - a reactive, message-driven multi-agent system built on Project Reactor. Use when working with reactive programming, LLM integration, agent orchestration, multi-agent systems, or when the user mentions AgentScope, ReActAgent, Mono/Flux, Project Reactor, or…
apply-patch
Apply multi-file or tricky edits atomically with git apply instead of many fragile editfile calls. Use when changing several files at once or when editfile fails to match.
git-checkpoint
Use git as a safety net - create a checkpoint commit before risky or large changes and roll back cleanly if a change makes things worse. Use before multi-file refactors.
pptagent
Create and revise editable PowerPoint presentations from a brief using HTML slide sources, rendering, and visual review. Use when the requested deliverable is a PPTX deck. The host authors the slides; text-only hosts can use an external visual reviewer.
agentfield-use
Whenever you have a discrete task to perform — one the user delegated, or one that arose inside your own work — check FIRST whether an installed AgentField agent covers it, and offload to it by default when one does. Coverage, not task size, is the test: even a small job goes to a covering agent. The check is cheap …
browser-workflow-skill-builder
Create robust browser automation skills for sites like LinkedIn, X/Twitter, YouTube, Stripe, or other logged-in web apps by saving page context, analyzing HTML/CSS, writing skill-local JS extract/verify scripts, and using CSS selector actions with screenshot verification.