youclaw 4.7.0__tar.gz → 4.7.2__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.
- {youclaw-4.7.0/src/youclaw.egg-info → youclaw-4.7.2}/PKG-INFO +1 -1
- {youclaw-4.7.0 → youclaw-4.7.2}/pyproject.toml +1 -1
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/cli.py +33 -42
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/dashboard.py +4 -3
- {youclaw-4.7.0 → youclaw-4.7.2/src/youclaw.egg-info}/PKG-INFO +1 -1
- {youclaw-4.7.0 → youclaw-4.7.2}/LICENSE +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/MANIFEST.in +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/README.md +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/setup.cfg +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/__init__.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/bot.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/commands.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/config.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/core_skills.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/discord_handler.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/env_manager.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/main.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/memory_manager.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/ollama_client.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/personality_manager.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/scheduler_manager.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/search_client.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/skills_manager.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/telegram_handler.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw/vector_manager.py +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw.egg-info/SOURCES.txt +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw.egg-info/dependency_links.txt +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw.egg-info/entry_points.txt +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw.egg-info/requires.txt +0 -0
- {youclaw-4.7.0 → youclaw-4.7.2}/src/youclaw.egg-info/top_level.txt +0 -0
|
@@ -150,26 +150,11 @@ class YouClawCLI:
|
|
|
150
150
|
# Check if process is actually running
|
|
151
151
|
os.kill(pid, 0)
|
|
152
152
|
|
|
153
|
-
#
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
hours = int(uptime_seconds // 3600)
|
|
159
|
-
minutes = int((uptime_seconds % 3600) // 60)
|
|
160
|
-
|
|
161
|
-
print(f"Status: ✅ Running")
|
|
162
|
-
print(f"PID: {pid}")
|
|
163
|
-
print(f"Uptime: {hours}h {minutes}m")
|
|
164
|
-
print(f"Memory: {process.memory_info().rss / 1024 / 1024:.1f} MB")
|
|
165
|
-
print(f"\n🔗 Dashboard: http://localhost:8080")
|
|
166
|
-
return 0
|
|
167
|
-
except ImportError:
|
|
168
|
-
# psutil not available, basic info only
|
|
169
|
-
print(f"Status: ✅ Running")
|
|
170
|
-
print(f"PID: {pid}")
|
|
171
|
-
print(f"\n🔗 Dashboard: http://localhost:8080")
|
|
172
|
-
return 0
|
|
153
|
+
# Basic info only (simplified for reliability)
|
|
154
|
+
print(f"Status: ✅ Running")
|
|
155
|
+
print(f"PID: {pid}")
|
|
156
|
+
print(f"\\n🔗 Dashboard: http://localhost:8080")
|
|
157
|
+
return 0
|
|
173
158
|
|
|
174
159
|
except (ProcessLookupError, ValueError):
|
|
175
160
|
print("Status: ⚠️ Dead (PID file exists but process not found)")
|
|
@@ -203,46 +188,52 @@ class YouClawCLI:
|
|
|
203
188
|
|
|
204
189
|
print("[!] Tip: Press ENTER to skip any step and configure later via Dashboard.\n")
|
|
205
190
|
|
|
191
|
+
# Helper to clean input (remove comments)
|
|
192
|
+
def clean_input(prompt, default=None):
|
|
193
|
+
val = input(prompt).strip()
|
|
194
|
+
if '#' in val: val = val.split('#')[0].strip()
|
|
195
|
+
return val or default
|
|
196
|
+
|
|
206
197
|
# 🤖 Ollama Configuration
|
|
207
198
|
print("🤖 Ollama AI Engine Configuration")
|
|
208
|
-
ollama_host =
|
|
209
|
-
ollama_model =
|
|
199
|
+
ollama_host = clean_input(" - Ollama Host URL (default: http://localhost:11434): ", "http://localhost:11434")
|
|
200
|
+
ollama_model = clean_input(" - Ollama Model (default: qwen2.5:1.5b-instruct): ", "qwen2.5:1.5b-instruct")
|
|
210
201
|
|
|
211
202
|
# 🛰️ Telegram Setup
|
|
212
203
|
print("\n🛰️ Telegram Bot Setup")
|
|
213
|
-
tg_token =
|
|
204
|
+
tg_token = clean_input(" - Bot Token (from @BotFather): ", "")
|
|
214
205
|
|
|
215
206
|
# 💬 Discord Setup
|
|
216
207
|
print("\n💬 Discord Bot Setup")
|
|
217
|
-
dc_token =
|
|
208
|
+
dc_token = clean_input(" - Bot Token (from Discord Dev Portal): ", "")
|
|
218
209
|
|
|
219
210
|
# 🔍 Search Engine Setup
|
|
220
211
|
print("\n🔍 Neural Search Engine")
|
|
221
|
-
search_url =
|
|
212
|
+
search_url = clean_input(" - Search URL (e.g. http://ip:8080/search): ", "")
|
|
222
213
|
|
|
223
214
|
# 📧 Email Setup
|
|
224
215
|
print("\n📧 Email Link Protocol")
|
|
225
|
-
email_user =
|
|
226
|
-
email_pass =
|
|
227
|
-
email_imap =
|
|
228
|
-
email_smtp =
|
|
216
|
+
email_user = clean_input(" - Email Address: ", "")
|
|
217
|
+
email_pass = clean_input(" - App Password (not your login password!): ", "")
|
|
218
|
+
email_imap = clean_input(" - IMAP Host (default: imap.gmail.com): ", "imap.gmail.com")
|
|
219
|
+
email_smtp = clean_input(" - SMTP Host (default: smtp.gmail.com): ", "smtp.gmail.com")
|
|
229
220
|
|
|
230
|
-
# Write to .env
|
|
221
|
+
# Write to .env with proper quoting
|
|
231
222
|
env_path = Path(".env")
|
|
232
223
|
env_content = [
|
|
233
224
|
"# YouClaw Managed Configuration",
|
|
234
|
-
f
|
|
235
|
-
f
|
|
236
|
-
f
|
|
237
|
-
f
|
|
238
|
-
f
|
|
239
|
-
f
|
|
240
|
-
f
|
|
241
|
-
f
|
|
242
|
-
f
|
|
243
|
-
f
|
|
244
|
-
f
|
|
245
|
-
f
|
|
225
|
+
f'OLLAMA_HOST="{ollama_host}"',
|
|
226
|
+
f'OLLAMA_MODEL="{ollama_model}"',
|
|
227
|
+
f'TELEGRAM_BOT_TOKEN="{tg_token}"',
|
|
228
|
+
f'ENABLE_TELEGRAM="{"true" if tg_token else "false"}"',
|
|
229
|
+
f'DISCORD_BOT_TOKEN="{dc_token}"',
|
|
230
|
+
f'ENABLE_DISCORD="{"true" if dc_token else "false"}"',
|
|
231
|
+
f'SEARCH_ENGINE_URL="{search_url or "http://localhost:8080/search"}"',
|
|
232
|
+
f'EMAIL_USER="{email_user}"',
|
|
233
|
+
f'EMAIL_PASSWORD="{email_pass}"',
|
|
234
|
+
f'EMAIL_IMAP_HOST="{email_imap}"',
|
|
235
|
+
f'EMAIL_SMTP_HOST="{email_smtp}"',
|
|
236
|
+
f'ENABLE_EMAIL="{"true" if email_user else "false"}"',
|
|
246
237
|
"DATABASE_PATH=./data/bot.db",
|
|
247
238
|
"ADMIN_USER_IDENTITY=telegram:default"
|
|
248
239
|
]
|
|
@@ -174,7 +174,8 @@ async def api_stats(request):
|
|
|
174
174
|
"total_messages": total_messages,
|
|
175
175
|
"unique_users": unique_users,
|
|
176
176
|
"active_personality": personality_name,
|
|
177
|
-
"user_identity": f"{platform}:{user_id}" if user_id else "Guest"
|
|
177
|
+
"user_identity": f"{platform}:{user_id}" if user_id else "Guest",
|
|
178
|
+
"is_admin": is_admin
|
|
178
179
|
}
|
|
179
180
|
|
|
180
181
|
if is_admin:
|
|
@@ -489,7 +490,7 @@ DASHBOARD_HTML = """
|
|
|
489
490
|
<head>
|
|
490
491
|
<meta charset="UTF-8">
|
|
491
492
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
492
|
-
<title>YouClaw V4.7.
|
|
493
|
+
<title>YouClaw V4.7.2 | Justice Neural Hub 🦞</title>
|
|
493
494
|
<link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap" rel="stylesheet">
|
|
494
495
|
<script src="https://cdn.jsdelivr.net/npm/marked/marked.min.js"></script>
|
|
495
496
|
<style>
|
|
@@ -782,7 +783,7 @@ DASHBOARD_HTML = """
|
|
|
782
783
|
<!-- Sidebar Navigation -->
|
|
783
784
|
<nav class="sidebar" id="app-sidebar" style="display: none;">
|
|
784
785
|
<div>
|
|
785
|
-
<div class="sidebar-logo">🦞 YOUCLAW <span style="font-size: 0.6rem; color: var(--primary);">V4.7.
|
|
786
|
+
<div class="sidebar-logo">🦞 YOUCLAW <span style="font-size: 0.6rem; color: var(--primary);">V4.7.2</span></div>
|
|
786
787
|
<div class="nav-list">
|
|
787
788
|
<div class="nav-item active" id="nav-dash" onclick="switchView('dashboard')"><i>📊</i> Control Center</div>
|
|
788
789
|
<div class="nav-item" id="nav-chat" onclick="switchView('chat')"><i>💬</i> Neural Terminal</div>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|