Skip to content

Commodity and Tooltypes

Simon Dick edited this page Jul 19, 2026 · 8 revisions

Commodity and Tooltypes

AmiAuthGUI is a proper AmigaOS Commodity: it runs resident in the background, appears in Exchange, pops up on a hotkey, and is single-instance. This is the recommended way to run it — you unlock the vault once, and it stays available all session, to both the hotkey and the Shell CLI.

Behaviour as a commodity

  • Hotkey (default Ctrl-Alt-A): if the window is hidden, it opens; if it's already open, it comes to the front and activates.
  • Closing the window hides it — the process stays resident and the vault stays unlocked. Bring it back with the hotkey, Exchange's Show, or AmiAuth SHOW from a Shell.
  • Quitting for real is Project → Quit (or Exchange's Kill, or removing it in Exchange). Key material is zeroed on the way out.
  • Single instance: launching AmiAuthGUI a second time doesn't start a second copy or re-prompt for the passphrase — it just tells the running instance to show its window.
  • Exchange lists it as "AmiAuth" ("TOTP/HOTP authenticator") and all the standard messages work: Show / Hide / Enable / Disable (the hotkey) / Kill.
  • CLI forwarding: while resident, the Shell AmiAuth command sends GET, LIST, ADD, REMOVE and SHOW to the running GUI instead of opening the vault itself — no second passphrase prompt. See CLI Reference.

Without commodities.library (a bare OS install), AmiAuthGUI degrades to a plain application window: no hotkey or Exchange entry, and closing the window quits.

Tooltypes

Set these in the icon's Information window (Workbench: select the icon, then Icons → Information). The CX_ tooltypes are the standard commodity set.

Tooltype Default Meaning
CX_POPKEY ctrl alt a The hotkey that shows/raises the window. Standard commodities hotkey syntax: qualifiers (ctrl, alt, shift, lcommand, …) followed by a key, e.g. CX_POPKEY=lcommand a.
CX_POPUP yes no = start hidden: the commodity loads silently and the window first opens on the hotkey (or Exchange Show). The right choice for WBStartup.
CX_PRIORITY 0 Commodity broker priority — the order commodities see input. Rarely needs changing.
TIMESERVER (saved server pref, else pool.ntp.org) SNTP server for the automatic time sync the GUI performs at startup. On success the measured offset (and this server) are saved; offline the sync fails quietly. See Time and Clock Sync.
DONOTWAIT Not read by AmiAuth itself: tells Workbench not to wait for the program to exit. Set it on any WBStartup icon.

The CX_* names also work as Shell arguments when starting the GUI from a script (Run >NIL: AmiAuthGUI CX_POPUP=no).

There is no VAULT tooltype: the GUI finds its vault via the AMIAUTH_VAULT environment variable, the path saved in ENVARC:AmiAuth/vault at first run, or the PROGDIR:AmiAuth.vault default — see Vault and Passphrases.

A WBStartup icon that works

As explained in Installation: leave AmiAuthGUI in its own drawer and put a project icon (or a Run line in S:User-Startup) into WBStartup rather than copying the executable there — PROGDIR: follows the launch directory, and AmiAuth's vault lives in PROGDIR: by default. (The absolute vault path recorded in prefs at first run protects you even if you do copy it, but the project-icon shape is the clean one.)

Suggested tooltypes for that icon:

CX_POPKEY=ctrl alt a
CX_POPUP=no
DONOTWAIT

Result: nothing visible at boot; press Ctrl-Alt-A anywhere, enter your passphrase once, and from then on the hotkey summons your codes instantly.

Choosing a hotkey

ctrl alt a is chosen to be unlikely to clash. If it does clash (some terminal programs and other commodities grab similar combinations), pick another with CX_POPKEY — Exchange will show AmiAuth's current hotkey in its information view. If two commodities claim the same hotkey, the one with the higher CX_PRIORITY gets it.

Clone this wiki locally