🐧 用於 RSI 的 Harness。讓 AI 建構 AI。多代理自動開發平台。所有事物皆透明。
AI 翻譯
🐧 Harness for RSI. Let AI Build AI. Multi-Agent Auto-Dev Platform. Everything is Transparent.
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Open-source, local-first multi-agent app development platform Fully automate building · optimizing · deploying AI applications
With LangChain, you build agents by hand — at 1× speed. With PenguinHarness, agents build agents — at 100×.
PenguinHarness runs on your computer or server and automates the agent app lifecycle from creation and evaluation to optimization and deployment. Three reasons define the platform:
1. 🏆 Outstanding results at tens of times less cost檢視完整 README ↗PenguinHarness is an open-source framework for agent self-evolution (recursive self-improvement, RSI). The model stays fixed; the harness evolves: prompts, Skills, tools and hooks. It runs on your computer or server as a desktop app, a Web App, a CLI and an SDK.
Pick an algorithm, pick a Benchmark, and an agent improves another agent round by round. Every candidate is a new version, snapshotted before it changes, and every score lands in the Evaluation Center.
| Toolkit | Algorithm |
|---|---|
default-rsi-toolkit | Trial, reflect, improve: one hypothesis and one change per round |
opro-rsi-toolkit | OPRO: new instructions from the history of scored ones |
ape-rsi-toolkit | APE: candidate instructions induced from examples |
ace-rsi-toolkit | ACE: lessons from Traces curated into a playbook |
awm-rsi-toolkit | AWM: workflows induced from successful runs |
skilladam-rsi-toolkit | SkillAdam: evolving issue tracker and adaptive Skill edit budget |
skillopt-rsi-toolkit | SkillOpt: bounded Skill edits, score-based selection and cross-epoch reflection |
openskill-rsi-toolkit | OpenSkill: external research and independent virtual tests before frozen-State evaluation |
trace-rsi-toolkit | TRACE: skill-bank evolution from contrasting trajectories, with consistency measurement |
Every new Project includes seventeen Benchmarks, run as Harbor tasks in Docker: PenguinHarness Benchmark Sec A to Sec E (from rag-bench-essential, DeepSWE, AutomationBench, Terminal-Bench-Science and Terminal-Bench) and a Train/Test pair for each of six GDPEVO domains: CRM, ERP, Finance, Healthcare, Legal and DataAnalysis. More are in penguin-harness-benchmark.
Demo: a decision agent is evaluated, revises its working method once, and is retested on the same model. Its score goes from 84 to 100, and the cost of every run is on screen.
https://github.com/user-attachments/assets/7925b4b5-db78-4e00-b209-89deca394e34
Build a legal review agent with a simple workspace where users upload contracts, track the review, and download a report with risky clauses, explanations, and suggested revisions.
The result: a legal review app. Users upload contracts, follow each file's review, and download a report of risky clauses with explanations and suggested revisions. Five sample reviews cost $0.0423 in model calls.
https://github.com/user-attachments/assets/28c0ef95-1dfa-47be-bad0-7326ccdf4e7c
Replies can also carry UI: choices, forms, steps, Mermaid diagrams and live widgets (A2UI).
Each harness on the model it is usually paired with, on the same tasks:
Agents can also write and optimize their own Skills (docs).
| Category | Plugins |
|---|---|
| Agent Self-Evolution | default-rsi-toolkit, opro-rsi-toolkit, ape-rsi-toolkit, ace-rsi-toolkit, awm-rsi-toolkit, skilladam-rsi-toolkit, skillopt-rsi-toolkit, openskill-rsi-toolkit, trace-rsi-toolkit |
| Office Productivity | a2ui, data-analysis, use-firecrawl, browser-automation, use-bento-slides, humanizer, goal, continual-learning, agent-company, penguin-support |
| Software Development | software-development, use-claude-code |
| AI App Development | agent-development, agent-evaluation, model-development, skill-porting |
These are the model families we focus on supporting. The app's Models page lists each variant and its providers.
| Model | Providers |
|---|---|
| GPT 6.1 | OpenAI, OpenRouter |
| Claude 5.5 | Anthropic, OpenRouter, OpenCode Go |
| Gemini 4 | Google Gemini, OpenRouter, Penguin Go, OpenCode Go |
| Grok 4.7 | OpenRouter, OpenCode Go |
| Qwen3.8 Max | Qwen Token Plan, Qwen Pay-As-You-Go, OpenRouter, TokenDance, OpenCode Go |
| Model | Providers |
|---|---|
| DeepSeek V4.1 | DeepSeek, OpenRouter, Fireworks AI, Atlas Cloud, TokenDance, Penguin Go, OpenCode Go, Qwen Token Plan, Qwen Pay-As-You-Go, ModelScope |
| Kimi K3 | Moonshot AI, OpenRouter, Fireworks AI, TokenDance, OpenCode Go, Qwen Pay-As-You-Go |
| GLM 5.3 | Z.AI, OpenRouter, TokenDance, OpenCode Go |
| Hunyuan 4 | OpenRouter, TokenDance, OpenCode Go |
| MiMo v2.6 | OpenRouter, TokenDance, OpenCode Go |
OpenCode Go offers Claude Haiku 5.5; Fable 5.1, Opus 5.5 and Sonnet 5.5 are available through Anthropic and OpenRouter. Hunyuan 4 uses hy4-preview.
Custom OpenAI-protocol endpoints also work, covering 1000+ online and local models.
Download the installer from penguin.ooo/download: macOS 11+ (dmg), Windows 10+ (exe) or Linux x64 (AppImage, deb). The app opens signed in and needs no terminal.
| Platform | Install command |
|---|---|
| Linux / macOS | curl -fsSL https://penguin.ooo/install.sh | sh |
| Windows (PowerShell) | irm https://penguin.ooo/install.ps1 | iex |
| npm (Node >= 24) | npm install -g @prismshadow/penguin-cli |
Then run penguin web. It serves the Web App at http://127.0.0.1:7364 and prints a first-login link until a password is set; models are configured on the Models page. The desktop app and the CLI share ~/.penguin/data.
docker run -d --name penguin -p 127.0.0.1:7364:7364 -v penguin-data:/data hiyouga/penguinharness:0.2.18
docker logs penguin # the first-login link, openable as it stands on this machine
The image serves on port 7364 with its data on the /data volume, for linux/amd64 and linux/arm64; latest follows changes to the image's runtime or build inputs on main, and each release is also tagged with its version. The example listens on loopback only. For a network-facing deployment, Compose and upgrades, see the Docker quickstart.
Every GitHub Release attaches exactly one package per target — Linux and macOS in x64 / arm64, Windows in x64, plus a runtime-less universal package. The same file serves online and offline installation. Each package seals the program payload, its SHA256 checksum and the platform's installer. Download the one file on a networked machine, copy it to the target, extract once and run the bundled installer — no network, no separate checksum file to carry (the sealed SHA256 is always verified).
Linux (on arm64, use penguin-linux-arm64.tar.gz):
mkdir penguin-install
tar -xzf penguin-linux-x64.tar.gz -C penguin-install
./penguin-install/install.sh
macOS (Apple silicon shown; on Intel, use penguin-darwin-x64.tar.gz):
mkdir penguin-install
tar -xzf penguin-darwin-arm64.tar.gz -C penguin-install
./penguin-install/install.sh
Windows (unzip, then double-click install.cmd — or run it in PowerShell):
Expand-Archive penguin-win32-x64.zip -DestinationPath penguin-install
cd penguin-install
.\install.cmd
PenguinHarness Browser lets agents drive the tabs you hand them in your own Chrome.
The same engine, scriptable, and made to be driven by agents:
penguin config model add --provider deepseek --model-id deepseek-flash --api-key sk-... --set-default
penguin run -m "Create hello.txt containing Hello, Penguin" # one-shot task
penguin chat # interactive REPL (/compact, /clear, /exit, Ctrl-C to interrupt)
penguin server # headless service (same API the Web App uses)
import { createAgent, isCompleteModelMessage, userText } from "@prismshadow/penguin-core";
const agent = await createAgent({ agentId: "default_agent" });
const session = await agent.createSession({ workspaceDir: process.cwd() });
for await (const output of session.run([userText("Create hello.txt containing hi")], {
approve: async () => "allow", // per-tool-call approval
})) {
if (isCompleteModelMessage(output) && output.payload.type === "text") {
console.log(output.payload.text);
}
}
pnpm install && pnpm build # build first: core's exports point at dist/
pnpm dev # backend + web app together (prefixed logs, deps built once)
Working on this repository with a coding agent: its development Skills are in .agents/skills/ (penguin-harness-dev, penguin-harness-frontend, penguin-harness-manual-test, penguin-harness-writing). Claude Code loads them with no install, through the .claude → .agents symlink; for another agent, link or copy .agents/skills/* into the directory it reads Skills from.
See CONTRIBUTING.md for the full workspace guide: dev commands, quality gates, repo layout, and the changelog rule.
Thanks to everyone who has contributed to PenguinHarness!
If you use PenguinHarness in your research, please cite:
@software{penguinharness2026,
author = {{PrismShadow Team}},
title = {PenguinHarness: Efficient Self-Improving Harness for Everyone},
year = {2026},
url = {https://github.com/Prism-Shadow/penguin-harness},
license = {Apache-2.0}
}
This repo benefits from:
See THIRD-PARTY-NOTICES.md for their licenses.
Apache-2.0 © 2026 Prism Shadow
Organizations: PrismShadow AI, Qinghe Dynamic
Maintainers:
Built with ❤️