Starter Checks

Transparent Windows starter checks

Deploy a PMT starter check, or use it as the starting point for your own.

Starter checks are visible scripts and scheduled tasks that send small selected outcomes to PMT. They are intended to reduce time to first useful signal without adding an endpoint agent or remote-control layer.

No endpoint agent. No remote commands. No inventory layer.

Token → deploy → see

  1. Get a project send token.
  2. Run a BAT or PowerShell starter setup.
  3. Scheduled tasks send selected signals.
  4. When valid signals are received and shown, the station and signal can appear.

Fast start
Use predefined Windows checks where they fit.

Still transparent
Inspect, adapt, disable, or remove the tasks.

Before you deploy starter checks

Starter checks are a fast path, not a promise of complete system coverage.

Starter checks may fit if

  • you want a first useful PMT signal without writing a script
  • ordinary Windows scheduled tasks are acceptable
  • the included checks answer a clear operational question
  • you want something technicians can inspect and adapt
  • you plan to grow from starter checks into local judgement

Starter checks may not fit if

  • you expect full Windows monitoring coverage
  • you want PMT to patch, remediate, or diagnose
  • you need hidden agent behaviour or remote execution
  • you cannot allow scheduled tasks on the endpoint
  • you need a compliance archive or guaranteed delivery path

PMT reflects signals. It does not interpret the machine for you.

What starter checks are

A starter check is a small script deployed as a visible scheduled task.

The task evaluates one local condition and sends one selected result to PMT using the project token you provide.

The source owns the meaning. PMT receives the submitted value and makes the received state available for browser display or API readback.

What starter checks are not

  • not an endpoint agent
  • not a service that takes control
  • not a remote shell
  • not an inventory collector
  • not proof that the whole system is healthy

They are a practical way to begin with visible, inspectable signals.

Three practical deployment paths

Use the path that fits the environment. Start on one machine before pushing wider.

BAT setup

Run Run-Setup.bat as Administrator. It launches the simple PowerShell deployer and is the fastest hands-on path.

PowerShell setup

Use .\Deploy-PMT-Simple.ps1, or run silent deployment with -Token "YOUR_SEND_TOKEN" -Silent.

Group Policy rollout

Use Group Policy where a Windows estate needs controlled rollout. Link to the GPO deployment guide before using this broadly.

Windows starter checks

The Windows starter pack includes checks that answer narrow operational questions. The values below are conventions chosen by the starter scripts. PMT's APIs receive and return submitted values; display meaning is applied by the sending check and webapp/config rules.

Check Signal name Cadence What it reports What it does not prove
Heartbeat
PMT_heartbeat
heartbeat 5 min Reports that the task ran and sent -1. Does not prove every service is healthy.
System free GB
PMT_system_free_gb
system_free_gb 15 min Reports scalar free GB on the system drive. Does not explain why disk space is low.
System volume state
PMT_sys_vol_space
sys_vol_space 15 min -1 above 20GB, -2 20GB or less, -3 7GB or less, -4 unknown. Does not clean disk or choose remediation.
Ungraceful shutdown
PMT_ungrace_shutdown
ungrace_shutdown 60 min -1 none, -2 one incident-hour, -3 repeated incident-hours, -4 unknown. Does not diagnose the crash cause.
Reboot pending
PMT_reboot_pending
reboot_pending 30 min -1 none, -2 pending, -4 unknown. Does not decide when reboot is safe.
Windows Update failures
PMT_winupd_fail_24h
winupd_fail_24h 60 min Reports a count of deduplicated update failure events in the last 24 hours. Does not patch or remediate.
Time service health
PMT_time_service_health
time_service_health 15 min Included in definitions but disabled by default. Do not treat as active starter coverage unless enabled deliberately.

Inspect, test, adapt, remove

The starter pack is useful because it stays visible and ordinary.

Inspect

Tasks run as SYSTEM and are visible in Task Scheduler as PMT_* tasks.

Test locally

Use .\Test-PMTWindowsStarterChecks.ps1 or -AsJson to inspect local results.

Adapt

Modify a check where local judgement needs different thresholds, cadence, or result meaning.

Remove

Use .\Deploy-PMT-Simple.ps1 -Delete or delete PMT_* scheduled tasks.

Token and deployment safety

The send token decides where signals land. Treat it as a secret.

Small deployments may use inline token setup for speed. Where command-line exposure matters, use registry mode so the token is not placed in Task Scheduler arguments.

For larger estates, plan token and PIN handling before using Group Policy.

Where to look when testing

  • setup logs: %ProgramData%\PMT\SetupLogs\
  • per-check logs: %ProgramData%\PMT\PMT_*.log
  • scheduled tasks: Task Scheduler → PMT_*
  • local verification: Test-PMTWindowsStarterChecks.ps1

Logs help explain what the local check did. PMT still only reflects the signal received.

Starter checks FAQ

Are PMT starter checks agents?

No. They are visible scripts and scheduled tasks that send small PMT signals.

Can I deploy checks with Group Policy?

Yes, where your Windows estate and rollout process support that. Test one machine first.

Do starter checks prove the system is healthy?

No. Each check answers its own narrow question. They do not prove whole-system health.

Can I modify a starter check?

Yes. They are intended to be inspectable and adaptable by administrators with suitable system rights.

Can I use my own scripts instead?

Yes. Starter checks are optional. Your own scripts, jobs, apps, websites, devices, and branches can send PMT signals directly.

What happens if a scheduled check stops reporting?

If the webapp/operator view expects the signal and it stops arriving, absence can be made visible. PMT does not infer the cause.

Start with one transparent check

Get a project token, deploy one starter check, and replace the test with a condition that would change what someone does.