<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: sun young</title>
    <description>The latest articles on DEV Community by sun young (@sun_young_517829fc09d0c05).</description>
    <link>https://dev.to/sun_young_517829fc09d0c05</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4059883%2F4d6b5d54-c8e2-437a-839e-aceeb57adb90.jpg</url>
      <title>DEV Community: sun young</title>
      <link>https://dev.to/sun_young_517829fc09d0c05</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sun_young_517829fc09d0c05"/>
    <language>en</language>
    <item>
      <title>open-kritt: a Chinese translation of the self-hosted AI vulnerability research tool</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:57:03 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/open-kritt-zhong-wen-wen-dang-yi-jiu-xu-2g08</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/open-kritt-zhong-wen-wen-dang-yi-jiu-xu-2g08</guid>
      <description>&lt;h1&gt;
  
  
  open-kritt: a Chinese translation of the self-hosted AI vulnerability research platform
&lt;/h1&gt;

&lt;p&gt;The original &lt;code&gt;Kritt-ai/open-kritt&lt;/code&gt; repository has 2284 stars and is written in JavaScript. It is an open-source, self-hosted platform for AI-driven security and vulnerability research. The project's own one-line description is: "Open-source, self-hosted AI vulnerability research tool that orchestrates agents to find and validate security issues in code."&lt;/p&gt;

&lt;p&gt;A Chinese translation of that project now exists at &lt;code&gt;yangshun2005/open-kritt-cn&lt;/code&gt;. It was published on 2026-10-14. The Chinese version is new and currently has no stars of its own; the 2284 figure belongs to the original project only.&lt;/p&gt;

&lt;p&gt;This article covers what the tool does, why the Chinese documentation matters, and how to get it running. Everything below is drawn from the translated README and the original project's documentation.&lt;/p&gt;

&lt;h2&gt;
  
  
  The problem open-kritt is trying to solve
&lt;/h2&gt;

&lt;p&gt;Point a language model at an entire repository and ask it to find vulnerabilities, and the results are usually poor. The signal-to-noise ratio is bad, findings are hard to verify, and there is no consistent way to rank them.&lt;/p&gt;

&lt;p&gt;open-kritt takes a different approach. Instead of one large prompt against a whole codebase, it breaks research into small, explicit tasks. Multiple AI agents execute those tasks in parallel. Their outputs are then merged into findings that are deduplicated, ranked, and verifiable.&lt;/p&gt;

&lt;p&gt;The project is aimed at security researchers and security-conscious developers. The stated goal is to let users control their own prompts, workflows, model providers, and infrastructure.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the platform actually does
&lt;/h2&gt;

&lt;p&gt;From the README, the core capabilities are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Build workflows&lt;/strong&gt; — chain focused prompts into reusable security research playbooks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Run scans&lt;/strong&gt; — analyze remote or local repositories and their dependencies using Codex, Claude Code, or Grok Build.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Validate findings&lt;/strong&gt; — use post-scripts to verify issues, build proof-of-concepts, and generate reports.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Export scan results&lt;/strong&gt; — package normalized findings, structured data, post-processing output, reports, and PoCs into a single ZIP archive with a shareable manifest. Completed scans produce a full export; stopped or failed scans that still contain findings produce a clearly marked partial export. Reports and PoC source influenced by an attacker are preserved as plain text.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rank results&lt;/strong&gt; — apply custom severity rankers, a unified finding schema, and automatic deduplication.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bring your own model access&lt;/strong&gt; — use Codex login, or connect via OpenAI, Anthropic, DeepSeek, OpenRouter, or xAI.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The project states it comes out of real security research. The Kritt team, under the researcher name &lt;strong&gt;Blockian&lt;/strong&gt;, reports earning over &lt;strong&gt;$1,500,000 in bug bounties&lt;/strong&gt; (linked profiles on Immunefi, HackenProof, blockian.xyz, and @Kritt_AI on X). open-kritt is described as the open-source distillation of the internal tooling behind that work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a Chinese translation is useful here
&lt;/h2&gt;

&lt;p&gt;The original documentation is in English. For Chinese-speaking developers, that is a real barrier — not because the concepts are impossible to follow, but because setup instructions, threat-model notes, and configuration details are exactly the kind of text where a misread line costs an hour.&lt;/p&gt;

&lt;p&gt;The Chinese version is not just a machine-translated dump. It has two layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;A Chinese quick-start guide&lt;/strong&gt; at the top, explicitly marked as supplementary material and &lt;em&gt;not&lt;/em&gt; part of the original README. Its stated purpose is to let you get the project running without reading the whole document.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A full Chinese translation of the original README body&lt;/strong&gt;, which the page says aims to stay faithful to the source.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The translation page also invites issues or pull requests for inaccuracies. That is a reasonable posture for a translated technical document, since terminology choices ("finding", "post-script", "severity ranker") are not always obvious.&lt;/p&gt;

&lt;p&gt;The practical value is straightforward: a Chinese-speaking developer can read the quick-start, understand the prerequisites and the security warnings, and get the stack running, without first parsing an English document about a security tool where precision matters.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick start
&lt;/h2&gt;

&lt;p&gt;Prerequisites: Git, Docker with Docker Compose, and Node.js 20 or newer. The repository ships its own CLI, so there is no installation step.&lt;/p&gt;

&lt;p&gt;Clone and enter the directory:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/Kritt-ai/open-kritt
&lt;span class="nb"&gt;cd &lt;/span&gt;open-kritt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Run setup, which walks you through available login methods and API key configuration:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;./kritt setup
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Start the stack:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;./kritt start
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then open &lt;code&gt;http://localhost:5173&lt;/code&gt; in a browser.&lt;/p&gt;

&lt;p&gt;On a server without a browser or desktop, keep the stack running and open another shell:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;./kritt-headless
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Environment requirements
&lt;/h2&gt;

&lt;p&gt;The translated README is explicit about some requirements and silent about others. Being precise here matters:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Operating system:&lt;/strong&gt; the original does not specify supported systems. It only notes the stack can run on a server without a browser or desktop.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hardware:&lt;/strong&gt; not specified in the original.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dependencies:&lt;/strong&gt; Git, Docker (with Docker Compose), Node.js 20 or newer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Version requirements:&lt;/strong&gt; Node.js 20+; other dependency versions are not stated in the original.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model access:&lt;/strong&gt; at least one method is required — Codex login, or a connection via OpenAI, Anthropic, DeepSeek, OpenRouter, or xAI.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Network:&lt;/strong&gt; the translation adds a general note that in mainland China network environments, downloading Docker images or npm dependencies may require switching to a mirror or accelerated source. This is flagged as a general tip and not part of the original text.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Things that will bite you
&lt;/h2&gt;

&lt;p&gt;The translated quick-start calls out several issues that are easy to miss and expensive to get wrong.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No application-layer authentication by default.&lt;/strong&gt; The default port binds to &lt;code&gt;127.0.0.1&lt;/code&gt;, and the backend does not include application authentication. The stack must stay private. Do not expose it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Agents run as root.&lt;/strong&gt; Agents with tools enabled run as root inside one-shot job containers. They have a writable copy of the repository and direct internet access, which is needed to install tools, compile targets, run tests, and build PoCs. Before scanning untrusted code, run on a dedicated Docker host or VM, and read the threat model documentation first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Model credentials are mandatory.&lt;/strong&gt; You must configure at least one model access method, either login or API key. &lt;code&gt;./kritt setup&lt;/code&gt; guides you through it. &lt;code&gt;GITHUB_TOKEN&lt;/code&gt; is optional and only needed for accessing private GitHub repositories.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The headless CLI has limits.&lt;/strong&gt; &lt;code&gt;./kritt-headless&lt;/code&gt; does not display the content of vulnerability findings in the terminal. It shows scan status, phases, and failure reasons only.&lt;/p&gt;

&lt;h2&gt;
  
  
  A note on scope
&lt;/h2&gt;

&lt;p&gt;The Chinese translation covers the README and adds a practical quick-start. It does not change the software. The AGPL-3.0 license, the JavaScript codebase, and the 2284 stars all belong to the original project at &lt;code&gt;Kritt-ai/open-kritt&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;If you are a Chinese-speaking security researcher or developer who has been putting off trying open-kritt because of the English docs, the translation removes that specific excuse. The setup path is short: clone, &lt;code&gt;./kritt setup&lt;/code&gt;, &lt;code&gt;./kritt start&lt;/code&gt;. The security warnings are the part worth reading carefully before you point it at anything you do not trust.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/open-kritt-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/open-kritt-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>agents</category>
      <category>llm</category>
    </item>
    <item>
      <title>headcount: 172 skills organized as a company org chart, now with a Chinese README</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:56:22 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/headcount-172-skills-organized-as-a-company-org-chart-now-with-a-chinese-readme-423o</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/headcount-172-skills-organized-as-a-company-org-chart-now-with-a-chinese-readme-423o</guid>
      <description>&lt;p&gt;There is a specific kind of mess that shows up once you have more than about thirty prompts saved. You stop remembering what you have. Two prompts do nearly the same thing and you can't tell which one is current. You paste a whole "mega-prompt" into a session because you can't be bothered to find the right one, and half of it is irrelevant to the task.&lt;/p&gt;

&lt;p&gt;headcount is one answer to that. It arranges agent skills as a company: one chief executive, 16 departments, 172 skills. Each department installs as its own plugin, so a project loads only what it needs. Skills are addressed as &lt;code&gt;department:skill&lt;/code&gt;, which means names never collide across departments.&lt;/p&gt;

&lt;p&gt;The original repository is &lt;a href="https://github.com/cbrock84/headcount" rel="noopener noreferrer"&gt;cbrock84/headcount&lt;/a&gt;, 2047 stars, written in Markdown, MIT licensed. A Chinese translation of the README now exists at &lt;a href="https://github.com/yangshun2005/headcount-cn" rel="noopener noreferrer"&gt;yangshun2005/headcount-cn&lt;/a&gt;. That's what this post is mostly about, because the translation does something a plain translation usually doesn't.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the project actually is
&lt;/h2&gt;

&lt;p&gt;The official one-liner: an agent organization structured as a company — 15+ departments, 125+ skills, each independently installable, citing the standards and regulators that settle the question. Runs in Claude Code and ChatGPT.&lt;/p&gt;

&lt;p&gt;The README's own numbers are 16 departments and 172 skills. The one-liner says 15+ and 125+. Both appear in the source material; I'm not going to reconcile them, and you shouldn't assume the smaller number is the stale one — the README's department tables are the more granular source.&lt;/p&gt;

&lt;p&gt;The structural idea is the part worth understanding. Most prompt libraries are a flat list. headcount is a tree with an install boundary at every branch. The CEO office sits at the top with 7 skills, and the departments below it each carry their own skills plus an agent charter in &lt;code&gt;.claude/agents/&lt;/code&gt;. That charter is what lets a department be delegated to as a subagent with its own exclusive write scope — the producer/auditor split the &lt;code&gt;agent-hierarchy&lt;/code&gt; skill describes.&lt;/p&gt;

&lt;p&gt;Addressing is namespaced. &lt;code&gt;security:threat-modeling&lt;/code&gt;, &lt;code&gt;finance:unit-economics&lt;/code&gt;, &lt;code&gt;demand-generation:landing-page-cro-expert&lt;/code&gt;. You can ask in natural language and let matching load the skill, or you can call it by name when you want a specific perspective:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/finance:financial-modeling
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Install, and the constraint that shapes everything
&lt;/h2&gt;

&lt;p&gt;Claude Code:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;/plugin marketplace add cbrock84/headcount
/plugin install security@headcount
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then add departments as you need them — &lt;code&gt;/plugin install it-operations@headcount&lt;/code&gt;, and so on.&lt;/p&gt;

&lt;p&gt;ChatGPT and Codex use the same repository. You add it as a plugin marketplace (ChatGPT reads the manifest at &lt;code&gt;.agents/plugins/marketplace.json&lt;/code&gt;), or you copy the departments you want into your own project's &lt;code&gt;.agents/skills/&lt;/code&gt; directory. The skill files are identical on both sides; only the manifests differ, and both manifests are generated from the same directory tree, so a fix lands in both at once. That's what &lt;code&gt;AGENTS.md&lt;/code&gt; is about.&lt;/p&gt;

&lt;p&gt;Here is the constraint that explains the whole design. On the ChatGPT/Codex side, skill descriptions share a context budget of roughly 8000 characters. All 16 departments together come to roughly 50000. Installing only the departments you'll actually use isn't tidiness — it's the only thing that fits. If you've ever wondered why a plugin system would bother with per-department granularity instead of one big install, that ratio is the answer.&lt;/p&gt;

&lt;p&gt;Installing a department doesn't touch your project. It adds skills to the assistant. It doesn't write to your repo, add dependencies, or run anything on its own.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the Chinese version adds
&lt;/h2&gt;

&lt;p&gt;The Chinese repository is a translation of the original README, dated 2026-10-14, with the original preserved as &lt;code&gt;README_en.md&lt;/code&gt;. Stars: zero, as of writing. It was published today. I'm not going to pretend otherwise.&lt;/p&gt;

&lt;p&gt;The interesting part is that it isn't only a translation. The page carries two clearly separated layers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;中文快速上手&lt;/strong&gt; section at the top, explicitly marked as supplementary orientation material, not part of the original. It answers the questions a Chinese-speaking developer hits in the first five minutes: what problem does this solve, what's the shortest path to running it, what are the requirements, what are the traps.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;translated README body&lt;/strong&gt; below it, which the page states aims to stay faithful to the original.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That split matters more than it sounds. A faithful translation of headcount's README gives you the department tables and the install commands, but it doesn't tell you that the ChatGPT-side 8000-character budget is why you should install two departments instead of sixteen. The original README does mention the budget — but it's buried in a section you'd only read after you'd already formed the wrong mental model. The Chinese page pulls it forward into the orientation section, along with a note that installing a department won't modify your repository, and a note that the original doesn't specify OS, hardware, or version requirements.&lt;/p&gt;

&lt;p&gt;That last one is a small honesty signal worth pointing out. A lot of translated READMEs quietly fill gaps with plausible-sounding requirements. This one writes 原文未说明 — "not stated in the original" — and moves on. Same for the domestic-network section: it says the original doesn't mention mirrors or accelerated downloads, rather than inventing a mirror that may not exist.&lt;/p&gt;

&lt;p&gt;For a Chinese-speaking developer, the practical difference is the entry cost. The install path is three commands and a natural-language question, and the orientation section gets you there without reading a full README in a second language. The &lt;code&gt;department:skill&lt;/code&gt; addressing scheme, the auto-loading behavior, and the "which departments should I install first" question are all answered before the translated body starts.&lt;/p&gt;

&lt;p&gt;The page also invites issues or PRs for translation inaccuracies, which is the right posture for a translated doc that will drift as the upstream changes.&lt;/p&gt;

&lt;h2&gt;
  
  
  The part I'd actually evaluate
&lt;/h2&gt;

&lt;p&gt;The skills themselves are prose. Markdown files describing how a specialist should approach a problem. Whether &lt;code&gt;security:threat-modeling&lt;/code&gt; produces something useful depends on the model you're running it against and the specifics of your system, and I haven't tested it against a real threat model. My sample is zero. Treat the department tables as a map of what's covered, not as evidence of output quality.&lt;/p&gt;

&lt;p&gt;What is verifiable is the structure. Namespaced addressing that prevents collisions. Per-department install boundaries that respect a real context limit. Agent charters that give a department an exclusive write scope when delegated. And a documentation layer that's been made navigable for a second audience without rewriting the source.&lt;/p&gt;

&lt;p&gt;If you've got a flat prompt folder that's gotten out of hand, the install is cheap and reversible — you add a marketplace, install one department, and see whether the matching actually fires on your questions. If you read Chinese, start with the Chinese page; the orientation section is the fastest route to a working setup. If you don't, the original README and &lt;code&gt;docs/GETTING-STARTED.md&lt;/code&gt; cover the same ground.&lt;/p&gt;

&lt;p&gt;One thing to watch: the Chinese repo is a translation, so it tracks upstream with a lag. The translation date is 2026-10-14. If the original adds departments after that, the Chinese page won't have them until someone updates it.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/headcount-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/headcount-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>agents</category>
      <category>llm</category>
    </item>
    <item>
      <title>harnessrouter: a Chinese translation of the agent harness router, and why the docs matter more than the codeaiopensourceagentsllm</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:55:40 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/harnessrouter-a-chinese-translation-of-the-agent-harness-router-and-why-the-docs-matter-more-than-2c9c</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/harnessrouter-a-chinese-translation-of-the-agent-harness-router-and-why-the-docs-matter-more-than-2c9c</guid>
      <description>&lt;p&gt;The original &lt;code&gt;HarnessRouter/harnessrouter&lt;/code&gt; repo has 2993 stars and a README written in English. The Chinese version, &lt;code&gt;yangshun2005/harnessrouter-cn&lt;/code&gt;, was published today with zero stars. That asymmetry is the whole point of this article.&lt;/p&gt;

&lt;p&gt;If you have ever tried to evaluate an agent infrastructure project from a non-English-speaking region, you know the failure mode: you skim the README, you understand maybe 70% of it, you miss the sentence that says "do not add &lt;code&gt;--user&lt;/code&gt;", and you spend an afternoon debugging something that was documented in plain sight. Translation is not glamorous work. It is, however, the difference between a project being adoptable and being a curiosity.&lt;/p&gt;

&lt;h2&gt;
  
  
  What HarnessRouter actually is
&lt;/h2&gt;

&lt;p&gt;Strip away the positioning language and here is the mechanism: HarnessRouter is an infrastructure layer that turns existing agent harnesses — Codex, Claude Code, Hermes, PI, DSH, and others — into pluggable backends behind a single API.&lt;/p&gt;

&lt;p&gt;The problem it addresses is real. If you are building an agent product, you probably do not want to write separate integration code for every harness you might want to support. You want to run a task, get a result, and swap the underlying harness when cost or latency demands it. HarnessRouter implements the Unified Harness Protocol (UHP), an open standard, and exposes an OpenAI Responses-compatible API on top. It handles persistent sessions, streaming progress, files, artifacts, cancellation, and structured failure reporting.&lt;/p&gt;

&lt;p&gt;The official one-liner describes it as the self-hosted, Apache-2.0 edition of a unified interface for agent harnesses. Your keys, your infrastructure.&lt;/p&gt;

&lt;p&gt;That last part matters. There is no bundled model and no trial key. You bring a provider API key. The community edition runs on your own hardware.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Chinese version: what it adds
&lt;/h2&gt;

&lt;p&gt;The &lt;code&gt;harnessrouter-cn&lt;/code&gt; repo is a translation of the original project documentation. The README itself states the translation date as 2026-10-14 and links to &lt;code&gt;README_en.md&lt;/code&gt; as the source. It carries the same license, Apache-2.0, and the original project's star count is listed as 2993.&lt;/p&gt;

&lt;p&gt;The structure is worth noting because it is not a pure translation. The repo splits its content into two distinct layers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;A Chinese quick-start guide&lt;/strong&gt; at the top, explicitly labeled as supplementary material and not part of the original documentation. Its stated purpose is to let you get the project running without reading the full README.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The translated README body&lt;/strong&gt; below, which aims to stay faithful to the original text.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That separation is a small design decision with outsized consequences. Machine-translated technical documentation tends to blur the line between "what the original says" and "what a translator inferred." By marking the quick-start as non-original, the repo makes it possible to trust the translated body as a reference while still using the quick-start as a shortcut. If the translation is wrong somewhere, you can file an issue or a PR — the repo says so explicitly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting it running
&lt;/h2&gt;

&lt;p&gt;The quick-start path in the Chinese repo is short. You need Docker, roughly 4 GB of disk space, and a provider API key.&lt;/p&gt;

&lt;p&gt;Start the container:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; harnessrouter &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-p&lt;/span&gt; 127.0.0.1:3000:3000 &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-v&lt;/span&gt; harnessrouter:/data &lt;span class="se"&gt;\&lt;/span&gt;
  harnessrouter/harnessrouter
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then watch the logs, because first boot installs the enabled harness CLIs:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker logs &lt;span class="nt"&gt;-f&lt;/span&gt; harnessrouter
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Wait for this line:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[harnessrouter] ready on :3000
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;At that point you can stop following the logs with Ctrl+C. The container keeps running.&lt;/p&gt;

&lt;p&gt;Open &lt;code&gt;http://localhost:3000&lt;/code&gt; and log in with the default credentials: username &lt;code&gt;harnessrouter&lt;/code&gt;, password &lt;code&gt;harnessrouter&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Then go to &lt;strong&gt;Bring Your Own Key&lt;/strong&gt; in the sidebar, click &lt;strong&gt;Add Integration&lt;/strong&gt;, pick a provider, give it a name, and paste the API key. Models supported by that provider become available in the console.&lt;/p&gt;

&lt;p&gt;That is the whole onboarding flow. No account creation, no hosted dependency.&lt;/p&gt;

&lt;h2&gt;
  
  
  The gotchas the Chinese docs call out
&lt;/h2&gt;

&lt;p&gt;This is where the translation earns its keep. The Chinese quick-start has a section on common pitfalls, and the items in it are exactly the kind of thing that gets lost when you are reading a second language at speed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You must supply your own provider API key.&lt;/strong&gt; No HarnessRouter account, no bundled model, no trial key. If you arrive expecting a free tier, you will be confused for a while.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;First boot is slow.&lt;/strong&gt; It installs harness CLIs. If the console is not responding or a harness seems to be missing, check the logs for &lt;code&gt;backends available:&lt;/code&gt; and for warnings about backends that were &lt;code&gt;requested but not installed&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do not add &lt;code&gt;--user&lt;/code&gt;.&lt;/strong&gt; The entrypoint and Runner need root to manage per-session users. This is a security-model decision, not an oversight, and getting it wrong produces confusing permission failures.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Change the default password.&lt;/strong&gt; Log in, go to Profile, change it. Until you do, keep the instance bound to localhost. Saving the change briefly restarts the console and logs out other browser sessions.&lt;/p&gt;

&lt;p&gt;None of these are exotic. All of them are the kind of detail that costs you an hour if you skim past it in a language you are not fully comfortable in.&lt;/p&gt;

&lt;h2&gt;
  
  
  A note on what the Chinese docs do not cover
&lt;/h2&gt;

&lt;p&gt;The Chinese repo is honest about its gaps. The environment requirements section says the original does not specify an operating system — only the Docker path is given. Version requirements are likewise unstated. On the question of network conditions in mainland China, the translation notes that the original says nothing about mirror sources or download acceleration, and suggests that users may want to consider switching Docker registry mirrors on their own.&lt;/p&gt;

&lt;p&gt;I would rather see a documentation project say "the original does not cover this" than invent an answer. The former is useful. The latter is a trap.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why translated documentation is infrastructure
&lt;/h2&gt;

&lt;p&gt;There is a tendency to treat a translation repo as a nice-to-have. The code is the code, after all. But for a self-hosted project with a security model that involves running agent processes as per-session users, the documentation &lt;em&gt;is&lt;/em&gt; part of the deployment surface. Misunderstanding it has consequences.&lt;/p&gt;

&lt;p&gt;The Chinese version lowers the barrier for Chinese-speaking developers in a concrete way: it gives them a quick-start path that skips the full README, a faithful translation of the reference material, and an explicit list of the mistakes that are easy to make. The original project has 2993 stars and a Python codebase under Apache-2.0. The translation repo has zero stars as of today, which is expected — it was published today.&lt;/p&gt;

&lt;p&gt;If you work in Chinese and have been meaning to evaluate HarnessRouter, the translated repo is the faster entry point. If you find a translation error, the repo asks for an issue or PR, which is the correct way for a documentation fork to improve.&lt;/p&gt;

&lt;p&gt;The original is at &lt;code&gt;HarnessRouter/harnessrouter&lt;/code&gt;. The Chinese version is at &lt;code&gt;yangshun2005/harnessrouter-cn&lt;/code&gt;.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/harnessrouter-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/harnessrouter-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>agents</category>
      <category>llm</category>
    </item>
    <item>
      <title>genoffice: a Chinese translation of the open-source AI Office suite</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:53:49 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/genoffice-a-chinese-translation-of-the-open-source-ai-office-suiteaiopensourceagentsllm-39hh</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/genoffice-a-chinese-translation-of-the-open-source-ai-office-suiteaiopensourceagentsllm-39hh</guid>
      <description>&lt;p&gt;The original &lt;code&gt;genspark-ai/genoffice&lt;/code&gt; repository has 9580 stars, is written in TypeScript, and ships under Apache-2.0. The Chinese version, &lt;code&gt;yangshun2005/genoffice-cn&lt;/code&gt;, was published today. It has zero stars, which is normal for a repository that is a few hours old, and I'm not going to pretend otherwise.&lt;/p&gt;

&lt;p&gt;What it is: a translated documentation fork. The code is the upstream code. What changed is the README — and, more usefully, a short "中文快速上手" section prepended to it that the original does not have.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a translated README is not a trivial thing
&lt;/h2&gt;

&lt;p&gt;For an English-speaking developer, the genoffice README is a normal README. You skim the feature list, find the Releases link, download the right installer, and you're running in five minutes.&lt;/p&gt;

&lt;p&gt;For a Chinese-speaking developer, the same document has a specific failure mode that isn't about vocabulary. It's about where the operational details sit. The upstream README is organized as a product page: positioning first, feature bullets second, install links somewhere in the middle, and the CLI/MCP/agent-skill material further down. If you're evaluating whether this thing can do a job for you, you read top to bottom and hope the answer is in there.&lt;/p&gt;

&lt;p&gt;The Chinese version inverts that. The top of the page is a short section labeled as a supplement, explicitly marked as &lt;em&gt;not&lt;/em&gt; part of the original text, and it answers the questions you'd otherwise have to reconstruct:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What is this, and what problem does it solve&lt;/li&gt;
&lt;li&gt;The shortest path to a running app&lt;/li&gt;
&lt;li&gt;Environment requirements&lt;/li&gt;
&lt;li&gt;Known gotchas&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's the actual value. Not "the README is now in Chinese." It's that someone read the whole thing, figured out which parts a new user needs first, and put those parts at the top.&lt;/p&gt;

&lt;h2&gt;
  
  
  What genoffice actually does
&lt;/h2&gt;

&lt;p&gt;The core claim, from the README: it opens and saves native &lt;code&gt;.docx&lt;/code&gt;, &lt;code&gt;.xlsx&lt;/code&gt;, and &lt;code&gt;.pptx&lt;/code&gt; files, edits PDF, Markdown, and HTML, and puts an AI agent next to each document. Not a chat sidebar — an editor that reads the file, makes changes, and shows you what changed.&lt;/p&gt;

&lt;p&gt;The detail that matters most is byte-level preservation. Only the parts you edited get rewritten. Everything else in the file is kept byte for byte, so the document still opens correctly in Word, Excel, and PowerPoint. This is the difference between "an AI tool that exports to Office format" and "an AI tool that edits your Office files." Most tools in this space do the former and call it the latter.&lt;/p&gt;

&lt;p&gt;The other structural choices:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Edits are reviewable.&lt;/strong&gt; Changes appear as tracked changes and diffs, with one-click rollback. Spreadsheets use live formulas rather than pasted values. Slides and pages are generated on a canvas and stay fully editable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Local-first.&lt;/strong&gt; Opening, editing, saving, and converting happen on your machine. PDF → Word / Excel / PowerPoint, Markdown → Word, and HTML → Word all run locally. Only AI calls leave the machine, and they go to whichever provider you picked.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Search by content.&lt;/strong&gt; The home screen runs a local SQLite index over &lt;code&gt;.docx&lt;/code&gt;, &lt;code&gt;.xlsx&lt;/code&gt;, &lt;code&gt;.pptx&lt;/code&gt;, PDF, Markdown, and HTML files — names, folders, and full text, with CJK support. Optionally, top results get reranked by TypeSafe Jev (System One judgment model) so the file that answers your question sorts first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ask AI across documents.&lt;/strong&gt; Bookmark a set of documents and the home screen's Ask AI answers questions across them, citing the source file for each claim so you can open it and check.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bring your own key, or don't.&lt;/strong&gt; Log in with Genspark to skip keys entirely, or supply your own from Claude, OpenAI, Gemini, DeepSeek, Kimi, GLM, Qwen, Doubao, MiniMax, Grok, Mistral, OpenRouter, Requesty, Opper, Cheaper Inference, Atlas Cloud, any OpenAI-compatible endpoint, or a local server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scriptable.&lt;/strong&gt; The app ships a &lt;code&gt;genoffice&lt;/code&gt; CLI plus skills for Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode, and Windsurf, so a coding agent can create, convert, read, and edit real Office files on your machine without opening a window.&lt;/p&gt;

&lt;p&gt;Platforms: macOS (Apple Silicon and Intel), Windows (x64 and Arm), Linux (deb, rpm, AppImage).&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting it running
&lt;/h2&gt;

&lt;p&gt;The Chinese quick-start gives a four-step path:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to the Releases page and pick your platform build.&lt;/li&gt;
&lt;li&gt;Install and launch. (The original README doesn't spell out install steps, and the translation says so rather than inventing them.)&lt;/li&gt;
&lt;li&gt;Open or create a document, type your edit request into the AI panel.&lt;/li&gt;
&lt;li&gt;For building from source, the translation again notes that the original doesn't provide a clear build/start command — it points you at the README body and notes that only &lt;code&gt;package.json&lt;/code&gt; scripts are available in the material.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That last point is worth pausing on. A translation that quietly papered over gaps would be worse than no translation. This one flags them: "原文未提供明确的构建/启动命令" — the original doesn't provide a clear build command. You know exactly where the documentation ends and your own work begins.&lt;/p&gt;

&lt;h2&gt;
  
  
  Environment requirements
&lt;/h2&gt;

&lt;p&gt;From &lt;code&gt;package.json&lt;/code&gt;'s &lt;code&gt;engines&lt;/code&gt; field, for source builds only:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Node.js &lt;code&gt;&amp;gt;=22.12.0&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;npm &lt;code&gt;&amp;gt;=10&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Project version &lt;code&gt;0.1.0&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Hardware requirements aren't specified in the source material. Neither are mirror sources or download accelerators for users in mainland China — the translation explicitly says the original doesn't mention them.&lt;/p&gt;

&lt;h2&gt;
  
  
  The gotchas section
&lt;/h2&gt;

&lt;p&gt;This is the part I'd point a colleague to first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI features need a key or a login.&lt;/strong&gt; Either sign in with Genspark to skip keys, or bring your own from Claude, OpenAI, Gemini, or any OpenAI-compatible endpoint including a local server. Only AI calls leave your machine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Local-first has a boundary.&lt;/strong&gt; File open, edit, save, and all the conversions run locally. AI requests go to the provider you chose. If that distinction matters to your threat model, it's stated plainly rather than buried.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Source builds have version floors.&lt;/strong&gt; Node &lt;code&gt;&amp;gt;=22.12.0&lt;/code&gt; and npm &lt;code&gt;&amp;gt;=10&lt;/code&gt;, and &lt;code&gt;postinstall&lt;/code&gt; runs &lt;code&gt;install-electron&lt;/code&gt;. Miss the version floor and you'll get a confusing failure rather than a clear one.&lt;/p&gt;

&lt;p&gt;The translation also says it found no other obvious pitfalls in the source material, rather than padding the list.&lt;/p&gt;

&lt;h2&gt;
  
  
  On the translation itself
&lt;/h2&gt;

&lt;p&gt;The repository is explicit about its own structure: the README body is a translation of the original documentation, and the quick-start at the top is a Chinese-language supplement that is not part of the original. It invites issues and PRs for inaccuracies.&lt;/p&gt;

&lt;p&gt;That separation is the right call. It means you can trust the body as a faithful rendering of upstream, and you can treat the top section as editorial — someone's judgment about what a new user needs, which may or may not match your situation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who this is for
&lt;/h2&gt;

&lt;p&gt;If you read English comfortably, use the upstream repo. The Chinese version adds nothing you can't get there, and the upstream will always be the source of truth for releases and issues.&lt;/p&gt;

&lt;p&gt;If you're working primarily in Chinese, or you're evaluating genoffice for a team where the README will be read in Chinese, the translated version saves you a pass through the whole document to find the four things you actually needed. That's a small win, but it's a real one, and it's the kind of work that doesn't get done often enough.&lt;/p&gt;

&lt;p&gt;The upstream project is at 9580 stars and is the thing being translated. The Chinese fork is at zero and was published today. Judge it on whether the quick-start answers your questions, not on a star count.&lt;/p&gt;

&lt;p&gt;Repository: &lt;a href="https://github.com/yangshun2005/genoffice-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/genoffice-cn&lt;/a&gt;&lt;br&gt;
Upstream: &lt;a href="https://github.com/genspark-ai/genoffice" rel="noopener noreferrer"&gt;https://github.com/genspark-ai/genoffice&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/genoffice-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/genoffice-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>agents</category>
      <category>llm</category>
    </item>
    <item>
      <title>harnessrouter: a Chinese translation of the agent harness router, and why the docs matter more than the code</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:52:08 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/harnessrouter-a-chinese-translation-of-the-agent-harness-router-and-why-the-docs-matter-more-than-4jbh</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/harnessrouter-a-chinese-translation-of-the-agent-harness-router-and-why-the-docs-matter-more-than-4jbh</guid>
      <description>&lt;p&gt;The original &lt;code&gt;HarnessRouter/harnessrouter&lt;/code&gt; repo has 2993 stars and a README written in English. The Chinese version, &lt;code&gt;yangshun2005/harnessrouter-cn&lt;/code&gt;, was published today with zero stars. That asymmetry is the whole point of this article.&lt;/p&gt;

&lt;p&gt;If you have ever tried to evaluate an agent infrastructure project from a non-English-speaking region, you know the failure mode: you skim the README, you understand maybe 70% of it, you miss the sentence that says "do not add &lt;code&gt;--user&lt;/code&gt;", and you spend an afternoon debugging something that was documented in plain sight. Translation is not glamorous work. It is, however, the difference between a project being adoptable and being a curiosity.&lt;/p&gt;

&lt;h2&gt;
  
  
  What HarnessRouter actually is
&lt;/h2&gt;

&lt;p&gt;Strip away the positioning language and here is the mechanism: HarnessRouter is an infrastructure layer that turns existing agent harnesses — Codex, Claude Code, Hermes, PI, DSH, and others — into pluggable backends behind a single API.&lt;/p&gt;

&lt;p&gt;The problem it addresses is real. If you are building an agent product, you probably do not want to write separate integration code for every harness you might want to support. You want to run a task, get a result, and swap the underlying harness when cost or latency demands it. HarnessRouter implements the Unified Harness Protocol (UHP), an open standard, and exposes an OpenAI Responses-compatible API on top. It handles persistent sessions, streaming progress, files, artifacts, cancellation, and structured failure reporting.&lt;/p&gt;

&lt;p&gt;The official one-liner describes it as the self-hosted, Apache-2.0 edition of a unified interface for agent harnesses. Your keys, your infrastructure.&lt;/p&gt;

&lt;p&gt;That last part matters. There is no bundled model and no trial key. You bring a provider API key. The community edition runs on your own hardware.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Chinese version: what it adds
&lt;/h2&gt;

&lt;p&gt;The &lt;code&gt;harnessrouter-cn&lt;/code&gt; repo is a translation of the original project documentation. The README itself states the translation date as 2026-10-14 and links to &lt;code&gt;README_en.md&lt;/code&gt; as the source. It carries the same license, Apache-2.0, and the original project's star count is listed as 2993.&lt;/p&gt;

&lt;p&gt;The structure is worth noting because it is not a pure translation. The repo splits its content into two distinct layers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;A Chinese quick-start guide&lt;/strong&gt; at the top, explicitly labeled as supplementary material and not part of the original documentation. Its stated purpose is to let you get the project running without reading the full README.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The translated README body&lt;/strong&gt; below, which aims to stay faithful to the original text.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That separation is a small design decision with outsized consequences. Machine-translated technical documentation tends to blur the line between "what the original says" and "what a translator inferred." By marking the quick-start as non-original, the repo makes it possible to trust the translated body as a reference while still using the quick-start as a shortcut. If the translation is wrong somewhere, you can file an issue or a PR — the repo says so explicitly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting it running
&lt;/h2&gt;

&lt;p&gt;The quick-start path in the Chinese repo is short. You need Docker, roughly 4 GB of disk space, and a provider API key.&lt;/p&gt;

&lt;p&gt;Start the container:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker run &lt;span class="nt"&gt;-d&lt;/span&gt; &lt;span class="nt"&gt;--name&lt;/span&gt; harnessrouter &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-p&lt;/span&gt; 127.0.0.1:3000:3000 &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;-v&lt;/span&gt; harnessrouter:/data &lt;span class="se"&gt;\&lt;/span&gt;
  harnessrouter/harnessrouter
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then watch the logs, because first boot installs the enabled harness CLIs:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker logs &lt;span class="nt"&gt;-f&lt;/span&gt; harnessrouter
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Wait for this line:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[harnessrouter] ready on :3000
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;At that point you can stop following the logs with Ctrl+C. The container keeps running.&lt;/p&gt;

&lt;p&gt;Open &lt;code&gt;http://localhost:3000&lt;/code&gt; and log in with the default credentials: username &lt;code&gt;harnessrouter&lt;/code&gt;, password &lt;code&gt;harnessrouter&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Then go to &lt;strong&gt;Bring Your Own Key&lt;/strong&gt; in the sidebar, click &lt;strong&gt;Add Integration&lt;/strong&gt;, pick a provider, give it a name, and paste the API key. Models supported by that provider become available in the console.&lt;/p&gt;

&lt;p&gt;That is the whole onboarding flow. No account creation, no hosted dependency.&lt;/p&gt;

&lt;h2&gt;
  
  
  The gotchas the Chinese docs call out
&lt;/h2&gt;

&lt;p&gt;This is where the translation earns its keep. The Chinese quick-start has a section on common pitfalls, and the items in it are exactly the kind of thing that gets lost when you are reading a second language at speed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You must supply your own provider API key.&lt;/strong&gt; No HarnessRouter account, no bundled model, no trial key. If you arrive expecting a free tier, you will be confused for a while.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;First boot is slow.&lt;/strong&gt; It installs harness CLIs. If the console is not responding or a harness seems to be missing, check the logs for &lt;code&gt;backends available:&lt;/code&gt; and for warnings about backends that were &lt;code&gt;requested but not installed&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do not add &lt;code&gt;--user&lt;/code&gt;.&lt;/strong&gt; The entrypoint and Runner need root to manage per-session users. This is a security-model decision, not an oversight, and getting it wrong produces confusing permission failures.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Change the default password.&lt;/strong&gt; Log in, go to Profile, change it. Until you do, keep the instance bound to localhost. Saving the change briefly restarts the console and logs out other browser sessions.&lt;/p&gt;

&lt;p&gt;None of these are exotic. All of them are the kind of detail that costs you an hour if you skim past it in a language you are not fully comfortable in.&lt;/p&gt;

&lt;h2&gt;
  
  
  A note on what the Chinese docs do not cover
&lt;/h2&gt;

&lt;p&gt;The Chinese repo is honest about its gaps. The environment requirements section says the original does not specify an operating system — only the Docker path is given. Version requirements are likewise unstated. On the question of network conditions in mainland China, the translation notes that the original says nothing about mirror sources or download acceleration, and suggests that users may want to consider switching Docker registry mirrors on their own.&lt;/p&gt;

&lt;p&gt;I would rather see a documentation project say "the original does not cover this" than invent an answer. The former is useful. The latter is a trap.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why translated documentation is infrastructure
&lt;/h2&gt;

&lt;p&gt;There is a tendency to treat a translation repo as a nice-to-have. The code is the code, after all. But for a self-hosted project with a security model that involves running agent processes as per-session users, the documentation &lt;em&gt;is&lt;/em&gt; part of the deployment surface. Misunderstanding it has consequences.&lt;/p&gt;

&lt;p&gt;The Chinese version lowers the barrier for Chinese-speaking developers in a concrete way: it gives them a quick-start path that skips the full README, a faithful translation of the reference material, and an explicit list of the mistakes that are easy to make. The original project has 2993 stars and a Python codebase under Apache-2.0. The translation repo has zero stars as of today, which is expected — it was published today.&lt;/p&gt;

&lt;p&gt;If you work in Chinese and have been meaning to evaluate HarnessRouter, the translated repo is the faster entry point. If you find a translation error, the repo asks for an issue or PR, which is the correct way for a documentation fork to improve.&lt;/p&gt;

&lt;p&gt;The original is at &lt;code&gt;HarnessRouter/harnessrouter&lt;/code&gt;. The Chinese version is at &lt;code&gt;yangshun2005/harnessrouter-cn&lt;/code&gt;.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/harnessrouter-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/harnessrouter-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>agents</category>
      <category>chinese</category>
    </item>
    <item>
      <title>OpenMausBot: a Chinese translation of the local-first AI agent chat app</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:51:20 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/openmausbot-a-chinese-translation-of-the-local-first-ai-agent-chat-app-86p</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/openmausbot-a-chinese-translation-of-the-local-first-ai-agent-chat-app-86p</guid>
      <description>&lt;p&gt;OpenMausBot is a desktop chat app where every contact in the sidebar is a running agent. The original repository, milind-soni/OpenMausBot, sits at 4770 stars and is written in TypeScript under Apache-2.0. A Chinese translation of its documentation was published on 2026-10-14 at &lt;a href="https://github.com/yangshun2005/OpenMausBot-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/OpenMausBot-cn&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;That translation is what this post is about, plus what the project actually does and where it will bite you.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the project is
&lt;/h2&gt;

&lt;p&gt;The official one-liner is: "Open-source Grok Bot alternative with a virtual machine that bots can use."&lt;/p&gt;

&lt;p&gt;The longer version, from the README: OpenMausBot is a local-first desktop chat application that turns a team of AI agents into something shaped like an instant messenger. Each bot in the sidebar is a real agent running Claude or Codex underneath, with its own personality, its own model, its own cloud computer, and its own connected apps. You talk to them like contacts. You watch them work. You approve the operations that matter.&lt;/p&gt;

&lt;p&gt;The stated problem is that a single assistant in a single chat box does not fit agent workflows. OpenMausBot rebuilds the "AI as a messaging app" idea as an open-source, local-first project that runs on the agent CLIs you already have installed.&lt;/p&gt;

&lt;p&gt;It describes itself as an open-source alternative to Grok Bot, and also to Meta Muse, OpenAI dots, and Cue by Manus. It is not affiliated with xAI, Meta, OpenAI, or Manus. It has also been called MausBot, and was previously named OpenGrokBot.&lt;/p&gt;

&lt;p&gt;One thing the README states plainly, in a warning block: there is no token. Any coin using the OpenMausBot, Maus, or SupaMaus names was not created, endorsed, or associated with the project or its maintainers.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a Chinese translation matters here
&lt;/h2&gt;

&lt;p&gt;The README is long. It covers install paths for three operating systems, Docker build targets, engine selection, host control permissions, and a pile of platform caveats. If English is not your first language, that is a lot of surface area to misread before you even get the app open.&lt;/p&gt;

&lt;p&gt;The Chinese version splits the document into two parts, and the split is the useful idea:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;中文快速上手&lt;/strong&gt; section at the top, explicitly labeled as a supplement and not part of the original text. Its stated goal is to let you get the project running without reading the whole README.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;translated README body&lt;/strong&gt; below it, which aims to stay faithful to the original.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That ordering matters. You get the short path first, the reference material second. The translation also carries the original's warnings forward rather than dropping them, which is where a lot of translated docs go wrong — the caveats are usually the first thing to get trimmed.&lt;/p&gt;

&lt;p&gt;The translator states that inaccuracies should be filed as an Issue or PR. My read is that the quick-start section is the part most likely to drift, since it is original content rather than a translation and will need updating whenever the upstream README changes. That is a guess on my part, not something the repo says.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting it running
&lt;/h2&gt;

&lt;p&gt;The shortest path is a prebuilt installer. The README's download section lists:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mac, Apple silicon: &lt;code&gt;OpenMausBot.dmg&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Mac, Intel: &lt;code&gt;OpenMausBot-intel.dmg&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Windows: &lt;code&gt;OpenMausBot-setup.exe&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Ubuntu 24.04 x64: &lt;code&gt;OpenMausBot-amd64.deb&lt;/code&gt;, or an AppImage beta&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All releases are on the &lt;a href="https://github.com/milind-soni/OpenMausBot/releases/latest" rel="noopener noreferrer"&gt;latest release page&lt;/a&gt;. The macOS builds are described as signed and notarized &lt;code&gt;.dmg&lt;/code&gt; files.&lt;/p&gt;

&lt;p&gt;If you want to build the harness server with Docker, the Dockerfile comments give these commands:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;docker build &lt;span class="nt"&gt;-t&lt;/span&gt; openmausbot &lt;span class="nb"&gt;.&lt;/span&gt;

&lt;span class="c"&gt;# pick your engines explicitly&lt;/span&gt;
docker build &lt;span class="nt"&gt;--build-arg&lt;/span&gt; &lt;span class="nv"&gt;ENGINES&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"@anthropic-ai/claude-code @openai/codex"&lt;/span&gt; &lt;span class="nt"&gt;-t&lt;/span&gt; openmausbot &lt;span class="nb"&gt;.&lt;/span&gt;

&lt;span class="c"&gt;# build the cloud-home target&lt;/span&gt;
docker build &lt;span class="nt"&gt;--target&lt;/span&gt; cloud-home &lt;span class="nt"&gt;-t&lt;/span&gt; omb-cloud-home &lt;span class="nb"&gt;.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The Docker image is based on &lt;code&gt;node:24-bookworm-slim&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;For a source build, &lt;code&gt;package.json&lt;/code&gt; specifies &lt;code&gt;pnpm@10.33.0&lt;/code&gt; and Node &lt;code&gt;&amp;gt;=24&lt;/code&gt;. Be aware: the README material does not include a complete source build and run sequence. The Chinese quick-start says to consult the README body for that, which is honest but means you should not expect a copy-pasteable &lt;code&gt;pnpm install &amp;amp;&amp;amp; pnpm dev&lt;/code&gt; from the translation alone.&lt;/p&gt;

&lt;h2&gt;
  
  
  Requirements and the things that will stop you
&lt;/h2&gt;

&lt;p&gt;The dependency situation is the part worth reading twice.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bots run on CLIs you already have.&lt;/strong&gt; OpenMausBot drives &lt;code&gt;claude&lt;/code&gt;, &lt;code&gt;codex&lt;/code&gt;, and &lt;code&gt;grok&lt;/code&gt; installed on your own machine, using your existing logins and subscriptions. No new account. But this cuts both ways: if those CLIs are not installed and authenticated, the bots do not run. There is no bundled fallback described.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Platforms.&lt;/strong&gt; macOS on both Apple silicon and Intel, Windows x64, and Ubuntu 24.04 x64. The badges note Electron support for macOS, Windows, and Ubuntu.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Host control is limited.&lt;/strong&gt; Host control works only on macOS and Ubuntu Xorg, and only after you explicitly opt in. On Ubuntu Wayland it is disabled because of unresolved issue #345. If you are on Wayland and host control is the feature you came for, this is a blocker, not an inconvenience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;State lives in &lt;code&gt;~/.openmausbot&lt;/code&gt;.&lt;/strong&gt; Transcripts, keys, and events go there. In Docker, HOME is the &lt;code&gt;/data&lt;/code&gt; volume, which is what persists state across container restarts. Back that up if you care about your transcripts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hardware requirements are not specified.&lt;/strong&gt; The README distinguishes Apple silicon from Intel installers and stops there. No RAM or disk figures. I would not read anything into that either way.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No mirror guidance.&lt;/strong&gt; The material does not mention domestic npm mirrors or download accelerators. If you are behind a slow connection to npm or GitHub, that is on you to solve. The translation does not pretend otherwise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the translation helps most
&lt;/h2&gt;

&lt;p&gt;The quick-start section compresses the decision tree into a few lines: pick your OS, grab the installer, or build the harness with one of three Docker commands. It also front-loads the gotchas that would otherwise surface after twenty minutes of setup — the CLI dependency, the Wayland host-control gap, the state directory, the no-token warning.&lt;/p&gt;

&lt;p&gt;For a Chinese-speaking developer evaluating whether this is worth an afternoon, that is the right shape. You can decide in two minutes whether the constraints disqualify you, then read the translated README for depth if they do not.&lt;/p&gt;

&lt;p&gt;The honest caveats: the translation is new, published 2026-10-14, and the Chinese repository has no stars yet. It is a translation, not a fork with code changes, so the 4770 stars belong to the original project and say nothing about the translation's quality. If you find something wrong, the repo asks for an Issue or PR, and given how fresh it is, that is probably the fastest way to get it fixed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Should you look at it
&lt;/h2&gt;

&lt;p&gt;If you already run &lt;code&gt;claude&lt;/code&gt; or &lt;code&gt;codex&lt;/code&gt; locally and the idea of several persistent agents with separate personalities and separate cloud machines appeals to you more than one chat window, the project is aimed squarely at you. The local-first framing and the "use your existing subscription" model are the two design choices that make it worth a look rather than a dismissal.&lt;/p&gt;

&lt;p&gt;If you are on Ubuntu Wayland, or you do not have those CLIs installed and do not want them, the constraints above are real and the Chinese quick-start says so up front.&lt;/p&gt;

&lt;p&gt;Original project: &lt;a href="https://github.com/milind-soni/OpenMausBot" rel="noopener noreferrer"&gt;https://github.com/milind-soni/OpenMausBot&lt;/a&gt;&lt;br&gt;
Chinese documentation: &lt;a href="https://github.com/yangshun2005/OpenMausBot-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/OpenMausBot-cn&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/OpenMausBot-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/OpenMausBot-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>agents</category>
      <category>chinese</category>
    </item>
    <item>
      <title>genoffice: a Chinese translation of the open-source AI Office suite</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:50:42 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/genoffice-a-chinese-translation-of-the-open-source-ai-office-suite-2hfa</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/genoffice-a-chinese-translation-of-the-open-source-ai-office-suite-2hfa</guid>
      <description>&lt;p&gt;The original &lt;code&gt;genspark-ai/genoffice&lt;/code&gt; repository has 9580 stars, is written in TypeScript, and ships under Apache-2.0. The Chinese version, &lt;code&gt;yangshun2005/genoffice-cn&lt;/code&gt;, was published today. It has zero stars, which is normal for a repository that is a few hours old, and I'm not going to pretend otherwise.&lt;/p&gt;

&lt;p&gt;What it is: a translated documentation fork. The code is the upstream code. What changed is the README — and, more usefully, a short "中文快速上手" section prepended to it that the original does not have.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a translated README is not a trivial thing
&lt;/h2&gt;

&lt;p&gt;For an English-speaking developer, the genoffice README is a normal README. You skim the feature list, find the Releases link, download the right installer, and you're running in five minutes.&lt;/p&gt;

&lt;p&gt;For a Chinese-speaking developer, the same document has a specific failure mode that isn't about vocabulary. It's about where the operational details sit. The upstream README is organized as a product page: positioning first, feature bullets second, install links somewhere in the middle, and the CLI/MCP/agent-skill material further down. If you're evaluating whether this thing can do a job for you, you read top to bottom and hope the answer is in there.&lt;/p&gt;

&lt;p&gt;The Chinese version inverts that. The top of the page is a short section labeled as a supplement, explicitly marked as &lt;em&gt;not&lt;/em&gt; part of the original text, and it answers the questions you'd otherwise have to reconstruct:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What is this, and what problem does it solve&lt;/li&gt;
&lt;li&gt;The shortest path to a running app&lt;/li&gt;
&lt;li&gt;Environment requirements&lt;/li&gt;
&lt;li&gt;Known gotchas&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's the actual value. Not "the README is now in Chinese." It's that someone read the whole thing, figured out which parts a new user needs first, and put those parts at the top.&lt;/p&gt;

&lt;h2&gt;
  
  
  What genoffice actually does
&lt;/h2&gt;

&lt;p&gt;The core claim, from the README: it opens and saves native &lt;code&gt;.docx&lt;/code&gt;, &lt;code&gt;.xlsx&lt;/code&gt;, and &lt;code&gt;.pptx&lt;/code&gt; files, edits PDF, Markdown, and HTML, and puts an AI agent next to each document. Not a chat sidebar — an editor that reads the file, makes changes, and shows you what changed.&lt;/p&gt;

&lt;p&gt;The detail that matters most is byte-level preservation. Only the parts you edited get rewritten. Everything else in the file is kept byte for byte, so the document still opens correctly in Word, Excel, and PowerPoint. This is the difference between "an AI tool that exports to Office format" and "an AI tool that edits your Office files." Most tools in this space do the former and call it the latter.&lt;/p&gt;

&lt;p&gt;The other structural choices:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Edits are reviewable.&lt;/strong&gt; Changes appear as tracked changes and diffs, with one-click rollback. Spreadsheets use live formulas rather than pasted values. Slides and pages are generated on a canvas and stay fully editable.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Local-first.&lt;/strong&gt; Opening, editing, saving, and converting happen on your machine. PDF → Word / Excel / PowerPoint, Markdown → Word, and HTML → Word all run locally. Only AI calls leave the machine, and they go to whichever provider you picked.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Search by content.&lt;/strong&gt; The home screen runs a local SQLite index over &lt;code&gt;.docx&lt;/code&gt;, &lt;code&gt;.xlsx&lt;/code&gt;, &lt;code&gt;.pptx&lt;/code&gt;, PDF, Markdown, and HTML files — names, folders, and full text, with CJK support. Optionally, top results get reranked by TypeSafe Jev (System One judgment model) so the file that answers your question sorts first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ask AI across documents.&lt;/strong&gt; Bookmark a set of documents and the home screen's Ask AI answers questions across them, citing the source file for each claim so you can open it and check.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bring your own key, or don't.&lt;/strong&gt; Log in with Genspark to skip keys entirely, or supply your own from Claude, OpenAI, Gemini, DeepSeek, Kimi, GLM, Qwen, Doubao, MiniMax, Grok, Mistral, OpenRouter, Requesty, Opper, Cheaper Inference, Atlas Cloud, any OpenAI-compatible endpoint, or a local server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scriptable.&lt;/strong&gt; The app ships a &lt;code&gt;genoffice&lt;/code&gt; CLI plus skills for Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode, and Windsurf, so a coding agent can create, convert, read, and edit real Office files on your machine without opening a window.&lt;/p&gt;

&lt;p&gt;Platforms: macOS (Apple Silicon and Intel), Windows (x64 and Arm), Linux (deb, rpm, AppImage).&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting it running
&lt;/h2&gt;

&lt;p&gt;The Chinese quick-start gives a four-step path:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Go to the Releases page and pick your platform build.&lt;/li&gt;
&lt;li&gt;Install and launch. (The original README doesn't spell out install steps, and the translation says so rather than inventing them.)&lt;/li&gt;
&lt;li&gt;Open or create a document, type your edit request into the AI panel.&lt;/li&gt;
&lt;li&gt;For building from source, the translation again notes that the original doesn't provide a clear build/start command — it points you at the README body and notes that only &lt;code&gt;package.json&lt;/code&gt; scripts are available in the material.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That last point is worth pausing on. A translation that quietly papered over gaps would be worse than no translation. This one flags them: "原文未提供明确的构建/启动命令" — the original doesn't provide a clear build command. You know exactly where the documentation ends and your own work begins.&lt;/p&gt;

&lt;h2&gt;
  
  
  Environment requirements
&lt;/h2&gt;

&lt;p&gt;From &lt;code&gt;package.json&lt;/code&gt;'s &lt;code&gt;engines&lt;/code&gt; field, for source builds only:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Node.js &lt;code&gt;&amp;gt;=22.12.0&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;npm &lt;code&gt;&amp;gt;=10&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Project version &lt;code&gt;0.1.0&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Hardware requirements aren't specified in the source material. Neither are mirror sources or download accelerators for users in mainland China — the translation explicitly says the original doesn't mention them.&lt;/p&gt;

&lt;h2&gt;
  
  
  The gotchas section
&lt;/h2&gt;

&lt;p&gt;This is the part I'd point a colleague to first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI features need a key or a login.&lt;/strong&gt; Either sign in with Genspark to skip keys, or bring your own from Claude, OpenAI, Gemini, or any OpenAI-compatible endpoint including a local server. Only AI calls leave your machine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Local-first has a boundary.&lt;/strong&gt; File open, edit, save, and all the conversions run locally. AI requests go to the provider you chose. If that distinction matters to your threat model, it's stated plainly rather than buried.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Source builds have version floors.&lt;/strong&gt; Node &lt;code&gt;&amp;gt;=22.12.0&lt;/code&gt; and npm &lt;code&gt;&amp;gt;=10&lt;/code&gt;, and &lt;code&gt;postinstall&lt;/code&gt; runs &lt;code&gt;install-electron&lt;/code&gt;. Miss the version floor and you'll get a confusing failure rather than a clear one.&lt;/p&gt;

&lt;p&gt;The translation also says it found no other obvious pitfalls in the source material, rather than padding the list.&lt;/p&gt;

&lt;h2&gt;
  
  
  On the translation itself
&lt;/h2&gt;

&lt;p&gt;The repository is explicit about its own structure: the README body is a translation of the original documentation, and the quick-start at the top is a Chinese-language supplement that is not part of the original. It invites issues and PRs for inaccuracies.&lt;/p&gt;

&lt;p&gt;That separation is the right call. It means you can trust the body as a faithful rendering of upstream, and you can treat the top section as editorial — someone's judgment about what a new user needs, which may or may not match your situation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who this is for
&lt;/h2&gt;

&lt;p&gt;If you read English comfortably, use the upstream repo. The Chinese version adds nothing you can't get there, and the upstream will always be the source of truth for releases and issues.&lt;/p&gt;

&lt;p&gt;If you're working primarily in Chinese, or you're evaluating genoffice for a team where the README will be read in Chinese, the translated version saves you a pass through the whole document to find the four things you actually needed. That's a small win, but it's a real one, and it's the kind of work that doesn't get done often enough.&lt;/p&gt;

&lt;p&gt;The upstream project is at 9580 stars and is the thing being translated. The Chinese fork is at zero and was published today. Judge it on whether the quick-start answers your questions, not on a star count.&lt;/p&gt;

&lt;p&gt;Repository: &lt;a href="https://github.com/yangshun2005/genoffice-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/genoffice-cn&lt;/a&gt;&lt;br&gt;
Upstream: &lt;a href="https://github.com/genspark-ai/genoffice" rel="noopener noreferrer"&gt;https://github.com/genspark-ai/genoffice&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/genoffice-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/genoffice-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>agents</category>
      <category>chinese</category>
    </item>
    <item>
      <title>rakazo: a self-hosted AI agent, now with a Chinese README</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:49:25 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/rakazo-a-self-hosted-ai-agent-now-with-a-chinese-readme-13d</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/rakazo-a-self-hosted-ai-agent-now-with-a-chinese-readme-13d</guid>
      <description>&lt;p&gt;The upstream repo &lt;a href="https://github.com/elie222/rakazo" rel="noopener noreferrer"&gt;elie222/rakazo&lt;/a&gt; has 3869 stars and is written in TypeScript. Its own one-line description is "Open-source Grok Bot alternative. Choose your own model and sandbox." What it does not have is a Chinese README. Someone fixed that: &lt;a href="https://github.com/yangshun2005/rakazo-cn" rel="noopener noreferrer"&gt;yangshun2005/rakazo-cn&lt;/a&gt; is a translation of the original documentation, published 2026-10-14.&lt;/p&gt;

&lt;p&gt;This article is about what rakazo actually is, how the translated docs are structured, and where the Chinese version helps versus where it just mirrors the English.&lt;/p&gt;

&lt;h2&gt;
  
  
  What rakazo is
&lt;/h2&gt;

&lt;p&gt;Rakazo is an open-source AI agent positioned as a persistent AI teammate — a self-hosted assistant that runs on your own machine. It ships clients for web, Electron desktop, iPhone, and Android. You can bring your own model and computer provider, or run the entire stack locally.&lt;/p&gt;

&lt;p&gt;The comparison set the upstream README names is specific: Grok Bot, Meta Muse, OpenAI Dots, Instinct, OpenClaw, Hermes Agent, and Hark Pro. Rakazo is pitched as the open-source, self-hostable alternative to that group. Some of those are hosted assistants (Muse, Dots, Instinct, Hark Pro); some are open-source agents you run yourself (OpenClaw, Hermes Agent). The distinction the README draws is that rakazo, once running, is just a chat — you set up a bot and manage it through that chat.&lt;/p&gt;

&lt;p&gt;The project is in beta. The README says so explicitly, and that matters for anyone deciding whether to put it in front of real work.&lt;/p&gt;

&lt;p&gt;License is Apache-2.0.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a translation is not just cosmetic
&lt;/h2&gt;

&lt;p&gt;Self-hosted software has a documentation problem that hosted software does not. With a hosted product, a bad README costs you a signup. With self-hosted software, a bad README costs you an evening of debugging environment variables, and the failure modes are silent — a container that starts but cannot reach a model, a &lt;code&gt;.env&lt;/code&gt; where two values must match and one of them doesn't.&lt;/p&gt;

&lt;p&gt;The rakazo README is long. It covers install paths, provider configuration, secrets, and a self-host guide. For a Chinese-speaking developer evaluating the project, that is a lot of English prose to parse before you know whether the thing even fits your use case. The translated repo splits the problem in two:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;中文快速上手&lt;/strong&gt; section at the top, marked as supplementary and not part of the original text. Its stated purpose is to let you get the project running without reading the whole README.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;translated README body&lt;/strong&gt; below it, which aims to stay faithful to the original.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That separation is the right call. Mixing editorial guidance into a translation makes it impossible to tell what upstream actually said. Keeping them apart means you can trust the lower half as a translation and treat the upper half as a getting-started guide.&lt;/p&gt;

&lt;h2&gt;
  
  
  The shortest install path
&lt;/h2&gt;

&lt;p&gt;The translated quick-start gives the published-image route, which needs no clone and no Node install. Prerequisites are Docker Engine, the Compose plugin, curl, and OpenSSL.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; rakazo &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;cd &lt;/span&gt;rakazo &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;
curl &lt;span class="nt"&gt;-fsSLO&lt;/span&gt; https://raw.githubusercontent.com/elie222/rakazo/main/infra/compose/install-images.sh &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt;
bash install-images.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The script downloads the Compose files, generates a &lt;code&gt;.env&lt;/code&gt; with random secrets, and starts rakazo. Rerunning it preserves an existing &lt;code&gt;.env&lt;/code&gt;, which is the behavior you want — you don't lose your keys on a second run.&lt;/p&gt;

&lt;p&gt;Then open &lt;code&gt;http://127.0.0.1:5173&lt;/code&gt;, create an account, and connect a model.&lt;/p&gt;

&lt;p&gt;For a server deployment, the flow is three steps instead of one: run &lt;code&gt;bash install-images.sh --prepare-only&lt;/code&gt;, edit &lt;code&gt;.env&lt;/code&gt; to set &lt;code&gt;SANDBOX_PROVIDER&lt;/code&gt; and &lt;code&gt;RAKAZO_HOST&lt;/code&gt;, then run &lt;code&gt;bash install-images.sh&lt;/code&gt; again.&lt;/p&gt;

&lt;p&gt;The default image tag is &lt;code&gt;edge&lt;/code&gt;, built from main. Published images cover &lt;code&gt;linux/amd64&lt;/code&gt; and &lt;code&gt;linux/arm64&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Requirements, and the Node version trap
&lt;/h2&gt;

&lt;p&gt;If you go the published-image route, the dependency list is short: Docker Engine, Compose plugin, curl, OpenSSL. The README does not specify an OS or hardware requirement.&lt;/p&gt;

&lt;p&gt;If you build from source, the Node constraint is worth reading twice. Supported: Node.js 22.22.2 or higher within the 22.x line, Node.js 24.x, or Node.js 26 and above. &lt;strong&gt;Not supported: Node.js 23.x and 25.x.&lt;/strong&gt; Package manager is pnpm 9, plus Docker.&lt;/p&gt;

&lt;p&gt;That odd-numbered-release exclusion is the kind of detail that costs an hour if you skim. It is also exactly the kind of detail that a translated quick-start section can surface prominently, because the translator is reading the doc as a user, not as the author.&lt;/p&gt;

&lt;h2&gt;
  
  
  Secrets you will have to set by hand
&lt;/h2&gt;

&lt;p&gt;The published-image path generates secrets for you. Source development does not. The README lists what you must configure:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;POSTGRES_PASSWORD&lt;/code&gt;, which also has to be reflected in &lt;code&gt;DATABASE_URL&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;BETTER_AUTH_SECRET&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ENCRYPTION_KEY&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SCREEN_PROXY_SECRET&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;SANDBOX_SUPERVISOR_TOKEN&lt;/code&gt;, needed for the Docker sandbox&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The &lt;code&gt;POSTGRES_PASSWORD&lt;/code&gt; / &lt;code&gt;DATABASE_URL&lt;/code&gt; pairing is the classic failure: set one, forget the other, get an auth error that doesn't name the real cause.&lt;/p&gt;

&lt;h2&gt;
  
  
  Model credentials and remote providers
&lt;/h2&gt;

&lt;p&gt;Rakazo needs a model. You can set &lt;code&gt;OPENROUTER_API_KEY&lt;/code&gt;, or connect a supported model provider during onboarding.&lt;/p&gt;

&lt;p&gt;Voice mode needs its own keys — the README names ElevenLabs, OpenAI, Cartesia, and Fish Audio as options.&lt;/p&gt;

&lt;p&gt;The local Docker computer is enabled by default. If you want a remote provider instead, the options are &lt;code&gt;e2b&lt;/code&gt;, &lt;code&gt;daytona&lt;/code&gt;, &lt;code&gt;createos&lt;/code&gt;, or &lt;code&gt;box&lt;/code&gt;, each requiring its own API key.&lt;/p&gt;

&lt;h2&gt;
  
  
  The restricted-network section
&lt;/h2&gt;

&lt;p&gt;This is where the translation earns its keep for a specific audience. The README documents overrides for constrained networks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;RAKAZO_DOWNLOAD_BASE&lt;/code&gt; to change the base URL the install script downloads from&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;--local&lt;/code&gt; or &lt;code&gt;RAKAZO_DOWNLOAD_SKIP_EXISTING&lt;/code&gt; to skip Compose files you already have&lt;/li&gt;
&lt;li&gt;Overriding the bootstrap script URL&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The details live in the self-host documentation under "Restricted networks / mirror downloads." If you have ever tried to pull a GitHub raw file from a network that rate-limits or blocks it, you know why this section exists. Having it in Chinese, with the environment variable names left in English so you can copy-paste them, is the correct handling.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the translation does not do
&lt;/h2&gt;

&lt;p&gt;It does not change the software. Same repo, same images, same env var names. The Chinese version is documentation only.&lt;/p&gt;

&lt;p&gt;It also does not claim adoption. The translated repo is new — published 2026-10-14 — and has no stars to speak of. The 3869 figure belongs to the upstream project, and the translated README lists it that way, under "原项目 Stars." If you see the number quoted elsewhere as if it described the translation, that's a misread.&lt;/p&gt;

&lt;p&gt;The translation also flags its own limits. The header states that the quick-start is supplementary and not original content, and invites issues or PRs for inaccuracies. That's a reasonable posture for a translation of a beta project's docs — upstream will change, and the translation will lag.&lt;/p&gt;

&lt;h2&gt;
  
  
  Should you use it
&lt;/h2&gt;

&lt;p&gt;If you read English comfortably, go to the upstream README. It is the source of truth and it will be current.&lt;/p&gt;

&lt;p&gt;If you are evaluating rakazo and English documentation is the friction point, the Chinese version gives you two things the original does not: a condensed path to a running instance, and a translated reference you can search in your own language when something breaks. The env var names stay in English, which is right — those are the strings you actually type.&lt;/p&gt;

&lt;p&gt;The project is beta. The translated docs say so. Treat both accordingly.&lt;/p&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/yangshun2005/rakazo-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/rakazo-cn&lt;/a&gt;&lt;br&gt;
Upstream: &lt;a href="https://github.com/elie222/rakazo" rel="noopener noreferrer"&gt;https://github.com/elie222/rakazo&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/rakazo-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/rakazo-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>aiopensourcchineseagentse</category>
    </item>
    <item>
      <title>KiroCrew: an agent workspace that survives the restart</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:48:50 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/kirocrew-an-agent-workspace-that-survives-the-restart-3mc3</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/kirocrew-an-agent-workspace-that-survives-the-restart-3mc3</guid>
      <description>&lt;p&gt;KiroCrew: A Persistent Agent Workspace, Now Documented in Chinese&lt;/p&gt;

&lt;p&gt;Most agent sessions die when you close the chat window. That is the problem KiroCrew is built around. It is an open-source development workspace that runs on hardware you control — local or remote — and it keeps sessions, memory, scheduling, and task checkpoints alive across Gateway restarts. The upstream project, &lt;a href="https://github.com/kirodotdev/KiroCrew" rel="noopener noreferrer"&gt;kirodotdev/KiroCrew&lt;/a&gt;, sits at 4400 stars, is written in Python, and ships under Apache-2.0.&lt;/p&gt;

&lt;p&gt;A Chinese translation of that project now exists: &lt;a href="https://github.com/yangshun2005/KiroCrew-cn" rel="noopener noreferrer"&gt;KiroCrew-cn&lt;/a&gt;. This article is about what the project does, how to get it running, and what the Chinese edition actually adds.&lt;/p&gt;

&lt;h2&gt;
  
  
  What KiroCrew is
&lt;/h2&gt;

&lt;p&gt;The official one-liner: &lt;em&gt;a persistent workspace for development work that self-improves and continues beyond one session.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That sentence is doing a lot of work, so let me unpack it against what the README actually claims.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Persistent.&lt;/strong&gt; Sessions, memory, scheduling, and task checkpoints survive a Gateway restart. Scheduled jobs and unattended multi-step tasks keep running.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-surface.&lt;/strong&gt; You interact through a desktop app, a web dashboard, and a CLI. Slack and Discord are message channels for continuing the same work.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unattended by design.&lt;/strong&gt; Multi-step tasks can run without you watching. Periodic jobs fire on your schedule. A heartbeat mechanism monitors the system until something needs attention.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Extensible through Apps.&lt;/strong&gt; Kiro Crew Apps tailor the experience to specific work scenarios by combining dedicated interfaces with agents, skills, schedules, integrations, and backend services.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The default agent runs on top of &lt;code&gt;kiro-cli&lt;/code&gt;. That is a separate dependency you install and log into yourself. On first startup KiroCrew checks for it, and if it is missing, links you to the official install guide.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a Chinese edition matters
&lt;/h2&gt;

&lt;p&gt;The upstream README is long. It has a quick start, a source-build path, a rationale section, a feature list, an architecture explanation, a security section, install notes, telemetry documentation, and a docs index. For a developer whose first language is Chinese, that is a real reading cost before the first command even runs.&lt;/p&gt;

&lt;p&gt;The Chinese edition does two things, and the distinction is stated explicitly in the repo:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;A translated README.&lt;/strong&gt; The body is a Chinese translation of the original project documentation, with a stated goal of staying faithful to the source. The original English README is kept alongside it as &lt;code&gt;README_en.md&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A supplementary quick-start guide&lt;/strong&gt; (&lt;code&gt;中文快速上手&lt;/code&gt;). This part is &lt;em&gt;not&lt;/em&gt; a translation. It is an added orientation layer written for Chinese-speaking users, with the explicit purpose of letting you get the project running without reading the whole README first.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;That second part is the more interesting one. Translation alone does not lower the barrier much if the original document is structured around assumptions you do not share. A quick-start that front-loads "what problem does this solve," "what is the shortest path to a running instance," and "what will bite you" is a different artifact from a translated reference.&lt;/p&gt;

&lt;p&gt;The repo also invites corrections: if something is translated inaccurately, open an Issue or a PR.&lt;/p&gt;

&lt;h2&gt;
  
  
  The shortest path to a running instance
&lt;/h2&gt;

&lt;p&gt;If you want to skip the source build, the README gives a one-line install for the signed Stable wheel. No repo clone, no frontend build:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://download.crew.kiro.dev/cli.sh | sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then open &lt;code&gt;http://localhost:5476&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;To pin an exact release, pass &lt;code&gt;--version&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://download.crew.kiro.dev/cli.sh | sh &lt;span class="nt"&gt;-s&lt;/span&gt; &lt;span class="nt"&gt;--&lt;/span&gt; &lt;span class="nt"&gt;--version&lt;/span&gt; 0.6.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;One constraint worth knowing before you try to pin something old: the minimum pinnable version is &lt;code&gt;0.1.2&lt;/code&gt;. Versions &lt;code&gt;0.1.0&lt;/code&gt; and &lt;code&gt;0.1.1&lt;/code&gt; predate manifest signing, so there is no signed manifest to resolve against.&lt;/p&gt;

&lt;p&gt;Before any of this, install and log into &lt;code&gt;kiro-cli&lt;/code&gt;. The README does not provide an explicit command for that step in the quick-start section — it defers to the install guide. This is the single most common first-run failure, because the prerequisite check happens at startup and the default agent will not run without it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Building from source
&lt;/h2&gt;

&lt;p&gt;The README's source path is short but has one non-obvious step:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone &amp;lt;repo&amp;gt;
&lt;span class="nb"&gt;cd &lt;/span&gt;KiroCrew
make build
&lt;span class="nb"&gt;source&lt;/span&gt; .venv/bin/activate
kirocrew setup
kirocrew doctor
kirocrew gateway
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The non-obvious part is the frontend. It is built separately with npm/Vite inside the &lt;code&gt;website/&lt;/code&gt; directory, and the output has to be staged into &lt;code&gt;src/kiro_crew/static/dist&lt;/code&gt; before packaging. If you build the Python side and wonder why the web dashboard is blank, that is usually why.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;kirocrew doctor&lt;/code&gt; after &lt;code&gt;setup&lt;/code&gt; is worth running rather than skipping. It is the cheap way to find out that &lt;code&gt;kiro-cli&lt;/code&gt; is missing or unauthenticated before you spend time debugging a gateway that starts but does nothing useful.&lt;/p&gt;

&lt;h2&gt;
  
  
  Environment requirements
&lt;/h2&gt;

&lt;p&gt;From the README:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;OS:&lt;/strong&gt; macOS, Linux, and Windows. Windows goes through a native source install — there is a separate Windows guide.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Python:&lt;/strong&gt; 3.12+. &lt;code&gt;pyproject.toml&lt;/code&gt; declares &lt;code&gt;requires-python = "&amp;gt;=3.12"&lt;/code&gt;, and CPython 3.12–3.13 are supported.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Node.js:&lt;/strong&gt; 22.12+ for source builds, with 24 LTS recommended, plus npm.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Default agent dependency:&lt;/strong&gt; &lt;code&gt;kiro-cli&lt;/code&gt;, installed on the Gateway host, with &lt;code&gt;kiro-cli login&lt;/code&gt; run once.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Architectures:&lt;/strong&gt; macOS on x86_64 and arm64; Linux on x86_64 and aarch64.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Docker:&lt;/strong&gt; a public multi-arch image at &lt;code&gt;ghcr.io/kirodotdev/kirocrew:stable&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For users on mainland China networks, the README notes that mirror sources or download acceleration may be needed. It does not provide specific mirror configuration — that is deferred to the install guide.&lt;/p&gt;

&lt;h2&gt;
  
  
  Install paths beyond the one-liner
&lt;/h2&gt;

&lt;p&gt;The one-line script is not the only option. The README lists:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Desktop app&lt;/strong&gt; with auto-update, for macOS (&lt;code&gt;.dmg&lt;/code&gt;) and Windows x64 (&lt;code&gt;-Setup.exe&lt;/code&gt;). Linux users are pointed at the one-line install as the starting point.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Linux packages&lt;/strong&gt; — &lt;code&gt;.deb&lt;/code&gt;, &lt;code&gt;.rpm&lt;/code&gt;, and AppImage — covered in the install guide alongside Insider and Nightly links, architecture support, platform requirements, and sandbox setup.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Docker&lt;/strong&gt; for always-on servers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Source build&lt;/strong&gt;, as above.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are three release channels. Stable is the default. Insider follows release candidates. Nightly follows &lt;code&gt;main&lt;/code&gt;. The release runbook documents the current triggers, version shapes, promotion behavior, cadence, and update-channel semantics.&lt;/p&gt;

&lt;h2&gt;
  
  
  A gotcha in the installer
&lt;/h2&gt;

&lt;p&gt;The install script only uses precompiled wheels by default. If a dependency has no precompiled wheel available, the script refuses to build it rather than falling back to a source compile. To allow source builds you have to opt in:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;KIROCREW_ALLOW_SOURCE_BUILDS&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That requires a C toolchain and the relevant &lt;code&gt;-dev&lt;/code&gt; headers. On a minimal container image, this is the difference between a clean install and a wall of build errors, so it is worth knowing before you hit it.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the Chinese edition does not do
&lt;/h2&gt;

&lt;p&gt;It does not fork the code. It does not change behavior. It is a documentation layer, and the repo is explicit about which parts are translation and which parts are added orientation. The upstream project is at 4400 stars; the Chinese edition is new and has no star history to speak of yet, so treat it as a translation in progress rather than a community with a track record.&lt;/p&gt;

&lt;p&gt;If you are a Chinese-speaking developer who bounced off the upstream README, the value here is concrete: a quick-start that tells you about the &lt;code&gt;kiro-cli&lt;/code&gt; prerequisite, the frontend staging step, the &lt;code&gt;0.1.2&lt;/code&gt; pinning floor, and the &lt;code&gt;KIROCREW_ALLOW_SOURCE_BUILDS&lt;/code&gt; flag before you discover them the hard way. That is a few minutes saved per person, multiplied across everyone who tries the project.&lt;/p&gt;

&lt;p&gt;If you find a translation error, the repo asks for an Issue or a PR. That is the whole maintenance model.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/KiroCrew-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/KiroCrew-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>aiopensourcchineseagentse</category>
    </item>
    <item>
      <title>OpenBot: A Chinese Translation of the Open-Source AI Coworker Template</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 10:48:15 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/openbot-a-chinese-translation-of-the-open-source-ai-coworker-template-22me</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/openbot-a-chinese-translation-of-the-open-source-ai-coworker-template-22me</guid>
      <description>&lt;h2&gt;
  
  
  What OpenBot is
&lt;/h2&gt;

&lt;p&gt;OpenBot is an open-source platform for running AI assistants on infrastructure you control. The official one-line description is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Open-source AI coworkers that each get a computer of their own: a browser, files and tools, with every action decided before it happens and recorded after. Bring any AG-UI agent.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The shape is familiar — think ChatGPT, Claude, or Grok — but the deployment model is not. Every component runs inside your own environment, and every part of it can be modified. Agents connect through the AG-UI protocol, so you can bring an agent built on a framework or one you wrote by hand.&lt;/p&gt;

&lt;p&gt;Each bot gets its own computer: a real browser with separate login credentials and separate files, limited to the tools you grant it. Actions pass through a gateway decision before execution and are recorded afterward.&lt;/p&gt;

&lt;p&gt;The original project is &lt;a href="https://github.com/CopilotKit/OpenBot" rel="noopener noreferrer"&gt;CopilotKit/OpenBot&lt;/a&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Stars: 6438&lt;/li&gt;
&lt;li&gt;Primary language: TypeScript&lt;/li&gt;
&lt;li&gt;License: MIT&lt;/li&gt;
&lt;li&gt;Topics: &lt;code&gt;ag-ui&lt;/code&gt;, &lt;code&gt;agent-governance&lt;/code&gt;, &lt;code&gt;ai-agents&lt;/code&gt;, &lt;code&gt;browser-automation&lt;/code&gt;, &lt;code&gt;copilotkit&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What the Chinese version adds
&lt;/h2&gt;

&lt;p&gt;The Chinese translation lives at &lt;a href="https://github.com/yangshun2005/OpenBot-cn" rel="noopener noreferrer"&gt;yangshun2005/OpenBot-cn&lt;/a&gt;. It was translated on 2026-10-14 and is a fresh repository, so it has no stars of its own yet — the 6438 figure above belongs to the original project only.&lt;/p&gt;

&lt;p&gt;The value here is straightforward: the original README is long, and a large part of it is operational detail — environment variables, setup scripts, self-hosting caveats. For Chinese-speaking developers, reading that in a second language adds friction before you have written a single line of code. The translated repository addresses that in two ways.&lt;/p&gt;

&lt;h3&gt;
  
  
  The translated README body
&lt;/h3&gt;

&lt;p&gt;The main body is a faithful Chinese translation of the original documentation. It covers the same material: the architecture, the AG-UI integration, the per-bot computer model, the gateway decision flow, and the sign-in configuration. Where the original says something, the translation says the same thing.&lt;/p&gt;

&lt;h3&gt;
  
  
  A separate quick-start guide
&lt;/h3&gt;

&lt;p&gt;On top of the translation, the repository adds a section labeled 「中文快速上手」 (Chinese quick start). This is explicitly marked as supplementary material, not part of the original documentation. Its stated purpose is to let you get the project running without reading the entire README first.&lt;/p&gt;

&lt;p&gt;That distinction matters. Translated documentation and an onboarding guide are different artifacts with different failure modes. Mixing them without labeling is how translation projects become unreliable. This one keeps them separate.&lt;/p&gt;

&lt;p&gt;The quick-start section covers four things the original spreads across a longer document:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What problem it solves.&lt;/strong&gt; OpenBot is for the case where you want an AI assistant but your data and tools must stay in your own environment. The translation is explicit that this is a template, not a product — there is no hosted version, and you clone the repository and modify it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The shortest path to running it.&lt;/strong&gt; Dependency installation, connecting a hosted Intelligence project, filling in required values, and starting the stack.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Environment requirements.&lt;/strong&gt; Operating system, dependencies, and version constraints.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Common pitfalls.&lt;/strong&gt; The things that break a first run.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Getting it running
&lt;/h2&gt;

&lt;p&gt;The quick-start path in the translated repository is short. First, create your environment file and install dependencies:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cp&lt;/span&gt; .env.example .env
bun &lt;span class="nb"&gt;install&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then connect a hosted Intelligence project:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx &lt;span class="nt"&gt;--yes&lt;/span&gt; copilotkit@latest login
npx &lt;span class="nt"&gt;--yes&lt;/span&gt; copilotkit@latest project &lt;span class="k"&gt;select
&lt;/span&gt;bun scripts/setup-learning.ts
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Fill in the remaining required values. The proof-of-concept bot uses OpenAI, so you need &lt;code&gt;OPENAI_API_KEY&lt;/code&gt;. If you are self-hosting Intelligence, there is additional configuration. To generate a custom encryption key:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;openssl rand &lt;span class="nt"&gt;-base64&lt;/span&gt; 32
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then start the stack:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;bash scripts/start.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To stop it, use &lt;code&gt;scripts/stop.sh&lt;/code&gt;. Adding &lt;code&gt;--keep-computers&lt;/code&gt; preserves the bots' computers.&lt;/p&gt;

&lt;h2&gt;
  
  
  Environment requirements
&lt;/h2&gt;

&lt;p&gt;The requirements are worth reading before you clone, because a few of them are non-obvious.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Operating system.&lt;/strong&gt; The README is written for laptops. The preview version that runs Intelligence locally targets macOS with Docker Desktop.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hardware.&lt;/strong&gt; The source material does not specify hardware requirements. Minimum deployment specifications are referenced in &lt;code&gt;docs/deployment.md&lt;/code&gt;, which the source material does not expand on.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dependencies:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;Docker, for PostgreSQL and the bundled bots&lt;/li&gt;
&lt;li&gt;Bun 1.3+ for the application and API server. The &lt;code&gt;packageManager&lt;/code&gt; field in &lt;code&gt;package.json&lt;/code&gt; is &lt;code&gt;bun@1.4.3&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;A CopilotKit Intelligence project and license. There is a free plan, and self-hosting is also possible.&lt;/li&gt;
&lt;li&gt;A model key. The proof-of-concept bot uses OpenAI; the LangGraph bot can use OpenAI, Anthropic, or Google.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Version constraints.&lt;/strong&gt; Bun 1.3+. The Dockerfile pins Playwright at 1.62.1, which must stay consistent with &lt;code&gt;agent-computer/package.json&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;On network conditions in mainland China, the source material says nothing about mirrors or download acceleration. If that is your situation, treat it as an open question rather than something the documentation answers.&lt;/p&gt;

&lt;h2&gt;
  
  
  The pitfalls that actually matter
&lt;/h2&gt;

&lt;p&gt;The translated quick-start calls out four issues. They are worth repeating because each one will cost you time if you miss it.&lt;/p&gt;

&lt;h3&gt;
  
  
  This is an Alpha-stage template, not a product
&lt;/h3&gt;

&lt;p&gt;There is no hosted version to sign up for. Every workspace in the repository is private and none of it is published as a package you can depend on. You clone it and adapt it. The examples under &lt;code&gt;examples/&lt;/code&gt; are tenant packages you are expected to replace with your own coworkers, channels, and skills.&lt;/p&gt;

&lt;p&gt;The original README states this plainly: everything described is a starting point, not a finished thing operated by someone else on your behalf.&lt;/p&gt;

&lt;h3&gt;
  
  
  Single-user mode is on by default
&lt;/h3&gt;

&lt;p&gt;In &lt;code&gt;.env.example&lt;/code&gt;, &lt;code&gt;OPENBOT_SINGLE_USER=true&lt;/code&gt; treats every request as an administrator. A fresh clone is accessible without OAuth. That is convenient for local development and unacceptable the moment anyone else can reach the deployment.&lt;/p&gt;

&lt;p&gt;The documentation is direct about this: sign-in must be configured before others can access the deployment. This is not a hardening step you do later.&lt;/p&gt;

&lt;h3&gt;
  
  
  You need external keys and a project
&lt;/h3&gt;

&lt;p&gt;A CopilotKit Intelligence project and license are required, along with a model key such as &lt;code&gt;OPENAI_API_KEY&lt;/code&gt;. If you self-host Intelligence, you must set &lt;code&gt;INTELLIGENCE_GATEWAY_WS_URL&lt;/code&gt; manually, and a missing &lt;code&gt;INTELLIGENCE_API_KEY&lt;/code&gt; will cause startup to fail.&lt;/p&gt;

&lt;h3&gt;
  
  
  Local Intelligence is a preview
&lt;/h3&gt;

&lt;p&gt;Running Intelligence locally targets macOS with Docker Desktop only. The local license is valid for 30 days. It is not a production installation. Self-hosted setup also requires Chrome or Edge to be installed first.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a translation is worth maintaining
&lt;/h2&gt;

&lt;p&gt;OpenBot's documentation is not short, and most of its length is operational. Setup scripts, environment variables, self-hosting caveats, version pins — this is the material where a misread line costs you an afternoon.&lt;/p&gt;

&lt;p&gt;Translation projects tend to fail in one of two ways. Either the translation drifts from the source and nobody notices, or the translator adds interpretation without marking it, so readers cannot tell what the upstream project actually claims. The OpenBot-cn repository handles the second problem by construction: the translated README body is labeled as a translation, and the quick-start guide is labeled as supplementary. If a translation is inaccurate, the repository asks for an Issue or PR.&lt;/p&gt;

&lt;p&gt;For a project at this stage — Alpha, actively developed, with rough edges and bugs expected — that structure is the right one. Upstream will change. A translation that makes its own additions visible can track those changes. One that blends them in cannot.&lt;/p&gt;

&lt;h2&gt;
  
  
  Who this is for
&lt;/h2&gt;

&lt;p&gt;If you are a Chinese-speaking developer evaluating OpenBot, the translated repository removes the reading barrier before you commit to a clone. You can understand the architecture, the AG-UI integration model, and the per-bot computer design in your first language, then run the setup commands, which are identical to the original.&lt;/p&gt;

&lt;p&gt;If you are not, the original repository is the place to start. The Chinese version is a translation of it, not a fork with different behavior.&lt;/p&gt;

&lt;p&gt;Either way, the honest framing is the one the documentation itself uses: this is a template you clone and reshape, in Alpha, running on your own machine. The 6438 stars on the original are a signal that other people found the problem worth solving. Whether it fits yours is a question only you can answer, and the quickest way to answer it is to run the four commands above.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/OpenBot-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/OpenBot-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

</description>
      <category>aiopensourcchineseagentse</category>
    </item>
    <item>
      <title>VoiceMem: a Chinese translation of the streaming dual-brain memory system for voice agents</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 09:53:23 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/voicemem-a-chinese-translation-of-the-streaming-dual-brain-memory-system-for-voice-agents-5g72</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/voicemem-a-chinese-translation-of-the-streaming-dual-brain-memory-system-for-voice-agents-5g72</guid>
      <description>&lt;p&gt;VoiceMem's README is long. It covers a dual-brain architecture, a model family, a dataset, a fine-tuning pipeline and an evaluation harness. If you read English comfortably, that's a normal afternoon. If you don't, the install steps alone can eat an hour before you discover that the demo code isn't in the pip package.&lt;/p&gt;

&lt;p&gt;That gap is what the Chinese version at &lt;a href="https://github.com/yangshun2005/VoiceMem-cn" rel="noopener noreferrer"&gt;yangshun2005/VoiceMem-cn&lt;/a&gt; addresses. It is a translation of &lt;a href="https://github.com/xzf-thu/VoiceMem" rel="noopener noreferrer"&gt;xzf-thu/VoiceMem&lt;/a&gt; (2501 stars, Python, Apache-2.0), translated on 2026-10-14.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the Chinese repo actually contains
&lt;/h2&gt;

&lt;p&gt;Two layers, and the distinction matters.&lt;/p&gt;

&lt;p&gt;The first is a translated README. The repo states plainly that the body is a Chinese translation of the original documentation, and that the goal is fidelity to the source. The original English README is kept alongside as &lt;code&gt;README_en.md&lt;/code&gt;, so you can diff them if a sentence reads oddly.&lt;/p&gt;

&lt;p&gt;The second layer is a supplement the maintainer added on top: a "中文快速上手" section marked explicitly as non-original content. Its purpose is narrow — get you from zero to a running demo without reading the full document. It covers what the project is, the shortest install path, environment requirements, and a list of common traps.&lt;/p&gt;

&lt;p&gt;I find the labeling honest. Translation repos often blur the line between "this is what upstream says" and "this is my advice," and that blurring is exactly where people get burned. Here the boundary is stated in the first few lines.&lt;/p&gt;

&lt;h2&gt;
  
  
  The project in one paragraph
&lt;/h2&gt;

&lt;p&gt;VoiceMem is a memory system for real-time voice agents. The architecture is described as a "streaming dual-brain" design: the left brain organizes factual memory using schemas and entities, the right brain manages personality, emotion and relationship information. The stated problem is that voice assistants forget what you told them and don't model who you are. The official one-liner calls it "infrastructure for the next generation of voice agents, designed to provide universal memory."&lt;/p&gt;

&lt;p&gt;The left brain, per the README, maintains Mem0's saturated performance under a Top-3 constraint. The right brain handles long- and short-term emotion attribution, with cross nodes maintained jointly with left-brain information. Latency claims: 0–300 ms speculative prefetch on streaming queries, roughly 300 tokens per single-turn query. Every component, including the underlying memory engine, is described as replaceable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting it running
&lt;/h2&gt;

&lt;p&gt;The install path is short. The traps are not.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/xzf-thu/VoiceMem.git
&lt;span class="nb"&gt;cd &lt;/span&gt;VoiceMem

&lt;span class="c"&gt;# memory system with ASR, speaker verification, scene, emotion, local embedding&lt;/span&gt;
pip &lt;span class="nb"&gt;install &lt;/span&gt;voicemem

&lt;span class="c"&gt;# optional: the fine-tuned Qwen response model&lt;/span&gt;
pip &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="s2"&gt;"voicemem[slm]"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then the models:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-U&lt;/span&gt; huggingface_hub
hf download zhifeixie/VoiceMem_Default_Models_Env &lt;span class="nt"&gt;--local-dir&lt;/span&gt; ./models
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And the demo:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python web/run.py
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then &lt;code&gt;http://localhost:8787&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Four things the Chinese guide flags that the English README leaves implicit or scattered:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The pip package is library-only.&lt;/strong&gt; The demo lives in the repo. If you &lt;code&gt;pip install voicemem&lt;/code&gt; and then look for &lt;code&gt;web/run.py&lt;/code&gt;, it isn't there. You need the clone. This is the kind of thing that costs twenty minutes of confused &lt;code&gt;find&lt;/code&gt; commands.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You need an OpenAI API key.&lt;/strong&gt; The examples use &lt;code&gt;VoiceMem(openai_key="api_xxx")&lt;/code&gt; or the &lt;code&gt;OPENAI_API_KEY&lt;/code&gt; environment variable. Not a surprise once you see it, but it isn't in the headline install block.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Local models are lazy-loaded.&lt;/strong&gt; The guide says to call &lt;code&gt;vm.warmup()&lt;/code&gt; first so the initial invocation doesn't stall on model loading. Reasonable advice for anything with a first-call penalty, and easy to miss when you're benchmarking latency.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Missing dependencies degrade silently.&lt;/strong&gt; The &lt;code&gt;pyproject.toml&lt;/code&gt; comments note that without &lt;code&gt;torchvision&lt;/code&gt; or &lt;code&gt;accelerate&lt;/code&gt;, the emotion attributor falls back to pure acoustic quadrants — no error, just less accurate results. Silent degradation is the worst failure mode for a memory system, because you'll blame the model instead of the install.&lt;/p&gt;

&lt;p&gt;On environment: &lt;code&gt;requires-python = "&amp;gt;=3.10"&lt;/code&gt;. The classifier says &lt;code&gt;OS Independent&lt;/code&gt;, and the original doesn't specify supported OS versions or hardware requirements like GPU memory. The dependency list pulled in by &lt;code&gt;pip install voicemem&lt;/code&gt; is substantial — numpy, openai, mem0ai, torch, torchaudio, torchvision, transformers==4.52.3, accelerate, funasr, modelscope. Note the pinned transformers version; that's a common source of conflicts if you're installing into an existing environment.&lt;/p&gt;

&lt;p&gt;Network is the other practical constraint. Models come from Hugging Face, and the Chinese guide notes that users in mainland China may need a mirror or an accelerated download path. That's a real friction point for a repo whose model download is a required step, not an optional one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a Chinese README is worth more than it sounds
&lt;/h2&gt;

&lt;p&gt;Machine translation of technical documentation is cheap now. What isn't cheap is knowing which parts of a document will break someone's setup.&lt;/p&gt;

&lt;p&gt;The upstream README is organized for someone evaluating the project: architecture, model family, dataset, citations. The Chinese supplement is organized for someone installing it tonight. Different documents, different ordering, and the second one is what most readers actually need on the first pass.&lt;/p&gt;

&lt;p&gt;There's also the dependency-pinning problem. &lt;code&gt;transformers==4.52.3&lt;/code&gt; is a hard constraint buried in a long list. A reader scanning English prose for install instructions may not register it. A reader working through a numbered checklist will.&lt;/p&gt;

&lt;p&gt;I'd hedge on one point: my sense of how much time this saves is based on reading both documents, not on watching anyone use them. Your mileage depends on how much PyTorch packaging you've already done.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's in the upstream repo beyond the install
&lt;/h2&gt;

&lt;p&gt;Worth knowing before you commit, since the Chinese version translates all of it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Releases.&lt;/strong&gt; v0.0.1 on 08/27/2026 shipped the initial VoiceMem and the technical report. v0.0.2 on 09/01/2026 fixed the event-date chain, removed a redundant right-brain memory category, and opened a pluggable speech synthesis layer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Model family.&lt;/strong&gt; Open-sourced 08/21/2026, described as able to read and understand memories produced by VoiceMem.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;VoiceMem Utils.&lt;/strong&gt; Same date, described as ready to use out of the box.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ChatMem-400K.&lt;/strong&gt; A dataset open-sourced 08/20/2026.&lt;/p&gt;

&lt;p&gt;The repo also links a project page, technical report, and Hugging Face collections for both Utils and the model families. The README includes a demo video, with a note that you need to unmute before playing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two things to check before adopting
&lt;/h2&gt;

&lt;p&gt;The right-brain emotion layer is the part most likely to be misconfigured, given the silent-fallback behavior. If you're evaluating whether the emotion attribution actually helps your use case, verify &lt;code&gt;torchvision&lt;/code&gt; and &lt;code&gt;accelerate&lt;/code&gt; are present and check that you're not running in the degraded acoustic-only mode. The failure produces plausible-looking output, which makes it hard to catch by inspection.&lt;/p&gt;

&lt;p&gt;Second, the replaceability claim. The README says all components including the memory engine can be swapped. That's a design statement, not a tested integration matrix. If you plan to substitute the embedding model or the memory backend, budget time for reading source rather than assuming a documented adapter interface.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the translation helps most
&lt;/h2&gt;

&lt;p&gt;If you're comfortable in English, the Chinese repo's main value is the quick-start section — the four traps above are worth the click regardless of which README you read afterward. If you're not, it's the difference between reading documentation and guessing at it.&lt;/p&gt;

&lt;p&gt;The repo invites issues and PRs for translation inaccuracies, which is the right posture for a project like this. Translations drift, upstream changes, and a version pinned to a 2026-10-14 snapshot will need maintenance.&lt;/p&gt;

&lt;p&gt;Original project: &lt;a href="https://github.com/xzf-thu/VoiceMem" rel="noopener noreferrer"&gt;xzf-thu/VoiceMem&lt;/a&gt; — 2501 stars, Python, Apache-2.0.&lt;br&gt;
Chinese version: &lt;a href="https://github.com/yangshun2005/VoiceMem-cn" rel="noopener noreferrer"&gt;yangshun2005/VoiceMem-cn&lt;/a&gt;.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/VoiceMem-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/VoiceMem-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>aiopensourcchineseagentse</category>
    </item>
    <item>
      <title>FrontierAgent: A Chinese Translation of the Agent Runtime, and What It Actually Ships</title>
      <dc:creator>sun young</dc:creator>
      <pubDate>Wed, 14 Oct 2026 09:50:39 +0000</pubDate>
      <link>https://dev.to/sun_young_517829fc09d0c05/frontieragent-a-chinese-translation-of-the-agent-runtime-and-what-it-actually-ships-pl8</link>
      <guid>https://dev.to/sun_young_517829fc09d0c05/frontieragent-a-chinese-translation-of-the-agent-runtime-and-what-it-actually-ships-pl8</guid>
      <description>&lt;p&gt;FrontierAgent is an open-source agent runtime, terminal product, and evaluation suite aimed at long-horizon research and file-based work. The original repo, &lt;a href="https://github.com/ApodexAI/FrontierAgent" rel="noopener noreferrer"&gt;ApodexAI/FrontierAgent&lt;/a&gt;, sits at 5243 stars, is written in Python, and is licensed Apache-2.0.&lt;/p&gt;

&lt;p&gt;There is now a Chinese translation of that documentation: &lt;a href="https://github.com/yangshun2005/FrontierAgent-cn" rel="noopener noreferrer"&gt;yangshun2005/FrontierAgent-cn&lt;/a&gt;. It was translated on 2026-10-14. It is a fresh repo, so don't read anything into a low star count — the point of this article is what's inside it, not how popular it is.&lt;/p&gt;

&lt;p&gt;I want to be precise about what the Chinese repo contains, because it's not just a translated README. It has two distinct layers, and the distinction matters if you're deciding whether to use it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Two layers in the Chinese repo
&lt;/h2&gt;

&lt;p&gt;The project explicitly separates them:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;A Chinese quick-start guide&lt;/strong&gt; at the top of the page. This is &lt;em&gt;supplementary material, not part of the original README&lt;/em&gt;. It exists so you can get the project running without reading the whole document.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The translated README body&lt;/strong&gt; below it. This is a faithful translation of the original English documentation.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The maintainers say translation inaccuracies should go through Issues or PRs. That's a reasonable setup — the quick-start is opinionated and can drift from upstream, while the translated body tracks the original.&lt;/p&gt;

&lt;p&gt;If you've ever tried to onboard onto an agent framework where the only docs are English and the terminology is dense (task boards, sandboxes, fail-closed authorization, checkpointing), you know why the quick-start layer is the useful part. It front-loads the minimum you need.&lt;/p&gt;

&lt;h2&gt;
  
  
  What FrontierAgent actually is
&lt;/h2&gt;

&lt;p&gt;The one-line description from the project: a native command-line TUI, ReAct and Agent Team modes, one command on macOS and Linux, no preinstall, no hard Docker dependency.&lt;/p&gt;

&lt;p&gt;The TUI ships two native workflows:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;ReAct&lt;/strong&gt; — a single stateful agent that researches, reads files, writes deliverables, runs commands, and iterates inside a task-level sandbox.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Agent Team&lt;/strong&gt; — a coordinator maintains a task board, delegates independent work to parallel sub-agents, collects their reports, and synthesizes the result.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The same workflow engine drives the benchmark runner used to evaluate Apodex models. The framework, tools, workflows, and evaluation layers are kept separate, so each can be reused independently. That separation is the part I'd actually care about if I were building on top of this rather than just running it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The pieces worth knowing about
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Task board.&lt;/strong&gt; In Agent Team mode, &lt;code&gt;add_task&lt;/code&gt; and &lt;code&gt;update_task&lt;/code&gt; events render live in the TUI sidebar. States are pending, in progress, done, blocked, and cancelled. This is a small thing that makes a big difference in practice — you can see what the coordinator thinks it's doing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sandboxed file operations.&lt;/strong&gt; Shell and file tools share one task-level filesystem: &lt;code&gt;/inputs&lt;/code&gt; is read-only, &lt;code&gt;/workspace&lt;/code&gt; is working state, &lt;code&gt;/outputs&lt;/code&gt; holds persistent deliverables. Both authorization and sandbox failures are fail-closed, meaning a failure denies rather than allows.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Async intervention.&lt;/strong&gt; You can type into the agent while it runs. The input queues and injects at the next safe turn boundary instead of killing the current run. In Agent Team mode it steers the coordinator; sub-agents already running are allowed to finish.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Transparent deliverables.&lt;/strong&gt; On macOS and Docker, &lt;code&gt;/outputs&lt;/code&gt; maps to &lt;code&gt;.apodex/runs/&amp;lt;run&amp;gt;/outputs&lt;/code&gt; on the host. The same run directory holds checkpoints, traces, engine logs, and trajectories.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Approvals, tracing, resume.&lt;/strong&gt; Mutating operations show a diff and require approval unless you pass &lt;code&gt;--yes&lt;/code&gt;. Sessions checkpoint, every operation is traced locally, &lt;code&gt;/revert&lt;/code&gt; restores session changes, and &lt;code&gt;--resume&lt;/code&gt; continues a saved run.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Built-in evaluation.&lt;/strong&gt; A subprocess runner supports research and file-based benchmarks, deterministic artifact collection, concurrency, and progress tracking.&lt;/p&gt;

&lt;h2&gt;
  
  
  Getting it running
&lt;/h2&gt;

&lt;p&gt;Prerequisites per the original: Git, Python 3.12, &lt;a href="https://docs.astral.sh/uv/" rel="noopener noreferrer"&gt;uv&lt;/a&gt;, and an OpenAI-compatible model endpoint. Docker is optional.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/ApodexAI/FrontierAgent.git
&lt;span class="nb"&gt;cd &lt;/span&gt;FrontierAgent
uv &lt;span class="nb"&gt;sync&lt;/span&gt; &lt;span class="nt"&gt;--python&lt;/span&gt; 3.12 &lt;span class="nt"&gt;--extra&lt;/span&gt; dev
&lt;span class="nb"&gt;cp&lt;/span&gt; .env.example .env
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then fill in &lt;code&gt;.env&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;OPENAI_API_KEY=your-key
OPENAI_BASE_URL=https://your-openai-compatible-endpoint/v1
OPENAI_MODEL=your-model-name
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;One honest gap: the Chinese quick-start does &lt;strong&gt;not&lt;/strong&gt; give the exact command to launch the TUI. The materials only mention the &lt;code&gt;frontier-agent&lt;/code&gt; TUI as a product name. If you need the launch command, read the translated README body — the quick-start tells you so directly rather than inventing a command.&lt;/p&gt;

&lt;h2&gt;
  
  
  Environment details
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Python:&lt;/strong&gt; &lt;code&gt;requires-python = "&amp;gt;=3.12"&lt;/code&gt;; the quick-start says Python 3.12.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tools:&lt;/strong&gt; Git and uv required; Docker optional.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model endpoint:&lt;/strong&gt; an OpenAI-compatible endpoint via &lt;code&gt;OPENAI_API_KEY&lt;/code&gt;, &lt;code&gt;OPENAI_BASE_URL&lt;/code&gt;, &lt;code&gt;OPENAI_MODEL&lt;/code&gt;. Without all three it won't run.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Optional dependency groups&lt;/strong&gt; (from &lt;code&gt;pyproject.toml&lt;/code&gt;): &lt;code&gt;document-readers&lt;/code&gt;, &lt;code&gt;plugins&lt;/code&gt;, &lt;code&gt;sandbox&lt;/code&gt;, &lt;code&gt;eval&lt;/code&gt;, &lt;code&gt;dev&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;OS:&lt;/strong&gt; not explicitly constrained in the docs. The Dockerfile is based on &lt;code&gt;python:3.12-slim&lt;/code&gt; and installs &lt;code&gt;bubblewrap&lt;/code&gt;, &lt;code&gt;libreoffice-core&lt;/code&gt;, and &lt;code&gt;libreoffice-impress&lt;/code&gt; inside the image.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Traps the Chinese docs call out
&lt;/h2&gt;

&lt;p&gt;These are the ones that will cost you an afternoon if you miss them.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You must configure the model endpoint.&lt;/strong&gt; No key, no base URL, no model name means no run. The project also offers a free Apodex API trial — two weeks, key from platform.apodex.ai — if you don't want to host a model yourself.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sandbox and authorization behavior.&lt;/strong&gt; Mutating operations show a diff and ask for approval unless &lt;code&gt;--yes&lt;/code&gt; is set. Authorization and sandbox failures are fail-closed. In the Docker image &lt;code&gt;SANDBOX_BACKEND=bwrap&lt;/code&gt;; if the runtime doesn't grant bubblewrap namespaces, it falls back to &lt;code&gt;container&lt;/code&gt; mode.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Optional web tools need extra keys.&lt;/strong&gt; Web research tools require &lt;code&gt;SERPER_API_KEY&lt;/code&gt; with &lt;code&gt;WEB_SEARCH_PROVIDER=serper&lt;/code&gt;. The materials leave &lt;code&gt;JINA_API_KEY&lt;/code&gt; unset.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Version pinning.&lt;/strong&gt; &lt;code&gt;apodex-agent-core==0.14.1&lt;/code&gt; is pinned exactly. The comment notes that 0.x MINOR upgrades can be breaking, which is why the pin is tight.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Network mirrors.&lt;/strong&gt; The materials don't mention domestic mirrors or download accelerators. If you're behind a slow connection to PyPI, that's on you to solve — the docs don't address it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why the Chinese version is worth having
&lt;/h2&gt;

&lt;p&gt;The value here isn't exotic. It's that the barrier for Chinese-speaking developers drops. Agent frameworks are dense with terms that don't translate cleanly — "fail-closed authorization," "turn boundary," "task board," "checkpoint" — and reading a translated version first means you spend your attention on the architecture instead of on vocabulary.&lt;/p&gt;

&lt;p&gt;The two-layer structure is the right call. A quick-start that gets you to a running process, plus a faithful translation of the full documentation underneath. The maintainers are upfront that the quick-start is supplementary and the translation aims for fidelity, and they invite corrections.&lt;/p&gt;

&lt;p&gt;If you're evaluating FrontierAgent and English docs are friction, start with the Chinese repo. Read the quick-start, get the endpoint configured, run it. Then go back to the translated body when you need to understand Agent Team's task board semantics or how &lt;code&gt;/outputs&lt;/code&gt; maps on your platform.&lt;/p&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/yangshun2005/FrontierAgent-cn" rel="noopener noreferrer"&gt;yangshun2005/FrontierAgent-cn&lt;/a&gt;&lt;br&gt;
Upstream: &lt;a href="https://github.com/ApodexAI/FrontierAgent" rel="noopener noreferrer"&gt;ApodexAI/FrontierAgent&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Chinese documentation: &lt;a href="https://github.com/yangshun2005/FrontierAgent-cn" rel="noopener noreferrer"&gt;https://github.com/yangshun2005/FrontierAgent-cn&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I'm an independent enterprise AI delivery consultant — private LLM deployment, RAG, agent workflows, AIOps. If your team is stuck somewhere in that stack, my inbox is open.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>aiopensourcchineseagentse</category>
    </item>
  </channel>
</rss>
