klaude-code 2.24.0__tar.gz → 2.25.0__tar.gz

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 (767) hide show
  1. {klaude_code-2.24.0 → klaude_code-2.25.0}/PKG-INFO +104 -28
  2. {klaude_code-2.24.0 → klaude_code-2.25.0}/README.md +102 -26
  3. {klaude_code-2.24.0 → klaude_code-2.25.0}/pyproject.toml +9 -3
  4. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/agent.py +7 -15
  5. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/agent_profile.py +44 -67
  6. klaude_code-2.25.0/src/klaude_code/agent/attachment_prompts.py +110 -0
  7. klaude_code-2.25.0/src/klaude_code/agent/attachments.py +968 -0
  8. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/bash_mode.py +5 -3
  9. klaude_code-2.25.0/src/klaude_code/agent/cache_break_detection.py +270 -0
  10. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/AGENTS.md +2 -2
  11. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/compaction.py +29 -22
  12. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/prompts.py +4 -0
  13. klaude_code-2.25.0/src/klaude_code/agent/handoff/__init__.py +4 -0
  14. klaude_code-2.25.0/src/klaude_code/agent/handoff/handoff.py +196 -0
  15. klaude_code-2.25.0/src/klaude_code/agent/handoff/manager.py +24 -0
  16. klaude_code-2.25.0/src/klaude_code/agent/handoff/prompts.py +30 -0
  17. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/memory.py +53 -26
  18. klaude_code-2.25.0/src/klaude_code/agent/rewind/__init__.py +3 -0
  19. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_agent_ops.py +16 -16
  20. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_config_ops.py +29 -9
  21. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_dispatcher.py +9 -9
  22. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_llm.py +2 -2
  23. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_sub_agent.py +32 -21
  24. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/task.py +150 -61
  25. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/turn.py +15 -43
  26. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/auth_flow.py +1 -47
  27. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/runtime.py +9 -9
  28. {klaude_code-2.24.0/src/klaude_code/core/control → klaude_code-2.25.0/src/klaude_code/app}/runtime_facade.py +7 -7
  29. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/base.py +1 -1
  30. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/env.py +2 -2
  31. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/auth_cmd.py +2 -4
  32. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/config_cmd.py +2 -7
  33. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/cost_cmd.py +9 -20
  34. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/list_model.py +15 -0
  35. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/oauth_usage.py +2 -179
  36. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/web_cmd.py +7 -0
  37. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/assets/builtin_config.yaml +163 -257
  38. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/builtin_config.py +1 -0
  39. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/config.py +39 -41
  40. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/formatters.py +3 -0
  41. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/model_matcher.py +2 -5
  42. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/sub_agent_model_helper.py +7 -7
  43. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/thinking.py +4 -8
  44. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/const.py +40 -7
  45. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/event_relay.py +1 -1
  46. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/session_actor.py +6 -19
  47. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/session_registry.py +7 -7
  48. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/anthropic/client.py +6 -0
  49. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/anthropic/input.py +43 -14
  50. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/bedrock_anthropic/client.py +8 -0
  51. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google/input.py +20 -9
  52. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/image.py +32 -10
  53. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/input_common.py +21 -15
  54. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_responses/client.py +15 -123
  55. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_responses/input.py +19 -15
  56. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/registry.py +0 -1
  57. klaude_code-2.25.0/src/klaude_code/prompts/base-system-prompt-gpt.md +99 -0
  58. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/prompts/base-system-prompt.md +9 -5
  59. klaude_code-2.25.0/src/klaude_code/prompts/extended-thinking-prompt.md +3 -0
  60. klaude_code-2.25.0/src/klaude_code/prompts/following-conventions-prompt.md +7 -0
  61. klaude_code-2.25.0/src/klaude_code/prompts/git-workspace-hygiene-prompt.md +15 -0
  62. klaude_code-2.25.0/src/klaude_code/prompts/prompt-sub-agent-finder.md +51 -0
  63. klaude_code-2.25.0/src/klaude_code/prompts/prompt-sub-agent-review.md +133 -0
  64. klaude_code-2.25.0/src/klaude_code/prompts/prompt-sub-agent-simplifier.md +94 -0
  65. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/prompts/system_prompt.py +85 -62
  66. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/events.py +4 -4
  67. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/llm_param.py +3 -1
  68. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/model.py +18 -5
  69. klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/AGENTS.md +54 -0
  70. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/sub_agent/__init__.py +18 -16
  71. klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/finder.py +25 -0
  72. klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/general_purpose.py +51 -0
  73. klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/review.py +35 -0
  74. klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/simplifier.py +28 -0
  75. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/tools.py +1 -1
  76. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/user_interaction.py +5 -0
  77. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/session.py +64 -35
  78. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/store.py +13 -14
  79. klaude_code-2.25.0/src/klaude_code/skill/assets/SOURCES.md +5 -0
  80. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/.gitignore +4 -0
  81. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/README.md +63 -0
  82. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/SKILL.md +552 -0
  83. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/.gitignore +3 -0
  84. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/color-palette.md +67 -0
  85. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/element-templates.md +182 -0
  86. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/json-schema.md +71 -0
  87. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/pyproject.toml +7 -0
  88. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/render_excalidraw.py +189 -0
  89. klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/render_template.html +57 -0
  90. klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/SKILL.md +99 -0
  91. klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/references/builtin-providers.md +111 -0
  92. klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/references/config-file.md +129 -0
  93. klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/references/memory-files.md +88 -0
  94. klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/references/skill-system.md +116 -0
  95. klaude_code-2.25.0/src/klaude_code/skill/assets/notion-cli/LICENSE.md +21 -0
  96. klaude_code-2.25.0/src/klaude_code/skill/assets/notion-cli/SKILL.md +87 -0
  97. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/LICENSE.txt +201 -0
  98. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/NOTICE.txt +14 -0
  99. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/SKILL.md +147 -0
  100. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/agents/openai.yaml +6 -0
  101. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/assets/playwright-small.svg +3 -0
  102. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/assets/playwright.png +0 -0
  103. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/references/cli.md +116 -0
  104. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/references/workflows.md +95 -0
  105. klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/scripts/playwright_cli.sh +25 -0
  106. klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/SKILL.md +168 -0
  107. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/render-mermaid/package.json +2 -2
  108. klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/references/config/first-time-setup.md +118 -0
  109. klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/references/config/preferences-schema.md +75 -0
  110. klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/references/templates/standalone.html +28 -0
  111. klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/references/troubleshooting.md +64 -0
  112. klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/scripts/render_mermaid.js +414 -0
  113. klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/scripts/setup.sh +70 -0
  114. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/skill-creator/SKILL.md +115 -23
  115. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/LICENSE.txt +201 -0
  116. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/SKILL.md +153 -0
  117. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/agents/openai.yaml +6 -0
  118. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/assets/sora-small.svg +4 -0
  119. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/assets/sora.png +0 -0
  120. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/cinematic-shots.md +53 -0
  121. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/cli.md +248 -0
  122. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/codex-network.md +28 -0
  123. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/prompting.md +137 -0
  124. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/sample-prompts.md +95 -0
  125. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/social-ads.md +42 -0
  126. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/troubleshooting.md +58 -0
  127. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/video-api.md +45 -0
  128. klaude_code-2.25.0/src/klaude_code/skill/assets/sora/scripts/sora.py +970 -0
  129. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/loader.py +124 -12
  130. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/system_skills.py +7 -0
  131. klaude_code-2.25.0/src/klaude_code/tool/AGENTS.md +95 -0
  132. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/__init__.py +2 -2
  133. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/agent_tool.md +7 -1
  134. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/agent_tool.py +20 -42
  135. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/ask_user_question_tool.md +3 -1
  136. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/ask_user_question_tool.py +29 -6
  137. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/context.py +15 -3
  138. klaude_code-2.25.0/src/klaude_code/tool/file/_utils.py +175 -0
  139. klaude_code-2.25.0/src/klaude_code/tool/file/apply_patch_tool.md +23 -0
  140. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/apply_patch_tool.py +12 -6
  141. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/edit_tool.py +65 -68
  142. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/read_tool.md +2 -0
  143. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/read_tool.py +222 -63
  144. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/write_tool.py +42 -10
  145. klaude_code-2.25.0/src/klaude_code/tool/handoff_tool.md +10 -0
  146. klaude_code-2.25.0/src/klaude_code/tool/handoff_tool.py +55 -0
  147. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/rewind_tool.py +3 -3
  148. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/shell/bash_tool.py +35 -10
  149. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/todo/todo_write_tool.py +3 -3
  150. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/tool_abc.py +1 -1
  151. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/tool_registry.py +1 -1
  152. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/tool_runner.py +4 -12
  153. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/web_fetch_tool.py +7 -7
  154. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/web_search_tool.py +12 -12
  155. klaude_code-2.25.0/src/klaude_code/tui/command/AGENTS.md +72 -0
  156. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/auth_selector.py +37 -20
  157. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/copy_cmd.py +3 -3
  158. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/refresh_cmd.py +1 -1
  159. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/commands.py +5 -5
  160. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/command_output.py +1 -1
  161. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/common.py +7 -0
  162. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/developer.py +39 -21
  163. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/errors.py +7 -3
  164. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/metadata.py +22 -22
  165. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/cjk_wrap.py +4 -1
  166. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/markdown.py +18 -8
  167. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/status.py +39 -89
  168. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/theme.py +40 -20
  169. klaude_code-2.25.0/src/klaude_code/tui/components/sub_agent.py +57 -0
  170. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/tools.py +35 -35
  171. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/user_input.py +33 -15
  172. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/welcome.py +46 -13
  173. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/display.py +5 -2
  174. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/AGENTS.md +1 -1
  175. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/completers.py +30 -59
  176. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/prompt_toolkit.py +14 -0
  177. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/machine.py +123 -93
  178. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/renderer.py +55 -14
  179. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/runner.py +30 -4
  180. klaude_code-2.25.0/src/klaude_code/tui/status_runtime.py +45 -0
  181. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/__init__.py +22 -0
  182. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/ask_user_question.py +181 -21
  183. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/image.py +6 -0
  184. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/notifier.py +0 -42
  185. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/selector.py +1 -0
  186. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/app.py +3 -3
  187. klaude_code-2.25.0/src/klaude_code/web/dist/assets/highlighted-body-OFNGDK62-TNlyXRyQ.js +1 -0
  188. klaude_code-2.25.0/src/klaude_code/web/dist/assets/index-CyWhMJuk.css +1 -0
  189. klaude_code-2.25.0/src/klaude_code/web/dist/assets/index-DHZ5AY_v.js +2486 -0
  190. klaude_code-2.25.0/src/klaude_code/web/dist/assets/pierre-dark-DF2SEV7i.js +1 -0
  191. klaude_code-2.25.0/src/klaude_code/web/dist/assets/pierre-light-DOlZxES8.js +1 -0
  192. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/index.html +2 -2
  193. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/live_events.py +2 -2
  194. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/sessions.py +1 -1
  195. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/ws.py +7 -11
  196. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/server.py +4 -2
  197. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/session_live.py +1 -1
  198. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/state.py +2 -2
  199. klaude_code-2.24.0/src/klaude_code/auth/claude/__init__.py +0 -6
  200. klaude_code-2.24.0/src/klaude_code/auth/claude/exceptions.py +0 -9
  201. klaude_code-2.24.0/src/klaude_code/auth/claude/oauth.py +0 -177
  202. klaude_code-2.24.0/src/klaude_code/auth/claude/token_manager.py +0 -26
  203. klaude_code-2.24.0/src/klaude_code/core/agent/reminders.py +0 -442
  204. klaude_code-2.24.0/src/klaude_code/core/prompts/prompt-sub-agent-explore.md +0 -16
  205. klaude_code-2.24.0/src/klaude_code/core/prompts/prompt-sub-agent.md +0 -12
  206. klaude_code-2.24.0/src/klaude_code/core/rewind/__init__.py +0 -3
  207. klaude_code-2.24.0/src/klaude_code/core/tool/file/_utils.py +0 -36
  208. klaude_code-2.24.0/src/klaude_code/core/tool/file/apply_patch_tool.md +0 -1
  209. klaude_code-2.24.0/src/klaude_code/core/tool/report_back_tool.py +0 -87
  210. klaude_code-2.24.0/src/klaude_code/llm/claude/__init__.py +0 -3
  211. klaude_code-2.24.0/src/klaude_code/llm/claude/client.py +0 -100
  212. klaude_code-2.24.0/src/klaude_code/protocol/sub_agent/AGENTS.md +0 -18
  213. klaude_code-2.24.0/src/klaude_code/protocol/sub_agent/explore.py +0 -21
  214. klaude_code-2.24.0/src/klaude_code/protocol/sub_agent/general_purpose.py +0 -17
  215. klaude_code-2.24.0/src/klaude_code/skill/assets/SOURCES.md +0 -3
  216. klaude_code-2.24.0/src/klaude_code/skill/assets/deslop/SKILL.md +0 -26
  217. klaude_code-2.24.0/src/klaude_code/skill/assets/executing-plans/SKILL.md +0 -76
  218. klaude_code-2.24.0/src/klaude_code/skill/assets/render-mermaid/SKILL.md +0 -35
  219. klaude_code-2.24.0/src/klaude_code/skill/assets/render-mermaid/bun.lock +0 -182
  220. klaude_code-2.24.0/src/klaude_code/skill/assets/render-mermaid/scripts/render_mermaid.js +0 -431
  221. klaude_code-2.24.0/src/klaude_code/skill/assets/writing-plans/SKILL.md +0 -79
  222. klaude_code-2.24.0/src/klaude_code/tui/components/rich/code_panel.py +0 -146
  223. klaude_code-2.24.0/src/klaude_code/tui/components/sub_agent.py +0 -104
  224. klaude_code-2.24.0/src/klaude_code/tui/terminal/progress_bar.py +0 -93
  225. klaude_code-2.24.0/src/klaude_code/web/dist/assets/highlighted-body-B3W2YXNL-qIJJBbdQ.js +0 -1
  226. klaude_code-2.24.0/src/klaude_code/web/dist/assets/index-BL6qbKwg.css +0 -1
  227. klaude_code-2.24.0/src/klaude_code/web/dist/assets/index-DBqWrFD_.js +0 -1895
  228. klaude_code-2.24.0/src/klaude_code/web/dist/assets/pierre-dark-BXuwtOqb.js +0 -1
  229. klaude_code-2.24.0/src/klaude_code/web/dist/assets/pierre-light-dckrK0oj.js +0 -1
  230. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/__init__.py +0 -0
  231. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/__init__.py +0 -0
  232. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/__init__.py +0 -0
  233. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/overflow.py +0 -0
  234. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/loaded_skills.py +0 -0
  235. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/rewind/manager.py +0 -0
  236. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/session_stats.py +0 -0
  237. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/session_title.py +0 -0
  238. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/__init__.py +0 -0
  239. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/log_viewer.html +0 -0
  240. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/log_viewer.py +0 -0
  241. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/ports/__init__.py +0 -0
  242. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/ports/display.py +0 -0
  243. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/ports/input.py +0 -0
  244. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/ports/interaction.py +0 -0
  245. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/AGENTS.md +0 -0
  246. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/__init__.py +0 -0
  247. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/__init__.py +0 -0
  248. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/exceptions.py +0 -0
  249. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/jwt_utils.py +0 -0
  250. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/oauth.py +0 -0
  251. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/token_manager.py +0 -0
  252. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/copilot/__init__.py +0 -0
  253. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/copilot/exceptions.py +0 -0
  254. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/copilot/oauth.py +0 -0
  255. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/copilot/token_manager.py +0 -0
  256. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/__init__.py +0 -0
  257. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/debug.py +0 -0
  258. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/main.py +0 -0
  259. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/self_update.py +0 -0
  260. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/__init__.py +0 -0
  261. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/assets/__init__.py +0 -0
  262. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/__init__.py +0 -0
  263. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/event_bus.py +0 -0
  264. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/session_meta_relay.py +0 -0
  265. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/user_interaction.py +0 -0
  266. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/__init__.py +0 -0
  267. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/anthropic/__init__.py +0 -0
  268. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/bedrock_anthropic/__init__.py +0 -0
  269. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/client.py +0 -0
  270. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/copilot/__init__.py +0 -0
  271. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/copilot/client.py +0 -0
  272. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google/__init__.py +0 -0
  273. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google/client.py +0 -0
  274. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google_vertex/__init__.py +0 -0
  275. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google_vertex/client.py +0 -0
  276. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/json_stable.py +0 -0
  277. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_codex/__init__.py +0 -0
  278. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_codex/client.py +0 -0
  279. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_compatible/__init__.py +0 -0
  280. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_compatible/client.py +0 -0
  281. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_compatible/input.py +0 -0
  282. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_compatible/stream.py +0 -0
  283. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_responses/__init__.py +0 -0
  284. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openrouter/__init__.py +0 -0
  285. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openrouter/client.py +0 -0
  286. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openrouter/input.py +0 -0
  287. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openrouter/reasoning.py +0 -0
  288. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/stream_parts.py +0 -0
  289. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/usage.py +0 -0
  290. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/log.py +0 -0
  291. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/prompts}/__init__.py +0 -0
  292. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/prompts/auto-memory-prompt.md +0 -0
  293. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/__init__.py +0 -0
  294. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/message.py +0 -0
  295. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/model_id.py +0 -0
  296. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/op.py +0 -0
  297. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/op_handler.py +0 -0
  298. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/__init__.py +0 -0
  299. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/codec.py +0 -0
  300. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/selector.py +0 -0
  301. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/AGENTS.md +0 -0
  302. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/__init__.py +0 -0
  303. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/.git +0 -0
  304. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/.gitignore +0 -0
  305. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/SKILL.md +0 -0
  306. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/authentication.md +0 -0
  307. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/commands.md +0 -0
  308. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/profiling.md +0 -0
  309. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/proxy-support.md +0 -0
  310. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/session-management.md +0 -0
  311. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/snapshot-refs.md +0 -0
  312. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/video-recording.md +0 -0
  313. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/templates/authenticated-session.sh +0 -0
  314. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/templates/capture-workflow.sh +0 -0
  315. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/templates/form-automation.sh +0 -0
  316. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/download-yt-sub/SKILL.md +0 -0
  317. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/download-yt-sub/scripts/download_subtitles.sh +0 -0
  318. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/frontend-design/SKILL.md +0 -0
  319. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/LICENSE.txt +0 -0
  320. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/SKILL.md +0 -0
  321. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/cli.md +0 -0
  322. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/codex-network.md +0 -0
  323. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/image-api.md +0 -0
  324. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/prompting.md +0 -0
  325. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/sample-prompts.md +0 -0
  326. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/scripts/image_gen.py +0 -0
  327. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/SKILL.md +0 -0
  328. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/references/cli.md +0 -0
  329. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/references/gemini-api.md +0 -0
  330. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/references/prompting.md +0 -0
  331. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/references/sample-prompts.md +0 -0
  332. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/references/vertex-setup.md +0 -0
  333. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/scripts/gemini_image_gen.py +0 -0
  334. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/SKILL.md +0 -0
  335. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/forms.md +0 -0
  336. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/reference.md +0 -0
  337. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/check_bounding_boxes.py +0 -0
  338. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/check_fillable_fields.py +0 -0
  339. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/convert_pdf_to_images.py +0 -0
  340. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/create_validation_image.py +0 -0
  341. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/extract_form_field_info.py +0 -0
  342. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/extract_form_structure.py +0 -0
  343. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/fill_fillable_fields.py +0 -0
  344. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/fill_pdf_form_with_annotations.py +0 -0
  345. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/SKILL.md +0 -0
  346. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/3d.md +0 -0
  347. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/animations.md +0 -0
  348. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/assets/charts-bar-chart.tsx +0 -0
  349. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +0 -0
  350. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +0 -0
  351. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/assets.md +0 -0
  352. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/audio-visualization.md +0 -0
  353. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/audio.md +0 -0
  354. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/calculate-metadata.md +0 -0
  355. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/can-decode.md +0 -0
  356. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/charts.md +0 -0
  357. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/compositions.md +0 -0
  358. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/display-captions.md +0 -0
  359. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/extract-frames.md +0 -0
  360. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/ffmpeg.md +0 -0
  361. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/fonts.md +0 -0
  362. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/get-audio-duration.md +0 -0
  363. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/get-video-dimensions.md +0 -0
  364. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/get-video-duration.md +0 -0
  365. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/gifs.md +0 -0
  366. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/images.md +0 -0
  367. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/import-srt-captions.md +0 -0
  368. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/light-leaks.md +0 -0
  369. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/lottie.md +0 -0
  370. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/maps.md +0 -0
  371. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/measuring-dom-nodes.md +0 -0
  372. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/measuring-text.md +0 -0
  373. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/parameters.md +0 -0
  374. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/sequencing.md +0 -0
  375. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/sfx.md +0 -0
  376. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/subtitles.md +0 -0
  377. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/tailwind.md +0 -0
  378. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/text-animations.md +0 -0
  379. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/timing.md +0 -0
  380. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/transcribe-captions.md +0 -0
  381. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/transitions.md +0 -0
  382. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/transparent-videos.md +0 -0
  383. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/trimming.md +0 -0
  384. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/videos.md +0 -0
  385. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/voiceover.md +0 -0
  386. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/render-mermaid/.gitignore +0 -0
  387. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/session-logs/SKILL.md +0 -0
  388. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/web-search/SKILL.md +0 -0
  389. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/manager.py +0 -0
  390. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/__init__.py +0 -0
  391. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/apply_patch.py +0 -0
  392. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/diff_builder.py +0 -0
  393. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/edit_tool.md +0 -0
  394. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/write_tool.md +0 -0
  395. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/offload.py +0 -0
  396. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/rewind_tool.md +0 -0
  397. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/shell/__init__.py +0 -0
  398. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/shell/bash_tool.md +0 -0
  399. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/shell/command_safety.py +0 -0
  400. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/todo/__init__.py +0 -0
  401. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/todo/todo_write_tool.md +0 -0
  402. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/todo/todo_write_tool_raw.md +0 -0
  403. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/__init__.py +0 -0
  404. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/external_content.py +0 -0
  405. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/ssrf.py +0 -0
  406. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/web_cache.py +0 -0
  407. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/web_fetch_tool.md +0 -0
  408. {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/web_search_tool.md +0 -0
  409. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/__init__.py +0 -0
  410. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/__init__.py +0 -0
  411. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/command_abc.py +0 -0
  412. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/compact_cmd.py +0 -0
  413. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/continue_cmd.py +0 -0
  414. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/debug_cmd.py +0 -0
  415. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/fork_session_cmd.py +0 -0
  416. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/login_cmd.py +0 -0
  417. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/logout_cmd.py +0 -0
  418. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/model_cmd.py +0 -0
  419. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/model_picker.py +0 -0
  420. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/new_cmd.py +0 -0
  421. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/registry.py +0 -0
  422. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/status_cmd.py +0 -0
  423. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/sub_agent_model_cmd.py +0 -0
  424. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/thinking_cmd.py +0 -0
  425. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/types.py +0 -0
  426. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/web_cmd.py +0 -0
  427. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/__init__.py +0 -0
  428. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/bash_syntax.py +0 -0
  429. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/diffs.py +0 -0
  430. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/__init__.py +0 -0
  431. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/live.py +0 -0
  432. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/quote.py +0 -0
  433. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/thinking.py +0 -0
  434. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/__init__.py +0 -0
  435. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/drag_drop.py +0 -0
  436. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/images.py +0 -0
  437. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/key_bindings.py +0 -0
  438. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/paste.py +0 -0
  439. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/color.py +0 -0
  440. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/control.py +0 -0
  441. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/session_selector.py +0 -0
  442. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/title.py +0 -0
  443. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/update.py +0 -0
  444. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/__init__.py +0 -0
  445. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/display.py +0 -0
  446. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/abap-BdImnpbu.js +0 -0
  447. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/actionscript-3-CoDkCxhg.js +0 -0
  448. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ada-bCR0ucgS.js +0 -0
  449. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/andromeeda-C4gqWexZ.js +0 -0
  450. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/angular-html-CU67Zn6k.js +0 -0
  451. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/angular-ts-BwZT4LLn.js +0 -0
  452. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/apache-Pmp26Uib.js +0 -0
  453. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/apex-D8_7TLub.js +0 -0
  454. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/apl-dKokRX4l.js +0 -0
  455. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/applescript-Co6uUVPk.js +0 -0
  456. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ara-BRHolxvo.js +0 -0
  457. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/asciidoc-Ve4PFQV2.js +0 -0
  458. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/asm-D_Q5rh1f.js +0 -0
  459. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/astro-CbQHKStN.js +0 -0
  460. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/aurora-x-D-2ljcwZ.js +0 -0
  461. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/awk-DMzUqQB5.js +0 -0
  462. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ayu-dark-DYE7WIF3.js +0 -0
  463. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ayu-light-BA47KaF1.js +0 -0
  464. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ayu-mirage-32ctXXKs.js +0 -0
  465. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ballerina-BFfxhgS-.js +0 -0
  466. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bat-BkioyH1T.js +0 -0
  467. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/beancount-k_qm7-4y.js +0 -0
  468. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/berry-uYugtg8r.js +0 -0
  469. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bibtex-CHM0blh-.js +0 -0
  470. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bicep-Bmn6On1c.js +0 -0
  471. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bird2-DPOp833l.js +0 -0
  472. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/blade-D4QpJJKB.js +0 -0
  473. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bsl-BO_Y6i37.js +0 -0
  474. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/c-BIGW1oBm.js +0 -0
  475. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/c3-eo99z4R2.js +0 -0
  476. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cadence-Bv_4Rxtq.js +0 -0
  477. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cairo-KRGpt6FW.js +0 -0
  478. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/catppuccin-frappe-DFWUc33u.js +0 -0
  479. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/catppuccin-latte-C9dUb6Cb.js +0 -0
  480. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/catppuccin-macchiato-DQyhUUbL.js +0 -0
  481. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/catppuccin-mocha-D87Tk5Gz.js +0 -0
  482. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/clarity-D53aC0YG.js +0 -0
  483. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/clojure-P80f7IUj.js +0 -0
  484. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cmake-D1j8_8rp.js +0 -0
  485. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cobol-nwyudZeR.js +0 -0
  486. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/codeowners-Bp6g37R7.js +0 -0
  487. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/codeql-DsOJ9woJ.js +0 -0
  488. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/coffee-Ch7k5sss.js +0 -0
  489. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/common-lisp-Cg-RD9OK.js +0 -0
  490. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/coq-DkFqJrB1.js +0 -0
  491. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cpp-CofmeUqb.js +0 -0
  492. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/crystal-tKQVLTB8.js +0 -0
  493. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/csharp-COcwbKMJ.js +0 -0
  494. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/css-DPfMkruS.js +0 -0
  495. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/csv-fuZLfV_i.js +0 -0
  496. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cue-D82EKSYY.js +0 -0
  497. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cypher-COkxafJQ.js +0 -0
  498. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/d-85-TOEBH.js +0 -0
  499. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dark-plus-C3mMm8J8.js +0 -0
  500. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dart-CF10PKvl.js +0 -0
  501. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dax-CEL-wOlO.js +0 -0
  502. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/desktop-BmXAJ9_W.js +0 -0
  503. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/diff-D97Zzqfu.js +0 -0
  504. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/docker-BcOcwvcX.js +0 -0
  505. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dotenv-Da5cRb03.js +0 -0
  506. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dracula-BzJJZx-M.js +0 -0
  507. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dracula-soft-BXkSAIEj.js +0 -0
  508. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dream-maker-BtqSS_iP.js +0 -0
  509. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/edge-BkV0erSs.js +0 -0
  510. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/elixir-CDX3lj18.js +0 -0
  511. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/elm-DbKCFpqz.js +0 -0
  512. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/emacs-lisp-C9XAeP06.js +0 -0
  513. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/erb-B12qg9BL.js +0 -0
  514. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/erlang-DsQrWhSR.js +0 -0
  515. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/everforest-dark-BgDCqdQA.js +0 -0
  516. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/everforest-light-C8M2exoo.js +0 -0
  517. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fennel-BYunw83y.js +0 -0
  518. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fish-BvzEVeQv.js +0 -0
  519. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fluent-C4IJs8-o.js +0 -0
  520. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fortran-fixed-form-CkoXwp7k.js +0 -0
  521. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fortran-free-form-BxgE0vQu.js +0 -0
  522. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fsharp-CXgrBDvD.js +0 -0
  523. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gdresource-BOOCDP_w.js +0 -0
  524. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gdscript-C5YyOfLZ.js +0 -0
  525. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gdshader-DkwncUOv.js +0 -0
  526. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-cyrillic-zHIGg2nG.woff2 +0 -0
  527. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-italic-cyrillic-BAHUuRM7.woff2 +0 -0
  528. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-italic-latin-DPcoTQLg.woff2 +0 -0
  529. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-italic-latin-ext-E4_zqQR6.woff2 +0 -0
  530. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-latin-BSv3nOGs.woff2 +0 -0
  531. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-latin-ext-DavUKqbp.woff2 +0 -0
  532. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-cyrillic-BAE8rdXX.woff2 +0 -0
  533. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-italic-cyrillic-2vK9sKgQ.woff2 +0 -0
  534. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-italic-latin-Bq3uIZFr.woff2 +0 -0
  535. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-italic-latin-ext-BVvsJehH.woff2 +0 -0
  536. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-latin-B9bzV8FE.woff2 +0 -0
  537. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-latin-ext-CtwMEpPj.woff2 +0 -0
  538. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/genie-D0YGMca9.js +0 -0
  539. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gherkin-DyxjwDmM.js +0 -0
  540. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/git-commit-F4YmCXRG.js +0 -0
  541. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/git-rebase-r7XF79zn.js +0 -0
  542. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-dark-DHJKELXO.js +0 -0
  543. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-dark-default-Cuk6v7N8.js +0 -0
  544. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-dark-dimmed-DH5Ifo-i.js +0 -0
  545. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-dark-high-contrast-E3gJ1_iC.js +0 -0
  546. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-light-DAi9KRSo.js +0 -0
  547. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-light-default-D7oLnXFd.js +0 -0
  548. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-light-high-contrast-BfjtVDDH.js +0 -0
  549. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gleam-BspZqrRM.js +0 -0
  550. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/glimmer-js-Rg0-pVw9.js +0 -0
  551. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/glimmer-ts-U6CK756n.js +0 -0
  552. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/glsl-DplSGwfg.js +0 -0
  553. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gn-n2N0HUVH.js +0 -0
  554. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gnuplot-DdkO51Og.js +0 -0
  555. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/go-CxLEBnE3.js +0 -0
  556. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/graphql-ChdNCCLP.js +0 -0
  557. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/groovy-gcz8RCvz.js +0 -0
  558. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-dark-hard-CFHQjOhq.js +0 -0
  559. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-dark-medium-GsRaNv29.js +0 -0
  560. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-dark-soft-CVdnzihN.js +0 -0
  561. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-light-hard-CH1njM8p.js +0 -0
  562. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-light-medium-DRw_LuNl.js +0 -0
  563. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-light-soft-hJgmCMqR.js +0 -0
  564. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hack-CaT9iCJl.js +0 -0
  565. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/haml-B8DHNrY2.js +0 -0
  566. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/handlebars-BL8al0AC.js +0 -0
  567. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/haskell-Df6bDoY_.js +0 -0
  568. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/haxe-CzTSHFRz.js +0 -0
  569. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hcl-BWvSN4gD.js +0 -0
  570. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hjson-D5-asLiD.js +0 -0
  571. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hlsl-D3lLCCz7.js +0 -0
  572. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/horizon-BUw7H-hv.js +0 -0
  573. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/horizon-bright-Cn-bp-IR.js +0 -0
  574. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/houston-DnULxvSX.js +0 -0
  575. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/html-GMplVEZG.js +0 -0
  576. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/html-derivative-BFtXZ54Q.js +0 -0
  577. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/http-jrhK8wxY.js +0 -0
  578. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hurl-irOxFIW8.js +0 -0
  579. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hxml-Bvhsp5Yf.js +0 -0
  580. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hy-DFXneXwc.js +0 -0
  581. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/imba-DGztddWO.js +0 -0
  582. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ini-BEwlwnbL.js +0 -0
  583. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/java-CylS5w8V.js +0 -0
  584. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/javascript-wDzz0qaB.js +0 -0
  585. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jinja-4LBKfQ-Z.js +0 -0
  586. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jison-wvAkD_A8.js +0 -0
  587. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/json-Cp-IABpG.js +0 -0
  588. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/json5-C9tS-k6U.js +0 -0
  589. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jsonc-Des-eS-w.js +0 -0
  590. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jsonl-DcaNXYhu.js +0 -0
  591. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jsonnet-DFQXde-d.js +0 -0
  592. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jssm-C2t-YnRu.js +0 -0
  593. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jsx-g9-lgVsj.js +0 -0
  594. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/julia-CxzCAyBv.js +0 -0
  595. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/just-Cw27pwNe.js +0 -0
  596. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kanagawa-dragon-CkXjmgJE.js +0 -0
  597. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kanagawa-lotus-CfQXZHmo.js +0 -0
  598. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kanagawa-wave-DWedfzmr.js +0 -0
  599. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kdl-DV7GczEv.js +0 -0
  600. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kotlin-BdnUsdx6.js +0 -0
  601. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kusto-DZf3V79B.js +0 -0
  602. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/laserwave-DUszq2jm.js +0 -0
  603. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/latex-CWtU0Tv5.js +0 -0
  604. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/lean-BZvkOJ9d.js +0 -0
  605. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/less-B1dDrJ26.js +0 -0
  606. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/light-plus-B7mTdjB0.js +0 -0
  607. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/liquid-DYVedYrR.js +0 -0
  608. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/llvm-DjAJT7YJ.js +0 -0
  609. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/log-2UxHyX5q.js +0 -0
  610. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/logo-BtOb2qkB.js +0 -0
  611. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/lua-BaeVxFsk.js +0 -0
  612. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/luau-C-HG3fhB.js +0 -0
  613. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/make-CHLpvVh8.js +0 -0
  614. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/markdown-Cvjx9yec.js +0 -0
  615. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/marko-CnJfTvn9.js +0 -0
  616. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-D5KoaKCx.js +0 -0
  617. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-darker-BfHTSMKl.js +0 -0
  618. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-lighter-B0m2ddpp.js +0 -0
  619. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-ocean-CyktbL80.js +0 -0
  620. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-palenight-Csfq5Kiy.js +0 -0
  621. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/matlab-D7o27uSR.js +0 -0
  622. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mdc-BMNejdWA.js +0 -0
  623. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mdx-Cmh6b_Ma.js +0 -0
  624. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mermaid-mWjccvbQ.js +0 -0
  625. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/min-dark-CafNBF8u.js +0 -0
  626. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/min-light-CTRr51gU.js +0 -0
  627. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mipsasm-CKIfxQSi.js +0 -0
  628. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mojo-rZm6bMo-.js +0 -0
  629. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/monokai-D4h5O-jR.js +0 -0
  630. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/moonbit-_H4v1dQx.js +0 -0
  631. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/move-IF9eRakj.js +0 -0
  632. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/narrat-DRg8JJMk.js +0 -0
  633. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nextflow-Zz6hmt5N.js +0 -0
  634. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nextflow-groovy-BeH2EWoN.js +0 -0
  635. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nginx-BpAMiNFr.js +0 -0
  636. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/night-owl-C39BiMTA.js +0 -0
  637. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/night-owl-light-CMTm3GFP.js +0 -0
  638. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nim-CVrawwO9.js +0 -0
  639. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nix-CwoSXNpI.js +0 -0
  640. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nord-Ddv68eIx.js +0 -0
  641. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nushell-Cz2AlsmD.js +0 -0
  642. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/objective-c-DXmwc3jG.js +0 -0
  643. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/objective-cpp-CLxacb5B.js +0 -0
  644. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ocaml-C0hk2d4L.js +0 -0
  645. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/odin-BBf5iR-q.js +0 -0
  646. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/one-dark-pro-DVMEJ2y_.js +0 -0
  647. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/one-light-C3Wv6jpd.js +0 -0
  648. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/openscad-C4EeE6gA.js +0 -0
  649. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/pascal-D93ZcfNL.js +0 -0
  650. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/perl-C0TMdlhV.js +0 -0
  651. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/php-Dhbhpdrm.js +0 -0
  652. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/pkl-u5AG7uiY.js +0 -0
  653. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/plastic-3e1v2bzS.js +0 -0
  654. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/plsql-ChMvpjG-.js +0 -0
  655. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/po-BTJTHyun.js +0 -0
  656. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/poimandres-CS3Unz2-.js +0 -0
  657. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/polar-C0HS_06l.js +0 -0
  658. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/postcss-CXtECtnM.js +0 -0
  659. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/powerquery-CEu0bR-o.js +0 -0
  660. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/powershell-Dpen1YoG.js +0 -0
  661. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/prisma-Dd19v3D-.js +0 -0
  662. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/prolog-CbFg5uaA.js +0 -0
  663. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/proto-C7zT0LnQ.js +0 -0
  664. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/pug-CGlum2m_.js +0 -0
  665. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/puppet-BMWR74SV.js +0 -0
  666. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/purescript-CklMAg4u.js +0 -0
  667. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/python-B6aJPvgy.js +0 -0
  668. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/qml-3beO22l8.js +0 -0
  669. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/qmldir-C8lEn-DE.js +0 -0
  670. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/qss-IeuSbFQv.js +0 -0
  671. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/r-Dspwwk_N.js +0 -0
  672. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/racket-BqYA7rlc.js +0 -0
  673. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/raku-DXvB9xmW.js +0 -0
  674. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/razor-Uh8Bk_45.js +0 -0
  675. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/red-bN70gL4F.js +0 -0
  676. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/reg-C-SQnVFl.js +0 -0
  677. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/regexp-CDVJQ6XC.js +0 -0
  678. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rel-C3B-1QV4.js +0 -0
  679. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/riscv-BM1_JUlF.js +0 -0
  680. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ron-D8l8udqQ.js +0 -0
  681. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rose-pine-dawn-DHQR4-dF.js +0 -0
  682. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rose-pine-moon-D4_iv3hh.js +0 -0
  683. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rose-pine-qdsjHGoJ.js +0 -0
  684. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rosmsg-BJDFO7_C.js +0 -0
  685. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rst-BrH8l1NY.js +0 -0
  686. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ruby-Dw2BHqvy.js +0 -0
  687. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rust-B1yitclQ.js +0 -0
  688. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sas-cz2c8ADy.js +0 -0
  689. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sass-Cj5Yp3dK.js +0 -0
  690. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/scala-C151Ov-r.js +0 -0
  691. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/scheme-C98Dy4si.js +0 -0
  692. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/scss-OYdSNvt2.js +0 -0
  693. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sdbl-DVxCFoDh.js +0 -0
  694. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/shaderlab-Dg9Lc6iA.js +0 -0
  695. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/shellscript-Yzrsuije.js +0 -0
  696. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/shellsession-BADoaaVG.js +0 -0
  697. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/slack-dark-BthQWCQV.js +0 -0
  698. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/slack-ochin-DqwNpetd.js +0 -0
  699. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/smalltalk-BERRCDM3.js +0 -0
  700. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/snazzy-light-Bw305WKR.js +0 -0
  701. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/solarized-dark-DXbdFlpD.js +0 -0
  702. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/solarized-light-L9t79GZl.js +0 -0
  703. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/solidity-rGO070M0.js +0 -0
  704. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/soy-Brmx7dQM.js +0 -0
  705. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sparql-rVzFXLq3.js +0 -0
  706. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/splunk-BtCnVYZw.js +0 -0
  707. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sql-BLtJtn59.js +0 -0
  708. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ssh-config-_ykCGR6B.js +0 -0
  709. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/stata-BH5u7GGu.js +0 -0
  710. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/stylus-BEDo0Tqx.js +0 -0
  711. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/surrealql-Bq5Q-fJD.js +0 -0
  712. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/svelte-C_ipcX3V.js +0 -0
  713. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/swift-D82vCrfD.js +0 -0
  714. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/synthwave-84-CbfX1IO0.js +0 -0
  715. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/system-verilog-CnnmHF94.js +0 -0
  716. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/systemd-4A_iFExJ.js +0 -0
  717. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/talonscript-CkByrt1z.js +0 -0
  718. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tasl-QIJgUcNo.js +0 -0
  719. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tcl-dwOrl1Do.js +0 -0
  720. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/templ-P3uqSqPl.js +0 -0
  721. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/terraform-BETggiCN.js +0 -0
  722. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tex-idrVyKtj.js +0 -0
  723. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tokyo-night-hegEt444.js +0 -0
  724. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/toml-vGWfd6FD.js +0 -0
  725. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ts-tags-zn1MmPIZ.js +0 -0
  726. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tsv-B_m7g4N7.js +0 -0
  727. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tsx-COt5Ahok.js +0 -0
  728. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/turtle-BsS91CYL.js +0 -0
  729. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/twig-DNn4PbVi.js +0 -0
  730. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/typescript-BPQ3VLAy.js +0 -0
  731. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/typespec-BGHnOYBU.js +0 -0
  732. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/typst-DHCkPAjA.js +0 -0
  733. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/v-BcVCzyr7.js +0 -0
  734. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vala-CsfeWuGM.js +0 -0
  735. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vb-D17OF-Vu.js +0 -0
  736. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/verilog-BQ8w6xss.js +0 -0
  737. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vesper-DU1UobuO.js +0 -0
  738. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vhdl-CeAyd5Ju.js +0 -0
  739. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/viml-CJc9bBzg.js +0 -0
  740. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vitesse-black-Bkuqu6BP.js +0 -0
  741. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vitesse-dark-D0r3Knsf.js +0 -0
  742. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vitesse-light-CVO1_9PV.js +0 -0
  743. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vue-DN_0RTcg.js +0 -0
  744. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vue-html-AaS7Mt5G.js +0 -0
  745. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vue-vine-CQOfvN7w.js +0 -0
  746. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vyper-CDx5xZoG.js +0 -0
  747. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wasm-CG6Dc4jp.js +0 -0
  748. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wasm-MzD3tlZU.js +0 -0
  749. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wenyan-BV7otONQ.js +0 -0
  750. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wgsl-Dx-B1_4e.js +0 -0
  751. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wikitext-BhOHFoWU.js +0 -0
  752. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wit-5i3qLPDT.js +0 -0
  753. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wolfram-lXgVvXCa.js +0 -0
  754. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/xml-sdJ4AIDG.js +0 -0
  755. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/xsl-CtQFsRM5.js +0 -0
  756. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/yaml-Buea-lGh.js +0 -0
  757. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/zenscript-DVFEvuxE.js +0 -0
  758. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/zig-VOosw3JB.js +0 -0
  759. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/favicon.svg +0 -0
  760. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/file_access.py +0 -0
  761. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/interaction.py +0 -0
  762. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/__init__.py +0 -0
  763. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/config.py +0 -0
  764. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/files.py +0 -0
  765. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/skills.py +0 -0
  766. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/session_access.py +0 -0
  767. {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/session_index.py +0 -0
@@ -1,8 +1,8 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: klaude-code
3
- Version: 2.24.0
3
+ Version: 2.25.0
4
4
  Summary: Minimal code agent CLI
5
- Requires-Dist: anthropic>=0.66.0
5
+ Requires-Dist: anthropic[bedrock]>=0.66.0
6
6
  Requires-Dist: chardet>=5.2.0,<6
7
7
  Requires-Dist: diff-match-patch>=20241021
8
8
  Requires-Dist: filelock>=3.20.3
@@ -32,14 +32,17 @@ Minimal code agent CLI.
32
32
  - **Keep reasoning item in context**: Interleaved thinking support
33
33
  - **Model-aware tools**: Claude Code tool set for Opus, `apply_patch` for GPT-5/Codex
34
34
  - **Reminders**: Cooldown-based todo tracking, instruction reinforcement and external file change reminder
35
- - **Sub-agents**: Task, Explore
36
- - **Structured sub-agent output**: Main agent defines JSON schema and get schema-compliant responses via constrained decoding
35
+ - **Sub-agents**: General Purpose, Finder, Code Reviewer, Code Simplifier (+ fork-context variant)
37
36
  - **Recursive `@file` mentions**: Circular dependency protection, relative path resolution
38
37
  - **External file sync**: Monitoring for external edits (linter, manual)
39
38
  - **Interrupt handling**: Ctrl+C preserves partial responses and synthesizes tool cancellation results
40
39
  - **Output truncation**: Large outputs saved to file system with snapshot links
41
40
  - **Agent Skills**: Built-in + user + project Agent Skills (with implicit invocation by Skill tool or explicit invocation by typing `//skill` or `/skill`)
42
- - **Sessions**: Resumable with `--continue`
41
+ - **Prompt caching**: Append-only message history maximizes prefix cache hits (cached tokens cost 10% of base input)
42
+ - **Context management**: Auto-compaction, Rewind (rollback to checkpoint), Handoff (compress and continue in fresh context)
43
+ - **Auto memory**: Persistent cross-session memory per project (`~/.klaude/projects/<project>/memory/`)
44
+ - **Web UI**: Browser-based interface via `klaude web` or `/web` slash command
45
+ - **Sessions**: Resumable with `--continue`, forkable with `/fork-session`
43
46
  - **Extras**: Slash commands, sub-agents, image paste, terminal notifications, auto-theming
44
47
 
45
48
  ## Installation
@@ -118,8 +121,10 @@ export OPENAI_API_KEY=sk-xxx # GPT models
118
121
  export OPENROUTER_API_KEY=sk-or-xxx # OpenRouter (multi-provider)
119
122
  export DEEPSEEK_API_KEY=sk-xxx # DeepSeek models
120
123
  export MOONSHOT_API_KEY=sk-xxx # Moonshot/Kimi models
121
- export BRAVE_API_KEY=BSA-xxx # Brave Search (optional, WebSearch provider)
122
- export EXA_API_KEY=exa-xxx # Exa Search (optional, WebSearch provider)
124
+ export MINIMAX_API_KEY=xxx # MiniMax models
125
+ export GOOGLE_API_KEY=xxx # Google Gemini models (or GEMINI_API_KEY)
126
+ export EXA_API_KEY=exa-xxx # Exa Search (optional, WebSearch provider, preferred)
127
+ export BRAVE_API_KEY=BSA-xxx # Brave Search (optional, WebSearch provider, fallback)
123
128
 
124
129
  # Then just run:
125
130
  klaude
@@ -151,9 +156,9 @@ Klaude tries these entries in order and uses the first available model. `fast_mo
151
156
  | openrouter | `OPENROUTER_API_KEY` | gpt-5.3-codex, gpt-5.3-codex-xhigh, gpt-5.4-high, gpt-5.4-xhigh, kimi, haiku, sonnet, sonnet-no-thinking, opus, gemini-pro, gemini-flash, grok, minimax, glm |
152
157
  | google | `GOOGLE_API_KEY` or `GEMINI_API_KEY` | gemini-pro, gemini-flash |
153
158
  | google-vertex | `GOOGLE_APPLICATION_CREDENTIALS`, `GOOGLE_CLOUD_PROJECT`, `GOOGLE_CLOUD_LOCATION` | gemini-pro, gemini-flash |
154
- | bedrock | `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_REGION` | sonnet |
155
159
  | deepseek | `DEEPSEEK_API_KEY` | deepseek |
156
160
  | moonshot | `MOONSHOT_API_KEY` | kimi |
161
+ | minimax | `MINIMAX_API_KEY` | m2.7, m2.7:highspeed |
157
162
  | cerebras | `CEREBRAS_API_KEY` | glm |
158
163
  | claude-max | N/A (OAuth) | sonnet, sonnet-no-thinking, opus, haiku |
159
164
  | codex | N/A (OAuth) | gpt-5.3-codex, gpt-5.3-codex-xhigh, gpt-5.4-high, gpt-5.4-xhigh |
@@ -167,7 +172,9 @@ List all configured providers and models:
167
172
  klaude list
168
173
  ```
169
174
 
170
- Models from providers without a valid API key are shown as dimmed/unavailable.
175
+ Models from providers without valid credentials are shown as dimmed/unavailable.
176
+
177
+ Bedrock is supported as a custom provider rather than a built-in one. See `docs/bedrock-setup.md`.
171
178
 
172
179
  #### Authentication
173
180
 
@@ -184,6 +191,7 @@ klaude auth login google # Set GOOGLE_API_KEY
184
191
  klaude auth login openrouter # Set OPENROUTER_API_KEY
185
192
  klaude auth login deepseek # Set DEEPSEEK_API_KEY
186
193
  klaude auth login moonshot # Set MOONSHOT_API_KEY
194
+ klaude auth login minimax # Set MINIMAX_API_KEY
187
195
 
188
196
  # OAuth login for subscription-based providers
189
197
  klaude auth login codex # ChatGPT Pro subscription
@@ -257,17 +265,23 @@ provider_list:
257
265
 
258
266
  ##### Sub-agent Model Configuration
259
267
 
260
- `sub_agent_models` only accepts sub-agent types. Current supported keys are:
268
+ `sub_agent_models` accepts registered sub-agent type names as keys. Current supported keys are:
261
269
 
262
- - `general-purpose` (Task sub-agent)
263
- - `explore` (Explore sub-agent)
270
+ - `general-purpose` - Autonomous multi-step task executor
271
+ - `general-purpose-fork-context` - Same as above but inherits parent conversation history
272
+ - `finder` - Fast codebase search and exploration
273
+ - `code-reviewer` - Identifies bugs in proposed changes
274
+ - `code-simplifier` - Refines code for clarity and consistency
264
275
 
265
- If a sub-agent type is not configured, it falls back to the main agent model.
276
+ If a sub-agent type is not configured, it falls back to the main agent model. Each key also accepts a list for fallback ordering.
266
277
 
267
278
  ```yaml
268
279
  sub_agent_models:
269
280
  general-purpose: sonnet
270
- explore: haiku
281
+ finder:
282
+ - haiku
283
+ - gemini-flash
284
+ code-reviewer: opus
271
285
  ```
272
286
 
273
287
  ##### Supported Protocols
@@ -276,9 +290,13 @@ sub_agent_models:
276
290
  - `openai` - OpenAI Chat Completion API
277
291
  - `responses` - OpenAI Responses API (for o-series, GPT-5, Codex)
278
292
  - `codex_oauth` - OpenAI Codex CLI (OAuth-based, for ChatGPT Pro subscribers)
293
+ - `github_copilot_oauth` - GitHub Copilot (OAuth-based)
279
294
  - `openrouter` - OpenRouter API (handling `reasoning_details` for interleaved thinking)
280
295
  - `google` - Google Gemini API
281
- - `bedrock` - AWS Bedrock for Claude(uses AWS credentials instead of api_key)
296
+ - `google_vertex` - Google Vertex AI (uses GCP credentials)
297
+ - `bedrock` - AWS Bedrock for Claude (uses AWS credentials instead of api_key)
298
+
299
+ For a working Bedrock provider example, see `docs/bedrock-setup.md`.
282
300
 
283
301
  List configured providers and models:
284
302
 
@@ -308,19 +326,20 @@ Inside the interactive session (`klaude`), use these commands to streamline your
308
326
  - `/...` supports mixed completion for commands + skills (command names take priority on conflicts).
309
327
  - `//...` shows skill-only completion and triggers skills explicitly.
310
328
 
329
+ - `/copy` - Copy last assistant message to clipboard.
330
+ - `/compact` - Clear conversation history but keep a summary in context.
331
+ - `/fork-session` - Fork current session from a selected point.
332
+ - `/refresh-terminal` - Refresh terminal display.
333
+ - `/web` - Switch to web UI mode.
334
+ - `/new` - Start a new session (clears context).
311
335
  - `/model` - Switch the active LLM during the session.
312
- - `/thinking` - Configure model thinking/reasoning level.
313
- - `/clear` - Clear the current conversation context.
314
- - `/copy` - Copy last assistant message.
336
+ - `/sub-agent-model` - Configure sub-agent models at runtime.
337
+ - `/thinking` - Change thinking/reasoning level.
315
338
  - `/status` - Show session usage statistics (cost, tokens, model breakdown).
316
- - `/resume` - Select and resume a previous session.
317
- - `/fork-session` - Fork current session to a new session ID (supports interactive fork point selection).
318
- - `/export` - Export last assistant message to a temp Markdown file.
339
+ - `/login` - Login to provider or configure API key.
340
+ - `/logout` - Logout from provider.
341
+ - `/continue` - Continue current session without a new user message.
319
342
  - `/debug [filters]` - Toggle debug mode and configure debug filters.
320
- - `/init` - Bootstrap a new project structure or module.
321
- - `/dev-doc [feature]` - Generate a comprehensive execution plan for a feature.
322
- - `/terminal-setup` - Configure terminal for Shift+Enter support.
323
- - `/help` - List all available commands.
324
343
 
325
344
 
326
345
  ### Input Shortcuts
@@ -328,7 +347,7 @@ Inside the interactive session (`klaude`), use these commands to streamline your
328
347
  | Key | Action |
329
348
  | -------------------- | ------------------------------------------- |
330
349
  | `Enter` | Submit input |
331
- | `Shift+Enter` | Insert newline (requires `/terminal-setup`) |
350
+ | `Shift+Enter` | Insert newline (terminal-dependent) |
332
351
  | `Ctrl+J` | Insert newline |
333
352
  | `Ctrl+L` | Open model picker overlay |
334
353
  | `Ctrl+T` | Open thinking level picker overlay |
@@ -343,5 +362,62 @@ The main agent can spawn specialized sub-agents for specific tasks:
343
362
 
344
363
  | Sub-Agent | Purpose |
345
364
  |-----------|---------|
346
- | **Explore** | Fast codebase exploration - find files, search code, answer questions about the codebase |
347
- | **Task** | Handle complex multi-step tasks autonomously |
365
+ | **General Purpose** | Handle complex multi-step tasks autonomously |
366
+ | **General Purpose (Fork Context)** | Same as above, but inherits the parent agent's full conversation history |
367
+ | **Finder** | Fast codebase exploration - find files, search code, answer questions about the codebase |
368
+ | **Code Reviewer** | Identify real bugs in proposed changes |
369
+ | **Code Simplifier** | Refine recently changed code for clarity and consistency |
370
+
371
+ ### Web UI
372
+
373
+ Klaude includes a browser-based interface as an alternative to the terminal TUI.
374
+
375
+ ```bash
376
+ # Start web UI directly
377
+ klaude web
378
+
379
+ # With options
380
+ klaude web --port 9000 --host 0.0.0.0 --no-open
381
+ ```
382
+
383
+ You can also switch from TUI to web mid-session with the `/web` slash command. The web UI provides the same capabilities as the TUI: multi-session management, file browsing, tool execution, and real-time streaming.
384
+
385
+ ### Prompt Caching
386
+
387
+ Klaude is designed to maximize prefix cache hit rates across LLM API calls. Cached tokens are priced at ~10% of base input tokens, so high cache hit rates significantly reduce cost.
388
+
389
+ **Append-only message history.** The conversation history is strictly append-only. New messages, tool results, and attachments are always appended to the end of the message array, never inserted or modified in the middle. Any mutation to the head of the messages array (compressing old tool results, replacing images, reordering tool definitions) would invalidate the prefix cache and force a full re-tokenization.
390
+
391
+ Design choices that preserve prefix stability:
392
+ - **Stable system prompt**: The system prompt is composed of a static base prompt + stable tool strategy block + environment info, avoiding per-turn variation.
393
+ - **Stable JSON serialization**: Tool schemas and provider payloads use `canonicalize_json()` for deterministic key ordering across calls.
394
+ - **Cache control markers**: For Anthropic and OpenRouter (Claude models), `cache_control: {"type": "ephemeral"}` is placed on the system prompt and the last message part to hint the provider's caching boundary.
395
+ - **Compaction preserves prefix**: When context is compacted, the summary is prepended as a new first message while keeping the retained tail intact -- no existing message bytes are modified.
396
+ - **Fork-context sub-agents**: Sub-agents with `fork_context=True` inherit the parent's full system prompt and tool list to maximize prefix cache sharing.
397
+
398
+ The TUI displays cache hit rate per turn in the metadata line (e.g. `cache 12.5k (98%)`). Rates below 90% are highlighted as a warning.
399
+
400
+ ### Context Management
401
+
402
+ The agent automatically manages context window limits:
403
+
404
+ - **Auto-compaction**: When the conversation approaches the model's context limit, older messages are summarized and replaced with a compact summary. The agent also recovers from context overflow errors by compacting and retrying.
405
+ - **Rewind**: The agent can roll back the conversation to a previous checkpoint (automatically inserted at key points). File system changes are preserved; only conversation history is rewound.
406
+ - **Handoff**: The agent can compress the current conversation into a summary and continue in a fresh context. Useful for very long sessions where context quality degrades.
407
+
408
+ ### Auto Memory
409
+
410
+ Klaude maintains persistent memory per project across sessions. Memory files are stored in `~/.klaude/projects/<project-key>/memory/` with a `MEMORY.md` index file. The agent automatically loads relevant memories at session start and can save new memories during a session.
411
+
412
+ Memory types include user preferences, feedback/corrections, project context, and external references.
413
+
414
+ ### Project Configuration Files
415
+
416
+ Klaude reads instruction files from your project directory to customize agent behavior:
417
+
418
+ | File | Purpose |
419
+ |------|---------|
420
+ | `AGENTS.md` | Project-level instructions checked into version control (shared with team) |
421
+ | `CLAUDE.md` | Personal instructions (typically gitignored) |
422
+
423
+ These files are loaded automatically and injected into the system prompt. They can be placed at the project root or in subdirectories for scoped instructions.
@@ -7,14 +7,17 @@ Minimal code agent CLI.
7
7
  - **Keep reasoning item in context**: Interleaved thinking support
8
8
  - **Model-aware tools**: Claude Code tool set for Opus, `apply_patch` for GPT-5/Codex
9
9
  - **Reminders**: Cooldown-based todo tracking, instruction reinforcement and external file change reminder
10
- - **Sub-agents**: Task, Explore
11
- - **Structured sub-agent output**: Main agent defines JSON schema and get schema-compliant responses via constrained decoding
10
+ - **Sub-agents**: General Purpose, Finder, Code Reviewer, Code Simplifier (+ fork-context variant)
12
11
  - **Recursive `@file` mentions**: Circular dependency protection, relative path resolution
13
12
  - **External file sync**: Monitoring for external edits (linter, manual)
14
13
  - **Interrupt handling**: Ctrl+C preserves partial responses and synthesizes tool cancellation results
15
14
  - **Output truncation**: Large outputs saved to file system with snapshot links
16
15
  - **Agent Skills**: Built-in + user + project Agent Skills (with implicit invocation by Skill tool or explicit invocation by typing `//skill` or `/skill`)
17
- - **Sessions**: Resumable with `--continue`
16
+ - **Prompt caching**: Append-only message history maximizes prefix cache hits (cached tokens cost 10% of base input)
17
+ - **Context management**: Auto-compaction, Rewind (rollback to checkpoint), Handoff (compress and continue in fresh context)
18
+ - **Auto memory**: Persistent cross-session memory per project (`~/.klaude/projects/<project>/memory/`)
19
+ - **Web UI**: Browser-based interface via `klaude web` or `/web` slash command
20
+ - **Sessions**: Resumable with `--continue`, forkable with `/fork-session`
18
21
  - **Extras**: Slash commands, sub-agents, image paste, terminal notifications, auto-theming
19
22
 
20
23
  ## Installation
@@ -93,8 +96,10 @@ export OPENAI_API_KEY=sk-xxx # GPT models
93
96
  export OPENROUTER_API_KEY=sk-or-xxx # OpenRouter (multi-provider)
94
97
  export DEEPSEEK_API_KEY=sk-xxx # DeepSeek models
95
98
  export MOONSHOT_API_KEY=sk-xxx # Moonshot/Kimi models
96
- export BRAVE_API_KEY=BSA-xxx # Brave Search (optional, WebSearch provider)
97
- export EXA_API_KEY=exa-xxx # Exa Search (optional, WebSearch provider)
99
+ export MINIMAX_API_KEY=xxx # MiniMax models
100
+ export GOOGLE_API_KEY=xxx # Google Gemini models (or GEMINI_API_KEY)
101
+ export EXA_API_KEY=exa-xxx # Exa Search (optional, WebSearch provider, preferred)
102
+ export BRAVE_API_KEY=BSA-xxx # Brave Search (optional, WebSearch provider, fallback)
98
103
 
99
104
  # Then just run:
100
105
  klaude
@@ -126,9 +131,9 @@ Klaude tries these entries in order and uses the first available model. `fast_mo
126
131
  | openrouter | `OPENROUTER_API_KEY` | gpt-5.3-codex, gpt-5.3-codex-xhigh, gpt-5.4-high, gpt-5.4-xhigh, kimi, haiku, sonnet, sonnet-no-thinking, opus, gemini-pro, gemini-flash, grok, minimax, glm |
127
132
  | google | `GOOGLE_API_KEY` or `GEMINI_API_KEY` | gemini-pro, gemini-flash |
128
133
  | google-vertex | `GOOGLE_APPLICATION_CREDENTIALS`, `GOOGLE_CLOUD_PROJECT`, `GOOGLE_CLOUD_LOCATION` | gemini-pro, gemini-flash |
129
- | bedrock | `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_REGION` | sonnet |
130
134
  | deepseek | `DEEPSEEK_API_KEY` | deepseek |
131
135
  | moonshot | `MOONSHOT_API_KEY` | kimi |
136
+ | minimax | `MINIMAX_API_KEY` | m2.7, m2.7:highspeed |
132
137
  | cerebras | `CEREBRAS_API_KEY` | glm |
133
138
  | claude-max | N/A (OAuth) | sonnet, sonnet-no-thinking, opus, haiku |
134
139
  | codex | N/A (OAuth) | gpt-5.3-codex, gpt-5.3-codex-xhigh, gpt-5.4-high, gpt-5.4-xhigh |
@@ -142,7 +147,9 @@ List all configured providers and models:
142
147
  klaude list
143
148
  ```
144
149
 
145
- Models from providers without a valid API key are shown as dimmed/unavailable.
150
+ Models from providers without valid credentials are shown as dimmed/unavailable.
151
+
152
+ Bedrock is supported as a custom provider rather than a built-in one. See `docs/bedrock-setup.md`.
146
153
 
147
154
  #### Authentication
148
155
 
@@ -159,6 +166,7 @@ klaude auth login google # Set GOOGLE_API_KEY
159
166
  klaude auth login openrouter # Set OPENROUTER_API_KEY
160
167
  klaude auth login deepseek # Set DEEPSEEK_API_KEY
161
168
  klaude auth login moonshot # Set MOONSHOT_API_KEY
169
+ klaude auth login minimax # Set MINIMAX_API_KEY
162
170
 
163
171
  # OAuth login for subscription-based providers
164
172
  klaude auth login codex # ChatGPT Pro subscription
@@ -232,17 +240,23 @@ provider_list:
232
240
 
233
241
  ##### Sub-agent Model Configuration
234
242
 
235
- `sub_agent_models` only accepts sub-agent types. Current supported keys are:
243
+ `sub_agent_models` accepts registered sub-agent type names as keys. Current supported keys are:
236
244
 
237
- - `general-purpose` (Task sub-agent)
238
- - `explore` (Explore sub-agent)
245
+ - `general-purpose` - Autonomous multi-step task executor
246
+ - `general-purpose-fork-context` - Same as above but inherits parent conversation history
247
+ - `finder` - Fast codebase search and exploration
248
+ - `code-reviewer` - Identifies bugs in proposed changes
249
+ - `code-simplifier` - Refines code for clarity and consistency
239
250
 
240
- If a sub-agent type is not configured, it falls back to the main agent model.
251
+ If a sub-agent type is not configured, it falls back to the main agent model. Each key also accepts a list for fallback ordering.
241
252
 
242
253
  ```yaml
243
254
  sub_agent_models:
244
255
  general-purpose: sonnet
245
- explore: haiku
256
+ finder:
257
+ - haiku
258
+ - gemini-flash
259
+ code-reviewer: opus
246
260
  ```
247
261
 
248
262
  ##### Supported Protocols
@@ -251,9 +265,13 @@ sub_agent_models:
251
265
  - `openai` - OpenAI Chat Completion API
252
266
  - `responses` - OpenAI Responses API (for o-series, GPT-5, Codex)
253
267
  - `codex_oauth` - OpenAI Codex CLI (OAuth-based, for ChatGPT Pro subscribers)
268
+ - `github_copilot_oauth` - GitHub Copilot (OAuth-based)
254
269
  - `openrouter` - OpenRouter API (handling `reasoning_details` for interleaved thinking)
255
270
  - `google` - Google Gemini API
256
- - `bedrock` - AWS Bedrock for Claude(uses AWS credentials instead of api_key)
271
+ - `google_vertex` - Google Vertex AI (uses GCP credentials)
272
+ - `bedrock` - AWS Bedrock for Claude (uses AWS credentials instead of api_key)
273
+
274
+ For a working Bedrock provider example, see `docs/bedrock-setup.md`.
257
275
 
258
276
  List configured providers and models:
259
277
 
@@ -283,19 +301,20 @@ Inside the interactive session (`klaude`), use these commands to streamline your
283
301
  - `/...` supports mixed completion for commands + skills (command names take priority on conflicts).
284
302
  - `//...` shows skill-only completion and triggers skills explicitly.
285
303
 
304
+ - `/copy` - Copy last assistant message to clipboard.
305
+ - `/compact` - Clear conversation history but keep a summary in context.
306
+ - `/fork-session` - Fork current session from a selected point.
307
+ - `/refresh-terminal` - Refresh terminal display.
308
+ - `/web` - Switch to web UI mode.
309
+ - `/new` - Start a new session (clears context).
286
310
  - `/model` - Switch the active LLM during the session.
287
- - `/thinking` - Configure model thinking/reasoning level.
288
- - `/clear` - Clear the current conversation context.
289
- - `/copy` - Copy last assistant message.
311
+ - `/sub-agent-model` - Configure sub-agent models at runtime.
312
+ - `/thinking` - Change thinking/reasoning level.
290
313
  - `/status` - Show session usage statistics (cost, tokens, model breakdown).
291
- - `/resume` - Select and resume a previous session.
292
- - `/fork-session` - Fork current session to a new session ID (supports interactive fork point selection).
293
- - `/export` - Export last assistant message to a temp Markdown file.
314
+ - `/login` - Login to provider or configure API key.
315
+ - `/logout` - Logout from provider.
316
+ - `/continue` - Continue current session without a new user message.
294
317
  - `/debug [filters]` - Toggle debug mode and configure debug filters.
295
- - `/init` - Bootstrap a new project structure or module.
296
- - `/dev-doc [feature]` - Generate a comprehensive execution plan for a feature.
297
- - `/terminal-setup` - Configure terminal for Shift+Enter support.
298
- - `/help` - List all available commands.
299
318
 
300
319
 
301
320
  ### Input Shortcuts
@@ -303,7 +322,7 @@ Inside the interactive session (`klaude`), use these commands to streamline your
303
322
  | Key | Action |
304
323
  | -------------------- | ------------------------------------------- |
305
324
  | `Enter` | Submit input |
306
- | `Shift+Enter` | Insert newline (requires `/terminal-setup`) |
325
+ | `Shift+Enter` | Insert newline (terminal-dependent) |
307
326
  | `Ctrl+J` | Insert newline |
308
327
  | `Ctrl+L` | Open model picker overlay |
309
328
  | `Ctrl+T` | Open thinking level picker overlay |
@@ -318,5 +337,62 @@ The main agent can spawn specialized sub-agents for specific tasks:
318
337
 
319
338
  | Sub-Agent | Purpose |
320
339
  |-----------|---------|
321
- | **Explore** | Fast codebase exploration - find files, search code, answer questions about the codebase |
322
- | **Task** | Handle complex multi-step tasks autonomously |
340
+ | **General Purpose** | Handle complex multi-step tasks autonomously |
341
+ | **General Purpose (Fork Context)** | Same as above, but inherits the parent agent's full conversation history |
342
+ | **Finder** | Fast codebase exploration - find files, search code, answer questions about the codebase |
343
+ | **Code Reviewer** | Identify real bugs in proposed changes |
344
+ | **Code Simplifier** | Refine recently changed code for clarity and consistency |
345
+
346
+ ### Web UI
347
+
348
+ Klaude includes a browser-based interface as an alternative to the terminal TUI.
349
+
350
+ ```bash
351
+ # Start web UI directly
352
+ klaude web
353
+
354
+ # With options
355
+ klaude web --port 9000 --host 0.0.0.0 --no-open
356
+ ```
357
+
358
+ You can also switch from TUI to web mid-session with the `/web` slash command. The web UI provides the same capabilities as the TUI: multi-session management, file browsing, tool execution, and real-time streaming.
359
+
360
+ ### Prompt Caching
361
+
362
+ Klaude is designed to maximize prefix cache hit rates across LLM API calls. Cached tokens are priced at ~10% of base input tokens, so high cache hit rates significantly reduce cost.
363
+
364
+ **Append-only message history.** The conversation history is strictly append-only. New messages, tool results, and attachments are always appended to the end of the message array, never inserted or modified in the middle. Any mutation to the head of the messages array (compressing old tool results, replacing images, reordering tool definitions) would invalidate the prefix cache and force a full re-tokenization.
365
+
366
+ Design choices that preserve prefix stability:
367
+ - **Stable system prompt**: The system prompt is composed of a static base prompt + stable tool strategy block + environment info, avoiding per-turn variation.
368
+ - **Stable JSON serialization**: Tool schemas and provider payloads use `canonicalize_json()` for deterministic key ordering across calls.
369
+ - **Cache control markers**: For Anthropic and OpenRouter (Claude models), `cache_control: {"type": "ephemeral"}` is placed on the system prompt and the last message part to hint the provider's caching boundary.
370
+ - **Compaction preserves prefix**: When context is compacted, the summary is prepended as a new first message while keeping the retained tail intact -- no existing message bytes are modified.
371
+ - **Fork-context sub-agents**: Sub-agents with `fork_context=True` inherit the parent's full system prompt and tool list to maximize prefix cache sharing.
372
+
373
+ The TUI displays cache hit rate per turn in the metadata line (e.g. `cache 12.5k (98%)`). Rates below 90% are highlighted as a warning.
374
+
375
+ ### Context Management
376
+
377
+ The agent automatically manages context window limits:
378
+
379
+ - **Auto-compaction**: When the conversation approaches the model's context limit, older messages are summarized and replaced with a compact summary. The agent also recovers from context overflow errors by compacting and retrying.
380
+ - **Rewind**: The agent can roll back the conversation to a previous checkpoint (automatically inserted at key points). File system changes are preserved; only conversation history is rewound.
381
+ - **Handoff**: The agent can compress the current conversation into a summary and continue in a fresh context. Useful for very long sessions where context quality degrades.
382
+
383
+ ### Auto Memory
384
+
385
+ Klaude maintains persistent memory per project across sessions. Memory files are stored in `~/.klaude/projects/<project-key>/memory/` with a `MEMORY.md` index file. The agent automatically loads relevant memories at session start and can save new memories during a session.
386
+
387
+ Memory types include user preferences, feedback/corrections, project context, and external references.
388
+
389
+ ### Project Configuration Files
390
+
391
+ Klaude reads instruction files from your project directory to customize agent behavior:
392
+
393
+ | File | Purpose |
394
+ |------|---------|
395
+ | `AGENTS.md` | Project-level instructions checked into version control (shared with team) |
396
+ | `CLAUDE.md` | Personal instructions (typically gitignored) |
397
+
398
+ These files are loaded automatically and injected into the system prompt. They can be placed at the project root or in subdirectories for scoped instructions.
@@ -4,12 +4,12 @@ build-backend = "uv_build"
4
4
 
5
5
  [project]
6
6
  name = "klaude-code"
7
- version = "2.24.0"
7
+ version = "2.25.0"
8
8
  description = "Minimal code agent CLI"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.13"
11
11
  dependencies = [
12
- "anthropic>=0.66.0",
12
+ "anthropic[bedrock]>=0.66.0",
13
13
  "chardet>=5.2.0,<6",
14
14
  "diff-match-patch>=20241021",
15
15
  "filelock>=3.20.3",
@@ -102,6 +102,7 @@ include = [
102
102
  [tool.importlinter]
103
103
  root_packages = ["klaude_code"]
104
104
  include_external_packages = false
105
+ exclude_type_checking_imports = true
105
106
 
106
107
  [[tool.importlinter.contracts]]
107
108
  name = "Layered architecture"
@@ -111,7 +112,8 @@ layers = [
111
112
  "klaude_code.tui",
112
113
  "klaude_code.web",
113
114
  "klaude_code.app",
114
- "klaude_code.core",
115
+ "klaude_code.agent",
116
+ "klaude_code.tool | klaude_code.prompts | klaude_code.control",
115
117
  "klaude_code.skill",
116
118
  "klaude_code.session",
117
119
  "klaude_code.config",
@@ -121,3 +123,7 @@ layers = [
121
123
  "klaude_code.log",
122
124
  "klaude_code.const",
123
125
  ]
126
+ ignore_imports = [
127
+ # prompts lazy-imports skill.manager for system prompt assembly
128
+ "klaude_code.prompts.* -> klaude_code.skill.*",
129
+ ]
@@ -2,15 +2,15 @@ from __future__ import annotations
2
2
 
3
3
  from collections.abc import AsyncGenerator, Awaitable, Callable, Iterable
4
4
 
5
- from klaude_code.core.agent.task import SessionContext, TaskExecutionContext, TaskExecutor
6
- from klaude_code.core.agent_profile import AgentProfile, Reminder
7
- from klaude_code.core.tool import build_todo_context, get_registry
8
- from klaude_code.core.tool.context import RunSubtask
5
+ from klaude_code.agent.agent_profile import AgentProfile
6
+ from klaude_code.agent.task import SessionContext, TaskExecutionContext, TaskExecutor
9
7
  from klaude_code.llm import LLMClientABC
10
8
  from klaude_code.log import DebugType, log_debug
11
9
  from klaude_code.protocol import events, model, user_interaction
12
10
  from klaude_code.protocol.message import UserInputPayload
13
11
  from klaude_code.session import Session
12
+ from klaude_code.tool import build_todo_context, get_registry
13
+ from klaude_code.tool.context import RunSubtask
14
14
 
15
15
 
16
16
  class Agent:
@@ -36,7 +36,7 @@ class Agent:
36
36
  self.profile: AgentProfile = profile
37
37
  self.compact_llm_client: LLMClientABC | None = compact_llm_client
38
38
  self._current_task: TaskExecutor | None = None
39
- self._request_user_interaction = request_user_interaction
39
+ self.request_user_interaction = request_user_interaction
40
40
  if not self.session.model_name:
41
41
  self.session.model_name = profile.llm_client.model_name
42
42
 
@@ -68,14 +68,13 @@ class Agent:
68
68
  file_change_summary=self.session.file_change_summary,
69
69
  todo_context=build_todo_context(self.session),
70
70
  run_subtask=run_subtask,
71
- request_user_interaction=self._request_user_interaction,
71
+ request_user_interaction=self.request_user_interaction,
72
72
  )
73
73
  context = TaskExecutionContext(
74
74
  session=self.session,
75
75
  session_ctx=session_ctx,
76
76
  profile=self.profile,
77
77
  tool_registry=get_registry(),
78
- process_reminder=self._process_reminder,
79
78
  sub_agent_state=self.session.sub_agent_state,
80
79
  compact_llm_client=self.compact_llm_client,
81
80
  )
@@ -92,7 +91,7 @@ class Agent:
92
91
  async def replay_history(self) -> AsyncGenerator[events.Event]:
93
92
  """Yield UI events reconstructed from saved conversation history."""
94
93
 
95
- if len(self.session.conversation_history) == 0:
94
+ if not self.session.conversation_history:
96
95
  return
97
96
 
98
97
  yield events.ReplayHistoryEvent(
@@ -101,13 +100,6 @@ class Agent:
101
100
  session_id=self.session.id,
102
101
  )
103
102
 
104
- async def _process_reminder(self, reminder: Reminder) -> AsyncGenerator[events.DeveloperMessageEvent]:
105
- """Process a single reminder and yield events if it produces output."""
106
- item = await reminder(self.session)
107
- if item is not None:
108
- self.session.append_history([item])
109
- yield events.DeveloperMessageEvent(session_id=self.session.id, item=item)
110
-
111
103
  def set_model_profile(self, profile: AgentProfile) -> None:
112
104
  """Apply a fully constructed profile to the agent."""
113
105