kimi-cli 0.37__py3-none-any.whl → 0.39__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of kimi-cli might be problematic. Click here for more details.
- kimi_cli/CHANGELOG.md +11 -0
- kimi_cli/soul/kimisoul.py +5 -1
- kimi_cli/ui/shell/__init__.py +13 -1
- kimi_cli/ui/shell/update.py +8 -3
- {kimi_cli-0.37.dist-info → kimi_cli-0.39.dist-info}/METADATA +6 -2
- {kimi_cli-0.37.dist-info → kimi_cli-0.39.dist-info}/RECORD +8 -8
- {kimi_cli-0.37.dist-info → kimi_cli-0.39.dist-info}/WHEEL +0 -0
- {kimi_cli-0.37.dist-info → kimi_cli-0.39.dist-info}/entry_points.txt +0 -0
kimi_cli/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,17 @@ Internal builds may append content to the Unreleased section.
|
|
|
9
9
|
Only write entries that are worth mentioning to users.
|
|
10
10
|
-->
|
|
11
11
|
|
|
12
|
+
## [0.39] - 2025-10-24
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
|
|
16
|
+
- Fix context compaction threshold check
|
|
17
|
+
- Fix panic when SOCKS proxy is set in the shell session
|
|
18
|
+
|
|
19
|
+
## [0.38] - 2025-10-24
|
|
20
|
+
|
|
21
|
+
- Minor UX improvements
|
|
22
|
+
|
|
12
23
|
## [0.37] - 2025-10-24
|
|
13
24
|
|
|
14
25
|
### Fixed
|
kimi_cli/soul/kimisoul.py
CHANGED
|
@@ -111,6 +111,7 @@ class KimiSoul:
|
|
|
111
111
|
|
|
112
112
|
async def _agent_loop(self, wire: Wire):
|
|
113
113
|
"""The main agent loop for one run."""
|
|
114
|
+
assert self._agent_globals.llm is not None
|
|
114
115
|
|
|
115
116
|
async def _pipe_approval_to_wire():
|
|
116
117
|
while True:
|
|
@@ -127,7 +128,10 @@ class KimiSoul:
|
|
|
127
128
|
# out a better solution.
|
|
128
129
|
try:
|
|
129
130
|
# compact the context if needed
|
|
130
|
-
if
|
|
131
|
+
if (
|
|
132
|
+
self._context.token_count + self._reserved_tokens
|
|
133
|
+
>= self._agent_globals.llm.max_context_size
|
|
134
|
+
):
|
|
131
135
|
logger.info("Context too long, compacting...")
|
|
132
136
|
wire.send(CompactionBegin())
|
|
133
137
|
await self.compact_context()
|
kimi_cli/ui/shell/__init__.py
CHANGED
|
@@ -16,7 +16,7 @@ from kimi_cli.ui import RunCancelled, run_soul
|
|
|
16
16
|
from kimi_cli.ui.shell.console import console
|
|
17
17
|
from kimi_cli.ui.shell.metacmd import get_meta_command
|
|
18
18
|
from kimi_cli.ui.shell.prompt import CustomPromptSession, PromptMode, toast
|
|
19
|
-
from kimi_cli.ui.shell.update import UpdateResult, do_update
|
|
19
|
+
from kimi_cli.ui.shell.update import LATEST_VERSION_FILE, UpdateResult, do_update, semver_tuple
|
|
20
20
|
from kimi_cli.ui.shell.visualize import visualize
|
|
21
21
|
from kimi_cli.utils.logging import logger
|
|
22
22
|
|
|
@@ -262,6 +262,18 @@ def _print_welcome_info(name: str, model: str, info_items: dict[str, str]) -> No
|
|
|
262
262
|
)
|
|
263
263
|
)
|
|
264
264
|
|
|
265
|
+
if LATEST_VERSION_FILE.exists():
|
|
266
|
+
from kimi_cli import __version__ as current_version
|
|
267
|
+
|
|
268
|
+
latest_version = LATEST_VERSION_FILE.read_text().strip()
|
|
269
|
+
if semver_tuple(latest_version) > semver_tuple(current_version):
|
|
270
|
+
rows.append(
|
|
271
|
+
Text.from_markup(
|
|
272
|
+
f"\n[yellow]New version available: {latest_version}. "
|
|
273
|
+
"Please run `uv tool upgrade kimi-cli` to upgrade.[/yellow]"
|
|
274
|
+
)
|
|
275
|
+
)
|
|
276
|
+
|
|
265
277
|
console.print(
|
|
266
278
|
Panel(
|
|
267
279
|
Group(*rows),
|
kimi_cli/ui/shell/update.py
CHANGED
|
@@ -11,6 +11,7 @@ from pathlib import Path
|
|
|
11
11
|
|
|
12
12
|
import aiohttp
|
|
13
13
|
|
|
14
|
+
from kimi_cli.share import get_share_dir
|
|
14
15
|
from kimi_cli.ui.shell.console import console
|
|
15
16
|
from kimi_cli.utils.logging import logger
|
|
16
17
|
|
|
@@ -30,7 +31,7 @@ class UpdateResult(Enum):
|
|
|
30
31
|
_UPDATE_LOCK = asyncio.Lock()
|
|
31
32
|
|
|
32
33
|
|
|
33
|
-
def
|
|
34
|
+
def semver_tuple(version: str) -> tuple[int, int, int]:
|
|
34
35
|
v = version.strip()
|
|
35
36
|
if v.startswith("v"):
|
|
36
37
|
v = v[1:]
|
|
@@ -79,6 +80,9 @@ async def do_update(*, print: bool = True, check_only: bool = False) -> UpdateRe
|
|
|
79
80
|
return await _do_update(print=print, check_only=check_only)
|
|
80
81
|
|
|
81
82
|
|
|
83
|
+
LATEST_VERSION_FILE = get_share_dir() / "latest_version.txt"
|
|
84
|
+
|
|
85
|
+
|
|
82
86
|
async def _do_update(*, print: bool, check_only: bool) -> UpdateResult:
|
|
83
87
|
from kimi_cli import __version__ as current_version
|
|
84
88
|
|
|
@@ -100,9 +104,10 @@ async def _do_update(*, print: bool, check_only: bool) -> UpdateResult:
|
|
|
100
104
|
return UpdateResult.FAILED
|
|
101
105
|
|
|
102
106
|
logger.debug("Latest version: {latest_version}", latest_version=latest_version)
|
|
107
|
+
LATEST_VERSION_FILE.write_text(latest_version)
|
|
103
108
|
|
|
104
|
-
cur_t =
|
|
105
|
-
lat_t =
|
|
109
|
+
cur_t = semver_tuple(current_version)
|
|
110
|
+
lat_t = semver_tuple(latest_version)
|
|
106
111
|
|
|
107
112
|
if cur_t >= lat_t:
|
|
108
113
|
logger.debug("Already up to date: {current_version}", current_version=current_version)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: kimi-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.39
|
|
4
4
|
Summary: Kimi CLI is your next CLI agent.
|
|
5
5
|
Requires-Dist: agent-client-protocol>=0.4.9
|
|
6
6
|
Requires-Dist: aiofiles>=25.1.0
|
|
@@ -18,6 +18,7 @@ Requires-Dist: trafilatura>=2.0.0
|
|
|
18
18
|
Requires-Dist: tenacity>=9.1.2
|
|
19
19
|
Requires-Dist: fastmcp>=2.12.5
|
|
20
20
|
Requires-Dist: pydantic>=2.12.3
|
|
21
|
+
Requires-Dist: httpx[socks]>=0.28.0
|
|
21
22
|
Requires-Python: >=3.13
|
|
22
23
|
Description-Content-Type: text/markdown
|
|
23
24
|
|
|
@@ -42,6 +43,9 @@ Kimi CLI is a new CLI agent that can help you with your software development tas
|
|
|
42
43
|
|
|
43
44
|
## Installation
|
|
44
45
|
|
|
46
|
+
> [!IMPORTANT]
|
|
47
|
+
> Kimi CLI currently only supports macOS and Linux. Windows support is coming soon.
|
|
48
|
+
|
|
45
49
|
Kimi CLI is published as a Python package on PyPI. We highly recommend installing it with [uv](https://docs.astral.sh/uv/). If you have not installed uv yet, please follow the instructions [here](https://docs.astral.sh/uv/getting-started/installation/) to install it first.
|
|
46
50
|
|
|
47
51
|
Once uv is installed, you can install Kimi CLI with:
|
|
@@ -69,7 +73,7 @@ Run `kimi` command in the directory you want to work on, then send `/setup` to s
|
|
|
69
73
|
|
|
70
74
|

|
|
71
75
|
|
|
72
|
-
After setup
|
|
76
|
+
After setup, Kimi CLI will be ready to use. You can send `/help` to get more information.
|
|
73
77
|
|
|
74
78
|
## Features
|
|
75
79
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
kimi_cli/CHANGELOG.md,sha256=
|
|
1
|
+
kimi_cli/CHANGELOG.md,sha256=0ded00048bd564f13c14a98e6a8eaf8e0730c02d2ab16b997b68e383626baa0c,7178
|
|
2
2
|
kimi_cli/__init__.py,sha256=80ff28778a1d9c1ee9d43be6f4e673fda3b44a0ec1aadc272cb859776f152f0a,11390
|
|
3
3
|
kimi_cli/agent.py,sha256=46fc0293489cc1d5daaa9be6b29c8a17bbf8c5a552fd437941eb1f0ae1335a3a,8528
|
|
4
4
|
kimi_cli/agents/koder/README.md,sha256=2d9a987110652915cd1a4356caec3eef9380479ce36906c377a1ed177d46690f,96
|
|
@@ -18,7 +18,7 @@ kimi_cli/soul/approval.py,sha256=3015fddcead40c00a594147e040c45a0b7f86a3f25322b2
|
|
|
18
18
|
kimi_cli/soul/compaction.py,sha256=03213007626dcb7453d3c5ad08381c83d7e7feb8f8b8a434ab33dc71243512bf,3506
|
|
19
19
|
kimi_cli/soul/context.py,sha256=541759a65f8f87a3424a6da160ffb2043046e6f6b714124d94d82a77635df9bc,5855
|
|
20
20
|
kimi_cli/soul/denwarenji.py,sha256=66b95f052a1fa844e2347972d34e1916a7be24d3e493701b451f5380b0375c9f,1384
|
|
21
|
-
kimi_cli/soul/kimisoul.py,sha256=
|
|
21
|
+
kimi_cli/soul/kimisoul.py,sha256=9b4b7419b03feec2aa1a7ef784bf7e67cb95409316a7031d85ad50b99ebc34f2,11749
|
|
22
22
|
kimi_cli/soul/message.py,sha256=16bbdc203c791dc50c7ebbc52d91fae801313920db1029217f30b5516ba5dbf3,2459
|
|
23
23
|
kimi_cli/soul/toolset.py,sha256=60166d89ef0efac690fa6866e88afe70fbe80ad862ba2524d70ddf657a730d14,744
|
|
24
24
|
kimi_cli/soul/wire.py,sha256=c69a1e45c584b8a43eddf2230f38b414ce7ffb5b43ad18ff822e0cb36e1b42a6,3367
|
|
@@ -57,7 +57,7 @@ kimi_cli/tools/web/search.py,sha256=cba367a80b224c2a80e61c0c33bca6ff61c57b202a2e
|
|
|
57
57
|
kimi_cli/ui/__init__.py,sha256=127928de433021e42fdaab56188457896283cd5e188c7c0f21c2eb718e040495,2386
|
|
58
58
|
kimi_cli/ui/acp/__init__.py,sha256=e5a93c3bbbb919fae41cedd829dbe1363ebcb56feb6413c47071692876007d52,17349
|
|
59
59
|
kimi_cli/ui/print/__init__.py,sha256=9ea2933a00959eb19a07ed1abb3d1aff0d3dc3ee7e393271125fe210a085ecc5,6734
|
|
60
|
-
kimi_cli/ui/shell/__init__.py,sha256=
|
|
60
|
+
kimi_cli/ui/shell/__init__.py,sha256=165f60912c29f5bc409a0e53efc921c04893a138a09218597f758212182ad434,10705
|
|
61
61
|
kimi_cli/ui/shell/console.py,sha256=bcbf7efd214cba3d2259f2a2c1842250cde96d49e4f9f1e0b60273cf1c366be3,842
|
|
62
62
|
kimi_cli/ui/shell/debug.py,sha256=cd4e7259c83f099b5c6519713be5306580f30d3fa4944e07916d4468e960c9c7,5562
|
|
63
63
|
kimi_cli/ui/shell/keyboard.py,sha256=8735c00363484263681adf885baec824e5f76cb4084bd024651e80190926edc5,3035
|
|
@@ -65,7 +65,7 @@ kimi_cli/ui/shell/liveview.py,sha256=0d91dc3f851563ae514310a054b084b13fda06d3381
|
|
|
65
65
|
kimi_cli/ui/shell/metacmd.py,sha256=bb24538dbe451b14427697691275ec7d6ffd2e4a724cdc2f43b726ea7d71d744,7778
|
|
66
66
|
kimi_cli/ui/shell/prompt.py,sha256=f85446d77b998e2594380c29000b06614e3fae8537db46ec96fc5ddc25490b45,19096
|
|
67
67
|
kimi_cli/ui/shell/setup.py,sha256=cd87fef38b213cb6c1adba11851b0bf36059f564fe6002017bb36486446443e6,5282
|
|
68
|
-
kimi_cli/ui/shell/update.py,sha256=
|
|
68
|
+
kimi_cli/ui/shell/update.py,sha256=bc331f832d2c41d5b95f4926c4ff235ef92e70ff76d66173c354f05ee52545dd,7266
|
|
69
69
|
kimi_cli/ui/shell/visualize.py,sha256=a5ff51441e80587909e9337c293762e55be24534331c24e71539c7b166ed568b,4032
|
|
70
70
|
kimi_cli/utils/changelog.py,sha256=9d9ae05f32e90a53d40626fca437b9a10e8bec5b3e63e9348135969dcab4380e,3380
|
|
71
71
|
kimi_cli/utils/logging.py,sha256=129298ac214ecd8d913c3431cc05d754f9c4c8c4042c458618bf9e8ddebdb763,399
|
|
@@ -74,7 +74,7 @@ kimi_cli/utils/path.py,sha256=fdd4fc08999ddc7c610f884b4ba8d27932248b9ed06b5eb413
|
|
|
74
74
|
kimi_cli/utils/provider.py,sha256=195ae475e3f87fff81f98b2714aa3d38049dcf8194a5ba933290d0e475ba9a10,2553
|
|
75
75
|
kimi_cli/utils/pyinstaller.py,sha256=e5d709d0490ef8645bbed2d2363920c59f25bd17c04f471bf4a8c0fa2ebe1801,581
|
|
76
76
|
kimi_cli/utils/string.py,sha256=f8a842ee014b9023d4045392f33ca6f576f5238ad3d40cb6df071a3ce9f5ed9c,365
|
|
77
|
-
kimi_cli-0.
|
|
78
|
-
kimi_cli-0.
|
|
79
|
-
kimi_cli-0.
|
|
80
|
-
kimi_cli-0.
|
|
77
|
+
kimi_cli-0.39.dist-info/WHEEL,sha256=70ab3c2925fe316809860cb034f99ba13c4b49819b339959274aab755cc084a8,78
|
|
78
|
+
kimi_cli-0.39.dist-info/entry_points.txt,sha256=d5b0f8ebf823d7590e90bf9511c8ab13f73db97cba1e1fc88585d8d7b415bcc2,40
|
|
79
|
+
kimi_cli-0.39.dist-info/METADATA,sha256=ebf4fcfa32c5003f018d1cca3ba9e369ddafb65a3cc033df664e5e3c6e5200ff,4152
|
|
80
|
+
kimi_cli-0.39.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|