DEV Community

sun young
sun young

Posted on

genoffice: a Chinese translation of the open-source AI Office suite

The original genspark-ai/genoffice repository has 9580 stars, is written in TypeScript, and ships under Apache-2.0. The Chinese version, yangshun2005/genoffice-cn, 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.

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.

Why a translated README is not a trivial thing

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.

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.

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

  • What is this, and what problem does it solve
  • The shortest path to a running app
  • Environment requirements
  • Known gotchas

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.

What genoffice actually does

The core claim, from the README: it opens and saves native .docx, .xlsx, and .pptx 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.

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.

The other structural choices:

Edits are reviewable. 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.

Local-first. 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.

Search by content. The home screen runs a local SQLite index over .docx, .xlsx, .pptx, 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.

Ask AI across documents. 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.

Bring your own key, or don't. 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.

Scriptable. The app ships a genoffice 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.

Platforms: macOS (Apple Silicon and Intel), Windows (x64 and Arm), Linux (deb, rpm, AppImage).

Getting it running

The Chinese quick-start gives a four-step path:

  1. Go to the Releases page and pick your platform build.
  2. Install and launch. (The original README doesn't spell out install steps, and the translation says so rather than inventing them.)
  3. Open or create a document, type your edit request into the AI panel.
  4. 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 package.json scripts are available in the material.

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.

Environment requirements

From package.json's engines field, for source builds only:

  • Node.js >=22.12.0
  • npm >=10
  • Project version 0.1.0

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.

The gotchas section

This is the part I'd point a colleague to first.

AI features need a key or a login. 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.

Local-first has a boundary. 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.

Source builds have version floors. Node >=22.12.0 and npm >=10, and postinstall runs install-electron. Miss the version floor and you'll get a confusing failure rather than a clear one.

The translation also says it found no other obvious pitfalls in the source material, rather than padding the list.

On the translation itself

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.

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.

Who this is for

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.

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.

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.

Repository: https://github.com/yangshun2005/genoffice-cn
Upstream: https://github.com/genspark-ai/genoffice


Chinese documentation: https://github.com/yangshun2005/genoffice-cn

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.

Top comments (0)