Introduction¶
In DeepSeek Harness (DSH), the common entry points for running agents are the Web UI or the dsh command in the terminal. If you prefer staying in the terminal for coding, viewing tool output, switching sessions, and modifying permissions, the native CLI often lacks a complete interactive interface: streaming responses, slash commands, session management, and a plugin marketplace all need to be pieced together yourself.
SeekTTY is a client plugin designed for this scenario. It provides a deepseek launcher in your project directory, bundling the Harness’s agents, sessions, model routing, permissions, settings, profiles, plugins, and persistence capabilities into a fullscreen TUI with a DeepSeek color scheme. Below, we’ll introduce what it is, what it can do, and how to install and get started.
What It Is¶
SeekTTY (repository Hilbert-beinghappy/seektty) is published by maintainer Hilbert-beinghappy, currently at version 1.2.1, under the MIT license. In one sentence: A pluggable, DeepSeek-colored terminal interface serving as a keyboard-first workbench for DeepSeek Harness.
Navigate to your project directory and run deepseek to complete tasks like asking questions, modifying code, invoking tools, managing sessions, switching models, approving permissions, observing sub-agents, and operating plugins—all within the same Harness state. The plugin declares compatibility with a minimum Harness version of 0.1.0-rc.6 and has been tested with Host version 0.1.1-rc.2. It requires Node.js ^22.19.0 || >=24 and supports macOS, Linux, and Windows.
Core Features¶
Integrated Terminal Interface for Harness Native Capabilities¶
SeekTTY does not create a separate agent runtime. Instead, it reads the current Harness runtime directory and dynamically displays models, providers, agent presets, permissions, host commands, tools, settings, skills, MCP, and plugin sources. Capabilities listed in the README include:
- Conversation and Execution: Streaming replies, Markdown/GFM, syntax-highlighted code blocks, tool cards, reasoning display toggle, Ctrl+C to stop the current round.
- Sessions: Create, resume, search, rename, fork, archive, export as ZIP or Markdown.
- Workspaces: Register multiple workspaces, sort them, and remove registrations without deleting directories or logs.
- Agent Modes: Standard, Code/PTC, Minimal, Cordis/Create, and plugin-registered presets.
- Models and Permissions:
/model,/permission, Shift+Tab to cycle permissions with confirmation for high-risk actions. - Input Queue and Steer: Queue, edit, and guide agent operations during runtime.
- Image Attachments: Paste or use
/attach, with checks based on the host’simageLimits. - Plan, Goal, Compact: Harness native
/plan,/goal,/compact. - Plugins and Marketplace:
/pluginsupports installation and diagnostics via npm, Git, tarballs, and local paths. - Status and Diagnostics:
/status,/doctorto display the runtime status of Harness, profiles, and plugins.
Workflow Bridging Clarify and Plan¶
When an idea isn’t fully formed, you can use the /clarify workflow provided by a plugin. The Clarify Host plugin (dsh-plugin-clarify) holds a clarification process bound to a session. SeekTTY detects its Remote and dynamically adds /clarify, passing the current session and input area draft to the plugin. It generates questions, options, and a live draft preview one by one. After adoption, the complete draft returns to the input box for you to review, modify, and send by pressing Enter. Once requirements are clear, use the Harness native /plan to generate an implementation plan.
Clarify’s model calls are executed via dsh-plugin-auxiliary-runtime, with usage recorded in the auxiliary_runtime ledger. The official agent loop still uses tokenUsage. When the snapshot contract is healthy, /status displays separate totals for Official, Auxiliary, and derived Combined usage.
To enable the full /clarify in the same profile, you must activate the SeekTTY, Auxiliary Runtime, and Clarify components simultaneously.
Theme and Interface Language¶
The interface theme and code block theme can be configured independently. /theme supports DeepSeek light/dark, named custom themes, 3–16 color auto-generation, and /theme import to import local VS Code JSON/JSONC themes while preserving TextMate token coloring. /language switches between Chinese and English, with explicit preferences written to the official locale.preference and shared with Harness Web.
Installation and Activation¶
SeekTTY is distributed via pre-built tarballs attached to GitHub Releases, with no npm Registry release yet. The most recently jointly verified Release combination is: official dsh 0.1.0-rc.8, SeekTTY 1.2.0, Auxiliary Runtime 0.1.0, Clarify 0.2.1. SeekTTY 1.2.1 has been tested with official 0.1.1-rc.2 at the shell level, but the README notes that as of document writing, there is no v1.2.1 Release asset. To use 1.2.1, you need to locally pnpm pack and install the tarball, or wait for the Releases to be published.
Installing as a DSH Plugin (Including Clarify Trio)¶
First, install dsh globally, then add three tarballs to the target profile:
pnpm add --global @deepseek-ai/dsh@0.1.0-rc.8
dsh plugin --profile tui add https://github.com/Hilbert-beinghappy/seektty/releases/download/v1.2.0/seektty-1.2.0.tgz
dsh plugin --profile tui add https://github.com/Hilbert-beinghappy/dsh-plugin-auxiliary-runtime/releases/download/v0.1.0/dsh-plugin-auxiliary-runtime-0.1.0.tgz
dsh plugin --profile tui add https://github.com/Hilbert-beinghappy/dsh-plugin-clarify/releases/download/v0.2.1/dsh-plugin-clarify-0.2.1.tgz
dsh --profile tui
The first installs the SeekTTY terminal shell, the second provides Auxiliary model execution, and the third provides the Clarify Host service. After both Host plugins are activated in the same profile, SeekTTY will discover the Remote and add /clarify to the command directory.
Bare deepseek Launcher¶
If you only need the global deepseek command with the launcher managing profiles, run:
pnpm add --global https://github.com/Hilbert-beinghappy/seektty/releases/download/v1.2.0/seektty-1.2.0.tgz
export SEEKTTY_SPEC=https://github.com/Hilbert-beinghappy/seektty/releases/download/v1.2.0/seektty-1.2.0.tgz
deepseek
deepseek requires dsh on your PATH, or you can use DSH_BIN to point to the executable. SEEKTTY_SPEC ensures the profile uses the same pre-built tarball.
To remove a plugin without modifying dsh itself:
dsh plugin --profile tui remove seektty
Common Usage¶
Entering a Project and Starting¶
cd /path/to/your-project
deepseek
With an initial task, specifying a workspace, or resuming a session:
deepseek "Check this project"
deepseek --cwd ../project
deepseek --resume
deepseek --resume <sessionId>
deepseek --profile team-tui
Slash Commands and Clarify¶
Type / in the input box to open a searchable command menu. Common categories include Sessions (/new, /resume), Agents (/mode, /model, /plan), Extensions (/plugin, /skills, /mcp), and Diagnostics (/status, /doctor).
Once Clarify is activated, you can start it in the following ways:
- Execute
/clarifyin the command palette, keeping the entire input area as seed. - Input
/clarify some text, using the parameter text as seed. - Add a
/clarifytoken alone at the end of an existing draft.
Each answer refreshes the live draft preview; after adoption, the draft is written back to the input box. Review it, and press Enter to send. When an implementation plan is needed, run /plan.
Common Shortcuts¶
| Input | Action |
|---|---|
/ |
Open command and Skill candidates |
| Enter / Shift+Enter | Send or confirm / Newline |
| Shift+Tab | Cycle current permissions |
| Ctrl+P | Open full command palette |
| Ctrl+S | Open session resume selector |
| Ctrl+C | Stop current round, clear draft, or confirm exit twice |
When no provider is available for the first time, SeekTTY will pop up a centered API Key masked input box before the first frame; press Esc to configure later without losing the draft and attachments.
Use Cases and Notes¶
Who It’s For: Developers already using DeepSeek Harness who want to keep agent workflows in the terminal; teams needing keyboard-first operations for sessions, permissions, plugins, and the Clarify→Plan requirement clarification chain.
Ecosystem Context: DSH’s philosophy is “everything is a plugin.” The community directory SkillHub is an independent site with no official affiliation with DeepSeek or High-Flyer. Always refer to the GitHub source code and Releases before installation.
Permissions and Security: Plugins run with the current dsh process permissions, accessing the workspace, credentials, and plugin configuration under that profile. Review the source code and MIT license before installation; Secret-type settings are write-only and not echoed. Clarify’s auxiliary model calls are recorded in the auxiliary_runtime ledger, but prompts and message content are not included.
Version Notes: The README distinguishes between the “most recently jointly verified Release” and the “unreleased trio candidate” (SeekTTY 1.2.1 + Auxiliary Runtime 0.1.1 + Clarify 0.2.2). The latter has PTY and live-provider observation records but is not an official Release and does not equal a full joint verification. Upgrade with attention to deepseek --update and /doctor output.
Conclusion¶
SeekTTY encapsulates DeepSeek Harness’s native agent capabilities into a pluggable, themable terminal workbench, and when Clarify and Auxiliary Runtime companion plugins are ready, it provides a keyboard-first path from vague ideas to reviewable drafts and then to /plan.
- Community directory: skillhub.cn/plugins/Hilbert-beinghappy/seektty
- Source code and documentation: github.com/Hilbert-beinghappy/seektty