Skip to content
Terng Dechanon edited this page Jul 24, 2026 · 1 revision

Linux

The backend is platform-neutral and CI proves it on Ubuntu every push. This page covers what a Linux install actually needs.

Quick path

git clone https://github.com/ElmatadorZ/skynetclaw.git && cd skynetclaw
./start.sh                 # or: make setup && make run

start.sh is idempotent: venv, dependencies, config templates, migration, Ollama check, start.

System packages

Only Python is required. The rest is optional and degrades gracefully.

# Debian / Ubuntu
sudo apt install -y python3 python3-venv python3-pip curl
sudo apt install -y tesseract-ocr tesseract-ocr-tha        # optional OCR

# Fedora
sudo dnf install -y python3 python3-pip curl tesseract tesseract-langpack-tha

# Arch
sudo pacman -S python python-pip curl tesseract tesseract-data-tha

A local model

curl -fsSL https://ollama.com/install.sh | sh
ollama serve &
ollama pull llama3.1:8b
ollama pull qwen2.5-coder:7b

No GPU required.

What Linux discovers automatically

Capability Searched
Obsidian vault ~/Documents/Obsidian Vault, ~/Obsidian, ~/Notes, ~/vault, ~/Nextcloud/Obsidian, ~/Dropbox/Obsidian, ~/Sync/Obsidian, /vault, /data/obsidian
Vault registry $XDG_CONFIG_HOME/obsidian/, ~/.config/obsidian/, the Flatpak path
Tesseract PATH first, then /usr/bin, /usr/local/bin, /opt/homebrew/bin, /snap/bin
tessdata $TESSDATA_PREFIX, /usr/share/tesseract-ocr/5/tessdata, /usr/share/tessdata, …
Workspace ~/Desktop/workspace if a Desktop exists, else ~/skynetclaw-workspace

Set an explicit path in backend/settings.json to skip discovery.

systemd (user unit)

# ~/.config/systemd/user/skynetclaw.service
[Unit]
Description=SkynetClaw
After=network.target

[Service]
Type=simple
WorkingDirectory=%h/skynetclaw
ExecStart=%h/skynetclaw/start.sh
Restart=on-failure
RestartSec=10

[Install]
WantedBy=default.target
systemctl --user daemon-reload
systemctl --user enable --now skynetclaw
journalctl --user -u skynetclaw -f

For a system unit, run it as a dedicated unprivileged user whose home is the only workspace the agent can reach.

Ports

Port Service Bound
8766 backend 127.0.0.1
11434 Ollama localhost
8080 execution runtime (optional) localhost

8766 has no authentication. Do not expose it. See Security Model.

Known gaps

  • .bat / .ps1 do not apply — use start.sh, make, or Docker
  • macOS is not in CI. It should work (the POSIX path), but it is untested
  • OCR language data installs separately
  • some agent prompt guidance still reads Windows-first; it functions, but a model may occasionally phrase advice in Windows terms

📖 Repo copy: docs/LINUX.md

→ Next: Docker

Clone this wiki locally