Skip to content

Commit 6e3c5f9

Browse files
authored
feat(tui): introduce toad as terminal ui (kimi term) (#561)
Signed-off-by: Richard Chien <stdrc@outlook.com>
1 parent 6abd8f8 commit 6e3c5f9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+1052
-132
lines changed

.github/workflows/ci-kosong.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,10 @@ jobs:
5656
- name: Checkout repository
5757
uses: actions/checkout@v4
5858

59-
- name: Set up Python 3.12
59+
- name: Set up Python 3.14
6060
uses: actions/setup-python@v5
6161
with:
62-
python-version: "3.13"
62+
python-version: "3.14"
6363
allow-prereleases: true
6464

6565
- name: Set up uv

.github/workflows/ci.yml

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
strategy:
1212
fail-fast: false
1313
matrix:
14-
python-version: ["3.12", "3.13"]
14+
python-version: ["3.12", "3.13", "3.14"]
1515
include:
1616
- runner: ubuntu-22.04
1717
target: x86_64-unknown-linux-gnu
@@ -35,6 +35,7 @@ jobs:
3535
run: choco install make -y
3636

3737
- name: Set up Python ${{ matrix.python-version }}
38+
id: setup-python
3839
uses: actions/setup-python@v5
3940
with:
4041
python-version: ${{ matrix.python-version }}
@@ -46,22 +47,29 @@ jobs:
4647
version: "0.8.5"
4748

4849
- name: Prepare building environment
50+
env:
51+
UV_PYTHON: ${{ steps.setup-python.outputs.python-path }}
4952
run: make prepare
5053

5154
- name: Run checks
55+
env:
56+
UV_PYTHON: ${{ steps.setup-python.outputs.python-path }}
5257
run: make check
5358

5459
- name: Run tests
5560
env:
61+
UV_PYTHON: ${{ steps.setup-python.outputs.python-path }}
5662
PYTHONUTF8: "1"
5763
run: make test
5864

5965
- name: Build standalone binary
60-
if: matrix.python-version == '3.13'
66+
if: matrix.python-version == '3.14'
67+
env:
68+
UV_PYTHON: ${{ steps.setup-python.outputs.python-path }}
6169
run: make build-bin
6270

6371
- name: Smoke test binary --help
64-
if: matrix.python-version == '3.13'
72+
if: matrix.python-version == '3.14'
6573
shell: python
6674
run: |
6775
import os
@@ -75,7 +83,7 @@ jobs:
7583
BINARY_PATH: ${{ matrix.binary_path }}
7684

7785
- name: Upload binary artifact
78-
if: matrix.python-version == '3.13' && success()
86+
if: matrix.python-version == '3.14' && success()
7987
uses: actions/upload-artifact@v4
8088
with:
8189
name: kimi-${{ matrix.target }}

.github/workflows/release-kimi-cli.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ jobs:
1616
- name: Checkout repository
1717
uses: actions/checkout@v4
1818

19-
- name: Set up Python 3.13
19+
- name: Set up Python 3.14
2020
uses: actions/setup-python@v5
2121
with:
22-
python-version: "3.13"
22+
python-version: "3.14"
2323
allow-prereleases: true
2424

2525
- name: Check version tag
@@ -59,10 +59,10 @@ jobs:
5959
if: runner.os == 'Windows'
6060
run: choco install make -y
6161

62-
- name: Set up Python 3.13
62+
- name: Set up Python 3.14
6363
uses: actions/setup-python@v5
6464
with:
65-
python-version: "3.13"
65+
python-version: "3.14"
6666
allow-prereleases: true
6767

6868
- name: Set up uv
@@ -169,10 +169,10 @@ jobs:
169169
- name: Checkout repository
170170
uses: actions/checkout@v4
171171

172-
- name: Set up Python 3.13
172+
- name: Set up Python 3.14
173173
uses: actions/setup-python@v5
174174
with:
175-
python-version: "3.13"
175+
python-version: "3.14"
176176
allow-prereleases: true
177177

178178
- name: Set up uv

.github/workflows/release-kosong.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ jobs:
1616
- name: Checkout repository
1717
uses: actions/checkout@v4
1818

19-
- name: Set up Python 3.13
19+
- name: Set up Python 3.14
2020
uses: actions/setup-python@v5
2121
with:
22-
python-version: "3.13"
22+
python-version: "3.14"
2323
allow-prereleases: true
2424

2525
- name: Check version tag
@@ -35,10 +35,10 @@ jobs:
3535
- name: Checkout repository
3636
uses: actions/checkout@v4
3737

38-
- name: Set up Python 3.13
38+
- name: Set up Python 3.14
3939
uses: actions/setup-python@v5
4040
with:
41-
python-version: "3.13"
41+
python-version: "3.14"
4242
allow-prereleases: true
4343

4444
- name: Set up uv
@@ -63,10 +63,10 @@ jobs:
6363
- name: Checkout repository
6464
uses: actions/checkout@v4
6565

66-
- name: Set up Python 3.13
66+
- name: Set up Python 3.14
6767
uses: actions/setup-python@v5
6868
with:
69-
python-version: "3.13"
69+
python-version: "3.14"
7070
allow-prereleases: true
7171

7272
- name: Set up uv

.github/workflows/release-pykaos.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ jobs:
1616
- name: Checkout repository
1717
uses: actions/checkout@v4
1818

19-
- name: Set up Python 3.13
19+
- name: Set up Python 3.14
2020
uses: actions/setup-python@v5
2121
with:
22-
python-version: "3.13"
22+
python-version: "3.14"
2323
allow-prereleases: true
2424

2525
- name: Check version tag
@@ -35,10 +35,10 @@ jobs:
3535
- name: Checkout repository
3636
uses: actions/checkout@v4
3737

38-
- name: Set up Python 3.13
38+
- name: Set up Python 3.14
3939
uses: actions/setup-python@v5
4040
with:
41-
python-version: "3.13"
41+
python-version: "3.14"
4242
allow-prereleases: true
4343

4444
- name: Set up uv

.python-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.13
1+
3.14

AGENTS.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ shell UI, ACP server mode for IDE integrations, and MCP tool loading.
1818

1919
## Tech stack
2020

21-
- Python 3.12+ (tooling configured for 3.13)
21+
- Python 3.12+ (tooling configured for 3.14)
2222
- CLI framework: Typer
2323
- Async runtime: asyncio
2424
- LLM framework: kosong
@@ -88,7 +88,7 @@ shell UI, ACP server mode for IDE integrations, and MCP tool loading.
8888

8989
## Conventions and quality
9090

91-
- Python >=3.12 (ty config uses 3.13); line length 100.
91+
- Python >=3.12 (ty config uses 3.14); line length 100.
9292
- Ruff handles lint + format (rules: E, F, UP, B, SIM, I); pyright + ty for type checks.
9393
- Tests use pytest + pytest-asyncio; files are `tests/test_*.py`.
9494
- CLI entry points: `kimi` / `kimi-cli` -> `src/kimi_cli/cli.py`.

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ Only write entries that are worth mentioning to users.
1414
- ACP: Route file reads/writes and shell commands through ACP clients for synced edits/output
1515
- Shell: Add `/model` slash command to switch default models and reload when using the default config
1616
- Skills: Add `/skill:<name>` slash commands to load `SKILL.md` instructions on demand
17+
- CLI: Add `kimi term` to launch the Toad terminal UI
18+
- Python: Bump the default tooling/CI version to 3.14
1719

1820
## [0.70] - 2025-12-31
1921

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Kimi CLI is published as a Python package on PyPI. We highly recommend installin
3030
Once uv is installed, you can install Kimi CLI with:
3131

3232
```sh
33-
uv tool install --python 3.13 kimi-cli
33+
uv tool install --python 3.14 kimi-cli
3434
```
3535

3636
Run `kimi --help` to check if Kimi CLI is installed successfully.

docs/.vitepress/config.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ export default defineConfig({
7373
{ text: 'kimi 命令', link: '/zh/reference/kimi-command' },
7474
{ text: 'kimi acp 命令', link: '/zh/reference/kimi-acp' },
7575
{ text: 'kimi mcp 子命令', link: '/zh/reference/kimi-mcp' },
76+
{ text: 'kimi term 命令', link: '/zh/reference/kimi-term' },
7677
{ text: '斜杠命令', link: '/zh/reference/slash-commands' },
7778
{ text: '键盘快捷键', link: '/zh/reference/keyboard' },
7879
],
@@ -150,6 +151,7 @@ export default defineConfig({
150151
{ text: 'kimi Command', link: '/en/reference/kimi-command' },
151152
{ text: 'kimi acp Command', link: '/en/reference/kimi-acp' },
152153
{ text: 'kimi mcp Subcommands', link: '/en/reference/kimi-mcp' },
154+
{ text: 'kimi term Command', link: '/en/reference/kimi-term' },
153155
{ text: 'Slash Commands', link: '/en/reference/slash-commands' },
154156
{ text: 'Keyboard Shortcuts', link: '/en/reference/keyboard' },
155157
],

0 commit comments

Comments
 (0)