qwen-code/docs/users/features
ChengHui Chen 1f92787aa0
feat(channels): add dmPolicy config to disable private/DM messages (#6521)
* feat(channels): add dmPolicy config to disable private/DM messages

Add DmGate class mirroring GroupGate to gate DM/private messages in
channel adapters. Operators can now set dmPolicy: 'disabled' in their
channel config to silently drop all DM messages while keeping group
messages active.

Closes #6392

* fix(channels): address review feedback for dmPolicy

- Add dmPolicy: 'open' to all test config factories (8 files) to
  maintain type correctness with required ChannelConfig field
- Add integration tests in ChannelBase.test.ts:
  - preflightInbound: DM dropped + group passes when dmPolicy=disabled
  - isStoredLoopTargetAuthorized: DM loop job disabled + group passes
- Add dmPolicy assertions in config-utils.test.ts (default + explicit)
- Keep dmPolicy as required field (not optional) for strict parity
  with groupPolicy
2026-07-08 12:01:10 +00:00
..
channels feat(channels): add dmPolicy config to disable private/DM messages (#6521) 2026-07-08 12:01:10 +00:00
_meta.ts refactor(core): remove GitService, migrate /restore to FileHistoryService (#4871) 2026-06-09 18:34:31 +08:00
approval-mode.md feat(auto-mode): add classifyAllShell setting to route all shell commands through classifier (#6040) 2026-07-01 16:23:24 +08:00
arena.md fix(core): Align MCP OAuth guidance and docs (#5589) 2026-06-24 07:09:53 +08:00
auto-mode.md feat(auto-mode): add classifyAllShell setting to route all shell commands through classifier (#6040) 2026-07-01 16:23:24 +08:00
code-review.md fix(review): remove qwen-code-specific core-infra gate from bundled /review (#6412) 2026-07-07 03:03:49 +00:00
commands.md docs: fix skill invocation syntax and include Feishu in channel lists (#6320) 2026-07-05 09:49:52 +00:00
dual-output.md fix(dual-output): prevent FIFO blocking on startup when no reader connected (#4894) 2026-06-15 06:04:06 +08:00
followup-suggestions.md feat(cli): show follow-up suggestion in input placeholder (#5145) 2026-06-19 13:39:12 +08:00
headless.md docs: correct stale CLI flags/keybinding and document model.reasoningEffort (#6219) 2026-07-03 01:55:45 +00:00
hooks.md fix(core): Match hook display-name matchers to tool ids (#6373) 2026-07-08 02:22:55 +00:00
language.md refactor(cli): revert dynamic slash command LLM translation (#4145) 2026-05-15 16:01:16 +08:00
lsp.md fix(lsp): expose status and startup diagnostics (#3649) 2026-05-17 01:42:28 +08:00
markdown-rendering.md feat(cli): support /copy N to copy Nth-last AI message (#4761) 2026-06-08 10:08:45 +08:00
mcp.md docs: refresh settings, MCP glob, auth alias, and autonomous loop docs (#6090) 2026-07-01 06:43:29 +00:00
memory.md fix(cli): switch TUI prefix ✦→◆ to fix glyph overflow on some terminals (#5974) 2026-06-30 22:44:34 +00:00
sandbox.md fix(core): Align MCP OAuth guidance and docs (#5589) 2026-06-24 07:09:53 +08:00
scheduled-tasks.md feat(scheduler): make recurring cron/loop job expiration configurable (#6173) 2026-07-03 06:34:37 +00:00
skills.md docs: fix skill invocation syntax and include Feishu in channel lists (#6320) 2026-07-05 09:49:52 +00:00
status-line.md fix(cli): replace all emoji with Unicode text symbols in TUI rendering (#5999) 2026-06-30 15:18:01 +00:00
structured-output.md docs: user + design docs for --json-schema structured output (#4051) 2026-05-17 23:10:34 +08:00
sub-agents.md fix(agent): stop forking result-bearing work; keep omitted subagent_type awaitable (#5155) 2026-06-16 09:38:10 +08:00
tips.md feat: add contextual tips system with post-response context awareness (#2904) 2026-04-13 17:40:27 +08:00
token-caching.md feat: update docs 2025-12-12 19:37:36 +08:00
tool-use-summaries.md fix(core): Align MCP OAuth guidance and docs (#5589) 2026-06-24 07:09:53 +08:00
worktree.md feat(worktree): Phase D — startup --worktree flag + symlinkDirectories + PR refs (#4381) 2026-05-27 17:04:51 +08:00