Skip to content
Merged
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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions docs/features/context-engineering-label/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Implementation Plan

## Change

- Update `settings.controlCenter.groups.knowledge` in Chinese locale files.
- Keep `settings.controlCenter.overview.knowledge` unchanged.

## Validation

- Run format, i18n, lint, and web typecheck.
15 changes: 15 additions & 0 deletions docs/features/context-engineering-label/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Context Engineering Label

## User Story

As a Chinese-language settings user, I want the sidebar group that contains Skills, Prompt, and Knowledge Base to be named "上下文工程", so the section better describes its purpose.

## Acceptance Criteria

- The settings sidebar group currently labeled "知识" displays "上下文工程" in Chinese locales.
- Existing individual item labels such as Skills, Prompt, and Knowledge Base remain unchanged.

## Non-goals

- No route or navigation structure changes.
- No changes to overview metric labels.
5 changes: 5 additions & 0 deletions docs/features/context-engineering-label/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Tasks

- [x] Add SDD artifacts.
- [x] Update Chinese sidebar group label.
- [x] Run validation commands.
12 changes: 12 additions & 0 deletions docs/features/data-sync-card-header/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Implementation Plan

## Change

- Remove the redundant Backup & Sync section header from the data settings sync card.
- Keep the sync controls, backup actions, and import dialog unchanged.
- Remove the redundant Data Operations section header from the maintenance card.
- Keep the maintenance and reset actions unchanged.

## Validation

- Run format, i18n, and lint.
16 changes: 16 additions & 0 deletions docs/features/data-sync-card-header/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Data Sync Card Header

## User Story

As a settings user, I want data settings cards to avoid repeating their titles, so the cards read cleaner and the row labels carry the structure.

## Acceptance Criteria

- The Backup & Sync header inside the data sync card is removed.
- Enable data sync, sync folder, last sync time, backup, and import controls remain unchanged.
- The Data Operations header inside the maintenance card is removed.
- Database repair, model config update, danger zone, and YoBrowser controls remain unchanged.

## Non-goals

- No changes to data sync, backup, import, or repair behavior.
6 changes: 6 additions & 0 deletions docs/features/data-sync-card-header/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Tasks

- [x] Add SDD artifacts.
- [x] Remove the redundant data sync card header.
- [x] Remove the redundant data operations card header.
- [x] Run validation commands.
12 changes: 12 additions & 0 deletions docs/features/mcp-footer-alignment/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Implementation Plan

## Change

- Adjust the MCP server footer wrapper spacing to match the page header inset.
- Expose the MCP Add server dialog trigger so the settings header can host the Add action.
- Hide the footer Add action from the settings page usage.
- Keep the MCP page wrapper from becoming the scroll container so the server grid scrolls independently between the static header and footer.

## Validation

- Run format, i18n, lint, and focused MCP server tests.
19 changes: 19 additions & 0 deletions docs/features/mcp-footer-alignment/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# MCP Footer Alignment

## User Story

As a settings user, I want the MCP footer status bar to align with the page title area, so the bottom controls feel like part of the same layout.

## Acceptance Criteria

- The MCP footer status bar remains pinned to the bottom of the MCP server list.
- The MCP footer status bar remains visible while the server grid scrolls, matching the static page-frame behavior of the MCP Center title area.
- Footer content uses the same horizontal inset as the MCP page title area.
- The Add server action appears in the MCP page title action area.
- The footer no longer shows the Add server action when used on the settings page.
- The NPM registry action uses the shorter NPM Source label.
- Existing footer status values and actions remain unchanged.

## Non-goals

- No changes to MCP server filtering, status calculation, or registry behavior.
7 changes: 7 additions & 0 deletions docs/features/mcp-footer-alignment/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Tasks

- [x] Add SDD artifacts.
- [x] Align MCP footer spacing with the title area.
- [x] Move the Add server action to the MCP title area.
- [x] Keep the MCP footer visible while the server grid scrolls.
- [x] Run validation commands.
13 changes: 13 additions & 0 deletions docs/features/mcp-settings-status-bar/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Implementation Plan

## UI

- Remove the top card grid from `McpSettings`.
- Add a `status-bar` slot to `McpServers` so the page shell can inject compact MCP stats and NPM mirror controls into the existing footer.
- Remove the duplicate MCP market action from the server-list footer because the header already owns that entry.
- Restrict `McpServers` filter options to `all`, `running`, and `stopped`.

## Validation

- Update focused renderer tests that assert footer actions.
- Run focused tests plus required format, i18n, lint, and web typecheck.
18 changes: 18 additions & 0 deletions docs/features/mcp-settings-status-bar/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# MCP Settings Status Bar

## User Story

As a user managing MCP servers, I want the MCP settings page to spend less space on summary cards and filters, so the server list remains the main focus.

## Acceptance Criteria

- The top MCP summary cards are removed.
- Running, built-in, custom, and total server counts are displayed in a compact bottom status bar.
- The NPM mirror/source can be viewed and edited from the far side of the bottom status bar.
- Server filters are limited to All, Running, and Stopped.
- The top MCP market entry and global MCP toggle remain available.

## Non-goals

- No changes to MCP server lifecycle behavior.
- No changes to NPM mirror persistence or validation behavior.
7 changes: 7 additions & 0 deletions docs/features/mcp-settings-status-bar/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Tasks

- [x] Add SDD artifacts.
- [x] Move MCP summary and NPM mirror into a compact bottom status bar.
- [x] Reduce MCP filters to All, Running, and Stopped.
- [x] Update tests.
- [x] Run validation commands.
18 changes: 18 additions & 0 deletions docs/features/provider-detail-simplification/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Implementation Plan

## UI

- Remove status badges from the provider navigation rows and provider detail header.
- Keep the enabled model count badge in the provider detail header.
- Remove the outer rounded/shadow treatment from `ProviderModelManager`.
- Replace the four-tab provider detail layout with three tabs.
- Render `ProviderRateLimitConfig` inside Advanced above provider-specific settings.

## Compatibility

The change is presentation-only. Existing provider, model, and rate limit data flows remain unchanged.

## Validation

- Run repository-required `pnpm run format`, `pnpm run i18n`, and `pnpm run lint`.
- Run `pnpm run typecheck:web` for Vue template safety.
18 changes: 18 additions & 0 deletions docs/features/provider-detail-simplification/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Provider Detail Simplification

## User Story

As a user configuring providers, I want the provider detail page to avoid repeated status tags and heavy model-list card styling, so the page is easier to scan.

## Acceptance Criteria

- The repeated Connected status tag is removed from the provider list and provider detail header.
- The provider detail header still shows the enabled model count.
- The Models tab content no longer uses a card-like border or shadow container.
- Limits is merged into Advanced, leaving the visible tabs as Connect, Models, and Advanced.
- Advanced contains rate limit controls first, followed by provider-specific advanced controls when available.

## Non-goals

- No changes to provider connection, model enablement, or rate limit persistence behavior.
- No changes to Ollama or Bedrock provider architecture beyond the shared model manager styling.
7 changes: 7 additions & 0 deletions docs/features/provider-detail-simplification/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Tasks

- [x] Add SDD artifacts.
- [x] Remove Connected/status badges from provider navigation and detail header.
- [x] Simplify Models tab container styling.
- [x] Merge Limits into Advanced.
- [x] Run format, i18n, lint, and web typecheck.
9 changes: 9 additions & 0 deletions docs/features/remote-system-group/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Implementation Plan

## Change

- Update the `settings-remote` navigation item group from `tools` to `system`.

## Validation

- Run format, i18n, lint, and web typecheck.
15 changes: 15 additions & 0 deletions docs/features/remote-system-group/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Remote System Group

## User Story

As a settings user, I want Remote settings to appear under the System group, so app-level remote control configuration is grouped with other system controls.

## Acceptance Criteria

- Remote settings appears in the System sidebar group.
- The Remote route, label, and page behavior remain unchanged.

## Non-goals

- No changes to remote integrations or runtime behavior.
- No changes to route paths or i18n keys.
5 changes: 5 additions & 0 deletions docs/features/remote-system-group/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Tasks

- [x] Add SDD artifacts.
- [x] Move Remote settings to the System group.
- [x] Run validation commands.
11 changes: 11 additions & 0 deletions docs/features/settings-agent-capability-groups/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Implementation Plan

## Change

- Update shared settings navigation group assignments for Directory Environment, DeepChat Agent, and ACP Agent.
- Rename the models and tools group labels in locale files.
- Align affected page eyebrow labels with their sidebar group where applicable.

## Validation

- Run format, i18n, lint, and web typecheck.
18 changes: 18 additions & 0 deletions docs/features/settings-agent-capability-groups/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Settings Agent Capability Groups

## User Story

As a settings user, I want model, agent, and directory environment settings grouped together as Agent settings, so related configuration lives in one place.

## Acceptance Criteria

- The sidebar group previously named Models is labeled Agent Settings.
- Provider settings, DeepChat Agent, ACP Agent, and Directory Environment appear in the Agent Settings group.
- The sidebar group previously named Tools & Agents is labeled Capability Extensions.
- MCP Settings, Hooks, and Plugins remain in the Capability Extensions group.
- Existing route paths and page behavior remain unchanged.

## Non-goals

- No changes to provider, agent, MCP, hooks, plugin, or environment runtime behavior.
- No changes to route names or persisted settings.
7 changes: 7 additions & 0 deletions docs/features/settings-agent-capability-groups/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Tasks

- [x] Add SDD artifacts.
- [x] Move Directory Environment and Agent pages into the Agent Settings group.
- [x] Rename Models and Tools & Agents group labels.
- [x] Align affected page eyebrow labels.
- [x] Run validation commands.
27 changes: 27 additions & 0 deletions docs/features/settings-control-center/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Settings Control Center Plan

## Layout

- Add grouped settings navigation metadata and a grouped sidebar.
- Add a shared page shell for consistent headers, descriptions, actions, and scroll behavior.
- Add `/overview` and hide `/dashboard` from navigation while preserving route compatibility.

## Pages

- Build `SettingsOverview` with passive status cards, quick tasks, needs attention, recent activity, and embedded usage dashboard.
Comment thread
zerob13 marked this conversation as resolved.
- Refactor Provider into list plus detail tabs: Connection, Models, Advanced.
- Refactor MCP into status cards, filters, server cards, and a right-side Sheet detail.
- Refactor Data into Backup & Sync, Privacy Mode, Data Operations, and Danger Zone.
- Wrap remaining tabs with the new shell without changing their core behavior.

## Data

- Add `settings_activity` SQLite table with a 2000-record retention cap.
- Add a typed list route returning at most 200 records.
- Record key successful mutations from provider, model, MCP, sync, and settings update routes.

## QA

- Update unit tests and e2e settings smoke tests.
- Run format, i18n, lint, typecheck, focused tests, and settings e2e.
- Start the app and capture settings screenshots before stopping the dev app.
47 changes: 47 additions & 0 deletions docs/features/settings-control-center/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# Settings Control Center

## Goal

Refactor the settings window from a flat configuration list into a system control center.

## Requirements

- Add a default Settings Overview route that merges the old usage Dashboard.
- Refactor every settings tab into the new grouped settings layout.
- Keep Health Check out of this iteration.
- Use existing shadcn-vue components and semantic tokens.
- Support light/dark themes, RTL, i18n, minimum window width, and responsive content.
- Add a durable settings activity table that keeps the newest 2000 records and shows at most 200.
- Preserve existing settings behavior, deeplinks, and e2e navigation.

## UX

```text
┌──────────────────────────────────────────────────────────────┐
│ Settings │
├───────────────┬──────────────────────────────────────────────┤
│ Overview │ Settings Overview │
│ Setup │ Search settings, providers, MCP... │
│ General │ │
│ Display │ Providers | MCP | Knowledge | Data │
│ Environment │ │
│ Shortcuts │ Quick Tasks Needs Attention │
│ Models │ Recent Changes Usage Dashboard │
│ Providers │ │
│ Tools │ │
│ MCP │ │
│ Agents │ │
│ Knowledge │ │
│ System │ │
└───────────────┴──────────────────────────────────────────────┘
```

## Acceptance

- `/overview` is the default settings route.
- `/dashboard` still works but is no longer shown in the sidebar.
- Overview shows system status, quick tasks, recent activity, and usage dashboard.
- Provider, MCP, and Data pages use the new control-center interaction model.
- Other tabs use the grouped shell and remain functional.
- `settings_activity` never stores secret values.
- Automated tests, linting, typecheck, i18n checks, e2e, and screenshots pass before completion.
13 changes: 13 additions & 0 deletions docs/features/settings-control-center/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Settings Control Center Tasks

- [ ] Add navigation metadata, overview route, and dashboard compatibility route.
- [ ] Add settings activity table, route contract, client method, and mutation recording.
- [ ] Build shared settings shell components.
- [ ] Implement Settings Overview.
- [ ] Refactor Provider Center.
- [ ] Refactor MCP Center.
- [ ] Refactor Data & Privacy.
- [ ] Wrap remaining settings tabs in the new shell.
- [ ] Add i18n keys for all locales.
- [ ] Update unit tests and e2e tests.
- [ ] Run checks, start app, capture screenshots, and stop app.
11 changes: 11 additions & 0 deletions docs/features/settings-overview-agent-card/plan.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Implementation Plan

## Change

- Replace the knowledge metric card in `SettingsOverview.vue` with a DeepChat Agents metric.
- Load agents through the existing agent store and count enabled DeepChat agents.
- Update locale strings for the new metric and overview description.

## Validation

- Run format, i18n, lint, and web typecheck.
17 changes: 17 additions & 0 deletions docs/features/settings-overview-agent-card/spec.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Settings Overview Agent Card

## User Story

As a settings user, I want the overview metrics to show enabled DeepChat Agents instead of knowledge sources, so the summary focuses on higher-signal setup status.

## Acceptance Criteria

- The third overview metric card is labeled DeepChat Agents.
- The card shows how many DeepChat agents are enabled.
- Clicking the card opens the DeepChat Agent settings page.
- The overview copy no longer describes the removed knowledge metric.

## Non-goals

- No changes to agent creation, editing, or enablement behavior.
- No changes to the context engineering sidebar group or knowledge base pages.
6 changes: 6 additions & 0 deletions docs/features/settings-overview-agent-card/tasks.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Tasks

- [x] Add SDD artifacts.
- [x] Replace the knowledge metric with a DeepChat Agents metric.
- [x] Update overview copy and locale strings.
- [x] Run validation commands.
Loading