Plugins by Moodtuner997
3 plugins by Moodtuner997 in the catalog, most-starred first.
Moodtuner997undo-effectsPuts back files an agent deleted or overwrote: before write_file, patch and destructive terminal commands (rm, mv, cp, redirects, tee, sed -i, find -delete) it saves the affected files to a local store and lets the tool run unchanged; /undo-effects lists the effects and restores them, refusing to overwrite later edits unless forced and keeping a safety copy so a restore can be undone. Disclosure — no network; reads the contents of the files and directories a covered tool call is about to change; writes unencrypted copies of them under HERMES_HOME/plugin-data/undo-effects/ (files named like credentials, files above 50 MB, node_modules, .venv and .git are skipped and reported); runs no shell command and no background process; never blocks, rewrites or approves a tool call, and runs the tool even if a snapshot fails; covers the local terminal backend only; no telemetry.Communitytools1Moodtuner997agenda-guardianA day and week planner for people whose discipline cannot be the plan. You write your rules once (work hours, protected time, focus window, longest stretch, tasks per day), estimate each task, and report the real time when it is done: from the third finished task of a kind it multiplies your estimates by your own median error and says so. It places tasks in the free time around the meetings of any calendar source (the Google Workspace skill, an ICS file or URL, a JSON file, or any command that prints event JSON), every block states the rule it comes from, and a full day says what does not fit. Activities that are not tasks (sport, a long call, a daily course) are placed from the numbers you give: one activity, or a whole week in one request with each activity around the ones placed before it, with reasons read from eight weeks of your own calendar history (the history orders the days, the usually busy ones last, and never rules out a free day; a habit that stopped weeks ago counts for nothing), questions about what the calendar cannot show, and nothing written until you say yes. You just talk to it in your own words, in Telegram or any chat: there is no command syntax to learn, a missing length or time window is assumed from your work hours, said in the answer and settled by your yes or your correction, and never saved as if you had given it. Writing to a Google calendar is off until you type /day write on yourself; then it only adds events it marks as its own, only after a validated proposal, never edits an event, and can only remove the events it wrote. Blocks the agent composes from what you told it go through the same road (your yes, the marker, undo), and the system prompt forbids writing with any other tool. After a written session it asks how long it really took, so the next proposal follows your pace. Optional morning brief and block reminders run as two script-only cron jobs. Deterministic, no model call. English and French. Slash command, CLI, fifteen agent tools and a Today / Week dashboard tab. Disclosure — no network by default; with an ICS URL it fetches that URL (https only, public addresses only, same-host redirects only, no proxy; an answer over 5 MB or cut short is an error, never an empty calendar); with the google or cmd source it runs the program you configure (no shell, 25 s timeout, a minimal environment: no provider key and no proxy variable; for the google source the program is the Google skill's script, started with the Python of the environment that holds the skill's libraries, or with the running one if that cannot start); the calendar source is set only by you, typed as /day set calendar=... or /day setup auto or through the CLI, and no agent tool can set it (google and none included); reads the calendar source you configure (event titles and times, for the next days and, when you ask for a proposal, the eight weeks before) and, for onboarding only, the timezone and language lines of config.yaml, whether the Google Workspace skill and its sign-in file exist (the file is never opened) and the name and schedule of your other cron jobs (prompts are not read); writes its own data folder (one SQLite file: rules, tasks, activity sheets, habits, proposals and the record of what it wrote), after /day cron on two small Python scripts in HERMES_HOME/scripts and two cron jobs named agenda-guardian-brief and agenda-guardian-nudge created through the cronjob_manage tool (the day_schedule tool refuses to create or remove them inside a cron run unless cron.allow_agent_scheduling is true), and, only after you typed /day write on and validated a proposal, new events (up to three per session) whose description carries a marker made of the word agenda-guardian, a colon and an event id between square brackets, created and removed through the Google Workspace skill's calendar create and calendar delete on the primary calendar (a deletion is refused unless the event id is in its own record and the marker is still on the event); registers one system-prompt section of rules for the agent (about 1,700 characters); registers two hooks: pre_gateway_dispatch, which looks at the text of each incoming chat message and acts on one case only, a message that starts with /day followed by anything but one of the format-free commands (help, list, tasks, plan, now, brief, nudge, ok, confirm, undo, write, cron) or a command that sets the calendar source (set calendar=..., setup auto), which it leaves to the command dispatcher, rewriting it into an ordinary request for the agent (it reads nothing else, stores nothing, never drops a message and does nothing on error), and pre_tool_call, which looks at the arguments of the terminal, execute_code, write_file and patch tools and, when a call plainly takes a road to the calendar source or to the plugin's own folders or database, asks Hermes to ask you first (inside a cron run it refuses; it reads no config and no file, never changes a call and does nothing on error; it is a convenience, not a security boundary); registers no middleware; no model calls; no stored credentials; no background process; no telemetry.CommunitytoolsMoodtuner997cron-consolidatorA read-only plan for tidying a crowded cron list: groups jobs whose prompts are near-duplicates or that share skills and destination or run the same script (candidates to become one job), lists clock-time jobs that fire in the same minute, jobs on a failure streak and deliveries never confirmed, and estimates the prompt tokens a merge could save from usage_audit.jsonl. Deterministic (difflib, no model call); nothing is applied. Disclosure — no network; reads cron/jobs.json (including prompts, compared but never printed), cron/usage_audit.jsonl and cron/executions.db (opened read-only) of the chosen profile, and with --profile another profile's cron folder under the same Hermes root or with --home the cron folder of any path given; the report (job names, schedules, delivery targets, up to 160 characters of a failing job's last error) is shown wherever the command runs, including messaging-gateway chats; writes nothing; runs no shell command and no background process; registers no hook, tool or middleware, only a slash command and a CLI command; no telemetry.Communitytools
GitHub profile