Skip to content

Plugin What Time Is It

Jon edited this page Sep 5, 2026 · 2 revisions

what_time_is_it Plugin

what_time_is_it is the reference Go native plugin bundled with Ash. It provides precise date, time, timezone, and Unix epoch timestamps on demand.

Motivation

Previously, current datetime information was baked statically into the system prompt prefix on every request. By delegating datetime queries to what_time_is_it:

  • System prompt tokens are conserved.
  • The model queries exact current time only when needed (e.g. scheduling, relative date calculations).
  • Serves as the gold-standard example of implementing the Ash Go plugin interface.

Capabilities and Arguments

Discovery & Documentation

what_time_is_it --ai-docs

Returns structured JSON:

{
  "Capabilities": [
    "Retrieve the current date, time, timezone, and epoch timestamp.",
    "Support formatted output in RFC3339/ISO8601, Unix epoch seconds, UTC, or human-readable format.",
    "Support specific IANA timezone conversions."
  ],
  "Arguments": {
    "--format": "Output format: 'rfc3339' (default), 'unix', 'utc', 'human', or 'json'",
    "--timezone": "Optional IANA timezone location such as 'America/New_York', 'UTC', or 'local' (default: local)",
    "--ai-docs": "Print this documentation and exit",
    "--version": "Print version and exit",
    "--help": "Print help and exit"
  },
  "Return format": {
    "status": "success or error",
    "local_time": "Current local 12-hour time with AM/PM (e.g. '5:15:30 PM')",
    "local_time_24h": "Current local 24-hour time (e.g. '17:15:30')",
    "local_date": "Current local date (e.g. 'Saturday, September 5, 2026')",
    "local_datetime": "Full human-readable local date, time, and timezone",
    "timezone": "Local timezone abbreviation (e.g. 'EDT', 'PST')",
    "iso8601": "RFC3339 timestamp in local timezone",
    "utc_iso8601": "RFC3339 timestamp in UTC",
    "unix_timestamp": "seconds since Unix epoch",
    "human_readable": "Full formatted date and time string in local timezone"
  }
}

CLI Usage Examples

  • JSON format (default):
    what_time_is_it --format json
  • Specific timezone:
    what_time_is_it --timezone America/Los_Angeles
  • Human readable:
    what_time_is_it --format human
  • Version:
    what_time_is_it --version

Clone this wiki locally