Read & write files
Read text files with line numbers, create new files, and edit specific parts without rewriting the whole file. A read-before-write policy means a file must be read before it is changed.
Every DeepSeek Harness capability is installed as a plugin, so the list can grow without updating the core app. Below are the built-in capabilities, grouped for easy scanning, each with how to use it.
| Group | What it does | Example instruction |
|---|---|---|
| Files & code | Read, search, write and edit files; find symbols using LSP. | “Fix the broken imports under src.” |
| Terminal & automation | Run shells, persistent sessions and background jobs. | “Run the tests, then report the failures.” |
| Agent orchestration | Subagents, JavaScript workflows and scheduled recurring tasks. | “Audit these 40 files with three parallel agents.” |
| Research & data | Web search, page fetching, Office documents, data analysis. | “Build a Word report from this Excel data.” |
| Extensions | Markdown skills, TypeScript plugins, MCP servers, custom commands. | “Use the invoice skill to draft a bill.” |
| Control & review | Sandbox modes, human approval, plan mode, todo lists, goals. | “Plan first, do not change any files.” |
Read text files with line numbers, create new files, and edit specific parts without rewriting the whole file. A read-before-write policy means a file must be read before it is changed.
Find files by name pattern and search file contents with regular expressions (backed by a bundled ripgrep) — far faster than browsing manually.
Run commands on Windows (PowerShell) and Linux/macOS (bash), including persistent terminal sessions for dev servers or long processes.
Language Server Protocol integration helps the agent find definitions, references and symbols so edits land in the right place.
Cari semua berkas .tsx di folder app, lalu tunjukkan komponen yang belum memakai kunci unik pada list.The agent uses glob, grep and then reads relevant files before concluding.
These three capabilities are what set DeepSeek Harness apart from an ordinary coding assistant. They share one goal: splitting large jobs so they finish faster and more carefully.
Additional agents with their own context. Ideal for self-contained work: researching, summarising, verifying output or handling one file. They can run in the background and be continued later by message.
One JavaScript script that runs dozens of agents with phases, branching and structured results. Used for multi-file audits, large migrations or multi-angle research.
Long commands (builds, tests, downloads) run in the background so you can keep chatting and assigning other work while waiting.
Need one quick answer from a different angle → subagent. Need structured results across many similar items → workflow. Need something long-running while you keep working → background job.
Search current information through a search provider, open specific URLs, then cite the sources. Outbound requests are protected against internal-address abuse (SSRF).
Create and edit .xlsx, .docx and .pptx files — including tables, formulas, formatting, charts and conversion. Data libraries (pandas, numpy) are bundled too.
Open PNG/JPEG/WebP/GIF files so the agent can inspect screenshots, compare designs or read text from an image.
Buka data-penjualan.xlsx, buat ringkasan per wilayah di sheet baru,
lalu tulis ringkasan eksekutif satu halaman ke laporan-q1.docxThe agent reads the data, computes with pandas, then writes both output files.
Task instructions stored as markdown files (SKILL.md). The agent loads them when relevant, so your company procedures are followed. They can also be invoked manually as commands.
TypeScript modules that add tools, UI panels or new integrations. They are registered in a profile configuration and can be enabled only for specific profiles.
Connect MCP servers over stdio or HTTP so external tools appear as mcp__<server>__<tool>. A practical way to reach internal systems without writing a plugin.
Commands executed without a model turn — for opening panels, running routines, or invoking skills meant for humans.
.dsh/skills/laporan-bulanan/SKILL.md
---
name: laporan-bulanan
description: Membuat laporan bulanan dari data penjualan.
---
# Langkah
1. Baca data dari folder data/.
2. Hitung pertumbuhan per wilayah.
3. Tulis hasil ke laporan/YYYY-MM.docx.A .dsh/skills folder inside the project is discovered automatically.
Three levels of file access and two approval policies. All switchable at any time with no reinstall.
The agent can be asked to draft a plan without touching files, then track progress item by item so nothing is missed.
For large jobs requiring many rounds, the agent stores the objective and continues automatically until it finishes or is genuinely blocked.
Recurring tasks with five-field cron expressions and IANA time zones — for example a daily report or a website health check.
Run code snippets for calculations or data transformation without creating permanent script files.
Result files can be marked as final deliverables so colleagues can find and open them easily.
Do not keep credentials, API keys or personal data inside the workspace if you use danger-full-access. Turn on version control so any change can be reverted, and review approval prompts before answering “allow”.
| How to run | Best for | Command |
|---|---|---|
| Desktop app | Users who want a full interface without touching a terminal. | Install the DeepSeek Harness app, then choose a workspace. |
| Local web interface | Daily use with session history and visual settings. | npx @deepseek-ai/dsh web |
| Headless CLI | Automation, headless servers and CI integration. | dsh --profile headless "job" |
| Python SDK | Developers calling the agent from their own application. | dsh --profile sdk |
Free consultation with Andi to choose the right setup, prepare a workflow, or review safety before your team adopts it.
Needs differ: some teams only need the web interface, others need scheduled automation, and some must keep data local with a self-hosted model. We can help you pick the right combination of features. Contact Andi at +62 897-6003-363.