Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
98 commits
Select commit Hold shift + click to select a range
4c43935
fix: show Windows session search shortcut (#1393)
justjavac Jul 6, 2026
ce41f4b
fix(web): keep Sidebar single-root so collapse hides it (#1406)
wbxl2000 Jul 6, 2026
b9258ee
feat(tui): show compaction summary with Ctrl-O (#1346)
liruifengv Jul 6, 2026
1c817df
fix(tui): include surrounding context in edit approval preview (#1410)
liruifengv Jul 6, 2026
e6e6dd5
fix(web): stop replaying the bubble entrance animation on session ope…
wbxl2000 Jul 6, 2026
fc259ab
fix(tui): complete @ file mentions across additional workspace roots …
liruifengv Jul 6, 2026
353c088
chore: remove unused kimi-migration-legacy package (#1415)
liruifengv Jul 6, 2026
913d042
fix(tui): keep input anchored after slash command menu closes (#1413)
liruifengv Jul 6, 2026
8c7e6da
chore(changelog): enable thanks credit in changelog (#1418)
liruifengv Jul 6, 2026
79b360c
feat(thinking): enable Preserved Thinking by default for kimi models …
RealKai42 Jul 6, 2026
f0896a5
feat(agent-core): progressive tool disclosure via select_tools (#1369)
starquakee Jul 6, 2026
f7b5577
chore: symlink CLAUDE.md to AGENTS.md for compatibility (#1420)
RealKai42 Jul 6, 2026
c12f309
feat(agent-core): feed AskUserQuestion answers back as question text …
RealKai42 Jul 6, 2026
5ea3ec4
fix(tui): stabilize Bash card height and distinguish command from out…
liruifengv Jul 6, 2026
1de0286
fix(tui): keep Edit preview height stable as results land (#1421)
liruifengv Jul 6, 2026
e95fc83
fix: honor web font size setting (#1394)
justjavac Jul 6, 2026
fa6d198
fix(kimi-web): fix input caret and todo strikethrough (#1423)
liruifengv Jul 6, 2026
6c0ce09
feat(server): support restoring and listing archived sessions (#1073)
sailist Jul 6, 2026
dd90775
chore(agent-core): classify turn_interrupted telemetry cause (#1431)
7Sageer Jul 6, 2026
4aacddc
fix(kimi-web): clarify desktop notification title and icon (#1434)
wbxl2000 Jul 6, 2026
578f7d3
fix(web): reconcile session from snapshot on reopen (#1409)
wbxl2000 Jul 6, 2026
10922fc
feat(telemetry): add system metrics collection (#1435)
7Sageer Jul 6, 2026
a5fbcb7
fix(kimi-web): keep composer toolbar usable on narrow windows (#1436)
wbxl2000 Jul 6, 2026
c5e3e80
feat(web): render AgentSwarm as an inline tool card (#1425)
wbxl2000 Jul 6, 2026
0824e7b
chore: ignore and remove throwaway scratch files (#1439)
wbxl2000 Jul 6, 2026
d86fa38
fix(kimi-web): disable text hyphenation and code ligatures (#1438)
wbxl2000 Jul 6, 2026
ac5b5e4
fix(kimi-web): keep tool components from jumping on expand or collaps…
liruifengv Jul 6, 2026
2374bc4
feat(kimi-web): render cron fire notices in the web chat (#1426)
liruifengv Jul 6, 2026
903e8ed
fix(web): clarify archive session confirmation copy (#1428)
wbxl2000 Jul 6, 2026
c4c2fef
chore(skills): merge similar changelog entries and credit external co…
wbxl2000 Jul 6, 2026
379bc57
ci: release packages (#1378)
github-actions[bot] Jul 6, 2026
25a655c
feat(agent-core): enable Preserved Thinking by default on the Anthrop…
RealKai42 Jul 6, 2026
4aeb336
docs(changelog): sync 0.23.0 from apps/kimi-code/CHANGELOG.md (#1446)
wbxl2000 Jul 6, 2026
743f66e
refactor: move tool-result metadata into a structured note side chann…
RealKai42 Jul 7, 2026
7a65e0d
feat(tui): update permission mode copy and reorder /auto /yolo (#1450)
liruifengv Jul 7, 2026
244ec07
fix(agent-core): remove print-mode subagent drain deadline (#1452)
sailist Jul 7, 2026
6916240
docs(changelog): remove contributor thanks credit from docs and updat…
liruifengv Jul 7, 2026
260a807
fix(cli): respect --skills-dir in interactive mode (#1457)
liruifengv Jul 7, 2026
166e404
chore: downgrade #1432 changeset to patch (#1453)
wbxl2000 Jul 7, 2026
8d58d6a
chore(dev): open monorepo root when running make dev (#1458)
liruifengv Jul 7, 2026
9b18dc4
fix(kimi-web): shrink collapsed thinking block on mobile (#1461)
wbxl2000 Jul 7, 2026
65d3017
feat(agent-core): record llm request trace in wire.jsonl (#1448)
RealKai42 Jul 7, 2026
809a88c
fix(web): run new-session slash actions (skills, /goal, /btw) from th…
wbxl2000 Jul 7, 2026
16dc940
fix(web): recover from stale background websocket (#1451)
wbxl2000 Jul 7, 2026
928726a
chore: correct wire-request-trace changeset (#1464)
wbxl2000 Jul 7, 2026
03e78ae
fix(kosong): fall back to nearest lower catalogued minor for max toke…
chengluyu Jul 7, 2026
bfdbce5
feat(kosong): honor explicit anthropic max output override (#1465)
liruifengv Jul 7, 2026
e9ef939
fix(agent-core): harden goal-mode budget and outcome flow (#1456)
chengluyu Jul 7, 2026
08b3c3f
ci: release packages (#1444)
github-actions[bot] Jul 7, 2026
063bce2
fix(agent-core): hide console window when running hooks on Windows (#…
liruifengv Jul 7, 2026
2a44ae0
chore: update 0.23.1 changelog (#1469)
wbxl2000 Jul 7, 2026
ee38545
refactor(web): migrate icons to unplugin-icons (#1467)
liruifengv Jul 7, 2026
ebd25a4
chore(telemetry): sample system metrics every 5 minutes (#1472)
7Sageer Jul 7, 2026
d1a964f
fix: forbid model-driven goal pauses (#1476)
chengluyu Jul 7, 2026
2065ae4
fix(telemetry): gate unsafe numeric telemetry values (#1478)
7Sageer Jul 7, 2026
11c6a37
fix(web): dismiss stale connection error toast after ws reconnect (#1…
wbxl2000 Jul 7, 2026
474ce28
fix(agent-core): report EXIF-rotated image dimensions and raise edge …
RealKai42 Jul 7, 2026
150206a
fix: count goal creation turn (#1477)
chengluyu Jul 7, 2026
6c9abe8
feat(kosong): support structured response formats (#1397)
kermanx Jul 7, 2026
1317000
fix: clarify goal blocked audit guidance (#1481)
chengluyu Jul 7, 2026
9b76e5b
feat(agent-core): discard loaded tool schemas on compaction (#1471)
starquakee Jul 7, 2026
f30781b
fix(kimi-code): exit 1 when a headless (-p) turn fails (#1483)
wbxl2000 Jul 7, 2026
2206d21
feat(plugins): add Vercel plugin to marketplace (#1489)
wbxl2000 Jul 8, 2026
b30a45e
feat(web): support Enter key to confirm archive and other dialogs (#1…
wbxl2000 Jul 8, 2026
2ad0120
feat(web): redesign cron reminder as a message bubble (#1480)
liruifengv Jul 8, 2026
0cc9831
fix(web): composer model switch also updates global default model (#1…
wbxl2000 Jul 8, 2026
b0809dd
feat(web): prefix skill slash commands with skill: to distinguish the…
wbxl2000 Jul 8, 2026
67b2147
ci: release packages (#1468)
github-actions[bot] Jul 8, 2026
2394d01
docs(changelog): sync 0.23.2 from apps/kimi-code/CHANGELOG.md (#1496)
wbxl2000 Jul 8, 2026
e83511a
fix: surface provider auth error for unavailable models (#1506)
7Sageer Jul 8, 2026
93c0b7b
ci: release packages (#1507)
github-actions[bot] Jul 8, 2026
b89fc1a
docs(changelog): sync 0.23.3 and shorten OAuth error entry (#1509)
liruifengv Jul 8, 2026
735922c
feat(kimi-web): add status-aware browser notifications (#1479)
liruifengv Jul 9, 2026
ad30a1c
style(web): polish web UI typography and controls (#1502)
chengluyu Jul 9, 2026
9fb1915
fix: keep prompt goals running until terminal (#1516)
chengluyu Jul 9, 2026
173bdfd
fix: resume sessions with missing workdir (#1517)
chengluyu Jul 9, 2026
fe9479d
fix: rewrite repeated tool call reminders to redirect instead of proh…
RealKai42 Jul 9, 2026
b91099e
feat: display Extra Usage fuel pack balance in /usage and /status (#1…
liruifengv Jul 9, 2026
1bf2c9a
feat: keep image-heavy sessions within provider request-size limits (…
RealKai42 Jul 9, 2026
170ae44
style(web): polish the session sidebar (#1519)
liruifengv Jul 9, 2026
a354803
feat(tui): add Kimi WebBridge install entry to /plugins panel (#1494)
wbxl2000 Jul 9, 2026
046b6c4
fix(agent-core): scope [image] config limits to the owning core (#1521)
RealKai42 Jul 9, 2026
ec8dc34
fix(web): stop sending prompts into a busy turn on the web UI (#1522)
wbxl2000 Jul 9, 2026
9f9324c
ci: release packages (#1513)
github-actions[bot] Jul 9, 2026
7ce3c2d
fix(ci): pin npm to 11.x in release workflow (#1526)
wbxl2000 Jul 9, 2026
5a90d9d
chore(agents): place Polish before Bug Fixes in changelog sections (#…
wbxl2000 Jul 9, 2026
0ad5684
docs(changelog): sync 0.23.4 from apps/kimi-code/CHANGELOG.md (#1528)
wbxl2000 Jul 9, 2026
9f66ec4
feat: harden LLM API fault tolerance against 429 and overload (#1530)
sailist Jul 10, 2026
04041eb
fix(web): hide injected system asides in user message bubbles (#1535)
wbxl2000 Jul 10, 2026
db61c9e
fix: refuse unsupported image formats instead of poisoning sessions (…
RealKai42 Jul 10, 2026
f80b2ea
fix(kimi-web): single-source session status to stop duplicate turn-en…
wbxl2000 Jul 10, 2026
352a449
ci: release packages (#1533)
github-actions[bot] Jul 10, 2026
7bd29ab
refactor(kosong): rename select_tools capability to dynamically_loade…
starquakee Jul 10, 2026
c2f27b2
docs(changelog): sync 0.23.5 from apps/kimi-code/CHANGELOG.md (#1545)
wbxl2000 Jul 10, 2026
19c5aa6
fix: update the WebBridge install link in the /plugins panel (#1547)
wbxl2000 Jul 10, 2026
f17a6ec
fix(agent-core): treat dismissed AskUserQuestion as no answer, not re…
wbxl2000 Jul 11, 2026
37bb4b8
fix(web): keep ReadMediaFile media rendering after session resume (#1…
wbxl2000 Jul 11, 2026
2f97917
feat(cli): keep kimi -p running while a goal is active or cron tasks …
sailist Jul 11, 2026
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
  •  
  •  
  •  
13 changes: 4 additions & 9 deletions .agents/skills/gen-changesets/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ Clarify session status typing for internal SDK callers.
`@moonshot-ai/kimi-web` is ignored by changesets and must **never** appear in a changeset frontmatter. Because the web app is bundled into the CLI release artifact, any web change that ships must list `@moonshot-ai/kimi-code` instead and describe the actual web-facing change in the text.

- Prefix the changelog entry text with `web: ` (for example `web: Fix the chat not scrolling to the bottom after sending a message.`) so the synced docs changelog can mark web UI entries. Apply this whenever the change is to the web project (`@moonshot-ai/kimi-web`).
- If a PR contains both web UI changes and server API changes, split them into separate changesets so each entry has a focused description.
- If a PR ships a web UI feature backed by server API changes that exist solely to power that feature, prefer a single `web:` entry describing what the web user gets. Do not add a separate server-API changeset unless the API has independent user value (a public endpoint that SDK or server consumers call directly). The docs changelog sync also deduplicates this pattern, but catching it here avoids duplicate changesets.
- Do not enumerate every micro-tweak; keep it to one sentence that captures what the web user gets.

Web-only fix:
Expand All @@ -161,7 +161,7 @@ Web-only fix:
web: Fix the chat not scrolling to the bottom after sending a message.
```

Web UI plus server APIs in the same PR (split into two changesets):
Web UI plus backing server APIs in the same PR (prefer a single `web:` entry; the API is plumbing):

```markdown
---
Expand All @@ -171,13 +171,7 @@ Web UI plus server APIs in the same PR (split into two changesets):
web: Add the server-hosted web UI, including chat layout and session list behaviors.
```

```markdown
---
"@moonshot-ai/kimi-code": minor
---

Add the server REST and WebSocket APIs that power the web UI.
```
Split into two changesets only when the API has independent user value on its own (for example, a public endpoint SDK consumers call directly). In that case add the web entry above plus a separate one such as `Add a public REST API to list archived sessions for SDK consumers.`

## `@moonshot-ai/pi-tui` changes

Expand Down Expand Up @@ -228,3 +222,4 @@ Fix the transcript jumping to the top when scrolling up through history during s
- The entry includes real internal identifiers instead of neutral placeholders.
- A change that only touches `@moonshot-ai/pi-tui` lists `@moonshot-ai/kimi-code` instead of `@moonshot-ai/pi-tui`, or mixes both packages in one frontmatter.
- A web app change entry is missing the `web: ` prefix.
- A server/API changeset exists only to back a web feature that a `web:` changeset already describes (use one `web:` entry instead, unless the API has independent user value).
7 changes: 4 additions & 3 deletions .agents/skills/pre-changelog/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,10 @@ If the CLI changelog is not in the diff (for example an SDK-only release), stop

Process the version block exactly as `sync-changelog` does for the docs site, but only in memory:

- **Strip** (`sync-changelog` step 3): drop the H1, the `### Patch Changes` / `### Minor Changes` / `### Major Changes` subheadings, PR links, and commit-hash links; keep only each entry's body text.
- **Classify** (`sync-changelog` step 4): bucket into Features / Bug Fixes / Polish / Refactors / Other; order within each section by reader value.
- **Translate** (`sync-changelog` step 6): translate entry bodies to Chinese; section headings become 新功能 / 修复 / 优化 / 重构 / 其他.
- **Strip** (`sync-changelog` step 3): drop the H1, the `### Patch Changes` / `### Minor Changes` / `### Major Changes` subheadings, PR links, and commit-hash links; keep only each entry's body text. The `Thanks [@user](...)!` credit (including the multi-author form) must be removed every time. Within each entry, drop SDK-only and provider-internal sentences (SDK capability mapping / API exposure, provider wire-format mechanics, internal XML markers) and keep only the user-facing effect and required constraints.
- **Merge and deduplicate** (`sync-changelog` step 4): merge micro-tweaks to the same surface into one higher-level entry; when three or more fixes target the same UI area or the same class of problem, merge them into one higher-level fix entry (do not merge broad or genuinely distinct fixes); and drop a server/API entry that only backs a web feature already listed.
- **Classify** (`sync-changelog` step 4): bucket into Features / Bug Fixes / Polish / Refactors / Other; order within each section by reader value (in Polish, user-visible improvements before protocol/internal adjustments).
- **Translate** (`sync-changelog` step 6): translate entry bodies to Chinese; keep one sentence per entry with a parallel rhythm within a section; section headings become 新功能 / 修复 / 优化 / 重构 / 其他.

If an upstream entry is not in English, flag it and stop (changeset entries must be English).

Expand Down
47 changes: 36 additions & 11 deletions .agents/skills/sync-changelog/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,26 +93,31 @@ Use upstream order: newest version first.
Upstream entries look like this:

```markdown
- [#317](https://github.com/...) [`2f51db4`](https://github.com/...) - Clean up lint warnings ...
- [#317](https://github.com/...) [`2f51db4`](https://github.com/...) Thanks [@user](https://github.com/...)! - Clean up lint warnings ...
```

Keep:
Changesets may add a `Thanks ...!` credit, but it must be removed every time. Keep:

- Version headings such as `## 0.2.0`.
- Only the body text of each entry, after the PR/hash decoration.
- Only the body text of each entry, after the PR/hash decoration and any `Thanks ...!` credit have been removed.

Remove:

- The upstream H1 `# @moonshot-ai/kimi-code` because the docs page already has `# Changelog`.
- Changesets subheadings such as `### Patch Changes`, `### Minor Changes`, and `### Major Changes`.
- PR links such as `[#317](...)`.
- Commit hash links such as ``[`2f51db4`](...)``.
- The `Thanks [@user](...)!` credit, including the multi-author form `Thanks [@a](...), [@b](...)!`. Drop the whole `Thanks ...!` segment every time, regardless of whether the feature is enabled.

After stripping, each entry should be only:
After stripping, each entry is `- <body text>`.

```markdown
- <body text>
```
Drop SDK-only and provider-internal detail. This changelog serves `@moonshot-ai/kimi-code` CLI and web users. Within an entry, keep only what CLI/web users can perceive, and remove sentences that document internals instead of user-visible behavior. Apply this on both the English and Chinese pages:

- Drop sentences about how the SDK maps a capability, builds model aliases, or exposes a flag through an API such as `getExperimentalFeatures()` — that belongs in the SDK changelog, not here.
- Drop provider / wire-format implementation mechanics (XML markers like `<tools_added>`, protocol field explanations, "the wire protocol is unchanged", cache-hit mechanics) unless they are the behavior a user perceives.
- Keep the user-facing effect and any constraints users must follow (for example "question texts must be unique").

Do not change facts or drop a real user-facing behavior — only trim the internal-only scaffolding. For over-long, internal-heavy entries, this trim applies on the English page too, not only in translation.

Web UI prefix: if the entry is a web UI change, prefix the body text with `web: ` so readers can tell it affects the web UI:

Expand All @@ -126,15 +131,25 @@ Upstream language rule: `gen-changesets` requires changelog entries to be Englis

Public-text rule: do not copy real internal endpoints, key names, account names, or service names into docs changelogs. Replace examples with neutral placeholders such as `example.com`, `example.test`, or `YOUR_API_KEY` while preserving the user-visible meaning.

### 4. Classify Entries
### 4. Merge, Deduplicate, And Classify Entries

Before classifying, merge related entries and drop redundant ones from the user-facing changelog:

- **Merge micro-tweaks to the same surface.** Collapse several small tweaks to the same UI area or feature into one concise entry at the higher level. For example, "change the composer's default height" and "change the composer's default font" merge into "Polish the composer's default styling." Use the most specific common ancestor (composer, settings page, tool card, and so on). Classify the merged entry by its combined effect, and keep the `web:` prefix if the combined change is still web-facing.
- **Merge same-surface or same-kind fixes when you have three or more.** The `Bug Fixes` section tends to accumulate many narrow UI/polish fixes that read as noise when listed one by one. When three or more fixes target the same area (for example several tool cards in the TUI, or the web session/conversation surface) or the same class of problem (for example several "jumping/flickering/collapsing during streaming" fixes), merge them into one higher-level entry. Examples:
- "Fix the Bash tool card collapsing...", "Fix the Edit tool card jumping in height...", "Fix the Edit tool card flickering while its result streams in" → "Fix several TUI tool cards jumping, flickering, or collapsing in height when results stream in or end with short output."
- "Fix the collapsed sidebar not hiding...", "Stop the chat history from replaying its entrance animation...", "Fix tool components jumping the conversation when expanded/collapsed" → "web: Fix several layout and display glitches when switching sessions, including the collapsed sidebar not hiding, the chat history replaying its entrance animation, and tool components jumping the conversation."
- Keep `web:` if the merged fixes are all web-facing. Classify as `Bug Fixes`.
- **Do not over-merge.** Leave a fix standalone when it is broad, high-value, or genuinely distinct (for example model/provider tool-calling bugs, session-list corruption, file-completion gaps). Merging is for low-reader-value, similar-shape fixes that read as a wall of similar bullets.
- **Drop server/API plumbing covered by a web entry.** If one entry adds a web UI feature (for example, an Archived sessions page) and another entry only adds the server or REST/WebSocket endpoints that exist solely to power that web feature, keep the `web:` entry and drop the API entry. CLI and web users perceive the web page; the backing API is implementation detail with no independent user value on this changelog. Keep the API entry only when it has independent user value — a new public endpoint that SDK or server consumers call directly, or a capability usable outside the web feature. When unsure, keep both and let the reviewer decide.

The docs changelog uses five section types:

| English section | Chinese section | Meaning |
|---|---|---|
| `### Features` | `### 新功能` | New user-facing functionality, such as a new command, flag, mode, or capability that did not exist before |
| `### Bug Fixes` | `### 修复` | Fixes for behavior that was broken |
| `### Polish` | `### 优化` | User-visible improvements to existing functionality, including UX adjustments, behavior tweaks, and performance improvements that are not fixes or new capabilities |
| `### Bug Fixes` | `### 修复` | Fixes for behavior that was broken |
| `### Refactors` | `### 重构` | Internal changes with no user-visible behavior change, including build, CI, tests, dependency cleanup, and internal renames |
| `### Other` | `### 其他` | Anything that does not fit above, such as CDN/endpoint swaps and docs-related artifacts |

Expand All @@ -148,6 +163,8 @@ Classification process:

Features vs. Polish: ask whether the entry introduces something the user could not do before. If yes (new command, flag, mode, viewer, or capability), use `Features`. If it only improves an existing surface (a UI panel that already existed, an existing prompt, an existing tool card, an existing payload pipeline), use `Polish`. Verbs like `Add` do not automatically mean `Features` — a small visual addition to an existing UI is still polish.

Default-behavior changes: changing the default value of an existing capability (for example flipping a feature on by default) is usually `Polish`, because the capability already existed. Use `Features` only when the new default materially changes the out-of-box experience for most users in a way they could not get before. When genuinely ambiguous, flag it and confirm with the reviewer rather than guessing.

Keyword hints:

- **Features**: `Add ... command/flag/option/mode/viewer`, `Introduce`, `Support`, `Allow`, `Enable`, `Implement`, `New ... command/flag/option`
Expand All @@ -159,14 +176,15 @@ Keyword hints:
Within each version, section order is:

```text
Features → Bug Fixes → Polish → Refactors → Other
Features → Polish → Bug Fixes → Refactors → Other
```

Omit empty sections. Within each section, order entries by reader value, not upstream order:

1. Put the most valuable, obvious, and larger changes first.
2. Prefer broad user-visible features, workflow-changing fixes, high-frequency bugs, and large cross-cutting improvements over small polish, narrow edge cases, and internal cleanup.
3. If entries have similar value, preserve upstream order.
3. Within `Polish`, put directly user-visible UX or performance improvements (something users can see or feel) before protocol or internal-behavior adjustments (something that makes the model or pipeline behave more reliably but is invisible to users).
4. If entries have similar value, preserve upstream order.

Do not reword or exaggerate entries just to make them look more important; only reorder existing entries.

Expand Down Expand Up @@ -246,6 +264,7 @@ Structural fidelity does not mean literal translation. The Chinese entries shoul
Guidelines:

- **One entry, one sentence.** Avoid chaining multiple effects with commas or semicolons. If the English entry is long, split it into shorter sentences or keep only the most important effect.
- **Drop SDK-only and provider-internal detail.** Apply the trim from step 3 while translating: keep the user-facing effect and required constraints, drop SDK-mapping sentences, provider / wire-format mechanics, and internal XML markers. A long internal entry should collapse to one short Chinese sentence about what the user gets.
- **Prefer common changelog verbs**: 新增、支持、修复、优化、改进、调整.
- **Avoid indirect "through... make..." structures**. Do not write "通过 X,使 Y"; prefer direct cause-effect or just state the result.
- Bad: `通过缓存已渲染消息行,使终端在长篇对话中保持响应。`
Expand All @@ -263,6 +282,7 @@ Guidelines:
- Bad: `传入 --allowed-host 以允许额外的 host。例如 ... (多句展开)`
- Better: `例如 kimi web --allowed-host example.com。`
- **Do not translate technical identifiers**: keep command names, flag names, file names, env vars, config keys, and the `web:` scope prefix as-is.
- **Keep parallel rhythm within a section.** When several entries fix similar web surfaces (layout, animation, sizing), phrase them with a consistent structure (for example 修复 <问题>,现 <行为>) so the section reads as a tidy list rather than a mix of shapes.

Example — translating a feature entry:

Expand Down Expand Up @@ -300,6 +320,7 @@ Check:
- Each section has the same number of entries on both pages.
- Within each section, the most valuable, obvious, and larger entries appear before smaller or narrower entries.
- PR links and commit hashes were stripped.
- No `Thanks ...!` credit remains (remove it every time).
- Real internal identifiers were replaced with neutral placeholders.
- There are no empty sections.
- Markdown indentation and blank lines are intact.
Expand Down Expand Up @@ -416,6 +437,10 @@ Return the PR URL to the user when done.
|---|---|
| Adding entries directly to the English docs page without reading upstream | Use `apps/kimi-code/CHANGELOG.md` as the source |
| Copying PR links or commit hashes into docs | Strip them; keep only body text |
| Leaving the `Thanks ...!` credit in docs | Remove it every time, including the multi-author form |
| Leaving near-duplicate micro-tweaks as separate bullets | Merge small tweaks to the same surface into one higher-level entry (e.g. composer height + font → composer's default styling) |
| Listing many narrow fixes to the same surface as separate bullets | When three or more fixes target the same UI area or the same class of problem, merge them into one higher-level fix entry; keep genuinely distinct or high-value fixes standalone |
| Listing a server/API entry that only backs a web feature already listed | Drop the API entry and keep the `web:` entry, unless the API has independent user value |
| Rewording upstream English entries | Upstream is frozen; copy the body text unless the user explicitly asks otherwise |
| Leaving English text untranslated in the Chinese page | The Chinese page must be fully Chinese except preserved technical terms |
| Editing upstream changelog text | Do not edit upstream |
Expand Down
1 change: 0 additions & 1 deletion .changeset/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ All other workspace packages are private internal packages, are not published to
- `@moonshot-ai/vis`
- `@moonshot-ai/vis-server`
- `@moonshot-ai/vis-web`
- `kimi-migration-legacy`

Version impact from internal dependencies must be judged manually. The published artifacts for CLI and SDK bundle internal workspace packages into the artifact itself; runtime `dependencies` of published packages must not include any `@moonshot-ai/*` internal workspace packages.

Expand Down
5 changes: 5 additions & 0 deletions .changeset/ask-user-dismiss-not-recommended.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Treat a dismissed question prompt as the user choosing not to answer, instead of implicitly selecting the recommended option.
5 changes: 2 additions & 3 deletions .changeset/config.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"changelog": ["@changesets/changelog-github", { "repo": "MoonshotAI/kimi-code", "disableThanks": true }],
"changelog": ["@changesets/changelog-github", { "repo": "MoonshotAI/kimi-code" }],
"commit": false,
"fixed": [],
"linked": [],
Expand All @@ -10,8 +10,7 @@
"@moonshot-ai/server-e2e",
"@moonshot-ai/vis",
"@moonshot-ai/vis-server",
"@moonshot-ai/vis-web",
"kimi-migration-legacy"
"@moonshot-ai/vis-web"
],
"snapshot": {
"useCalculatedVersion": true,
Expand Down
7 changes: 7 additions & 0 deletions .changeset/dynamically-loaded-tools-capability.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
"@moonshot-ai/kosong": patch
"@moonshot-ai/kimi-code": patch
"@moonshot-ai/kimi-code-sdk": patch
---

Rename the dynamic tool loading model capability from `select_tools` to `dynamically_loaded_tools`.
5 changes: 0 additions & 5 deletions .changeset/fix-gemini-tool-calling.md

This file was deleted.

5 changes: 5 additions & 0 deletions .changeset/print-goal-cron-turns.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": minor
---

Keep `kimi -p` runs alive after a turn ends while a goal is still active or a cron task is pending, so goal continuations and cron fires run their turns instead of being cut off when the main turn finishes.
5 changes: 0 additions & 5 deletions .changeset/rebuild-session-index-on-boot.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/refill-composer-attachments.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/web-ask-user-question-result.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/web-markdown-diff-block.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/web-pre-session-skills.md

This file was deleted.

5 changes: 5 additions & 0 deletions .changeset/web-resume-media-tool.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

web: Fix ReadMediaFile results rendering as plain tool cards instead of images after resuming or reloading a session.
5 changes: 0 additions & 5 deletions .changeset/web-tool-row-body-padding.md

This file was deleted.

5 changes: 5 additions & 0 deletions .changeset/webbridge-plugins-link.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@moonshot-ai/kimi-code": patch
---

Update the WebBridge install page link opened from the /plugins panel.
Loading
Loading