225 lines
5.4 KiB
Markdown
225 lines
5.4 KiB
Markdown
# Quickstart Guide
|
|
|
|
Get AI Local Stack Control up and running in under 5 minutes.
|
|
|
|
## Prerequisites
|
|
|
|
| Requirement | Minimum | Recommended |
|
|
|-------------|---------|-------------|
|
|
| OS | Arch Linux | Arch Linux / EndeavourOS |
|
|
| Python | 3.11 | 3.12+ |
|
|
| RAM | 8 GB | 16 GB+ (for LLM inference) |
|
|
| Disk | 4 GB free | 20 GB+ (for model storage) |
|
|
| GPU | None | NVIDIA (CUDA) or AMD (ROCm) |
|
|
|
|
## Installation
|
|
|
|
### Option 1: Bootstrap Script (Recommended)
|
|
|
|
```bash
|
|
# Clone the repository
|
|
git clone https://github.com/your-username/ai-lsc.git
|
|
cd ai-lsc
|
|
|
|
# Run the bootstrap script (installs system + Python deps)
|
|
chmod +x bootstrap.sh
|
|
./bootstrap.sh
|
|
|
|
# Launch the application
|
|
python -m ai_lsc
|
|
```
|
|
|
|
### Option 2: Manual Install
|
|
|
|
#### Step 1: System Dependencies
|
|
|
|
```bash
|
|
# Core packages (Arch Linux)
|
|
sudo pacman -S python python-pip python-pyqt6 pyside6 \
|
|
git tmux ripgrep fd tree-sitter sqlite redis
|
|
|
|
# Optional: GPU support
|
|
sudo pacman -S cuda # NVIDIA
|
|
# sudo pacman -S rocm-hip-sdk # AMD
|
|
|
|
# Optional: Container runtimes
|
|
sudo pacman -S podman docker
|
|
# Optional: LXC support
|
|
sudo pacman -S lxc lxcfs
|
|
```
|
|
|
|
#### Step 2: Python Dependencies
|
|
|
|
```bash
|
|
cd ai-lsc
|
|
|
|
# Create a virtual environment (recommended)
|
|
python -m venv .venv
|
|
source .venv/bin/activate
|
|
|
|
# Install PySide6 and dependencies
|
|
pip install PySide6
|
|
pip install -e .
|
|
```
|
|
|
|
#### Step 3: Verify Installation
|
|
|
|
```bash
|
|
# Check that the registry loads correctly
|
|
python -c "
|
|
from ai_lsc import DEFAULT_REGISTRY, validate_registry
|
|
errors = validate_registry(DEFAULT_REGISTRY)
|
|
print(f'Registry loaded: {len(DEFAULT_REGISTRY)} tools')
|
|
print(f'Validation errors: {len(errors)}')
|
|
"
|
|
|
|
# Expected output:
|
|
# Registry loaded: 115 tools
|
|
# Validation errors: 0
|
|
```
|
|
|
|
#### Step 4: Launch
|
|
|
|
```bash
|
|
python -m ai_lsc
|
|
```
|
|
|
|
## First Launch
|
|
|
|
When you launch AI-LSC for the first time, you will see the **Stack Template Wizard**. This is your entry point for configuring your AI stack.
|
|
|
|
### Choosing a Template
|
|
|
|
| Template | Best For | Tool Count |
|
|
|----------|----------|-----------|
|
|
| Claude Code Setup | Claude Code development workflow | 11 |
|
|
| Free Claude Code | Minimal Claude Code environment | 4 |
|
|
| Local LLM Lab | Self-hosted LLM experimentation | 10 |
|
|
| SaaS Integrations | Production deployment with SSL/CDN | 12 |
|
|
|
|
### Manual Configuration
|
|
|
|
If you prefer to build your stack from scratch:
|
|
|
|
1. Select **Create From Scratch** in the wizard
|
|
2. Navigate to the **Infrastructure** section in the sidebar
|
|
3. Expand each layer and toggle tools on/off
|
|
4. Use the **IPC Stack** tab to validate dependencies
|
|
5. Click **Compile** to save your stack configuration
|
|
|
|
## Post-Setup
|
|
|
|
### Installing a Base LLM
|
|
|
|
Most tools depend on Ollama as the local LLM runtime:
|
|
|
|
```bash
|
|
# Install Ollama (if not already installed)
|
|
curl -fsSL https://ollama.com/install.sh | sh
|
|
|
|
# Pull a model
|
|
ollama pull llama3
|
|
ollama pull codellama # Good for coding assistance
|
|
ollama pull mistral # Lightweight general-purpose
|
|
```
|
|
|
|
### Starting Services
|
|
|
|
After configuring your stack in the IPC Stack tab:
|
|
|
|
1. Click **Compile** to save the stack configuration
|
|
2. Switch to the **Monitor** tab
|
|
3. Click **Start All** or start individual services
|
|
4. Check service status indicators (green = running)
|
|
|
|
### Connecting the Chat Console
|
|
|
|
Once Ollama is running:
|
|
|
|
1. Navigate to the **Chat** section
|
|
2. Select a model from the dropdown (e.g., `llama3`, `codellama`)
|
|
3. Start chatting with your local AI assistant
|
|
|
|
## Common Tasks
|
|
|
|
### Adding a New Tool
|
|
|
|
1. Identify the target layer in `registry/layers/`
|
|
2. Add the tool entry following the canonical schema
|
|
3. Restart the application — the tool appears automatically
|
|
|
|
### Exporting to Containers
|
|
|
|
1. Open **Deployment Targets** from the sidebar
|
|
2. Select your backend: Podman, Docker, or LXC
|
|
3. Click **Export** to generate configuration files
|
|
4. Deploy with `podman compose up` or `lxc-launch.sh`
|
|
|
|
### Managing LXC Containers
|
|
|
|
```bash
|
|
# Create a container from exported config
|
|
sudo lxc-create -n ollama -f ollama.conf
|
|
|
|
# Start the container
|
|
sudo lxc-start -n ollama
|
|
|
|
# Attach to the container console
|
|
sudo lxc-attach -n ollama
|
|
|
|
# Freeze/unfreeze
|
|
sudo lxc-freeze -n ollama
|
|
sudo lxc-unfreeze -n ollama
|
|
|
|
# Destroy
|
|
sudo lxc-stop -n ollama
|
|
sudo lxc-destroy -n ollama
|
|
```
|
|
|
|
## Troubleshooting
|
|
|
|
### PySide6 Import Error
|
|
|
|
```
|
|
ModuleNotFoundError: No module named 'PySide6'
|
|
```
|
|
|
|
**Fix:** Install PySide6: `pip install PySide6`
|
|
|
|
### Registry Loading Errors
|
|
|
|
```
|
|
ERROR: Failed to load layer file: SyntaxError
|
|
```
|
|
|
|
**Fix:** Validate layer files:
|
|
```bash
|
|
python3 -c "
|
|
import ast, os
|
|
for f in os.listdir('ai_lsc/registry/layers'):
|
|
if f.endswith('.py') and f != '__init__.py':
|
|
ast.parse(open(f'ai_lsc/registry/layers/{f}').read())
|
|
print(f'{f}: OK')
|
|
"
|
|
```
|
|
|
|
### Service Won't Start
|
|
|
|
1. Check the **Monitor** tab for error messages
|
|
2. Verify the tool is installed: `which <tool_name>`
|
|
3. Check launcher command in the registry entry
|
|
4. For systemd services: `systemctl --user status <service>`
|
|
|
|
### Ollama Connection Refused
|
|
|
|
1. Ensure Ollama is running: `ollama serve` or `systemctl --user start ollama`
|
|
2. Check port: `curl http://localhost:11434/api/tags`
|
|
3. Verify the endpoint in Settings matches your Ollama port
|
|
|
|
## Next Steps
|
|
|
|
- Explore the **Infrastructure** section to understand the 13-layer architecture
|
|
- Try different **Stack Templates** to find the right combination for your workflow
|
|
- Set up the **Skills Console** to extend your tool capabilities
|
|
- Use **Code Analysis** to inspect and understand your project dependencies
|