Browse the docs
Concepts
Files and variables
What an environment stores: .env, INI, YAML and text files with paths on a computer, variables loaded by crunu run, hidden values and the service catalog.
Last updated
On this page
An environment stores files. A file has a path relative to the home directory, such as ~/.env or ~/.aws/credentials, and its contents. Crunu understands the common formats and shows their variables or fields as a table, so you rarely edit raw text.
File formats
| Format | How Crunu shows it |
|---|---|
env: KEY=VALUE, including export KEY=… | a table of variables, which crunu run can load into a program |
INI, such as ~/.aws/credentials | fields grouped by section |
| flat YAML | top-level fields |
| any other text | the whole file, edited as Raw text |
The words matter in Crunu. A variable is a KEY=VALUE line in an env file. A field is a key in an INI section or in YAML. A key means an encryption key, never a variable name.
Where a file lives on a computer
The path tells the agent and the install script where to put the file: .aws/credentials lands in ~/.aws/credentials. Change it with Path… in the file's panel. Paths are written relative to the home directory, so the same environment works for anyone who installs it.
Variables for crunu run
Tick Load as environment variables (crunu run) on an env file, and crunu run passes its variables to the program it starts. Files without the tick aren't loaded as variables. The file list marks loaded files with an env vars label. A new environment starts with one empty .env file that is already loaded.
Before a file marked this way is loaded, Crunu checks that no value could run as a shell command when the file is sourced. A file that fails gets a can run commands label when you add it.
The editor
Open an environment to see its files in the middle column and the selected file on the right. For an env file:
- Variables shows a table of names and values. Raw text shows the whole file.
- Values are hidden by default. Show values reveals them, and each row has buttons to show, copy, edit and delete a value.
- Generate fills in a random value of 40 characters.
- + Add variable adds a row. In INI files you add fields and sections.
- A comment line
# …above a variable appears as a grey note under it. A file can also have a Note, visible to everyone who can read the environment but not included in share links, file copies or the install script. - Files can be favorited.
Changes are collected in an Unsaved bar that lists what changed by name, never by value: a changed value, new fields, fields to be removed. Save ⌘S saves a new version. Discard all throws the changes away.
Copying a value
Copy puts the value on the clipboard. After a minute, Crunu clears the clipboard if your value is still on it and the tab is active. The web app records each show, copy and export in the audit log, marked as client-reported, without the value.
Adding files by dragging
Drag files or whole folders, such as .aws or .cloudflare from Finder, onto the environment page. Up to 300 files are added at once. Crunu guesses each file's path from its folder, its name and its contents, and shows the guess before adding: the path, the field names without values, and labels such as new file. Confirm with Add.
You can also paste the text of a .env file into a new file.
The service catalog
Crunu recognizes 20 common services by file and variable names, such as AWS, Cloudflare, Google Cloud, GitHub, Stripe and OpenAI. Their files get an icon and a Where to issue a new key link, which helps when you need to reissue a value at the provider. Recognizing a service only adds the icon and the link. It isn't an integration with that service.
Finding things with ⌘K
Press ⌘K, or Ctrl+K on Windows and Linux, to search by variable names, services, paths and actions. Values are never searched and never shown in results. From a result, Enter copies a value or runs an action, and ⌘Enter opens the environment. Press ? to see every keyboard shortcut.
Example. Kiteline is a fictional company. Jonas types
stripein the palette, picksSTRIPE_SECRET_KEYinpayments-api / stagingand presses Enter. The value is copied, and the clipboard is cleared a minute later.
Edits from two devices
If someone saved a new version while you were editing, Crunu merges the two by field. When both changed the same field, you choose which value to keep.
Limits
| What | Limit |
|---|---|
| Contents of one environment | 1 MB |
| Files added by one drag | 300 |
| Files in one access entry | 1,000 |