kolega-code 0.47.0__tar.gz → 0.48.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.
- {kolega_code-0.47.0 → kolega_code-0.48.0}/CHANGELOG.md +124 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/CONTRIBUTING.md +13 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/MIGRATION.md +25 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/PKG-INFO +12 -7
- {kolega_code-0.47.0 → kolega_code-0.48.0}/README.md +5 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/RELEASING.md +17 -14
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/__init__.py +1 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/__init__.py +2 -1
- kolega_code-0.48.0/kolega_code/acp/accounting.py +516 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/agent_factory.py +313 -51
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/bridge.py +26 -10
- kolega_code-0.48.0/kolega_code/acp/control.py +206 -0
- kolega_code-0.48.0/kolega_code/acp/mcp.py +188 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/permissions.py +23 -28
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/questions.py +1 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/server.py +293 -131
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/session.py +27 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/usage.py +8 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/__init__.py +1 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/baseagent.py +109 -65
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/conversation.py +1 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/bridge.py +0 -5
- kolega_code-0.48.0/kolega_code/agent/eval/bundle-requirements.in +4 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/bundle-requirements.txt +8 -6
- kolega_code-0.48.0/kolega_code/agent/eval/env.py +343 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/kernel.py +8 -6
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/protocol.py +0 -5
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/journal.py +0 -8
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/runtime.py +1 -6
- kolega_code-0.48.0/kolega_code/agent/prompt_templates/auxiliary/agent_loop/interrupted_turn_nudge.user.md.j2 +9 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompts.py +5 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/session_metadata.py +7 -8
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/edit_preview.py +6 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/lsp_tool.py +0 -12
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/memory_tool.py +14 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/search_backends/firecrawl.py +20 -10
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/search_backends/tavily.py +31 -17
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/terminal_tool.py +0 -20
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/web_fetch/extractors.py +15 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/web_fetch/pipeline.py +2 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tools.py +33 -7
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/auth/chatgpt_oauth.py +4 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/multiplex.py +0 -6
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/native_host.py +0 -8
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/protocol.py +0 -10
- kolega_code-0.48.0/kolega_code/cli/acp.py +160 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/app.py +64 -7
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/atif_export.py +1 -12
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/clipboard_image.py +0 -11
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/config.py +3 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/gateway.py +36 -11
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/main.py +366 -183
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/messages.py +11 -8
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/model_catalog.py +64 -12
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/peer_messaging.py +1 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/provider_registry.py +8 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/session_event_protocol.py +0 -3
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/session_journal.py +69 -24
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/session_store.py +8 -4
- kolega_code-0.48.0/kolega_code/cli/session_usage.py +987 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/settings.py +10 -7
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/skills.py +11 -7
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/slash_commands.py +1 -3
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/agent_runtime.py +388 -340
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/app_base.py +10 -5
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/changes_screen.py +19 -3
- kolega_code-0.48.0/kolega_code/cli/tui/checkpoint_store.py +323 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/command_handlers.py +48 -23
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/constants.py +0 -9
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/memory_screen.py +9 -6
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/prompt_flows.py +62 -157
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/session_diff.py +484 -121
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/settings_panel.py +2 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/settings_screen.py +28 -8
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/state.py +4 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/status_dashboard.py +15 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/terminal_display.py +23 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/tool_presentation.py +1 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/transcript.py +8 -9
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/updater.py +25 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/config.py +9 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/events.py +3 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/adapters/base.py +0 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/config.py +6 -32
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/control_relay.py +30 -14
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/daemon.py +82 -11
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/questions.py +1 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/router.py +23 -8
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/sessions.py +437 -112
- kolega_code-0.48.0/kolega_code/gateway/stt.py +263 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/hooks/backends.py +55 -3
- kolega_code-0.48.0/kolega_code/llm/accounting.py +260 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/client.py +46 -10
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/exceptions.py +103 -6
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/instrumented_client.py +150 -106
- kolega_code-0.48.0/kolega_code/llm/ledger.py +881 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/models.py +16 -60
- kolega_code-0.48.0/kolega_code/llm/pricing.py +719 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/anthropic.py +33 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/google.py +26 -18
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/mistral.py +16 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/openai.py +117 -47
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/responses_common.py +105 -28
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/tinker.py +24 -9
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/accessors.py +12 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/catalog/__init__.py +2 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/anthropic.py +1347 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/cloudflare_workers_ai.py +528 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/dashscope.py +284 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/deepseek.py +414 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/fireworks.py +490 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/google.py +710 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/groq.py +324 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/kimi_coding.py +261 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/minimax.py +336 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/mistral.py +1889 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/moonshot.py +407 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/ollama_cloud.py +867 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/openai.py +5469 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/openai_chatgpt.py +727 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/openrouter.py +14818 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/perplexity_agent.py +2666 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/pricing_sources.py +72 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/refuseless.py +171 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/thinking_machines.py +98 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/tinker.py +1421 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/together.py +78 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/xai.py +672 -0
- kolega_code-0.48.0/kolega_code/llm/specs/catalog/zai.py +243 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/cloudflare_workers_ai_catalog.py +4 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/mistral_catalog.py +32 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/ollama_cloud_catalog.py +5 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/openrouter_catalog.py +14 -14
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/perplexity_catalog.py +7 -3
- kolega_code-0.48.0/kolega_code/llm/specs/pricing.py +235 -0
- kolega_code-0.48.0/kolega_code/llm/specs/pricing_feeds.py +328 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/thinking.py +1 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/tinker_catalog.py +4 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/usage.py +181 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/mcp/config.py +0 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/mcp/oauth.py +0 -4
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/mcp/service.py +115 -53
- kolega_code-0.48.0/kolega_code/mcp/tools.py +64 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/memory/manager.py +2 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/memory/markdown.py +1 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/utils.py +2 -74
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/detector.py +0 -7
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/diagnostics.py +0 -7
- kolega_code-0.48.0/kolega_code/session/composition.py +222 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/control.py +22 -10
- kolega_code-0.48.0/kolega_code/session/host_extensions.py +159 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/projection.py +185 -8
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/runtime.py +121 -16
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/tool_subjects.py +61 -10
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/tools/__init__.py +2 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/tools/core.py +7 -1
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/tools/param_aliases.py +7 -0
- kolega_code-0.48.0/kolega_code/web/access.py +112 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/assets/fold.js +81 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/assets/player.css +23 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/assets/player.js +39 -2
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/hosting.py +27 -7
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/server.py +30 -20
- {kolega_code-0.47.0 → kolega_code-0.48.0}/pyproject.toml +23 -15
- kolega_code-0.47.0/kolega_code/agent/eval/bundle-requirements.in +0 -4
- kolega_code-0.47.0/kolega_code/agent/eval/env.py +0 -302
- kolega_code-0.47.0/kolega_code/cli/acp.py +0 -85
- kolega_code-0.47.0/kolega_code/cli/session_usage.py +0 -352
- kolega_code-0.47.0/kolega_code/gateway/stt.py +0 -187
- kolega_code-0.47.0/kolega_code/llm/ledger.py +0 -442
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/anthropic.py +0 -160
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/cloudflare_workers_ai.py +0 -151
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/dashscope.py +0 -17
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/deepseek.py +0 -99
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/fireworks.py +0 -129
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/google.py +0 -96
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/groq.py +0 -54
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/kimi_coding.py +0 -105
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/minimax.py +0 -87
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/mistral.py +0 -163
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/moonshot.py +0 -89
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/ollama_cloud.py +0 -272
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/openai.py +0 -193
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/openai_chatgpt.py +0 -207
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/openrouter.py +0 -3169
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/perplexity_agent.py +0 -728
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/thinking_machines.py +0 -38
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/tinker.py +0 -383
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/together.py +0 -17
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/xai.py +0 -66
- kolega_code-0.47.0/kolega_code/llm/specs/catalog/zai.py +0 -57
- kolega_code-0.47.0/kolega_code/mcp/tools.py +0 -86
- {kolega_code-0.47.0 → kolega_code-0.48.0}/.gitignore +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/LICENSE +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/LICENSE +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/manifest.json +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/deep-research/SKILL.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/deep-research/references/evidence-and-reporting.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/deep-research/references/gigacode-workflow.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/deep-research/scripts/deep-research.workflow +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/deep-research/scripts/materialize_report.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/LICENSE +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/SKILL.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/references/examples.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/references/limitations.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/references/operations.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/references/quality.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/requirements.txt +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/scripts/docx_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/docx/scripts/smoke_test.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/humanizer/LICENSE +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/humanizer/SKILL.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/LICENSE +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/SKILL.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/references/examples.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/references/limitations.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/references/ocr.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/references/operations.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/references/quality.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/references/redaction.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/requirements-ocr-paddle.txt +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/requirements-ocr-surya.txt +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/requirements.txt +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/scripts/pdf_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pdf/scripts/smoke_test.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pptx/LICENSE +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pptx/SKILL.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pptx/references/examples.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pptx/references/limitations.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pptx/references/operations.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pptx/requirements.txt +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pptx/scripts/pptx_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/pptx/scripts/smoke_test.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/review/SKILL.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/review/references/github-publishing.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/skill-authoring/SKILL.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/skill-authoring/references/review-checklist.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/LICENSE +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/SKILL.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/references/examples.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/references/limitations.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/references/operations.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/references/quality.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/requirements.txt +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/scripts/smoke_test.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/_bundled_skills/skills/xlsx/scripts/xlsx_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/diffs.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/acp/plans.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/browseragent.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/coder.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/common.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/compression.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/context.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/custom_agents.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/edit_protocols.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/errors.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/js_kernel.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/prelude.js +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/prelude.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/py_kernel.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/runner.js +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/eval/runner.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/generalagent.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/goal.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/handoff.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/investigationagent.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/model_routing.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/accounting.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/budget.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/context.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/errors.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/executor.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/guide.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/orchestration/types.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/planningagent.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_dump.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_overrides.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_provider.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/agent_loop/silent_turn_exhausted.user.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/agent_loop/silent_turn_nudge.user.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/agent_loop/truncated_turn_nudge.user.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/compression/summary.system.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/compression/summary.user.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/handoff/document.system.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/handoff/document.user.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/terminal/output_summary.system.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/auxiliary/terminal/safety.system.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/cli/build_questions.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/cli/current_plan_artifact.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/cli/mode_switch_notice.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/cli/planning_questions.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/cli/scratchpad.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/cli/shared_task_list.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/cli/shared_task_list_readonly.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/cli/worktree_control.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/extensions/skills/catalog.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/agents/browser.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/agents/coder_ask.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/agents/coder_base.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/agents/coder_cli.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/agents/general.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/agents/investigation.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/agents/planning.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/agents_md_instructions.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/context_updates.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/environment_variables/workspace_env_vars.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/frontend_guidance.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/starter_templates/expo.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/starter_templates/html_website.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/starter_templates/mern_stack.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/starter_templates/react_vite_shadcdn.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/system/includes/terminal_tools.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/agent_job.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/apply_patch.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/ask_user_choice.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_click.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_close.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_console_messages.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_drag.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_drop.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_evaluate.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_file_upload.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_fill_form.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_find.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_handle_dialog.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_hover.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_navigate.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_navigate_back.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_network_request.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_network_requests.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_press_key.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_resize.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_scroll.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_select_option.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_snapshot.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_tabs.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_take_screenshot.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_type.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/browser_wait_for.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/build_backend.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/build_frontend.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/claude_edit.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/claude_write.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/dispatch_agent.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/edit.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/eval.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/exec_command.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/get_host.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/get_task_list.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/get_task_list_readonly.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/hashline_edit.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/hashline_write.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/kill_command.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/list_agents.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/list_sessions.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/list_subagent_models.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/list_workflow_runs.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/lsp.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/lsp_edit.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/multi_edit.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/read.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/read_image.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/resolve.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/run_workflow.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/send_message.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/set_goal.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/skill.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/snapshot.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/switch_worktree.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/update_task_list.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/web_fetch.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/web_search.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/write.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/write_plan.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/tools/write_stdin.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/user_tasks/cli/implement_plan.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/prompt_templates/user_tasks/cli/init_agents.md.j2 +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/agent_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/base_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/browser_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/build_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/codex_patch.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/edit_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/eval_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/hashline_v2.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/network_status.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/read_file_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/read_image_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/search_backends/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/search_backends/base.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/search_backends/duckduckgo.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/search_backends/errors.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/search_backends/models.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/search_backends/searxng.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/snapshot_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/streaming_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/web_fetch/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/web_fetch/answering.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/web_fetch/documents.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/web_fetch/retrieval.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/web_fetch_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/web_search_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_backend/workflow_tool.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/tool_definitions.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/utils/commands.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/agent/volatile_context.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/auth/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/auth/_jwt.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/auth/constants.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/auth/tokens.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/framing.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/installer.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/manager.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/registry.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/browser_extension/runtime.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/ask_output.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/browser_backend.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/connection.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/cron.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/diagnostics.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/file_index.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/goal.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/loop.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/mentions.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/model_connection.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/plan_artifacts.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/prompt_history.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/session_event_store.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/theme.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/background_status.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/boot_splash.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/custom_model.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/discovery.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/loop_runtime.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/metadata.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/onboarding_screen.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/pacing.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/settings_widgets.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/shortcut_bar.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/startup.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/styles.tcss +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/sub_agent_screen.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/task_list.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/turn_status.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/cli/tui/widgets.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/extensions.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/access.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/access_settings.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/adapters/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/adapters/echo.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/adapters/telegram/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/adapters/telegram/adapter.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/adapters/telegram/formatting.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/bridge.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/commands.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/event_router.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/redaction.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/gateway/service.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/git_env.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/hooks/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/hooks/config.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/hooks/dispatcher.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/hooks/events.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/hooks/matcher.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/hooks/outcome.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/cloudflare_workers_ai.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/_token_encoding.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/base.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/chatgpt_oauth.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/deepseek_responses.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/models.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/openai_responses.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/perplexity_responses.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/providers/tinker_trace.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/ratelimit.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/custom_endpoints.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/types.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/specs/validation.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/timeouts.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/llm/tool_execution_ids.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/local_state.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/mcp/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/mcp/state.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/mcp/transport.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/memory/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/memory/identity.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/memory/manifest.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/memory/models.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/memory/protocol.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/memory/registry.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/models/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/models/sandbox_terminal_state.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/permissions.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/runtime.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/README.md +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/async_filesystem.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/base.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/browser.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/event_loop.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/filesystem.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/local.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/serializer.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/sandbox/terminal.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/scratchpad.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/security/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/security/secrets.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/base.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/browser.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/file_system.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/html.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/client.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/config.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/edits.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/manager.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/registry.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/lsp/registry.yaml +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/snapshots.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/terminal.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/terminal_buffer.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/services/workspace_scan.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/background.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/inbox.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/inmemory.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/recording.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/session/store.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/testing/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/testing/store_conformance.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/tools/ask_user.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/tools/definitions.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/tools/registry.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/utils/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/utils/images.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/__init__.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/assets/player.html +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/bundle.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/redaction.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/singlefile.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/web/theme_css.py +0 -0
- {kolega_code-0.47.0 → kolega_code-0.48.0}/kolega_code/worktrees.py +0 -0
|
@@ -6,6 +6,130 @@ This project uses GitHub Releases for detailed generated release notes. This fil
|
|
|
6
6
|
|
|
7
7
|
## Unreleased
|
|
8
8
|
|
|
9
|
+
## 0.48.0 - 2026-11-06
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- **Refuseless provider.** The built-in `refuseless` provider
|
|
14
|
+
(`REFUSELESS_API_KEY`, or a key saved in Settings) serves five routes —
|
|
15
|
+
GLM-5.3 Abliterated, GLM-5.3 Flash Abliterated, DeepSeek V4.1 Flash
|
|
16
|
+
Abliterated, DeepSeek V4.1 Flash Fast and MiniMax M3.1 Flash — with each
|
|
17
|
+
route's window, output limit, thinking-effort ladder and per-million pricing in
|
|
18
|
+
the shared catalog. Selecting it defaults to GLM-5.3 Abliterated; saving a key
|
|
19
|
+
alone does not change your provider or any existing defaults. Prepaid-credit
|
|
20
|
+
exhaustion surfaces as a billing error, including mid-answer, instead of a
|
|
21
|
+
silently truncated reply.
|
|
22
|
+
- Gateway voice notes can transcribe through OpenAI (`gpt-transcribe`, reusing
|
|
23
|
+
your OpenAI key) as well as Groq, selectable under **Tools → Voice
|
|
24
|
+
transcription**.
|
|
25
|
+
- Editor sessions over ACP accept image prompts, so a host can send screenshots
|
|
26
|
+
and diagrams with a message.
|
|
27
|
+
- ACP sessions track durable usage accounting: a request's lifetime inference
|
|
28
|
+
survives cancellation, late usage evidence and resume, and costs resolve from
|
|
29
|
+
reported charges, overrides or bundled catalogue prices without network calls.
|
|
30
|
+
|
|
31
|
+
### Changed
|
|
32
|
+
|
|
33
|
+
- The install script now lives at `https://kolega.ai/code/install.sh`, which
|
|
34
|
+
always serves the current script from this repository:
|
|
35
|
+
`curl -fsSL https://kolega.ai/code/install.sh | sh`.
|
|
36
|
+
- The managed Python eval kernel now always provisions CPython 3.14, independently
|
|
37
|
+
of the CLI's Python version, with numpy 2.5.4 and matplotlib 3.11.2. Runtime
|
|
38
|
+
upgrades use separate version/bundle directories, and failed builds leave
|
|
39
|
+
previous environments unchanged instead of falling back to an arbitrary host
|
|
40
|
+
interpreter. The first eval after upgrading may download the new runtime;
|
|
41
|
+
manually installed eval packages must be reinstalled, while configured
|
|
42
|
+
`eval_kernel_packages` migrate automatically. `eval_python_version` is
|
|
43
|
+
deprecated and ignored; `eval_python_path` remains an explicit unbundled override.
|
|
44
|
+
- Automatic session titles no longer get reworded after every turn: the title
|
|
45
|
+
generator keeps the current title unless you move the session on to a
|
|
46
|
+
different task. The description still updates each turn.
|
|
47
|
+
- Turns wait less on terminal and file tracking: ordinary terminal output is no
|
|
48
|
+
longer parsed character by character, a checkpoint records only the paths that
|
|
49
|
+
changed instead of every dirty path, and a large checkout's startup copies
|
|
50
|
+
finish in the background instead of holding up the first turn.
|
|
51
|
+
- Startup imports fewer optional SDKs: Tavily, Firecrawl, Beautiful Soup and the
|
|
52
|
+
HTML extractor load only when a search or fetch needs them, and aiohttp only
|
|
53
|
+
when an aiohttp error is mapped.
|
|
54
|
+
- Refreshed the OpenRouter and Ollama Cloud model catalogs.
|
|
55
|
+
|
|
56
|
+
### Fixed
|
|
57
|
+
|
|
58
|
+
- A title set with `/retitle <title>` is now pinned. The automatic refresh after
|
|
59
|
+
each turn no longer replaces it, and the pin is saved with the session.
|
|
60
|
+
`/retitle` with no title unpins it and generates a new title and description.
|
|
61
|
+
- Project-memory tools now accept `file_path` as an alias for `path`, and reject
|
|
62
|
+
missing or unknown arguments with the tool's usage, instead of reporting an
|
|
63
|
+
opaque storage failure. Unexpected memory failures name the error type, and
|
|
64
|
+
the full error is kept in the local session log and diagnostics.
|
|
65
|
+
- The installer and `kolega-code update` now ask uv for a supported Python
|
|
66
|
+
(3.11–3.14, or 3.11–3.12 on Intel Macs), downloading one when none is
|
|
67
|
+
installed. Before, uv picked its newest interpreter: on Python 3.15 several
|
|
68
|
+
dependencies have no wheels yet, so a fresh install failed building
|
|
69
|
+
tiktoken from source. Intel Macs no longer get 3.13 or 3.14, whose
|
|
70
|
+
onnxruntime wheels are missing or need macOS 13.
|
|
71
|
+
- A reasoning stream that carries the reasoning tail and the first answer text in
|
|
72
|
+
the same delta no longer drops the start of the reply in the TUI; the stored
|
|
73
|
+
message was already complete.
|
|
74
|
+
- The TUI no longer grows to tens of gigabytes in checkouts with many untracked
|
|
75
|
+
files: checkpoint baselines now live in an on-disk spool capped at 10 GiB per
|
|
76
|
+
session and paused when the volume has under 5 GiB free, files over 8 MB are
|
|
77
|
+
compared by signature instead of read, and restored copies are verified by
|
|
78
|
+
hash.
|
|
79
|
+
- Saving settings repeatedly in one session no longer drops fields an earlier
|
|
80
|
+
save in that session had written.
|
|
81
|
+
- An incomplete Responses stream (OpenAI and ChatGPT) no longer starts the tool
|
|
82
|
+
calls it reported before the response was validated, and the truncation is
|
|
83
|
+
reported as an error instead of a clean turn ending.
|
|
84
|
+
- A goal loop now pauses after a failed turn instead of retrying the same
|
|
85
|
+
failing turn.
|
|
86
|
+
- MCP tools with colliding names can no longer inherit each other's saved
|
|
87
|
+
permission grants, and a server id that could be parsed as another server's
|
|
88
|
+
grant now gets a process-local alias.
|
|
89
|
+
- Hook command processes are cleaned up when a turn is cancelled.
|
|
90
|
+
- ACP keeps protocol stdout to itself and retains lifecycle cleanup ownership on
|
|
91
|
+
shutdown, so stray output or a failed close no longer corrupts an editor
|
|
92
|
+
session or leaves tasks behind.
|
|
93
|
+
- Skill activation history is per agent, so a sub-agent no longer reuses another
|
|
94
|
+
agent's activated skills.
|
|
95
|
+
- Session-journal tail recovery takes the same lock as journal writers, so
|
|
96
|
+
opening a session while another process is appending no longer corrupts or
|
|
97
|
+
duplicates its events.
|
|
98
|
+
- Shared replays show sub-agent lifecycle status and fold peer messages into the
|
|
99
|
+
transcript.
|
|
100
|
+
- Rewinding no longer leaves a stale diff cache reporting the content just rolled
|
|
101
|
+
back, the vision-override warning names the model that blocks the image, and
|
|
102
|
+
`exec_command` accepts `cmd=` as an alias for `command`.
|
|
103
|
+
- The memory screen no longer queues worker renders for rows it is pruning.
|
|
104
|
+
|
|
105
|
+
### Security
|
|
106
|
+
|
|
107
|
+
- Live sharing now requires a token and validates Host and Origin headers for
|
|
108
|
+
both HTTP and WebSocket requests. Loopback and LAN links work automatically;
|
|
109
|
+
tunnel users must explicitly allow their public origin with
|
|
110
|
+
`KOLEGA_CODE_SHARE_ALLOWED_ORIGINS` before launching Kolega Code.
|
|
111
|
+
- Updated transformers to 5.20.2 in the optional `tinker` extra, fixing a
|
|
112
|
+
`save_pretrained` path traversal (CVE-2026-9856) and untrusted custom
|
|
113
|
+
generation code being written to disk before consent (CVE-2026-80047). The
|
|
114
|
+
pin was previously impossible because tinker-cookbook capped transformers
|
|
115
|
+
below the fixed releases; tinker-cookbook 0.5.9 lifts that cap.
|
|
116
|
+
- Updated the dev-only virtualenv pin to 21.14.13, closing twelve 21.14.x
|
|
117
|
+
activation, seed-wheel and launcher advisories that stayed an accepted risk
|
|
118
|
+
while langfuse held packaging below 26. langfuse moves to 4.18.0, whose
|
|
119
|
+
bundle includes that fix; Langfuse tracing now uses the v4
|
|
120
|
+
`start_observation`/`propagate_attributes` API. Traces keep the same span
|
|
121
|
+
names, generations, user, session and tags, but require Langfuse Cloud or a
|
|
122
|
+
self-hosted Langfuse server that supports the v4 SDK.
|
|
123
|
+
|
|
124
|
+
## 0.47.1 - 2026-10-27
|
|
125
|
+
|
|
126
|
+
### Changed
|
|
127
|
+
|
|
128
|
+
- GPT-6.1 Terra sessions on the ChatGPT-subscription provider now use the
|
|
129
|
+
backend's advertised 500,000-token window (372,000 input tokens after the 128K
|
|
130
|
+
output reservation) instead of the GPT-6 family's conservative 400,000-token
|
|
131
|
+
budget, so compression runs later on long sessions.
|
|
132
|
+
|
|
9
133
|
## 0.47.0 - 2026-10-27
|
|
10
134
|
|
|
11
135
|
### Added
|
|
@@ -120,6 +120,19 @@ You can pass additional pytest arguments through the wrapper:
|
|
|
120
120
|
./run_tests.sh tests/test_git_env.py -ra
|
|
121
121
|
```
|
|
122
122
|
|
|
123
|
+
When changing persisted settings or session event formats, also run the
|
|
124
|
+
previous-release compatibility check. It downloads the latest published
|
|
125
|
+
release and its dependencies from PyPI:
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
uv run --frozen python scripts/check_previous_release_compat.py --install-previous
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
The check covers one old-writer settings save and an ordinary append to a
|
|
132
|
+
complete journal, not general mixed-version concurrency, repeated old-writer
|
|
133
|
+
saves, or journal repair. It verifies the downloaded wheel's SHA-256; its
|
|
134
|
+
dependencies are resolved from PyPI without pinned hashes.
|
|
135
|
+
|
|
123
136
|
## Comments
|
|
124
137
|
|
|
125
138
|
Comments are rare here. Write one only where the code cannot say it: a non-obvious
|
|
@@ -233,14 +233,35 @@ session in the store, including ones recorded for unrelated projects. With it,
|
|
|
233
233
|
every other session answers 404 — not 403, which would confirm they exist.
|
|
234
234
|
|
|
235
235
|
The same scope is available on the app directly, as
|
|
236
|
-
`ServerConfig(store=..., session_ids=frozenset({...}))`.
|
|
237
|
-
|
|
236
|
+
`ServerConfig(store=..., token=..., session_ids=frozenset({...}))`. The session
|
|
237
|
+
scope defaults to `None`, meaning all sessions. **A token is now required even
|
|
238
|
+
for loopback embedding**; missing, empty, whitespace or non-ASCII tokens are
|
|
239
|
+
rejected at app construction:
|
|
238
240
|
|
|
239
241
|
```python
|
|
240
|
-
|
|
241
|
-
|
|
242
|
+
import secrets
|
|
243
|
+
|
|
244
|
+
token = secrets.token_urlsafe(16)
|
|
245
|
+
create_app(ServerConfig(store=store, token=token)) # every session
|
|
246
|
+
create_app(ServerConfig(store=store, token=token, session_ids=allowed)) # only these
|
|
242
247
|
```
|
|
243
248
|
|
|
249
|
+
HTTP and WebSocket requests also validate Host and Origin before authentication.
|
|
250
|
+
`ServerConfig.allowed_hosts` defaults to `127.0.0.1`, `localhost` and `::1`; pass
|
|
251
|
+
the concrete hostname or address when embedding on another interface. Origins
|
|
252
|
+
for these native hosts must match the request's scheme, host and effective port
|
|
253
|
+
unless explicitly included in `ServerConfig.allowed_origins`. Additional origins
|
|
254
|
+
also admit their hostnames, but those inferred hosts require an exact configured
|
|
255
|
+
Origin rather than trusting other schemes or ports on the same hostname.
|
|
256
|
+
Only exact HTTP(S) origins are accepted, not paths or wildcard patterns.
|
|
257
|
+
An absent Origin is allowed for API clients; `Origin: null` is rejected.
|
|
258
|
+
|
|
259
|
+
`ShareServer` configures its bound address automatically. For a tunnel, pass
|
|
260
|
+
`allowed_origins=frozenset({"https://share.example.com"})`, or set the
|
|
261
|
+
comma-separated `KOLEGA_CODE_SHARE_ALLOWED_ORIGINS` process environment variable.
|
|
262
|
+
An explicit `allowed_origins` argument overrides the environment, including an
|
|
263
|
+
empty set. Forwarded headers are not trusted.
|
|
264
|
+
|
|
244
265
|
**A served session is not redacted.** `export_bundle` scrubs every string it
|
|
245
266
|
writes; this serves recorded events as they are. Anything the agent printed —
|
|
246
267
|
credentials, file contents, command output — is visible to whoever holds the
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: kolega-code
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.48.0
|
|
4
4
|
Summary: Multi-agent coding in the terminal
|
|
5
5
|
Project-URL: Homepage, https://kolega-ai.github.io/kolega-code/
|
|
6
6
|
Project-URL: Documentation, https://kolega-ai.github.io/kolega-code/
|
|
@@ -41,7 +41,7 @@ Requires-Dist: google-genai==2.12.1
|
|
|
41
41
|
Requires-Dist: httpx==0.28.1
|
|
42
42
|
Requires-Dist: idna==3.18
|
|
43
43
|
Requires-Dist: jinja2==3.1.6
|
|
44
|
-
Requires-Dist: langfuse==
|
|
44
|
+
Requires-Dist: langfuse==4.18.0
|
|
45
45
|
Requires-Dist: lxml-html-clean==0.4.5
|
|
46
46
|
Requires-Dist: markdownify==1.2.3
|
|
47
47
|
Requires-Dist: markitdown[docx,pdf,pptx,xls,xlsx]==0.1.6
|
|
@@ -51,7 +51,7 @@ Requires-Dist: onnxruntime==1.19.2; sys_platform == 'darwin' and platform_machin
|
|
|
51
51
|
Requires-Dist: onnxruntime==1.27.0; python_version >= '3.14' and sys_platform != 'win32'
|
|
52
52
|
Requires-Dist: openai==2.46.0
|
|
53
53
|
Requires-Dist: opentelemetry-api==1.45.1
|
|
54
|
-
Requires-Dist: packaging==
|
|
54
|
+
Requires-Dist: packaging==26.3
|
|
55
55
|
Requires-Dist: pathspec==1.1.1
|
|
56
56
|
Requires-Dist: pillow==13.0.0
|
|
57
57
|
Requires-Dist: playwright==1.59.0
|
|
@@ -83,11 +83,12 @@ Requires-Dist: pytest-xdist==3.8.0; extra == 'dev'
|
|
|
83
83
|
Requires-Dist: pytest==9.0.3; extra == 'dev'
|
|
84
84
|
Requires-Dist: ruff==0.15.12; extra == 'dev'
|
|
85
85
|
Requires-Dist: twine==6.2.0; extra == 'dev'
|
|
86
|
-
Requires-Dist: virtualenv==21.14.
|
|
86
|
+
Requires-Dist: virtualenv==21.14.13; extra == 'dev'
|
|
87
87
|
Provides-Extra: tinker
|
|
88
|
-
Requires-Dist: tinker-cookbook==0.5.
|
|
89
|
-
Requires-Dist: tinker==0.
|
|
88
|
+
Requires-Dist: tinker-cookbook==0.5.9; extra == 'tinker'
|
|
89
|
+
Requires-Dist: tinker==0.35.0; extra == 'tinker'
|
|
90
90
|
Requires-Dist: tml-renderers==0.1.0; extra == 'tinker'
|
|
91
|
+
Requires-Dist: transformers==5.20.2; extra == 'tinker'
|
|
91
92
|
Description-Content-Type: text/markdown
|
|
92
93
|
|
|
93
94
|
# Kolega Code
|
|
@@ -200,7 +201,7 @@ for Zed, VS Code, and other ACP clients is in the
|
|
|
200
201
|
**1. Install** with the script:
|
|
201
202
|
|
|
202
203
|
```bash
|
|
203
|
-
curl -fsSL https://kolega.
|
|
204
|
+
curl -fsSL https://kolega.ai/code/install.sh | sh
|
|
204
205
|
```
|
|
205
206
|
|
|
206
207
|
Or with [uv](https://docs.astral.sh/uv/) (or `pip`):
|
|
@@ -210,6 +211,10 @@ uv tool install kolega-code
|
|
|
210
211
|
# or: pip install kolega-code
|
|
211
212
|
```
|
|
212
213
|
|
|
214
|
+
Kolega Code supports Python 3.11–3.14. uv uses its newest Python unless told
|
|
215
|
+
otherwise, so if that is 3.15 or newer add `--python 3.14` (`--python 3.12` on
|
|
216
|
+
Intel Macs). The install script picks a supported version for you.
|
|
217
|
+
|
|
213
218
|
Verify the install:
|
|
214
219
|
|
|
215
220
|
```bash
|
|
@@ -108,7 +108,7 @@ for Zed, VS Code, and other ACP clients is in the
|
|
|
108
108
|
**1. Install** with the script:
|
|
109
109
|
|
|
110
110
|
```bash
|
|
111
|
-
curl -fsSL https://kolega.
|
|
111
|
+
curl -fsSL https://kolega.ai/code/install.sh | sh
|
|
112
112
|
```
|
|
113
113
|
|
|
114
114
|
Or with [uv](https://docs.astral.sh/uv/) (or `pip`):
|
|
@@ -118,6 +118,10 @@ uv tool install kolega-code
|
|
|
118
118
|
# or: pip install kolega-code
|
|
119
119
|
```
|
|
120
120
|
|
|
121
|
+
Kolega Code supports Python 3.11–3.14. uv uses its newest Python unless told
|
|
122
|
+
otherwise, so if that is 3.15 or newer add `--python 3.14` (`--python 3.12` on
|
|
123
|
+
Intel Macs). The install script picks a supported version for you.
|
|
124
|
+
|
|
121
125
|
Verify the install:
|
|
122
126
|
|
|
123
127
|
```bash
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Releasing Kolega Code
|
|
2
2
|
|
|
3
3
|
This project publishes the `kolega-code` package to PyPI and serves the public
|
|
4
|
-
installer from `https://kolega.
|
|
4
|
+
installer from `https://kolega.ai/code/install.sh`. Each published
|
|
5
5
|
version should also have a GitHub Release for its matching tag.
|
|
6
6
|
|
|
7
7
|
## Release process
|
|
@@ -71,8 +71,8 @@ because those forms can select and recreate the development `.venv`.
|
|
|
71
71
|
- Use the release date from the release PR merge.
|
|
72
72
|
- Leave an empty `Unreleased` section above the new release section.
|
|
73
73
|
|
|
74
|
-
4. Bootstrap the dedicated release environment, run the fast test suite
|
|
75
|
-
|
|
74
|
+
4. Bootstrap the dedicated release environment, run the fast test suite and
|
|
75
|
+
the same pre-commit checks as CI, and run the compatibility preflight:
|
|
76
76
|
|
|
77
77
|
```bash
|
|
78
78
|
UV_PROJECT_ENVIRONMENT="$PWD/.venv-release" \
|
|
@@ -81,11 +81,17 @@ because those forms can select and recreate the development `.venv`.
|
|
|
81
81
|
./run_tests.sh
|
|
82
82
|
UV_PROJECT_ENVIRONMENT="$PWD/.venv-release" \
|
|
83
83
|
uv run pre-commit run --all-files --show-diff-on-failure
|
|
84
|
+
UV_PROJECT_ENVIRONMENT="$PWD/.venv-release" \
|
|
85
|
+
uv run --frozen python scripts/check_previous_release_compat.py --install-previous --release-preflight
|
|
84
86
|
```
|
|
85
87
|
|
|
86
88
|
`UV_PROJECT_ENVIRONMENT` is inherited by pre-commit's local `pyright` hook,
|
|
87
89
|
including the hook's nested `uv run`.
|
|
88
90
|
|
|
91
|
+
The compatibility preflight installs the latest stable PyPI release older
|
|
92
|
+
than the candidate in an isolated environment. Run it before opening the
|
|
93
|
+
release PR; it is not run by CI or the release workflow.
|
|
94
|
+
|
|
89
95
|
To reproduce a version-specific CI failure, target the same disposable
|
|
90
96
|
environment explicitly:
|
|
91
97
|
|
|
@@ -130,7 +136,7 @@ because those forms can select and recreate the development `.venv`.
|
|
|
130
136
|
8. Verify the release:
|
|
131
137
|
|
|
132
138
|
```bash
|
|
133
|
-
|
|
139
|
+
kolega-code update
|
|
134
140
|
kolega-code --version
|
|
135
141
|
gh release view v0.3.2 --repo kolega-ai/kolega-code
|
|
136
142
|
```
|
|
@@ -159,24 +165,21 @@ the organization request.
|
|
|
159
165
|
The release workflow publishes to PyPI automatically when a release tag is
|
|
160
166
|
pushed; no manual deployment approval is required.
|
|
161
167
|
|
|
162
|
-
## Installer
|
|
168
|
+
## Installer
|
|
163
169
|
|
|
164
|
-
The
|
|
170
|
+
The installer source is tracked at:
|
|
165
171
|
|
|
166
172
|
```text
|
|
167
173
|
scripts/install-kolega-code.sh
|
|
168
174
|
```
|
|
169
175
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
After updating the site, verify:
|
|
176
|
+
`https://kolega.ai/code/install.sh` redirects to that file on `main`, via a
|
|
177
|
+
rule in the kolega-website repo's `next.config.mjs`. There is no copy to
|
|
178
|
+
publish: an installer change is live as soon as it merges, so it must work
|
|
179
|
+
with the release currently on PyPI. After merging one, verify:
|
|
177
180
|
|
|
178
181
|
```bash
|
|
179
|
-
curl -fsSL https://kolega.
|
|
182
|
+
curl -fsSL https://kolega.ai/code/install.sh | sh
|
|
180
183
|
```
|
|
181
184
|
|
|
182
185
|
## Transfer to the PyPI organization
|
|
@@ -18,7 +18,7 @@ from kolega_code.acp.permissions import AcpPermissionBroker
|
|
|
18
18
|
from kolega_code.acp.plans import task_entries_from_markdown
|
|
19
19
|
from kolega_code.acp.server import AcpAgent
|
|
20
20
|
from kolega_code.acp.session import AcpSession
|
|
21
|
-
from kolega_code.acp.usage import build_usage_update, context_window_for
|
|
21
|
+
from kolega_code.acp.usage import build_context_usage_update, build_usage_update, context_window_for
|
|
22
22
|
|
|
23
23
|
__all__ = [
|
|
24
24
|
"ACP_AGENT_MODE",
|
|
@@ -33,6 +33,7 @@ __all__ = [
|
|
|
33
33
|
"AgentFactory",
|
|
34
34
|
"TOOL_KINDS",
|
|
35
35
|
"build_usage_update",
|
|
36
|
+
"build_context_usage_update",
|
|
36
37
|
"context_window_for",
|
|
37
38
|
"task_entries_from_markdown",
|
|
38
39
|
]
|