Doolta
EN · FR Write to us

Doolta

AXF

GitHub →

An open format and toolkit for managing isolated, portable digital identities across shells, browsers and developer tools.

Project Details

  • Real problemSwitching between a day job, a freelance client, a side project and a pseudonymous account usually means juggling ~/.ssh/config rules, overriding .gitconfig so you don’t commit with the wrong email, and running separate browser windows so cookies and history don’t bleed together.
  • ConstraintsMake identity switching explicit, repeatable and auditable: one command to enter an identity context, one to leave it cleanly. Identities stored as plain, versionable JSON documents. No daemon, no hidden state.
  • Structural choicesAn open JSON specification (the Alter eXtensible Format) deliberately scoped like OpenAPI for APIs or OCI for containers: one reference document, several independent implementations. This repository provides the reference Go SDK, a local activation runtime exposed as a CLI (axf up / axf down), providers for shell, git identity, browser profile and SSH key selection, and a policy-and-audit layer (the Alter Guard) on the activation path.
  • What it proves todayA tested, continuously audited Go project, not just a spec sketch: make test runs with the race detector, make cover gates coverage at 80%, and make audit runs govulncheck and golangci-lint. The spec itself says plainly that it is draft v0 (runtime v1.1) and not stable yet, rigor applied before the format is finished, not after.
  • Associated offerBespoke engagement. Get in touch.

Turning a recurring annoyance into an open format

AXF names a problem most people who juggle several professional or personal contexts have hit without naming it: identity context switching. Instead of another pile of ad hoc shell scripts, it gives that problem one command to enter a context and one to leave it, on demand, in the current shell, with no background process.

One open specification, not another proprietary tool

The repository ships a reference Go SDK for the v0 data model, a local CLI runtime, and providers for shell, git identity, browser profile and SSH key selection, but the actual artifact being built is the specification: a format meant to be implemented by more than one tool, the way OpenAPI or OCI are.

Honest about where it stands

The spec is explicitly marked draft, the runtime pre-1.0 in spirit even at v1.1, and the README says so directly rather than overselling readiness. What is already in place, tests, coverage gate, continuous vulnerability and lint auditing, is real regardless of the spec’s maturity.

This project demonstrates the same instinct visible across this lab: when a mechanical, error-prone problem shows up more than once, look for the general model underneath it before reaching for another one-off script.