# CyberClaw

A LangGraph-based general-purpose agent, inspired by OpenClaw's design, that logs every decision, verifies dynamic skill calls with a two-phase help-then-run credential, and delegates work to read-only sub-agents.

CyberClaw builds a state graph around "model decision, tool action, result observation," implemented in Python with LangGraph, and adds SQLite session persistence, a user profile, context summarization, dynamic skills, scheduled tasks, sub-agent delegation and structured behavior logs: five categories of JSONL events written by a background thread, viewable in a Rich terminal monitor.

Its core design is a two-phase "help then run" skill invocation: the model first calls help to get a skill's instructions and a one-time credential, then calls run with that credential; the loader checks the thread ID, skill identity, instruction path and a SHA-256 hash of the instructions before executing, and a missing, expired, replayed or cross-session credential is rejected. A main agent can delegate to a code-review or documentation sub-agent with its own context, read-only default tools, budget and audit trail. The project targets Python 3.10+ and supports OpenAI-compatible, Anthropic and Ollama model backends.

Website: https://github.com/ttguy0707/CyberClaw
