About Sufficiency

Sufficiency didn’t start as a CLI project, a framework, or even a design exercise. It began with a simple goal: to automate the Acronis login flow by reverse-engineering raw HAR entries. What started as a focused problem-solving effort evolved into a powerful, modular CLI engine.

The Origin Story

The journey began with the challenge of handling:

  • POST /api/1/login requests

  • Cookies like AUTH_SERVER_SECURE

  • Session tokens and MFA state

  • HAR dumps and browser headers

  • Acronis’s unique split-session behavior

The goal was straightforward: automate Acronis login.

The Evolution

  1. PowerShell Proof of Concept: A quick prototype to send login requests, capture cookies, follow redirects, and extract tokens.

  2. Python Proof of Concept: A cleaner, modular, and reusable implementation.

  3. CLI Wrapper: To make token usage practical and accessible.

  4. IOS-like Experience: Added contexts, help, completion, and paging for a familiar operator experience.

  5. Structured CLI: Split handlers, schema, and engine logic for maintainability.

  6. Declarative Schema: Moved commands into YAML for clarity and flexibility.

  7. Domain-Agnostic Engine: Removed the fake API layer to generalize the engine.

  8. Filesystem-Driven Schema: Enabled schema definition through the filesystem.

  9. Naming Sufficiency: The architecture finally matched the philosophy, and the project was named.

What Sufficiency Is Today

Sufficiency is more than just a solution to a login problem. It is a platform that includes:

  • A modular CLI engine

  • A declarative schema system

  • Filesystem-driven and explicit modes

  • A handler registry

  • A context model

  • A meta-command subsystem

  • A loader

  • A guiding philosophy

It’s a platform designed to solve not only the original problem but all the challenges that follow.

This article was updated on February 15, 2026