Aidin’ Aiden – CompatTelRunner Killer

Today I heard my machine’s fans spin up although it was supposed to do nothing and I knew it was time to kill the CompatTelRunner again.

Disabling all spy options in Windows 11 does not really help, so the only thing that works is to kill the executable with fire until it rises again after the next update like an evil Phoenix from hell.

It’s the same dumb task each time:
– change ownership of file
– get write access
– delete
– create a dummy replacement
– make it inaccessible by everyone

Today I thought “Let’s Aiden create a script that I can run each time, maybe even in autostart if necessary.”

The plan

The client I used was Cline this time and the prompt was:

please implement a windows 11 batch script that disables the "C:\Windows\System32\CompatTelRunner.exe" process by following these steps: change the owner of that file to Scanix (QUBE\Scanix), change permissions to get write access, then delete it. Afterwards create a new empty text file (with the name "CompatTelRunner.exe") in its place and change the permissions, so that noone has write access to it and cannot delete it.

I have used the /deep-thinking action in plan mode. The plan looked like this:
(I don’t think my username or the computer name is a secret worth anonymizing ^^)

Implementation Plan for CompatTelRunner.exe Disabler

   Overview
   This script will disable the Windows Compatibility Telemetry Runner (CompatTelRunner.exe) by replacing it with an empty file that has restrictive permissions, preventing Windows from re-creating or executing it.

   Technical Approach
   The batch script will use these Windows commands:
   1. takeown - Takes ownership of the target file
   2. icacls - Modifies Access Control Lists (permissions)
   3. del /f - Force deletes the original executable
   4. type nul > filename - Creates an empty file
   5. icacls with deny rules - Sets restrictive permissions

   Key Considerations
   • The script must be run as Administrator to modify System32 files
   • The user "Scanix" from domain "QUBE" will become the owner
   • The replacement file will have .exe extension but contain no executable code
   • Permissions will deny write/delete access to all users including Administrators

   Questions Before Implementation
   1. Should the script include a confirmation prompt before making changes, or should it run silently?
   2. For the final permissions, you mentioned "noone has write access and cannot delete it" - should this also apply to the owner (Scanix), or should Scanix retain full control for potential future restoration?
   3. Should I include error handling that checks if each command succeeds before proceeding to the next step?

Aaaand… I just realized that I completely ignored his questions and simply switched to act mode. ^-^

The script

The first model I tried with this was “zai-org/glm-4.7-flash” which does not seem to work very well in this case and produced a non-working script, ending up in an endless loop adding pause calls to it.

The second model was “qwen3.5-27b” and it instantly nailed it (after adding some korean characters to the name of the batch file, which it fixed by itself).

At first it used the “continue anyway” approach when the switch of the ownership or one of the other tasks failed, but a short message from me made him change it.

The resulting batch works fine and will be used by me from now on.

========================================
CompatTelRunner.exe Disabler
========================================

Target: C:\Windows\System32\CompatTelRunner.exe
New Owner: QUBE\Scanix

[Step 1/5] Taking ownership of CompatTelRunner.exe...
[Step 2/5] Changing owner to QUBE\Scanix...
[Step 3/5] Granting full permissions...
[Step 4/5] Deleting CompatTelRunner.exe...
[Step 5/5] Creating empty replacement file...
Setting restrictive permissions on replacement file...

========================================
Operation Complete
========================================

CompatTelRunner.exe has been replaced with an empty file.
The replacement file is owned by QUBE\Scanix and has restrictive permissions.

Note: Windows may attempt to restore this file during updates.
You may need to re-run this script after major Windows updates.

Drücken Sie eine beliebige Taste . . .

I will attach it here to save it for the future (make sure to change the OWNER name to yours if you want to try it).

Aiden’s Journey – Part 3

Time? Stop! Don’t run away!

Yeah, where did all the time go? I wanted to write a blog entry about all the little steps, but now I see that only 2 entries exist and I can barely remember what I did after the last entry up to now.

That’s the reason why I will shorten this a bit with a quick summary of some points.

LM Studio

Whatever I want to do on this machine, I will need an LLM provider. The decision to use LM Studio was made pretty quickly. I’ve used text-generation-webui in the early days, then used ollama, but the frontend of LM Studio plus the ability to download and use any huggingface model was a big plus for me.

I started with installing the desktop client, which was a bit weird as it is started from an .appImage and not installed. With a new update, there is a new .appImage and – while it keeps all other settings – the server settings are lost somehow.

After setting it up, I looked for a way to start it as a server on boot and added a headless installation of the daemon, so it was running at boot.

The CLI tool lms is very handy and can be used to load/unload models, manage the server and some other things.

Later on, I created a shell script to list the models with some additional infos like their capabilities and the scores, tags and comments I added to them.

OpenClaw

This point proves that I had no clear plan or roadmap for this. I went straight to the end of the line: OpenClaw as a full assistant system.

The problem: I did (and still don’t) know what I actually want to use it for. XD

But… as a first step, I still connected it to LM Studio and started to connect it to Discord.

The good thing is, that I learned a bit more about how to do this. I created an app and a bot, created an oauth token and finally managed to connect it.

It felt cool to be able to chat with my agent through Discord. It was interesting to see that he would answer questions about the system he was running on without any problems. 😀

The Discord connection has one major flaw, though: The answers were produced fine by OpenClaw, but only popped up on Discord after about 10 Minutes.

In the end, I disabled OpenClaw again for now. I might be getting back to it when I have better usecases.

Coding assistants

I had some experience with Claude Code when I started this project, but I also did not think that it was usable when connecting to a local model.

I’m still evaluating them, so I will just very briefly write down my first impressions.

Cline

This was the first one I tried to use. The results were not bad.

Pro: Fast, act and plan mode, deep-planning mode
Con: Was not able to work with some models, no model selection list (model key has to be entered manually for local provider)

OpenCode

This one looked slick and I recently checked out the desktop version as well, which looked even better (but did not work well). This is my current favorite.

Pro: Subagents, nicer UI, model selection list, themes, checklists while working on a plan
Con: Non-standard mcp config, weird key shortcuts

PI

I only tested this one very briefly, so I can only say that it tends to work in YOLO mode and was quite fast, but did not manage to fulfill the task.

Claude Code

At first, I thought of this to be the non plus ultra, but it failed in the same way that others did and the UI is not that great either. It felt cool and modern (especially the funny verbs it shows while working), but the true worth comes from the model.

It seemed to be slower even for some things, so I went back to OpenCode (and Cline in some cases).

Aiden’s Journey – Part 2

Operating System

At first, I was going to install Windows 11, because that is what I am most comfortable in.

But then I’ve read about better performance in Linux and as a software architect, I thought it would be good to refresh my Linux knowledge and so I decided to make it a dual boot system with Win 11 and Linux.

So, … what Linux to use? First everything pointed to an Ubuntu LTS distribution. I downloaded it, prepared a bootable USB stick and the journey could begin.
Or so I thought…

BIOS where art thou?

When booting the new machine connected to my new LG monitor, I realized that the first thing I saw was the Windows login screen, nothing before that.

I tried different ports, the onboard graphics card vs. the NVidia one. I tried updating the firmware of the NVidia card and connecting it via different cables.

But the BIOS or anything else never showed up on screen. My other gaming PC with an NVidia RTX 4090 had no problems at all.

So… I ended up connecting it to my TV in the kitchen, which made working on it a pain. The misbehaving wireless mouse was also adding to the experience.

Ubuntu

But at least I could start installing the system now. At first, everything looked fine and it installed alright. After doing some stuff in the – in my opinion – not so great Gnome desktop manager, I needed a reboot.

That’s where things went downhill.

The system stopped booting because of trouble with the NVidia drivers.

As Linux was unknown ground for me, I followed lots of tutorials from the internet and killed the old drivers, blacklisted Nouveau drivers and did lots of stoneage stuff (typing in a shell).

After an hour or so, the system started with lots of graphical artifacts and a wrong aspect ratio. But at least I had a desktop again and could try to install a better driver. Unfortunately, I still had to do lots of stuff in the shell.

After a lot of steps (that I would never be able to reproduce), the machine started with a working display again and I was back on the desktop to do stuff. Another small change later, a reboot was necessary and I was back at the broken state.

Goodbye Ubuntu!

Garuda Linux

After a websearch for the best distributions with NVidia support, this one popped up with some others. I chose Garuda in the end and installed it from a fresh USB stick.

I finished the installation and rebootet from SSD. I tried logging in with the password that I had chosen, but… computer said no.

It seemed that I had somehow managed to mistype my passwort two times during setup and so I just restarted from step 1. XD

But after this hiccup, the installation was fine and the desktop experience was so much better. It took some time to get it to look nice (e.g. to get rid of those weird rounded windows), but then I almost felt like home.
Most of the windows key shortcuts work the same, which speeds up my work a lot.

Now, the real fun could begin.