Agentero
에이전트를 연결해 로컬 Vault에 연구 컨텍스트를 보관·Zotero에서 무결점 이동·읽고 이해·재활용
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기One editor for every kind of document: Word, PDF, Markdown, drawings and more, drawn with WebGL. Your documents stay ordinary files in a folder.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗One editor for every kind of document. Open, edit and keep Word files, PDFs, spreadsheets, notes and drawings together, organized in folders on your computer.
Open Golem Docs · Download for your computer · Why it's open source · Sponsor on GitHub
[[wikilinks]] that follow a rename, next to your Word files and PDFs. Every document is an ordinary file in a folder you choose, so an Obsidian vault opens as it is.Made by David Figatner with Claude. Much of the code was written by Claude, with David steering: work that would have taken one person years.
Text is drawn with WebGL (MSDF glyph atlases), so zooming stays sharp and large documents stay fast. Documents are saved in the browser with no account; signed in, they are saved to the account instead (the browser keeps a cache for speed and offline work). The desktop app keeps every document as a file in a folder on disk, in step with the account.
pnpm workspace:
| Package | What it is |
|---|---|
client | The app: Vite + WebGL renderer, menus and toolbars, browser storage |
server | Cloudflare Worker: sign-in, cloud documents (D1 for the catalogue, R2 for the files), sharing, and multiplayer rooms (a Durable Object per document) |
desktop | Tauri shell for Mac, Windows and Linux: the web app in a native window, with the documents folder kept in sync |
docx, odt, pdf | Readers and writers for Word, OpenDocument and PDF |
layout, editor, ops | Page layout, editing, and the operations that merge live edits |
| Part | License |
|---|---|
The app: client, server, desktop, and everything else not listed below | AGPL-3.0 |
The libraries: docx, layout, editor, ops, odt, pdf | MIT (each package's LICENSE) |
Fonts, spelling dictionaries and the PDF font metrics keep their own licenses: see THIRD_PARTY_NOTICES.md. The Golem Docs name and logo aren't covered by these licenses: see TRADEMARKS.md. To contribute, see CONTRIBUTING.md.
Requirements: Node 22.13 or newer, and pnpm (corepack enable gets you one).
pnpm install
pnpm dev
Open http://localhost:5173. pnpm dev is the one command for local testing. It creates server/.dev.vars on first run, applies the database migrations, then starts the client (Vite, port 5173) and the server (wrangler dev, port 3001) with prefixed output. Ctrl-C stops both, and if either one crashes the other is stopped too.
The editor on its own needs nothing else (pnpm dev:client runs just that): documents save themselves in this browser as you edit (IndexedDB, see File ▸ Open Recent). The font atlases are committed, so there is nothing to generate.
The server has three Cloudflare environments in server/wrangler.jsonc, and local development never uses production's:
| Environment | Used by | D1 and R2 | Cloud documents |
|---|---|---|---|
dev | pnpm dev (once set up) | The real dev database and bucket (golemdocs-directory-dev, golemdocs-files-dev). The Worker runs on your machine; only D1 and R2 are remote. | On. Per-user databases are named golemdocs-dev-user-<id>. |
local | pnpm dev --local, or pnpm dev before dev is set up | Simulated on your machine (server/.wrangler/); works offline. | On, kept in the simulated directory database (per-user tables) instead of per-user databases. Sharing and multiplayer work too. |
| production | pnpm --filter @golemdocs/server deploy:prod only | golemdocs-directory, golemdocs-files, golemdocs-user-<id> | On |
Set up the dev environment once:
pnpm --filter @golemdocs/server exec wrangler login, so wrangler can reach your dev resources.pnpm --filter @golemdocs/server cf:setup:dev creates the dev D1 database and R2 bucket.server/wrangler.local.example.json to server/wrangler.local.json (git-ignored) and fill in DIRECTORY_DEV_ID with the printed database id and ACCOUNT_ID with your Cloudflare account id. server/wrangler.jsonc keeps REPLACE_… placeholders for these; the server's scripts merge your values into a git-ignored wrangler.generated.jsonc before each wrangler call.server/.dev.vars as CF_API_TOKEN. The Worker uses it to create and query the per-user databases, which a Worker can't bind at deploy time. This is separate from the wrangler login credential.After that, pnpm dev uses the dev resources on its own and applies the dev migrations on each start (pnpm dev --local forces the offline mode). It says which mode it chose when it starts.
Other things server/.dev.vars controls:
| Setting | Effect |
|---|---|
[email protected] | The API treats you as signed in, with no provider needed. Local development only; the first-run copy has it set. |
Provider keys (GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, and so on) | Real sign-in buttons. Register http://localhost:5173/api/auth/callback/<provider> as the redirect URI. Apple doesn't allow localhost, so test it on a deployed https domain. Setup for each provider is in server/AUTH.md. |
pnpm dev works offline with no Cloudflare account (cloud documents, sharing and rooms are all simulated). To see two people editing:
http://localhost:5173/api/auth/start/[email protected]&return=/. That signs that window in as a second user. Back in the first window, File ▸ Share… with [email protected]; the document appears under "Shared with me" on Alice's dashboard.word). Each copy has an owner (the account's user id) once it belongs to an account; signing in gives the ones without one to that account, and signing out deletes the account's copies. The last signed-in account is remembered in localStorage (golem.account) so the app still shows its documents offline.local mode: server/.wrangler/. Delete it to reset the simulated D1, R2 and sessions. In dev mode the data is in your dev Cloudflare resources (delete the golemdocs-dev-user-… databases and empty the bucket from the dashboard to reset).?doc= in the URL opens a document (welcome, fonts, war-and-peace, local:<id>, cloud:<id>).pnpm --filter @golemdocs/docx corpus downloads the .docx round-trip corpus; the dev server then lists it under File ▸ Open Sample.pnpm fonts regenerates the font atlases (needs cmake, FreeType and libpng; see scripts/fonts/generate.ts).pnpm typecheck
pnpm test
One Worker serves both the API and the built client. The steps, in order:
pnpm --filter @golemdocs/server cf:setup creates the golemdocs-directory D1 database and the golemdocs-files R2 bucket. Put the printed database id and your account id in server/wrangler.local.json as DIRECTORY_ID and ACCOUNT_ID (production).pnpm --filter @golemdocs/server exec wrangler secret put <NAME> --env="": CF_API_TOKEN (D1 Edit) plus each sign-in provider's values (server/AUTH.md).pnpm --filter @golemdocs/server cf:migrate applies the directory migrations to the remote database.pnpm --filter @golemdocs/server deploy:prod builds the client and deploys.The --env="" in the scripts selects the production (top-level) config. Never set DEV_USER in production.
CF_API_TOKEN (or the account id in wrangler.local.json) is missing. Sign-in still works without it.pnpm dev fails applying dev migrations: not logged in to Cloudflare or offline; run wrangler login, or use pnpm dev --local.@golemdocs/ops: run pnpm install so the workspace packages are linked.