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.
Borrowing it
Nothing to install: this file belongs to Prism-Shadow/penguin-harness. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/Prism-Shadow/penguin-harness/main/.agents/skills/penguin-harness-dev/SKILL.mdgit 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/penguin-harness-dev)<a href="https://agentmods.dev/skills/prism-shadow/penguin-harness/penguin-harness-dev"><img src="https://agentmods.dev/badge/skills/prism-shadow/penguin-harness/penguin-harness-dev/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/penguin-harness-dev"><img src="https://agentmods.dev/badge/skills/prism-shadow/penguin-harness/penguin-harness-dev.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 3 findings, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Rogue Agent · line 54 Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.Fix: Remove any persistence mechanisms (cron jobs, startup scripts, state files). Skills should not maintain state across sessions without explicit user consent.
- medium Excessive Agency · line 60 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
- medium Agent Snooping · line 109 Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.Fix: Remove all code or instructions that list or read other skills' files or directories. Skills should operate independently; cross-skill access is a privilege escalation.
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.00175 | $0.03943 |
| Opus 5.5 | $0.00070 | $0.01577 |
| Sonnet 5.5 | $0.00035 | $0.00789 |
| Haiku 4.5 | $0.00017 | $0.00394 |
Grade A, and why
penguin-harness-dev 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 yesterday.
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 — 228 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Developing PenguinHarness
PenguinHarness is a TypeScript monorepo: an Agent SDK (packages/core), an HTTP server
(packages/server), a Web App (packages/web), a CLI (packages/cli), an Electron shell
(packages/desktop), the landing and docs sites, and the shipped plugin library — one npm package
per plugin under the repo root's plugins/, with packages/plugins as the loader that depends on
them all. It consumes LLM providers through @prismshadow/mmsp (MMSP, formerly
@prismshadow/agenthub) and implements no provider clients of its own.
This page is the part that applies to every change. The reference files carry the detail, read them when the task reaches them:
| Read | When |
|---|---|
reference/verification.md |
A test fails oddly, CI reads green when it should not, or the user asks you to run the suite on another machine |
reference/changelog.md |
Writing or auditing a changelog entry |
reference/model-catalog.md |
Touching the server's model catalog, pricing, provider groups, which environment variable a keyless row reads, or glyphs |
reference/authoring.md |
Writing a blog post, auditing prose, or proposing a simplification |
The penguin-harness-writing skill |
Writing or revising a blog post, a docs page or landing copy: a gateway model writes every word, through its prompts and checks |
reference/release.md |
Preparing a release: the branch order, what changes, the announcement, the blog post and its screenshots |
reference/testing.md |
Writing or changing any test: scenarios first, behaviour only, one fake per boundary, branch coverage, speed, CI time as a cost |
reference/ai-slop.md |
Every change a user sees or reads: UI, styles, UI strings, docs, landing, blog, changelog — the rules, the scanner, the catalogue of tells |
No AI slop — every time something is rendered or written
Whatever you add to the UI or the copy, check it before you call it done: decide before you
decorate; one accent, one voice; hierarchy from scale and space; subtract first; specific beats
punchy; decoration must mean something. No gradients, glows, emoji, pill spam, cards in cards,
coloured keywords or "it's not just X — it's Y". Reuse the theme tokens and lib/tone.ts; status
is a labelled pill or an icon plus a tooltip, never a bare coloured dot; sections are ruled, not
boxed. Run node .agents/skills/penguin-harness-dev/reference/ai-slop/scan.mjs <what you touched>
and triage every hit. reference/ai-slop.md has the repo's own decisions and the full catalogue.
What ships with it
13 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.
- reference/ai-slop.md 5.9 KB
- reference/ai-slop/detection.md 20 KB
- reference/ai-slop/fixes.md 15 KB
- reference/ai-slop/LICENSE 11 KB
- reference/ai-slop/scan.mjs 22 KB runs code
- reference/ai-slop/taxonomy.md 20 KB
- reference/authoring.md 6.6 KB
- reference/changelog.md 2.9 KB
- reference/model-catalog.md 6.5 KB
- reference/release.md 14 KB
- reference/testing.md 8.4 KB
- reference/verification.md 7.1 KB
- scripts/polish-release-prose.mjs 4.7 KB runs code
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.
- yesterday Changed · +5 lines 31decfd414f5
- 2d ago Changed 85728ea539be
- 3d ago Changed · +1 lines e2bbb060f7b6
- 7d ago Changed · +27 lines 455ac72c15ae
- 10d ago Changed · +2 lines 10543d2202a1
- 11d ago Changed 237bab64816b
- 23d ago Changed · +2 lines be604c7ab231
- 24d ago Changed 8f916b09fea8
- 25d ago Changed · +31 lines · +31 tokens per session 9e6bcb01ae7b
- 1mo ago First seen · 160 lines · 144 tokens per session scan A f4ebc9783ae0
penguin-harness-dev is a skill published in the GitHub repository Prism-Shadow/penguin-harness (2,975 stars, last pushed today), licensed Apache-2.0. It adds 175 tokens to every session and 3,943 once invoked, about $0.0007 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-08-30.
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.
computer-history
Answer questions about what the user recently did on their computer — who contacted them, what they were working on, where they left off — by reading the local Computer History summaries and raw event streams.
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.