# Versovoice Turns the work already in your vault into LinkedIn posts, so you write from things you actually did instead of from an empty box. Your notes are checked **on this machine** before anything is sent. Anything holding a key, a password, a confidentiality marker or somebody else's personal details is refused, and a refused file never travels. You need a [Verso](https://versovoice.com) account. Verso writes drafts; a person decides what gets published. ## Install **From Obsidian.** Settings, Community plugins, Browse, search for *Versovoice*, Install, Enable. **By hand.** Download `main.js` and `manifest.json` from the latest release into `/.obsidian/plugins/versovoice/`, then restart Obsidian. ## Connect it 1. In Verso, open **Settings, Integrations** and press **Connect Obsidian**. You get a key that looks like `vrs_...`. It is shown once. 2. Paste it into this plugin's settings. 3. Press **Preview** to see exactly what would be sent, and what is held back and why. 4. Press the send icon in the ribbon, or run *Send notes to Verso* from the command palette. Lost the key? Press Connect again in Verso. That mints a new one and stops the old one working. ## What it shares **Your whole vault, minus the folders you untick.** The settings tab lists your top level folders with a note count on each. Untick one to keep it, and everything inside it, out of Verso. Prefer to name the folders yourself? Turn **Share the whole vault** off and it reads only the folders you add. Nothing chosen in that mode means nothing is sent. Either way, unticking `Work` does not also drop `Workshop`, and Verso is told what you excluded, so it enforces the same rule at its end rather than trusting this plugin to keep its word. ## What it will and will not do - **Preview first.** It counts what would go and lists what is held back and why, before a single file leaves. The preview and the send run the same pass, so it cannot tell you one thing and do another. - Every file is checked on your machine by [`classify.ts`](classify.ts), which is the same code Verso's server runs on arrival. Read it: it is the whole safety rule, in one file. - A note with `verso: ignore` in its frontmatter is never sent. A `.versoignore` file works like `.gitignore`. - Files over 512KB are skipped. That size is a data dump, not a note. - A big vault is sent 2000 notes at a time, newest first, so one press cannot eat your whole month's allowance. Press again for the rest. Notes that have not changed since last time are recognised and not re-sent. - It only ever sends. It never reads your posts back, never publishes, and never deletes anything in your vault. - The key can do two things, and only to this one vault: push files, and record which folders it is reading. It cannot read your posts, touch billing, or see any other source. Disconnecting in Verso deletes the source, the key, and every document that came from it. The key lives in this vault's plugin data as plain text, like every Obsidian plugin setting, because Obsidian has no secret store for plugins. If you sync your `.obsidian` folder between machines, the key goes with it, so treat it the way you would treat any other password sitting in that folder. ## Build it yourself ```bash npm install npm run build ``` Writes `main.js` beside the source. `obsidian` is external: the app provides it at runtime. ## Licence MIT. See [LICENSE](LICENSE).