Skip to content

chore: prepare the VS Code extension and desktop releases - #147

Merged
elkaix merged 2 commits into
mainfrom
chore/vscode-extension-release
Aug 22, 2026
Merged

chore: prepare the VS Code extension and desktop releases#147
elkaix merged 2 commits into
mainfrom
chore/vscode-extension-release

Conversation

@elkaix

@elkaixelkaix commented Aug 22, 2026

Copy link
Copy Markdown
Member

Related Issue

No issue — release chore, follow-up to #145.

Problem

Two of the three artifacts this release should ship cannot reach users, and neither
failure is visible in CI.

VS Code extension. All 43 pending changesets name only @pymodel/pythinker-code.
The extension depends on @pymodel/pythinker-code-sdk, so changeset version leaves
apps/vscode at 0.9.4. The release workflow's publish-vscode-extension job still runs
(it is gated on packages_published), but vsix-publish.mjs skips a version already in
the registry — the job goes green having published nothing, and the sign-in fixes from
#145 stay unreleased.

Desktop.desktop-log-token-redaction describes a change to
apps/desktop/src/host-supervisor.ts but is targeted at @pymodel/pythinker-code. It
would print in the CLI changelog, where it is not true, and leave
@pymodel/pythinker-desktop unbumped — so a desktop-v* tag would ship a version whose
changelog never mentions the fix.

Verified by running changeset version locally against the current .changeset/
contents, before and after this change.

What changed

Two changesets bumping pythinker to 0.9.5, one per user-facing fix already merged in
#145:

  • API-key-only providers no longer land on a sign-in screen they cannot satisfy
    (resolveInitStatus treats a configured model as ready).
  • The "no model configured" state keeps a route back to sign-in
    (resolveAppView sets canGoToLogin).

And desktop-log-token-redaction retargeted to @pymodel/pythinker-desktop, which is
where the code it describes lives.

Resulting versions:

PackageBeforeAfter
@pymodel/pythinker-code0.39.20.40.0
pythinker (VS Code)0.9.40.9.5
@pymodel/pythinker-desktop0.1.50.1.6

No source changes; every fix and its tests are already on main.

Checklist

  • I have read the CONTRIBUTING document.
  • I have linked a related issue (external PRs: the issue must have a maintainer's /approve).
  • I have added tests that prove my feature works. — covered by apps/vscode/test/app-init.test.ts and apps/desktop/tests/host-supervisor.spec.ts in feat: workspace file editor, VS Code API-key fix, and English-only docs #145.
  • Ran gen-changesets skill, or this PR needs no changeset.
  • Ran gen-docs skill, or this PR needs no doc update.

Summary by CodeRabbit

  • Bug Fixes
    • Prevented unnecessary VS Code sign-in prompts when an API key is already configured.
    • Preserved navigation back to the sign-in screen when no model has been configured.
    • Stopped the desktop app from recording server access tokens in logs, improving security and privacy.
    • Updated release information to accurately reflect these fixes across the relevant applications.

@coderabbitai

coderabbitaiBot commented Aug 22, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 53f869b0-9670-4225-bfcf-82bf7207a0dd

📥 Commits

Reviewing files that changed from the base of the PR and between 49f7ea1 and 252edf6.

📒 Files selected for processing (1)
  • .changeset/desktop-log-token-redaction.md

Included review availability: Your plan provides up to 10 included reviews per hour; 8 remain after this review.


📝 Walkthrough

Walkthrough

Added patch Changesets for two VS Code sign-in fixes and one desktop token-log redaction fix. The desktop Changeset now targets @pymodel/pythinker-desktop.

Changes

Release metadata

Layer / File(s)Summary
VS Code and desktop fix changesets
.changeset/vscode-api-key-ready.md, .changeset/vscode-model-setup-signin.md, .changeset/desktop-log-token-redaction.md
Added patch release notes for VS Code sign-in behavior and desktop token-log redaction. Corrected the desktop package target.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Merge Risk:⚪ Minimal · up to 252ed

This PR only updates release metadata for already-merged fixes, and no actionable merge-blocking risk remains beyond normal checks and review.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.)
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Title check✅ PassedThe title uses the required chore prefix, stays within 72 characters, uses imperative mood, and accurately describes the release preparation changes.
Description check✅ PassedThe description includes all required sections and clearly explains the release issue, changeset updates, version results, testing, and checklist status.

Comment @coderabbitai help to get the list of available commands.

@elkaixelkaix changed the title chore(vscode): release the extension sign-in fixeschore: prepare the VS Code extension and desktop releasesAug 22, 2026
@pkg-pr-new

pkg-pr-newBot commented Aug 22, 2026

Copy link
Copy Markdown
pnpm dlx https://pkg.pr.new/@pymodel/pythinker-code@252edf6
npx https://pkg.pr.new/@pymodel/pythinker-code@252edf6

commit: 252edf6

@elkaix
elkaix enabled auto-merge (squash) August 22, 2026 21:21
@elkaix
elkaix merged commit dde6152 into mainAug 22, 2026
19 checks passed
@elkaix
elkaix deleted the chore/vscode-extension-release branch August 22, 2026 21:24
@pythinker-release-botpythinker-release-botBot mentioned this pull request Aug 22, 2026
elkaix added a commit that referenced this pull request Aug 22, 2026
## Related Issue
No issue — release chore, follow-up to #145 and #147. Addresses both
CodeRabbit findings on the version PR #146.
## Problem
**Wrong release classification.** `remove-managed-kimi-endpoints` is
declared `minor`, but the
change it describes removes hosted self-update checks, the default
plugin marketplace catalog,
official plugin badges, the tips banner, and sign-up links. Existing
installs lose behaviour they
have today, which is a breaking change and warrants a `major` release.
The maintainer confirmed
the `major` bump, as `AGENTS.md` requires.
**Inconsistent spelling in a user-facing changelog.**
`subagent-execution-inspector` writes
"sub agent" while every other entry in the same release writes
"subagent".
## What changed
- `remove-managed-kimi-endpoints`: `minor` to `major`.
- `subagent-execution-inspector`: "sub agent" to "subagent".
Both corrections are made in the source changesets rather than in the
generated
`CHANGELOG.md`, because `changeset-release/main` is rebuilt from scratch
on every release run and
any edit to the generated file is discarded.
Resulting versions, verified with a local `changeset version` run
against the current
`.changeset/` contents:
| Package | Before | After |
| --- | --- | --- |
| `@pymodel/pythinker-code` | 0.39.2 | 1.0.0 |
| `pythinker` (VS Code) | 0.9.4 | 0.9.5 |
| `@pymodel/pythinker-desktop` | 0.1.5 | 0.1.6 |
No source changes.
## Checklist
- [x] I have read the
[CONTRIBUTING](https://github.com/PyModel/pythinker-code/blob/main/CONTRIBUTING.md)
document.
- [ ] I have linked a related issue (external PRs: the issue must have a
maintainer's `/approve`).
- [x] I have added tests that prove my feature works. — changeset
metadata only, no behaviour to test.
- [x] Ran `gen-changesets` skill, or this PR needs no changeset.
- [x] Ran `gen-docs` skill, or this PR needs no doc update.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Breaking Changes**
* Removed hosted self-update checks, the default plugin marketplace
catalog, official plugin badges, the tips banner, and sign-up links.
* Kimi remains available as a model provider through OAuth or an API
key.
* Plugin catalogs can still be enabled by configuring
`PYTHINKER_CODE_PLUGIN_MARKETPLACE_URL`.
* **Documentation**
* Updated activity card terminology from “sub agent” to “subagent.”
* Marked the release as a major version update.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
elkaix pushed a commit that referenced this pull request Aug 23, 2026
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.
# Releases
## @pymodel/pythinker-code@1.0.0
### Major Changes
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Remove the hosted
self-update checks, default plugin marketplace catalog, official plugin
badges, tips banner, and sign-up links; Kimi now serves only as a model
provider through OAuth or an API key. Set
PYTHINKER_CODE_PLUGIN_MARKETPLACE_URL to keep using a plugin catalog.
### Minor Changes
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Add `POST
/api/v1/sessions/{id}/fs:write` so API clients can save workspace files;
passing `base_etag` fails with `40928` instead of overwriting a
concurrent change.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Rename the mcp.json stdio
`executor` value `kaos` to `pyaos`. Existing configs using `"executor":
"kaos"` keep working as a deprecated alias.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Add optional forked
conversation context to subagent and Dynamic Workflow tool runs.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Add web UI session
management: pin sessions with drag reorder, set a session emoji, mark
sessions done and reopen them with undo, switch the sidebar between flat
and grouped views, see recent sessions on the workspace home, and manage
all sessions in bulk from a filterable Session Management table.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Move web UI provider
management into a Settings tab with an add-provider flow and
per-provider model list, add a version and diagnostics section, and
support multiple terminal tabs per session.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Redesign the web UI
transcript: the app-wide font changes, user messages render @-mentioned
files as clickable pills, each tool call gets its own card (run, read,
search, find, fetch, todo, plan, goal), a settled turn folds its working
steps behind a "Worked …" summary with a per-turn file-change panel,
long user messages collapse, and Ctrl/Cmd+F searches the conversation
with highlighted matches. Transcript images and videos open in a
fullscreen viewer.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Redesign the web UI chat
dock and composer: running work now collapses into pill buttons above
the composer (goal, plan, bash, sub-agents, progress) that expand into
pop-over panels, and the composer gains an add menu, a permission
selector, a context-usage ring, and a model picker with starred models
and thinking effort.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Open and edit
workspace files in the browser, with a save that refuses to overwrite a
change made elsewhere since you opened the file.
### Patch Changes
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix sessions failing to
archive when their workspace folder no longer exists.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Add the Tencent CloudBase
plugin to the curated marketplace.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix every turn failing
with a bare 400 error on models signed in through Codex.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Stop offering the ultra
reasoning effort on Codex models, which rejected it.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Fix composer toolbar
buttons squeezing and overlapping each other in very narrow windows.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Make the chat "Continue"
button resume a failed turn with a fixed continue prompt instead of
resending your last message.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Keep the previous turn's
final answer visible in the terminal when a scheduled turn finishes.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Documentation is now
English-only; the separate Chinese docs tree and its link have been
removed.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Fix long question
text in question cards being truncated with an ellipsis instead of
wrapping.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix completed subagents
remaining marked as running in the web interface.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix session warning
severity, collapsed thinking hints, narrow welcome model details, and
custom theme token guidance.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix saving a file larger
than 1 MB failing in the web UI.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Improve mobile UI
styling.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Collapse the
composer model picker to an icon when space is tight; hovering still
shows the model and reasoning effort.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Refresh model lists for
providers imported from the models.dev catalog so newly released models
appear automatically.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Fix the composer
permission mode label being hidden even when there is enough space.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Refresh the web UI
bundled with the CLI, including the neutral grey dark theme.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Refresh the CLI terminal
interface with a branded welcome panel, animated robot mark, Braille
activity indicators, shimmered thinking states, clearer session-mode
styling, and reliable headless output flushing.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Remove a session
from the sidebar when it is archived from another client or the CLI,
instead of leaving it in the open list until reload.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Show the backend name in
Settings without a version prefix.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix subagent cards in the
web session view staying Running after they finish.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Allow subagent activity
cards to open their live execution transcript.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Show friendly model names
and thinking-effort labels on subagent task cards instead of raw model
ids.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Restyle background
task notifications as a lighter notice that shows the task summary,
output files, and output preview directly.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix the VS Code extension
opening on the sign-in screen for providers authenticated with a plain
API key: a configured model now opens straight into the chat.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix VS Code extension
regressions: fork from a turn now forks at that turn instead of copying
the whole session, resumed sessions replay subagent and dynamic-workflow
transcripts again, shell and plugin command inputs show up in resumed
history, project-level MCP servers appear in the management view,
OAuth-only sign-ins are recognized as logged in, and selecting a model's
highest thinking effort stays session-only instead of becoming the
global default.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix the VS Code model
list briefly reverting after adding or removing a provider.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Stop a finished thinking
step animating in the activity header for the rest of the run.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix reloading a file in
the workspace editor showing the old contents.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix the workspace
editor's Save button staying disabled after a reload, and saving to the
wrong session after switching sessions.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix the workspace file
editor failing to open.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - web: Remove `/auto`,
`/yolo` and `/thinking` from the slash menu, and label the session menu
timestamp as "Last updated".
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Fix file tools and shell
working directories failing to resolve Git Bash paths such as /c/Users
or /tmp on Windows.
## @pymodel/pythinker-desktop@0.1.6
### Patch Changes
- [#149](#149)
[`45d1c0a`](45d1c0a)
Thanks [@elkaix](https://github.com/elkaix)! - Stop a second, unnamed
Pythinker icon appearing in the macOS Dock while the app runs.
- [#145](#145)
[`a0c2705`](a0c2705)
Thanks [@elkaix](https://github.com/elkaix)! - Stop the desktop app
writing its server access token to the log.
## pythinker@0.9.5
### Patch Changes
- [#147](#147)
[`dde6152`](dde6152)
Thanks [@elkaix](https://github.com/elkaix)! - Fix the VS Code extension
asking you to sign in when a provider is already configured with an API
key.
- [#147](#147)
[`dde6152`](dde6152)
Thanks [@elkaix](https://github.com/elkaix)! - Keep a way back to the
sign-in screen when the VS Code extension reports that no model is
configured.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added workspace file saving with conflict protection.
* Redesigned web transcripts with conversation search, tool cards, file
previews, and fullscreen media.
* Improved mobile layouts and responsive model selection.
* Sessions archived remotely now disappear from the sidebar
automatically.
* **Bug Fixes**
* Prevented server tokens from appearing in desktop logs.
* Fixed stuck subagent statuses and Windows Git Bash path handling.
* Updated API-key sign-in behavior in the VS Code extension.
* **Release Updates**
* Published desktop 0.1.6, VS Code 0.9.5, and Code 1.0.0.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@elkaix