mindroot 8.1.0__py3-none-any.whl → 8.2.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.
Potentially problematic release.
This version of mindroot might be problematic. Click here for more details.
- mindroot/coreplugins/admin/plugin_manager.py +126 -3
- mindroot/coreplugins/admin/plugin_manager_backup.py +615 -0
- mindroot/coreplugins/admin/server_router.py +8 -1
- mindroot/coreplugins/admin/static/js/plugin-advanced-install.js +83 -12
- mindroot/coreplugins/admin/static/js/plugin-index-browser.js +138 -10
- mindroot/coreplugins/admin/static/js/plugin-install-dialog.js +345 -0
- mindroot/coreplugins/admin/static/js/server-control.js +68 -6
- mindroot/coreplugins/agent/agent.py +4 -0
- mindroot/coreplugins/chat/models.py +0 -1
- mindroot/coreplugins/chat/router.py +31 -0
- mindroot/coreplugins/chat/services.py +24 -0
- mindroot/coreplugins/chat/static/css/dark.css +35 -0
- mindroot/coreplugins/chat/static/css/default.css +35 -0
- mindroot/coreplugins/chat/static/js/chatform.js +185 -0
- mindroot/coreplugins/home/router.py +33 -2
- mindroot/coreplugins/home/static/css/enhanced.css +111 -5
- mindroot/coreplugins/home/templates/home.jinja2 +7 -4
- mindroot/lib/chatlog.py +5 -1
- mindroot/lib/streamcmd.py +139 -0
- mindroot/lib/templates.py +13 -2
- {mindroot-8.1.0.dist-info → mindroot-8.2.0.dist-info}/METADATA +1 -1
- {mindroot-8.1.0.dist-info → mindroot-8.2.0.dist-info}/RECORD +26 -23
- {mindroot-8.1.0.dist-info → mindroot-8.2.0.dist-info}/WHEEL +0 -0
- {mindroot-8.1.0.dist-info → mindroot-8.2.0.dist-info}/entry_points.txt +0 -0
- {mindroot-8.1.0.dist-info → mindroot-8.2.0.dist-info}/licenses/LICENSE +0 -0
- {mindroot-8.1.0.dist-info → mindroot-8.2.0.dist-info}/top_level.txt +0 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
/* Enhanced styles for
|
|
1
|
+
/* Enhanced styles for MindRoot Agent Host */
|
|
2
2
|
|
|
3
3
|
.agent-container {
|
|
4
|
-
|
|
4
|
+
width: 90%; /* Use percentage instead of fixed width */
|
|
5
|
+
max-width: 2000px; /* Increased from 1200px for wider screens */
|
|
5
6
|
margin: 0 auto;
|
|
6
7
|
padding: 2rem;
|
|
7
8
|
}
|
|
@@ -9,6 +10,7 @@
|
|
|
9
10
|
.logo {
|
|
10
11
|
transition: transform 0.3s ease;
|
|
11
12
|
margin-bottom: 2rem;
|
|
13
|
+
max-width: 120px; /* Control logo size */
|
|
12
14
|
}
|
|
13
15
|
|
|
14
16
|
.logo:hover {
|
|
@@ -22,13 +24,15 @@ h1 {
|
|
|
22
24
|
background: linear-gradient(45deg, #6e8efb, #a777e3);
|
|
23
25
|
-webkit-background-clip: text;
|
|
24
26
|
-webkit-text-fill-color: transparent;
|
|
27
|
+
text-align: center;
|
|
25
28
|
}
|
|
26
29
|
|
|
27
30
|
.agent-list {
|
|
28
31
|
display: grid;
|
|
29
|
-
grid-template-columns: repeat(auto-fill, minmax(
|
|
32
|
+
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
|
|
30
33
|
gap: 1.5rem;
|
|
31
34
|
margin-top: 2rem;
|
|
35
|
+
width: 100%;
|
|
32
36
|
}
|
|
33
37
|
|
|
34
38
|
.agent-link {
|
|
@@ -38,9 +42,12 @@ h1 {
|
|
|
38
42
|
transition: all 0.3s ease;
|
|
39
43
|
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
40
44
|
display: flex;
|
|
45
|
+
flex-direction: column;
|
|
41
46
|
align-items: center;
|
|
47
|
+
text-align: center;
|
|
42
48
|
text-decoration: none;
|
|
43
49
|
color: inherit;
|
|
50
|
+
height: 100%;
|
|
44
51
|
}
|
|
45
52
|
|
|
46
53
|
.agent-link:hover {
|
|
@@ -54,13 +61,40 @@ h1 {
|
|
|
54
61
|
height: 8px;
|
|
55
62
|
border-radius: 50%;
|
|
56
63
|
background: #4CAF50;
|
|
57
|
-
margin-
|
|
64
|
+
margin-bottom: 8px;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.agent-avatar {
|
|
68
|
+
width: 160px;
|
|
69
|
+
height: 160px;
|
|
70
|
+
border-radius: 50%;
|
|
71
|
+
object-fit: cover;
|
|
72
|
+
margin-bottom: 16px;
|
|
73
|
+
border: 2px solid rgba(255, 255, 255, 0.2);
|
|
74
|
+
transition: all 0.3s ease;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.agent-link:hover .agent-avatar {
|
|
78
|
+
border-color: rgba(255, 255, 255, 0.5);
|
|
79
|
+
transform: scale(1.05);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.agent-info {
|
|
83
|
+
display: flex;
|
|
84
|
+
flex-direction: column;
|
|
85
|
+
align-items: center;
|
|
86
|
+
width: 100%;
|
|
58
87
|
}
|
|
59
88
|
|
|
60
89
|
.agent-name {
|
|
61
90
|
font-size: 1.2rem;
|
|
62
91
|
font-weight: 500;
|
|
63
92
|
letter-spacing: 0.5px;
|
|
93
|
+
word-break: keep-all;
|
|
94
|
+
max-width: 100%;
|
|
95
|
+
overflow-wrap: break-word;
|
|
96
|
+
line-height: 1.3;
|
|
97
|
+
white-space: normal;
|
|
64
98
|
}
|
|
65
99
|
|
|
66
100
|
.admin-link {
|
|
@@ -79,7 +113,7 @@ h1 {
|
|
|
79
113
|
}
|
|
80
114
|
|
|
81
115
|
.admin-link:visited {
|
|
82
|
-
|
|
116
|
+
color: #ddd;
|
|
83
117
|
}
|
|
84
118
|
|
|
85
119
|
h2 {
|
|
@@ -87,4 +121,76 @@ h2 {
|
|
|
87
121
|
font-weight: 500;
|
|
88
122
|
margin-bottom: 1.5rem;
|
|
89
123
|
color: rgba(255, 255, 255, 0.9);
|
|
124
|
+
text-align: center;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/* Responsive breakpoints */
|
|
128
|
+
|
|
129
|
+
/* Extra large screens */
|
|
130
|
+
@media (min-width: 1800px) {
|
|
131
|
+
.agent-list {
|
|
132
|
+
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.agent-container {
|
|
136
|
+
width: 85%;
|
|
137
|
+
max-width: 2400px;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/* Large screens */
|
|
142
|
+
@media (min-width: 1200px) and (max-width: 1799px) {
|
|
143
|
+
.agent-list {
|
|
144
|
+
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.agent-container {
|
|
148
|
+
width: 90%;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/* Medium screens */
|
|
153
|
+
@media (min-width: 768px) and (max-width: 1199px) {
|
|
154
|
+
.agent-list {
|
|
155
|
+
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
.agent-avatar {
|
|
159
|
+
width: 140px;
|
|
160
|
+
height: 140px;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.agent-container {
|
|
164
|
+
width: 95%;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
/* Small screens */
|
|
169
|
+
@media (max-width: 767px) {
|
|
170
|
+
.agent-list {
|
|
171
|
+
grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
|
|
172
|
+
gap: 1rem;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
.agent-avatar {
|
|
176
|
+
width: 120px;
|
|
177
|
+
height: 120px;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.agent-name {
|
|
181
|
+
font-size: 1rem;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.agent-container {
|
|
185
|
+
width: 100%;
|
|
186
|
+
padding: 1rem;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
h1 {
|
|
190
|
+
font-size: 2rem;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
h2 {
|
|
194
|
+
font-size: 1.3rem;
|
|
195
|
+
}
|
|
90
196
|
}
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
{% block head_title %}
|
|
11
11
|
<title>MindRoot Agent Host</title>
|
|
12
12
|
{% endblock %}
|
|
13
|
+
|
|
13
14
|
{% block head_css %}
|
|
14
15
|
<link rel="stylesheet" href="/home/static/css/reset.css">
|
|
15
16
|
<link rel="stylesheet" href="/home/static/css/default.css">
|
|
@@ -51,9 +52,12 @@
|
|
|
51
52
|
|
|
52
53
|
<div class="agent-list" role="list">
|
|
53
54
|
{% for agent in agents %}
|
|
54
|
-
<a href="/agent/{{ agent }}" class="agent-link" role="listitem" target="_blank"
|
|
55
|
-
<
|
|
56
|
-
<
|
|
55
|
+
<a href="/agent/{{ agent }}" class="agent-link" role="listitem" target="_blank">
|
|
56
|
+
<img src="/chat/personas/{{ agent }}/avatar.png" alt="{{ agent }} avatar" class="agent-avatar" onerror="this.src='/chat/static/assistant.png'">
|
|
57
|
+
<div class="agent-info">
|
|
58
|
+
<span class="agent-status" aria-hidden="true"></span>
|
|
59
|
+
<span class="agent-name">{{ agent | replace('_', ' ') }}</span>
|
|
60
|
+
</div>
|
|
57
61
|
</a>
|
|
58
62
|
{% endfor %}
|
|
59
63
|
</div>
|
|
@@ -74,4 +78,3 @@
|
|
|
74
78
|
{% endblock %}
|
|
75
79
|
</body>
|
|
76
80
|
</html>
|
|
77
|
-
|
mindroot/lib/chatlog.py
CHANGED
|
@@ -70,7 +70,11 @@ class ChatLog:
|
|
|
70
70
|
except Exception as e:
|
|
71
71
|
# assume previous mesage was not a command, was a string
|
|
72
72
|
debug_box("4")
|
|
73
|
-
|
|
73
|
+
print("Could not combine commands, probably normal if user message and previous system output, assuming string", e)
|
|
74
|
+
if type(self.messages[-1]['content']) == str:
|
|
75
|
+
new_msg_text = self.messages[-1]['content'] + message['content'][0]['text']
|
|
76
|
+
else:
|
|
77
|
+
new_msg_text = self.messages[-1]['content'][0]['text'] + message['content'][0]['text']
|
|
74
78
|
self.messages.append({'role': message['role'], 'content': [{'type': 'text', 'text': new_msg_text}]})
|
|
75
79
|
#print('could not combine commands. probably normal if user message and previous system output', e)
|
|
76
80
|
#print(self.messages[-1])
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
|
|
3
|
+
import asyncio
|
|
4
|
+
import sys
|
|
5
|
+
from typing import Optional, Callable, Any, List, Dict, AsyncGenerator
|
|
6
|
+
|
|
7
|
+
# ANSI color codes for terminal output
|
|
8
|
+
COLORS = {
|
|
9
|
+
'reset': '\033[0m',
|
|
10
|
+
'green': '\033[32m', # stdout
|
|
11
|
+
'yellow': '\033[33m', # stderr/warning
|
|
12
|
+
'blue': '\033[34m', # info
|
|
13
|
+
'red': '\033[31m' # error
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
async def read_stream(stream: asyncio.StreamReader, callback: Callable[[str], Any]):
|
|
18
|
+
"""Read from stream line by line and call the callback for each line."""
|
|
19
|
+
while True:
|
|
20
|
+
line = await stream.readline()
|
|
21
|
+
if not line:
|
|
22
|
+
break
|
|
23
|
+
callback(line.decode('utf-8', errors='replace'))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
async def run_command_with_streaming(
|
|
27
|
+
cmd: List[str],
|
|
28
|
+
stdout_callback: Callable[[str], Any],
|
|
29
|
+
stderr_callback: Callable[[str], Any],
|
|
30
|
+
cwd: Optional[str] = None,
|
|
31
|
+
env: Optional[dict] = None
|
|
32
|
+
) -> int:
|
|
33
|
+
"""Run a command asynchronously and stream its output.
|
|
34
|
+
|
|
35
|
+
Args:
|
|
36
|
+
cmd: Command to run as a list of strings
|
|
37
|
+
stdout_callback: Callback for stdout lines
|
|
38
|
+
stderr_callback: Callback for stderr lines
|
|
39
|
+
cwd: Working directory for the command
|
|
40
|
+
env: Environment variables for the command
|
|
41
|
+
|
|
42
|
+
Returns:
|
|
43
|
+
Exit code of the command
|
|
44
|
+
"""
|
|
45
|
+
try:
|
|
46
|
+
process = await asyncio.create_subprocess_exec(
|
|
47
|
+
*cmd,
|
|
48
|
+
stdout=asyncio.subprocess.PIPE,
|
|
49
|
+
stderr=asyncio.subprocess.PIPE,
|
|
50
|
+
cwd=cwd,
|
|
51
|
+
env=env
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
# Create tasks to read from stdout and stderr
|
|
55
|
+
stdout_task = asyncio.create_task(
|
|
56
|
+
read_stream(process.stdout, stdout_callback)
|
|
57
|
+
)
|
|
58
|
+
stderr_task = asyncio.create_task(
|
|
59
|
+
read_stream(process.stderr, stderr_callback)
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
# Wait for the process to complete and streams to be fully read
|
|
63
|
+
await asyncio.gather(stdout_task, stderr_task)
|
|
64
|
+
exit_code = await process.wait()
|
|
65
|
+
|
|
66
|
+
return exit_code
|
|
67
|
+
|
|
68
|
+
except Exception as e:
|
|
69
|
+
print(f"Failed to run command: {e}")
|
|
70
|
+
return 1
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
async def stream_command_as_events(
|
|
74
|
+
cmd: List[str],
|
|
75
|
+
cwd: Optional[str] = None,
|
|
76
|
+
env: Optional[dict] = None
|
|
77
|
+
) -> AsyncGenerator[Dict[str, str], None]:
|
|
78
|
+
"""Run a command and yield its output as events.
|
|
79
|
+
|
|
80
|
+
Args:
|
|
81
|
+
cmd: Command to run as a list of strings
|
|
82
|
+
cwd: Working directory for the command
|
|
83
|
+
env: Environment variables for the command
|
|
84
|
+
|
|
85
|
+
Yields:
|
|
86
|
+
Events with type and data
|
|
87
|
+
"""
|
|
88
|
+
# Debug output
|
|
89
|
+
print(f"{COLORS['blue']}[DEBUG] Running command: {' '.join(cmd)}{COLORS['reset']}")
|
|
90
|
+
|
|
91
|
+
# Send initial event
|
|
92
|
+
yield {"event": "message", "data": f"Running command: {' '.join(cmd)}"}
|
|
93
|
+
|
|
94
|
+
# Create queues for stdout and stderr
|
|
95
|
+
output_queue = asyncio.Queue()
|
|
96
|
+
|
|
97
|
+
# Define callbacks for stdout and stderr
|
|
98
|
+
def stdout_callback(line):
|
|
99
|
+
if line.strip():
|
|
100
|
+
print(f"{COLORS['green']}[STDOUT] {line.strip()}{COLORS['reset']}")
|
|
101
|
+
output_queue.put_nowait(("message", line.strip()))
|
|
102
|
+
|
|
103
|
+
def stderr_callback(line):
|
|
104
|
+
if line.strip():
|
|
105
|
+
# Determine if this is a warning or an error
|
|
106
|
+
if ("WARNING:" in line or
|
|
107
|
+
"DEPRECATION:" in line or
|
|
108
|
+
"A new release of pip is available" in line):
|
|
109
|
+
print(f"{COLORS['yellow']}[WARNING] {line.strip()}{COLORS['reset']}")
|
|
110
|
+
output_queue.put_nowait(("warning", line.strip()))
|
|
111
|
+
else:
|
|
112
|
+
print(f"{COLORS['red']}[ERROR] {line.strip()}{COLORS['reset']}")
|
|
113
|
+
output_queue.put_nowait(("warning", line.strip()))
|
|
114
|
+
|
|
115
|
+
# Run the command in a separate task
|
|
116
|
+
run_task = asyncio.create_task(
|
|
117
|
+
run_command_with_streaming(cmd, stdout_callback, stderr_callback, cwd, env)
|
|
118
|
+
)
|
|
119
|
+
|
|
120
|
+
# Stream events from the queue while the command is running
|
|
121
|
+
while not run_task.done() or not output_queue.empty():
|
|
122
|
+
try:
|
|
123
|
+
event_type, data = await asyncio.wait_for(output_queue.get(), timeout=0.1)
|
|
124
|
+
yield {"event": event_type, "data": data}
|
|
125
|
+
except asyncio.TimeoutError:
|
|
126
|
+
# No output available, just continue
|
|
127
|
+
await asyncio.sleep(0.01)
|
|
128
|
+
|
|
129
|
+
# Get the exit code
|
|
130
|
+
exit_code = await run_task
|
|
131
|
+
|
|
132
|
+
# Send completion event
|
|
133
|
+
print(f"{COLORS['blue']}[INFO] Command completed with exit code {exit_code}{COLORS['reset']}")
|
|
134
|
+
if exit_code == 0:
|
|
135
|
+
yield {"event": "complete", "data": "Command completed successfully"}
|
|
136
|
+
else:
|
|
137
|
+
print(f"{COLORS['red']}[ERROR] Command failed with exit code {exit_code}{COLORS['reset']}")
|
|
138
|
+
yield {"event": "error", "data": f"Command failed with exit code {exit_code}"}
|
|
139
|
+
|
mindroot/lib/templates.py
CHANGED
|
@@ -3,7 +3,7 @@ import logging
|
|
|
3
3
|
from jinja2 import Environment, FileSystemLoader, ChoiceLoader
|
|
4
4
|
from .plugins import list_enabled, get_plugin_path
|
|
5
5
|
from .parent_templates import get_parent_templates_env
|
|
6
|
-
|
|
6
|
+
import traceback
|
|
7
7
|
|
|
8
8
|
# TODO: get_parent_templates_env(plugins):
|
|
9
9
|
# jinja2 environment containing only 1 template per plugin file name,
|
|
@@ -243,8 +243,10 @@ async def render_combined_template(page_name, plugins, context):
|
|
|
243
243
|
str: Rendered HTML
|
|
244
244
|
"""
|
|
245
245
|
parent_template = parent_env.get_template(f"{page_name}.jinja2")
|
|
246
|
+
print(f"parent_template", parent_template)
|
|
246
247
|
child_templates = await load_plugin_templates(page_name, plugins)
|
|
247
248
|
parent_blocks = parent_template.blocks.keys()
|
|
249
|
+
print(f"parent_blocks", parent_blocks)
|
|
248
250
|
all_content = {block: {'inject': [], 'override': None} for block in parent_blocks}
|
|
249
251
|
|
|
250
252
|
# Ensure context is a dictionary
|
|
@@ -348,8 +350,9 @@ async def render(page_name, context):
|
|
|
348
350
|
# First try to render with the combined template approach
|
|
349
351
|
try:
|
|
350
352
|
parent_env.get_template(f"{page_name}.jinja2")
|
|
351
|
-
return await render_combined_template(page_name, plugins, context)
|
|
352
353
|
except Exception as e:
|
|
354
|
+
trace = traceback.format_exc()
|
|
355
|
+
print(f"Error finding parent template for {page_name}: {e}\n\n{trace}")
|
|
353
356
|
print(f"No parent template found for {page_name}, trying direct rendering: {e}")
|
|
354
357
|
|
|
355
358
|
# Try to find and render a template directly from a plugin
|
|
@@ -358,3 +361,11 @@ async def render(page_name, context):
|
|
|
358
361
|
return await render_direct_template(template_path, context)
|
|
359
362
|
|
|
360
363
|
return f"<h1>Template Not Found</h1><p>No template found for '{page_name}'</p>"
|
|
364
|
+
|
|
365
|
+
try:
|
|
366
|
+
return await render_combined_template(page_name, plugins, context)
|
|
367
|
+
except Exception as e:
|
|
368
|
+
trace = traceback.format_exc()
|
|
369
|
+
print(f"Error rendering {page_name}: {e}\n\n{trace}")
|
|
370
|
+
return f"<h1>Error Rendering Page</h1><p>{str(e)}</p><pre>{trace}</pre>"
|
|
371
|
+
|
|
@@ -6,10 +6,11 @@ mindroot/coreplugins/admin/agent_router.py,sha256=mstYUURNRb9MpfNwqMYC7WY3FOQJ-5
|
|
|
6
6
|
mindroot/coreplugins/admin/command_router.py,sha256=nhNkurIb9w7itgQ5nBtDYM-W2q69cYpLAq9HLrK-0Bk,6567
|
|
7
7
|
mindroot/coreplugins/admin/persona_handler.py,sha256=eRYmmOmupLJuiujWN35SS2nwRgo0lbbXug-chZ_WmjU,2862
|
|
8
8
|
mindroot/coreplugins/admin/persona_router.py,sha256=tyPxBe-pRnntHo_xyazvnwKZxHmvEI5_Fsu0YkZbrXA,6036
|
|
9
|
-
mindroot/coreplugins/admin/plugin_manager.py,sha256=
|
|
9
|
+
mindroot/coreplugins/admin/plugin_manager.py,sha256=k_buWtxh1JGb7j_NMILxJlZ_ZU5VVuXQpw4_Qp1Zjjo,14587
|
|
10
|
+
mindroot/coreplugins/admin/plugin_manager_backup.py,sha256=pUnh-EW4BMOrL2tYUq1X2BC65aoTBhDM-o2-mlDYXfU,24583
|
|
10
11
|
mindroot/coreplugins/admin/plugin_router.py,sha256=EEDIM0MMPhqeej8Lu8cazYgzaXH1sKZLy_6kBOwrUgY,1020
|
|
11
12
|
mindroot/coreplugins/admin/router.py,sha256=Wzeri92Rv39YKTYflMZ3E1pnYy959KHWRjS8D4Xgaao,1580
|
|
12
|
-
mindroot/coreplugins/admin/server_router.py,sha256=
|
|
13
|
+
mindroot/coreplugins/admin/server_router.py,sha256=aZ5v7QBcK1LJ2yiciUA4elY26iSGl-8m03L1h3ogvP4,4533
|
|
13
14
|
mindroot/coreplugins/admin/service_models.py,sha256=ccYdLjWlEbbkIq9y9T5TL8NGSO6m1LLiJb9J2wkbenY,3354
|
|
14
15
|
mindroot/coreplugins/admin/settings_router.py,sha256=s5LWB6BiMXhnxduxwi6bQUVtYs3vrNCrUe0Qm8DOo6s,5451
|
|
15
16
|
mindroot/coreplugins/admin/static/logo.png,sha256=ZfPlCqCjU0_TXte5gvEx81zRKge--l_z2y0AArKl0as,17823
|
|
@@ -50,13 +51,14 @@ mindroot/coreplugins/admin/static/js/missing-commands.js,sha256=adNF9GWN981_KX7H
|
|
|
50
51
|
mindroot/coreplugins/admin/static/js/model-preferences.js,sha256=J0G7gcGACaPyslWJO42urf5wbZZsqO0LyPicAu-uV_Y,3365
|
|
51
52
|
mindroot/coreplugins/admin/static/js/notification.js,sha256=296rVCr6MNtzvzdzW3bGiMa231-BnWJtwZZ_sDWX-3c,5633
|
|
52
53
|
mindroot/coreplugins/admin/static/js/persona-editor.js,sha256=xO2jobJXwqGY7Uajj3vQxyERubsHZovIPF_8FHpvzFE,8604
|
|
53
|
-
mindroot/coreplugins/admin/static/js/plugin-advanced-install.js,sha256=
|
|
54
|
+
mindroot/coreplugins/admin/static/js/plugin-advanced-install.js,sha256=urj95n_Jcp_ZlSoLIwaw9dfA6SHCoosISbaP3-dxxHs,6950
|
|
54
55
|
mindroot/coreplugins/admin/static/js/plugin-base.js,sha256=KWp5DqueHtyTxYKbuHMoFpoFXrfMbIjzK4M1ulAR9m8,5095
|
|
55
|
-
mindroot/coreplugins/admin/static/js/plugin-index-browser.js,sha256=
|
|
56
|
+
mindroot/coreplugins/admin/static/js/plugin-index-browser.js,sha256=P-V4wqlYGxjr7oF2LiD5ti8Is3wtSsKPwpRgRJpT0VI,10028
|
|
57
|
+
mindroot/coreplugins/admin/static/js/plugin-install-dialog.js,sha256=ty_dZ9dZcpp9El1j3eY4Z6Wp8iZ5WNkf_lHSV-W1IhA,8216
|
|
56
58
|
mindroot/coreplugins/admin/static/js/plugin-list.js,sha256=6sUZMpyIAhZEkLcnUym0FwneZND08mcFii5dOlYvadw,5012
|
|
57
59
|
mindroot/coreplugins/admin/static/js/plugin-manager.js,sha256=RDBCnYQxH7Xbftwgg3llJ5BCrEeG9qfHzb80UzZzhsk,3341
|
|
58
60
|
mindroot/coreplugins/admin/static/js/plugin-toggle.js,sha256=9A4rM1lavLLUU8oaqPW8-K_JR8epgmPVBV-fjOabY7s,3862
|
|
59
|
-
mindroot/coreplugins/admin/static/js/server-control.js,sha256=
|
|
61
|
+
mindroot/coreplugins/admin/static/js/server-control.js,sha256=Bctd20gnf5rqwI7eqIR7GrXPpUbjxhk0jLi5sbS5a40,7097
|
|
60
62
|
mindroot/coreplugins/admin/static/js/toggle-switch.js,sha256=wLmzsngpNCjtGvFZ-eUIUO4APHa_cplWvZ7uBUqqYRg,2312
|
|
61
63
|
mindroot/coreplugins/admin/static/js/lit-html/LICENSE,sha256=K2b5OQr94p7f5DFNr_k_AfsYLhF4BT4igSAXiYfl23U,1518
|
|
62
64
|
mindroot/coreplugins/admin/static/js/lit-html/README.md,sha256=w-8qs6ZWte8yzeZ3g2-LlFDRWQQMtrQFAVjRFvb7z-4,3225
|
|
@@ -422,7 +424,7 @@ mindroot/coreplugins/admin/static/js/lit-html/node/directives/until.js.map,sha25
|
|
|
422
424
|
mindroot/coreplugins/admin/static/js/lit-html/node/directives/when.js,sha256=NLe0NJ-6jqjVDUrT_DzmSpREsRaLo1yarzdYcV_5xHY,181
|
|
423
425
|
mindroot/coreplugins/admin/static/js/lit-html/node/directives/when.js.map,sha256=tOonih_-EaqrunhNGshA9xN--WIVdGikjg8MkVp0itQ,1534
|
|
424
426
|
mindroot/coreplugins/admin/templates/admin.jinja2,sha256=WkzAZJhXFp6tmOCBPInJihPzNYzC7IjEw1jQz6cfleQ,7125
|
|
425
|
-
mindroot/coreplugins/agent/agent.py,sha256=
|
|
427
|
+
mindroot/coreplugins/agent/agent.py,sha256=TDKnEI8xxeEzFzJcnOBEiTtozBaxXVrnnw8aTfx4nDE,20706
|
|
426
428
|
mindroot/coreplugins/agent/cmd_start_example.py,sha256=Mdcd9st6viI6-M7a0-zqkw3IxR9FAxIiZ_8G-tLdIJk,1416
|
|
427
429
|
mindroot/coreplugins/agent/command_parser.py,sha256=Ouzksb6Gq7O9d__mk1zeQon_ycZJnh0jb7U1vsyK1R0,12797
|
|
428
430
|
mindroot/coreplugins/agent/ensure_msg_type.py,sha256=P2XSBs3gtjlDQLOF7808nm-Dl5jswyO6qgv0lNRyHXM,240
|
|
@@ -446,9 +448,9 @@ mindroot/coreplugins/chat/__init__.py,sha256=0Zs02XeMuTCBdKHvtpO-utxyWmFaQJpH-O1
|
|
|
446
448
|
mindroot/coreplugins/chat/commands.py,sha256=QozVxkLqtP6rlK3tSVLThfZz6nE7G_YygcmDzZdgb7c,16773
|
|
447
449
|
mindroot/coreplugins/chat/format_result_msgs.py,sha256=daEdpEyAJIa8b2VkCqSKcw8PaExcB6Qro80XNes_sHA,2
|
|
448
450
|
mindroot/coreplugins/chat/mod.py,sha256=Xydjv3feKJJRbwdiB7raqiQnWtaS_2GcdC9bXYQX3nE,425
|
|
449
|
-
mindroot/coreplugins/chat/models.py,sha256=
|
|
450
|
-
mindroot/coreplugins/chat/router.py,sha256=
|
|
451
|
-
mindroot/coreplugins/chat/services.py,sha256=
|
|
451
|
+
mindroot/coreplugins/chat/models.py,sha256=GRcRuDUAJFpyWERPMxkxUaZ21igNlWeeamriruEKiEQ,692
|
|
452
|
+
mindroot/coreplugins/chat/router.py,sha256=Cx6cmdqt5itlcIhBwHmwauR4z5brFdJrCXWSPBVTQHI,7811
|
|
453
|
+
mindroot/coreplugins/chat/services.py,sha256=IiUBjsRzKQZ0xw6TV8-dj6mehzTlA5XxcPPQYFQH6Kk,17561
|
|
452
454
|
mindroot/coreplugins/chat/utils.py,sha256=BiE14PpsAcQSO5vbU88klHGm8cAXJDXxgVgva-EXybU,155
|
|
453
455
|
mindroot/coreplugins/chat/static/assistant.png,sha256=oAt1ctkFKLSPBoAZGNnSixooW9ANVIk1GwniauVWDXo,215190
|
|
454
456
|
mindroot/coreplugins/chat/static/mindgen.png,sha256=fN3E3oOFvAGYjJq-Pvg2f75jIMv7kg5WRU0EeEbxCWg,235353
|
|
@@ -458,8 +460,8 @@ mindroot/coreplugins/chat/static/neon.css,sha256=OCfT6HmdptmBCI4Y4DkObMmX2a3bC4s
|
|
|
458
460
|
mindroot/coreplugins/chat/static/site.webmanifest,sha256=xER-QHwaPRf4ahSn2kR8aW4SrMrAMr2bpRCPH6p7ako,294
|
|
459
461
|
mindroot/coreplugins/chat/static/user.png,sha256=J1krBpv71HvrF6-b0gpm57zye_vNW4QyPuSaDCiXGhg,206392
|
|
460
462
|
mindroot/coreplugins/chat/static/css/admin-custom.css,sha256=j3PPzo9kzDkYu-mE06vL98m8ha9fkL4xfzei98Yjrwc,2825
|
|
461
|
-
mindroot/coreplugins/chat/static/css/dark.css,sha256=
|
|
462
|
-
mindroot/coreplugins/chat/static/css/default.css,sha256=
|
|
463
|
+
mindroot/coreplugins/chat/static/css/dark.css,sha256=7kF5BLQSPyvC8f63OxNM-rVf0SKtIihWiqT6kYzkpsk,17281
|
|
464
|
+
mindroot/coreplugins/chat/static/css/default.css,sha256=7kF5BLQSPyvC8f63OxNM-rVf0SKtIihWiqT6kYzkpsk,17281
|
|
463
465
|
mindroot/coreplugins/chat/static/css/main.css,sha256=1DkmgA4Z80gu-fUgP8RNkwAYbp47jM4zibvR1Ry_xdQ,106
|
|
464
466
|
mindroot/coreplugins/chat/static/css/mobile.css,sha256=XP58NamsA-JfhvDTyLe4EmXeNAbLMSo9daSh2dlr8NQ,3028
|
|
465
467
|
mindroot/coreplugins/chat/static/css/reset.css,sha256=pN9wuf7laZeIt-QjbxqJXDfu7yOTVy7fshf-VMeXPu0,696
|
|
@@ -486,7 +488,7 @@ mindroot/coreplugins/chat/static/js/authfetch.js,sha256=a05Vj4pt6Qnu4WdF7jsismVi
|
|
|
486
488
|
mindroot/coreplugins/chat/static/js/base.js,sha256=AtaHATjxpQNQ7Lv8RUlV0n3icrpmC2dmnkAdSI_v714,1285
|
|
487
489
|
mindroot/coreplugins/chat/static/js/chat-history.js,sha256=J-9Kv5pNW2HWQuPbgGiyMESOFnAOd25cSLK-CxIU1Mg,5912
|
|
488
490
|
mindroot/coreplugins/chat/static/js/chat.js,sha256=u2GqdPI4WGYz0v4d1GH2QbK9wTzsJzV6zr0Xz0E1nmw,13147
|
|
489
|
-
mindroot/coreplugins/chat/static/js/chatform.js,sha256=
|
|
491
|
+
mindroot/coreplugins/chat/static/js/chatform.js,sha256=hXluGkTIxCMzp_3v1IPBwcDvAdjQqcrP5ojJd95I1wA,17823
|
|
490
492
|
mindroot/coreplugins/chat/static/js/chatmessage.js,sha256=qoRb6XWKzzbMOIowIt3admWO8FaT2VqWGhN_anQlGSQ,1272
|
|
491
493
|
mindroot/coreplugins/chat/static/js/cmdprefixes.js,sha256=Gip5WQXYb_VFK51OYlNtxT1fKUATKLsuVUpaGBKBwig,1022
|
|
492
494
|
mindroot/coreplugins/chat/static/js/code-copy-button.js,sha256=-owTkgvP9Ibdd12yyFJcvAeN2jfqf0ETUtXgNuHnWrg,5890
|
|
@@ -919,10 +921,10 @@ mindroot/coreplugins/events/router.py,sha256=a-77306_fQPNHPXP5aYtbpfC0gbqMBNRu04
|
|
|
919
921
|
mindroot/coreplugins/events/backup/mod.py,sha256=9QeJpg6WKwxRdjiKVHD1froguTe86FS2-2wWm1B9xa8,1832
|
|
920
922
|
mindroot/coreplugins/events/backup/router_backup.py,sha256=ImU8xoxdSd45V1yOFVqdtDQ614V6CMsDZQ1gtJj0Mnk,254
|
|
921
923
|
mindroot/coreplugins/home/mod.py,sha256=MsSFjiLMLJZ7QhUPpVBWKiyDnCzryquRyr329NoCACI,2
|
|
922
|
-
mindroot/coreplugins/home/router.py,sha256=
|
|
924
|
+
mindroot/coreplugins/home/router.py,sha256=kzPg2eIimG_2Qa1bZ0gKCmoo2uzd8GurrePODOO1How,1982
|
|
923
925
|
mindroot/coreplugins/home/static/css/dark.css,sha256=Q9FHaEsf9xeJjtouyKgr1Su6vTzsN07NHxxqDrDfyx8,14259
|
|
924
926
|
mindroot/coreplugins/home/static/css/default.css,sha256=zlQjpwNvuJP_zULCWkFycWudF1GRQz9Y5mvdKpzXXFc,13354
|
|
925
|
-
mindroot/coreplugins/home/static/css/enhanced.css,sha256=
|
|
927
|
+
mindroot/coreplugins/home/static/css/enhanced.css,sha256=oYGR_abXN5-wTmabQ3_QfSOoZ8sDRajsJJAfBgk-voE,3800
|
|
926
928
|
mindroot/coreplugins/home/static/css/home.css,sha256=SpelrHEHA04M5hK6Xijnc-ZyyROZehmOkKQFt4JkOQk,2950
|
|
927
929
|
mindroot/coreplugins/home/static/css/reset.css,sha256=pN9wuf7laZeIt-QjbxqJXDfu7yOTVy7fshf-VMeXPu0,696
|
|
928
930
|
mindroot/coreplugins/home/static/css/update.css,sha256=HWh01CnuKX_1rXQIwBQtc95wi6xBLnup29Gi5I-UOBg,3002
|
|
@@ -1294,7 +1296,7 @@ mindroot/coreplugins/home/static/js/lit-html/node/directives/until.js,sha256=j1W
|
|
|
1294
1296
|
mindroot/coreplugins/home/static/js/lit-html/node/directives/until.js.map,sha256=7xiwSZ7_fGtr5XwW-10Dzs8n9QE2VUfXaZ0Sd6d82L0,6567
|
|
1295
1297
|
mindroot/coreplugins/home/static/js/lit-html/node/directives/when.js,sha256=NLe0NJ-6jqjVDUrT_DzmSpREsRaLo1yarzdYcV_5xHY,181
|
|
1296
1298
|
mindroot/coreplugins/home/static/js/lit-html/node/directives/when.js.map,sha256=tOonih_-EaqrunhNGshA9xN--WIVdGikjg8MkVp0itQ,1534
|
|
1297
|
-
mindroot/coreplugins/home/templates/home.jinja2,sha256=
|
|
1299
|
+
mindroot/coreplugins/home/templates/home.jinja2,sha256=wVaXYgaNK3Kn7wmrKEyBT24Az2l4_o7ctVbDhHPXgEw,2088
|
|
1298
1300
|
mindroot/coreplugins/index/.gitignore,sha256=r_urXBxUYZhSuWyYzpRcAz5rHR0gVTERMrTI_gbBmCM,9
|
|
1299
1301
|
mindroot/coreplugins/index/__init__.py,sha256=WU5revQym2nu-vAV-o5cdAXpuRlb_Juu0lzc9s6lIFU,74
|
|
1300
1302
|
mindroot/coreplugins/index/default.json,sha256=E3Rj8gCAcFeppbS4CtXoGwXL94E7jFJQcNflDp4xrJg,2030
|
|
@@ -1765,7 +1767,7 @@ mindroot/coreplugins/user_service/backup/admin_setup.py,sha256=JGszAw8nVtnNiisSU
|
|
|
1765
1767
|
mindroot/lib/__init__.py,sha256=388n_hMskU0TnZ4xT10US_kFkya-EPBjWcv7AZf_HOk,74
|
|
1766
1768
|
mindroot/lib/butemplates.py,sha256=gfHGPTOjvoEenXsR7xokNuqMjOAPuC2DawheH1Ae4bU,12196
|
|
1767
1769
|
mindroot/lib/chatcontext.py,sha256=OR63K63NMjaV7kXDf0MIcvOXFZhdiqr7LKgbyfZzjkE,6211
|
|
1768
|
-
mindroot/lib/chatlog.py,sha256=
|
|
1770
|
+
mindroot/lib/chatlog.py,sha256=B5kLuwMHyEC_AmjNbXWal-tdXwVnOwcZ4PPUK7Vb7NQ,5860
|
|
1769
1771
|
mindroot/lib/json_escape.py,sha256=5cAmAdNbnYX2uyfQcnse2fFtNI0CdB-AfZ23RwaDm-k,884
|
|
1770
1772
|
mindroot/lib/model_selector.py,sha256=Wz-8NZoiclmnhLeCNnI3WCuKFmjsO5HE4bK5F8GpZzU,1397
|
|
1771
1773
|
mindroot/lib/parent_templates.py,sha256=elcQFFwrFtfAYfQOSTs06aiDDigN1f1R2f8I1V-wj6Q,2731
|
|
@@ -1773,7 +1775,8 @@ mindroot/lib/plugins.py,sha256=96QElzJ6cuS9BpQJQZMJblDCF2toO14Z80D7DRAjMDc,1592
|
|
|
1773
1775
|
mindroot/lib/plugins_install.py,sha256=CUDkdDhIKkwN3U1hfKaTq8QUwGApFrNKmt3iycZuTKs,2042
|
|
1774
1776
|
mindroot/lib/route_decorators.py,sha256=L3E-bn48zhuxk6YPtyc2oP76-5WuV_SmjxtngJeYGmM,2153
|
|
1775
1777
|
mindroot/lib/session_files.py,sha256=Vl50YfEnKt8ucGSDIavsAdbAcf8IbMG3Fdgm4pEh2Yg,1263
|
|
1776
|
-
mindroot/lib/
|
|
1778
|
+
mindroot/lib/streamcmd.py,sha256=f9n3OtryEkMbNNuFr5BAZn1EpSLUKuDZw-zpo97XxJk,4714
|
|
1779
|
+
mindroot/lib/templates.py,sha256=5dODCS6UeC9Y_PdMWlUuQCCZUUt2ICR0S1YF6XrG3eM,15154
|
|
1777
1780
|
mindroot/lib/auth/__init__.py,sha256=5EZbCTcdlnTHYE0JNk8znWNSO7mOsokMOvRBjb5Mq-M,49
|
|
1778
1781
|
mindroot/lib/auth/auth.py,sha256=2vhF_LfZcTPt2N2VLWy1ZP7h2pKFv7XM3xW1iRVOTkU,3129
|
|
1779
1782
|
mindroot/lib/db/organize_models.py,sha256=kiadXfhGjCY16c36l1JmxXcKSH4ShWWEUnHi7WRRn9c,5028
|
|
@@ -1811,9 +1814,9 @@ mindroot/protocols/services/stream_chat.py,sha256=fMnPfwaB5fdNMBLTEg8BXKAGvrELKH
|
|
|
1811
1814
|
mindroot/registry/__init__.py,sha256=40Xy9bmPHsgdIrOzbtBGzf4XMqXVi9P8oZTJhn0r654,151
|
|
1812
1815
|
mindroot/registry/component_manager.py,sha256=WZFNPg4SNvpqsM5NFiC2DpgmrJQCyR9cNhrCBpp30Qk,995
|
|
1813
1816
|
mindroot/registry/data_access.py,sha256=NgNMamxIjaKeYxzxnVaQz1Y-Rm0AI51si3788_JHUTM,5316
|
|
1814
|
-
mindroot-8.
|
|
1815
|
-
mindroot-8.
|
|
1816
|
-
mindroot-8.
|
|
1817
|
-
mindroot-8.
|
|
1818
|
-
mindroot-8.
|
|
1819
|
-
mindroot-8.
|
|
1817
|
+
mindroot-8.2.0.dist-info/licenses/LICENSE,sha256=8plAmZh8y9ccuuqFFz4kp7G-cO_qsPgAOoHNvabSB4U,1070
|
|
1818
|
+
mindroot-8.2.0.dist-info/METADATA,sha256=aNAkb4BPgjjdy_1OxxFYwxh0GdQPYtrL6pWlfLLotaY,356
|
|
1819
|
+
mindroot-8.2.0.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
|
|
1820
|
+
mindroot-8.2.0.dist-info/entry_points.txt,sha256=0bpyjMccLttx6VcjDp6zfJPN0Kk0rffor6IdIbP0j4c,50
|
|
1821
|
+
mindroot-8.2.0.dist-info/top_level.txt,sha256=gwKm7DmNjhdrCJTYCrxa9Szne4lLpCtrEBltfsX-Mm8,9
|
|
1822
|
+
mindroot-8.2.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|