* fix(ui-conversation): keep the docked composer seat stable The active composer seat now keeps one stacking rank (z-index 9) in every state, a direct compositing reason (will-change: transform), the scroll floor without relying on a View to fill the column (margin-top: auto), and no scroll-anchoring role. Composer tooltips portal to the body because the seat is the containing block for fixed descendants. The width handle keeps z-index 0 while dragging. The docked statistics row reserves one reading's height before its projections arrive, and the header without a Session keeps the blank Session's 40px row on every platform so both Hero states center the input card at the same height. Fixes #7590 * docs(ui-conversation): state the composer fixed-overlay contract Composer-hosted slots now document that fixed overlays must portal to the document body, because the docked composer is their containing block; the client slot catalog is regenerated from that JSDoc. The README also records that gutter tables cover a captured width-handle drag and that the composer's backdrop blur is verified only in Chromium. Local comments note the grayscale text antialiasing of the permanent composer layer, why the statistics row uses a minimum height, why the sessionless header keeps an empty title row, and that the Hero offset test assumes the default plugins. Refs #7590 * docs(ui-conversation): state the back-to-bottom offset as geometry The composer and back-to-bottom stacking comments now state the resting 16px gap instead of claiming the control never overlaps the input card. Refs #7590
DeepSeek Harness
English | 中文
DeepSeek Harness (dsh) is an open-source agent harness developed by DeepSeek AI.
It is built on an everything-is-a-plugin architecture and powered by Cordis, whose design is described in A Programming Paradigm for Spatiotemporal Composability.
Documentation: https://deepseek-harness.github.io/deepseek-harness/
Developer preview
DeepSeek Harness is in developer preview and iterating rapidly. THERE WILL BE COMPATIBILITY-BREAKING CHANGES.
Review the safety notice before running the project.
Run
Run from npm
Install Node.js, then run:
npx @deepseek-ai/dsh web
The command starts the Web UI at http://127.0.0.1:3080 by default and opens it in the default browser for a local launch. An SSH launch only prints the host URL because the SSH client or editor owns the local forwarded address. Pass --no-open to run the server without opening a browser. See Web UI guide.
Run from source
To run from a repository checkout:
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web
pnpm run build prepares the repository artifacts. pnpm dsh web uses those built artifacts without rebuilding.
Community and support
- Submit feedback or bug reports through GitHub Discussions.
- Add the
dsh-plugintopic to your plugin repository for discoverability. - Join DeepSeek Harness Discord community.
Contributing
See CONTRIBUTING.md.
Development
Start with the development guide and architecture documentation.
pnpm run dev:web builds, serves, and rebuilds client bundles on source edits in one terminal, and make help lists the matching Make targets for Web and Desktop; the guide's application commands section owns the full table.
For agents, follow AGENTS.md.
Citation
@misc{deepseek-harness2026,
title={DeepSeek Harness: Everything is a Plugin},
author={DeepSeek-AI},
year={2026},
publisher={GitHub},
howpublished={\url{https://github.com/deepseek-ai/deepseek-harness}},
}
License
Third-party dependencies and their licenses are disclosed in THIRD_PARTY_NOTICES.md.