diff --git a/CHANGELOG.md b/CHANGELOG.md index 9742150a3..11f3ca691 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ Docs: https://docs.clawd.bot Status: unreleased. ### Changes +- Agents: include full date with day of week in system prompt. (#2108) - Doctor: warn on gateway exposure without auth. (#2016) Thanks @Alex-Alaniz. - Docs: add Vercel AI Gateway to providers sidebar. (#1901) Thanks @jerilynzheng. - Agents: expand cron tool description with full schema docs. (#1988) Thanks @tomascupr. diff --git a/src/agents/system-prompt.test.ts b/src/agents/system-prompt.test.ts index 14f643e55..fdf290972 100644 --- a/src/agents/system-prompt.test.ts +++ b/src/agents/system-prompt.test.ts @@ -145,6 +145,7 @@ describe("buildAgentSystemPrompt", () => { }); expect(prompt).toContain("## Current Date & Time"); + expect(prompt).toContain("Current: Monday, January 5th, 2026 — 3:26 PM"); expect(prompt).toContain("Time zone: America/Chicago"); }); @@ -157,6 +158,7 @@ describe("buildAgentSystemPrompt", () => { }); expect(prompt).toContain("## Current Date & Time"); + expect(prompt).toContain("Current: Monday, January 5th, 2026 — 15:26"); expect(prompt).toContain("Time zone: America/Chicago"); }); diff --git a/src/agents/system-prompt.ts b/src/agents/system-prompt.ts index 41ec9a7d5..4eb3e1d64 100644 --- a/src/agents/system-prompt.ts +++ b/src/agents/system-prompt.ts @@ -49,9 +49,15 @@ function buildUserIdentitySection(ownerLine: string | undefined, isMinimal: bool return ["## User Identity", ownerLine, ""]; } -function buildTimeSection(params: { userTimezone?: string }) { +function buildTimeSection(params: { userTimezone?: string; userTime?: string }) { if (!params.userTimezone) return []; - return ["## Current Date & Time", `Time zone: ${params.userTimezone}`, ""]; + const lines = ["## Current Date & Time"]; + if (params.userTime) { + lines.push(`Current: ${params.userTime}`); + } + lines.push(`Time zone: ${params.userTimezone}`); + lines.push(""); + return lines; } function buildReplyTagsSection(isMinimal: boolean) { @@ -297,6 +303,7 @@ export function buildAgentSystemPrompt(params: { : undefined; const reasoningLevel = params.reasoningLevel ?? "off"; const userTimezone = params.userTimezone?.trim(); + const userTime = params.userTime?.trim(); const skillsPrompt = params.skillsPrompt?.trim(); const heartbeatPrompt = params.heartbeatPrompt?.trim(); const heartbeatPromptLine = heartbeatPrompt @@ -459,6 +466,7 @@ export function buildAgentSystemPrompt(params: { ...buildUserIdentitySection(ownerLine, isMinimal), ...buildTimeSection({ userTimezone, + userTime, }), "## Workspace Files (injected)", "These user-editable files are loaded by Clawdbot and included below in Project Context.",