[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-81997":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":15,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":17,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":20,"fork":20,"defaultBranch":21,"hasWiki":22,"hasPages":20,"topics":23,"createdAt":10,"pushedAt":10,"updatedAt":34,"readmeContent":35,"aiSummary":36,"trendingCount":16,"starSnapshotCount":16,"syncStatus":37,"lastSyncTime":38,"discoverSource":39},81997,"hermes-desktop","sir1st\u002Fhermes-desktop","sir1st","Moved to EKKOLearnAI\u002Fhermes-web-ui; this repo is kept for historical releases.","https:\u002F\u002Fgithub.com\u002Fsir1st\u002Fhermes-desktop\u002Freleases\u002Flatest",null,"JavaScript",62,7,21,1,0,4,27,2.71,false,"main",true,[24,25,26,27,28,29,30,31,32,33],"ai-agent","chatbot","cross-platform","deepseek","desktop-app","dingtalk","electron","hermes-agent","llm","self-hosted","2026-06-12 02:04:22","# Hermes Desktop\n\nEnglish · [中文](README.zh-CN.md)\n\nAll-in-one cross-platform desktop app for [Hermes Agent](https:\u002F\u002Fgithub.com\u002FNousResearch\u002Fhermes-agent).\nBundles a Python runtime + `hermes-agent` + [`hermes-web-ui`](https:\u002F\u002Fgithub.com\u002FEKKOLearnAI\u002Fhermes-web-ui)\ninto a single download — users don't need to install Python or Node.\n\n![Hermes Desktop chat](docs\u002Fscreenshot-chat.png)\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"docs\u002Fdemo.mp4\">\u003Cimg src=\"docs\u002Fdemo.gif\" alt=\"Hermes Desktop demo\" width=\"720\" \u002F>\u003C\u002Fa>\u003Cbr\u002F>\n  \u003Cem>Hermes Desktop ↔ DingTalk via DeepSeek (50s)\u003C\u002Fem>\n\u003C\u002Fp>\n\n## Acknowledgements\n\nThis project would not exist without two upstream projects, and the\nmaintainers behind them. Hermes Desktop is a packaging shell — almost\nall of the user-visible surface comes from these two:\n\n- **[Hermes Agent](https:\u002F\u002Fgithub.com\u002FNousResearch\u002Fhermes-agent)** by\n  [Nous Research](https:\u002F\u002Fnousresearch.com) — the self-improving AI\n  agent that powers every conversation, tool call, skill, and gateway\n  in this app. Hermes Desktop bundles it verbatim from PyPI.\n- **[hermes-web-ui](https:\u002F\u002Fgithub.com\u002FEKKOLearnAI\u002Fhermes-web-ui)** by\n  [EKKO Learn AI](https:\u002F\u002Fgithub.com\u002FEKKOLearnAI) — the Vue 3 +\n  Koa multi-platform chat dashboard. Hermes Desktop vendors it as a git\n  submodule and runs its server inside Electron.\n\nIf you find Hermes Desktop useful, please go give those repositories a\nstar — they're doing the hard work.\n\n## Architecture\n\n```\nElectron Main (Node)\n ├─ Spawns vendored hermes-web-ui Koa server (ELECTRON_RUN_AS_NODE) on 127.0.0.1:8648\n │   └─ HERMES_BIN → bundled python's hermes CLI (gateway)\n └─ BrowserWindow loads http:\u002F\u002F127.0.0.1:8648 with auth token injected via preload\n```\n\n- Web UI: git submodule at `vendor\u002Fhermes-web-ui`\n- Python: `python-build-standalone` extracted under `resources\u002Fpython\u002F\u003Cos>-\u003Carch>\u002F`\n- `hermes-agent` is `pip install`ed into that bundled Python at build time\n\n## Install\n\nGrab the latest installer for your platform from\n[GitHub Releases](https:\u002F\u002Fgithub.com\u002Fsir1st\u002Fhermes-desktop\u002Freleases\u002Flatest):\n\n| Platform | File |\n|----------|------|\n| macOS Apple Silicon | `Hermes-Desktop-\u003Cv>-arm64.dmg` |\n| macOS Intel | `Hermes-Desktop-\u003Cv>-x64.dmg` |\n| Windows x64 | `Hermes-Desktop-\u003Cv>-x64.exe` |\n| Linux x64 | `Hermes-Desktop-\u003Cv>-x86_64.AppImage` \u002F `.deb` |\n| Linux arm64 | `Hermes-Desktop-\u003Cv>-arm64.AppImage` |\n\nThe app is **not code-signed yet** in v0.x. First-run hints:\n\n- **macOS**: after dragging to `Applications`, run once:\n  ```sh\n  xattr -cr \"\u002FApplications\u002FHermes Desktop.app\"\n  ```\n  Otherwise Gatekeeper says \"已损坏\" because the download has the\n  `com.apple.quarantine` attribute and the binary is unsigned.\n- **Windows**: SmartScreen will show \"Unrecognized app\" — click *More info → Run anyway*.\n\n## Development\n\n```sh\ngit clone --recurse-submodules https:\u002F\u002Fgithub.com\u002Fsir1st\u002Fhermes-desktop\ncd hermes-desktop\nnpm install\n\n# One-time per machine: build vendored web-ui\ncd vendor\u002Fhermes-web-ui && npm ci && npm run build && cd ..\u002F..\n\n# One-time per (os, arch): fetch Python + install hermes-agent + apply patches\nnpm run prepare:python   # uses uv if available, else pip\n\nnpm run dev              # launches Electron with the dev build\n```\n\n`uv` is strongly recommended for `prepare:python` — pip on some networks\u002Fmirrors\nsilently hangs while uv resolves the full hermes-agent dep tree in seconds.\n\n## Packaging\n\n```sh\nnpm run dist:mac     # → release\u002FHermes Desktop-\u003Cversion>-arm64.dmg + x64.dmg\nnpm run dist:win     # → release\u002F...-x64.exe (NSIS)\nnpm run dist:linux   # → release\u002F...-x64.AppImage + .deb\n```\n\n## Releases\n\nCI in `.github\u002Fworkflows\u002Frelease.yml` builds the matrix on `vX.Y.Z` tags\nand uploads to GitHub Releases. Each matrix job builds with `--publish never`\nand uploads workflow artifacts; a final `publish` job downloads them and\ncreates one Release via `gh release create` (avoids electron-builder's\nparallel-draft race). `electron-updater` auto-detects updates on next launch.\n\n## Layout\n\n```\nhermes-desktop\u002F\n├── src\u002Fmain\u002F                  # Electron main process\n├── src\u002Fpreload\u002F               # Renderer preload (token + auto-login)\n├── vendor\u002Fhermes-web-ui\u002F      # submodule, locked version\n├── resources\u002Fpython\u002F          # CI \u002F dev artifact, gitignored\n├── patches\u002F                   # README of curated upstream patches\n├── scripts\u002F\n│   ├── fetch-python.mjs       # download python-build-standalone\n│   ├── install-hermes.mjs     # uv pip install hermes-agent + relocatable launcher\n│   ├── prune-python.mjs       # strip __pycache__\u002Ftests\u002Fidle\u002Ftkinter\n│   ├── apply-hermes-patches.mjs   # local fixes to bundled hermes-agent\n│   └── apply-webui-patches.mjs    # local fixes to bundled hermes-web-ui\n└── electron-builder.yml\n```\n\n## Versions pinned\n\n- `python-build-standalone`: `20260510`\n- Python: `3.12.13`\n- `hermes-agent`: `0.14.0`\n- `hermes-web-ui`: tracked at the submodule's HEAD\n\nBump in `scripts\u002Ffetch-python.mjs`, `scripts\u002Finstall-hermes.mjs`, and the submodule.\n\n## License\n\nHermes Desktop itself is MIT. Bundled artifacts retain their upstream licenses:\n\n- `hermes-agent` — MIT (Nous Research)\n- `hermes-web-ui` — BSL-1.1 (EKKO Learn AI)\n- `python-build-standalone` — Python Software Foundation License + others\n\nSee each project's repository for full terms.\n","Hermes Desktop 是一款集成了 Python 运行时、hermes-agent 和 hermes-web-ui 的跨平台桌面应用程序。其核心功能包括提供一个无需额外安装 Python 或 Node.js 环境即可运行的完整AI代理解决方案，支持与钉钉等通讯工具集成，实现智能对话及技能调用等功能。技术上，该项目基于 Electron 框架构建，使用 Vue 3 + Koa 构建用户界面，并通过打包独立的 Python 环境来确保兼容性和易用性。适用于需要快速部署自托管AI助手或聊天机器人的个人开发者及小团队，在教育、办公自动化等领域有着广泛的应用潜力。",2,"2026-06-11 04:07:26","CREATED_QUERY"]