Vaultlier

Projects

A project is the unit that owns a schema, its environments, secret values, and API keys.

What a project is

Every project has a public id (prj_…) that the CLI and SDK use to address it. The id is not a secret — it's safe to commit in vaultlier.json and the generated client. A project holds:

  • A schema — the declared keys with their types and environment scopes.
  • One or more environments (e.g. dev, staging, prod).
  • Encrypted, versioned secret values per key per environment.
  • Project-scoped API keys used by the CLI and runtime.

Creating a project

The quickest path is vaultlier init: after you log in, choose "Create a new project" from the list and give it a name. You can also create projects in the portal dashboard.

Terminal
vaultlier init          # interactive: pick or create a project

New projects start with three environments — dev, staging, and prod — which you can extend at any time.

Local binding

A directory is bound to a project through vaultlier.json. Repoint it with config set, which also regenerates the typed client:

Terminal
vaultlier config set project=prj_29ec67d64dd1
vaultlier config get      # confirm the current binding

Organizations & roles

Projects live inside organizations. Your role in the organization determines what you can do: owners and admins manage projects and API keys, members can write secrets, and viewers are read-only.

Roles are organization-scoped, while API keys are project-scoped. See API Keys for how key roles map to permissions.