Commit Graph

47 Commits

Author SHA1 Message Date
Yaowei Zheng cc1be054de ci(release): publish curated release notes, never an empty body (#48)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Alice <alice@prismshadow.com>
2026-07-23 22:41:50 +08:00
Yaowei Zheng 001056f97c chore(changelog): collect unreleased entries in changelog/unreleased/ (#47)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 22:24:54 +08:00
Yaowei Zheng 8d8a9b1c34 docs(readme): Product Hunt and npm badges, refreshed subtitle (#50)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 22:23:29 +08:00
Yaowei Zheng aa6b3e710e fix(landing): make the site indexable — blog shells, sitemap, robots, share card (#51)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 22:23:06 +08:00
Zhang Jason d163cf058a docs(examples): correct self-improve.ts header — it is the scoring loop, not self-evolution (#49) 2026-07-23 22:20:34 +08:00
Yaowei Zheng f3217dca4b release: 0.1.1 with Gemini 3.6 support and two blog posts (#44)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 06:13:49 +08:00
Yaowei Zheng 7617374d58 feat(blog): a Perspectives category and three posts on harness design and agent infrastructure (#45)
Adds three bilingual posts, each grounded in primary sources rather than
secondary summaries, plus a new blog category to hold them.

Simple Harness Is All You Need — opens on the counter-intuitive result in
the Databricks coding-agent benchmark: on their cost-versus-pass-rate Pareto
chart, the highest score on the board belongs to Opus 4.8 on the minimal Pi
harness, ahead of the same model on Claude Code at maximum effort for
roughly half the cost per task. Keeps Databricks' own caution and notes that
Pi at max effort lands well below Claude Code at comparable spend. Maps the
result onto PenguinHarness's measured design: six built-in tools with no
file tools, a 72-line system prompt, a 16,000-character output cap, and
compaction into a fresh context.

The Easiest Way to Build AI Agents in 2026 — argues the cost of building an
agent has moved out of the agent and into the stack around it: LangChain to
build, LangGraph to orchestrate, LangSmith or Langfuse to observe and
evaluate, LangGraph Platform to deploy. Five products, two or three vendors,
and a person who becomes the optimization loop.

AI Infrastructure: Past, Present, and Future — the stack used to build AI
(PyTorch, vLLM, Ollama, LlamaFactory) assumes a human operator who carries
state in their head and treats errors as a starting point. It needs no
reinventing for agents; what was missing is the operating knowledge, which
the ollama, vllm and llamafactory skills encode.

Both benchmark comparisons disclose the results we lose as well as the ones
we win, and the framework post names two cases where you should pick
something else.

Also adds the Perspectives / 观点 category with a teal badge, filter chip and
both dictionaries, keeping Tech practice for the hands-on AMD walkthroughs.
2026-07-23 05:04:54 +08:00
Yaowei Zheng 9767fe60e9 docs(changelog): 0.2.0 entries for the July 22 batch (#30)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 02:06:43 +08:00
Yaowei Zheng 0f6828e57b feat: AgentHub 0.4.1 and a model-catalog refresh across every provider group (#43)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 02:02:54 +08:00
Yaowei Zheng d01d0faf7a feat(web): settings form polish — dialog layout, homepage button, no default rows, unified dropdown text (#39)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 01:07:45 +08:00
Zhang Jason 6d56ce9ccc docs(blog): align intro with self-evolving example and soften exact scores (#42) 2026-07-23 01:01:09 +08:00
Yaowei Zheng c380113e26 feat: session source in session_meta and an Automated sidebar folder (#40)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 00:58:43 +08:00
Yaowei Zheng e0bf1706b9 fix(web): keep chat dropdown menus inside the viewport on mobile (#41)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 00:58:39 +08:00
Yaowei Zheng 45b5555b57 feat(web): collapsed-rail nav with last conversation, new chat, and localized tooltips (#36)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 00:43:51 +08:00
Yaowei Zheng 9a1257b2be fix(web): render the subagent expansion below the tool call's own content (#33)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 00:43:47 +08:00
Yaowei Zheng 829ca57a43 feat(web): sidebar group polish — even hover geometry, folder open/close icons, group pinning (#35)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 00:35:41 +08:00
Yaowei Zheng 78a8b35793 feat(web): drop "none" from the offered thinking levels (#34)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 00:35:37 +08:00
Yaowei Zheng 1514cd66b2 feat(core): subagents inherit the parent session's model and thinking level (#38)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 00:27:58 +08:00
Yaowei Zheng cf27b13880 fix(web): usage chart tooltip at the pointer's lower-right + cache hit rate in the Cache Read bubble (#37)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 00:27:54 +08:00
Yaowei Zheng cabbab1c16 feat: per-model max output tokens and a conversation-time thinking level backed by agent settings (#28)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:22:41 +08:00
Yaowei Zheng 99f391f379 feat(web): group the chat sidebar by workspace with an agent-mode toggle (#26)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:22:07 +08:00
Yaowei Zheng 3806e4e441 feat(blog): grouped list, pinned posts, author/date/copy-link metadata (#20)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:22:02 +08:00
Zhang Jason 85f8b9bf1a fix(server): validate positiveIntParam and optionalDateParam inputs (#10) 2026-07-22 22:11:00 +08:00
Junhao Hu 4123721b48 docs(README): add new roadmap items in README (#12)
Co-authored-by: Yaowei Zheng <hiyouga@buaa.edu.cn>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: junhaohu <junhaohu@tencent.com>
2026-07-22 22:10:44 +08:00
Zhang Jason 7e0525af9f test(core): cover CappedTextBuffer and ToolCallIdAllocator (#9) 2026-07-22 22:06:58 +08:00
Zhang Jason 1425b2fb5f [fix(web)] localize copied task-stats line instead of hardcoded Chinese (#8) 2026-07-22 22:06:45 +08:00
Zhang Jason 81d8c0045c docs(examples): make self-improvement demo genuinely self-evolving (#29) 2026-07-22 22:04:52 +08:00
Yaowei Zheng 6d25adfef4 feat(web): letter avatars for custom model groups and agents (#31)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:04:34 +08:00
Yaowei Zheng c9cd1f9dc5 feat(core): reserved-port and API-key guardrails in the default system prompt (#24)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:04:30 +08:00
Yaowei Zheng 849f2fa6d2 feat(web): chat model picker lists key-configured models first, with a show-all expander (#22)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:04:24 +08:00
Yaowei Zheng 636b25b63f feat(skills): vLLM and Ollama deployment plus LlamaFactory fine-tuning skills (#19)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 22:04:19 +08:00
GaoYuYang cb283b6d9d [blog] add "Implementing Agent Self-Improvement with PenguinHarness on an AMD GPU" blog (#32) 2026-07-22 21:46:39 +08:00
Yaowei Zheng 0ad911aeff docs: list the built-in Skills in the READMEs and on the landing page (#23)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 21:34:39 +08:00
Yaowei Zheng cb22cd5d97 fix(web): chat links open in a new tab and long URLs/CJK wrap cleanly (#27)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 21:34:34 +08:00
Yaowei Zheng 6d9a631e62 fix(site): make the docs and landing navbars identical (#25)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 21:00:26 +08:00
Yaowei Zheng ea0549b8bb fix(llm): omit empty tools and keep tool_choice off the wire (#21)
Co-authored-by: Alice <alice@prismshadow.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-22 18:53:39 +08:00
Yaowei Zheng 62a81bc712 Ignore the local design symlink and agent instruction files (#17)
Adds /design, /AGENTS.md and /CLAUDE.md to .gitignore. None of the three
are tracked: `design` is a symlink to the penguin-harness-design
checkout and `CLAUDE.md` is a symlink to `AGENTS.md`, so until now they
only showed up as untracked noise in `git status`.
2026-07-21 22:43:25 +08:00
Zhang Jason d5c2bc001d docs(blog): local agents on AMD GPUs, with runnable examples (#14) 2026-07-21 20:20:51 +08:00
Yaowei Zheng 0e134e9c6c Share language and theme across the sites; prepare the 0.1.0 release (#13)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-21 18:00:11 +08:00
Yaowei Zheng d4faee3a1e Changelog, dev startup, README, AgentHub 0.4.0, model catalog, and landing site (#7)
Branch-length batch covering tooling, the model layer, the Web App and the public
surfaces. Highlights:

- Changelog: a per-release `changelog/<version>/` tree, grouped by the surface each
  change touches, with a root CHANGELOG.md holding one line per release.
- Dev startup: `scripts/dev-prebuild.mjs` serializes the skills+core prebuild behind a
  lock and keeps `pnpm install` current; `pnpm dev` runs server+web together.
- AgentHub 0.3.3 -> 0.4.0: OmniMessage complete payloads carry one opaque `fidelity`
  object in place of item-level `signature`/`phase`, threaded verbatim through Trace,
  replay and resume; malformed classification adapted to the new error types.
- Model layer: a model is always referenced by an explicit `(provider, model_id)` pair.
  The provider is never inferred, guessed or defaulted -- both the catalog inference and
  the unique-match config resolution are gone, and CLI, SDK, server routes and
  run_subagent all require the complete pair. Catalog gains the Qwen Token Plan, Qwen
  Pay-As-You-Go and Fireworks AI gateways, plus an expanded OpenRouter group.
- Web App: catalog preset sync and per-group speed test on the Models page, positional
  slash commands, a markdown renderer, skill-library update reminders, and a vertically
  centred draft page whose upward menus size themselves to the room available.
- Public surfaces: restructured READMEs, the penguin.ooo landing site and blog, refreshed
  benchmark results for both suites, and the demo videos playing on the landing page.

Includes the fixes from a full review of the branch: 23 confirmed findings, among them a
provider-inference bug that could send one vendor's API key to another vendor's endpoint,
and an Escape handler that destroyed the composer's contents unrecoverably.

Verified on the branch head: pnpm test (1127 passing, 7 packages), pnpm typecheck and
pnpm format:check clean, Playwright e2e 14/14.
2026-07-21 17:43:31 +08:00
Youhai abf0a2f248 fix(site): correct navigation state and anchor scrolling (#6)
- make the docs brand link return to the landing site
- keep landing navigation active state synchronized across routes and section links
- tighten sticky-header anchor scroll spacing
2026-07-20 20:39:10 +09:00
Yaowei Zheng 0eaaa54e25 Make English the repository working language (#5)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-07-20 17:45:02 +08:00
Yaowei Zheng e80cde0ea6 Skip the release job when the tag's Release already exists (#4)
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-07-20 16:51:42 +08:00
Yaowei Zheng 7f1ac9e02f Tolerate tag version equal to the in-repo version when stamping
npm version exits 1 with "Version not changed" when the tag version matches the package's current version, which failed the publish-npm job on v0.0.1. Pass --allow-same-version so stamping is a no-op in that case.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018ihk8iQuo3kv2aPjAYEPuR
2026-07-20 14:49:09 +08:00
Yaowei Zheng 4fa2eef446 Serve the site from the penguin.ooo apex domain
Set the Pages workflow BASE_PATH to / (assets 404ed on the custom domain under the /<repo>/ subpath) and point all hardcoded site links at https://penguin.ooo.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018ihk8iQuo3kv2aPjAYEPuR
2026-07-19 15:05:47 +08:00
Yaowei Zheng 45bfae6e94 Initialize repository with harness code and assets
Initial import of all source code, config, and README assets: the
packages workspace (cli, core, server, web, docs, landing, skills),
build scripts, tooling config, and CI workflows.

Includes the data-layout revision made on this branch: the local data
root defaults to ~/.penguin/data (PENGUIN_HOME still overrides; the
installer keeps its binaries in ~/.penguin), and every Agent lives
under <project>/agents/<agent>/ — path helpers, the three
agent-enumeration scans, the system prompt, built-in Skills, tests
and docs all follow the new layout.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018ihk8iQuo3kv2aPjAYEPuR
2026-07-19 14:06:53 +08:00
Yaowei Zheng 056bed7aeb Initial commit 2026-07-19 11:15:22 +08:00