351 lines
8.5 KiB
Python
351 lines
8.5 KiB
Python
"""Registry entries for the User Interfaces layer (L11).
|
|
|
|
Auto-extracted from the monolithic ``defaults.py``. Each entry
|
|
follows the standard registry schema:
|
|
|
|
- ``name``: human-readable tool name
|
|
- ``level``: 13-layer taxonomy level (1-13)
|
|
- ``layer``: this layer name
|
|
- ``role``: role within the layer
|
|
- ``category``: functional category
|
|
- ``installer``: installation method
|
|
- ``launcher``: process launcher specification
|
|
- ``deps``: list of required tool IDs
|
|
- ``description``: short description
|
|
- ``flags``: optional boolean flags
|
|
|
|
This module is consumed by
|
|
:mod:`ai_lsc.registry.loader`.
|
|
"""
|
|
|
|
TOOLS: dict[str, dict] = {
|
|
'hermes': {
|
|
"name": "Hermes",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Ecosystem Dashboard",
|
|
"installer": {
|
|
"type": "npm",
|
|
"pkg": "hermes-ai"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "hermes dashboard --port {port} --data-dir {workspaces_root}/hermes & hermes desktop --data-dir {workspaces_root}/hermes",
|
|
"default_port": 17050
|
|
},
|
|
"deps": [
|
|
"ollama"
|
|
],
|
|
"description": "Unified desktop and dashboard environment for the AI ecosystem.",
|
|
"flags": {
|
|
"has_cli": True,
|
|
"has_gui": True,
|
|
"has_web": True
|
|
}
|
|
},
|
|
'openwebui': {
|
|
"name": "Open WebUI",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Chat Frontend",
|
|
"installer": {
|
|
"type": "uv",
|
|
"pkg": "open-webui"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "open-webui serve --port {port} --data-dir {workspaces_root}/openwebui",
|
|
"default_port": 8080
|
|
},
|
|
"deps": [
|
|
"ollama"
|
|
],
|
|
"description": "Extensible frontend for LLMs.",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": False,
|
|
"has_web": True
|
|
}
|
|
},
|
|
'anythingllm': {
|
|
"name": "AnythingLLM",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Chat",
|
|
"installer": {
|
|
"type": "git_node",
|
|
"pkg": "https://github.com/Mintplex-Labs/anything-llm.git"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "cd {tools_root}/anythingllm && yarn dev",
|
|
"default_port": 3001
|
|
},
|
|
"deps": [],
|
|
"description": "Full-stack application for conversational AI.",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": False,
|
|
"has_web": True
|
|
}
|
|
},
|
|
'flowise': {
|
|
"name": "Flowise",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Workflow",
|
|
"installer": {
|
|
"type": "npm",
|
|
"pkg": "flowise"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "npx flowise start --port {port}",
|
|
"default_port": 3000
|
|
},
|
|
"deps": [],
|
|
"description": "Drag & drop UI to build customized LLM flows.",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": False,
|
|
"has_web": True
|
|
}
|
|
},
|
|
'dify': {
|
|
"name": "Dify",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Workflow",
|
|
"installer": {
|
|
"type": "git",
|
|
"pkg": "https://github.com/langgenius/dify.git"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "cd {tools_root}/dify/docker && docker compose up",
|
|
"default_port": 80
|
|
},
|
|
"deps": [
|
|
"postgresql",
|
|
"redis"
|
|
],
|
|
"description": "LLM application development platform.",
|
|
"flags": {
|
|
"is_docker": True,
|
|
"has_cli": False,
|
|
"has_gui": False,
|
|
"has_web": True
|
|
}
|
|
},
|
|
'invokeai': {
|
|
"name": "InvokeAI",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Image Generation",
|
|
"installer": {
|
|
"type": "git",
|
|
"pkg": "https://github.com/invoke-ai/InvokeAI"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "cd {tools_root}/invokeai && invokeai --host 0.0.0.0 --port {port}",
|
|
"default_port": 9090
|
|
},
|
|
"deps": [
|
|
"cuda"
|
|
],
|
|
"description": "Professional AI image generation workspace.",
|
|
"flags": {
|
|
"has_cli": True,
|
|
"has_gui": True,
|
|
"has_web": True
|
|
}
|
|
},
|
|
'forge': {
|
|
"name": "Forge (A1111)",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Image Generation",
|
|
"installer": {
|
|
"type": "git",
|
|
"pkg": "https://github.com/AUTOMATIC1111/stable-diffusion-webui-forge"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "cd {tools_root}/forge && python3 launch.py --port {port}",
|
|
"default_port": 7860
|
|
},
|
|
"deps": [
|
|
"cuda"
|
|
],
|
|
"description": "Stable Diffusion WebUI Forge (optimized fork).",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": False,
|
|
"has_web": True
|
|
}
|
|
},
|
|
'dashy': {
|
|
"name": "Dashy",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Homepage",
|
|
"installer": {
|
|
"type": "npm",
|
|
"pkg": "dashy"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "dashy --port {port}",
|
|
"default_port": 3000
|
|
},
|
|
"deps": [],
|
|
"description": "Highly customizable dashboard and homepage.",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": False,
|
|
"has_web": True
|
|
}
|
|
},
|
|
'obsidian': {
|
|
"name": "Obsidian",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Knowledge Graph Notes",
|
|
"installer": {
|
|
"type": "pacman",
|
|
"pkg": "obsidian"
|
|
},
|
|
"launcher": {
|
|
"type": "desktop",
|
|
"cmd": "obsidian",
|
|
"default_port": None
|
|
},
|
|
"deps": [],
|
|
"description": "Knowledge graph note-taking and markdown editor.",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": True,
|
|
"has_web": False
|
|
}
|
|
},
|
|
'local_llm_launcher': {
|
|
"name": "Local LLM Launcher",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "LLM GUI",
|
|
"installer": {
|
|
"type": "git",
|
|
"pkg": "https://github.com/nicely-done/local-llm-launcher-gui"
|
|
},
|
|
"launcher": {
|
|
"type": "desktop",
|
|
"cmd": "cd {tools_root}/local_llm_launcher && python3 main.py",
|
|
"default_port": None
|
|
},
|
|
"deps": [
|
|
"ollama"
|
|
],
|
|
"description": "GUI launcher and manager for local LLMs.",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": True,
|
|
"has_web": False
|
|
}
|
|
},
|
|
'hermes_desktop': {
|
|
"name": "Hermes Desktop",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Desktop Agent",
|
|
"installer": {
|
|
"type": "npm",
|
|
"pkg": "hermes-desktop"
|
|
},
|
|
"launcher": {
|
|
"type": "desktop",
|
|
"cmd": "hermes desktop",
|
|
"default_port": None
|
|
},
|
|
"deps": [
|
|
"ollama"
|
|
],
|
|
"description": "Hermes desktop agent environment.",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": True,
|
|
"has_web": False
|
|
}
|
|
},
|
|
'hermes_dashboard_page': {
|
|
"name": "Hermes Dashboard",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Face",
|
|
"category": "Dashboard",
|
|
"installer": {
|
|
"type": "npm",
|
|
"pkg": "hermes-dashboard"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "hermes dashboard --port {port}",
|
|
"default_port": 17050
|
|
},
|
|
"deps": [
|
|
"ollama"
|
|
],
|
|
"description": "Hermes ecosystem monitoring dashboard.",
|
|
"flags": {
|
|
"has_cli": False,
|
|
"has_gui": False,
|
|
"has_web": True
|
|
}
|
|
},
|
|
"openjarvis": {
|
|
"name": "OpenJarvis",
|
|
"level": 11,
|
|
"layer": "User Interfaces",
|
|
"role": "Central Intelligence",
|
|
"category": "AI Assistant Platform",
|
|
"installer": {
|
|
"type": "git_node",
|
|
"pkg": "https://github.com/openjarvis/openjarvis.git",
|
|
"post_install": "npm install && npm run build"
|
|
},
|
|
"launcher": {
|
|
"type": "tmux",
|
|
"cmd": "cd {tools_root}/openjarvis && npm start -- --port {port}",
|
|
"default_port": 17070
|
|
},
|
|
"deps": [
|
|
"ollama",
|
|
"qdrant"
|
|
],
|
|
"description": "Central AI assistant platform with multi-modal I/O, memory integration, agentic task execution, and unified dashboard. The brain of the intelligent stack.",
|
|
"flags": {
|
|
"has_cli": True,
|
|
"has_gui": True,
|
|
"has_web": True
|
|
},
|
|
"filesystem": {
|
|
"install": "tools/openjarvis",
|
|
"config": "configs/openjarvis",
|
|
"data": "workspaces/openjarvis",
|
|
"cache": "cache/openjarvis",
|
|
"logs": "logs/openjarvis"
|
|
}
|
|
},
|
|
}
|