diff --git a/CHANGELOG.md b/CHANGELOG.md index 4345d03..f492d90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,13 @@ All notable changes to Plaud Importer will be documented in this file. ## [Unreleased] +## [0.8.1] - 2026-06-15 + +### Changed + +- Build tooling: replaced the `builtin-modules` dev dependency with Node's native `module.builtinModules`, clearing a marketplace module-replacement recommendation. No runtime change. +- Documentation: added status badges to match the standard plugin README format; documented the plugin's vault file-listing (output-folder only) and write-only clipboard use under privacy; led Installation with Community plugins (BRAT demoted to beta/pre-release); added a plain-language "What to know before you install" risks section. + ## [0.8.0] - 2026-06-15 ### Added diff --git a/README.md b/README.md index bcdbc25..a73fe5a 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # Plaud Importer +[![CI](https://img.shields.io/github/actions/workflow/status/ckelsoe/obsidian-plaud-importer/ci.yml?branch=main&label=CI&logo=github)](https://github.com/ckelsoe/obsidian-plaud-importer/actions/workflows/ci.yml) [![Release](https://img.shields.io/github/actions/workflow/status/ckelsoe/obsidian-plaud-importer/release.yml?label=Release&logo=github)](https://github.com/ckelsoe/obsidian-plaud-importer/actions/workflows/release.yml) [![GitHub Downloads](https://img.shields.io/github/downloads/ckelsoe/obsidian-plaud-importer/total?logo=github&label=Downloads)](https://github.com/ckelsoe/obsidian-plaud-importer/releases) [![GitHub Stars](https://img.shields.io/github/stars/ckelsoe/obsidian-plaud-importer?style=flat&logo=github&label=Stars)](https://github.com/ckelsoe/obsidian-plaud-importer) [![Obsidian](https://img.shields.io/badge/Obsidian-v1.13.0%2B-7C3AED?logo=obsidian&logoColor=white)](https://obsidian.md) [![License](https://img.shields.io/github/license/ckelsoe/obsidian-plaud-importer)](https://github.com/ckelsoe/obsidian-plaud-importer/blob/main/LICENSE) [![Latest Release](https://img.shields.io/github/v/release/ckelsoe/obsidian-plaud-importer?label=Latest)](https://github.com/ckelsoe/obsidian-plaud-importer/releases/latest) + > ## ⚠️ Early Alpha > > **This plugin is in early alpha and under active development.** Expect bugs, UI changes between releases, and occasional rough edges. It talks to an **undocumented, reverse-engineered Plaud web API** that Plaud can change at any time. @@ -37,7 +39,7 @@ Plaud does not offer an official API yet, so this plugin works by using Plaud's ### What it will not do -- It only **adds** notes and attachments inside the output folder you choose. It never scans, edits, or deletes anything else in your vault. +- It only **adds** notes and attachments inside the output folder you choose, and never edits or deletes anything outside that folder. (To spot already-imported recordings it does read the frontmatter of notes inside your output folder — see [Privacy and network use](#privacy-and-network-use).) - It replaces an already-imported note only when **you** choose Overwrite (or confirm it under "Ask each time"). - It does not rewrite Plaud's transcript or summary text — it renders Plaud's own data into a note. @@ -187,6 +189,8 @@ Per Obsidian's [developer policies](https://docs.obsidian.md/Developer+policies) - **In-app sign-in** — when you click **Sign in**, the plugin opens Plaud's own website (`app.plaud.ai` / `web.plaud.ai`) in an embedded browser window so you can log in. Your password is entered into Plaud's page and is never read by the plugin; the plugin reads only the session token your logged-in session sends to Plaud's API, and stores it via `SecretStorage`. The sign-in session is kept in a private partition isolated from Obsidian's other web sessions. - **No telemetry** — no usage data, crash reports, or analytics are collected or transmitted. - **Secret handling** — the Plaud token is stored via Obsidian's `SecretStorage` API (per-vault, not synced), referenced by a secret ID in `data.json` rather than the token itself. +- **Reading your vault** — to show the "Imported" badge and avoid duplicate imports, the plugin lists your vault's markdown files and reads the frontmatter of notes **inside your output folder** to find ones it previously created (tagged with a `plaud-id`). It does not read the contents of notes elsewhere in your vault. +- **Clipboard** — the plugin only **writes** to the clipboard, and only when you click a Copy button (copying a debug log or an error/failure list for a bug report). It never reads your clipboard. - **Vault writes** — all file writes go through the Obsidian `Vault` API (`Vault.create`, `Vault.process`). No direct filesystem access. See [PRIVACY.md](./PRIVACY.md) for the full privacy policy and liability disclaimer, and [SECURITY.md](./SECURITY.md) for the security policy. The plugin is provided "AS IS" with no warranty (see [LICENSE](./LICENSE)); it is not affiliated with or endorsed by Plaud.AI, and you use it at your own risk. diff --git a/esbuild.config.mjs b/esbuild.config.mjs index 0bd0892..b1e96e3 100644 --- a/esbuild.config.mjs +++ b/esbuild.config.mjs @@ -2,7 +2,7 @@ import esbuild from "esbuild"; import process from "process"; import fs from "node:fs/promises"; import path from "node:path"; -import builtins from "builtin-modules"; +import { builtinModules } from "node:module"; const banner = `/* @@ -77,7 +77,7 @@ const context = await esbuild.context({ "@lezer/common", "@lezer/highlight", "@lezer/lr", - ...builtins], + ...builtinModules], format: "cjs", target: "es2018", logLevel: "info", diff --git a/manifest.json b/manifest.json index 78ef29b..00e4d63 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "plaud-importer", "name": "Plaud Importer", - "version": "0.8.0", + "version": "0.8.1", "minAppVersion": "1.13.0", "description": "Import meeting summaries, transcripts, and attachments from Plaud.AI into your vault.", "author": "Charles Kelsoe (ckelsoe)", diff --git a/package-lock.json b/package-lock.json index 6bd1fef..1e53e42 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "obsidian-plaud-importer", - "version": "0.8.0", + "version": "0.8.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "obsidian-plaud-importer", - "version": "0.8.0", + "version": "0.8.1", "license": "MIT", "devDependencies": { "@eslint/js": "^9.39.2", @@ -15,7 +15,6 @@ "@typescript-eslint/eslint-plugin": "^8.35.0", "@typescript-eslint/parser": "^8.35.0", "bestzip": "^2.2.3", - "builtin-modules": "^5.0.0", "esbuild": "^0.28.1", "eslint": "^9.39.2", "eslint-plugin-obsidianmd": "^0.3.0", @@ -3569,19 +3568,6 @@ "dev": true, "license": "MIT" }, - "node_modules/builtin-modules": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-5.1.0.tgz", - "integrity": "sha512-c5JxaDrzwRjq3WyJkI1AGR5xy6Gr6udlt7sQPbl09+3ckB+Zo2qqQ2KhCTBr7Q8dHB43bENGYEk4xddrFH/b7A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/call-bind": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz", diff --git a/package.json b/package.json index 99295ce..fff7dd1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "obsidian-plaud-importer", - "version": "0.8.0", + "version": "0.8.1", "description": "Import meeting summaries, transcripts, and attachments from Plaud.AI into an Obsidian vault.", "main": "main.js", "scripts": { @@ -27,7 +27,6 @@ "@typescript-eslint/eslint-plugin": "^8.35.0", "@typescript-eslint/parser": "^8.35.0", "bestzip": "^2.2.3", - "builtin-modules": "^5.0.0", "esbuild": "^0.28.1", "eslint": "^9.39.2", "eslint-plugin-obsidianmd": "^0.3.0", diff --git a/versions.json b/versions.json index fc1ff51..3526e58 100644 --- a/versions.json +++ b/versions.json @@ -16,5 +16,6 @@ "0.5.0": "1.13.0", "0.6.0": "1.13.0", "0.7.0": "1.13.0", - "0.8.0": "1.13.0" + "0.8.0": "1.13.0", + "0.8.1": "1.13.0" } \ No newline at end of file