GitHub - Prism-Shadow/penguin-harness: ๐Ÿง Harness for RSI. Let AI Build AI. Multi-Agent Auto-Dev Platform. Everything is Transparent.

GitHub

7 min read Original article โ†—

PenguinHarness logo

PenguinHarness

Open-source, local-first multi-agent app development platform
Fully automate building ยท optimizing ยท deploying AI applications

Download App

1000+ Models ยท Multi-Platform ยท Apache 2.0 ยท Agent Self-Evolution

npm version CI Deploy Site License: Apache-2.0 Node >= 24

Website Docs Blog

Discord X (Twitter) WeChat

PenguinHarness - Let Agents Autonomously Build Better Agents for $0.02 | Product Hunt

English | ็ฎ€ไฝ“ไธญๆ–‡

Why PenguinHarness

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

A deliberately minimal toolset over clean low-level interfaces: fewer tool calls, fewer tokens โ€” deeply tuned for open models like DeepSeek. Each harness on the model it is normally paired with, same tasks, head-to-head:

Benchmark: PenguinHarness leads the data-analysis suite and ties OpenAI Codex on coding, at a small fraction of both rivals' cost

Best accuracy on data analysis โ€” at 1/70 of Claude Code's cost.

2. โšก One sentence generates a runnable agent app

Describe what you need in one sentence. PenguinHarness builds the complete agent application โ€” scaffold, code, and run instructions, end to end:

Collect the docs from https://github.com/ericbuess/claude-code-docs and build a RAG app that answers Claude Code questions as a configuration expert, citing its sources.

And this is the finished product โ€” a docs expert with retrieval, cited sources that link to the original files, and example questions built in:

rag_en.mp4

And generating this entire RAG app burned just $0.02 (ยฅ0.2) of tokens โ€” on DeepSeek V4 Pro.

3. ๐Ÿงฌ Native agent self-evolution engine

With PenguinHarness Skills, an agent evaluates and optimizes itself: run the benchmark, find the lost points, ship version N+1 โ€” with a snapshot before every round and every request observable in the Trace view.

evo_en.mp4

Built-in plugins

Three plugin categories ship in the box (docs) โ€” skills, plus the session hooks that drive goal mode and continual learning; agents can also write and optimize their own skills:

Category Plugins
Office Productivity data-analysis, use-firecrawl, use-bento-slides, humanizer, goal, continual-learning
Software Development software-development, use-claude-code
AI App Development agent-development, model-development, skill-porting, agent-tuning

Supported Models

Model Providers
DeepSeek V4 DeepSeek, OpenRouter, Fireworks AI, SiliconFlow, TokenDance, Qwen Token Plan, Qwen Pay-As-You-Go
Kimi K3 Moonshot AI, OpenRouter, Fireworks AI, TokenDance, Qwen Pay-As-You-Go
GLM 5.3 Z.AI, OpenRouter, TokenDance
Hunyuan 3 OpenRouter
Qwen 3.8 Max Qwen Token Plan, Qwen Pay-As-You-Go, OpenRouter, TokenDance
GPT 5.6 OpenAI, OpenRouter
Gemini 3.7 Flash Google Gemini, OpenRouter
Claude 5 Anthropic, OpenRouter
Inkling OpenRouter, Fireworks AI

Each family's latest generation only โ€” the app's Models page lists every built-in preset, and any OpenAI-protocol endpoint works too: pick a preset, or point a custom endpoint at any of the 1000+ online and local models.

Requirements

Requirement Supported
OS Linux, macOS, Windows 10+
Architecture x64, arm64
Runtime bundled by the one-line installer (npm installs need Node >= 24)
Model an API key for at least one model

Installation

Start with the desktop app, or install the command line on a workstation or server. Both use the same ~/.penguin/data root and can be mixed freely:

  • ๐Ÿ–ฅ๏ธ Desktop app โ€” a double-click install: it embeds the server and opens already signed in, no terminal involved.
  • โŒจ๏ธ CLI โ€” a one-line installer (or npm / offline package) puts the penguin command on the machine; penguin web then serves the full Web experience in your browser at http://127.0.0.1:7364 (multi-session chat, agent / skill / model management, usage stats, Trace observability, evaluation center). The online installers bundle their own Node runtime โ€” unpack and run; upgrades and reinstalls never touch your data.

Note

On a CLI install, the server prints a first-login link as a framed notice on every start until a password is set โ€” open it to claim the built-in admin account and choose one. Models are configured on the in-app Models page.

๐Ÿ–ฅ๏ธ Desktop app

The full Web experience as a standalone application: it embeds the server and opens already signed in โ€” no terminal, no login page, no initial password to copy. It works on the same ~/.penguin/data root as a CLI install, so the two can be used interchangeably (a data root only ever runs one server; if a CLI-started instance is already up, the app attaches to it).

Download the desktop app from the download page. The page serves the OSS-accelerated mirror when it is reachable, and every installer is also attached to each GitHub Release.

Platform Installers
macOS 11+ dmg (Apple Silicon / Intel)
Windows 10+ installer (.exe, x64)
Linux (x64) AppImage / deb

The macOS builds are Developer ID signed and notarized, and the Windows installers are Authenticode signed, so neither platform needs a first-launch unblock. Linux is the one exception:

๐Ÿง Linux: double-clicking the AppImage does nothing

Browsers download AppImages without the execute permission. Grant it once and the app starts normally from then on (the deb package installs through the package manager and is not affected):

chmod +x penguin-desktop-linux-x86_64.AppImage

๐Ÿง๐ŸŽ Linux / macOS (online install)

curl -fsSL https://penguin.ooo/install.sh | sh
penguin web        # start the service and open http://127.0.0.1:7364

๐ŸชŸ Windows (online install, PowerShell)

irm https://penguin.ooo/install.ps1 | iex
penguin web        # start the service and open http://127.0.0.1:7364

๐Ÿ“ฆ npm (any platform, Node >= 24)

npm install -g @prismshadow/penguin-cli
penguin web        # start the service and open http://127.0.0.1:7364
๐Ÿ“ด Offline install (air-gapped machines)

Every GitHub Release attaches exactly one package per target โ€” Linux and macOS in x64 / arm64, Windows in x64, plus a runtime-less universal package โ€” and 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

๐Ÿค– CLI & SDK โ€” for agents

The same engine, scriptable โ€” made to be driven by agents (and agents building agents):

penguin config model add --provider deepseek --model-id deepseek-v4-flash-vision-exp --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);
  }
}

Roadmap

  • Public release of the benchmark suite
  • Desktop app
  • Windows support
  • Agent company and templates
  • Company-level self evolving
  • OpenShell integration (permission-governed shell)
  • More to comeโ€ฆ

Development

pnpm install && pnpm build   # build first: core's exports point at dist/
pnpm dev                     # backend + web app together (prefixed logs, deps built once)

See CONTRIBUTING.md for the full workspace guide: dev commands, quality gates, repo layout, and the changelog rule.

Contributors

Thanks to everyone who has contributed to PenguinHarness!

PenguinHarness contributors

Citation

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}
}

License

Apache-2.0 ยฉ 2026 Prism Shadow

Built with โค๏ธ by Yaowei Zheng (author of LlamaFactory), the PrismShadow AI Team, and Fable 5.