by cecam
Classify the active note with TypeSafe's Jev and move it to a selected folder, with a review folder and undo.
Jev Organizer
Classify the active Markdown note with TypeSafe's Jev and move it to one of your selected folders in Obsidian.
Guía en español · Report a bug · Suggest an improvement
Early release. Desktop only. The interface is currently in Spanish. This project is independent of Obsidian and TypeSafe. It is being prepared for the community directory; it is not yet listed.
What it does
- Pick folders using checkboxes, including select all, then describe what belongs in each folder.
- Run Clasificar y archivar nota (classify and archive note) from the command palette or your own hotkey.
- Jev chooses from that closed list. The plugin moves the note and preserves its filename.
- Ambiguous results go to Por revisar (needs review), created on first activation. You can change this folder.
- Undo the last move during the current session. Existing filenames are never deliberately overwritten.
- Deselecting a folder preserves its description for future use.
There is no background classification, bulk processing, automatic tagging, or rewriting of the note. Obsidian may update links as part of a move, according to your link settings.
Requirements and costs
- Obsidian 1.11.4 or newer on desktop. Mobile is not supported in this release.
- Your own TypeSafe account and API key with access to Jev. The plugin does not provide an API key or credits.
- Internet access when checking the connection or classifying a note.
The plugin is free to use under MIT, but TypeSafe API usage may incur charges. Check your account and TypeSafe's current model information. For the Obsidian directory, this dependency is disclosed as Optional payment.
Privacy and network disclosure
When you run classification, the plugin sends the active note's title and complete Markdown, including existing frontmatter, plus the enabled category names, descriptions, and examples to https://api.typesafe.ai/v1/systemone. It does not expand linked notes or attachments, or send category folder paths. A note's own text may contain personal information or paths.
Probar conexión calls https://api.typesafe.ai/v1/models to check access without sending notes. Requests carry your TypeSafe API key. Data processing at TypeSafe is governed by TypeSafe's legal and privacy documents; this plugin does not promise zero retention by the provider.
The plugin has no analytics, telemetry, advertising, or custom backend. It does not log note contents, API keys, or API response bodies. It does not access files outside the vault for classification and does not install or update itself. Settings are saved in the vault's plugin configuration; API keys are managed by Obsidian's secret storage, with only the selected secret ID saved in the plugin's settings. No additional encryption is implemented by the plugin.
Disabling the plugin prevents pending results from moving notes. It cannot recall a request already sent to TypeSafe.
Install manually
Until the plugin is available in the directory:
- Download
main.js,manifest.json, andstyles.cssfrom a published release. If no release is published yet, build from source using the commands below. - Place those three files inside
<vault>/.obsidian/plugins/jev-organizer/. If you use a custom configuration directory, substitute it for.obsidian. - Enable community plugins, reload Obsidian, and enable Jev Organizer.
Alternatively, extract the release ZIP and copy its jev-organizer folder into the plugins directory. To update, disable the plugin and replace only the three runtime files. Keep your existing data.json to preserve configuration.
Configure and use
- Open Settings → Jev Organizer.
- Under Clave de TypeSafe, create or select a secret. Its ID can be
jev-organizer-api-key: lowercase letters, digits and hyphens only. Paste the API key into the Secret field, not the ID. - Click Probar conexión. This tests API access, not a complete classification or access to every model version.
- Select folders and click Aplicar selección. Subfolders are independent choices; the review folder is excluded. At most 254 folders may participate.
- Fill in the required description for each selected folder. Describe inclusions, exclusions, and optional examples. Changes to descriptions save as you type.
- Open a note and run Jev Organizer: Clasificar y archivar nota. The note is saved before the request.
- Use Deshacer in the result notice or Jev Organizer: Deshacer último movimiento to undo the last move.
The initial confidence threshold is 0.80. Lower-confidence results and “none of these categories” go to the review folder. This is not an 80% accuracy guarantee. The default model is pinned to jev-1.13.0; an advanced setting accepts other Jev IDs, including jev-latest.
Limits and recovery
- Classification can be wrong. Start with copied notes and descriptions that distinguish overlapping categories.
- A changed note or changed settings during a request cancel the move. Run the command again.
- Network/authentication errors, malformed responses, missing category folders and filename collisions leave the note in its current location. They do not send it to review.
- Requests have a 30-second deadline and at most one retry for transient HTTP errors. Oversized notes are not silently truncated.
- Undo survives only for the current plugin session, preserves later edits, and stops if the file moved externally, the original folder disappeared or the original filename is occupied.
- Internal links follow your Obsidian settings. Enable automatic link updates if you want Obsidian to maintain links on moves.
- The maintainer has used earlier versions in Obsidian. Automated tests cover logic and a simulated vault; this is not a claim of certification or measured accuracy on other users' notes. See validation notes.
Feedback
Please use GitHub Issues. Include plugin/Obsidian versions, operating system, reproducible steps, and expected versus actual behavior. Never post API keys, your secrets store, or private notes. Use fictional examples when reporting classification problems. See contributing and security reporting.
Development
Node.js 22 or later and npm are recommended for the development scripts.
npm ci
npm run check
npm run package
check runs the official Obsidian ESLint rules, TypeScript/build, tests, and release metadata validation. package creates the installable ZIP and SHA-256 under release/; the three runtime files are also available in the project root. Packaging uses /usr/bin/zip on macOS/Linux. npm run dev watches source changes.
The optional evaluation runner requires TYPESAFE_API_KEY in your environment. npm run evaluate sends 24 synthetic Spanish examples to TypeSafe and generates a local report. It is not a benchmark of real-world accuracy. See the Spanish guide for custom datasets. CI uses mocks and never needs a real API key.
License
MIT — Copyright (c) 2026 Celso Cárdenas.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.