Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
51 changes: 51 additions & 0 deletions .agents/skills/deepchat-sdd/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
name: deepchat-sdd
description: Use for any DeepChat code, configuration, documentation, feature, issue fix, refactor, or architecture change before implementation. This skill enforces the project SDD workflow: classify the goal, create or update spec.md, plan.md, and tasks.md under docs/features, docs/issues, or docs/architecture, resolve NEEDS CLARIFICATION items, then implement and validate.
---

# DeepChat SDD

## When To Use

Use this skill before changing DeepChat source code, configuration, tests, docs, build scripts, release workflows, or project structure.

## Classify The Goal

Create one kebab-case folder per goal:

- New capability, user-visible behavior, integration, or tool: `docs/features/<goal>/`
- Bug, regression, failing test, CI failure, reliability problem, or prompt/runtime issue: `docs/issues/<goal>/`
- Refactor, migration, dependency boundary, shared contract, runtime architecture, or cross-module design: `docs/architecture/<goal>/`

If one request contains multiple independent goals, split them into separate folders. Keep current architecture reference docs such as `docs/architecture/agent-system.md` in place; use subfolders for new architecture targets.

## Required Artifacts

Every active goal folder must contain:

- `spec.md`: user need, goal, acceptance criteria, constraints, non-goals, open questions
- `plan.md`: implementation approach, affected interfaces, data flow, compatibility, test strategy
- `tasks.md`: ordered tasks that can map to commits or review slices

Resolve every `[NEEDS CLARIFICATION]` marker before implementation. If a requested change is tiny, keep the files short and concrete.

## Workflow

1. Inspect the current code and docs first.
2. Pick the target folder from the classification rules.
3. Create or update `spec.md`, `plan.md`, and `tasks.md`.
4. Keep the implementation aligned with existing DeepChat patterns:
- main process Presenter boundaries
- typed `shared/contracts/*`
- renderer `api/*Client`
- Vue 3 Composition API and i18n for UI strings
5. Implement the change after the SDD artifacts are complete.
6. Update `tasks.md` as work lands.
7. Run `pnpm run format`, `pnpm run i18n`, and `pnpm run lint` before handoff.

## Documentation Hygiene

- Move completed or stale SDD target folders to `docs/archives/<goal>/`.
- Add an archive note when a document references historical code paths.
- Delete documents that only describe removed code and have no reusable decision record.
- Update `docs/README.md` when a moved document remains part of the navigation surface.
4 changes: 4 additions & 0 deletions .agents/skills/deepchat-sdd/agents/openai.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
interface:
display_name: "DeepChat SDD"
short_description: "Prepare SDD specs before DeepChat changes"
default_prompt: "Use $deepchat-sdd before implementing DeepChat changes to classify the goal and prepare spec, plan, and tasks artifacts."
12 changes: 9 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
## Project Structure & Module Organization
- `src/main/`: Electron main process; presenters in `presenter/` (Window/Tab/Thread/Mcp/Config/LLMProvider), `eventbus.ts` for app events.
- `src/preload/`: Secure IPC bridge (contextIsolation on).
- `src/renderer/`: Vue 3 app. App code in `src/renderer/src` (`components/`, `stores/`, `views/`, `i18n/`, `lib/`). Shell UI lives in `src/renderer/shell/`.
- `src/renderer/`: Vue 3 app. App code in `src/renderer/src` (`components/`, `stores`, `views`, `i18n`, `lib`). Secondary renderers live in `src/renderer/browser`, `src/renderer/settings`, `src/renderer/floating`, and `src/renderer/splash`.
- `src/shared/`: Shared TS types/utilities.
- `test/`: Vitest suites (`test/main`, `test/renderer`) with setup files.
- `scripts/`: Build/signing/runtime installers, commit checks.
Expand Down Expand Up @@ -44,8 +44,14 @@

## Specification-Driven Development

Follow the SDD methodology for feature implementation. See [docs/spec-driven-dev.md](docs/spec-driven-dev.md).
Follow the SDD methodology before changing code, tests, configuration, documentation, build scripts, or project structure. See [docs/spec-driven-dev.md](docs/spec-driven-dev.md).

When working on a feature, prefer creating spec artifacts under `docs/specs/<feature>/` (spec/plan/tasks) and resolve any `[NEEDS CLARIFICATION]` items before implementation.
Create one kebab-case folder per goal and keep `spec.md`, `plan.md`, and `tasks.md` together:

- `docs/features/<goal>/` for new features, user-visible capabilities, integrations, and tools.
- `docs/issues/<goal>/` for bug fixes, regressions, failing tests, CI failures, reliability issues, and prompt/runtime problems.
- `docs/architecture/<goal>/` for refactors, migrations, dependency boundaries, shared contracts, runtime architecture, and cross-module design.

Resolve every `[NEEDS CLARIFICATION]` item before implementation. Move completed or stale goal folders to `docs/archives/<goal>/`; delete documents that only describe removed code and have no reusable decision record.

Core principles: specification-first, architectural consistency, minimal complexity, compatibility/migration awareness.
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
# Changelog

## v1.0.4-beta.6 (2026-05-09)
- Agents can now generate images right inside chat, with OpenAI image settings available when you want more control
- Image previews and image actions feel smoother, especially around generated results and tool output
- Long conversations should feel lighter when you scroll back through older messages
- Sync and import are more forgiving when settings come from a different app version
- Mac computer use got a couple of driver updates, so window handling, clicking, and app control should be steadier
- Fixed a handful of everyday annoyances around Ollama, provider search, Windows command output, search docs, and empty computer-use settings messages
- Agent 现在可以直接在聊天里生成图片;需要细调时,也能设置 OpenAI 图片生成选项
- 图片预览和图片操作更顺了一些,生成结果和工具输出里的图片都更好处理
- 长对话回看历史时会轻快一点,旧消息加载不再那么吃劲
- 设置同步和导入更宽容了,从不同版本带来的备份也更稳
- Mac 电脑使用能力升级了几轮驱动,窗口处理、点击和控制应用会更稳
- 修了一批日常小毛病,包括 Ollama、模型服务商搜索、Windows 命令输出、搜索文档和电脑使用设置里的空提示

## v1.0.4-beta.5 (2026-05-04)
- Added Mac computer use capability for enhanced desktop automation
- Added launch at login and access controls for better app startup management
Expand Down
8 changes: 4 additions & 4 deletions docs/ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -103,9 +103,9 @@ flowchart LR

单轨化的目标、阶段和 merge gate 见:

- [specs/renderer-main-single-track/spec.md](./specs/renderer-main-single-track/spec.md)
- [specs/renderer-main-single-track/plan.md](./specs/renderer-main-single-track/plan.md)
- [specs/renderer-main-single-track/tasks.md](./specs/renderer-main-single-track/tasks.md)
- [architecture/renderer-main-single-track/spec.md](./architecture/renderer-main-single-track/spec.md)
- [architecture/renderer-main-single-track/plan.md](./architecture/renderer-main-single-track/plan.md)
- [architecture/renderer-main-single-track/tasks.md](./architecture/renderer-main-single-track/tasks.md)

## 历史对照与防回归

Expand All @@ -114,7 +114,7 @@ flowchart LR
- main kernel 边界回归由 `scripts/architecture-guard.mjs` 和 `docs/architecture/baselines/main-kernel-*.{md,json}` 追踪
- `scripts/architecture-guard.mjs` 负责固定 `src/renderer/api/legacy/**`、禁止业务层新增 direct legacy transport,并把 typed boundary 外的 legacy access 视为违规
- legacy agent cleanup 回归由 `scripts/agent-cleanup-guard.mjs` 追踪
- renderer-main 单轨化后续治理由 `docs/specs/renderer-main-single-track/` 追踪
- renderer-main 单轨化后续治理由 `docs/architecture/renderer-main-single-track/` 追踪

## 推荐阅读顺序

Expand Down
3 changes: 2 additions & 1 deletion docs/FLOWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,8 @@ sequenceDiagram
Hook->>N: startLegacyImport()
N->>I: importLegacyChats()
I->>DB: read legacy conversations/messages
I->>DB: write new_sessions / new_messages
I->>DB: write new_sessions / deepchat_messages
I->>DB: backfill normalized message/session hot-path tables
I-->>N: import status
```

Expand Down
Loading
Loading