Skip to main content
The preferences file stores personal settings that customize how the agent interacts with you.

Location

~/.craft-agent/preferences.json

Structure

{
  "name": "Alex",
  "timezone": "America/New_York",
  "location": "New York, USA",
  "language": "English",
  "notes": "I prefer concise responses"
}

Fields

name

Your name or how you’d like to be addressed.
"name": "Alex"
The agent may use this in greetings or personalized responses.

timezone

Your timezone in IANA format.
"timezone": "America/New_York"
Used for:
  • Accurate date/time references (“today”, “this week”)
  • Daily note access
  • Task due dates
Common values:
  • America/New_York
  • America/Los_Angeles
  • Europe/London
  • Europe/Berlin
  • Asia/Tokyo
  • Australia/Sydney

location

Your general location.
"location": "New York, USA"
Used for location-aware responses like weather, local events, or time-sensitive information.

language

Your preferred language for responses.
"language": "English"
The agent will respond in this language when possible.

notes

Free-form notes about your preferences.
"notes": "I prefer bullet points over paragraphs. Technical background."
These notes are included in the agent’s context and influence response style.

Terminal Display Settings

In addition to user preferences, you can configure how information is displayed in the terminal header.

Clock and Timezone Display

Access the settings menu to configure the clock display in the header:
> /settings
You can choose to:
  • Show current time in your local timezone
  • Display timezone abbreviation (EST, PST, CET, etc.)
  • Hide the clock entirely
The clock uses your configured timezone from preferences and updates in real-time.

Editing Preferences

Using the Command

> /prefs
Opens an interactive editor for your preferences.

Manual Editing

Edit the file directly:
nano ~/.craft-agent/preferences.json
Changes take effect on the next conversation (after /clear or restart).

How Preferences Are Used

Preferences are included in the system prompt, so the agent knows:
  • What to call you
  • Your current time and timezone
  • Where you’re located
  • How to communicate with you
This context makes responses more relevant and personalized.

Example

{
  "name": "Jordan",
  "timezone": "Europe/Berlin",
  "location": "Berlin, Germany",
  "language": "English",
  "notes": "Software engineer. Prefer code examples over descriptions. Use metric units."
}
With these preferences, the agent will:
  • Use Berlin time for scheduling references
  • Respond in English
  • Lean toward showing code
  • Use kilometers, Celsius, etc.