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
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"""Space shooter plugin using the full-screen framework.
|
|
2
|
+
|
|
3
|
+
A retro 80s arcade-style demo with ships flying through a starfield,
|
|
4
|
+
dodging and shooting enemies.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
import asyncio
|
|
8
|
+
import logging
|
|
9
|
+
from core.fullscreen import FullScreenPlugin
|
|
10
|
+
from core.fullscreen.plugin import PluginMetadata
|
|
11
|
+
from core.fullscreen.components.space_shooter_components import SpaceShooterRenderer
|
|
12
|
+
from core.io.key_parser import KeyPress
|
|
13
|
+
|
|
14
|
+
logger = logging.getLogger(__name__)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class SpaceShooterPlugin(FullScreenPlugin):
|
|
18
|
+
"""Space shooter demo implemented as a full-screen plugin.
|
|
19
|
+
|
|
20
|
+
This plugin creates a retro 80s arcade-style space shooter demo with
|
|
21
|
+
ships flying through a starfield, banking and dodging, shooting enemies.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
def __init__(self):
|
|
25
|
+
"""Initialize the space shooter plugin."""
|
|
26
|
+
metadata = PluginMetadata(
|
|
27
|
+
name="space",
|
|
28
|
+
description="80s arcade space shooter demo",
|
|
29
|
+
version="1.0.0",
|
|
30
|
+
author="Framework",
|
|
31
|
+
category="effects",
|
|
32
|
+
icon="*",
|
|
33
|
+
aliases=["shooter", "galaga", "arcade"]
|
|
34
|
+
)
|
|
35
|
+
super().__init__(metadata)
|
|
36
|
+
|
|
37
|
+
# Space shooter-specific state
|
|
38
|
+
self.space_renderer = None
|
|
39
|
+
self.start_time = 0
|
|
40
|
+
|
|
41
|
+
async def initialize(self, renderer) -> bool:
|
|
42
|
+
"""Initialize the space shooter plugin.
|
|
43
|
+
|
|
44
|
+
Args:
|
|
45
|
+
renderer: FullScreenRenderer instance
|
|
46
|
+
|
|
47
|
+
Returns:
|
|
48
|
+
True if initialization successful
|
|
49
|
+
"""
|
|
50
|
+
if not await super().initialize(renderer):
|
|
51
|
+
return False
|
|
52
|
+
|
|
53
|
+
try:
|
|
54
|
+
# Get terminal dimensions
|
|
55
|
+
width, height = renderer.get_terminal_size()
|
|
56
|
+
|
|
57
|
+
# Create space shooter renderer with current terminal size
|
|
58
|
+
self.space_renderer = SpaceShooterRenderer(width, height)
|
|
59
|
+
|
|
60
|
+
return True
|
|
61
|
+
|
|
62
|
+
except Exception as e:
|
|
63
|
+
logger.error(f"Failed to initialize space shooter renderer: {e}")
|
|
64
|
+
return False
|
|
65
|
+
|
|
66
|
+
async def on_start(self):
|
|
67
|
+
"""Called when space shooter plugin starts."""
|
|
68
|
+
await super().on_start()
|
|
69
|
+
self.start_time = asyncio.get_event_loop().time()
|
|
70
|
+
|
|
71
|
+
logger.info("Space shooter plugin starting via full-screen framework")
|
|
72
|
+
|
|
73
|
+
# Reset renderer for fresh start
|
|
74
|
+
if self.space_renderer:
|
|
75
|
+
self.space_renderer.reset()
|
|
76
|
+
|
|
77
|
+
async def render_frame(self, delta_time: float) -> bool:
|
|
78
|
+
"""Render a space shooter frame.
|
|
79
|
+
|
|
80
|
+
Args:
|
|
81
|
+
delta_time: Time elapsed since last frame
|
|
82
|
+
|
|
83
|
+
Returns:
|
|
84
|
+
True to continue, False to exit
|
|
85
|
+
"""
|
|
86
|
+
if not self.renderer or not self.space_renderer:
|
|
87
|
+
return False
|
|
88
|
+
|
|
89
|
+
try:
|
|
90
|
+
# Calculate current time for animation
|
|
91
|
+
current_time = asyncio.get_event_loop().time() - self.start_time
|
|
92
|
+
|
|
93
|
+
# Update animation
|
|
94
|
+
self.space_renderer.update(current_time)
|
|
95
|
+
|
|
96
|
+
# Render to screen
|
|
97
|
+
self.space_renderer.render(self.renderer)
|
|
98
|
+
|
|
99
|
+
# Update frame statistics
|
|
100
|
+
self.update_frame_stats()
|
|
101
|
+
|
|
102
|
+
return True
|
|
103
|
+
|
|
104
|
+
except Exception as e:
|
|
105
|
+
logger.error(f"Error rendering space shooter frame: {e}")
|
|
106
|
+
return False
|
|
107
|
+
|
|
108
|
+
async def handle_input(self, key_press: KeyPress) -> bool:
|
|
109
|
+
"""Handle input for space shooter plugin.
|
|
110
|
+
|
|
111
|
+
Args:
|
|
112
|
+
key_press: Key that was pressed
|
|
113
|
+
|
|
114
|
+
Returns:
|
|
115
|
+
True to exit, False to continue
|
|
116
|
+
"""
|
|
117
|
+
# Exit on 'q', ESC, or Escape key
|
|
118
|
+
if key_press.char in ['q', '\x1b'] or key_press.name == "Escape":
|
|
119
|
+
return True
|
|
120
|
+
|
|
121
|
+
# Continue running for all other keys
|
|
122
|
+
return False
|
|
123
|
+
|
|
124
|
+
async def on_stop(self):
|
|
125
|
+
"""Called when space shooter plugin stops."""
|
|
126
|
+
await super().on_stop()
|
|
127
|
+
|
|
128
|
+
async def cleanup(self):
|
|
129
|
+
"""Clean up space shooter plugin resources."""
|
|
130
|
+
self.space_renderer = None
|
|
131
|
+
await super().cleanup()
|