§
    øžyj°$  ã                  ó6   — d Z ddlmZ ddlmZ ddlmZ dd	„Zd
S )uâ   ``hermes cron`` subcommand parser.

Extracted verbatim from ``hermes_cli/main.py:main()`` â€” same arguments, same
``func=cmd_cron`` dispatch. The handler is injected so this module does not
import ``main`` (cycle avoidance).
é    )Úannotations)ÚCallable)Úadd_accept_hooks_flagÚcmd_cronr   ÚreturnÚNonec               óè
  — |                       ddd¬¦  «        }|                     d¬¦  «        }|                      dd¬	¦  «        }|                     d
dd¬¦  «         |                      ddgd¬¦  «        }|                     dd¬	¦  «         |                     ddd¬¦  «         |                     dd¬	¦  «         |                     dd¬	¦  «         |                     dt          d¬¦  «         |                     dd d!d"¬#¦  «         |                     d$d%¬	¦  «         |                     d&d'dd(d)¬*¦  «         |                     d+d,d-¬.¦  «         |                     d/d0d1¬.¦  «         |                     d2d3¬	¦  «         |                     d4d5¬	¦  «         |                     d6d7d8¬.¦  «         |                      d9d:¬	¦  «        }|                     d;d<¬	¦  «         |                     d=d>¬	¦  «         |                     d?d@¬	¦  «         |                     ddA¬	¦  «         |                     ddB¬	¦  «         |                     dt          dC¬¦  «         |                     dd d!dD¬#¦  «         |                     dEdFd!dG¬#¦  «         |                     dHdId!dJ¬#¦  «         |                     dKddL¬¦  «         |                     d$dM¬	¦  «         |                     d&d'dNdOdPdQ¬R¦  «         |                     dSd'dNd(dT¬U¦  «         |                     d+d,dV¬.¦  «         |                     d/d0dW¬.¦  «         |                     d2dX¬	¦  «         |                     d4dY¬	¦  «         |                     d6d7dZ¬.¦  «         |                      d[d\¬	¦  «        }|                     d;d]¬	¦  «         |                      d^d_¬	¦  «        }|                     d;d`¬	¦  «         |                      dadb¬	¦  «        }	|	                     d;dc¬	¦  «         t	          |	¦  «         |                      dddedfgdg¬¦  «        }
|
                     d;dh¬	¦  «         |                      didj¬	¦  «         |                      dkdlgdm¬¦  «        }|                     d;ddn¬¦  «         |                     dot          dpdq¬r¦  «         |                      dsdt¬	¦  «        }|                     d;du¬	¦  «         |                     dvddg dw¢dx¬y¦  «         |                     dzdd{¬¦  «         |                     d|dd}¬¦  «         |                      d~d¬	¦  «        }t	          |¦  «         t	          |¦  «         |                     |¬€¦  «         dPS )�zGAttach the ``cron`` subcommand (and its sub-actions) to ``subparsers``.ÚcronzCron job managementzManage scheduled tasks)ÚhelpÚdescriptionÚcron_command)ÚdestÚlistzList scheduled jobs)r   z--allÚ
store_truezInclude disabled jobs)Úactionr   ÚcreateÚaddzCreate a scheduled job)Úaliasesr   Úschedulez/Schedule like '30m', 'every 2h', or '0 9 * * *'Úpromptú?z2Optional self-contained prompt or task instruction)Únargsr   z--namez Optional human-friendly job namez	--deliverzNDelivery target: origin, local, telegram, discord, signal, or platform:chat_idz--repeatzOptional repeat count)Útyper   z--skillÚskillsÚappendz.Attach a skill. Repeat to add multiple skills.)r   r   r   z--scriptzûPath to a script under ~/.hermes/scripts/. Default mode: script stdout is injected into the agent's prompt each run. With --no-agent: the script IS the job and its stdout is delivered verbatim. .sh/.bash files run via bash, everything else via Python.z
--no-agentÚno_agentFu«   Skip the LLM entirely â€” run --script on schedule and deliver its stdout directly. Empty stdout = silent. Classic watchdog pattern (memory alerts, disk alerts, CI pings).)r   r   Údefaultr   z--monitor-scriptÚmonitor_scriptak  Monitor mode: path to a cheap source script under ~/.hermes/scripts/ that runs each tick BEFORE the agent. Unchanged output (exact-bytes hash) suppresses the agent run entirely; changed output injects a MONITOR CHANGE DETECTED diff into the prompt. Script output must be stable (no timestamps). Mutually exclusive with --monitor-url; incompatible with --no-agent.)r   r   z--monitor-urlÚmonitor_urlzˆMonitor mode: http(s) URL fetched with a bounded GET each tick instead of a script. Same hash-suppression semantics as --monitor-script.z	--workdirzÜAbsolute path for the job to run from. Injects AGENTS.md / CLAUDE.md / .cursorrules from that directory and uses it as the cwd for terminal/file/code_exec tools. Omit to preserve old behaviour (no project context files).z--modelzžPin this job to a specific inference model (user-owned; the agent's cronjob tool cannot set this). Omit to follow cron.model / model.default from config.yaml.z
--providerÚmodel_providerzCInference provider paired with --model (e.g. 'openrouter', 'nous').ÚeditzEdit an existing scheduled jobÚjob_idzJob ID to editz
--schedulezNew schedulez--promptzNew prompt/task instructionzNew job namezNew delivery targetzNew repeat countzIReplace the job's skills with this set. Repeat to attach multiple skills.z--add-skillÚ
add_skillsz?Append a skill without replacing the existing list. Repeatable.z--remove-skillÚremove_skillsz-Remove a specific attached skill. Repeatable.z--clear-skillsz'Remove all attached skills from the jobz°Path to a script under ~/.hermes/scripts/. Pass empty string to clear. With --no-agent the script IS the job; otherwise its stdout is injected into the agent's prompt each run.Ústore_constTNzVEnable no-agent mode on this job (requires --script or an existing script on the job).)r   r   Úconstr   r   z--agentzDDisable no-agent mode on this job (reverts to LLM-driven execution).)r   r   r&   r   znSet/replace the monitor source script (see `hermes cron create --monitor-script`). Pass empty string to clear.z?Set/replace the monitor source URL. Pass empty string to clear.zqAbsolute path for the job to run from (injects AGENTS.md etc. and sets terminal cwd). Pass empty string to clear.z¬Pin this job to a specific inference model (user-owned; the agent's cronjob tool cannot set this). Pass empty string to clear the pin and follow cron.model / model.default.zCInference provider paired with --model. Pass empty string to clear.ÚpausezPause a scheduled jobzJob ID to pauseÚresumezResume a paused jobzJob ID to resumeÚrunz$Run a job on the next scheduler tickzJob ID to triggerÚremoveÚrmÚdeletezRemove a scheduled jobzJob ID to removeÚstatusz"Check if cron scheduler is runningÚrunsÚhistoryzShow durable execution attemptszOptional job ID filterz--limité   zRows to show (1-500))r   r   r   Únotepadz>Read/write a job's durable notepad (persistent KV across runs)zJob ID the notepad belongs toÚnotepad_action)ÚgetÚsetr,   r   zAction (default: list))r   r   Úchoicesr   ÚkeyzNotepad key (get/set/delete)ÚvaluezValue to store (set)ÚtickzRun due jobs once and exit)Úfunc)Ú
add_parserÚadd_subparsersÚadd_argumentÚintr   Úset_defaults)Ú
subparsersr   Úcron_parserÚcron_subparsersÚ	cron_listÚcron_createÚ	cron_editÚ
cron_pauseÚcron_resumeÚcron_runÚcron_removeÚ	cron_runsÚcron_notepadÚ	cron_ticks                 úA/home/ragecks/.hermes/hermes-agent/hermes_cli/subcommands/cron.pyÚbuild_cron_parserrM      s¶  € à×'Ò'ØÐ*Ð8Pð (ñ ô €Kð "×0Ò0°nÐ0ÑEÔE€Oð  ×*Ò*¨6Ð8MÐ*ÑNÔN€IØ×Ò˜7¨<Ð>UÐÑVÔVÐVð "×,Ò,Ø˜5˜'Ð(@ð -ñ ô €Kð ×ÒØÐJð ñ ô ð ð ×ÒØ˜Ð"Vð ñ ô ð ð ×Ò˜XÐ,NÐÑOÔOÐOØ×ÒØØ]ð ñ ô ð ð ×Ò˜Z­cÐ8OÐÑPÔPÐPØ×ÒØØØØ=ð	 ñ ô ð ð ×ÒØðð ñ 	ô 	ð 	ð ×ÒØØØØð>ð ñ 
ô 
ð 
ð ×ÒØØð,ð	 ñ ô ð ð ×ÒØØð ð	 ñ ô ð ð ×ÒØð lð ñ ô ð ð ×ÒØð;ð ñ ô ð ð ×ÒØØØRð ñ ô ð ð  ×*Ò*ØÐ5ð +ñ ô €Ið ×Ò˜8Ð*:ÐÑ;Ô;Ð;Ø×Ò˜<¨nÐÑ=Ô=Ð=Ø×Ò˜:Ð,IÐÑJÔJÐJØ×Ò˜8¨.ÐÑ9Ô9Ð9Ø×Ò˜;Ð-BÐÑCÔCÐCØ×Ò˜:­CÐ6HÐÑIÔIÐIØ×ÒØØØØXð	 ñ ô ð ð ×ÒØØØØNð	 ñ ô ð ð ×ÒØØØØ<ð	 ñ ô ð ð ×ÒØØØ6ð ñ ô ð ð
 ×ÒØð9ð ñ ô ð ð ×ÒØØØØØð+ð ñ 
ô 
ð 
ð ×ÒØØØØØSð ñ ô ð ð ×ÒØØð>ð	 ñ ô ð ð ×ÒØØàMð	 ñ ô ð ð ×ÒØð Að ñ ô ð ð ×ÒØðCð ñ ô ð ð ×ÒØØØRð ñ ô ð ð !×+Ò+¨GÐ:QÐ+ÑRÔR€JØ×Ò˜HÐ+<ÐÑ=Ô=Ð=à!×,Ò,¨XÐ<QÐ,ÑRÔR€KØ×Ò˜XÐ,>ÐÑ?Ô?Ð?à×)Ò)ØÐ:ð *ñ ô €Hð ×Ò˜(Ð)<ÐÑ=Ô=Ð=Ý˜(Ñ#Ô#Ð#à!×,Ò,Ø˜4 Ð*Ð1Ið -ñ ô €Kð ×Ò˜XÐ,>ÐÑ?Ô?Ð?ð ×Ò˜xÐ.RÐÑSÔSÐSà×*Ò*Ø˜˜Ð*Kð +ñ ô €Ið ×Ò˜8¨3Ð5MÐÑNÔNÐNØ×Ò˜9­3¸ÐAWÐÑXÔXÐXð #×-Ò-ØØMð .ñ ô €Lð ×Ò˜hÐ-LÐÑMÔMÐMØ×ÒØØØØ0Ð0Ð0Ø%ð ñ ô ð ð ×Ò˜e¨3Ð5SÐÑTÔTÐTØ×Ò˜g¨SÐ7MÐÑNÔNÐNð  ×*Ò*¨6Ð8TÐ*ÑUÔU€IÝ˜)Ñ$Ô$Ð$Ý˜+Ñ&Ô&Ð&Ø×Ò (ÐÑ+Ô+Ð+Ð+Ð+ó    N)r   r   r   r   )Ú__doc__Ú
__future__r   Útypingr   Úhermes_cli.subcommands._sharedr   rM   © rN   rL   ú<module>rT      sk   ððð ð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð Ð Ð à @Ð @Ð @Ð @Ð @Ð @ðj,ð j,ð j,ð j,ð j,ð j,rN   