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.
- {klaude_code-2.24.0 → klaude_code-2.25.0}/PKG-INFO +104 -28
- {klaude_code-2.24.0 → klaude_code-2.25.0}/README.md +102 -26
- {klaude_code-2.24.0 → klaude_code-2.25.0}/pyproject.toml +9 -3
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/agent.py +7 -15
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/agent_profile.py +44 -67
- klaude_code-2.25.0/src/klaude_code/agent/attachment_prompts.py +110 -0
- klaude_code-2.25.0/src/klaude_code/agent/attachments.py +968 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/bash_mode.py +5 -3
- klaude_code-2.25.0/src/klaude_code/agent/cache_break_detection.py +270 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/AGENTS.md +2 -2
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/compaction.py +29 -22
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/prompts.py +4 -0
- klaude_code-2.25.0/src/klaude_code/agent/handoff/__init__.py +4 -0
- klaude_code-2.25.0/src/klaude_code/agent/handoff/handoff.py +196 -0
- klaude_code-2.25.0/src/klaude_code/agent/handoff/manager.py +24 -0
- klaude_code-2.25.0/src/klaude_code/agent/handoff/prompts.py +30 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/memory.py +53 -26
- klaude_code-2.25.0/src/klaude_code/agent/rewind/__init__.py +3 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_agent_ops.py +16 -16
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_config_ops.py +29 -9
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_dispatcher.py +9 -9
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_llm.py +2 -2
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/runtime_sub_agent.py +32 -21
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/task.py +150 -61
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/turn.py +15 -43
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/auth_flow.py +1 -47
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/runtime.py +9 -9
- {klaude_code-2.24.0/src/klaude_code/core/control → klaude_code-2.25.0/src/klaude_code/app}/runtime_facade.py +7 -7
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/base.py +1 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/env.py +2 -2
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/auth_cmd.py +2 -4
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/config_cmd.py +2 -7
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/cost_cmd.py +9 -20
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/list_model.py +15 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/oauth_usage.py +2 -179
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/web_cmd.py +7 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/assets/builtin_config.yaml +163 -257
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/builtin_config.py +1 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/config.py +39 -41
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/formatters.py +3 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/model_matcher.py +2 -5
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/sub_agent_model_helper.py +7 -7
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/thinking.py +4 -8
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/const.py +40 -7
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/event_relay.py +1 -1
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/session_actor.py +6 -19
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/session_registry.py +7 -7
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/anthropic/client.py +6 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/anthropic/input.py +43 -14
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/bedrock_anthropic/client.py +8 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google/input.py +20 -9
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/image.py +32 -10
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/input_common.py +21 -15
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_responses/client.py +15 -123
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_responses/input.py +19 -15
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/registry.py +0 -1
- klaude_code-2.25.0/src/klaude_code/prompts/base-system-prompt-gpt.md +99 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/prompts/base-system-prompt.md +9 -5
- klaude_code-2.25.0/src/klaude_code/prompts/extended-thinking-prompt.md +3 -0
- klaude_code-2.25.0/src/klaude_code/prompts/following-conventions-prompt.md +7 -0
- klaude_code-2.25.0/src/klaude_code/prompts/git-workspace-hygiene-prompt.md +15 -0
- klaude_code-2.25.0/src/klaude_code/prompts/prompt-sub-agent-finder.md +51 -0
- klaude_code-2.25.0/src/klaude_code/prompts/prompt-sub-agent-review.md +133 -0
- klaude_code-2.25.0/src/klaude_code/prompts/prompt-sub-agent-simplifier.md +94 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/prompts/system_prompt.py +85 -62
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/events.py +4 -4
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/llm_param.py +3 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/model.py +18 -5
- klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/AGENTS.md +54 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/sub_agent/__init__.py +18 -16
- klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/finder.py +25 -0
- klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/general_purpose.py +51 -0
- klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/review.py +35 -0
- klaude_code-2.25.0/src/klaude_code/protocol/sub_agent/simplifier.py +28 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/tools.py +1 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/user_interaction.py +5 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/session.py +64 -35
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/store.py +13 -14
- klaude_code-2.25.0/src/klaude_code/skill/assets/SOURCES.md +5 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/.gitignore +4 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/README.md +63 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/SKILL.md +552 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/.gitignore +3 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/color-palette.md +67 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/element-templates.md +182 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/json-schema.md +71 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/pyproject.toml +7 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/render_excalidraw.py +189 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/excalidraw-diagram/references/render_template.html +57 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/SKILL.md +99 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/references/builtin-providers.md +111 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/references/config-file.md +129 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/references/memory-files.md +88 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/klaude-config/references/skill-system.md +116 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/notion-cli/LICENSE.md +21 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/notion-cli/SKILL.md +87 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/LICENSE.txt +201 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/NOTICE.txt +14 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/SKILL.md +147 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/agents/openai.yaml +6 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/assets/playwright-small.svg +3 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/assets/playwright.png +0 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/references/cli.md +116 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/references/workflows.md +95 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/playwright/scripts/playwright_cli.sh +25 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/SKILL.md +168 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/render-mermaid/package.json +2 -2
- klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/references/config/first-time-setup.md +118 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/references/config/preferences-schema.md +75 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/references/templates/standalone.html +28 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/references/troubleshooting.md +64 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/scripts/render_mermaid.js +414 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/render-mermaid/scripts/setup.sh +70 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/skill-creator/SKILL.md +115 -23
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/LICENSE.txt +201 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/SKILL.md +153 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/agents/openai.yaml +6 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/assets/sora-small.svg +4 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/assets/sora.png +0 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/cinematic-shots.md +53 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/cli.md +248 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/codex-network.md +28 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/prompting.md +137 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/sample-prompts.md +95 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/social-ads.md +42 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/troubleshooting.md +58 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/references/video-api.md +45 -0
- klaude_code-2.25.0/src/klaude_code/skill/assets/sora/scripts/sora.py +970 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/loader.py +124 -12
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/system_skills.py +7 -0
- klaude_code-2.25.0/src/klaude_code/tool/AGENTS.md +95 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/__init__.py +2 -2
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/agent_tool.md +7 -1
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/agent_tool.py +20 -42
- {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
- {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
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/context.py +15 -3
- klaude_code-2.25.0/src/klaude_code/tool/file/_utils.py +175 -0
- klaude_code-2.25.0/src/klaude_code/tool/file/apply_patch_tool.md +23 -0
- {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
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/edit_tool.py +65 -68
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/read_tool.md +2 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/read_tool.py +222 -63
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/write_tool.py +42 -10
- klaude_code-2.25.0/src/klaude_code/tool/handoff_tool.md +10 -0
- klaude_code-2.25.0/src/klaude_code/tool/handoff_tool.py +55 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/rewind_tool.py +3 -3
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/shell/bash_tool.py +35 -10
- {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
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/tool_abc.py +1 -1
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/tool_registry.py +1 -1
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/tool_runner.py +4 -12
- {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
- {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
- klaude_code-2.25.0/src/klaude_code/tui/command/AGENTS.md +72 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/auth_selector.py +37 -20
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/copy_cmd.py +3 -3
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/refresh_cmd.py +1 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/commands.py +5 -5
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/command_output.py +1 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/common.py +7 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/developer.py +39 -21
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/errors.py +7 -3
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/metadata.py +22 -22
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/cjk_wrap.py +4 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/markdown.py +18 -8
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/status.py +39 -89
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/theme.py +40 -20
- klaude_code-2.25.0/src/klaude_code/tui/components/sub_agent.py +57 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/tools.py +35 -35
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/user_input.py +33 -15
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/welcome.py +46 -13
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/display.py +5 -2
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/AGENTS.md +1 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/completers.py +30 -59
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/prompt_toolkit.py +14 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/machine.py +123 -93
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/renderer.py +55 -14
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/runner.py +30 -4
- klaude_code-2.25.0/src/klaude_code/tui/status_runtime.py +45 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/__init__.py +22 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/ask_user_question.py +181 -21
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/image.py +6 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/notifier.py +0 -42
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/selector.py +1 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/app.py +3 -3
- klaude_code-2.25.0/src/klaude_code/web/dist/assets/highlighted-body-OFNGDK62-TNlyXRyQ.js +1 -0
- klaude_code-2.25.0/src/klaude_code/web/dist/assets/index-CyWhMJuk.css +1 -0
- klaude_code-2.25.0/src/klaude_code/web/dist/assets/index-DHZ5AY_v.js +2486 -0
- klaude_code-2.25.0/src/klaude_code/web/dist/assets/pierre-dark-DF2SEV7i.js +1 -0
- klaude_code-2.25.0/src/klaude_code/web/dist/assets/pierre-light-DOlZxES8.js +1 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/index.html +2 -2
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/live_events.py +2 -2
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/sessions.py +1 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/ws.py +7 -11
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/server.py +4 -2
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/session_live.py +1 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/state.py +2 -2
- klaude_code-2.24.0/src/klaude_code/auth/claude/__init__.py +0 -6
- klaude_code-2.24.0/src/klaude_code/auth/claude/exceptions.py +0 -9
- klaude_code-2.24.0/src/klaude_code/auth/claude/oauth.py +0 -177
- klaude_code-2.24.0/src/klaude_code/auth/claude/token_manager.py +0 -26
- klaude_code-2.24.0/src/klaude_code/core/agent/reminders.py +0 -442
- klaude_code-2.24.0/src/klaude_code/core/prompts/prompt-sub-agent-explore.md +0 -16
- klaude_code-2.24.0/src/klaude_code/core/prompts/prompt-sub-agent.md +0 -12
- klaude_code-2.24.0/src/klaude_code/core/rewind/__init__.py +0 -3
- klaude_code-2.24.0/src/klaude_code/core/tool/file/_utils.py +0 -36
- klaude_code-2.24.0/src/klaude_code/core/tool/file/apply_patch_tool.md +0 -1
- klaude_code-2.24.0/src/klaude_code/core/tool/report_back_tool.py +0 -87
- klaude_code-2.24.0/src/klaude_code/llm/claude/__init__.py +0 -3
- klaude_code-2.24.0/src/klaude_code/llm/claude/client.py +0 -100
- klaude_code-2.24.0/src/klaude_code/protocol/sub_agent/AGENTS.md +0 -18
- klaude_code-2.24.0/src/klaude_code/protocol/sub_agent/explore.py +0 -21
- klaude_code-2.24.0/src/klaude_code/protocol/sub_agent/general_purpose.py +0 -17
- klaude_code-2.24.0/src/klaude_code/skill/assets/SOURCES.md +0 -3
- klaude_code-2.24.0/src/klaude_code/skill/assets/deslop/SKILL.md +0 -26
- klaude_code-2.24.0/src/klaude_code/skill/assets/executing-plans/SKILL.md +0 -76
- klaude_code-2.24.0/src/klaude_code/skill/assets/render-mermaid/SKILL.md +0 -35
- klaude_code-2.24.0/src/klaude_code/skill/assets/render-mermaid/bun.lock +0 -182
- klaude_code-2.24.0/src/klaude_code/skill/assets/render-mermaid/scripts/render_mermaid.js +0 -431
- klaude_code-2.24.0/src/klaude_code/skill/assets/writing-plans/SKILL.md +0 -79
- klaude_code-2.24.0/src/klaude_code/tui/components/rich/code_panel.py +0 -146
- klaude_code-2.24.0/src/klaude_code/tui/components/sub_agent.py +0 -104
- klaude_code-2.24.0/src/klaude_code/tui/terminal/progress_bar.py +0 -93
- klaude_code-2.24.0/src/klaude_code/web/dist/assets/highlighted-body-B3W2YXNL-qIJJBbdQ.js +0 -1
- klaude_code-2.24.0/src/klaude_code/web/dist/assets/index-BL6qbKwg.css +0 -1
- klaude_code-2.24.0/src/klaude_code/web/dist/assets/index-DBqWrFD_.js +0 -1895
- klaude_code-2.24.0/src/klaude_code/web/dist/assets/pierre-dark-BXuwtOqb.js +0 -1
- klaude_code-2.24.0/src/klaude_code/web/dist/assets/pierre-light-dckrK0oj.js +0 -1
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/compaction/overflow.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/loaded_skills.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/rewind/manager.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/agent}/session_stats.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/session_title.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/log_viewer.html +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/log_viewer.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/ports/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/ports/display.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/ports/input.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/app/ports/interaction.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/AGENTS.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/exceptions.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/jwt_utils.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/oauth.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/codex/token_manager.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/copilot/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/copilot/exceptions.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/copilot/oauth.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/auth/copilot/token_manager.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/debug.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/main.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/cli/self_update.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/config/assets/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/event_bus.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/session_meta_relay.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/control/user_interaction.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/anthropic/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/bedrock_anthropic/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/client.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/copilot/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/copilot/client.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google/client.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google_vertex/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/google_vertex/client.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/json_stable.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_codex/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_codex/client.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_compatible/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_compatible/client.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_compatible/input.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_compatible/stream.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openai_responses/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openrouter/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openrouter/client.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openrouter/input.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/openrouter/reasoning.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/stream_parts.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/llm/usage.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/log.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code/prompts}/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/prompts/auto-memory-prompt.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/message.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/model_id.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/op.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/protocol/op_handler.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/codec.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/session/selector.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/AGENTS.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/.git +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/.gitignore +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/authentication.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/commands.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/profiling.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/proxy-support.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/session-management.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/snapshot-refs.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/references/video-recording.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/templates/authenticated-session.sh +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/templates/capture-workflow.sh +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/agent-browser/templates/form-automation.sh +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/download-yt-sub/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/download-yt-sub/scripts/download_subtitles.sh +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/frontend-design/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/LICENSE.txt +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/cli.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/codex-network.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/image-api.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/prompting.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/references/sample-prompts.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/gpt-image-gen/scripts/image_gen.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/references/cli.md +0 -0
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/nano-banana-image-gen/references/prompting.md +0 -0
- {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
- {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
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/forms.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/reference.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/check_bounding_boxes.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/check_fillable_fields.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/convert_pdf_to_images.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/create_validation_image.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/extract_form_field_info.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/extract_form_structure.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/pdf/scripts/fill_fillable_fields.py +0 -0
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/3d.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/animations.md +0 -0
- {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
- {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
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/assets.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/audio-visualization.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/audio.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/calculate-metadata.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/can-decode.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/charts.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/compositions.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/display-captions.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/extract-frames.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/ffmpeg.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/fonts.md +0 -0
- {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
- {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
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/gifs.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/images.md +0 -0
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/light-leaks.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/lottie.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/maps.md +0 -0
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/measuring-text.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/parameters.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/sequencing.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/sfx.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/subtitles.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/tailwind.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/text-animations.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/timing.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/transcribe-captions.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/transitions.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/transparent-videos.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/trimming.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/videos.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/remotion-best-practices/rules/voiceover.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/render-mermaid/.gitignore +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/session-logs/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/assets/web-search/SKILL.md +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/skill/manager.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/apply_patch.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/diff_builder.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/edit_tool.md +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/file/write_tool.md +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/offload.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/rewind_tool.md +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/shell/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/shell/bash_tool.md +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/shell/command_safety.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/todo/__init__.py +0 -0
- {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
- {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
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/__init__.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/external_content.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/ssrf.py +0 -0
- {klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/tool/web/web_cache.py +0 -0
- {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
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/command_abc.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/compact_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/continue_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/debug_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/fork_session_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/login_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/logout_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/model_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/model_picker.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/new_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/registry.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/status_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/sub_agent_model_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/thinking_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/types.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/command/web_cmd.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/bash_syntax.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/diffs.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/live.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/rich/quote.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/components/thinking.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/drag_drop.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/images.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/key_bindings.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/input/paste.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/color.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/control.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/session_selector.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/tui/terminal/title.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/update.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/display.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/abap-BdImnpbu.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/actionscript-3-CoDkCxhg.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ada-bCR0ucgS.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/andromeeda-C4gqWexZ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/angular-html-CU67Zn6k.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/angular-ts-BwZT4LLn.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/apache-Pmp26Uib.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/apex-D8_7TLub.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/apl-dKokRX4l.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/applescript-Co6uUVPk.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ara-BRHolxvo.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/asciidoc-Ve4PFQV2.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/asm-D_Q5rh1f.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/astro-CbQHKStN.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/aurora-x-D-2ljcwZ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/awk-DMzUqQB5.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ayu-dark-DYE7WIF3.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ayu-light-BA47KaF1.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ayu-mirage-32ctXXKs.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ballerina-BFfxhgS-.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bat-BkioyH1T.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/beancount-k_qm7-4y.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/berry-uYugtg8r.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bibtex-CHM0blh-.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bicep-Bmn6On1c.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bird2-DPOp833l.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/blade-D4QpJJKB.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/bsl-BO_Y6i37.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/c-BIGW1oBm.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/c3-eo99z4R2.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cadence-Bv_4Rxtq.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cairo-KRGpt6FW.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/catppuccin-frappe-DFWUc33u.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/catppuccin-latte-C9dUb6Cb.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/catppuccin-macchiato-DQyhUUbL.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/catppuccin-mocha-D87Tk5Gz.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/clarity-D53aC0YG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/clojure-P80f7IUj.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cmake-D1j8_8rp.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cobol-nwyudZeR.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/codeowners-Bp6g37R7.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/codeql-DsOJ9woJ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/coffee-Ch7k5sss.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/common-lisp-Cg-RD9OK.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/coq-DkFqJrB1.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cpp-CofmeUqb.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/crystal-tKQVLTB8.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/csharp-COcwbKMJ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/css-DPfMkruS.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/csv-fuZLfV_i.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cue-D82EKSYY.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/cypher-COkxafJQ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/d-85-TOEBH.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dark-plus-C3mMm8J8.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dart-CF10PKvl.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dax-CEL-wOlO.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/desktop-BmXAJ9_W.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/diff-D97Zzqfu.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/docker-BcOcwvcX.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dotenv-Da5cRb03.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dracula-BzJJZx-M.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dracula-soft-BXkSAIEj.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/dream-maker-BtqSS_iP.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/edge-BkV0erSs.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/elixir-CDX3lj18.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/elm-DbKCFpqz.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/emacs-lisp-C9XAeP06.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/erb-B12qg9BL.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/erlang-DsQrWhSR.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/everforest-dark-BgDCqdQA.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/everforest-light-C8M2exoo.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fennel-BYunw83y.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fish-BvzEVeQv.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fluent-C4IJs8-o.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fortran-fixed-form-CkoXwp7k.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fortran-free-form-BxgE0vQu.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/fsharp-CXgrBDvD.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gdresource-BOOCDP_w.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gdscript-C5YyOfLZ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gdshader-DkwncUOv.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-cyrillic-zHIGg2nG.woff2 +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-italic-cyrillic-BAHUuRM7.woff2 +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-italic-latin-DPcoTQLg.woff2 +0 -0
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-latin-BSv3nOGs.woff2 +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-latin-ext-DavUKqbp.woff2 +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-cyrillic-BAE8rdXX.woff2 +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-italic-cyrillic-2vK9sKgQ.woff2 +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-italic-latin-Bq3uIZFr.woff2 +0 -0
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-latin-B9bzV8FE.woff2 +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/geist-mono-latin-ext-CtwMEpPj.woff2 +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/genie-D0YGMca9.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gherkin-DyxjwDmM.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/git-commit-F4YmCXRG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/git-rebase-r7XF79zn.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-dark-DHJKELXO.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-dark-default-Cuk6v7N8.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-dark-dimmed-DH5Ifo-i.js +0 -0
- {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
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-light-DAi9KRSo.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-light-default-D7oLnXFd.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/github-light-high-contrast-BfjtVDDH.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gleam-BspZqrRM.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/glimmer-js-Rg0-pVw9.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/glimmer-ts-U6CK756n.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/glsl-DplSGwfg.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gn-n2N0HUVH.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gnuplot-DdkO51Og.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/go-CxLEBnE3.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/graphql-ChdNCCLP.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/groovy-gcz8RCvz.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-dark-hard-CFHQjOhq.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-dark-medium-GsRaNv29.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-dark-soft-CVdnzihN.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-light-hard-CH1njM8p.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-light-medium-DRw_LuNl.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/gruvbox-light-soft-hJgmCMqR.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hack-CaT9iCJl.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/haml-B8DHNrY2.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/handlebars-BL8al0AC.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/haskell-Df6bDoY_.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/haxe-CzTSHFRz.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hcl-BWvSN4gD.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hjson-D5-asLiD.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hlsl-D3lLCCz7.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/horizon-BUw7H-hv.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/horizon-bright-Cn-bp-IR.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/houston-DnULxvSX.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/html-GMplVEZG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/html-derivative-BFtXZ54Q.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/http-jrhK8wxY.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hurl-irOxFIW8.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hxml-Bvhsp5Yf.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/hy-DFXneXwc.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/imba-DGztddWO.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ini-BEwlwnbL.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/java-CylS5w8V.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/javascript-wDzz0qaB.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jinja-4LBKfQ-Z.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jison-wvAkD_A8.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/json-Cp-IABpG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/json5-C9tS-k6U.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jsonc-Des-eS-w.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jsonl-DcaNXYhu.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jsonnet-DFQXde-d.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jssm-C2t-YnRu.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/jsx-g9-lgVsj.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/julia-CxzCAyBv.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/just-Cw27pwNe.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kanagawa-dragon-CkXjmgJE.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kanagawa-lotus-CfQXZHmo.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kanagawa-wave-DWedfzmr.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kdl-DV7GczEv.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kotlin-BdnUsdx6.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/kusto-DZf3V79B.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/laserwave-DUszq2jm.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/latex-CWtU0Tv5.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/lean-BZvkOJ9d.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/less-B1dDrJ26.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/light-plus-B7mTdjB0.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/liquid-DYVedYrR.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/llvm-DjAJT7YJ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/log-2UxHyX5q.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/logo-BtOb2qkB.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/lua-BaeVxFsk.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/luau-C-HG3fhB.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/make-CHLpvVh8.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/markdown-Cvjx9yec.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/marko-CnJfTvn9.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-D5KoaKCx.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-darker-BfHTSMKl.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-lighter-B0m2ddpp.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-ocean-CyktbL80.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/material-theme-palenight-Csfq5Kiy.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/matlab-D7o27uSR.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mdc-BMNejdWA.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mdx-Cmh6b_Ma.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mermaid-mWjccvbQ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/min-dark-CafNBF8u.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/min-light-CTRr51gU.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mipsasm-CKIfxQSi.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/mojo-rZm6bMo-.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/monokai-D4h5O-jR.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/moonbit-_H4v1dQx.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/move-IF9eRakj.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/narrat-DRg8JJMk.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nextflow-Zz6hmt5N.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nextflow-groovy-BeH2EWoN.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nginx-BpAMiNFr.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/night-owl-C39BiMTA.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/night-owl-light-CMTm3GFP.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nim-CVrawwO9.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nix-CwoSXNpI.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nord-Ddv68eIx.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/nushell-Cz2AlsmD.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/objective-c-DXmwc3jG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/objective-cpp-CLxacb5B.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ocaml-C0hk2d4L.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/odin-BBf5iR-q.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/one-dark-pro-DVMEJ2y_.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/one-light-C3Wv6jpd.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/openscad-C4EeE6gA.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/pascal-D93ZcfNL.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/perl-C0TMdlhV.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/php-Dhbhpdrm.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/pkl-u5AG7uiY.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/plastic-3e1v2bzS.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/plsql-ChMvpjG-.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/po-BTJTHyun.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/poimandres-CS3Unz2-.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/polar-C0HS_06l.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/postcss-CXtECtnM.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/powerquery-CEu0bR-o.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/powershell-Dpen1YoG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/prisma-Dd19v3D-.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/prolog-CbFg5uaA.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/proto-C7zT0LnQ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/pug-CGlum2m_.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/puppet-BMWR74SV.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/purescript-CklMAg4u.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/python-B6aJPvgy.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/qml-3beO22l8.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/qmldir-C8lEn-DE.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/qss-IeuSbFQv.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/r-Dspwwk_N.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/racket-BqYA7rlc.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/raku-DXvB9xmW.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/razor-Uh8Bk_45.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/red-bN70gL4F.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/reg-C-SQnVFl.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/regexp-CDVJQ6XC.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rel-C3B-1QV4.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/riscv-BM1_JUlF.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ron-D8l8udqQ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rose-pine-dawn-DHQR4-dF.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rose-pine-moon-D4_iv3hh.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rose-pine-qdsjHGoJ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rosmsg-BJDFO7_C.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rst-BrH8l1NY.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ruby-Dw2BHqvy.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/rust-B1yitclQ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sas-cz2c8ADy.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sass-Cj5Yp3dK.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/scala-C151Ov-r.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/scheme-C98Dy4si.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/scss-OYdSNvt2.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sdbl-DVxCFoDh.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/shaderlab-Dg9Lc6iA.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/shellscript-Yzrsuije.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/shellsession-BADoaaVG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/slack-dark-BthQWCQV.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/slack-ochin-DqwNpetd.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/smalltalk-BERRCDM3.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/snazzy-light-Bw305WKR.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/solarized-dark-DXbdFlpD.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/solarized-light-L9t79GZl.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/solidity-rGO070M0.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/soy-Brmx7dQM.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sparql-rVzFXLq3.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/splunk-BtCnVYZw.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/sql-BLtJtn59.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ssh-config-_ykCGR6B.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/stata-BH5u7GGu.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/stylus-BEDo0Tqx.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/surrealql-Bq5Q-fJD.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/svelte-C_ipcX3V.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/swift-D82vCrfD.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/synthwave-84-CbfX1IO0.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/system-verilog-CnnmHF94.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/systemd-4A_iFExJ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/talonscript-CkByrt1z.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tasl-QIJgUcNo.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tcl-dwOrl1Do.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/templ-P3uqSqPl.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/terraform-BETggiCN.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tex-idrVyKtj.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tokyo-night-hegEt444.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/toml-vGWfd6FD.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/ts-tags-zn1MmPIZ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tsv-B_m7g4N7.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/tsx-COt5Ahok.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/turtle-BsS91CYL.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/twig-DNn4PbVi.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/typescript-BPQ3VLAy.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/typespec-BGHnOYBU.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/typst-DHCkPAjA.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/v-BcVCzyr7.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vala-CsfeWuGM.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vb-D17OF-Vu.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/verilog-BQ8w6xss.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vesper-DU1UobuO.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vhdl-CeAyd5Ju.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/viml-CJc9bBzg.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vitesse-black-Bkuqu6BP.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vitesse-dark-D0r3Knsf.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vitesse-light-CVO1_9PV.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vue-DN_0RTcg.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vue-html-AaS7Mt5G.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vue-vine-CQOfvN7w.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/vyper-CDx5xZoG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wasm-CG6Dc4jp.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wasm-MzD3tlZU.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wenyan-BV7otONQ.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wgsl-Dx-B1_4e.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wikitext-BhOHFoWU.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wit-5i3qLPDT.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/wolfram-lXgVvXCa.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/xml-sdJ4AIDG.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/xsl-CtQFsRM5.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/yaml-Buea-lGh.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/zenscript-DVFEvuxE.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/assets/zig-VOosw3JB.js +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/dist/favicon.svg +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/file_access.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/interaction.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/__init__.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/config.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/files.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/routes/skills.py +0 -0
- {klaude_code-2.24.0 → klaude_code-2.25.0}/src/klaude_code/web/session_access.py +0 -0
- {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.
|
|
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**:
|
|
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
|
-
- **
|
|
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
|
|
122
|
-
export
|
|
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
|
|
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`
|
|
268
|
+
`sub_agent_models` accepts registered sub-agent type names as keys. Current supported keys are:
|
|
261
269
|
|
|
262
|
-
- `general-purpose`
|
|
263
|
-
- `
|
|
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
|
-
|
|
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
|
-
- `
|
|
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
|
-
- `/
|
|
313
|
-
- `/
|
|
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
|
-
- `/
|
|
317
|
-
- `/
|
|
318
|
-
- `/
|
|
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 (
|
|
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
|
-
| **
|
|
347
|
-
| **
|
|
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**:
|
|
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
|
-
- **
|
|
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
|
|
97
|
-
export
|
|
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
|
|
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`
|
|
243
|
+
`sub_agent_models` accepts registered sub-agent type names as keys. Current supported keys are:
|
|
236
244
|
|
|
237
|
-
- `general-purpose`
|
|
238
|
-
- `
|
|
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
|
-
|
|
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
|
-
- `
|
|
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
|
-
- `/
|
|
288
|
-
- `/
|
|
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
|
-
- `/
|
|
292
|
-
- `/
|
|
293
|
-
- `/
|
|
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 (
|
|
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
|
-
| **
|
|
322
|
-
| **
|
|
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.
|
|
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.
|
|
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
|
+
]
|
{klaude_code-2.24.0/src/klaude_code/core → klaude_code-2.25.0/src/klaude_code}/agent/agent.py
RENAMED
|
@@ -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.
|
|
6
|
-
from klaude_code.
|
|
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.
|
|
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.
|
|
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
|
|
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
|
|