# Ariadne Ariadne analyzes Clew-produced data for local Ren'Py projects. Clew owns extraction, preparation, and Ren'Py AST export. Ariadne consumes Clew output and builds analysis artifacts from it. Keep project-owned source under `src/ariadne/`; keep generated or game-derived files out of Git. ## CLI Run the default target, `all`: ```sh bazel run //src/ariadne:ariadne ``` By default, Ariadne writes output under `output/`. Use `--output-dir` to choose a different output directory: ```sh bazel run //src/ariadne:ariadne -- --output-dir scratch/ariadne-output ``` Run through a specific target stage and its prerequisites: ```sh bazel run //src/ariadne:ariadne -- parse bazel run //src/ariadne:ariadne -- add-jump-edges ``` Available target stages: - `all` - `parse` - `add-implicit-edges` - `add-init-edges` - `add-jump-edges` Relative `--output-dir` paths resolve from the workspace root when Ariadne runs through `bazel run`. ## Pipeline skeleton Ariadne currently has pipeline scaffolding only. Each executable stage prepares an output directory at: ```text /graph// ``` If a stage output directory already exists and is not empty, Ariadne fails unless `--force` is set. With `--force`, Ariadne removes the existing stage output directory before recreating it. Stage implementations are placeholders and do not write graph artifacts yet.