diff --git a/skyvern/forge/agent.py b/skyvern/forge/agent.py index f74fdd05..d6e8e066 100644 --- a/skyvern/forge/agent.py +++ b/skyvern/forge/agent.py @@ -1204,6 +1204,7 @@ class ForgeAgent: navigation_goal=task.navigation_goal, navigation_payload=task.navigation_payload, complete_criterion=task.complete_criterion, + local_datetime=datetime.now(skyvern_context.ensure_context().tz_info).isoformat(), ) # this prompt is critical to our agent so let's use the primary LLM API handler @@ -2155,6 +2156,7 @@ class ForgeAgent: navigation_goal=task.navigation_goal, navigation_payload=task.navigation_payload, steps=steps_results, + local_datetime=datetime.now(skyvern_context.ensure_context().tz_info).isoformat(), ) json_response = await app.LLM_API_HANDLER( prompt=prompt, screenshots=screenshots, step=step, prompt_name="summarize-max-steps-reason" diff --git a/skyvern/forge/prompts/skyvern/auto-completion-choose-option.j2 b/skyvern/forge/prompts/skyvern/auto-completion-choose-option.j2 index b9ff8f27..9c97d566 100644 --- a/skyvern/forge/prompts/skyvern/auto-completion-choose-option.j2 +++ b/skyvern/forge/prompts/skyvern/auto-completion-choose-option.j2 @@ -49,4 +49,9 @@ User details: HTML elements: ``` {{ elements }} +``` + +Current datetime, ISO format: +``` +{{ local_datetime }} ``` \ No newline at end of file diff --git a/skyvern/forge/prompts/skyvern/auto-completion-potential-answers.j2 b/skyvern/forge/prompts/skyvern/auto-completion-potential-answers.j2 index a9390075..92845e13 100644 --- a/skyvern/forge/prompts/skyvern/auto-completion-potential-answers.j2 +++ b/skyvern/forge/prompts/skyvern/auto-completion-potential-answers.j2 @@ -36,4 +36,9 @@ User goal: User details: ``` {{ navigation_payload_str }} +``` + +Current datetime, ISO format: +``` +{{ local_datetime }} ``` \ No newline at end of file diff --git a/skyvern/forge/prompts/skyvern/auto-completion-tweak-value.j2 b/skyvern/forge/prompts/skyvern/auto-completion-tweak-value.j2 index 3f965b33..b335dd4a 100644 --- a/skyvern/forge/prompts/skyvern/auto-completion-tweak-value.j2 +++ b/skyvern/forge/prompts/skyvern/auto-completion-tweak-value.j2 @@ -45,4 +45,9 @@ User details: Popped up elements: ``` {{ popped_up_elements }} +``` + +Current datetime, ISO format: +``` +{{ local_datetime }} ``` \ No newline at end of file diff --git a/skyvern/forge/prompts/skyvern/check-user-goal.j2 b/skyvern/forge/prompts/skyvern/check-user-goal.j2 index a4eef6b4..bc13bf16 100644 --- a/skyvern/forge/prompts/skyvern/check-user-goal.j2 +++ b/skyvern/forge/prompts/skyvern/check-user-goal.j2 @@ -27,4 +27,9 @@ Complete Criterion: Elements on the page: ``` {{ elements }} -``` \ No newline at end of file +``` + +Current datetime, ISO format: +``` +{{ local_datetime }} +``` diff --git a/skyvern/forge/prompts/skyvern/normal-select.j2 b/skyvern/forge/prompts/skyvern/normal-select.j2 index 3c37b831..fc36471b 100644 --- a/skyvern/forge/prompts/skyvern/normal-select.j2 +++ b/skyvern/forge/prompts/skyvern/normal-select.j2 @@ -36,4 +36,9 @@ User details: Option list: ``` {{ options }} +``` + +Current datetime, ISO format: +``` +{{ local_datetime }} ``` \ No newline at end of file diff --git a/skyvern/forge/prompts/skyvern/summarize-max-steps-reason.j2 b/skyvern/forge/prompts/skyvern/summarize-max-steps-reason.j2 index c497f975..fda693d5 100644 --- a/skyvern/forge/prompts/skyvern/summarize-max-steps-reason.j2 +++ b/skyvern/forge/prompts/skyvern/summarize-max-steps-reason.j2 @@ -15,4 +15,9 @@ User Details: Actions Taken In Each Step: {% for step in steps %}Step {{ step.order }} -- {{ step.actions_result }} -{% endfor %} \ No newline at end of file +{% endfor %} + +Current datetime, ISO format: +``` +{{ local_datetime }} +``` \ No newline at end of file diff --git a/skyvern/webeye/actions/handler.py b/skyvern/webeye/actions/handler.py index 53b1fcd9..042d7cc9 100644 --- a/skyvern/webeye/actions/handler.py +++ b/skyvern/webeye/actions/handler.py @@ -60,6 +60,7 @@ from skyvern.forge.sdk.api.files import ( wait_for_download_finished, ) from skyvern.forge.sdk.api.llm.exceptions import LLMProviderError +from skyvern.forge.sdk.core import skyvern_context from skyvern.forge.sdk.core.aiohttp_helper import aiohttp_post from skyvern.forge.sdk.core.security import generate_skyvern_signature from skyvern.forge.sdk.core.skyvern_context import ensure_context @@ -1668,6 +1669,7 @@ async def choose_auto_completion_dropdown( navigation_goal=task.navigation_goal, navigation_payload_str=json.dumps(task.navigation_payload), elements=html, + local_datetime=datetime.now(skyvern_context.ensure_context().tz_info).isoformat(), ) LOG.info( "Confirm if it's an auto completion dropdown", @@ -1825,6 +1827,7 @@ async def input_or_auto_complete_input( current_value=current_value, navigation_goal=task.navigation_goal, navigation_payload_str=json.dumps(task.navigation_payload), + local_datetime=datetime.now(skyvern_context.ensure_context().tz_info).isoformat(), ) LOG.info( @@ -1888,6 +1891,7 @@ async def input_or_auto_complete_input( navigation_payload_str=json.dumps(task.navigation_payload), tried_values=json.dumps(tried_values), popped_up_elements="".join([json_to_html(element) for element in cleaned_new_elements]), + local_datetime=datetime.now(skyvern_context.ensure_context().tz_info).isoformat(), ) json_respone = await app.SECONDARY_LLM_API_HANDLER( prompt=prompt, step=step, prompt_name="auto-completion-tweak-value" @@ -2644,6 +2648,7 @@ async def normal_select( navigation_goal=task.navigation_goal, navigation_payload_str=json.dumps(task.navigation_payload), options=options_html, + local_datetime=datetime.now(skyvern_context.ensure_context().tz_info).isoformat(), ) json_response = await app.SELECT_AGENT_LLM_API_HANDLER(prompt=prompt, step=step, prompt_name="custom-select")