{"_id":"@azatakmyradov/opencode-save-md-plugin","_rev":"3-67fe365d6d6d70609d59f87aff69c8d2","name":"@azatakmyradov/opencode-save-md-plugin","dist-tags":{"latest":"0.1.1"},"versions":{"0.0.0":{"name":"@azatakmyradov/opencode-save-md-plugin","version":"0.0.0","keywords":["markdown","opencode","opencode-plugin","tui"],"license":"MIT","_id":"@azatakmyradov/opencode-save-md-plugin@0.0.0","maintainers":[{"name":"azatakmyradov","email":"azat@akmyradov.me"}],"homepage":"https://github.com/azatakmyradov/opencode-plugins/tree/main/packages/save-md","bugs":{"url":"https://github.com/azatakmyradov/opencode-plugins/issues"},"dist":{"shasum":"322490a2f59f82d832ca535a71c0e0143e4d9abc","tarball":"https://registry.npmjs.org/@azatakmyradov/opencode-save-md-plugin/-/opencode-save-md-plugin-0.0.0.tgz","fileCount":5,"integrity":"sha512-MAi7/HWbygXNkTP5BCqqZPcsm4BCTGblvtK/Y8zJNIesQmUtAE9cxJB9mpKN3uGTcdWpGbIuwVpS0aLVfD6wgA==","signatures":[{"sig":"MEUCIQCZQ3FcluOLbIhSCZnwRGz/OSVJ4fsTugb3uVHdhAwwbwIgAVr41VG8xURIUq+WG+dIRkC3hdUzW7P+2GmzDpdPAoE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16707},"type":"module","exports":{".":"./dist/index.js","./rpc":"./dist/rpc.js","./tui":"./dist/tui.js"},"gitHead":"ddc6a34b9ea6af093282a0d2e91ee822967df14c","scripts":{"test":"vp test run","build":"bun ../../scripts/build.ts .","check":"tsc --noEmit","prepack":"bun run build"},"_npmUser":{"name":"azatakmyradov","email":"azat@akmyradov.me"},"repository":{"url":"git+https://github.com/azatakmyradov/opencode-plugins.git","type":"git","directory":"packages/save-md"},"_npmVersion":"11.19.0","description":"Save the latest OpenCode assistant response as Markdown","directories":{},"_nodeVersion":"24.20.0","dependencies":{"zod":"4.1.8","effect":"4.0.0-rc.112","@opencode-ai/client":"0.0.0-beta-18721","@opencode-ai/plugin":"0.0.0-beta-18721","@opencode-ai/schema":"0.0.0-beta-18721"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"solid-js":">=1.9.0","@opentui/core":">=0.5.9","@opentui/solid":">=0.5.9"},"peerDependenciesMeta":{"solid-js":{"optional":true},"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-save-md-plugin_0.0.0_1788180498911_0.8180719208529366","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@azatakmyradov/opencode-save-md-plugin","version":"0.1.0","keywords":["markdown","opencode","opencode-plugin","tui"],"license":"MIT","_id":"@azatakmyradov/opencode-save-md-plugin@0.1.0","maintainers":[{"name":"azatakmyradov","email":"azat@akmyradov.me"}],"homepage":"https://github.com/azatakmyradov/opencode-plugins/tree/main/packages/save-md","bugs":{"url":"https://github.com/azatakmyradov/opencode-plugins/issues"},"dist":{"shasum":"79b058f6cdc2183031ab597e49f3d4172be92f9c","tarball":"https://registry.npmjs.org/@azatakmyradov/opencode-save-md-plugin/-/opencode-save-md-plugin-0.1.0.tgz","fileCount":5,"integrity":"sha512-MGzZYSGRqoZOhvhFxNEb7FxVIYF5NpAqQ7Yto1DunO8wOKQx71DlKwYtpbKxUeGtMuBGKTGWi5mm3WlVi0wPbQ==","signatures":[{"sig":"MEYCIQDRvD/WxgSRfRckg7wcQ/Dx/Uy95v0EcSsyfaWYoq8JbgIhAI+omzD3SkreLro1Uj4HERR9SRLMYqjiu4kU+RVxZFAn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@azatakmyradov%2fopencode-save-md-plugin@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":16707},"type":"module","exports":{".":"./dist/index.js","./rpc":"./dist/rpc.js","./tui":"./dist/tui.js"},"gitHead":"03d27a16097a72a394784a3aa646298ea6eff1e7","scripts":{"test":"vp test run","build":"bun ../../scripts/build.ts .","check":"tsc --noEmit","prepack":"bun run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:97f2461a-9e72-4f33-ab3f-1a0f663f1ac0"}},"repository":{"url":"git+https://github.com/azatakmyradov/opencode-plugins.git","type":"git","directory":"packages/save-md"},"_npmVersion":"11.17.0","description":"Save the latest OpenCode assistant response as Markdown","directories":{},"_nodeVersion":"24.19.0","dependencies":{"zod":"4.1.8","effect":"4.0.0-rc.112","@opencode-ai/client":"0.0.0-beta-18721","@opencode-ai/plugin":"0.0.0-beta-18721","@opencode-ai/schema":"0.0.0-beta-18721"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"solid-js":">=1.9.0","@opentui/core":">=0.5.9","@opentui/solid":">=0.5.9"},"peerDependenciesMeta":{"solid-js":{"optional":true},"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-save-md-plugin_0.1.0_1788180622634_0.2062123392015036","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@azatakmyradov/opencode-save-md-plugin","version":"0.1.1","description":"Save the latest OpenCode assistant response as Markdown","keywords":["markdown","opencode","opencode-plugin","tui"],"homepage":"https://github.com/azatakmyradov/opencode-plugins/tree/main/packages/save-md","bugs":{"url":"https://github.com/azatakmyradov/opencode-plugins/issues"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/azatakmyradov/opencode-plugins.git","directory":"packages/save-md"},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./rpc":{"types":"./dist/rpc.d.ts","import":"./dist/rpc.js"}},"publishConfig":{"access":"public"},"scripts":{"build":"bun ../../scripts/build.ts . && tsc -p tsconfig.build.json","check":"tsc --noEmit","prepack":"bun run build","test":"vp test run"},"dependencies":{"@opencode-ai/client":"0.0.0-beta-18721","@opencode-ai/plugin":"0.0.0-beta-18721","@opencode-ai/schema":"0.0.0-beta-18721","effect":"4.0.0-rc.112","zod":"4.1.8"},"peerDependencies":{"@opentui/core":">=0.5.9","@opentui/solid":">=0.5.9","solid-js":">=1.9.0"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true},"solid-js":{"optional":true}},"gitHead":"5c2e75fc7c2c7285e3e0b22276061b6b2bb5c2fe","_id":"@azatakmyradov/opencode-save-md-plugin@0.1.1","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-GOXtHbVZoHwRyszB7c1n/iiD2bHTM3+XkF6ap+f8lzbdODrA3dUUmrB3Xh5r9cCsf+8rC8q10PtMfOePWZTKCA==","shasum":"7adf3a254f6ab006e43412d4ad02292d363cad63","tarball":"https://registry.npmjs.org/@azatakmyradov/opencode-save-md-plugin/-/opencode-save-md-plugin-0.1.1.tgz","fileCount":9,"unpackedSize":25277,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@azatakmyradov%2fopencode-save-md-plugin@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC9w58X7nbs1vgCpcrHOM5wZxyEsQtwkcMdKks58WgMrgIhALdYXJ+bhjyeV+L+urwzRF+TcpCl2c4zv+vo4575Lv5m"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:97f2461a-9e72-4f33-ab3f-1a0f663f1ac0"}},"directories":{},"maintainers":[{"name":"azatakmyradov","email":"azat@akmyradov.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/opencode-save-md-plugin_0.1.1_1788181203551_0.8174907065323234"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-31T12:48:18.044Z","modified":"2026-08-31T13:00:04.796Z","0.0.0":"2026-08-31T12:48:19.054Z","0.1.0":"2026-08-31T12:50:22.767Z","0.1.1":"2026-08-31T13:00:03.680Z"},"bugs":{"url":"https://github.com/azatakmyradov/opencode-plugins/issues"},"license":"MIT","homepage":"https://github.com/azatakmyradov/opencode-plugins/tree/main/packages/save-md","keywords":["markdown","opencode","opencode-plugin","tui"],"repository":{"type":"git","url":"git+https://github.com/azatakmyradov/opencode-plugins.git","directory":"packages/save-md"},"description":"Save the latest OpenCode assistant response as Markdown","maintainers":[{"name":"azatakmyradov","email":"azat@akmyradov.me"}],"readme":"# OpenCode save Markdown plugin\n\nSave the latest assistant response from an OpenCode V2 session as a Markdown file in the server workspace.\n\n## Install\n\n```bash\nopencode2 plugin add @azatakmyradov/opencode-save-md-plugin\nopencode2 service restart\n```\n\nThe package exposes server, TUI, and portable RPC entrypoints. OpenCode V2 loads the TUI entrypoint automatically when the package is installed.\n\n## Use\n\n```text\n/save-md design\n/save-md notes/design.md\n```\n\nThe first command writes `design.md`; the second keeps the supplied `.md` suffix. The command waits for an active response to finish, then saves only the latest assistant message from the active context. Text parts are preserved and joined with a blank line; reasoning and tool parts are excluded.\n\nWrites happen in the server process, so a remote TUI saves into the server workspace. Absolute paths and relative paths that escape the current location are rejected. Existing files are never overwritten.\n\n## Local Development\n\nInstall the workspace and verify the package:\n\n```bash\nbun install\nbun run --filter @azatakmyradov/opencode-save-md-plugin check\nbun run --filter @azatakmyradov/opencode-save-md-plugin test\nbun run --filter @azatakmyradov/opencode-save-md-plugin build\n```\n\nLoad the package directory by absolute path in a project `opencode.jsonc`:\n\n```jsonc\n{\n  \"$schema\": \"https://opencode.ai/config.json\",\n  \"plugins\": [\"/absolute/path/to/opencode-plugins/packages/save-md\"],\n}\n```\n\nThe package's root development entrypoints load `src/index.ts` and `src/tui.tsx`, so the server and matching TUI plugin are both discovered. Run the package build first only when testing the npm `dist` exports.\n\n## Publish\n\nCreate a changeset for normal releases. To bootstrap npm trusted publishing for this package:\n\n```bash\nnpm publish --workspace @azatakmyradov/opencode-save-md-plugin\nnpm trust github @azatakmyradov/opencode-save-md-plugin --file release.yml --repo azatakmyradov/opencode-plugins --allow-publish\n```\n","readmeFilename":"README.md"}