Skip to main content

Lite Python AI platform inspired by OpenClaw, built for Termux/proot and Telegram.

Project description

OpenClaw Lite

OpenClaw Lite — Python lite-рантайм в стиле OpenClaw: локальный агент, Telegram-бот, skills с hot-reload, multi-provider LLM слой, pairing auth и self-modification через tools.

Что внутри

  • openclaw_lite/core/runtime.py — основной рантайм, session store, auth, reload и wiring tools/providers/skills.
  • openclaw_lite/core/agent.py — агентный loop с progress callbacks, tool-repair и session end.
  • openclaw_lite/providers/OpenAI, Gemini и OpenAI-compatible/custom API.
  • openclaw_lite/skills/ — manifest-based skills: skill.json + SKILL.md + optional main.py.
  • openclaw_lite/interfaces/telegram_bot.py — long-polling Telegram bot на aiogram с pairing/owner auth.
  • openclaw_lite/tools/telegram_tools.py — Telegram actions для текста и медиа.
  • workspace/skills/self_describe/ — стартовый skill для объяснения структуры агента.

Возможности

  • Провайдеры: OpenAI, Gemini, OpenAI-compatible/custom.
  • Модели: листинг через API провайдера и переключение на лету.
  • Telegram: /status, /safe on, /safe off, /mode, /providers, /models, /skills, /sessions, /end, /reload, /exec, /pair, /auth, /approve, /openclaw.
  • Pairing/access: owner по user_id/chat_id, обычный доступ по allowlists или pairing code.
  • Agent mode: iterative tool-calling, progress updates, session close tool, self-repair после ошибок инструментов.
  • Self-modification: файлы, config, skills, shell, web/HTTP tools.
  • Shell modes: safe, yolo, god.

Установка

Если проект лежит на /sdcard, обычный venv может падать из-за symlink-ограничений файловой системы. Надёжный вариант — держать venv вне /sdcard.

Из PyPI

python3 -m venv --copies "$HOME/.venvs/openclaw-lite"
source "$HOME/.venvs/openclaw-lite/bin/activate"
python3 -m pip install -U openclaw-lite

Из локального checkout в editable-режиме

python3 -m venv --copies "$HOME/.venvs/openclaw-lite"
source "$HOME/.venvs/openclaw-lite/bin/activate"
python3 -m pip install -U -e /sdcard/openclaw_lite[dev]

После установки доступны обе команды:

liteclaw --help
openclaw-lite --help

Быстрый старт

cd /sdcard/openclaw_lite
liteclaw init --config config.yaml
liteclaw onboard --config config.yaml
liteclaw doctor --config config.yaml
liteclaw pair create --config config.yaml
liteclaw web --config config.yaml --host 127.0.0.1 --port 8787
liteclaw run --config config.yaml

Заполни в config.yaml или через env:

  • telegram.bot_token
  • telegram.owner_user_ids и/или telegram.owner_chat_ids
  • providers.items.openai.api_key
  • providers.items.gemini.api_key
  • любые кастомные провайдеры в providers.items.*

CLI

Основная терминальная команда — liteclaw; openclaw-lite доступен как совместимый alias того же CLI.

Quickstart onboarding

liteclaw onboard --config config.yaml

Команда запускает интерактивный терминальный quickstart-мастер: Telegram Bot Token, выбор default provider, API key и модель. После подтверждения мастер явно показывает путь к config.yaml, сохраняет конфиг и сразу стартует в этом же процессе.

В Telegram команда /model <name> теперь не только меняет модель текущей сессии, но и сохраняет её как default_model для текущего провайдера в конфиге. Это защищает от отката обратно на старый дефолт после /provider, новой сессии или перезапуска.

Агентный запуск

liteclaw agent --config config.yaml "покажи статус и доступные skills"

agent — alias для ask.

По умолчанию внутренний agent mode уже без локального лимита на историю и число agent-шагов:

runtime:
  max_tool_rounds: 0
  history_limit: 0

Здесь 0 трактуется как unlimited: рантайм не обрезает историю и не ставит внутренний cap на число шагов агента.

Пример продолжения того же локального сеанса:

liteclaw agent --config config.yaml --session-id main "создай skill для поиска"
liteclaw agent --config config.yaml --session-id main "теперь используй его"

Просмотр конфига

liteclaw config show --config config.yaml
liteclaw config get --config config.yaml providers.default

Просмотр локальных сеансов

liteclaw sessions --config config.yaml
liteclaw sessions --config config.yaml --json

Pairing/access CLI

liteclaw pair create --config config.yaml
liteclaw pair show --config config.yaml --json

Новый пользователь в Telegram может ввести:

/pair ABC123

И получить доступ без перезапуска рантайма.

Директории

  • config.yaml — основной конфиг.
  • workspace/skills/ — skills с hot reload.
  • data/ — session state и auth.json.
  • logs/tool_audit.log — журнал tool calls.
  • backups/ — бэкапы конфига/файлов/skills.

Security modes

  • safe — строгий allowlist для shell.
  • yolo — мягче, но всё ещё owner-only и в рамках проектных roots.
  • god — полный доступ для владельца.

/safe off переводит текущую сессию в god: локально больше нет sandbox-ограничений, path-boundary ограничений, внутреннего shell-timeout и локального лимита на stdout/stderr. Ограничения со стороны самого LLM/API провайдера при этом остаются внешними и зависят уже от выбранной модели/endpoint.

Skills

Каждый skill — директория вида:

workspace/skills/<name>/
  skill.json
  SKILL.md
  main.py   # optional

main.py может вернуть prompt fragments и дополнительные tool definitions. После создания или обновления skill не нужен рестарт: достаточно /reload или tool reload_skills.

Web UI

Локальная web-морда теперь есть. Она позволяет поставить Telegram Bot Token, OpenAI API Key, Gemini API Key и другие базовые поля без ручного редактирования config.yaml:

liteclaw web --config config.yaml --host 127.0.0.1 --port 8787

После сохранения открой Telegram и сделай /reload, либо перезапусти рантайм.

Telegram trigger rules

Бот теперь отвечает только если:

  • сообщение является reply на сообщение самого бота;
  • или сообщение начинается с /openclaw ...;
  • или в этом чате уже есть незакрытая agent-сессия этого же пользователя;
  • или это одна из служебных команд вроде /pair, /status, /safe, /exec.

Обычный шум в чате он игнорирует, пока сессия не активирована. После первого /openclaw или reply на бота дальнейшие сообщения того же пользователя продолжают текущую сессию до /end или session_end. Ответы и служебные сообщения бот отправляет reply-ответом на исходное сообщение пользователя.

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

openclaw_lite-0.1.4.tar.gz (91.7 kB view details)

Uploaded Source

Built Distribution

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

openclaw_lite-0.1.4-py3-none-any.whl (94.3 kB view details)

Uploaded Python 3

File details

Details for the file openclaw_lite-0.1.4.tar.gz.

File metadata

  • Download URL: openclaw_lite-0.1.4.tar.gz
  • Upload date:
  • Size: 91.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for openclaw_lite-0.1.4.tar.gz
Algorithm Hash digest
SHA256 f5e290304ad98b26f72c495354050e0b9753a177e13b148517fced0d7d32300a
MD5 38ae91044b6f4a417cc024bba9b2e9e0
BLAKE2b-256 56cb6fe6b31ed6491cc00a0cb7b87bdd161eb18646b9e3f4b52261d4f810b391

See more details on using hashes here.

File details

Details for the file openclaw_lite-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: openclaw_lite-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 94.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for openclaw_lite-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 8c6c748c13de717eca36a30810384703b5f23535b4a5dd437968339532efb923
MD5 4a1f846a59f31b8e50d6215d0d4a035f
BLAKE2b-256 1a8269fbf8b413d9ddd28c1db3ff4345d2d0233326461e9742a3c251a9d94a36

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