kollabor 0.4.9__py3-none-any.whl → 0.4.15__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.
- agents/__init__.py +2 -0
- agents/coder/__init__.py +0 -0
- agents/coder/agent.json +4 -0
- agents/coder/api-integration.md +2150 -0
- agents/coder/cli-pretty.md +765 -0
- agents/coder/code-review.md +1092 -0
- agents/coder/database-design.md +1525 -0
- agents/coder/debugging.md +1102 -0
- agents/coder/dependency-management.md +1397 -0
- agents/coder/git-workflow.md +1099 -0
- agents/coder/refactoring.md +1454 -0
- agents/coder/security-hardening.md +1732 -0
- agents/coder/system_prompt.md +1448 -0
- agents/coder/tdd.md +1367 -0
- agents/creative-writer/__init__.py +0 -0
- agents/creative-writer/agent.json +4 -0
- agents/creative-writer/character-development.md +1852 -0
- agents/creative-writer/dialogue-craft.md +1122 -0
- agents/creative-writer/plot-structure.md +1073 -0
- agents/creative-writer/revision-editing.md +1484 -0
- agents/creative-writer/system_prompt.md +690 -0
- agents/creative-writer/worldbuilding.md +2049 -0
- agents/data-analyst/__init__.py +30 -0
- agents/data-analyst/agent.json +4 -0
- agents/data-analyst/data-visualization.md +992 -0
- agents/data-analyst/exploratory-data-analysis.md +1110 -0
- agents/data-analyst/pandas-data-manipulation.md +1081 -0
- agents/data-analyst/sql-query-optimization.md +881 -0
- agents/data-analyst/statistical-analysis.md +1118 -0
- agents/data-analyst/system_prompt.md +928 -0
- agents/default/__init__.py +0 -0
- agents/default/agent.json +4 -0
- agents/default/dead-code.md +794 -0
- agents/default/explore-agent-system.md +585 -0
- agents/default/system_prompt.md +1448 -0
- agents/kollabor/__init__.py +0 -0
- agents/kollabor/analyze-plugin-lifecycle.md +175 -0
- agents/kollabor/analyze-terminal-rendering.md +388 -0
- agents/kollabor/code-review.md +1092 -0
- agents/kollabor/debug-mcp-integration.md +521 -0
- agents/kollabor/debug-plugin-hooks.md +547 -0
- agents/kollabor/debugging.md +1102 -0
- agents/kollabor/dependency-management.md +1397 -0
- agents/kollabor/git-workflow.md +1099 -0
- agents/kollabor/inspect-llm-conversation.md +148 -0
- agents/kollabor/monitor-event-bus.md +558 -0
- agents/kollabor/profile-performance.md +576 -0
- agents/kollabor/refactoring.md +1454 -0
- agents/kollabor/system_prompt copy.md +1448 -0
- agents/kollabor/system_prompt.md +757 -0
- agents/kollabor/trace-command-execution.md +178 -0
- agents/kollabor/validate-config.md +879 -0
- agents/research/__init__.py +0 -0
- agents/research/agent.json +4 -0
- agents/research/architecture-mapping.md +1099 -0
- agents/research/codebase-analysis.md +1077 -0
- agents/research/dependency-audit.md +1027 -0
- agents/research/performance-profiling.md +1047 -0
- agents/research/security-review.md +1359 -0
- agents/research/system_prompt.md +492 -0
- agents/technical-writer/__init__.py +0 -0
- agents/technical-writer/agent.json +4 -0
- agents/technical-writer/api-documentation.md +2328 -0
- agents/technical-writer/changelog-management.md +1181 -0
- agents/technical-writer/readme-writing.md +1360 -0
- agents/technical-writer/style-guide.md +1410 -0
- agents/technical-writer/system_prompt.md +653 -0
- agents/technical-writer/tutorial-creation.md +1448 -0
- core/__init__.py +0 -2
- core/application.py +343 -88
- core/cli.py +229 -10
- core/commands/menu_renderer.py +463 -59
- core/commands/registry.py +14 -9
- core/commands/system_commands.py +2461 -14
- core/config/loader.py +151 -37
- core/config/service.py +18 -6
- core/events/bus.py +29 -9
- core/events/executor.py +205 -75
- core/events/models.py +27 -8
- core/fullscreen/command_integration.py +20 -24
- core/fullscreen/components/__init__.py +10 -1
- core/fullscreen/components/matrix_components.py +1 -2
- core/fullscreen/components/space_shooter_components.py +654 -0
- core/fullscreen/plugin.py +5 -0
- core/fullscreen/renderer.py +52 -13
- core/fullscreen/session.py +52 -15
- core/io/__init__.py +29 -5
- core/io/buffer_manager.py +6 -1
- core/io/config_status_view.py +7 -29
- core/io/core_status_views.py +267 -347
- core/io/input/__init__.py +25 -0
- core/io/input/command_mode_handler.py +711 -0
- core/io/input/display_controller.py +128 -0
- core/io/input/hook_registrar.py +286 -0
- core/io/input/input_loop_manager.py +421 -0
- core/io/input/key_press_handler.py +502 -0
- core/io/input/modal_controller.py +1011 -0
- core/io/input/paste_processor.py +339 -0
- core/io/input/status_modal_renderer.py +184 -0
- core/io/input_errors.py +5 -1
- core/io/input_handler.py +211 -2452
- core/io/key_parser.py +7 -0
- core/io/layout.py +15 -3
- core/io/message_coordinator.py +111 -2
- core/io/message_renderer.py +129 -4
- core/io/status_renderer.py +147 -607
- core/io/terminal_renderer.py +97 -51
- core/io/terminal_state.py +21 -4
- core/io/visual_effects.py +816 -165
- core/llm/agent_manager.py +1063 -0
- core/llm/api_adapters/__init__.py +44 -0
- core/llm/api_adapters/anthropic_adapter.py +432 -0
- core/llm/api_adapters/base.py +241 -0
- core/llm/api_adapters/openai_adapter.py +326 -0
- core/llm/api_communication_service.py +167 -113
- core/llm/conversation_logger.py +322 -16
- core/llm/conversation_manager.py +556 -30
- core/llm/file_operations_executor.py +84 -32
- core/llm/llm_service.py +934 -103
- core/llm/mcp_integration.py +541 -57
- core/llm/message_display_service.py +135 -18
- core/llm/plugin_sdk.py +1 -2
- core/llm/profile_manager.py +1183 -0
- core/llm/response_parser.py +274 -56
- core/llm/response_processor.py +16 -3
- core/llm/tool_executor.py +6 -1
- core/logging/__init__.py +2 -0
- core/logging/setup.py +34 -6
- core/models/resume.py +54 -0
- core/plugins/__init__.py +4 -2
- core/plugins/base.py +127 -0
- core/plugins/collector.py +23 -161
- core/plugins/discovery.py +37 -3
- core/plugins/factory.py +6 -12
- core/plugins/registry.py +5 -17
- core/ui/config_widgets.py +128 -28
- core/ui/live_modal_renderer.py +2 -1
- core/ui/modal_actions.py +5 -0
- core/ui/modal_overlay_renderer.py +0 -60
- core/ui/modal_renderer.py +268 -7
- core/ui/modal_state_manager.py +29 -4
- core/ui/widgets/base_widget.py +7 -0
- core/updates/__init__.py +10 -0
- core/updates/version_check_service.py +348 -0
- core/updates/version_comparator.py +103 -0
- core/utils/config_utils.py +685 -526
- core/utils/plugin_utils.py +1 -1
- core/utils/session_naming.py +111 -0
- fonts/LICENSE +21 -0
- fonts/README.md +46 -0
- fonts/SymbolsNerdFont-Regular.ttf +0 -0
- fonts/SymbolsNerdFontMono-Regular.ttf +0 -0
- fonts/__init__.py +44 -0
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/METADATA +54 -4
- kollabor-0.4.15.dist-info/RECORD +228 -0
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/top_level.txt +2 -0
- plugins/agent_orchestrator/__init__.py +39 -0
- plugins/agent_orchestrator/activity_monitor.py +181 -0
- plugins/agent_orchestrator/file_attacher.py +77 -0
- plugins/agent_orchestrator/message_injector.py +135 -0
- plugins/agent_orchestrator/models.py +48 -0
- plugins/agent_orchestrator/orchestrator.py +403 -0
- plugins/agent_orchestrator/plugin.py +976 -0
- plugins/agent_orchestrator/xml_parser.py +191 -0
- plugins/agent_orchestrator_plugin.py +9 -0
- plugins/enhanced_input/box_styles.py +1 -0
- plugins/enhanced_input/color_engine.py +19 -4
- plugins/enhanced_input/config.py +2 -2
- plugins/enhanced_input_plugin.py +61 -11
- plugins/fullscreen/__init__.py +6 -2
- plugins/fullscreen/example_plugin.py +1035 -222
- plugins/fullscreen/setup_wizard_plugin.py +592 -0
- plugins/fullscreen/space_shooter_plugin.py +131 -0
- plugins/hook_monitoring_plugin.py +436 -78
- plugins/query_enhancer_plugin.py +66 -30
- plugins/resume_conversation_plugin.py +1494 -0
- plugins/save_conversation_plugin.py +98 -32
- plugins/system_commands_plugin.py +70 -56
- plugins/tmux_plugin.py +154 -78
- plugins/workflow_enforcement_plugin.py +94 -92
- system_prompt/default.md +952 -886
- core/io/input_mode_manager.py +0 -402
- core/io/modal_interaction_handler.py +0 -315
- core/io/raw_input_processor.py +0 -946
- core/storage/__init__.py +0 -5
- core/storage/state_manager.py +0 -84
- core/ui/widget_integration.py +0 -222
- core/utils/key_reader.py +0 -171
- kollabor-0.4.9.dist-info/RECORD +0 -128
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/WHEEL +0 -0
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/entry_points.txt +0 -0
- {kollabor-0.4.9.dist-info → kollabor-0.4.15.dist-info}/licenses/LICENSE +0 -0
plugins/query_enhancer_plugin.py
CHANGED
|
@@ -10,6 +10,7 @@ from typing import Any, Dict, List
|
|
|
10
10
|
import aiohttp
|
|
11
11
|
|
|
12
12
|
from core.events.models import Event, EventType, Hook, HookPriority
|
|
13
|
+
from core.io.visual_effects import AgnosterSegment
|
|
13
14
|
|
|
14
15
|
logger = logging.getLogger(__name__)
|
|
15
16
|
|
|
@@ -81,18 +82,16 @@ Enhanced query:""",
|
|
|
81
82
|
]
|
|
82
83
|
}
|
|
83
84
|
|
|
84
|
-
def __init__(self, name: str,
|
|
85
|
+
def __init__(self, name: str, event_bus, renderer, config) -> None:
|
|
85
86
|
"""Initialize the query enhancer plugin.
|
|
86
|
-
|
|
87
|
+
|
|
87
88
|
Args:
|
|
88
89
|
name: Plugin name.
|
|
89
|
-
state_manager: State management system.
|
|
90
90
|
event_bus: Event bus for hook registration.
|
|
91
91
|
renderer: Terminal renderer.
|
|
92
92
|
config: Configuration manager.
|
|
93
93
|
"""
|
|
94
94
|
self.name = name
|
|
95
|
-
self.state_manager = state_manager
|
|
96
95
|
self.event_bus = event_bus
|
|
97
96
|
self.renderer = renderer
|
|
98
97
|
self.config = config
|
|
@@ -131,38 +130,75 @@ Enhanced query:""",
|
|
|
131
130
|
|
|
132
131
|
logger.info(f"QueryEnhancer plugin '{name}' initialized with fast model: {self.fast_model_config.get('model', 'unknown')}")
|
|
133
132
|
|
|
134
|
-
def get_status_lines(self) -> Dict[str, List[str]]:
|
|
135
|
-
"""Get status lines for the query enhancer plugin organized by area.
|
|
136
|
-
|
|
137
|
-
Returns:
|
|
138
|
-
Dictionary with status lines organized by area A, B, C.
|
|
139
|
-
"""
|
|
140
|
-
# Check if status display is enabled for this plugin
|
|
141
|
-
show_status = self.config.get('plugins.query_enhancer.show_status', True)
|
|
142
|
-
if not show_status or not self.enabled:
|
|
143
|
-
return {"A": [], "B": [], "C": []}
|
|
144
|
-
|
|
145
|
-
success_rate = 0.0
|
|
146
|
-
if self.stats["total_queries"] > 0:
|
|
147
|
-
success_rate = (self.stats["enhanced_queries"] / self.stats["total_queries"]) * 100
|
|
148
|
-
|
|
149
|
-
# Enhancement stats go in area B (performance-related)
|
|
150
|
-
return {
|
|
151
|
-
"A": [],
|
|
152
|
-
"B": [
|
|
153
|
-
f"Enhanced: {self.stats['enhanced_queries']}/{self.stats['total_queries']} ({success_rate:.1f}%)",
|
|
154
|
-
f"Avg Time: {self.stats['avg_enhancement_time']:.2f}s"
|
|
155
|
-
],
|
|
156
|
-
"C": []
|
|
157
|
-
}
|
|
158
|
-
|
|
159
133
|
async def initialize(self) -> None:
|
|
160
134
|
"""Initialize the query enhancer plugin."""
|
|
161
135
|
if self.enabled:
|
|
162
|
-
# Create HTTP session for fast model API calls
|
|
163
136
|
timeout = aiohttp.ClientTimeout(total=self.fast_model_config.get("timeout", 5))
|
|
164
137
|
self.session = aiohttp.ClientSession(timeout=timeout)
|
|
165
138
|
logger.info("QueryEnhancer HTTP session initialized")
|
|
139
|
+
|
|
140
|
+
# Register status view
|
|
141
|
+
await self._register_status_view()
|
|
142
|
+
|
|
143
|
+
async def _register_status_view(self) -> None:
|
|
144
|
+
"""Register query enhancer status view."""
|
|
145
|
+
try:
|
|
146
|
+
if (self.renderer and
|
|
147
|
+
hasattr(self.renderer, 'status_renderer') and
|
|
148
|
+
self.renderer.status_renderer and
|
|
149
|
+
hasattr(self.renderer.status_renderer, 'status_registry') and
|
|
150
|
+
self.renderer.status_renderer.status_registry):
|
|
151
|
+
|
|
152
|
+
from core.io.status_renderer import StatusViewConfig, BlockConfig
|
|
153
|
+
|
|
154
|
+
view = StatusViewConfig(
|
|
155
|
+
name="Query Enhancer",
|
|
156
|
+
plugin_source="query_enhancer",
|
|
157
|
+
priority=350,
|
|
158
|
+
blocks=[BlockConfig(
|
|
159
|
+
width_fraction=1.0,
|
|
160
|
+
content_provider=self._get_status_content,
|
|
161
|
+
title="Query Enhancer",
|
|
162
|
+
priority=100
|
|
163
|
+
)],
|
|
164
|
+
)
|
|
165
|
+
|
|
166
|
+
registry = self.renderer.status_renderer.status_registry
|
|
167
|
+
registry.register_status_view("query_enhancer", view)
|
|
168
|
+
logger.info("Registered 'Query Enhancer' status view")
|
|
169
|
+
|
|
170
|
+
except Exception as e:
|
|
171
|
+
logger.error(f"Failed to register status view: {e}")
|
|
172
|
+
|
|
173
|
+
def _get_status_content(self) -> List[str]:
|
|
174
|
+
"""Get query enhancer status (agnoster style)."""
|
|
175
|
+
try:
|
|
176
|
+
seg = AgnosterSegment()
|
|
177
|
+
|
|
178
|
+
show_status = self.config.get('plugins.query_enhancer.show_status', True)
|
|
179
|
+
if not show_status or not self.enabled:
|
|
180
|
+
seg.add_neutral("Enhancer: Off", "dark")
|
|
181
|
+
return [seg.render()]
|
|
182
|
+
|
|
183
|
+
success_rate = 0.0
|
|
184
|
+
if self.stats["total_queries"] > 0:
|
|
185
|
+
success_rate = (self.stats["enhanced_queries"] / self.stats["total_queries"]) * 100
|
|
186
|
+
|
|
187
|
+
model = self.fast_model_config.get('model', 'unknown')
|
|
188
|
+
|
|
189
|
+
seg.add_lime("Enhancer", "dark")
|
|
190
|
+
seg.add_cyan(model, "dark")
|
|
191
|
+
seg.add_lime(f"{self.stats['enhanced_queries']}/{self.stats['total_queries']}")
|
|
192
|
+
seg.add_cyan(f"{success_rate:.0f}%")
|
|
193
|
+
seg.add_neutral(f"{self.stats['avg_enhancement_time']:.2f}s", "mid")
|
|
194
|
+
|
|
195
|
+
return [seg.render()]
|
|
196
|
+
|
|
197
|
+
except Exception as e:
|
|
198
|
+
logger.error(f"Error getting status content: {e}")
|
|
199
|
+
seg = AgnosterSegment()
|
|
200
|
+
seg.add_neutral("Enhancer: Error", "dark")
|
|
201
|
+
return [seg.render()]
|
|
166
202
|
|
|
167
203
|
async def register_hooks(self) -> None:
|
|
168
204
|
"""Register query enhancement hooks."""
|