- Python 3.13+ and uv (the project's package manager)
- An Anthropic API key — get one at console.anthropic.com
- Git
The recommended approach is to use the provided dev container, which pre-installs all dependencies and tools. Any container-compatible environment works: VS Code Dev Containers, GitHub Codespaces, or the Dev Container CLI.
-
Clone the repository:
git clone https://github.com/projectious-work/kaits.git cd kaits -
Open in VS Code and select Reopen in Container when prompted, or use the Dev Container CLI:
devcontainer up --workspace-folder . -
The container installs all dependencies automatically. Skip to the "Running the App" section.
See Run with Docker for more detail on the dev container setup.
-
Clone the repository:
git clone https://github.com/projectious-work/kaits.git cd kaits -
Install Python 3.13+ and uv if not already installed:
curl -LsSf https://astral.sh/uv/install.sh | sh -
Install project dependencies:
uv sync
-
Set your Anthropic API key:
export ANTHROPIC_API_KEY=sk-ant-...Add this to your shell profile (
~/.zshrc,~/.bashrc) or a.envfile to persist it across sessions. -
Initialise Reflex (first run only) and start the development server:
uv run reflex init uv run reflex run
The app is available at
http://localhost:3000. The backend runs athttp://localhost:8000.
poe docs-serveThe documentation site is available at http://localhost:8800 (or the port shown in the terminal). It hot-reloads when you edit any file under docs/.
poe checkThis runs uv lock --locked, ruff check, and ruff format --check in sequence. Fix auto-fixable issues with:
uv run ruff check --fix
uv run ruff format .All PRs must pass poe check before merging.
poe testFor E2E browser tests:
poe test-uiTo run everything:
poe test-all- Container rebuilds — If you install system packages inside a running dev container (e.g.
apt-get install some-tool), add them to.devcontainer/Dockerfilebefore the next rebuild. Ephemeral installs are lost when the container is rebuilt. The rule: if you install it, make it persistent in the Dockerfile. - Agent definitions — Agents are loaded from the
agents/directory at startup. Adding or modifying a YAML file requires restartingreflex runto take effect. - Conversation history — Histories are held in server-side session memory and are cleared on every server restart. There is no persistent storage for conversations in the current release.