XDOG

Tools for building AI agents and managing LLM deployments.

GitHub →

xdog

Stop repeating the prompt. Build the process.

Start with an agent in your repository. Turn a useful sequence of steps into a workflow you can test and run again. Connect file changes or schedules when it is time to automate.

XDOG gives you ready-to-use apps and composable Python SDKs. Your host keeps control of tools, permissions and state; no hosted control plane is required.

Get started → Explore workflows

Linux · Python 3.12+ · Open source

What do you want to put to work?

Work on a codebase → Coding
Read and edit files, run checks, and delegate to child agents. Keep approvals and conversation history with your coding session.
Run a process again → Flow
Connect scripts, agents and human steps with typed inputs and outputs. Test the workflow, resume from checkpoints, or generate Python.
Keep an assistant available → Claw
Talk through a terminal or Weixin. Add Eyes to send file-change or schedule inputs to the assistant. Its main agent decides the next step.

Start with one useful task

Try Coding in a repository. You do not need the whole stack to get started.

pip install xdog-coding
xdog-ai login copilot
xdog-coding --permission-mode ask

Real model calls need an authenticated provider. Choose a model from your configured catalog. The ask mode allows read-only calls by default and requests approval for mutations.

Want workflows and observations too?
pip install xdog-flow xdog-eyes xdog-claw

Install in the same Python environment for capability discovery. Coding and Claw include xdog-skills. Installed capabilities contribute tools and discoverable skills; skill bodies are not activated by default.

From a good prompt to a repeatable review

A repository review can be a process, not a conversation you reconstruct each time:

  1. Collect: a script gathers the diff and project context.
  2. Review: an agent uses the model and tools you choose.
  3. Check: scripts run checks and assemble a structured report.

Each step gets explicit inputs and outputs. Add workflow test cases before relying on the next run.

xdog-flow validate ./workflows/review.json
xdog-flow test ./workflows/

Illustrative workflow, not a live run or an included review recipe. Commands assume you have created the workflow and its tests.

Start from the shipped Flow examples →

Build the parts only you can build

Use the same Agent loop behind the apps. Register your tools, load skills from your own directories, and open only the capabilities you need. Keep permission checks in your host.

from xdog.agent import ToolRepo, SkillRepo
from xdog.agent.capabilities import CapabilitySet

catalog = CapabilitySet(
    "application",
    tool_repo=ToolRepo(),
    skill_repo=SkillRepo(),
)

async with catalog.select(["flow"]).open() as capabilities:
    async with capabilities.create_agent(
        stream_fn,
        config=config,
        before_tool_call=permission_hook,
    ) as agent:
        async for event in await agent.prompt(task):
            handle(event)

Source SDK excerpt. Your host supplies the model stream, config, permission hook, task and event handler. Install xdog-flow for its capability. Use the API docs matching your installed release.

Read the Agent SDK reference → · Runnable SDK quick start

One toolbox. Pick the pieces.

8 public packages. Use an app, build on the SDKs, or combine just what your project needs.

ai

Typed model APIs, providers and wire protocols.

xdog-ai
tui

Shared terminal rendering and input components.

xdog-tui
eyes

JSON observations and an independent shared daemon.

xdog-eyes

Local-first does not mean local-model-only: choose your provider and keep execution in your host. Durable features use local files and SQLite. AGPL-3.0-or-later.