{"_id":"@benz-ai-x/dsh-md-preview","_rev":"17-b50af25f602f38656445c6804861c879","name":"@benz-ai-x/dsh-md-preview","dist-tags":{"latest":"0.10.0"},"versions":{"0.1.0":{"name":"@benz-ai-x/dsh-md-preview","version":"0.1.0","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.1.0","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"1c2cf62a33ebe502b6ff4cfa603daa31d814d022","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.1.0.tgz","fileCount":22,"integrity":"sha512-BJKnKwmVXhNkcx5/u2ATMqGTDHq3fZMKegvtBOCA71sknFWE5F8XLkYTtgOc+sBqMyM5TrJDB/xiZPxanD8hNw==","signatures":[{"sig":"MEUCIDCEc0OrAK270sK9GAYE30FHT3dDgpzgSMRIQR7awX66AiEA9AYj7dI/ykX08K8nKBT4DkVZr2adnRDjrpwKKQP4YxQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":215158},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"5c4952d2103275dd6ed8970133b9a5bfd2e4d37c","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"0.1.2-alpha.3","@deepseek-ai/dsh-client-store":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-slots":"0.1.2-alpha.3","@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-primitives":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.1.0_1788234837746_0.03860471002658783","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@benz-ai-x/dsh-md-preview","version":"0.1.1","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.1.1","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"7759f51ecec3f5290e5fffb566a245b52d3b7fbf","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.1.1.tgz","fileCount":22,"integrity":"sha512-BXPaDO6sDzqxIRQAhlINrzwEqzBwMPmDeYQWe9UC1xn2y6cOBHhXYvXpSPsujDofXtp0he/zpxp/9lqpovScwg==","signatures":[{"sig":"MEYCIQCMlu0V1zIhvnv3lqQkqB/ehSXsMqRCYWeDTEUwQzvHYwIhAJWCjU2Nw6CWjx8iMrT3UwleSv93t7ybpapIOkxDhByZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":216785},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"647803edf4b61a602571814ffbb8b0b919178559","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"0.1.2-alpha.3","@deepseek-ai/dsh-client-store":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-slots":"0.1.2-alpha.3","@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-primitives":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.1.1_1788235217922_0.9068986905651146","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@benz-ai-x/dsh-md-preview","version":"0.2.0","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.2.0","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"fe92a0ba65392a58aab30e262f988331f79456c2","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.2.0.tgz","fileCount":23,"integrity":"sha512-nNG2oAwc69G2An5otgmLeQwDGj6EkJBF8/nG45cFBn72afXdAe9JOx+3L2JYLwijGrFHosG4z6hVmmgQhz+xDA==","signatures":[{"sig":"MEUCIQCpp3RyXcfZFYSkLVUkfKIWJWDd3mKky7+VchJnRkUpZAIgPsG1lk70dHEzPzmnfGN1nb/sJxowjDmwtPR64pPrBi4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":457004},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"b859ae23c5a6672cff7b69a08a2119b864b6b1cd","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"0.1.2-alpha.3","@deepseek-ai/dsh-client-store":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-slots":"0.1.2-alpha.3","@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-primitives":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.2.0_1788237958237_0.28473774653007133","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@benz-ai-x/dsh-md-preview","version":"0.2.1","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.2.1","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"47b2573523cdc5023d895833292b512638d14719","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.2.1.tgz","fileCount":23,"integrity":"sha512-rfL/m3RJQg1KM9r5SeOnjWcybk0wC88+m/LcASVhjcAQifTZMgrjrKH+RoXRWjrNigOmfqKPlXfOwnjl1n76mQ==","signatures":[{"sig":"MEUCID7D8chYkKpZu1RF5mQK5LshAKhNbHIOdyPckz0c9WGYAiEAp/AJf7LUMEJ6gA1gbNRqCqTCw6KFbZCjlFJV5jt24F4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":458501},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"e73cb3991bc9d42ab0c16111519026302df8d6d9","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"0.1.2-alpha.3","@deepseek-ai/dsh-client-store":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-slots":"0.1.2-alpha.3","@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-primitives":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.2.1_1788238375097_0.25879422119842355","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@benz-ai-x/dsh-md-preview","version":"0.2.2","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.2.2","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"077883789cb69416b85957b29a9711de964cf986","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.2.2.tgz","fileCount":23,"integrity":"sha512-i4xesF8VqmOFQpVSEjpA+htCd1UzYqEuQ4p4hAqZ22h9iNTx2RCzlouVJUgn8uzHV+L8zqu9nHBfggQFqqtuew==","signatures":[{"sig":"MEUCIQDroggr+VMk27JWtj5xxbyPcZTAqk7+g1ZKbD4FrGDwyQIgY3Tu1/E1hDh8otZcIdTzZjLIR/M2kBWns3a5vpjHzMc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":458772},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"7aa0f6e8d0cb4ba7e8c197fcf8fb149e2d471b9e","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"0.1.2-alpha.3","@deepseek-ai/dsh-client-store":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-slots":"0.1.2-alpha.3","@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-primitives":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.2.2_1788238630398_0.9051195764557614","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@benz-ai-x/dsh-md-preview","version":"0.2.3","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.2.3","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"3e0e93d607c60bdb664542e4f2b740984a4dc4eb","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.2.3.tgz","fileCount":23,"integrity":"sha512-NTqtxQ+chghIbuIAZCz2nXdfUt+iQHrk5rE+xMr3yZn8dcaekSimpZKMi6pZjw4AaCQxFhC+bjt1WvtXsuW0SQ==","signatures":[{"sig":"MEQCIQCXNsOs5NmLr0fQNfDwmljfICDCZDzT/W3jnV1+1t7B5AIfQRQXyIX3NN5zzRizm9H3Wh34AMZVkrZdv19SJVeNDg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":459078},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"aa1aa5e09c77343df87b7b6cef060989d1156cd9","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"0.1.2-alpha.3","@deepseek-ai/dsh-client-store":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-slots":"0.1.2-alpha.3","@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-primitives":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.2.3_1788238920690_0.1280868369827537","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@benz-ai-x/dsh-md-preview","version":"0.2.4","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.2.4","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"342c7bb1c6e7151f1285fa1548961820e4fad6c1","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.2.4.tgz","fileCount":23,"integrity":"sha512-dgjYoIdrA8WsFEcwMJ9QSU42mtSdbjIqmiVr8Tefj5sYKXvuHM5XBs8VOcjNmortZ32/a/ztd+3TYPHVb74Ang==","signatures":[{"sig":"MEUCIFfHyqnROLWvmOerAArpqP+6eSxifUVWX7qVHt14pTU7AiEAr/zjlwMou8pizwRhW5nN6+fNHIdUZcHAOUGXvdEVwTc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":459090},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"21de9ca40cb44a1aa35101a619f20e35450709d2","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"deprecated":"stale client bundle; use >=0.2.5","repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"0.1.2-alpha.3","@deepseek-ai/dsh-client-store":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-slots":"0.1.2-alpha.3","@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-primitives":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.2.4_1788239461233_0.2586313925382795","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@benz-ai-x/dsh-md-preview","version":"0.2.5","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.2.5","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"27179c60851ebf805c046a2dec90245322cf00d8","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.2.5.tgz","fileCount":23,"integrity":"sha512-wj4h79H28m4UysBnDk/QBZ6yPai5ZtnXVyLljc8ujLi1KTPFMcTUYeIZ66f6wnX0nD2BOOWRqS1UnJLrs4R9Hw==","signatures":[{"sig":"MEUCIGJqWQ8o4beY/X1pS3n1yqnpa+89Wy2CMpB9gqzH0FxJAiEA/7heV5+DSvXaCC5nTdbkmmduVdA3LDHBdh7NhZLwX3o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":459104},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"0f3c8e8a90944a030a985e855bd7692abf279d52","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/cordis":"^4.0.1","@deepseek-ai/dsh-session":"0.1.2-alpha.3","@deepseek-ai/dsh-client-store":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-slots":"0.1.2-alpha.3","@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3","@deepseek-ai/dsh-client-ui-primitives":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.2.5_1788240112043_0.8951956098206262","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@benz-ai-x/dsh-md-preview","version":"0.2.6","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.2.6","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"7075980ee301354edb457401f17c9aa598ce07fd","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.2.6.tgz","fileCount":23,"integrity":"sha512-keif3dW0zxWtjrFWQZClEge2O81O5sYdvSxS9FbHmeCWdyqHKsDCs776bY9O8eRsbWNqSiDb+K6a7poyN11Zug==","signatures":[{"sig":"MEUCIQCe+I2pijclLpK5ybrloz9IkhE0Cy9tNk3JytTJtttLeAIgK7/78syHVXB14JeF6LykeVbzDzrxMWj/JKxkJEI3ZFk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":458845},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"2aeec6d43296a190e016a68f1d9a27718efd46d7","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.2.6_1788240367599_0.6006853557579899","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@benz-ai-x/dsh-md-preview","version":"0.2.7","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.2.7","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"9707f8dbaadb459c426ba1fbc9d90cf887b5ff28","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.2.7.tgz","fileCount":23,"integrity":"sha512-BQ4qP12IcFhC6Zt7HCvjIa5JYKvOijbHUEww9fqJfUSjyp4dILzeXcQoMPWAspxc4gIvlkM+vI30rLqN/2p1qA==","signatures":[{"sig":"MEUCIBFIc9/M6DhqKi15QHoTEHdJnJf+zXXDw+FfzVKNDsdkAiEAqDStw28GhVSDVhxO0uxoY33N0u9CjtL3LtXyg478Ncs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":458897},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"7c771a2b16d6292d686f77f7ed82e80179234a31","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.2.7_1788242286721_0.5319073900631557","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@benz-ai-x/dsh-md-preview","version":"0.3.0","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.3.0","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"6cb10b99306e6642e32e5ea3106d0949f624e369","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.3.0.tgz","fileCount":25,"integrity":"sha512-428/u+LekAIsloJfD9EnFF+M9BdcyUdsvtKP++mKMrb9XeT5e1CD2n+wSwNVN0EiPfieisq6ALViBD+pItetPw==","signatures":[{"sig":"MEQCIADN1DwhLTZ9Sdf3LGGX9xuGeCkCWgNPc24ll7ENKo0cAiBxotpFzu4Up+o2AXCfGDpuAo7oGEcswTo69nsgRbXEcg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":466107},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"41e2e38bd4d36e0deb49df99bc978782668cc5ca","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.3.0_1788242736065_0.5829055102718508","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@benz-ai-x/dsh-md-preview","version":"0.4.0","keywords":["deepseek-harness","dsh","plugin","markdown","preview"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.4.0","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"b3b542a035b4c0cfa4cfd56f9f71237ebe53f6ad","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.4.0.tgz","fileCount":26,"integrity":"sha512-/ewiOGkez27uuuDVqoDbr2U4+c74ehhxg5gzDPa1Xt8nL5lSKWwVvqRSRfD1/HHT1YuO8D6wIFck8Gwo2iTS9g==","signatures":[{"sig":"MEYCIQCHQpsVDW4J+UXx/BJIXT1c/6MQW4lPugqB0EHI5zBu9wIhAJ6zWHrpM8Rk2ei5zG1QxWn/NA/Lb53C8prjrz4Sen60","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":487189},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"f765d560281ab67dabac7c7baccd9767484437e6","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:sync":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","@deepseek-ai/schemastery":"3.18.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/dsh-typert-protocol":"0.1.2-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.4.0_1788249027113_0.7015751166339916","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@benz-ai-x/dsh-md-preview","version":"0.6.0","keywords":["deepseek-harness","dsh","dsh-plugin","cordis","markdown","markdown-preview","markdown-editor","codemirror","file-browser","workspace","preview-panel","react"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.6.0","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"ef7bd67bdd09339f6e59e12e35e436d1a0db6515","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.6.0.tgz","fileCount":29,"integrity":"sha512-IxBFHf3NBpW0m7qmYaXXCkMXIGAYJLIRVFZP7uJX/9bC2ja05ktWrPomWXb/mgZvi0S28SIZ3zYq0IN4Mrfraw==","signatures":[{"sig":"MEUCIDiMywD/26DI4d0SkTkKf58RfJU2NKxoIdxHXQrNhAOnAiEAjH0UMzxL1ZnoC95yIOy+rGMTRIc2hTjXW1TIxDAvzjM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3971014},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"08b39996cc72ccb85da688f05075878c19fbf6a1","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","prepare":"node scripts/prepare.mjs","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:link":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","tsdown":"^0.22.2","typescript":"6.0.3","@deepseek-ai/schemastery":"3.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/dsh-typert-protocol":"0.1.2-rc.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.6.0_1788695740015_0.8804167509629974","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@benz-ai-x/dsh-md-preview","version":"0.7.1","keywords":["deepseek-harness","dsh","dsh-plugin","cordis","markdown","markdown-preview","markdown-editor","codemirror","file-browser","workspace","preview-panel","react"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.7.1","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"42aeb5624e8a7a7f40347efcf32c3537b60d9a16","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.7.1.tgz","fileCount":29,"integrity":"sha512-w4H5w5x9/coRYUuK5edL6faZ6w5BukhZaCA9oMZm8WgvW7f91qW3KQwIE7EMsY+elPDFfHnqK2puJXw0ArvUFQ==","signatures":[{"sig":"MEUCIQC/ljQ09JvcT+sNNUKY13XY3tG2ahwmMgrU8RLL6HMsUgIgK33rDH/SKfpyFpTp8AvU+4YMFRV+uakEjhGm1HoK5WE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3996463},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"910156465544f35adaafec09a26cb12c7aac8709","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","prepare":"node scripts/prepare.mjs","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:link":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","tsdown":"^0.22.2","typescript":"6.0.3","@deepseek-ai/schemastery":"3.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/dsh-typert-protocol":"0.1.2-rc.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.7.1_1788709934158_0.43306536968972287","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@benz-ai-x/dsh-md-preview","version":"0.7.2","keywords":["deepseek-harness","dsh","dsh-plugin","cordis","markdown","markdown-preview","markdown-editor","codemirror","file-browser","workspace","preview-panel","react"],"license":"MIT","_id":"@benz-ai-x/dsh-md-preview@0.7.2","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"dist":{"shasum":"a14429cc0d2a3e90ee0ea33acfa45668d4868864","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.7.2.tgz","fileCount":34,"integrity":"sha512-p4FmHRwcaAPe1J3PbY7TdoLBtEyxXuvzO3rhpizlkPlCjczrD6/bvAkS2cNhKmA7PWFfhi9jLNWVD4hrmyon5A==","signatures":[{"sig":"MEYCIQCrhgAx+D6lisKs4+843iimOGzrkQV/8RfxZGd4ttNwpAIhAPbk12eHZ7ZBQwphQZ3bekOUFTt/FHg/XQ2thAF0OmCD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4005666},"main":"./lib/index.js","type":"module","types":"./lib/types/index.d.ts","engines":{"node":"^22.19.0 || >=24.0.0"},"exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./package.json":"./package.json","./cordis.patch.yml":"./cordis.patch.yml"},"gitHead":"d614289c8bb96f9de972359ced9218d93248f41a","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json && tsdown","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","prepare":"node scripts/prepare.mjs","typecheck":"tsc -p tsconfig.json --noEmit","build:host":"tsc -p tsconfig.json","built:check":"node scripts/verify-built.mjs","build:client":"tsdown","context:link":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile","watch:client":"tsdown --watch","context:check":"node scripts/verify-dsh-context.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source"},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"repository":{"url":"git+https://github.com/benz-ai-x/dsh-md-preview.git","type":"git"},"_npmVersion":"11.17.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","directories":{},"_nodeVersion":"26.4.0","dependencies":{"zod":"^4.4.3","tsdown":"^0.22.2","typescript":"6.0.3","@deepseek-ai/schemastery":"3.18.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.17.0","peerDependencies":{"@deepseek-ai/dsh-typert-protocol":"0.1.2-rc.1"},"_npmOperationalInternal":{"tmp":"tmp/dsh-md-preview_0.7.2_1788743613407_0.5253280237954823","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@benz-ai-x/dsh-md-preview","version":"0.10.0","description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","license":"MIT","repository":{"type":"git","url":"git+https://github.com/benz-ai-x/dsh-md-preview.git"},"publishConfig":{"access":"public"},"keywords":["deepseek-harness","dsh","dsh-plugin","cordis","markdown","markdown-preview","markdown-editor","codemirror","file-browser","workspace","preview-panel","react"],"type":"module","main":"./lib/index.js","types":"./lib/types/index.d.ts","exports":{".":{"types":"./lib/types/index.d.ts","default":"./lib/index.js"},"./client":{"types":"./lib/types/client/index.d.ts","default":"./lib/client.js"},"./remote":{"types":"./lib/types/typert/remote-client.d.ts","default":"./lib/typert/remote-client.js"},"./cordis.patch.yml":"./cordis.patch.yml","./package.json":"./package.json"},"dsh":{"bundle":{"patch":"./cordis.patch.yml"},"client":{"inject":["@deepseek-ai/dsh-api-remotes","@deepseek-ai/dsh-client-locale","@deepseek-ai/dsh-client-ui-chat","@deepseek-ai/dsh-client-ui-renderer"],"platform":"web"}},"packageManager":"pnpm@11.17.0","engines":{"node":"^22.19.0 || >=24.0.0"},"scripts":{"context:check":"node scripts/verify-dsh-context.mjs","context:check:strict":"node scripts/verify-dsh-context.mjs --require-source","typecheck":"tsc -p tsconfig.json --noEmit","test":"vitest run","build":"tsc -p tsconfig.json && tsdown","build:host":"tsc -p tsconfig.json","build:client":"tsdown","watch:client":"tsdown --watch","built:check":"node scripts/verify-built.mjs","pack:publishable":"node scripts/pack.mjs","publish:registry":"node scripts/pack.mjs --publish","verify":"pnpm context:check:strict && pnpm typecheck && pnpm test && pnpm build && pnpm built:check","prepare":"node scripts/prepare.mjs","context:link":"node scripts/verify-dsh-context.mjs --sync-links --require-source && pnpm install --no-frozen-lockfile"},"dependencies":{"@deepseek-ai/schemastery":"3.18.2","tsdown":"^0.22.2","typescript":"6.0.3","zod":"^4.4.3"},"peerDependencies":{"@deepseek-ai/dsh-typert-protocol":"0.1.2-rc.1"},"_id":"@benz-ai-x/dsh-md-preview@0.10.0","bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","_integrity":"sha512-seJilZ91IBAR++IoyR2M2GsXA2Umu9fDei7X6T4ZfDyAe+Z69AzTaYvvRUgHwmbPKfhQQErJNyxGVAEATcFfbQ==","_resolved":"/Users/pc2026/Dev-Space/dsh-md-preview/benz-ai-x-dsh-md-preview-0.10.0.tgz","_from":"file:/Users/pc2026/Dev-Space/dsh-md-preview/benz-ai-x-dsh-md-preview-0.10.0.tgz","_nodeVersion":"26.4.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-seJilZ91IBAR++IoyR2M2GsXA2Umu9fDei7X6T4ZfDyAe+Z69AzTaYvvRUgHwmbPKfhQQErJNyxGVAEATcFfbQ==","shasum":"cd8233e19a51431b573e003e3e62c1e33f23c56e","tarball":"https://registry.npmjs.org/@benz-ai-x/dsh-md-preview/-/dsh-md-preview-0.10.0.tgz","fileCount":38,"unpackedSize":4065855,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCkBAzHYPcbrAiGwRYcdZiustAlFDBqi0v3H1eE+JFkIAIhAKR2zVZGl+s0gXXteaskjuEo9FP1fnr757FvoxG/OY0n"}]},"_npmUser":{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"},"directories":{},"maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dsh-md-preview_0.10.0_1788847678586_0.5928608483109017"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-01T03:53:57.641Z","modified":"2026-09-08T06:07:58.990Z","0.1.0":"2026-09-01T03:53:57.873Z","0.1.1":"2026-09-01T04:00:18.053Z","0.2.0":"2026-09-01T04:45:58.446Z","0.2.1":"2026-09-01T04:52:55.249Z","0.2.2":"2026-09-01T04:57:10.558Z","0.2.3":"2026-09-01T05:02:00.844Z","0.2.4":"2026-09-01T05:11:01.394Z","0.2.5":"2026-09-01T05:21:52.192Z","0.2.6":"2026-09-01T05:26:07.751Z","0.2.7":"2026-09-01T05:58:06.888Z","0.3.0":"2026-09-01T06:05:36.275Z","0.4.0":"2026-09-01T07:50:27.317Z","0.6.0":"2026-09-06T11:55:40.191Z","0.7.1":"2026-09-06T15:52:14.317Z","0.7.2":"2026-09-07T01:13:33.627Z","0.10.0":"2026-09-08T06:07:58.793Z"},"bugs":{"url":"https://github.com/benz-ai-x/dsh-md-preview/issues"},"license":"MIT","homepage":"https://github.com/benz-ai-x/dsh-md-preview#readme","keywords":["deepseek-harness","dsh","dsh-plugin","cordis","markdown","markdown-preview","markdown-editor","codemirror","file-browser","workspace","preview-panel","react"],"repository":{"type":"git","url":"git+https://github.com/benz-ai-x/dsh-md-preview.git"},"description":"DSH markdown preview: clicking a markdown document in the conversation opens a rendered preview panel docked to the right of the chat.","maintainers":[{"name":"benz.ai.coder","email":"benz.ai.coder@gmail.com"}],"readme":"[English](README.md) | 中文\n\n# @benz-ai-x/dsh-md-preview\n\nDSH Web GUI 插件:点击对话中出现的 Markdown 文档,在对话右侧打开渲染后的预览面板;支持受守卫编辑与工作区目录树浏览。\n\n[![npm](https://img.shields.io/npm/v/@benz-ai-x/dsh-md-preview)](https://www.npmjs.com/package/@benz-ai-x/dsh-md-preview)\n[![GitHub](https://img.shields.io/badge/repo-benz--ai--x%2Fdsh--md--preview-24292e?logo=github)](https://github.com/benz-ai-x/dsh-md-preview)\n\n## 效果\n\n- 回合产出文件 chip 行中的 `.md` / `.markdown` 文档:点击打开右侧预览面板,渲染 GFM、代码高亮和 TeX。\n- 每条助手消息的操作区新增「预览文档」按钮,列出该回合产出的 Markdown 文档。\n- 非 Markdown 产出文件保持原有行为(交给系统打开)。\n- **文档侧边栏**：宽屏展开时让对话区自动缩窄，低于 1056px 或全屏时覆盖展开。头部「Session 日志」右侧使用原生回形针图标，一键开合工作区浏览，面板右上 × 关闭；未保存修改仍先询问。宽度默认取半屏、最多 720px，记忆 360–1200px 的手动拖宽偏好，并按可用空间钳制。原生导航与工具详情保留各自操作；Esc 关闭后焦点返回入口。布局适配依赖锁定基线，见 [ADR-0004](docs/adr/0004-dock-preview-beside-the-harness-frame.md)。\n- 没有预览目标时面板不渲染。\n- **字体与主题对齐 Harness**:导航主文字 14px/20px、父目录路径 12px/18px,统一图标与控件尺寸。搜索固定在浏览区顶部,条目独立滚动;导航初始宽 220px,保留手动宽度偏好。面板从框架顶部停靠,自身保留工作区/返回与关闭入口;聚焦文档身份可查看完整路径和版本。编辑器使用平台浅/深主题与代码字体,正文在各种宽度下均保持平台 Markdown 段落节奏。\n- **编辑**:面板「编辑」进入 CodeMirror 编辑器(行号、GFM 高亮、Cmd/Ctrl-S 保存),「保存」写回工作区、显示「✓ 已保存」提示并回到渲染视图,「取消编辑」丢弃草稿;只编辑已存在的文件。保存失败(非冲突)会显示错误码并提供【重试】。\n- **冲突保护**:保存时若文件已被其它方(agent、其它会话、外部编辑器)修改,提示「文件已变化」,由你选择【重新加载】或【强制覆盖】;带未保存修改关闭面板会先询问。\n- **工作区浏览**:面板头部「工作区」进入目录树(懒展开、加载/空/失败三态);单击 `.md` 富渲染、`.txt` 等纯文本等宽展示、其它类型明确提示不支持;当前文档在树中高亮并自动定位;支持方向键/Enter 键盘遍历;头部路径面包屑。已展开目录在每次重进浏览脸时**静默重验**(树工具栏也有刷新按钮)——agent 会在会话中途持续产出文件,刷新失败绝不清空现有列表。\n- **大纲导航**:头部「大纲」弹层列出文档的 ATX 标题(代码围栏内的 `#` 不算);点击后查看脸滚动到渲染标题、编辑脸跳转光标到源行。\n- **侧栏 rail(≥640px)**:文件树与大纲常驻面板左侧(「文件|大纲」记忆选择),文档不再被浏览替换;<640px 回退换脸/弹层;Mod-Shift-O/E 直达、Esc 收弹层。\n- **分段控件与编辑反馈**:「预览|编辑」常驻切换(脏草稿切回走守卫);状态栏实时 Ln/Col/字数与常驻「已保存」时间;撤销/重做按钮;Mod-B/I/K 排版键(? 查看键位);含内联 HTML 的文档进编辑时一次性预警。\n- **工作区搜索**:浏览区搜索框按名称搜索**整个**会话工作区的文档——未展开目录也覆盖——由宿主可取消遍历完成,绝不读取正文。名称不区分大小写子串匹配;每条结果同时显示名称与工作区相对路径(同名文档可分辨);打开结果仍走完整读取与守卫。状态诚实可辨:搜索中…;「没有结果」只在完整搜索且零命中时出现;「结果不完整」会说明原因(目录读取失败/遍历或数量上限)并保留已得结果;失败给出错误码与重试。输入新词即取消旧搜索,清空后精确恢复原浏览展开状态。(与编辑器内查找是两回事。)\n- **快捷入口**:树上方两小节——「当前回合产出」列出最新回合产出的可预览文档(owning service 回合事实、按关闭序号截断、回合进行中实时更新),「最近阅读」按近期使用列出本会话读过的文档。两节均显示名称加路径,打开走同一守卫路径并重新读取;来源为空时该节隐藏;「继续阅读」入口保持自己的独立席位与语义。\n- **阅读位置跟踪**:大纲弹层高亮当前阅读位置所在的节——查看脸按滚动位置、编辑脸按光标源行推导,并保持该条目在弹层视野内。头部在草稿未保存时显示脏点,版本号折入路径提示,查找/保存按钮标注快捷键;查找面板已本地化并显示匹配计数(n/m)。\n- **编辑器查找**:编辑脸带 CodeMirror 搜索面板(头部按钮与 Mod/Ctrl-F)。\n- **Mermaid 图表**:` ```mermaid ` 围栏块在文档渲染定型后增强为图表;块横幅保留(复制仍取源码),任何失败回退纯代码块。mermaid 内联进 client bundle 但**惰性求值**(首个图表才付解析成本;bundle 约 3.9 MB minified / 1.1 MB gzip)。\n\n## 安装\n\n要求 DSH 基线 `0.1.2-rc.1`(即 peerDependencies 所列版本)和 web profile。\n\n```sh\ndsh plugin --profile <name> add @benz-ai-x/dsh-md-preview\ndsh --profile <name> --dump-config   # 应出现 id: md-preview 的行\ndsh --profile <name>                 # 打开 Web GUI;回合产出 .md 后点击 chip 预览\ndsh plugin --profile <name> remove @benz-ai-x/dsh-md-preview\n```\n\n### 三种安装形态(依 [DSH 打包与安装规范](https://github.com/deepseek-ai/deepseek-harness/blob/main/docs/user/develop/basic/publish.zh.md))\n\n| 形态 | 命令 | 状态 |\n| --- | --- | --- |\n| npm(推荐) | `dsh plugin --profile <name> add @benz-ai-x/dsh-md-preview` | ✅ 预构建产物,即装即用 |\n| tarball | `dsh plugin --profile <name> add ./benz-ai-x-dsh-md-preview-<ver>.tgz`(tarball 由源码 `pnpm pack:publishable` 产出) | ✅ 预构建产物,无需任何构建授权 |\n| Git 直装 | `dsh plugin --profile <name> add github:benz-ai-x/dsh-md-preview#<sha>` | ✅ 由包自带的自包含 `prepare` 从源码构建(纯转译,此形态不带类型声明)——见下文 |\n\ngit 安装拉取的是源码,pnpm 在得到显式允许前拒绝运行 git 依赖的 `prepare`。首次 `add` 失败后,把 pnpm 打印的确切包键复制进该 profile 的 `pnpm-workspace.yaml`:\n\n```yaml\nallowBuilds:\n  '@benz-ai-x/dsh-md-preview': true\n```\n\n然后重新执行 `add`。授权构建 = 允许该包的代码在安装时于你的机器上执行 —— 只对可信源码授权,并用 `#<sha>` 锁定 commit,让后续推送无法悄悄改变实际运行的内容。\n\n## 配置\n\n```yaml\n- id: md-preview\n  name: '@benz-ai-x/dsh-md-preview'\n  config:\n    maxBytes: 1048576        # 单文件读取上限(字节)\n    allowedExtensions: ['.md', '.markdown']\n```\n\n| 字段 | 类型 | 默认 | 说明 |\n| --- | --- | --- | --- |\n| `maxBytes` | number | `1048576` | 单文件读/写上限,超出返回 `too-large` |\n| `allowedExtensions` | string[] | `[\".md\", \".markdown\"]` | 可编辑的扩展名白名单 |\n| `previewExtensions` | string[] | `[\".md\", \".markdown\", \".txt\"]` | 可预览的扩展名(可编辑集的超集;纯文本成员只读展示) |\n\n## 失败码\n\n读取失败时面板显示 `md-preview/<reason>`。所有失败码:\n\n| 码 | 含义 |\n| --- | --- |\n| `md-preview/bad-request` | path 为空或非法;或保存时既无指纹也未强制 |\n| `md-preview/unknown-session` | 会话不存在 |\n| `md-preview/no-workspace` | 会话没有工作目录 |\n| `md-preview/unsupported-extension` | 扩展名不在白名单 |\n| `md-preview/forbidden` | 路径超出会话工作区 |\n| `md-preview/not-found` | 文件不存在(编辑只针对已存在文件) |\n| `md-preview/too-large` | 文件(读取)或内容(写入)超过 `maxBytes` |\n| `md-preview/conflict` | 保存时文件已变化(指纹不匹配且未强制) |\n| `md-preview/unavailable` | 读/写过程发生 IO 错误 |\n\n## 已知限制\n\n- 正文中内联提到的 `.md` 文件名仍走系统打开(归 ui-deliverables 所有,不归本插件)。\n- 文档侧边栏通过锁定基线的可释放布局适配预留空间，窄屏覆盖展开；升级 Harness\n  需重新验证布局适配，原生工具详情贡献保留。\n- 用户上传的文档附件不可预览(目前没有对应的会话面)。\n- 大纲只收 ATX 标题(setext 下划线式标题会渲染但不进弹层)。\n- Mermaid 用默认主题;混用缩进代码块与围栏块的文档整体跳过图表增强(顺序对齐安全检查)。\n\n## 开发(source-linked)\n\n```sh\npnpm install\npnpm verify                 # context:check:strict + typecheck + test + build + built:check\npnpm context:link           # 需要源码联调时:重写 link: 指向 Harness 检出并刷新 lockfile(默认 registry)\npnpm watch:client           # 客户端 bundle 热构建\n```\n\n### 结构\n\n| 部分 | 位置 | 说明 |\n| --- | --- | --- |\n| Host Remote | `src/remote.ts` | `mdPreview/read(sessionId, path, signal)`;工作区限域、扩展名白名单、字节上限 |\n| Remote contribution | `src/typert/remote-client.ts` | 手工维护的浏览器端描述符(生成器产物的等价物) |\n| 浏览器入口 | `src/client/index.ts` | 挂载 Remote + 注册三个 Slot 贡献 |\n| 预览面板 | `src/client/PreviewOverlay.tsx` | `shell.overlay`(list,增量);仅渲染 + 几何 |\n| 会话机器 | `src/client/preview-session.ts` | 纯 reducer:读取/编辑/保存/提示的完整状态代数 |\n| 编辑器 | `src/client/editor.tsx` | CodeMirror 6(精选扩展集含搜索面板,构建期内联) |\n| 工作区树 | `src/client/WorkspaceBrowser.tsx` | 懒树:高亮/自动定位/键盘遍历 + 静默重验 |\n| 大纲 | `src/client/outline.ts` | ATX 标题扫描 + 渲染标题定位 |\n| 图表增强 | `src/client/diagrams.ts` | 渲染后 mermaid 增强,失败回退代码块 |\n| chip 行接管 | `src/client/MdChips.tsx` | `conversation.chat.turnTail`(chain,仅认领含 Markdown 的回合) |\n| 消息操作 | `src/client/PreviewAction.tsx` | `conversation.chat.assistant-actions`(list,增量) |\n\n### 真实 profile 验证(本地检出)\n\n```sh\npnpm build\ndsh plugin --profile <name> add ./dsh-md-preview\ndsh --profile <name> --dump-config\ndsh --profile <name>        # 打开 Web GUI,写一个 README.md 产出并点击 chip\ndsh plugin --profile <name> remove @benz-ai-x/dsh-md-preview\n```\n\n### 打包与发布\n\n```sh\npnpm pack:publishable       # 打出净化 manifest 的 tarball 并复检(无 devDeps、无 link:/workspace:)\npnpm publish:registry       # 以同一净化流程发布到 npm\n```\n\nsource-linked 验证证明与固定 Harness 检出(见 `dsh-reference.lock.json`)的兼容性;发布形态以 packed tarball 在干净 profile 中的安装/启动/移除冒烟为准。\n\n## 许可证\n\nMIT\n","readmeFilename":"README.zh.md"}