Repository navigation
FAQ
lgit list -project=$PWD -severity=error. Errors are wrong by any reading and there are usually few. Warnings next, info last: info is the audit layer, which is why the extension hides it by default. See Adopting it.
Use the inline directive with a reason. It keeps the exception next to the line and emits an override_accepted finding, so the exception stays visible instead of vanishing into a config file:
# l0git: ignore from_latest reason: dev base image, never released
Expected, and the fix is exclude_paths scoped to those fixtures. This project does the same thing to itself: its secrets gate fires on the source of the secrets gate, because that file contains the patterns it looks for. See When a gate is wrong.
Ignore when the gate does not apply to this project at all. Downgrade to info when the finding is real but not urgent: it stays in the audit layer without competing with errors.
Because a secret still in .git is a real finding with a real remediation cost, and discovering it by surprise is worse than choosing to look. Turn it on deliberately with secrets_scan_history.enabled.
The store is shared between front ends on the same machine, so yes locally. CI checks out fresh and has no store, which is correct: CI should judge the tree rather than inherit somebody's triage. Permanent decisions belong in .l0git.json, which is committed and reviewed.
No. It reports and persists triage. findings_remediate returns a recipe with a confidence of deterministic or guided, and executing is up to whoever is driving.
That the tool is offering a direction rather than an exact recipe. An agent should think before acting on it. deterministic is the case where applying the recipe is mechanical, and there are eight gates in that category.
lgit fix prints the exact commands for the eight deterministic gates. The VS Code extension goes one step further for presence-style gates, with quick fixes that write the missing file and clear the finding. Nothing is applied without you asking.
No. No model, no network, no rule engine. That is the point of the design constraint: the same tree gives the same findings on any machine.
Handled: WAL journal mode, a 15-second busy timeout, and the extension serialises its lgit invocations. The extension and an agent-managed MCP server sharing one store is the anticipated configuration.
Because the constraint that a gate must be a binary, unambiguous condition is what makes the findings reproducible. A rule engine or a YAML DSL would let you express conditions the tool cannot guarantee to evaluate the same way twice, and that is the property being protected.
That is where it is most useful: a clean baseline means the next finding is signal. It is also the state the project holds itself to, since l0-git scans clean against itself with its bundled config.
l0-git · Documentation · Gate reference · Issues · MIT · Deterministic about bytes, not about intent
In this wiki
Reference
Project