DeepSeek-Bot
AGENTS.md6.3k starsChanged 21 days agoApache-2.0View on GitHub
Instructions for AI coding agents that work on this repository. Human contributors: see CONTRIBUTING.md, which has the same rules with more detail. DS Bot is a team of long-lived Bots, built on DeepSeek Harness (DSH). It has two parts: The Bot team: Run in ds-bot/. The unit tests and the linter load the @deepseek-ai/* packages from dev/harness/, which npm run harness installs from npm at the DSH version in dev/harness/package.json. DSH_HARNESS points them at another install or at a DeepSeek…
Trending
More talk lately.thin dataabout the whole repository
Who's talking about Fei2411/DeepSeek-Bot
- @future-beginner.bsky.social“github.com/Fei2411/Deep...”Bluesky · Oct 23, 2026 · 1 likes
- ultrametricai/ultrametric“vendor-radar: daily scan 2026-10-24”GitHub · Oct 24, 2026
- AppImage/appimage.github.io“Add DeepSeek_Bot”GitHub · Oct 24, 2026
- sudosilo/free-as-in-links“FMHY suggestions 2026-10-21”GitHub · Oct 21, 2026
- Fei2411/DS-Bot“Widget views: follow-ups from the #388 review”GitHub · Oct 21, 2026
The biggest 5 of 13 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 13
Talked about on GitHub and Bluesky (13 times).
On GitHub · 12
- Oct 24, 2026vendor-radar: daily scan 2026-10-24 — ultrametricai/ultrametric0 reactions · 3 comments
- Oct 24, 2026Add DeepSeek_Bot — AppImage/appimage.github.io0 reactions · 1 comment
- Oct 21, 2026FMHY suggestions 2026-10-21 — sudosilo/free-as-in-links0 reactions
- Oct 21, 2026Widget views: follow-ups from the #388 review — Fei2411/DS-Bot0 reactions
- Oct 19, 2026feat/fix: free agent preset pick + waiting card on DSH 0.2.1-rc.2 (fork branch ready) — Fei2411/DS-Bot0 reactions · 4 comments
7 more on GitHub
- Oct 15, 2026Fei2411 'DeepSeek-Bot' — DeepSeek Harness용 장수 봇 팀 플러그인, 봇간 메시지·그룹챗 (10/7, GitHub) — roomedia/ax-trend0 reactions
- Oct 14, 2026点击反馈提示浏览器拦截了新窗口 — Fei2411/DS-Bot0 reactions · 1 comment
- Oct 13, 2026Group chat relay never runs: the synthesized group_relay call is rejected by DSH (only run_code is callable directly) — Fei2411/DS-Bot0 reactions · 4 comments
- Oct 12, 2026[已由 #99 取代] create_bot 与 update_bot 无法设置思考档 — Fei2411/DS-Bot0 reactions
- Oct 12, 2026Weekly discovery: new DeepSeek Harness ecosystem candidates — fendouai/awesome-deepseek-harness0 reactions · 1 comment
- Oct 12, 2026加两个功能:群聊反问卡片 + 权限策略设置页(基于 v0.1.3) — Cirsever/DeepSeek-Bot0 reactions · 3 comments
- Oct 12, 2026npm test fails on Node 22: the web-search slow-endpoint timeout never fires (unref'd AbortSignal.timeout), 14 subtests cancelled — Fei2411/DS-Bot0 reactions · 2 comments
On Bluesky · 1
- Oct 23, 2026github.com/Fei2411/Deep... — @future-beginner.bsky.social1 likes and repost
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,439 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository2 other files it gives its agents.
- issue-triageSkill
- record-browser-gifSkill
The file
We split this AGENTS.md into the rules it gives an agent
8 rules. About 0 are common, 4 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Very specific: line 23
No secrets: Never write, print or commit API keys, tokens, cookies or DSH_HOME contents.
- Very specific: line 49
Start work from the latest dev on a branch named fix/<issue>-<name>, feat/<issue>-<name>, docs/<name> or chore/<name>.
- Very specific: line 52
Do not start work on an issue or pull request with the maintainer label.
- Very specific: line 53
Before you change behavior, read the design for it in docs/plans/ (and docs/vision.md).
- Distinctive: line 54
Do not close an issue without evidence: the pull request or commit that fixed it, the issue it duplicates, or the reason it will not be …
- Distinctive: line 68
Follow the code around your change.
- Distinctive: line 69
Write a comment only when the reason is not clear from the code: a hidden constraint, an invariant, a workaround.
- Distinctive: line 70
Commit messages in English, imperative subject, the reason in the body.
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AGENTS.md
Instructions for AI coding agents that work on this repository. Human contributors: see CONTRIBUTING.md, which has the same rules with more detail.
What this project is
DS Bot is a team of long-lived Bots, built on DeepSeek Harness (DSH). It has two parts:
ds-bot/: the Bot features, written as a DSH plugin. The plugin runs in DSH Desktop, in DSH Web and in the desktop app.app/: the desktop app for Windows, macOS and Linux. It runs a pinned DSH with theds-botplugin, in its own profile and its ownDSH_HOME, and imports an existing team from the user's DSH.
The Bot team:
- Every Bot is a long-lived identity whose work runs in DSH Sessions: one for its own chat, one for each group it is in, and a fresh one when the context fills up (earlier ones stay readable). Every turn runs through the normal DSH agent loop, tools and model routes.
- The team works together: Bots message each other, share group chats and can see what the other Bots are doing. Each Bot still runs on its own and does not disturb the others.
- Bots have clear, different roles. A Main Bot has the highest rights: it creates, changes and removes other Bots. Other Bots do not get these rights. There can be more than one Main Bot.
- Users customize each Bot (name, role label, instructions, model, character).
- Behavior must be reliable: a Bot acts on evidence, stays inside its goal, and its results can be checked.
Hard rules
- Build on DSH; never patch it. Bot features use the documented plugin APIs. The desktop app starts DSH only through its documented entry points (
@deepseek-ai/dsh/profile-boot, thedshCLI). Never patch DeepSeek Harness or depend on files inside a DSH install. If something is missing in DSH, stop and say so; do not work around it with a patch. - No secrets. Never write, print or commit API keys, tokens, cookies or
DSH_HOMEcontents. Use the mock model (ds-bot/dev/mock-llm.mjs) for tests; it needs no key. - Only original material. Do not copy code, text, icons, logos or graphics from other products or websites. Code under a license compatible with Apache 2.0 is the only exception: say where it comes from and add its notice to the
NOTICEfile. This rule is about DS Bot's own interface. To name a third-party product that DS Bot connects to (for example the agent CLI a Bot runs on), use that product's official logo, and list it inNOTICEwith its source and owner. client.jsis generated. Changeds-bot/src/client/, then runnpm run buildand commit both files. Never editclient.jsby hand.- Do not touch the user's own DSH data. The desktop app keeps its data in its own
DSH_HOME; its import only reads~/.dshand never writes there. The test bench keeps its data in.dsh-test-<name>/. Never point a test at~/.dsh, at the desktop app's data or at a DSH that the user runs.
Commands
Run in ds-bot/. The unit tests and the linter load the @deepseek-ai/* packages from dev/harness/, which npm run harness installs from npm at the DSH version in dev/harness/package.json. DSH_HARNESS points them at another install or at a DeepSeek Harness checkout instead. The test bench needs a checkout at ../deepseek-harness (or DSH_HARNESS), at the DSH version in the README.
npm ci # build tool only (esbuild)
npm run harness # once: the DSH packages for the tests and the linter
npm run build # src/client → client.js
npm test # unit tests; also fail if client.js is stale
node scripts/build-client.mjs --check # client.js matches src/client
npm run lint # oxlint
CONTEXT_WINDOW=100000 CHECK_RATIO=0.45 dev/bench.sh smoke 3096 8796 reset && node dev/smoke.mjs smoke 3096 # smoke test
dev/bench.sh smoke 3096 8796 stopA change is done when npm test, the --check and npm run lint pass; CI runs them on every pull request. Run the smoke test as well for changes to index.js or src/host/. Use a free port for each bench, and stop every bench and process that you started.
Branches, pull requests and issues
The full workflow is in CONTRIBUTING.md. The parts that an agent must follow:
- Start work from the latest
devon a branch namedfix/<issue>-<name>,feat/<issue>-<name>,docs/<name>orchore/<name>. Never start a branch name withdev/. Open the pull request intodev, notmain; only releases and hotfixes go intomain. - Bring a branch up to date with
scripts/merge-dev.sh: it mergesorigin/dev, takes a conflictingds-bot/client.jsfrom dev and rebuilds it. Never rebase a pushed branch and never force-push. - Fill in the pull request template. Link the issue with
Fixes #<number>; a bug fix names the bug it fixes. Write the user-visible change in the Changelog field, and do not editCHANGELOG.md. - Do not start work on an issue or pull request with the
maintainerlabel; it waits for the maintainer. Do not take an issue that someone else is assigned to. - Before you change behavior, read the design for it in
docs/plans/(anddocs/vision.md); for interface work alsodocs/design/ui-standard.md. A change to a decided design needs the maintainer; a new large feature adds its design note to the same pull request. - Do not close an issue without evidence: the pull request or commit that fixed it, the issue it duplicates, or the reason it will not be fixed.
- To triage issues, follow .agents/skills/issue-triage/SKILL.md.
- To record a demonstration GIF for an interface change, follow .agents/skills/record-browser-gif/SKILL.md.
Layout
ds-bot/index.jsandds-bot/src/host/: the server side (roster and store, tools, turns and delivery, groups, conversation parts and the search index, images, the browser bridge, theapi/botchannel).ds-bot/src/client/: the browser side (sidebar, chat, panels, themes, characters, the Bot browser panel).ds-bot/web-search.js: theautoweb-search provider, independent of the Bot team code.ds-bot/test/: unit tests and fixtures.ds-bot/dev/: the DSH packages for the tests (harness/), mock model, test bench, smoke test, character generator, Desktop scripts for Linux.app/: the desktop app (Electron main process and window, first-run setup and import, installer and updates).
Style
- Follow the code around your change. Keep functions small and names plain.
- Write a comment only when the reason is not clear from the code: a hidden constraint, an invariant, a workaround. Do not describe what the code does.
- Commit messages in English, imperative subject, the reason in the body. Keep commits small.
- The person who asked for the change is the commit author. Do not set an AI agent or bot as author or committer, and do not add
Co-authored-bylines for one. - User-facing text in the plugin is English. Keep the README and README.zh.md in step when you change one of them.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

