Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
73f77b4
feat: add unified editor mode state
pallyoung May 20, 2026
013797f
fix: complete unified editor diff behavior
pallyoung May 20, 2026
be74784
fix: complete unified editor diff behavior
pallyoung May 20, 2026
1e78739
feat: unify editor preview edit and diff modes
pallyoung May 20, 2026
09d46a6
chore: remove unused editor surface state
pallyoung May 20, 2026
e62e279
Add GitHub wiki publish script entry point
pallyoung May 21, 2026
d5cb20d
feat: improve wiki publish workflow
pallyoung May 22, 2026
b582008
docs: add superpowers plans and specs
pallyoung May 22, 2026
75d6caa
docs: add in-app auto update design spec
pallyoung May 22, 2026
6ee9a6a
feat: show real session mini-map in workspace tabs
pallyoung May 22, 2026
41444d9
Merge branch 'feat/workspace-tab-real-session-indicator' into develop
pallyoung May 22, 2026
8730fa5
fix: resolve lsp document paths through workspace symlinks
pallyoung May 22, 2026
16760ff
feat: add in-app update flow and state dir migration
pallyoung May 22, 2026
09a707d
fix(web): keep mobile sheets below shared modal dialogs
pallyoung May 22, 2026
16a9fb9
feat(web): render workspace tab session layout as background
pallyoung May 22, 2026
2fa4bac
merge: bring in feat/in-app-auto-update
pallyoung May 22, 2026
0859ac7
merge: bring in feat/unified-editor-surface
pallyoung May 22, 2026
31fa961
docs: add footer update rail design
pallyoung May 22, 2026
ecf7b15
Fix code editor preview toolbar behavior
pallyoung May 22, 2026
9b69aca
feat(web): move update discovery into footer rail
pallyoung May 22, 2026
80d7d1a
Refine workspace session mini-map
pallyoung May 22, 2026
7ec9b06
Merge branch 'feat/footer-update-rail' into merge/footer-update-rail-…
pallyoung May 22, 2026
28f979d
test(web): sync footer update rail style assertions
pallyoung May 22, 2026
045e0af
Fix settings nav icon alignment
pallyoung May 22, 2026
e0d512f
Refine settings about controls
pallyoung May 22, 2026
0dfc079
feat(ui-preview): add footer update confirm preview
pallyoung May 22, 2026
1d61499
docs: add markdown html preview design
pallyoung May 22, 2026
fa7f026
fix: refine mobile workspace footer layout
pallyoung May 23, 2026
b5e5f65
fix: restore ci pipeline
pallyoung May 23, 2026
ece0f08
Fix server build verification in CI
pallyoung May 23, 2026
7a9ae25
Add patch changeset for CI repair
pallyoung May 23, 2026
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
6 changes: 6 additions & 0 deletions .changeset/khaki-rivers-smile.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@spencer-kit/coder-studio": patch
---

Release the CI pipeline repair by removing unused server symbols that broke the
Windows package build and by adding the standalone server build to `ci:build`.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ The same workspace URL works across all devices — interface adapts automatical
| [Common Workflows](docs/help/workflows.md) | Task-based tutorials |
| [Troubleshooting](docs/help/troubleshooting.md) | FAQ and known issues |
| [CLI Reference](docs/help/cli.md) | Command-line options |
| [GitHub Wiki Source](docs/wiki/README.md) | Wiki pages for product positioning, security, and workflows |
| [GitHub Wiki Source](docs/wiki/README.md) | Wiki source pages and publish flow |
| [AI Coding Terms](docs/wiki/AI-Coding-Terms.md) | Vibe coding, agentic harnesses, eval harnesses, and where Coder Studio fits |

---
Expand Down
2 changes: 1 addition & 1 deletion README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ coder-studio open
| [常用工作流](docs/help/workflows.md) | 任务式教程 |
| [故障排除](docs/help/troubleshooting.md) | 常见问题和修复 |
| [CLI 参考](docs/help/cli.md) | 命令行选项 |
| [GitHub Wiki 源文件](docs/wiki/README.md) | 产品定位、安全说明和工作流 Wiki 页面 |
| [GitHub Wiki 源文件](docs/wiki/README.md) | Wiki 源页面与发布流程 |
| [AI Coding 术语](docs/wiki/AI-Coding-Terms.md) | Vibe coding、agentic harness、eval harness,以及 Coder Studio 的定位 |

---
Expand Down
2 changes: 1 addition & 1 deletion docs/help/cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ coder-studio config
# 修改配置
coder-studio config --host 0.0.0.0
coder-studio config --port 8080
coder-studio config --data-dir /path/to/data
coder-studio config --state-dir /path/to/data
coder-studio config --password mypassword
```

Expand Down
19 changes: 13 additions & 6 deletions docs/help/desktop-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,14 +98,21 @@

高级设置键 `git.autofetchPeriodSec` 控制活动工作区的周期性远程 fetch,默认值是 `180` 秒;设为 `0` 会关闭周期性 fetch,但不会影响打开工作区时的自动 fetch,也不会影响手动点击 **Fetch**。

当前设置页还没有这个高级键的图形化入口。如需手动调整,可以直接写入本地运行时数据库的 `user_settings` 表。默认数据库通常位于 `~/.coder-studio/data/coder-studio.db`;如果你通过 `coder-studio config --data-dir ...` 改过数据目录,请使用你自己的数据库路径
当前设置页还没有这个高级键的图形化入口。如需手动调整,可以直接编辑本地状态目录里的 `settings.json`。默认路径通常是 `~/.coder-studio/data/state/settings.json`;如果你通过 `coder-studio config --state-dir ...` 改过状态目录,请使用你自己的路径

```bash
sqlite3 ~/.coder-studio/data/coder-studio.db "
INSERT INTO user_settings (key, value)
VALUES ('git.autofetchPeriodSec', '60')
ON CONFLICT(key) DO UPDATE SET value = excluded.value;
"
node -e '
const fs = require("node:fs");
const path = require("node:path");
const file = path.join(process.env.HOME, ".coder-studio", "data", "state", "settings.json");
const doc = fs.existsSync(file)
? JSON.parse(fs.readFileSync(file, "utf8"))
: { version: 1, settings: {} };
doc.version = 1;
doc.settings = { ...(doc.settings || {}), "git.autofetchPeriodSec": 60 };
fs.mkdirSync(path.dirname(file), { recursive: true });
fs.writeFileSync(file, JSON.stringify(doc, null, 2) + "\n");
'
```

### 查看变更内容
Expand Down
4 changes: 2 additions & 2 deletions docs/help/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,8 @@
### 配置文件

- CLI 配置:`~/.coder-studio/config.json`
- 数据目录:`~/.coder-studio/`(含 SQLite 数据库)
- 可以通过 `coder-studio config --data-dir /new/path` 修改数据目录
- 状态目录:`~/.coder-studio/data/`
- 可以通过 `coder-studio config --state-dir /new/path` 修改状态目录

## 提交问题前建议提供哪些信息

Expand Down
5 changes: 2 additions & 3 deletions docs/runtime-structure.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Runtime Directory Structure

Coder Studio uses a runtime directory for storing runtime configuration and local data.
Coder Studio uses a runtime directory for storing runtime configuration and local state.

## Default Location

Expand All @@ -13,8 +13,7 @@ Coder Studio uses a runtime directory for storing runtime configuration and loca
```
~/.coder-studio/
├── runtime.json # Runtime configuration (port, token)
├── data/ # SQLite database and user data
│ └── coder-studio.db # Main database
├── data/ # Persistent state JSON files and local app state
└── logs/ # Server logs (Phase 2+)
```

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1173,7 +1173,7 @@ test.describe('workspace route history', () => {
sandboxDir = mkdtempSync(join(tmpdir(), 'coder-studio-workspace-history-'));
firstWorkspaceDir = join(sandboxDir, 'history-first');
secondWorkspaceDir = join(sandboxDir, 'history-second');
dbPath = join(sandboxDir, 'coder-studio.db');
dbPath = join(sandboxDir, 'legacy-state.sqlite');
runtimeDir = join(sandboxDir, 'runtime');

mkdirSync(join(firstWorkspaceDir, '.git'), { recursive: true });
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,7 @@ git commit -m "feat: add supervisor schema v2 upgrade"
```ts
it("prompts to delete and rebuild when foreground startup sees an incompatible schema", async () => {
startServer.mockRejectedValueOnce(
new Error('{"code":"db_incompatible_schema","dbPath":"/tmp/coder-studio.db","message":"schema mismatch"}')
new Error('{"code":"db_incompatible_schema","dbPath":"/tmp/legacy-state.sqlite","message":"schema mismatch"}')
);
confirmYesNo.mockResolvedValue(true);

Expand Down
Loading
Loading