Skip to content

Add desktop env vault for applying values to .env.example templates #64

Description

@Evenss

Description

Add a desktop env management tool that stores environment variables as reusable key-value records and can apply them to a target project's .env.example template to generate a .env file.

This feature should be generic and not tightly coupled to ContextSeek. ContextSeek's own .env.example can be used as the initial seed/template, but the underlying capability should be reusable for other projects.

Requirements:

  • Store env values as reusable KV records in a project-local env vault.
  • Encrypt the vault file on disk.
  • For the MVP, use an application-level fixed encryption key so users do not need to enter a passphrase or unlock the vault manually.
  • Use .env.example as the template/schema when applying env values to a project.
  • Create a .env file that follows the keys from .env.example.
  • For each key in .env.example, automatically fill the value if the key exists in the Env Manager KV store.
  • If a key has no matching value, show a prompt/dialog for the user to fill it manually.
  • After the user fills missing values, write the generated .env file.
  • Sync newly filled or updated values back into the Env Manager KV store.
  • Secret-like values should be hidden by default in the UI.
  • Users can click to show or hide each secret value.
  • MVP only needs to support one .env.example.env flow per project.

Out of scope for MVP:

  • Preserving original .env comments, blank lines, or formatting.
  • Managing multiple env files such as .env.local, .env.dev, or .env.prod.
  • Strong local security through user passphrases or OS keychain integration.
  • Complex variable expansion such as FOO=${BAR}.

Acceptance criteria:

  • A desktop Env management view is available.
  • The view can initialize seed keys from ContextSeek's .env.example.
  • The view can select/read a target project's .env.example.
  • The tool generates a .env file using keys from .env.example.
  • Matching keys are populated from the Env Manager KV store.
  • Missing keys are collected from the user through a dialog.
  • Newly entered values are synced back into the Env Manager KV store.
  • Env values are stored in an encrypted project-local vault file.
  • No user passphrase or manual unlock step is required for the MVP.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions