Routines
Code review
Diff a branch against a base, pull in the touched graph entities and their 1-hop neighbors, and ask the LLM for per-file findings.
Review diffs two refs, pulls in the graph entities and 1-hop call-graph neighbors touched by each changed file, and asks the configured LLM for per-file findings — severity, category, an anchored line range when the model's start_line falls inside a changed range, and an optional fix suggestion — then writes a markdown summary of the whole run.
Launch a review against the default base branch
bash
curl -X POST localhost:8000/routines/runs \
-H "Authorization: Bearer $TOKEN" -H 'Content-Type: application/json' \
-d '{"kind":"review","project":"your-repo","target_ref":"feature/my-branch"}'
# -> 202 {"run_id":"...", "job_id":"..."}Pass base_ref to review against something other than the default base, and model/provider to override the LLM for just this run. List branches with GET /routines/git/branches.
Budgets & limits
- At most 60 changed files per run — a larger diff fails the launch with an actionable message.
- Target-file excerpts are capped at ~6,000 characters per file, shrunk proportionally around the changed ranges when the diff touches a lot of a file.
Known limitation — retrieval staleness
The graph entities and Weaviate descriptions used as context reflect the ingested index (the base branch as of the last pipeline run), while the diff and the findings' line anchors come straight from
git show against the actual target_ref (always accurate). If the target branch has drifted far from what's indexed, the descriptive context may be stale even though the diff and anchors are not.