中文 · English
dsh-reference-render
Domain-neutral structured reference rendering for DeepSeek Harness (DSH) conversations: [label](dsh-ref:<kind>:<id>) becomes an inline chip — dot/bar/icon decorations on either side, hover preview, click-to-open. The renderer understands no business domain; content comes from other plugins through frozen contracts.
Eight references: dot and bar styles, icons on both sides, hover preview and right sidebar
Install
dsh plugin --profile web add dsh-reference-render@0.1.0
Tested on DSH 0.2.1-alpha.1 only — see COMPATIBILITY.md and docs/install.md (demo bundles, git install, troubleshooting).
Usage
Emit — a plain GFM link becomes a chip; without the plugin it degrades to an ordinary link:
Build completed. See [RP-42](dsh-ref:report:RP-42) for details.
Decorate — a content plugin claims a reference and supplies dot/bar/icon decorations for either side, up to 3 per side. An icon without a color follows the text color; mode: 'image' renders an original-color <img>. Unclaimed references stay plain chips — hover and click are no-ops.
Contribute — two chain slots and one serial event:
ctx.effect(() => ctx.slots.inject('reference.hover.content', () =>
ctx.slots.register({ name: 'reference.hover.content',
select: (owner) => isOurs(owner.descriptor) ? {} : null }, MyHoverCard)))
ctx.on('reference/open', ({ descriptor }) =>
isOurs(descriptor) ? (ctx.sidebarRight.openResource(descriptor.uri), { handled: true }) : undefined)
Reference
The renderer owns no business truth (View ≠ Truth): unclaimed references stay plain chips, and removing the plugin leaves the host unchanged.
License
MIT