kolega-code 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. kolega_code/__init__.py +151 -0
  2. kolega_code/agent/__init__.py +42 -0
  3. kolega_code/agent/baseagent.py +998 -0
  4. kolega_code/agent/browseragent.py +123 -0
  5. kolega_code/agent/coder.py +157 -0
  6. kolega_code/agent/common.py +41 -0
  7. kolega_code/agent/compression.py +81 -0
  8. kolega_code/agent/context.py +112 -0
  9. kolega_code/agent/conversation.py +408 -0
  10. kolega_code/agent/generalagent.py +146 -0
  11. kolega_code/agent/investigationagent.py +123 -0
  12. kolega_code/agent/planningagent.py +187 -0
  13. kolega_code/agent/prompt_provider.py +196 -0
  14. kolega_code/agent/prompt_templates/agents/browser.j2 +102 -0
  15. kolega_code/agent/prompt_templates/agents/coder_cli_mode.j2 +127 -0
  16. kolega_code/agent/prompt_templates/agents/general.j2 +68 -0
  17. kolega_code/agent/prompt_templates/agents/investigation.j2 +72 -0
  18. kolega_code/agent/prompt_templates/common/frontend_guidance.md +36 -0
  19. kolega_code/agent/prompt_templates/common/kolega_md_instructions.md +14 -0
  20. kolega_code/agent/prompt_templates/environment_variables/workspace_env_vars.md +11 -0
  21. kolega_code/agent/prompt_templates/template_guidance/expo-template.md +379 -0
  22. kolega_code/agent/prompt_templates/template_guidance/html-website-template.md +3 -0
  23. kolega_code/agent/prompt_templates/template_guidance/mern-stack-template.md +3 -0
  24. kolega_code/agent/prompt_templates/template_guidance/react-vite-shadcdn-template.md +182 -0
  25. kolega_code/agent/prompts.py +192 -0
  26. kolega_code/agent/tests/__init__.py +0 -0
  27. kolega_code/agent/tests/llm/__init__.py +0 -0
  28. kolega_code/agent/tests/llm/test_anthropic_token_counting.py +633 -0
  29. kolega_code/agent/tests/llm/test_billing_openai_cache.py +74 -0
  30. kolega_code/agent/tests/llm/test_client.py +773 -0
  31. kolega_code/agent/tests/llm/test_dashscope_mapping.py +32 -0
  32. kolega_code/agent/tests/llm/test_error_boundary.py +322 -0
  33. kolega_code/agent/tests/llm/test_exceptions.py +249 -0
  34. kolega_code/agent/tests/llm/test_instrumented_client.py +536 -0
  35. kolega_code/agent/tests/llm/test_instrumented_client_integration.py +547 -0
  36. kolega_code/agent/tests/llm/test_langfuse_normalization.py +39 -0
  37. kolega_code/agent/tests/llm/test_model_specs.py +17 -0
  38. kolega_code/agent/tests/llm/test_openai_cached_tokens.py +58 -0
  39. kolega_code/agent/tests/llm/test_openai_cached_tokens_stream.py +74 -0
  40. kolega_code/agent/tests/llm/test_openai_message_conversion.py +30 -0
  41. kolega_code/agent/tests/llm/test_openai_token_counting.py +687 -0
  42. kolega_code/agent/tests/llm/test_tool_execution_ids.py +193 -0
  43. kolega_code/agent/tests/services/__init__.py +1 -0
  44. kolega_code/agent/tests/services/test_browser.py +447 -0
  45. kolega_code/agent/tests/services/test_browser_parity.py +353 -0
  46. kolega_code/agent/tests/services/test_file_system.py +699 -0
  47. kolega_code/agent/tests/services/test_sandbox_terminal_input.py +98 -0
  48. kolega_code/agent/tests/services/test_terminal.py +154 -0
  49. kolega_code/agent/tests/services/test_terminal_command_tracking.py +385 -0
  50. kolega_code/agent/tests/services/test_terminal_state_serializer.py +262 -0
  51. kolega_code/agent/tests/test_agent_tools_inventory.py +267 -0
  52. kolega_code/agent/tests/test_base_agent.py +1942 -0
  53. kolega_code/agent/tests/test_coder_attachments.py +330 -0
  54. kolega_code/agent/tests/test_coder_prompt_extensions.py +61 -0
  55. kolega_code/agent/tests/test_commands.py +179 -0
  56. kolega_code/agent/tests/test_duplicate_tool_results.py +556 -0
  57. kolega_code/agent/tests/test_empty_message_handling.py +48 -0
  58. kolega_code/agent/tests/test_general_agent.py +242 -0
  59. kolega_code/agent/tests/test_html.py +320 -0
  60. kolega_code/agent/tests/test_parallel_tool_calls.py +291 -0
  61. kolega_code/agent/tests/test_planning_agent.py +227 -0
  62. kolega_code/agent/tests/test_prompt_provider.py +271 -0
  63. kolega_code/agent/tests/test_tool_registry.py +102 -0
  64. kolega_code/agent/tests/test_tools.py +549 -0
  65. kolega_code/agent/tests/tool_backend/__init__.py +0 -0
  66. kolega_code/agent/tests/tool_backend/test_agent_tool.py +356 -0
  67. kolega_code/agent/tests/tool_backend/test_base_tool.py +147 -0
  68. kolega_code/agent/tests/tool_backend/test_browser_tool.py +335 -0
  69. kolega_code/agent/tests/tool_backend/test_build_tool.py +93 -0
  70. kolega_code/agent/tests/tool_backend/test_create_file_tool.py +115 -0
  71. kolega_code/agent/tests/tool_backend/test_glob_tool.py +196 -0
  72. kolega_code/agent/tests/tool_backend/test_glob_tool_sandbox_parity.py +230 -0
  73. kolega_code/agent/tests/tool_backend/test_list_directory_tool.py +292 -0
  74. kolega_code/agent/tests/tool_backend/test_read_file_tool.py +173 -0
  75. kolega_code/agent/tests/tool_backend/test_replace_entire_file_tool.py +115 -0
  76. kolega_code/agent/tests/tool_backend/test_replace_lines_tool.py +141 -0
  77. kolega_code/agent/tests/tool_backend/test_search_and_replace_tool.py +174 -0
  78. kolega_code/agent/tests/tool_backend/test_search_codebase_tool.py +228 -0
  79. kolega_code/agent/tests/tool_backend/test_terminal_tool.py +482 -0
  80. kolega_code/agent/tests/tool_backend/test_think_hard_integration.py +189 -0
  81. kolega_code/agent/tests/tool_backend/test_think_hard_streaming.py +445 -0
  82. kolega_code/agent/tests/tool_backend/test_web_fetch_tool.py +194 -0
  83. kolega_code/agent/tool_backend/agent_tool.py +414 -0
  84. kolega_code/agent/tool_backend/apply_edit_tool.py +98 -0
  85. kolega_code/agent/tool_backend/apply_patch_tool.py +514 -0
  86. kolega_code/agent/tool_backend/base_tool.py +217 -0
  87. kolega_code/agent/tool_backend/browser_tool.py +271 -0
  88. kolega_code/agent/tool_backend/build_tool.py +93 -0
  89. kolega_code/agent/tool_backend/create_file_tool.py +52 -0
  90. kolega_code/agent/tool_backend/glob_tool.py +323 -0
  91. kolega_code/agent/tool_backend/list_directory_tool.py +300 -0
  92. kolega_code/agent/tool_backend/memory_tool.py +79 -0
  93. kolega_code/agent/tool_backend/read_file_tool.py +119 -0
  94. kolega_code/agent/tool_backend/replace_entire_file_tool.py +40 -0
  95. kolega_code/agent/tool_backend/replace_lines_tool.py +97 -0
  96. kolega_code/agent/tool_backend/search_and_replace_tool.py +146 -0
  97. kolega_code/agent/tool_backend/search_codebase_tool.py +377 -0
  98. kolega_code/agent/tool_backend/streaming_tool.py +47 -0
  99. kolega_code/agent/tool_backend/terminal_tool.py +643 -0
  100. kolega_code/agent/tool_backend/think_hard_tool.py +211 -0
  101. kolega_code/agent/tool_backend/web_fetch_tool.py +205 -0
  102. kolega_code/agent/tools.py +1704 -0
  103. kolega_code/agent/utils/commands.py +94 -0
  104. kolega_code/cli/__init__.py +1 -0
  105. kolega_code/cli/app.py +2756 -0
  106. kolega_code/cli/config.py +280 -0
  107. kolega_code/cli/connection.py +49 -0
  108. kolega_code/cli/file_index.py +147 -0
  109. kolega_code/cli/main.py +564 -0
  110. kolega_code/cli/mentions.py +155 -0
  111. kolega_code/cli/messages.py +89 -0
  112. kolega_code/cli/provider_registry.py +96 -0
  113. kolega_code/cli/session_store.py +207 -0
  114. kolega_code/cli/settings.py +87 -0
  115. kolega_code/cli/skills.py +409 -0
  116. kolega_code/cli/slash_commands.py +108 -0
  117. kolega_code/cli/tests/__init__.py +1 -0
  118. kolega_code/cli/tests/test_app.py +4251 -0
  119. kolega_code/cli/tests/test_cli_config.py +171 -0
  120. kolega_code/cli/tests/test_connection.py +26 -0
  121. kolega_code/cli/tests/test_file_index.py +103 -0
  122. kolega_code/cli/tests/test_main.py +455 -0
  123. kolega_code/cli/tests/test_mentions.py +108 -0
  124. kolega_code/cli/tests/test_session_store.py +67 -0
  125. kolega_code/cli/tests/test_settings.py +62 -0
  126. kolega_code/cli/tests/test_skills.py +157 -0
  127. kolega_code/cli/tests/test_slash_commands.py +88 -0
  128. kolega_code/cli/theme.py +180 -0
  129. kolega_code/config.py +154 -0
  130. kolega_code/events.py +202 -0
  131. kolega_code/llm/client.py +300 -0
  132. kolega_code/llm/exceptions.py +285 -0
  133. kolega_code/llm/instrumented_client.py +520 -0
  134. kolega_code/llm/models.py +1368 -0
  135. kolega_code/llm/providers/__init__.py +0 -0
  136. kolega_code/llm/providers/anthropic.py +387 -0
  137. kolega_code/llm/providers/base.py +71 -0
  138. kolega_code/llm/providers/google.py +157 -0
  139. kolega_code/llm/providers/models.py +37 -0
  140. kolega_code/llm/providers/openai.py +363 -0
  141. kolega_code/llm/ratelimit.py +40 -0
  142. kolega_code/llm/specs.py +67 -0
  143. kolega_code/llm/tool_execution_ids.py +18 -0
  144. kolega_code/models/__init__.py +9 -0
  145. kolega_code/models/sandbox_terminal_state.py +47 -0
  146. kolega_code/runtime.py +50 -0
  147. kolega_code/sandbox/README.md +200 -0
  148. kolega_code/sandbox/__init__.py +21 -0
  149. kolega_code/sandbox/async_filesystem.py +475 -0
  150. kolega_code/sandbox/base.py +297 -0
  151. kolega_code/sandbox/browser.py +25 -0
  152. kolega_code/sandbox/event_loop.py +43 -0
  153. kolega_code/sandbox/filesystem.py +341 -0
  154. kolega_code/sandbox/local.py +118 -0
  155. kolega_code/sandbox/serializer.py +175 -0
  156. kolega_code/sandbox/terminal.py +868 -0
  157. kolega_code/sandbox/utils.py +216 -0
  158. kolega_code/services/base.py +255 -0
  159. kolega_code/services/browser.py +444 -0
  160. kolega_code/services/file_system.py +749 -0
  161. kolega_code/services/html.py +221 -0
  162. kolega_code/services/terminal.py +903 -0
  163. kolega_code/tools/__init__.py +22 -0
  164. kolega_code/tools/core.py +33 -0
  165. kolega_code/tools/definitions.py +81 -0
  166. kolega_code/tools/registry.py +73 -0
  167. kolega_code-0.1.0.dist-info/METADATA +157 -0
  168. kolega_code-0.1.0.dist-info/RECORD +171 -0
  169. kolega_code-0.1.0.dist-info/WHEEL +4 -0
  170. kolega_code-0.1.0.dist-info/entry_points.txt +2 -0
  171. kolega_code-0.1.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,151 @@
1
+ """Shared Kolega agent runtime package.
2
+
3
+ Everything importable directly from ``kolega_code`` is the supported public
4
+ API for host applications (KolegaPlatform, kolega-comply) and sandbox
5
+ providers (kolega-code-e2b). Deeper module paths are internal and may move
6
+ between releases; import from here instead.
7
+ """
8
+
9
+ # Agents
10
+ from .agent.baseagent import BaseAgent
11
+ from .agent.browseragent import BrowserAgent
12
+ from .agent.coder import CoderAgent
13
+ from .agent.generalagent import GeneralAgent
14
+ from .agent.investigationagent import InvestigationAgent
15
+ from .agent.planningagent import PlanningAgent
16
+
17
+ # Agent collaborators
18
+ from .agent.compression import HistoryCompressor
19
+ from .agent.context import AgentContext, AgentServices, Telemetry, WorkspaceInfo
20
+ from .agent.conversation import Conversation
21
+ from .events import AgentEventEmitter
22
+
23
+ # Configuration
24
+ from .config import AgentConfig, ModelConfig, ModelProvider, RateLimitConfig
25
+
26
+ # Events and connection management
27
+ from .events import AgentConnectionManager
28
+ from .events import AgentEvent, AgentStatus
29
+
30
+ # LLM clients and message models
31
+ from .llm.client import LLMClient
32
+ from .llm.instrumented_client import InstrumentedLLMClient
33
+ from .llm.models import (
34
+ ImageBlock,
35
+ Message,
36
+ MessageHistory,
37
+ TextBlock,
38
+ ThinkingBlock,
39
+ ToolCall,
40
+ ToolDefinition,
41
+ ToolParameter,
42
+ ToolResult,
43
+ )
44
+
45
+ # Prompts
46
+ from .agent.prompt_provider import (
47
+ AgentMode,
48
+ AgentType,
49
+ MissingPromptTemplateError,
50
+ PromptContext,
51
+ PromptExtension,
52
+ PromptProvider,
53
+ )
54
+
55
+ # Tools
56
+ from .agent.tool_backend.base_tool import BaseTool
57
+ from .agent.tools import ToolCollection, ToolCollectionConfig, ToolExtension
58
+ from .tools import Tool, ToolError, ToolPolicy, ToolRegistry, tool_definition_from_callable
59
+
60
+ # Host environment services
61
+ from .agent.common import LogMixin
62
+ from .services.base import BrowserManager, TerminalManager
63
+ from .services.browser import PlaywrightBrowserManager
64
+ from .services.file_system import FileSystem, LocalFileSystem
65
+ from .services.terminal import LocalTerminalManager
66
+
67
+ # Sandbox abstractions (implemented by provider packages such as kolega-code-e2b)
68
+ from .sandbox.base import ProjectManifest, SandboxConfig, SandboxHandle, SandboxManager
69
+ from .sandbox.local import LocalSandboxManager
70
+ from .sandbox.serializer import TerminalStateSerializer
71
+ from .sandbox.utils import (
72
+ get_git_diff_from_sandbox,
73
+ get_modified_files_from_sandbox,
74
+ parse_git_status_output,
75
+ )
76
+
77
+ __all__ = [
78
+ # Agents
79
+ "BaseAgent",
80
+ "BrowserAgent",
81
+ "CoderAgent",
82
+ "GeneralAgent",
83
+ "InvestigationAgent",
84
+ "PlanningAgent",
85
+ # Agent collaborators
86
+ "AgentContext",
87
+ "AgentServices",
88
+ "Telemetry",
89
+ "WorkspaceInfo",
90
+ "Conversation",
91
+ "HistoryCompressor",
92
+ "AgentEventEmitter",
93
+ # Configuration
94
+ "AgentConfig",
95
+ "ModelConfig",
96
+ "ModelProvider",
97
+ "RateLimitConfig",
98
+ # Events and connection management
99
+ "AgentConnectionManager",
100
+ "AgentEvent",
101
+ "AgentStatus",
102
+ # LLM
103
+ "LLMClient",
104
+ "InstrumentedLLMClient",
105
+ "ImageBlock",
106
+ "Message",
107
+ "MessageHistory",
108
+ "TextBlock",
109
+ "ThinkingBlock",
110
+ "ToolCall",
111
+ "ToolDefinition",
112
+ "ToolParameter",
113
+ "ToolResult",
114
+ # Prompts
115
+ "AgentMode",
116
+ "AgentType",
117
+ "MissingPromptTemplateError",
118
+ "PromptContext",
119
+ "PromptExtension",
120
+ "PromptProvider",
121
+ # Tools
122
+ "BaseTool",
123
+ "ToolCollection",
124
+ "ToolCollectionConfig",
125
+ "ToolExtension",
126
+ "Tool",
127
+ "ToolError",
128
+ "ToolPolicy",
129
+ "ToolRegistry",
130
+ "tool_definition_from_callable",
131
+ # Services
132
+ "LogMixin",
133
+ "BrowserManager",
134
+ "TerminalManager",
135
+ "PlaywrightBrowserManager",
136
+ "FileSystem",
137
+ "LocalFileSystem",
138
+ "LocalTerminalManager",
139
+ # Sandbox
140
+ "ProjectManifest",
141
+ "SandboxConfig",
142
+ "SandboxHandle",
143
+ "SandboxManager",
144
+ "LocalSandboxManager",
145
+ "TerminalStateSerializer",
146
+ "get_git_diff_from_sandbox",
147
+ "get_modified_files_from_sandbox",
148
+ "parse_git_status_output",
149
+ ]
150
+
151
+ __version__ = "0.1.0"
@@ -0,0 +1,42 @@
1
+ # Export base agent
2
+ from .baseagent import BaseAgent
3
+
4
+ # Export concrete agents
5
+ from .coder import CoderAgent
6
+ from .investigationagent import InvestigationAgent
7
+ from .browseragent import BrowserAgent
8
+ from .generalagent import GeneralAgent
9
+ from .planningagent import PlanningAgent
10
+
11
+ # Export agent models
12
+ from kolega_code.events import AgentStatus, AgentEvent
13
+
14
+ # Export configuration
15
+ from kolega_code.config import AgentConfig, ModelConfig, ModelProvider, RateLimitConfig
16
+ from kolega_code.events import AgentConnectionManager
17
+ from kolega_code.services.base import TerminalManager
18
+ from .prompt_provider import MissingPromptTemplateError, PromptExtension, PromptProvider
19
+ from .tools import ToolExtension
20
+
21
+ __all__ = [
22
+ "BaseAgent",
23
+ "CoderAgent",
24
+ "InvestigationAgent",
25
+ "BrowserAgent",
26
+ "GeneralAgent",
27
+ "PlanningAgent",
28
+ "AgentStatus",
29
+ "AgentEvent",
30
+ "AgentConfig",
31
+ "ModelConfig",
32
+ "RateLimitConfig",
33
+ "ModelProvider",
34
+ "AgentConnectionManager",
35
+ "TerminalManager",
36
+ "MissingPromptTemplateError",
37
+ "PromptExtension",
38
+ "PromptProvider",
39
+ "ToolExtension",
40
+ ]
41
+
42
+ __version__ = "0.1.0"