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 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 self._context.token_count >= self._reserved_tokens:
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()
@@ -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),
@@ -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 _semver_tuple(version: str) -> tuple[int, int, int]:
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 = _semver_tuple(current_version)
105
- lat_t = _semver_tuple(latest_version)
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.37
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
  ![](./docs/images/setup.png)
71
75
 
72
- After setup is complete, Kimi CLI will be ready to use. You can send `/help` to get more information.
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=df0aebcb1b2d979c8384499b2a3cd742f83f0b74b0c803d6c4e168a834ffc2f0,6995
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=5ddbf88428ed2ca31e8554217276fe32dfb6f1fd7487e6f05ede97d4a7703efb,11595
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=054ba3b0fa048ccaad8cba048c37087529b89f1e223d25cb028884dbc329fad6,10186
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=e37b521ed39bdb183e01b19729861fc7751cb21240f49320157766f8908b5691,7110
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.37.dist-info/WHEEL,sha256=70ab3c2925fe316809860cb034f99ba13c4b49819b339959274aab755cc084a8,78
78
- kimi_cli-0.37.dist-info/entry_points.txt,sha256=d5b0f8ebf823d7590e90bf9511c8ab13f73db97cba1e1fc88585d8d7b415bcc2,40
79
- kimi_cli-0.37.dist-info/METADATA,sha256=b67322af3221ff49fa554d6ed377a7b196638b01b3ab5e558934da6aa8f66806,4028
80
- kimi_cli-0.37.dist-info/RECORD,,
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,,