> This repository has moved into one monorepo.
>
> The BornCode plugins — agent customization, desktop control, auto-continue,
> auto-shutdown, browser use, session instructions, session sync, and the side
> chat — now live in
> borncode-app/dsh-borncode,
> one repository with one Plugins entry.
>
> | this repo | new home |
> |---|---|
> | dsh-agent-customizer | packages/dsh-agent-customizer |
> | dsh-agent-desktop | packages/dsh-agent-desktop |
> | dsh-auto-continue | packages/dsh-auto-continue |
> | dsh-auto-shutdown | packages/dsh-auto-shutdown |
> | dsh-browser-use | packages/dsh-browser-use |
> | dsh-session-instructions | packages/dsh-session-instructions |
> | dsh-session-sync | packages/dsh-session-sync |
> | dsh-side-chat | packages/dsh-side-chat |
>
> The code and its history are unchanged; only the repository is shared. Install
> dsh-borncode instead of the individual bundles. This repository stays open
> so the old links keep working.
dsh-auto-shutdown
Powers the computer down after the work finishes — with the operating system's own cancelable countdown.
What it does
Long agent runs end the same way: the work is done, the machine sits awake for hours. This plugin asks the
operating system to power the computer down once a root session finishes its work — using the system's own
shutdown, so the countdown window is visible and shutdown /a still cancels it.
It ships off, because a deployment should never start powering down computers on its own.
Features
- Root sessions only — a subagent finishing does not count; the whole turn has to be over.
- The OS does the shutdown — Windows' native countdown dialog (or your platform's equivalent), not a hidden call.
- Cancelable — the countdown is real time you can still act in, and
shutdown /aaborts it. - Bounded countdown —
minDelaySeconds/maxDelaySecondsclamp whatever is configured. - Custom message —
messageis what the OS shows next to its own dialog. - Runtime switch — the Settings toggle stores its choice in
state.json; the bundle default stays off.
Requirements
| DeepSeek Harness | 0.2.x (Web GUI) |
| Runtime | Node 24, supplied by the Harness runtime |
| Platform | Windows (uses shutdown /s /t); the toggle is inert where no equivalent command exists |
Install
git clone https://github.com/borncode-app/dsh-auto-shutdown.git dsh-auto-shutdown
Then in DSH: Plugins → install the bundle from that directory, or:
plugin_manager install_bundle target=C:\path\to\dsh-auto-shutdown
Restart once, then flip the switch in Settings when you actually want it.
Configuration
| field | default | meaning |
|---|---|---|
endpoint |
/plugins/auto-shutdown |
Path the Web GUI reads and posts the toggle to |
enabled |
false |
Off by default; the user turns this on deliberately |
delaySeconds |
120 |
Countdown the OS shows before powering down |
minDelaySeconds |
30 |
Shortest countdown the plugin will arm |
maxDelaySeconds |
3600 |
Longest countdown the plugin will arm |
message |
(see patch) | Note Windows shows next to its countdown dialog |
How it works
- The host row watches session lifecycle events.
- When a root session reaches its finished state and
enabledis true, it clampsdelaySecondsinto
the allowed range and hands the countdown to the OS. - If anything else arrives in the meantime, you cancel with
shutdown /a— the plugin never hides that window.
Files
| file | role |
|---|---|
index.js |
host row: lifecycle watch, delay clamping, OS call |
client.js |
the Settings toggle and its stored state |
cordis.patch.yml |
the bundle patch that inserts the row |
locale/{en,th,zh}.json |
UI strings |
icon.svg |
plugin icon |
test/ |
host-logic.test.mjs, client-render.test.mjs |
ภาษาไทย
เมื่ภsession หลัà¸à¸—ำงานเสร็จ plugin นี้จะสั่ง ปิดเครื่à¸à¸‡ ผ่านคำสั่งขà¸à¸‡ OS เà¸à¸‡ ทำให้มีหน้าต่างนับถà¸à¸¢à¸«à¸¥à¸±à¸‡
ที่มà¸à¸‡à¹€à¸«à¹‡à¸™à¹„ด้ à¹à¸¥à¸°à¸¢à¸à¹€à¸¥à¸´à¸à¹„ด้ด้วย shutdown /a
- นับเฉพาะ root session ที่จบงาน — subagent ทำงานเสร็จไม่นับ
- ค่าเริ่มต้นคืภปิด ต้à¸à¸‡à¹„ปเปิดที่หน้า Settings เà¸à¸‡ (เจตนา: ไม่ให้ deployment ปิดเครื่à¸à¸‡à¹€à¸à¸‡à¹‚ดยพลà¸à¸²à¸£)
- ปรับเวลาได้ด้วย
delaySeconds(clamp ระหว่างminDelaySeconds–maxDelaySeconds) - ใช้ได้บน Windows
License
MIT © 2026 BornCode