# Hardi agents V2 — account

Contract: 2. Revision: 2026-11-03. Status: available to active verified Hardi accounts; Free, Plus and Pro retain their native limits.

# Personal preferences and settings

New permissions: preferences:write requires preferences:read; settings:write requires settings:read. Existing grants receive none automatically. Programming writes reuse the native persistent-generation-default entitlement: a Free user can read preferences and change ordinary display settings, but cannot save Pro programming rules.

Read hardi_get_preferences or hardi_get_settings first. preferences.update accepts native before/value path patches and a current expectedVersion. settings.update accepts a partial display (interfaceLanguage, unitPreferences: measurementSystem, weightUnit, terminologyStyle, dateFormat, resultLevelSelection) and partial boolean notifications (energy, follows, product, messages, messageRequests). Omitted fields retain their values. resultLevelSelection selects rx_scaled or none for new workout blocks; explicit import and duplicate categories are preserved. New agent blocks use this default unless levelSelection is supplied. Versions prevent concurrent overwrites. Conditional seven-day undo refuses later native changes.

CLI: hardi preferences get; hardi preferences update --file changes.json; hardi settings get; hardi settings update --file patch.json. A file contains changes or patch matching the action schema. --expected-version preserves a previously read explicit version.

The native account timezone and delegated connection timezone are reported separately, read-only. Reconnection preserves the original timezone of a retained future-only delegation. These tools do not move sessions or expand the future boundary. Password, login email, MFA, payments, account deletion and public-profile visibility remain in Hardi.
