docs: truth-up architecture.md + 3 new domain pages + Linux/Arch caveats in localized READMEs#2634
Conversation
…ges + backfill Linux/Arch caveats to localized READMEs
📝 WalkthroughWalkthroughThis PR adds translated installation documentation for Linux systems and substantially updates OpenHuman's architecture documentation to reflect a runtime refactor moving from in-process QuickJS skill execution to a metadata-only skills model with native Rust tool execution and Node-backed helpers, along with three new comprehensive architecture pages documenting the MCP Registry, Memory Tree, and Security modules. ChangesDocumentation Updates
🎯 2 (Simple) | ⏱️ ~12 minutes Possibly Related PRs
Suggested Labels
Suggested Reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
gitbooks/developing/architecture.md (1)
253-253:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winAdd newline before section heading.
Line 253 is missing a blank line before the
---section separator, which breaks Markdown formatting conventions and may cause rendering issues.📝 Proposed fix
Memory encryption keys derive from user credentials via Argon2id, ensuring memory files are unreadable without authentication. The hybrid search combines semantic understanding (vector similarity) with keyword precision (SQLite FTS5) for reliable recall. + ---🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@gitbooks/developing/architecture.md` at line 253, Add a blank line immediately before the Markdown section separator '---' so that the separator is on its own line preceded by an empty line; locate the stray '---' in the content (the section separator at line with '---') and insert one newline above it to restore proper Markdown heading/section separation.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@gitbooks/developing/architecture.md`:
- Line 253: Add a blank line immediately before the Markdown section separator
'---' so that the separator is on its own line preceded by an empty line; locate
the stray '---' in the content (the section separator at line with '---') and
insert one newline above it to restore proper Markdown heading/section
separation.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 71304988-917c-4486-b7ad-be92cdd51cd9
📒 Files selected for processing (9)
README.de.mdREADME.ja-JP.mdREADME.ko.mdREADME.zh-CN.mdgitbooks/SUMMARY.mdgitbooks/developing/architecture.mdgitbooks/developing/architecture/mcp-registry.mdgitbooks/developing/architecture/memory-tree.mdgitbooks/developing/architecture/security.md
Summary
rquickjsskill-runtime references throughoutgitbooks/developing/architecture.md— the runtime was removed andsrc/openhuman/skills/is metadata-only perCLAUDE.md, but multiple diagrams, tables, and prose sections still described it as active.package.jsondeclarespnpm@10.10.0); rewrite the row referring to a top-levelskills/directory (does not exist) to point at the realsrc/openhuman/skills/and describe what it actually is now.gitbooks/developing/architecture/formemory_tree,mcp_registry, andsecurity— currently-thin gitbook areas where the source-sideREADME.md/mod.rsrustdoc is rich but no public page exists. Linked fromgitbooks/SUMMARY.md.README.mdsince CEF prewarm webview triggers a fatal X_ConfigureWindow BadWindow crash on Wayland #2463) intoREADME.zh-CN.md,README.ja-JP.md,README.ko.md,README.de.md. English content under<!-- TODO: translate (xx) -->markers — native-speaker translation follow-up invited.Problem
The architecture book diverged from the code on three load-bearing points:
CLAUDE.mdis explicit: "Skills runtime removed: the QuickJS /rquickjsruntime that previously executed skill packages is gone.src/openhuman/skills/is now a metadata-only domain." Yetgitbooks/developing/architecture.mdstill describes a QuickJS runtime engine, per-skill 64 MB sandbox limits, "QuickJS Skill Instance executes tool" in the MCP flow diagram, and the same in the end-to-end data flow. New contributors get an inaccurate mental model on day one.openhuman-app" in the repo-layout table, butpackage.jsondeclarespnpm@10.10.0and CI runspnpm install --frozen-lockfile.skills/directory; it does not exist.Three active and substantial domains (
memory_tree,mcp_registry,security) have no gitbook architecture page despite being among the most-touched in recent weeks (#2556, #2559) and despite each having a rich internal-audienceREADME.md/mod.rsrustdoc that's invisible to the public gitbook.The Linux Wayland warning + AUR pointer (
README.mdlines 73–75) was only added to the English README; localized READMEs never received the backfill — a German / Korean / Japanese / Chinese reader running the install command on Arch + Wayland hits an unexplained crash with no caveat in their language.Solution
gitbooks/developing/architecture.md— purged QuickJS references from the high-level architecture diagram, the performance table, the MCP flow diagram, the security architecture diagram + bullet, and the end-to-end data flow. Where a replacement was needed (e.g. "Sandboxed QuickJS per skill (64 MB)"), used what the code actually does today: tool execution gated bySecurityPolicy+ a host-selected sandbox backend fromsrc/openhuman/security/(Docker / Bubblewrap / Firejail / Landlock / Noop). Three intentional "QuickJS was removed" historical references retained (clearly marked as such) to make the migration explicit. Fixed "Yarn workspace" → "pnpm workspace" and rewrote the staleskills/row to point atsrc/openhuman/skills/and describe what it actually is now (metadata-only).Three new architecture pages — followed the existing
agent-harness.md/frontend.md/tauri-shell.mdconvention: YAML frontmatter withdescription:(multi-line>-) +icon:(FontAwesome name), H1 with the source path in backticks, ASCII diagram of how the domain plugs into the wider system, layout table sourced from the existingREADME.md/mod.rs, "Calls into" / "Called by" / "Tests" / "Related" sections. Each page describes only what the code currently does — no aspirational claims. Tables Prettier-aligned to match the existing style.Localized READMEs — inserted the Linux/Arch block right after the install bash code-block (matching the structural position in
README.md), wrapped in<!-- TODO: translate (xx) -->/<!-- /TODO -->markers so native speakers know exactly what needs translation in a follow-up PR.Submission Checklist
Summary by CodeRabbit