Everything from installing it to scheduling your first job, licensing, credentials, and moving jobs between machines.
Download the latest installer from the Releases page and run it.
No separate .NET runtime install is required — the installer bundles everything it needs. Supported on Windows 10, Windows 11, and Windows Server 2016 or later (Server requires the Desktop Experience feature for the GUI; the service itself has no such requirement).
Running a newer installer over an existing install upgrades it in place: same install location, same service registration, and your jobs, run history, and license activation are all preserved.
PoshRocket is free to install and use with 1 scheduled job, no time limit and no trial expiry. A one-time license key ($5, no subscription) unlocks unlimited scheduled jobs on that computer.
Click Add Job in the toolbar:
.ps1 script, either browsing to an existing file or writing a new one in the built-in editor.From the main job grid you can:
The grid itself shows each job's schedule, next run time, last run time, and last result at a glance.
Every job uses one of three schedule types:
*/15 * * * *) for full control.Changing a job's schedule and saving recalculates its next run time immediately.
Click Edit Script from the job editor (or Script Editor in
the main toolbar) to open the linked .ps1 file directly in PoshRocket for quick
changes, without switching to a separate editor. It's a plain text editor with no syntax
highlighting — for larger edits, use your preferred editor (VS Code, the PowerShell ISE,
etc.) and just point the job at the same file.
Click History on a job to see its recent runs: start time, duration, exit
code, and full stdout/stderr output, one click away. Each run's output is also written to a
log file under %ProgramData%\PoshRocket\logs\<job-id>\<timestamp>.log.
How many runs (and log files) are kept per job is configurable per-job via "Log history to keep" in the job editor — older runs are trimmed automatically once that limit is reached.
Credential profiles let you attach a named set of secrets (API keys, tenant IDs, service account passwords, etc.) to a job. At run time, PoshRocket decrypts the profile and injects each field as an environment variable in the script's process — nothing else about the script changes.
Click Credentials in the toolbar, then + New Profile.
Azure-Prod, Exchange-Svc.
Click Save Profile. Values are encrypted at rest (Windows DPAPI, machine-scoped)
in %ProgramData%\PoshRocket\credentials.json — they're never stored in plain
text and never appear in job configs, logs, or history.
Open Add Job or Edit on an existing job. Under Credential Profile (optional), pick the profile from the dropdown. Leave it set to None if the job doesn't need one.
Each field name becomes an environment variable, available via $env:<FieldName>:
# Profile "Azure-Prod" with fields TenantId, ClientId, ClientSecret
Connect-AzAccount `
-Tenant $env:TenantId `
-ApplicationId $env:ClientId `
-CredentialSecret $env:ClientSecret
# Profile "Exchange-Svc" with fields Username, Password
$securePw = ConvertTo-SecureString $env:Password -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential($env:Username, $securePw)
Connect-ExchangeOnline -Credential $cred
That's it — no special import, no PoshRocket-specific API. The script just reads ordinary environment variables that happen to be populated right before it starts.
= characters. PoshRocket rejects invalid names when you save the profile.credentials.json is copied to another machine. Exporting a job that uses a profile (see below) carries the profile's name and field names only — you'll be prompted to re-enter the actual values on the new machine.Move a job — script included — to another machine, or keep a backup of one.
Select a job and click Export Job. Choose where to save it; PoshRocket writes
a single .zip containing the job's settings and a copy of its script file. If the
job uses a credential profile, the export also includes that profile's name and field names
(never the encrypted values).
Click Import Job and pick a previously exported .zip.
PoshRocket recreates the job with a fresh ID and its script copied into
%ProgramData%\PoshRocket\imported-scripts\ — it's treated as a brand-new
job, not a restore, so its run history starts empty.
If the original job used a credential profile, you'll be prompted to set one up on this machine: PoshRocket pre-fills a new profile with the right name and field names, and you just fill in the actual values for this computer.
PoshRocket runs your scheduled jobs via a genuine Windows Service, which starts automatically at boot and keeps running whether or not anyone is logged in. The header shows the service's current status (Running / Stopped) alongside controls to Install, Start, Stop, or Uninstall it.
Installing, starting, stopping, or uninstalling the service requires admin rights; PoshRocket prompts for UAC elevation itself for just that action, so you don't need to run the whole app as Administrator.
Uninstall from Windows Settings → Apps, or via the Start Menu shortcut, same as any other
Windows application. The uninstaller stops and removes the Windows Service automatically, then
asks whether to also delete your job data, history, and logs (kept in
%ProgramData%\PoshRocket\) — choose "No" if you might reinstall later and
want to pick up where you left off.
A job didn't run when expected. Check that:
A job ran but failed. Open History on that job to see the exit code and full output/error text from the run — that's almost always enough to tell what went wrong.
A job using a credential profile isn't getting its values. Confirm the job still has a profile selected in the job editor (it's cleared automatically if the profile was deleted), and that the field names match what your script expects via $env:<FieldName>.
Still stuck? Reach out at support@poshrocket.app, via the contact form, or ask in r/PoshRocket.