klaude-code 1.2.11__py3-none-any.whl → 1.2.13__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.
Files changed (88) hide show
  1. klaude_code/auth/codex/oauth.py +3 -3
  2. klaude_code/cli/main.py +5 -5
  3. klaude_code/cli/runtime.py +19 -27
  4. klaude_code/cli/session_cmd.py +6 -8
  5. klaude_code/command/__init__.py +31 -28
  6. klaude_code/command/clear_cmd.py +0 -2
  7. klaude_code/command/diff_cmd.py +0 -2
  8. klaude_code/command/export_cmd.py +3 -5
  9. klaude_code/command/help_cmd.py +0 -2
  10. klaude_code/command/model_cmd.py +0 -2
  11. klaude_code/command/refresh_cmd.py +0 -2
  12. klaude_code/command/registry.py +5 -9
  13. klaude_code/command/release_notes_cmd.py +0 -2
  14. klaude_code/command/status_cmd.py +2 -4
  15. klaude_code/command/terminal_setup_cmd.py +2 -4
  16. klaude_code/command/thinking_cmd.py +229 -0
  17. klaude_code/config/__init__.py +1 -1
  18. klaude_code/config/list_model.py +1 -1
  19. klaude_code/config/select_model.py +5 -15
  20. klaude_code/const/__init__.py +1 -1
  21. klaude_code/core/agent.py +14 -69
  22. klaude_code/core/executor.py +11 -10
  23. klaude_code/core/manager/agent_manager.py +4 -4
  24. klaude_code/core/manager/llm_clients.py +10 -49
  25. klaude_code/core/manager/llm_clients_builder.py +8 -21
  26. klaude_code/core/manager/sub_agent_manager.py +3 -3
  27. klaude_code/core/prompt.py +3 -3
  28. klaude_code/core/reminders.py +1 -1
  29. klaude_code/core/task.py +4 -5
  30. klaude_code/core/tool/__init__.py +16 -25
  31. klaude_code/core/tool/file/_utils.py +1 -1
  32. klaude_code/core/tool/file/apply_patch.py +17 -25
  33. klaude_code/core/tool/file/apply_patch_tool.py +4 -7
  34. klaude_code/core/tool/file/edit_tool.py +4 -11
  35. klaude_code/core/tool/file/multi_edit_tool.py +2 -3
  36. klaude_code/core/tool/file/read_tool.py +3 -4
  37. klaude_code/core/tool/file/write_tool.py +2 -3
  38. klaude_code/core/tool/memory/memory_tool.py +2 -8
  39. klaude_code/core/tool/memory/skill_loader.py +3 -2
  40. klaude_code/core/tool/shell/command_safety.py +0 -1
  41. klaude_code/core/tool/tool_context.py +1 -3
  42. klaude_code/core/tool/tool_registry.py +2 -1
  43. klaude_code/core/tool/tool_runner.py +1 -1
  44. klaude_code/core/tool/truncation.py +2 -5
  45. klaude_code/core/turn.py +9 -4
  46. klaude_code/llm/anthropic/client.py +62 -49
  47. klaude_code/llm/client.py +2 -20
  48. klaude_code/llm/codex/client.py +51 -32
  49. klaude_code/llm/input_common.py +2 -2
  50. klaude_code/llm/openai_compatible/client.py +60 -39
  51. klaude_code/llm/openai_compatible/stream_processor.py +2 -1
  52. klaude_code/llm/openrouter/client.py +79 -45
  53. klaude_code/llm/openrouter/reasoning_handler.py +19 -132
  54. klaude_code/llm/registry.py +6 -5
  55. klaude_code/llm/responses/client.py +65 -43
  56. klaude_code/llm/usage.py +1 -49
  57. klaude_code/protocol/commands.py +1 -0
  58. klaude_code/protocol/events.py +7 -0
  59. klaude_code/protocol/llm_param.py +1 -9
  60. klaude_code/protocol/model.py +10 -6
  61. klaude_code/protocol/sub_agent.py +2 -1
  62. klaude_code/session/export.py +1 -8
  63. klaude_code/session/selector.py +12 -7
  64. klaude_code/session/session.py +2 -4
  65. klaude_code/trace/__init__.py +1 -1
  66. klaude_code/trace/log.py +1 -1
  67. klaude_code/ui/__init__.py +4 -9
  68. klaude_code/ui/core/stage_manager.py +7 -4
  69. klaude_code/ui/modes/repl/__init__.py +1 -1
  70. klaude_code/ui/modes/repl/completers.py +6 -7
  71. klaude_code/ui/modes/repl/display.py +3 -4
  72. klaude_code/ui/modes/repl/event_handler.py +63 -5
  73. klaude_code/ui/modes/repl/key_bindings.py +2 -3
  74. klaude_code/ui/modes/repl/renderer.py +2 -1
  75. klaude_code/ui/renderers/diffs.py +1 -4
  76. klaude_code/ui/renderers/metadata.py +1 -12
  77. klaude_code/ui/rich/markdown.py +3 -3
  78. klaude_code/ui/rich/searchable_text.py +6 -6
  79. klaude_code/ui/rich/status.py +3 -4
  80. klaude_code/ui/rich/theme.py +1 -4
  81. klaude_code/ui/terminal/control.py +7 -16
  82. klaude_code/ui/terminal/notifier.py +2 -4
  83. klaude_code/ui/utils/common.py +1 -1
  84. klaude_code/ui/utils/debouncer.py +2 -2
  85. {klaude_code-1.2.11.dist-info → klaude_code-1.2.13.dist-info}/METADATA +1 -1
  86. {klaude_code-1.2.11.dist-info → klaude_code-1.2.13.dist-info}/RECORD +88 -87
  87. {klaude_code-1.2.11.dist-info → klaude_code-1.2.13.dist-info}/WHEEL +0 -0
  88. {klaude_code-1.2.11.dist-info → klaude_code-1.2.13.dist-info}/entry_points.txt +0 -0
@@ -1,4 +1,5 @@
1
1
  import asyncio
2
+ import contextlib
2
3
  import os
3
4
  import select
4
5
  import signal
@@ -75,19 +76,15 @@ def start_esc_interrupt_monitor(
75
76
  r2, _, _ = select.select([sys.stdin], [], [], 0.0)
76
77
 
77
78
  if seq == "":
78
- try:
79
+ # Best-effort only; failures here should not crash the UI.
80
+ with contextlib.suppress(Exception):
79
81
  asyncio.run_coroutine_threadsafe(on_interrupt(), loop)
80
- except Exception:
81
- # Best-effort only; failures here should not crash the UI.
82
- pass
83
82
  stop.set()
84
83
  except Exception as exc: # pragma: no cover - environment dependent
85
84
  log((f"esc monitor error: {exc}", "r red"))
86
85
  finally:
87
- try:
86
+ with contextlib.suppress(Exception):
88
87
  termios.tcsetattr(fd, termios.TCSADRAIN, old)
89
- except Exception:
90
- pass
91
88
 
92
89
  esc_task: asyncio.Task[None] = asyncio.create_task(asyncio.to_thread(_esc_monitor, stop_event))
93
90
  return stop_event, esc_task
@@ -119,18 +116,14 @@ def install_sigint_double_press_exit(
119
116
  now = time.monotonic()
120
117
  if now - last_sigint_time <= window_seconds:
121
118
  # Second press within window: hide progress UI and exit.
122
- try:
119
+ with contextlib.suppress(Exception):
123
120
  hide_progress()
124
- except Exception:
125
- pass
126
121
  raise KeyboardInterrupt
127
122
 
128
123
  # First press: remember timestamp and show toast.
129
124
  last_sigint_time = now
130
- try:
125
+ with contextlib.suppress(Exception):
131
126
  show_toast()
132
- except Exception:
133
- pass
134
127
 
135
128
  try:
136
129
  signal.signal(signal.SIGINT, _handler)
@@ -139,9 +132,7 @@ def install_sigint_double_press_exit(
139
132
  return lambda: None
140
133
 
141
134
  def restore() -> None:
142
- try:
135
+ with contextlib.suppress(Exception):
143
136
  signal.signal(signal.SIGINT, original_handler)
144
- except Exception:
145
- pass
146
137
 
147
138
  return restore
@@ -39,7 +39,7 @@ class TerminalNotifierConfig:
39
39
  stream: TextIO | None = None
40
40
 
41
41
  @classmethod
42
- def from_env(cls) -> "TerminalNotifierConfig":
42
+ def from_env(cls) -> TerminalNotifierConfig:
43
43
  env = os.getenv("KLAUDE_NOTIFY", "").strip().lower()
44
44
  if env in {"0", "off", "false", "disable", "disabled"}:
45
45
  return cls(enabled=False)
@@ -95,9 +95,7 @@ class TerminalNotifier:
95
95
  if not getattr(stream, "isatty", lambda: False)():
96
96
  return False
97
97
  term = os.getenv("TERM", "")
98
- if term.lower() in {"", "dumb"}:
99
- return False
100
- return True
98
+ return term.lower() not in {"", "dumb"}
101
99
 
102
100
 
103
101
  def _compact(text: str, limit: int = 160) -> str:
@@ -99,7 +99,7 @@ def truncate_display(
99
99
  ) -> str:
100
100
  lines = text.split("\n")
101
101
  if len(lines) > max_lines:
102
- lines = lines[:max_lines] + ["… (more " + str(len(lines) - max_lines) + " lines)"]
102
+ lines = [*lines[:max_lines], "… (more " + str(len(lines) - max_lines) + " lines)"]
103
103
  for i, line in enumerate(lines):
104
104
  if len(line) > max_line_length:
105
105
  lines[i] = (
@@ -1,5 +1,5 @@
1
1
  import asyncio
2
- from typing import Awaitable, Callable, Optional
2
+ from collections.abc import Awaitable, Callable
3
3
 
4
4
 
5
5
  class Debouncer:
@@ -15,7 +15,7 @@ class Debouncer:
15
15
  """
16
16
  self.interval = interval
17
17
  self.callback = callback
18
- self._task: Optional[asyncio.Task[None]] = None
18
+ self._task: asyncio.Task[None] | None = None
19
19
 
20
20
  def cancel(self) -> None:
21
21
  """Cancel current debounce task"""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: klaude-code
3
- Version: 1.2.11
3
+ Version: 1.2.13
4
4
  Summary: Add your description here
5
5
  Requires-Dist: anthropic>=0.66.0
6
6
  Requires-Dist: openai>=1.102.0
@@ -3,43 +3,44 @@ klaude_code/auth/__init__.py,sha256=jLUgi4V4m0t2BlVuuni7iANOErpJgAeEqByuD1sKUvQ,
3
3
  klaude_code/auth/codex/__init__.py,sha256=rrpPvr-_R4kbj_oZ2U_fPmIfDPZov9Pjz2bAFpztUJk,502
4
4
  klaude_code/auth/codex/exceptions.py,sha256=TcAKPozsY3SCh_krTYFlJ8FU5jepgSTg-5UO1dA4OgE,388
5
5
  klaude_code/auth/codex/jwt_utils.py,sha256=tuaJKT4vAIGeaQjNzgNcHWGrYYSDrDeaQT9h4cw5Us8,1134
6
- klaude_code/auth/codex/oauth.py,sha256=ap78TUPJsF6O6cnkkuj11w1t4bCIVQzyVkuDvOLo0oo,7848
6
+ klaude_code/auth/codex/oauth.py,sha256=4hAGZ2Dv87NC3loEws7U5yNyPyIrryGm5YXY2FkHeyo,7840
7
7
  klaude_code/auth/codex/token_manager.py,sha256=F4xH5PhE9cksqTiWsU_YAboNe284VgUFWF2VY1sZV9U,2720
8
8
  klaude_code/cli/__init__.py,sha256=YzlAoWAr5rx5oe6B_4zPxRFS4QaZauuy1AFwampP5fg,45
9
- klaude_code/cli/main.py,sha256=_Srm_OiwJKcM9SUXPGI3jhr6XNs7bzpCpPQvBmn3QLc,12082
10
- klaude_code/cli/runtime.py,sha256=qrw3SLaiI65v_rD78SGcJ1UXoZxBIK2mitGhDobvM_M,12582
11
- klaude_code/cli/session_cmd.py,sha256=cIBm3uUurke-TfBvQHz9mGW29LOAh22FIpXVyypnwDo,2549
12
- klaude_code/command/__init__.py,sha256=k9LJCFzzABhq09q1TeKSl4oG-288MYFXCICnZemVha8,2878
13
- klaude_code/command/clear_cmd.py,sha256=EXIhVHvbfpgTrquLzTyeVAPkIRusjFkknwqzcct51ww,733
9
+ klaude_code/cli/main.py,sha256=ZuwiqTI-uGrz8c4NVJj62lOgY1q73gl8RXEEtqT7wko,12094
10
+ klaude_code/cli/runtime.py,sha256=XeUbSKOp5q2mhqIBUpq8hDNEV9ddSqvrNunNk1RS0go,12538
11
+ klaude_code/cli/session_cmd.py,sha256=q0mAgDOcSCgkKLBTyBMdibMm89ZX38sdKLudhwNigcM,2517
12
+ klaude_code/command/__init__.py,sha256=FsJtajofM-VJru-2XHRDbho565O0O7xJGI1MGC3HOFo,3041
13
+ klaude_code/command/clear_cmd.py,sha256=diIe1pscX1ko7bRN4FGylsTvDSAF6HHPwnsbXqTtHP0,657
14
14
  klaude_code/command/command_abc.py,sha256=1Wwp94Q3W08GNCraYYEGcjjNC7JLIei6E953zSZ2lZ4,2605
15
- klaude_code/command/diff_cmd.py,sha256=Hk37Zg-tUchnrmq8128x4xOVU1AfZUypFAGj1FLIpkg,5327
16
- klaude_code/command/export_cmd.py,sha256=npibiB42IYOoCRGtW7pR6CNQWcfSaql-tP-PTqc5BnU,3560
17
- klaude_code/command/help_cmd.py,sha256=B24xKRfpphUQz3A1BMhbzPWWij24PHALglgNbal2l6o,1768
18
- klaude_code/command/model_cmd.py,sha256=RRF7Hp5zrfCdye3bEiRTNwV_BvssJ_LSScIm78-GyBQ,1568
15
+ klaude_code/command/diff_cmd.py,sha256=mQu-FedUsZabE3-KwZV2JmOfm67-A41C2gz7rr6N9W8,5251
16
+ klaude_code/command/export_cmd.py,sha256=_EAWh1BTCfuzqkEHcLGn_SYuiXh6VE8YBdDfuJgyy-U,3478
17
+ klaude_code/command/help_cmd.py,sha256=N9X9q2hw7AXrmvBszmzL6tYz3GNZR768wMQqmC0Vp1Q,1692
18
+ klaude_code/command/model_cmd.py,sha256=Zy5oQV1bgnd7l1cn7quCZx4qZS2gFcWnYKZWM08QFKE,1492
19
19
  klaude_code/command/prompt-deslop.md,sha256=YGaAXqem39zd0UWCFjWUj83Cf7cvUJq1768aJExFqeg,1346
20
20
  klaude_code/command/prompt-dev-docs-update.md,sha256=g1IWIWIa-3qlNOw5mBA4N9H1_nvYcw8AKo7XoQw_AZQ,1855
21
21
  klaude_code/command/prompt-dev-docs.md,sha256=PU9iT6XdUEH6grfSjHVma7xKOQcA__ZTKlEDkbbO0hA,1783
22
22
  klaude_code/command/prompt-init.md,sha256=a4_FQ3gKizqs2vl9oEY5jtG6HNhv3f-1b5RSCFq0A18,1873
23
23
  klaude_code/command/prompt_command.py,sha256=8jBUcfSmC9tXAYkLAB-u81KFqSKtCAHfHMnTQDzpgcg,2607
24
- klaude_code/command/refresh_cmd.py,sha256=fiVlzTLNHqMsidj1JgEpUlB5MixKbijlPmN2n6v9xHI,1347
25
- klaude_code/command/registry.py,sha256=ypRh1ArygVkHSwFDYMpngQudq6rUSJKF9FIM7JGCXus,3914
26
- klaude_code/command/release_notes_cmd.py,sha256=6ywt5MI0PLOrBZF-uNKw0W1FbpEWsp2E9DVnCQ6HPV0,2783
27
- klaude_code/command/status_cmd.py,sha256=SWCv5-JDM7zT1inGt3Bq93x4uTmPFJaXx6G65rUs_Fg,5472
28
- klaude_code/command/terminal_setup_cmd.py,sha256=E819wPNSOnZ3AzMfDwq9bsdlg7-AuSooczBa97gf3ps,11019
29
- klaude_code/config/__init__.py,sha256=9XVCYYqzJtCi46I94hbUmJ2yTFuZ-UlH-QTx7OpLAkQ,292
24
+ klaude_code/command/refresh_cmd.py,sha256=8TB1ibGn7w0xFemYTzIuoB0VXWU9Klem3wu-HfFfGlk,1271
25
+ klaude_code/command/registry.py,sha256=Vy2WL1M35LL3aLkidXa2QGgGBFBKHQe_S93TZcH55qA,3827
26
+ klaude_code/command/release_notes_cmd.py,sha256=lDeAjuMDOSUISM0yYKZKbkjrYvFmvA5_fylkalTPaBU,2707
27
+ klaude_code/command/status_cmd.py,sha256=F7XgfivBm80kJEsCgRHGXWOALAT_Y2QyLQ38ooc_ZSE,5393
28
+ klaude_code/command/terminal_setup_cmd.py,sha256=iSYGZlflj_i-7i-9FhfhtbyyIe3UNkhPeehZezi-ULM,10944
29
+ klaude_code/command/thinking_cmd.py,sha256=rdPUHEGkHeth7dRS8B9F7Ryu5x4vQ7IIKxEr39STpfA,8001
30
+ klaude_code/config/__init__.py,sha256=RStXnrPw7rB6xI_V7Ua97UdrDVqNKoxuwxXeeWJ-mTc,292
30
31
  klaude_code/config/config.py,sha256=Vc9u7-40T81Rbx1OdMqSWZLh3vf9aj4wmBUnIOH7jAw,6526
31
- klaude_code/config/list_model.py,sha256=08vLxar7YAcUNzGTN6bUbPtAoXXyfO5y6LjaaXMbsyQ,8019
32
- klaude_code/config/select_model.py,sha256=el1jqXlNyYmHH_dvdcEkWVOYqIZ9y05_VJRlfZk7HkQ,2565
33
- klaude_code/const/__init__.py,sha256=dSfcFjVeDoc5UEHtzR-9U_BWCVNXggHyiKHwHapASZ0,3980
32
+ klaude_code/config/list_model.py,sha256=Uthp0nHaENBgD6l_a6wG0RFkRHQhLvIyjHPsP55Kazw,8010
33
+ klaude_code/config/select_model.py,sha256=aOizajRXcc_IOy0bSzK_KOZhbMQSx4g6IeNkgLsyV1c,2168
34
+ klaude_code/const/__init__.py,sha256=msApH-AQh_ttCgtYVTTW-e4AhCf6nurOcpTEkR0r1M4,3980
34
35
  klaude_code/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- klaude_code/core/agent.py,sha256=98VK6WBcPSS_N6IBT2_vCCkg4XsAziy4FGJadW8mOiw,8169
36
- klaude_code/core/executor.py,sha256=OkebxW6_64hecQBjHPgDQlw8JgOa_k5meBpNsMBB4qg,18512
36
+ klaude_code/core/agent.py,sha256=Xec4vmsvQJac70ct5B9ZUwq0S_dpzCqf99gZSqcfElk,5798
37
+ klaude_code/core/executor.py,sha256=WBwE6RLeCfw6b1j6EKEb_y36Qyg9pAPprlkKbbDGx2M,18685
37
38
  klaude_code/core/manager/__init__.py,sha256=6CswltCHXBUcezlW7xui2S1swDp8JTkS1YiEHmq4-no,658
38
- klaude_code/core/manager/agent_manager.py,sha256=IG07QD3wJWroJrTLdTZKwiCJrQjQikz8MoTyI7KCK0A,5267
39
- klaude_code/core/manager/llm_clients.py,sha256=sIFCweup7SJL5o9LbPgRLYE3fDuhYA4ZdhtSF2M0FAQ,2225
40
- klaude_code/core/manager/llm_clients_builder.py,sha256=SjSEBJWS77FY5xctu3uxT0JaiQKGtRJnjTZYandJwU0,1772
41
- klaude_code/core/manager/sub_agent_manager.py,sha256=SnDFu8ovcQjBkQSJrSD8e0Yf63NhIjYAt8WyQhBcpy0,3760
42
- klaude_code/core/prompt.py,sha256=I0jTB2mFG5a4ztwlP-Jxawsp-enRHFQCVANLUurhXEA,3303
39
+ klaude_code/core/manager/agent_manager.py,sha256=Z_LEV9WP-4h6tLAy4_WJnnJElY8MfH1OTRHk_LRw0VI,5202
40
+ klaude_code/core/manager/llm_clients.py,sha256=X2oMFWgJcP0tK8GEtMMDYR3HyR6_H8FuyCqpzWF5x2k,871
41
+ klaude_code/core/manager/llm_clients_builder.py,sha256=Kx4QyJmTr6BlN-yCqYglrhMxsCe2woe6yzLtHIQuV04,1520
42
+ klaude_code/core/manager/sub_agent_manager.py,sha256=YC_T-pA6P0295XqNzQDE7Ds0PnJ8XdH0YS2iRe9C0UQ,3748
43
+ klaude_code/core/prompt.py,sha256=I_FZYhIEl2E-Syq3YL-0hbQhK43NBQUwyqb8HNxmHJI,3282
43
44
  klaude_code/core/prompts/prompt-claude-code.md,sha256=c7kNgwjJqnbwQuKWGJoMx-AMbf1gxAFC3ZFDhngBe74,8293
44
45
  klaude_code/core/prompts/prompt-codex-gpt-5-1-codex-max.md,sha256=SW-y8AmR99JL_9j26k9YVAOQuZ18vR12aT5CWHkZDc4,11741
45
46
  klaude_code/core/prompts/prompt-codex-gpt-5-1.md,sha256=jNi593_4L3EoMvjS0TwltF2b684gtDBsYHa9npxO34A,24239
@@ -49,32 +50,32 @@ klaude_code/core/prompts/prompt-subagent-explore.md,sha256=m7eQMTWWibaZIMPNbMYUh
49
50
  klaude_code/core/prompts/prompt-subagent-oracle.md,sha256=hGtyDm_6UhJZUJwfXt5A-170is1KMHls85fEEo45z-w,1376
50
51
  klaude_code/core/prompts/prompt-subagent-webfetch.md,sha256=kHtJINbCRiRDrip_q6idHHU3CwbDfrVlpgtSZvugOWI,2304
51
52
  klaude_code/core/prompts/prompt-subagent.md,sha256=dmmdsOenbAOfqG6FmdR88spOLZkXmntDBs-cmZ9DN_g,897
52
- klaude_code/core/reminders.py,sha256=S5ZbYYrIoQKPGtLqtqg8yPCwZRD5Vdlkzf1wu86bw8g,18123
53
- klaude_code/core/task.py,sha256=Ct1puAKnbOiuczSiogaXCzK3V0lX3a7E0x5dj9M7UJQ,10631
54
- klaude_code/core/tool/__init__.py,sha256=-pxK4iCkvcdLpav74foMNdeIjsC6PMkVaw_q5kajivg,2170
53
+ klaude_code/core/reminders.py,sha256=CVnJ1rKuJ0bSTXiGz7fO8gPCoP93rTDBELfHAIwQsBU,18132
54
+ klaude_code/core/task.py,sha256=M_wl695oC-20rMTlsnsf2_-75GFbqDFg-Gz54Myhgr8,10549
55
+ klaude_code/core/tool/__init__.py,sha256=7D3XQ23yvw2MQB_PH2JlPO2m1JLc9CE7NE6AcKAe7ks,2023
55
56
  klaude_code/core/tool/file/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
56
- klaude_code/core/tool/file/_utils.py,sha256=UjXO9Bwyr7YtDeSALiA8cp4KQlQskibZlbk6A33F0q4,779
57
- klaude_code/core/tool/file/apply_patch.py,sha256=gUukVxt0qEP2NLHiPsmFWOi0sOuW0FaUnN0BfZ6FcII,17257
57
+ klaude_code/core/tool/file/_utils.py,sha256=LLmdEOJnC7MgdiAlWtBPZR0h23oM9wD_UsKqU1Nfkbs,774
58
+ klaude_code/core/tool/file/apply_patch.py,sha256=LZd3pYQ9ow_TxiFnqYuzD216HmvkLX6lW6BoMd9iQRs,17080
58
59
  klaude_code/core/tool/file/apply_patch_tool.md,sha256=KVDsjUiLDa97gym0NrZNVG4jA1_zN-2i-B3upVQyOhU,59
59
- klaude_code/core/tool/file/apply_patch_tool.py,sha256=cz9E7oYW9CjaokXhjAeyIxsukdvHVM2uM3cvwwDTNxg,8215
60
+ klaude_code/core/tool/file/apply_patch_tool.py,sha256=c2avTOOY9hLpFTPr1FTTWDfQ6CaIEag53gFNGvpT4Fo,8174
60
61
  klaude_code/core/tool/file/edit_tool.md,sha256=rEcUjJuPC46t1nXWjTDxplDcxWDbzTWsr6_bYt5_aRI,1110
61
- klaude_code/core/tool/file/edit_tool.py,sha256=5qk7iwoF1ODUhY3eRoUGs7x_RNjXark1XfpYb18oEd8,9994
62
+ klaude_code/core/tool/file/edit_tool.py,sha256=0fDe9QSDW33t9Ujsj-L6xMqo4FuaEwVLcCpLVmzKs4k,9806
62
63
  klaude_code/core/tool/file/multi_edit_tool.md,sha256=4G39b-jGdJdGGbBTj7R6tcUfcui9tXn6CLQ5uaX5y1M,2485
63
- klaude_code/core/tool/file/multi_edit_tool.py,sha256=inXJvAKGp-ZSQVAFk0Tv8kWc1LwxLdCMAla4Fpj47Gs,6887
64
+ klaude_code/core/tool/file/multi_edit_tool.py,sha256=TI8Z8qlXUlrJ4ThVyPSUcocNC-B7NHyixoCqV-mi9G0,6886
64
65
  klaude_code/core/tool/file/read_tool.md,sha256=FeRW9WMUNCtgbezjohvSJjFLZhQd1EaHVcjCI4eQHf4,1472
65
- klaude_code/core/tool/file/read_tool.py,sha256=I3j6XS4KBt1BH0cyJwLp0zFWh-mq8xAyh_w7_bU96Z8,12803
66
+ klaude_code/core/tool/file/read_tool.py,sha256=2DdNAdELnItyvbpn6Nf-jR121v2PhLVw4PlZa4Q19xw,12813
66
67
  klaude_code/core/tool/file/write_tool.md,sha256=CNnYgtieUasuHdpXLDpTEsqe492Pf7v75M4RQ3oIer8,613
67
- klaude_code/core/tool/file/write_tool.py,sha256=AqprfzACIL-f-J_ZTLntteCddUBCOKFoIukM6kp_ZqI,4340
68
+ klaude_code/core/tool/file/write_tool.py,sha256=TdGZlxFec4hQNmWgD5Rlos5bCI9Z1RJtjhPvg15v5hk,4339
68
69
  klaude_code/core/tool/memory/__init__.py,sha256=oeBpjUXcAilCtYXhiXDzavw5-BE_pbB2ZxsFJKTTcdc,143
69
70
  klaude_code/core/tool/memory/memory_tool.md,sha256=qWytU7k0kQQbne_8n4cei2-dDTNpHesmbI2PYza3XR0,1299
70
- klaude_code/core/tool/memory/memory_tool.py,sha256=h777Iju8gNijCfYMEALeoyRomBY0FXGu46gykehCeUA,19018
71
- klaude_code/core/tool/memory/skill_loader.py,sha256=3CywpqhEwAoWOVMKsE9awfYGDkBfO0J-rA-9Ckyk8dQ,8660
71
+ klaude_code/core/tool/memory/memory_tool.py,sha256=xasFf1IQp1LFaL4ctDIQt5jfrd_z62ZsBeE42QIKAKs,18949
72
+ klaude_code/core/tool/memory/skill_loader.py,sha256=DOlfALn4GwSPHDubNhYtzxM5di29uE7_tOdRi3yxfDc,8726
72
73
  klaude_code/core/tool/memory/skill_tool.md,sha256=UfjJK5EGAd3mf7ym5rIrRdPyV3kBTxNnwzOjNnHOBrE,973
73
74
  klaude_code/core/tool/memory/skill_tool.py,sha256=8SC4asNZSKfExuhzbyGz4f2cr78PgCpNkut_31IHePw,3602
74
75
  klaude_code/core/tool/shell/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
76
  klaude_code/core/tool/shell/bash_tool.md,sha256=ILKpnRCBTkU2uSDEdZQjNYo1l6hsM4TO-3RD5zWC61c,3935
76
77
  klaude_code/core/tool/shell/bash_tool.py,sha256=qPB7W51LmFsRxWJoqKih1vNTGIOaXE4wfxnKPzBXs6g,4490
77
- klaude_code/core/tool/shell/command_safety.py,sha256=r5nTltVj1Iil7dmnYByj4jp4du7AtPEaUa4J6XdrlTo,13209
78
+ klaude_code/core/tool/shell/command_safety.py,sha256=bGsooLovuzq8WmLcZ2v24AVBDj3bZv2p4GSL0IlixvM,13192
78
79
  klaude_code/core/tool/sub_agent_tool.py,sha256=Ohroht4z-W_kuBo0AvKoL40XQM0QGzScIDAuqYKXSVk,2765
79
80
  klaude_code/core/tool/todo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
80
81
  klaude_code/core/tool/todo/todo_write_tool.md,sha256=BFP9qIkzkakzskHwIOPVtDhehkh0F90A5oosyDuC_BE,1682
@@ -83,100 +84,100 @@ klaude_code/core/tool/todo/todo_write_tool_raw.md,sha256=AJ2OkZGcccQYDXkydPAr5JI
83
84
  klaude_code/core/tool/todo/update_plan_tool.md,sha256=OoEF4voHHd5J3VDv7tq3UCHdXApkBvxdHXUf5tVOkE8,157
84
85
  klaude_code/core/tool/todo/update_plan_tool.py,sha256=5MmmApG0wObBgc-mLETjIMupxIv-SZ7Q0uJO2Krtl1k,3794
85
86
  klaude_code/core/tool/tool_abc.py,sha256=3FlVZ8a6hC-_Ci23_cpLaap9nHinHgxSB1TsZL5ylUQ,731
86
- klaude_code/core/tool/tool_context.py,sha256=Slnykn14GwN9V_-IBRX3xu0xjvA-Fi3bqHTYR-Z7A5Y,4175
87
- klaude_code/core/tool/tool_registry.py,sha256=AgJ9m42gKB23GZnUuY4eThSzKaB4_51ytdLDxQD8lIk,2603
88
- klaude_code/core/tool/tool_runner.py,sha256=I9BfeRgtVT3IoZGXgEVvzTEF8-fpKFqtbt6MgznJleI,10079
89
- klaude_code/core/tool/truncation.py,sha256=hHeJDrvvNt0wE9yGZVaZheYUW0VoJ7QbopKo6wjyP-w,6644
87
+ klaude_code/core/tool/tool_context.py,sha256=M6KpU2xtgKeQmvAZwqeLnzbzWvjxTt_M0p2ohC1tsb4,4157
88
+ klaude_code/core/tool/tool_registry.py,sha256=vp7xmXvPW-vpX0fXi41RiQMZtQFwgyA0GP7K_wHRR9I,2630
89
+ klaude_code/core/tool/tool_runner.py,sha256=3e1G591UYrIjvUP0g0h7DreXiPivj5SXN2uSg-9nzE0,10073
90
+ klaude_code/core/tool/truncation.py,sha256=guC5PZVFvl4ZLPa3nwM2L0q37vMaTkuxrOzXzx89qmQ,6604
90
91
  klaude_code/core/tool/web/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
92
  klaude_code/core/tool/web/mermaid_tool.md,sha256=Ketpxpr7lz8238p5Q7ZzcyWchWd4dU68u708-dxaZds,978
92
93
  klaude_code/core/tool/web/mermaid_tool.py,sha256=Ok0A27oHLnV1c__74bheUuy3wpqDJ1zaXUSxuuqsNPI,2630
93
94
  klaude_code/core/tool/web/web_fetch_tool.md,sha256=_5U-LSoI86rD26nPb0D5BQCr6hj8eyF0UELSiyLznCA,347
94
95
  klaude_code/core/tool/web/web_fetch_tool.py,sha256=iu6kM_-90K8mqHbK9Loui96vICV7d8rmtss68rcFqw0,4958
95
- klaude_code/core/turn.py,sha256=0Pc8GI2tuY2wukCPxCrWvuPlhhZRfXcrduNrDG0yeG8,9517
96
+ klaude_code/core/turn.py,sha256=Vh2hAbB6l5ohkMbRMONaOAJQ0MYzKZnz4ZRrECt27VM,9761
96
97
  klaude_code/llm/__init__.py,sha256=b4AsqnrMIs0a5qR_ti6rZcHwFzAReTwOW96EqozEoSo,287
97
98
  klaude_code/llm/anthropic/__init__.py,sha256=PWETvaeNAAX3ue0ww1uRUIxTJG0RpWiutkn7MlwKxBs,67
98
- klaude_code/llm/anthropic/client.py,sha256=1gk4Fkd4FvEJjt1Ryta9uP-mMN7ZYX4zqNgxkyK0QT8,9605
99
+ klaude_code/llm/anthropic/client.py,sha256=J0uv_tGHq2V5A_LuaJOVHXW6vARdZxsWOvzO6PdW4JQ,9742
99
100
  klaude_code/llm/anthropic/input.py,sha256=qPo4nmhnhSfLqef4UUVoIz8EjoXTxvlsrfsc_6qqM_s,8039
100
- klaude_code/llm/client.py,sha256=km3wN3qoVBmo8azmTNjD2lOhUBtkQTlPDHBsYbjO_NU,1489
101
+ klaude_code/llm/client.py,sha256=ouYk2LivxLec_vBrkDNL0eY-dLiTpw2VqY5TAF0aD4E,853
101
102
  klaude_code/llm/codex/__init__.py,sha256=8vN2j2ezWB_UVpfqQ8ooStsBeLL5SY4SUMXOXdWiMaI,132
102
- klaude_code/llm/codex/client.py,sha256=t-A5kzyqowNIuec1hLlrcYzLnAzTEtVF30wjEKKeg80,4928
103
- klaude_code/llm/input_common.py,sha256=purxHHMo_yahNvv0Y1pH7WmfTfZgZqUqyo2JvdFiVO0,8526
103
+ klaude_code/llm/codex/client.py,sha256=0BAOiLAdk2PxBEYuC_TGOs4_h6yfNZr1YWuf1lzkBxM,5329
104
+ klaude_code/llm/input_common.py,sha256=-tvMg7QNkyy8EJ_ZTQ-V9ei6-VdD06zCBXQuFSNRa3o,8526
104
105
  klaude_code/llm/openai_compatible/__init__.py,sha256=ACGpnki7k53mMcCl591aw99pm9jZOZk0ghr7atOfNps,81
105
- klaude_code/llm/openai_compatible/client.py,sha256=R4T0KhQb-gpyczJfUG1y42l4_K_IsIWHFIPLtPZ6iwQ,7597
106
+ klaude_code/llm/openai_compatible/client.py,sha256=DD1tnVqPIicmlG4tK0dlYgLkY_7vaZL8OvqYNRK6fu0,7846
106
107
  klaude_code/llm/openai_compatible/input.py,sha256=rtWVjpwb9tLrinucezmncQXet8MerUxE5Gxc32sfDr4,3750
107
- klaude_code/llm/openai_compatible/stream_processor.py,sha256=ckOBWZ_iUqgcESD5pnvjqJxvPI7YA4k9DYZkZ37KbmE,3388
108
+ klaude_code/llm/openai_compatible/stream_processor.py,sha256=EOJeoWlQGHrDj6chMclflj9RMqFgE1X7cdieQ5U5rZI,3415
108
109
  klaude_code/llm/openai_compatible/tool_call_accumulator.py,sha256=kuw3ceDgenQz2Ccc9KYqBkDo6F1sDb5Aga6m41AIECA,4071
109
110
  klaude_code/llm/openrouter/__init__.py,sha256=_As8lHjwj6vapQhLorZttTpukk5ZiCdhFdGT38_ASPo,69
110
- klaude_code/llm/openrouter/client.py,sha256=tFb6e0iNz-72pygnmtKnNeQUQ2zY5ui1vTPcho99NCg,7835
111
+ klaude_code/llm/openrouter/client.py,sha256=uW16ZM-QaZM4hlD9DcWqmg6PafoTN-I9lPZu9ubPWvU,8798
111
112
  klaude_code/llm/openrouter/input.py,sha256=2GuDVHd_74ZtHQyFyTGhZqtWjM7m5GYqFtKf--AvmlI,5059
112
- klaude_code/llm/openrouter/reasoning_handler.py,sha256=TYIHdwMopi8DVqOpeN3vpyp-GcWOZgTeRnT5QvlK70U,8100
113
- klaude_code/llm/registry.py,sha256=bbxZ_Mb7C2xCk_OVUQoZnsyPgmO3tbfJ292qaCtr1Ts,1763
113
+ klaude_code/llm/openrouter/reasoning_handler.py,sha256=r8I2F-oFTCkqJpINv74SCQZXwAuQZym7wJi5ScSe6hs,3378
114
+ klaude_code/llm/registry.py,sha256=grgHetTd-lSxTXiY689QW_Zd6voaid7qBqSnulpg_fE,1734
114
115
  klaude_code/llm/responses/__init__.py,sha256=WsiyvnNiIytaYcaAqNiB8GI-5zcpjjeODPbMlteeFjA,67
115
- klaude_code/llm/responses/client.py,sha256=hcFbDgUJPMZsAR8kSxfshuAEAVXJOZL2FIxVqZ1ku90,9359
116
+ klaude_code/llm/responses/client.py,sha256=OdvnFeEOUp5aYX5hEVVZzJ8aSB5t2sfBCVNOElSMSIY,9908
116
117
  klaude_code/llm/responses/input.py,sha256=noNmalXvxw6UXo6ngkhFBroECxK6igmgEQ49YVhY0xg,6049
117
- klaude_code/llm/usage.py,sha256=3FWDQZeM2LKXt1eeP2K40lkjtwovZP6SLCYlBJ0NV8Y,5647
118
+ klaude_code/llm/usage.py,sha256=cq6yZNSKBhRVVjFqBYJQrK3mw9ZSLXaTpbDeal-BjBQ,4205
118
119
  klaude_code/protocol/__init__.py,sha256=aGUgzhYqvhuT3Mk2vj7lrHGriH4h9TSbqV1RsRFAZjQ,194
119
- klaude_code/protocol/commands.py,sha256=ulHcHvvRbJosmp51l-xNio8ImDEI8uVmG17wVH2kg90,580
120
- klaude_code/protocol/events.py,sha256=exOriAIxdIzS7WDKCw3am-uw1egx_8tVbvcgO6s3nMI,3562
121
- klaude_code/protocol/llm_param.py,sha256=Hjq8Z-3nGhAJovf-lcsNc0kBVGRDWKe910J5lZwQfq4,4424
122
- klaude_code/protocol/model.py,sha256=UFcnBlpVYj8Kbd13h8Lo0It6Yy8ddVcXmdiiXHOZEx8,12351
120
+ klaude_code/protocol/commands.py,sha256=WX7EW3DbZs7oV7zhnKXHQhDZdIZTN35MTBJ4hWMAHjM,606
121
+ klaude_code/protocol/events.py,sha256=BLs1cnU86kJhVC2OzHwweZTUf8BPRaNQpgELo7udeKQ,3698
122
+ klaude_code/protocol/llm_param.py,sha256=cb4ubLq21PIsMOC8WJb0aid12z_sT1b7FsbNJMr-jLg,4255
123
+ klaude_code/protocol/model.py,sha256=Gd2nUhJC4mj5l2x6oDH9Sho8iY32hHgWLa_q8wDlquk,12312
123
124
  klaude_code/protocol/op.py,sha256=hdQTzD6zAsRMJJFaLOPvDX9gokhtIBSYNQuZ20TusI4,2824
124
125
  klaude_code/protocol/op_handler.py,sha256=_lnv3-RxKkrTfGTNBlQ23gbHJBEtMLC8O48SYWDtPjE,843
125
- klaude_code/protocol/sub_agent.py,sha256=NZib4kubDY8Js7toE6G2eKDNH4sWrmVYnH9FSTqKkZI,13666
126
+ klaude_code/protocol/sub_agent.py,sha256=FXhM_k5zw57eppx8JaizViqPEmg3QZuKFxkrQiRlO24,13693
126
127
  klaude_code/protocol/tools.py,sha256=hkjVirnQqGTJS46IWvVKXWR4usPPUgDZDnm34LzAVSc,348
127
128
  klaude_code/session/__init__.py,sha256=oXcDA5w-gJCbzmlF8yuWy3ezIW9DgFBNUs-gJHUJ-Rc,121
128
- klaude_code/session/export.py,sha256=1awi_cyZGRVnrzHMTpR_eeDsLkJqRI5QdqhvWd8anas,25149
129
- klaude_code/session/selector.py,sha256=HTboyzih7V8zbZoSsArJ-GVC1EnXTGocHJwFmZfbeSg,2567
130
- klaude_code/session/session.py,sha256=vm7I-IODBQr7JNkdx2jWfvDZgiLzMRrb0HBebfz7wnU,20051
129
+ klaude_code/session/export.py,sha256=3xyY0F39SbIAf1-h2IO_anNMfjBasncNJZXHh2STGow,24643
130
+ klaude_code/session/selector.py,sha256=gijwWQkSV20XYP3Fxr27mFXuqP4ChY2DQm_YuBOTQKw,2888
131
+ klaude_code/session/session.py,sha256=j53g9Wr8teY9MElPxZjJ2gaaRBUoX9JnRDAg2U8Togg,20009
131
132
  klaude_code/session/templates/export_session.html,sha256=jvyVM_ZrRoQIqWslfmo6ASprVYLhbOtT_QTzgkrdXHs,46389
132
- klaude_code/trace/__init__.py,sha256=B-S4qdCj8W88AaC_gVmhTaejH6eLYClBVh2Q6aGAVBk,184
133
- klaude_code/trace/log.py,sha256=0K0uek2KWq0zkUZijcO-TBM6STLe-h_8IIW0lx7V7ZA,4865
134
- klaude_code/ui/__init__.py,sha256=AL1Ro0u8ObNPMj4sci_U4zakG7IpnI3bie-C63E2QPI,2873
133
+ klaude_code/trace/__init__.py,sha256=EaHC0t4UfM9ypFEJIW9APvcsWOBOoOsQQH2ZQdi5aoI,184
134
+ klaude_code/trace/log.py,sha256=DarddpDAHdSdsVVah-MrXP9vrVKKIAK9VurgztKOd6I,4874
135
+ klaude_code/ui/__init__.py,sha256=XuEQsFUkJet8HI04cRmNLwnHOUqaPCRy4hF7PJnIfCY,2737
135
136
  klaude_code/ui/core/__init__.py,sha256=2NakrTDcxem5D0atyEY_Rxv1BbKCeZweF63L6AAq6r8,23
136
137
  klaude_code/ui/core/display.py,sha256=NwFQ9oKi8i3T5EsYDRrTpGBr3BZI0Ggns37JuQEOH54,3540
137
138
  klaude_code/ui/core/input.py,sha256=GqEos_VKRpfzQg0LQvr3210gzu2mw0_7OpPyNXmF3LI,2533
138
- klaude_code/ui/core/stage_manager.py,sha256=ozKYS213_RpsgYxF9mIDcTObrxqkqbE3Ao6CDhnES2E,1559
139
+ klaude_code/ui/core/stage_manager.py,sha256=QeKIbeqlQk4TwwjCirXdv6Yp__-kxL58ytgYVUTYdkY,1711
139
140
  klaude_code/ui/modes/__init__.py,sha256=ByDPbyYYU4o5kdnEes3b1VEV173RI9XAXyzkFbrApEY,26
140
141
  klaude_code/ui/modes/debug/__init__.py,sha256=1-1tAk7FtENdYzExSttYdHiJ-qH3DIQ5yYJ51ms2uSg,13
141
142
  klaude_code/ui/modes/debug/display.py,sha256=11I-JN9OEz2zBIqhEXctSUaDO1Z0nT_cG8R78jIBftk,1067
142
143
  klaude_code/ui/modes/exec/__init__.py,sha256=RsYa-DmDJj6g7iXb4H9mm2_Cu-KDQOD10RJd3yhVf_k,12
143
144
  klaude_code/ui/modes/exec/display.py,sha256=m2kkgaUoGD9rEVUmcm7Vs_PyAI2iruKCJYRhANjSsKo,1965
144
- klaude_code/ui/modes/repl/__init__.py,sha256=JursXYxevw0hrezE-urGo25962InIXVPj_uYnPafN-U,1528
145
+ klaude_code/ui/modes/repl/__init__.py,sha256=35a6SUiL1SDi2i43X2VjHQw97rR7yhbLBzkGI5aC6Bc,1526
145
146
  klaude_code/ui/modes/repl/clipboard.py,sha256=ZCpk7kRSXGhh0Q_BWtUUuSYT7ZOqRjAoRcg9T9n48Wo,5137
146
- klaude_code/ui/modes/repl/completers.py,sha256=V6pxi61w1z0B1eDliudahBQJ6wkPXAGI4AaBg8J0XtE,18283
147
- klaude_code/ui/modes/repl/display.py,sha256=v-Jxe7MWpOCEsx9FFEzqKaIg0jLS7ZU9bevooBjxxEQ,2242
148
- klaude_code/ui/modes/repl/event_handler.py,sha256=oReGpdmqgrNmwOMehykscZS2t_XzTWcCvyxZq28MxCc,18604
147
+ klaude_code/ui/modes/repl/completers.py,sha256=SQA-ktOWc42ly1vjEvdeWrTuImR7u1kEM_nMMCqkIHY,18251
148
+ klaude_code/ui/modes/repl/display.py,sha256=0u4ISeOoYjynF7InYyV-PMOZqP44QBbjYOLOL18V0c0,2245
149
+ klaude_code/ui/modes/repl/event_handler.py,sha256=-dr1eNavx-19RxXdqdvNy3TFzf4KED9Sp2DRGMuoT5o,21153
149
150
  klaude_code/ui/modes/repl/input_prompt_toolkit.py,sha256=EAIAtcL9EHVPmVK6oOHg0xCeZ0IOnG5S5KsaL85OHOk,6368
150
- klaude_code/ui/modes/repl/key_bindings.py,sha256=Px-QdRHkzvb2fDGg5d3JHic5ieiGiPcXorPJ5bAM8dI,7801
151
- klaude_code/ui/modes/repl/renderer.py,sha256=G7K9HXqFKLdEvWgz3JpruJk02RBULqq7-GSu_gCkP-A,11962
151
+ klaude_code/ui/modes/repl/key_bindings.py,sha256=Fxz9Ey2SnOHvfleMeSYVduxuofY0Yo-97hMRs-OMe-o,7800
152
+ klaude_code/ui/modes/repl/renderer.py,sha256=al0-zJnEyVCZgTxSBf777jMFG5hm7WwMeuXX8zm9JY0,11989
152
153
  klaude_code/ui/renderers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
153
154
  klaude_code/ui/renderers/assistant.py,sha256=Dxy6v4pX28RyWhnrjBteY8_NvDIi_jQa-j0mWt-eqWY,569
154
155
  klaude_code/ui/renderers/common.py,sha256=TPH7LCbeJGqB8ArTsVitqJHEyOxHU6nwnRtvF04nLJ4,184
155
156
  klaude_code/ui/renderers/developer.py,sha256=fE-9LRzVLiKnK3ctFcuDDP_eehohhsgPCH_tYaOp-xs,6378
156
- klaude_code/ui/renderers/diffs.py,sha256=P--aLjvZy4z77FDx6uM9LlIYVjYlyZwj0MncdJTO2AA,7691
157
+ klaude_code/ui/renderers/diffs.py,sha256=iPQxxZW1JGPwtTdCKMEkDlNb5trLm9tdWjfMRmtj6yQ,7616
157
158
  klaude_code/ui/renderers/errors.py,sha256=c_fbnoNOnvuI3Bb24IujwV8Mpes-qWS_xCWfAcBvg6A,517
158
- klaude_code/ui/renderers/metadata.py,sha256=ESX8d3DOeT1MRHx9eX9yFUwwOMENZaivrbudKhgAHHk,9881
159
+ klaude_code/ui/renderers/metadata.py,sha256=QQev-3S3AS7GuWUhekjbnFJj3cFcbNxNtEYxzAl1Xm8,9121
159
160
  klaude_code/ui/renderers/sub_agent.py,sha256=3cyn95pu4IniOJyWW4vfQ-X72iLufQ3LT9CkAQMuF4k,2686
160
161
  klaude_code/ui/renderers/thinking.py,sha256=jzDfvYuwpafndmBMMb6UumGxur9iFi_X0LYIo08eDlw,1179
161
162
  klaude_code/ui/renderers/tools.py,sha256=iVgTo10gzS981LmbLU36Zt17JMW3YTPYRqA3mUJ_d8c,19975
162
163
  klaude_code/ui/renderers/user_input.py,sha256=rDdOYvbgJ6oePQAtyTCK-KhARfLKytpTZboZ-cFIuJQ,2603
163
164
  klaude_code/ui/rich/__init__.py,sha256=olvMm2SteyKioOqUJbEoav2TsDr_mtKqkSaifNumjwc,27
164
165
  klaude_code/ui/rich/live.py,sha256=Uid0QAZG7mHb4KrCF8p9c9n1nHLHzW75xSqcLZ4bLWY,2098
165
- klaude_code/ui/rich/markdown.py,sha256=5RFIWsYDuC2q_ngD4mG48viGyDT70FF8-7SwSvgPA_M,11674
166
+ klaude_code/ui/rich/markdown.py,sha256=itfqiiS3ysxtt22hYJtHIlmAWay1F8TmlQhZexiQ4F8,11684
166
167
  klaude_code/ui/rich/quote.py,sha256=tZcxN73SfDBHF_qk0Jkh9gWBqPBn8VLp9RF36YRdKEM,1123
167
- klaude_code/ui/rich/searchable_text.py,sha256=Adr2EFewX1UInypz-vMOUgZP9gk3Zk8_d2utWhV3K90,2452
168
- klaude_code/ui/rich/status.py,sha256=sHTenGYERGiLwnkwdGFjFw9WDbbnMSPTKeEJiSYYNaU,8503
169
- klaude_code/ui/rich/theme.py,sha256=JAlFXwcZYbHv0vcuweWnzu4vR2CDe-mqH24CEtNBnL4,10159
168
+ klaude_code/ui/rich/searchable_text.py,sha256=DCVZgEFv7_ergAvT2v7XrfQAUXUzhmAwuVAchlIx8RY,2448
169
+ klaude_code/ui/rich/status.py,sha256=r5KmymTKo-FsOVBJxp8orhqFT8GP8Mf1DHkw1icnuOA,8522
170
+ klaude_code/ui/rich/theme.py,sha256=JEGCdceK0DEF9MfYttM_DzqeOXTZyGY4Z-RVaFHpIvY,10127
170
171
  klaude_code/ui/terminal/__init__.py,sha256=GIMnsEcIAGT_vBHvTlWEdyNmAEpruyscUA6M_j3GQZU,1412
171
172
  klaude_code/ui/terminal/color.py,sha256=M-i09DVlLAhAyhQjfeAi7OipoGi1p_OVkaZxeRfykY0,7135
172
- klaude_code/ui/terminal/control.py,sha256=Yq0giFYIBOIJp1KQTvqAglQXKzSbwO5f2fI_b8EoTcU,4997
173
- klaude_code/ui/terminal/notifier.py,sha256=YOQXZYrjUZFLRt1iIoHxDKYoQUS-760lpydBGw9OxbM,3227
173
+ klaude_code/ui/terminal/control.py,sha256=6SGNwxorP3jMW9xqnZy2BC0OsJd4DSrS13O3t6YlZzs,4916
174
+ klaude_code/ui/terminal/notifier.py,sha256=wkRM66d98Oh6PujnN4bB7NiQxIYEHqQXverMKU43H5E,3187
174
175
  klaude_code/ui/terminal/progress_bar.py,sha256=MDnhPbqCnN4GDgLOlxxOEVZPDwVC_XL2NM5sl1MFNcQ,2133
175
176
  klaude_code/ui/utils/__init__.py,sha256=YEsCLjbCPaPza-UXTPUMTJTrc9BmNBUP5CbFWlshyOQ,15
176
- klaude_code/ui/utils/common.py,sha256=xzw-Mgj0agxrf22QxpH7YzVIpkMXIRY6SgXWtLYF0yU,2881
177
- klaude_code/ui/utils/debouncer.py,sha256=TFF1z7B7-FxONEigkYohhShDlqo4cOcqydE9zz7JBHc,1270
177
+ klaude_code/ui/utils/common.py,sha256=UCQMun23l-EREr3xkl-Bjx67yfi9ctRTw2gcGPsOM2c,2881
178
+ klaude_code/ui/utils/debouncer.py,sha256=x8AYxf48Xd6tabBvH8cVl1bIV8FzyeDo3HswDjtNfwU,1266
178
179
  klaude_code/version.py,sha256=x2OeiACPdzS87EWtaSi_UP13htm81Uq7mlV3kFy5jko,4815
179
- klaude_code-1.2.11.dist-info/WHEEL,sha256=eh7sammvW2TypMMMGKgsM83HyA_3qQ5Lgg3ynoecH3M,79
180
- klaude_code-1.2.11.dist-info/entry_points.txt,sha256=7CWKjolvs6dZiYHpelhA_FRJ-sVDh43eu3iWuOhKc_w,53
181
- klaude_code-1.2.11.dist-info/METADATA,sha256=YP1lR039UswgCpr7YjhigkdUh21LrVaJtrnCzQg4h60,5067
182
- klaude_code-1.2.11.dist-info/RECORD,,
180
+ klaude_code-1.2.13.dist-info/WHEEL,sha256=eh7sammvW2TypMMMGKgsM83HyA_3qQ5Lgg3ynoecH3M,79
181
+ klaude_code-1.2.13.dist-info/entry_points.txt,sha256=7CWKjolvs6dZiYHpelhA_FRJ-sVDh43eu3iWuOhKc_w,53
182
+ klaude_code-1.2.13.dist-info/METADATA,sha256=Dd4HDH8jjYucxSDHlXUoS_hjGbEP0FPXunLqyDvftgY,5067
183
+ klaude_code-1.2.13.dist-info/RECORD,,