Skip to main content

ALIA — the cognitive partner of the AI-n-Box desktop. A native GNOME agent surface on the lingo/lovelaice engine.

Project description

ALIA

ALIA — the cognitive partner of the AI-n-Box desktop. A native GNOME agent you summon with a key, backed by the lovelaice agent runtime (sessions, persistence, tools, MCP) over its ACP engine.

This repo is the standalone slice: ALIA installs and runs on any recent GNOME, independent of AI-n-Box OS (where she'll later be baked in and pre-wired to the local Ollama daemon).

Vision: vault/Atlas/Architecture/2026-06-25-alia-cognitive-partner-vision.md in the Workspace.

What works today (v1.0)

  • A borderless GNOME HUD with a WebKit transcript — real markdown + syntax highlighting (reuses superbot's marked/highlight), an in-page "working…" spinner, and input locked while a turn runs. Enter sends, Esc hides.
  • A resident single-instance app — pressing the shortcut again toggles the HUD; the agent stays alive in the background.
  • She acts on your machine via the shell, with you in the loop:
    • read(path) — reads any file, silently (observation is free).
    • bash(command) — runs a shell command. Well-known read-only commands auto-run (ls, cat, df, git status, …); anything else shows an inline bar with Deny / Approve / Permitir «prefix» esta sesión. Picking the session option auto-approves that command prefix (e.g. git push, npm install) for the rest of the run. This is how she manages files, launches apps, changes GNOME settings, inspects the system, uses git, …
    • Safety floor: any command containing shell operators (;, |, >, &&, $(…)) always prompts — a safe lead can't smuggle a dangerous tail. Hard red-lines (sudo, rm -rf / …) are blocked outright. Tool activity is shown in the transcript as it happens.
  • Conversation persists per session to ~/.alia/sessions/<ts>.jsonl.
  • Model-agnostic via the lovelaice engine: defaults to Haiku over OpenRouter (anthropic/claude-haiku-4.5), points anywhere OpenAI-compatible.

Not yet: she can't see the screen (no screenshots/vision) or control the mouse/keyboard/click — those are the next rungs. She says so when asked.

Requirements

  • GNOME with GTK 4 and its Python bindings (python3-gobject / PyGObject — from your distro, not pip).
  • WebKitGTK 6.0 for the transcript (gir1.2-webkit-6.0 on Debian/Ubuntu; webkitgtk6.0 on Fedora).
  • Python ≥ 3.13.

Install

git clone https://github.com/syalia-srl/alia && cd alia
./install.sh

install.sh installs ALIA user-local (no sudo for the app itself):

  • system GTK 4 + PyGObject + WebKitGTK 6.0 via apt/dnfonly if missing (the one step that uses sudo);
  • a venv at ~/.local/share/alia/venv with alia + the engine (lovelaice/lingo/beaver) resolved from PyPI;
  • a launcher at ~/.local/bin/alia, an app entry, and the <Super>i shortcut.

Then configure a key and summon it:

mkdir -p ~/.config/alia
echo 'ALIA_API_KEY=sk-or-...' >> ~/.config/alia/env   # any OpenAI-compatible key
#   ALIA_MODEL=anthropic/claude-haiku-4.5   (optional)
#   ALIA_BASE_URL=https://openrouter.ai/api/v1   (optional)

Press <Super>i (or run alia).

Install with pipx

Requires the system GTK 4 + WebKitGTK libraries (see Requirements) — pipx's venv borrows them via --system-site-packages:

pipx install --system-site-packages alia      # PyPI (once published)
# or, from the private repo:
#   pipx install --system-site-packages git+ssh://git@github.com/syalia-srl/alia
alia setup     # wires the <Super>i shortcut, .desktop entry, and config

alia setup is also safe to re-run anytime (re-checks deps, re-installs the shortcut). install.sh calls it under the hood.

Run from source (dev)

export ALIA_API_KEY="sk-or-..."
make run          # builds .venv (--system-site-packages) and launches

make run starts the resident app. To summon it with a key:

make shortcut                 # binds <Super>i → ALIA
BINDING='<Super>j' make shortcut   # or pick your own free key

Picking a key. Many obvious combos are already grabbed and will silently do nothing if you bind a custom shortcut to them: the bare Super/Windows key (Activities overview), <Super>space (ibus input-source switch — an independent grabber, so freeing the WM binding isn't enough), and often F12 (terminal dropdowns). The default is <Super>i (mnemonic for IA). If a binding seems dead, it's almost certainly already taken — check /tmp/alia-launch.log: the launcher logs every time the shortcut actually fires, so an empty log means the key never reached ALIA.

Config

Env var Default Purpose
ALIA_API_KEY / OPENROUTER_API_KEY / API_KEY API key
ALIA_MODEL / MODEL anthropic/claude-haiku-4.5 model slug
ALIA_BASE_URL / BASE_URL https://openrouter.ai/api/v1 endpoint

Develop

make test     # agent-core unit tests (offline, via lingo's MockLLM)

The GTK HUD is smoke-tested manually (make run); the agent core is unit-tested.

Status

Conventions: ships to main, vertical-slice-first. See AGENTS.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

alia_ai-1.1.0.tar.gz (77.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

alia_ai-1.1.0-py3-none-any.whl (74.4 kB view details)

Uploaded Python 3

File details

Details for the file alia_ai-1.1.0.tar.gz.

File metadata

  • Download URL: alia_ai-1.1.0.tar.gz
  • Upload date:
  • Size: 77.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for alia_ai-1.1.0.tar.gz
Algorithm Hash digest
SHA256 ab0030ab376ddf7e9458eb7e7e44953447cb5e3f2e3165fffdbc2cb430991d85
MD5 10fc087975254ed5373c80b5b92fbbfe
BLAKE2b-256 d57f83029e661952b52682cea221be73db961ffe552f4c312bb8faa4c5e19a0a

See more details on using hashes here.

File details

Details for the file alia_ai-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: alia_ai-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 74.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.24 {"installer":{"name":"uv","version":"0.11.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for alia_ai-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 810a22364986214f6f984023c84ac030ab4be00e9374f46a3ed483f8b3e9b5bc
MD5 e0388f6052cca33238337242cae7f3c7
BLAKE2b-256 b47f50fea3c82b1ffe8a82bcd13833cec7c7fa7cfc39acb23790610e95bfd5ca

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page