Skip to content

The engine

Furca’s engine, furca-core, reads a repository in-process through gitoxide and performs mutations through the system git CLI. See ADR 0001 for why the split falls where it does.

The same engine is exposed through three doors — the desktop app, the furca CLI, and eventually an MCP server — each a thin wrapper with no logic of its own. See ADR 0002.

Releasing is a crate of its own, furca-release, on top of furca-core: it reads a repository’s release.toml, proposes the next version and checks everything that has to agree before a tag - see release. It reads git only through furca-core, so the split above holds for it too. See ADR 0006.