From 1b89d7a387e7b3c7c63f972160c166576344829b Mon Sep 17 00:00:00 2001 From: Devvyn <22340871+opticon454@users.noreply.github.com> Date: Fri, 2 Oct 2026 22:35:05 +0800 Subject: [PATCH] docs(doctor): api-reference and changeset Co-Authored-By: Claude Sonnet 5.5 --- .changeset/doctor-in-settings.md | 5 +++++ docs/api-reference.md | 4 ++++ 2 files changed, 9 insertions(+) create mode 100644 .changeset/doctor-in-settings.md diff --git a/.changeset/doctor-in-settings.md b/.changeset/doctor-in-settings.md new file mode 100644 index 00000000..b58e4bf8 --- /dev/null +++ b/.changeset/doctor-in-settings.md @@ -0,0 +1,5 @@ +--- +"aicodeman": minor +--- + +Settings → System → Diagnostics runs `codeman doctor` on the server (`GET /api/doctor`) and lists which agent CLIs, tmux, Node and the optional office tools are installed, their versions, paths and install hints. The probe runs in a child process so a slow `--version` can never freeze the server; admin only in multi-user mode. diff --git a/docs/api-reference.md b/docs/api-reference.md index 7b534ddc..13d31aa2 100644 --- a/docs/api-reference.md +++ b/docs/api-reference.md @@ -748,6 +748,10 @@ Posts the Web Push events to ntfy, Slack, Discord or a generic JSON URL (Setting Delivery goes through the same egress guard as web tabs (refused on the resolved address too), does not follow redirects, times out after 5 s, sends the same event for the same session at most once per 3 s, and has at most 5 requests in flight. Error text never contains the URL. +## Diagnostics + +`GET /api/doctor[?category=core|office|other]` returns the `codeman doctor --json` report (`platform`, `summary`, `tools[]` with `status` `ok` \| `missing` \| `outdated` \| `skipped` \| `error`, `version`, `path`, `installHint`). The probe engine is synchronous, so it runs in a child process of the same entry script, never on the server's event loop (30 s timeout). It names install paths and versions, so it is admin only in multi-user mode (`403`). `400` for an unknown category, `500` if the child produces no report. + ## Voice dictation Browser dictation transcribed through this server's Claude Code login, i.e. the