An IT helpdesk agent plugin for Claude Code
Support
#What it is
Licensed to Fix is a free, open-source (MIT) plugin for Claude Code that turns a session into an IT helpdesk agent for your PC on Windows. It:
- checks the PC read-only first and finds the real cause of a problem, not just the symptom;
- proposes each fix with the exact command, its risk and how to undo it, and runs nothing without your explicit yes;
- verifies that the fix holds and keeps a local ticket on your PC;
- enforces safety in code: a hook blocks destructive commands and asks before medium-risk ones, and another hook redacts PC identifiers from shell output before it reaches the model.
Ticket pages are Hebrew-first; instructions and this site are in English. Hebrew and English requests both work.
#Requirements
- A PC running Windows 11 or Windows 10. Tested on Windows 11 with Windows PowerShell 5.1; Windows 10 is not tested yet.
- Claude Code with a paid Claude plan (Pro or higher). Claude Code setup
- Claude Code 2.1.295 or later recommended. On older versions the hooks still run, but the setting that blocks a tool call when the safety hook fails to start (
onFailure: "block") is not available. - Node.js on PATH. The hooks are Node.js scripts. Check with
node --version. - Optional: the Claude desktop app, for the interactive ticket page (elsewhere the page is a local, read-only file and you answer in chat).
#Install
In a Claude Code session:
/plugin marketplace add nsharon4/licensed-to-fix
/plugin install licensed-to-fix@licensed-to-fix-marketplace
From your shell:
claude plugin marketplace add nsharon4/licensed-to-fix
claude plugin install licensed-to-fix@licensed-to-fix-marketplace
Or add and install in one step (Claude Code 2.1.275+ in a session, 2.1.292+ in the shell):
/plugin install licensed-to-fix --marketplace nsharon4/licensed-to-fix
claude plugin install licensed-to-fix --marketplace nsharon4/licensed-to-fix
For a one-session load from a local checkout:
claude --plugin-dir /path/to/licensed-to-fix
After installing, run /licensed-to-fix:guard-status to confirm the guard and redaction are active.
#Commands
| Command | What it does |
|---|---|
/licensed-to-fix:diagnose [problem] |
Read-only diagnosis. Finds the likely cause and what triggered it, with evidence. Changes nothing. |
/licensed-to-fix:quick-fix [problem] |
Fixes one problem end to end, with an explicit approval for every change, then checks that the fix holds. |
/licensed-to-fix:net-check |
Runs the read-only network check (link, IP, router, internet, DNS, proxy and hosts) and explains the verdict. |
/licensed-to-fix:guard-status |
Lists what the safety guard blocks or asks about, and checks that redaction is active. |
You can also just describe the problem ("the printer doesn't work", "המדפסת לא עובדת"). The it-quick-support skill handles single problems; the helpdesk-core skill runs a full guided session or health check.
No internet at all? Claude Code needs internet, so the plugin can offer a desktop shortcut to an offline, read-only network check. It runs without Claude and writes a dated report to Documents\IT-Agent-Quick\offline\ with a verdict naming the first failing layer.
#Troubleshooting
The hooks don't seem to fire
- Run
/licensed-to-fix:guard-status. Ifhostnameoutput shows a real name instead of a<COMPUTER#…>token, redaction is not active. - Open
/hooksin Claude Code and check that the Licensed to Fix PreToolUse, PostToolUse and PostToolUseFailure hooks are listed. - Check that the plugin is installed and enabled in
/plugin. - Check Node.js:
node --version. If it is missing, install Node.js and restart Claude Code. - Check your Claude Code version with
claude --versionand update if it is older than 2.1.295. - Start a new session after installing or updating the plugin.
A command was blocked or needs confirmation
- Blocked (deny) means the command matched a destructive rule: disk format or wipe,
diskpart,cipher /w, deleting shadow copies,bcdedit, deleting HKLM registry keys, recursive deletes of system folders, disabling Microsoft Defender or the firewall, local account changes, download-and-run (iwr | iex), or running a script from your profile folder without showing it first. This is by design. The agent is told not to try another syntax to get around it. If you really need that action, do it yourself, outside the agent, after a backup. - Ask means a medium-risk change: services, registry writes, drivers, restart or shutdown, firewall rules, scheduled tasks, software installs. Approve only if you understand the change and know how to undo it.
- The reason shown starts with
[licensed-to-fix:<rule-id>]. Include the rule ID if you report a false positive.
Redaction issues
- A real identifier reached the chat. Redaction is pattern-based and best-effort. Unlabeled names, Wi-Fi network names, printer names and similar values can slip through. Please report the pattern (not the real value) in an issue.
- A failed command showed raw details. Claude Code does not let hooks replace failure output; the plugin can only add a redacted copy. Ask the agent to run that diagnostic through
scripts/Invoke-Redacted.ps1, which redacts at the source. - Too much was redacted (for example a value you needed to see). Redaction applies only to what the model sees; you can run the same read-only command yourself in a PowerShell window.
PowerShell execution policy
- The hooks are Node.js scripts, so the PowerShell execution policy does not affect them.
- The bundled
.ps1scripts are started with-ExecutionPolicy Bypassfor that one process only, which does not change your system policy. - If you run a bundled script by hand and see "running scripts is disabled on this system", start it the same way:
powershell -NoProfile -ExecutionPolicy Bypass -File "<path to script>" - Do not change the machine-wide policy just for this plugin.
Admin changes
Changes that need admin rights go through the normal Windows UAC prompt. If you decline it, nothing else is changed and the agent offers manual steps.
#Report an issue
Open an issue at github.com/nsharon4/licensed-to-fix/issues. Include:
- Claude Code version (
claude --version), Windows version, and plugin version; - what you asked, what happened and what you expected;
- the rule ID, if a command was blocked.
Issues are public. Never paste computer names, user names, IP or MAC addresses, serial numbers, paths, passwords, keys or tokens. Use the redacted tokens or replace values with <redacted>.
GitHub Issues is the main support channel. If you don't have a GitHub account, email [email protected]. For privacy requests, email [email protected]. Never send passwords, keys or PC details by email.
#Safety disclaimer
Licensed to Fix is provided "as is", without warranty of any kind, under the MIT License. Use it at your own risk.
- Back up important data before any fix.
- Review every command before you approve it. Prefer Claude Code's Manual permission mode for IT work, and do not use bypass modes with this plugin.
- The safety guard and redaction reduce risk; they do not remove it.
- This helpdesk assistant is an AI agent. Never give it passwords, codes or keys.
#FAQ
Is it free? Yes. The plugin is free and open source (MIT). You need your own paid Claude plan to use Claude Code.
Does the author see my data? No. The plugin has no telemetry and makes no calls to the author. Your session is processed by Anthropic under your own Claude account. See the Privacy Policy.
Does it change anything without asking? Diagnosis is read-only. Every change is shown with its command, risk and undo, and runs only after your explicit yes. Destructive commands are blocked in code.
Is redaction guaranteed? No. It is best-effort and covers successful shell output. See the limits in the Privacy Policy.
Where are my tickets?
On your PC, under Documents\IT-Agent-Quick\. The final ticket is saved only after you approve the save step.
Does it work on Mac or Linux? The hooks are cross-platform, but the IT checks are written for PCs running Windows and PowerShell.
Which languages? Ask in Hebrew or English. Ticket pages are Hebrew-first.
How do I uninstall it?
/plugin uninstall licensed-to-fix@licensed-to-fix-marketplace. Local tickets and reports stay until you delete them.
Made by Nir Sharon · LinkedIn