The blog

Writing

36 posts on cloud, automation, AI agents, and the homelab.

AutomationAug 23, 2026

Automatiser bilagsføring med Fiken API og Claude Code

Jeg videresendte kvitteringer til Fiken-inboksen og lot dem ligge. Så satt jeg en kveld i måneden og førte dem manuelt: finn leverandøren, velg konto, velg MVA-kode, last opp PDF-en. Fire klikk, tretten ganger. Så skrev jeg en Claude-skill som gjør det via Fiken API-et.

7 min readRead
AIMay 1, 2026

How I Give Claude Code Agents Real Autonomy (And Stop 3am Disasters)

Running Claude Code agents unsupervised is only scary if you haven’t drawn the lines. I’ve had agents push to the wrong branch, draft content I didn’t want published, and retry failed jobs in loops that burned rate limits at 2am. I solved all of it by sorting actions into classes: what the agent may do…

6 min readRead
AIApr 23, 2026

How to Use Claude Code Subagents to Run Parallel Tasks

I’ve used Claude Code subagents daily for the past few months. They are what made Claude Code scale for me: several tasks running at once, without my main session losing the thread. Here is how subagents work, when I spawn one, and the parallel-task patterns I keep coming back to in…

5 min readRead
AIApr 17, 2026

Build a Custom MCP Server in Python in 2026

I’ve built several MCP servers in Python: WordPress publishing, Skool community management, YouTube analytics. They all follow the same pattern, and the point of each one was to stop copy-pasting data into prompts and let Claude Code call the system directly. Here’s how to build one from scratch with the official SDK, including the parts…

9 min readRead
AIApr 16, 2026

Sync Notion to WordPress: Keep Your Content in Sync Automatically

You write in Notion. Your blog runs on WordPress. The gap between them is where you lose 15-30 minutes per post: copy-pasting content, re-uploading images, setting SEO fields, fixing formatting that breaks in Gutenberg. There are several ways to publish from Notion to WordPress automatically. Below are the main options and when each one…

6 min readRead
AIApr 12, 2026

Set Up OpenClaw as Your Personal AI Agent in 2026

OpenClaw is the open-source AI agent that hit 356,000 GitHub stars in three months. It connects any LLM (Claude, GPT, Kimi K2.5, local models via Ollama) to your messaging apps and runs as a persistent daemon on your machine. You pay for API calls and nothing beyond that. Here is the OpenClaw setup path…

9 min readRead
AIApr 12, 2026

Claude Code Hooks (2026): Setup Guide with Working Examples

Claude Code hooks are shell commands that fire automatically when specific events happen during your coding session. Format code after every edit. Block a dangerous command before it runs. The LLM never has to remember any of it, and that is the whole point. Hooks give you deterministic control over Claude Code’s…

6 min readRead
AIApr 12, 2026

Write Claude Code Agent Skills That Actually Work

My agent Koda has 18 Claude Code agent skills. Each one is a markdown file in ~/.koda/skills/, with no framework or plugin system behind it. A skill is a numbered list of steps the agent reads and follows using its normal tools. This is the part of running a Claude Code agent in production that…

8 min readRead
AIApr 11, 2026

Run a Claude Code Agent in Production Without Losing Your Mind

I’ve been running a Claude Code agent named Koda as a 24/7 daemon on my MacBook Pro for about two weeks. It posts to X and Bluesky, drafts blog posts, syncs Skool members to Airtable, analyses YouTube performance, and publishes videos through a Discord approval gate. It runs under pm2, wakes up on cron, and…

7 min readRead
AutomationApr 10, 2026

Build a Self-Healing AI Content Agent with Claude Agent SDK

Write a post, format it for X, reformat for Bluesky, render a video, upload to YouTube, cross-post to Instagram. Repeat daily. That was 2-3 hours of my day, so I built a self-healing AI content agent that does all of it. It runs 24/7 on a Mac…

11 min readRead
AutomationApr 10, 2026

Automate Your Blog Publishing in 2026: From Draft to Live in One Command

Blog automation saved me 15-20 minutes per post. The manual version went like this: write in your editor, open WordPress, paste and reformat, upload a featured image, configure SEO metadata, hit publish. Three or four posts a week adds up to hours of clicking. So I built a system that takes a markdown…

5 min readRead
AIApr 10, 2026

Give Your AI Agent Persistent Memory in 2026

Most AI agents forget everything between sessions. They start fresh every time, with nothing carried over from the last run. Fine for one-shot tasks, useless for anything that compounds over time. I run an autonomous AI agent that handles my content pipeline, social media, and analytics. It operates 24/7 as a…

11 min readRead
AutomationFeb 14, 2026

Docker Containers with Unraid NFS: Fix Stale File Handle Errors

If you’re running Docker containers with Unraid NFS shares, or any server serving NFS shares, you’ve probably encountered the “stale file handle” problem. I’m running Proxmox as my hypervisor with multiple VMs: one running Unraid as my NAS, and another running my media stack (Plex, Radarr, Sonarr, etc.) in Docker containers. The Docker VM pulls…

4 min readRead
AutomationFeb 5, 2026

How I Deploy n8n to Hetzner Cloud with OpenTofu

I wanted to deploy n8n to Hetzner Cloud with OpenTofu with proper security, SSL certificates, and infrastructure-as-code. The manual process was eating hours of my time. Spinning up a new self-hosted n8n instance used to take me about an hour of clicking through interfaces and running commands. Now I do it in under 5 minutes…

9 min readRead
AutomationFeb 5, 2026

Adding Bluesky Rich Link Preview cards to Postiz

Rich link preview cards make a real difference on Bluesky: the clickable previews that show a title, description, and image when you share a URL. Same thing Twitter does with Open Graph cards. They get more engagement than plain text links. The problem? Postiz doesn’t support this yet for Bluesky. Hillary Torn has a pull request…

3 min readRead
AutomationFeb 2, 2026

Automate WordPress Blog Publishing with Airtable and n8n

I wanted to automate WordPress blog publishing because the manual process was killing my productivity. Between writing content, making featured images, uploading to WordPress, configuring SEO settings, and double-checking everything looks right, publishing a single post used to take me 15-20 minutes of clicking through different interfaces. Now I do it in 30 seconds with 5…

10 min readRead
AutomationJan 29, 2026

How I Automatically Sync My Skool Members to Airtable Every Day

I keep a daily list of my Skool members in Airtable, and most of my other automations read from it. Skool doesn’t currently offer a public API for member exports, and manual CSV downloads don’t scale. So I built a daily automated sync that exports my members, parses the export and updates Airtable…

5 min readRead
AutomationNov 26, 2025

Automate Blog Image using Python and n8n

A while back I wrote about how I automate blog image creation using Python. It worked, but I had to open a CSV file, type in the title, and then open the terminal to run the script. Now using Airtable or nocoDB, I’ve automated the process completely. Here’s how to automate blog image using Python…

5 min readRead
AutomationNov 24, 2025

Automate Proxmox VMs with Cloud-Init

In my previous post, I showed how to provision VMs with NoCloud. That works great, but there’s an even faster approach: storing your cloud-init config directly in Proxmox’s snippets folder and referencing it with –cicustom. Automate Proxmox VMs with Cloud-Init method is cleaner, more manageable, and scales better when you’re provisioning multiple VMs with similar…

5 min readRead
AutomationNov 10, 2025

Docker Compose NFS Bind Mount: Fix .env Conflicts & Permissions

Recently while setting up a Docker Compose-based media stack, I ran into a tricky issue. It looked like everything was working, the containers were up, the mounts were in place, and the files were visible, yet I couldn’t write to my NFS share from inside the containers. Here’s what happened, and how I fixed it….

2 min readRead
HomelabAug 18, 2025

How I Manage My SSH Keys Across Multiple Servers and GitHub

Managing SSH keys across multiple servers and platforms can get messy fast, especially when you have a homelab, VPS, GitHub repos, and more. I used to juggle one or two keys across everything… until I hit name collisions, agent confusion, and “wrong key” errors. Now I generate one key per service or server, store…

2 min readRead
AutomationJun 6, 2025

Build a Voice-Enabled AI Agent in n8n

When I started playing with AI Agents inside n8n, I wanted more than a question box. I wanted something I could talk to, literally, that could act on what I said and handle everyday jobs like sending an email or booking a meeting. The result was a self-hosted AI Agent that works entirely through Telegram….

4 min readRead
HomelabMay 8, 2025

n8n + Cloudflare Tunnel: Self-Host Without Open Ports (2026)

When I decided to host n8n at home, I knew I didn’t want to expose it directly to the internet.I wanted something that scaled and stayed easy to maintain, without opening a single port on my home firewall. After testing a few approaches, I ended up with this…

6 min readRead
AutomationMay 2, 2025

How to Deploy Fonts on macOS Using Microsoft Intune

Microsoft Intune allows IT admins to remotely deploy fonts without requiring manual installation. In this post, I’ll walk through how to install fonts on macOS via Intune using a Bash script. Why Deploy Fonts via Intune Prerequisites Before proceeding, ensure you have: Step 1: Prepare the Deployment Script This guide can be used to deploy…

2 min readRead
AIApr 29, 2025

Automate Blog to Social Media Using AI and Make

Every time I finished writing a new blog post, the same routine followed: summarize it, write captions for each platform, grab the featured image, and publish it manually to LinkedIn, X (Twitter), and Facebook. It worked, but it quickly became a chore. As the pace of my publishing increased, I wanted to stop repeating…

4 min readRead
Azure CloudApr 24, 2025

Fix Adobe Creative Cloud Conditional Access SSO Issues

Recently, I helped a customer troubleshoot a frustrating issue with Adobe Creative Cloud. The app was deployed, the user was licensed, and SSO was enabled, yet when launching the app, an embedded browser window popped up asking the user to sign in. This wasn’t expected behavior, especially on a compliant and Entra ID-joined device….

2 min readRead
HomelabApr 22, 2025

Provision Ubuntu VMs with NoCloud on Proxmox

Creating repeatable and secure VM templates in Proxmox has been a game-changer in refining and scaling my homelab environment. In this post, I’ll show you how to: Let’s walk through the whole process: from image preparation to SSH-ready VM deployment. For the latest Ubuntu Cloud images, you can check Ubuntu Cloud Images. Step 1: Download the Ubuntu…

3 min readRead
AutomationApr 7, 2025

Automate Blog Image Creation Using Python

Creating a featured image for every blog post used to be the most tedious part of publishing for me. I wanted consistent, branded visuals, but manually designing them in Canva, copying over titles, tweaking layouts, and exporting each one quickly became a chore. So I automated the entire process. Now I generate 1200×628px featured…

2 min readRead
Azure CloudMar 21, 2025

Automate Certificates with Azure Arc & Azure Key Vault

Managing certificates across hybrid environments can be a complex challenge for IT administrators. Azure Arc, combined with Azure Key Vault, provides a seamless solution for managing certificates on hybrid servers without requiring full migration to Azure. In this post, we will learn how to automate certificate management using Azure Arc & Azure Key Vault for…

4 min readRead
CybersecurityMar 12, 2025

Forgot Windows Admin Password? Fix it Now [2025]

In this blog post, I’ll walk you through the steps to regain access to your local admin account using Windows’ built-in tools. If your computer is BitLocker-protected, this guide will show you how to unlock it and regain access. However, the method also works for systems without BitLocker, so you can follow along regardless of…

4 min readRead
Microsoft 365Oct 3, 2024

How to List All Team Owners in Microsoft Teams

Managing Microsoft Teams can feel overwhelming, especially when you can’t see who’s in charge. By default, the Teams Management Portal hides owner information when you export data. This makes it tough to keep track of who controls each team. But don’t worry. There’s an easy way to list all team owners using PowerShell. In this article,…

3 min readRead
Microsoft 365Oct 3, 2024

Custom Marking Colors in Microsoft Purview

When working with sensitivity labels in Microsoft Purview, customizing header and footer content markings is key to maintaining your organization’s branding and visual standards. These markings highlight sensitive information, helping users identify the security level of a document at a glance. However, the Microsoft Purview portal has limitations, especially when it comes to setting custom…

2 min readRead
Azure CloudMay 8, 2024

Securing Tier-0 Systems in Azure Arc: A Comprehensive Guide [2024]

Are you focused on securing Tier-0 systems in Azure Arc? Look no further. In this blog post, I will explore several key topics, including: Potential Security Risks of the Azure Connected Machine Agent How to Limit Access to the RunCommandHandler And more! Let’s dive in! Introduction For businesses using Azure Arc to manage their hybrid…

9 min readRead
Azure CloudApr 26, 2024

Enable AUTOPROTECT with Bicep: A Step-by-Step Guide

In today’s tutorial, I’m excited to show you exactly how to enable AUTOPROTECT with Bicep. I will give you all my code snippets to get this up and running: Deploy SQL Servers running Windows Deploy a Recovery Services Vault Create a SQL Server Backup Policy Register the SQL Servers to the Vault Enabling the AUTOPROTECT…

13 min readRead
AIMar 13, 2024

Vidnoz AI Review: Text-to-Video That Skips the Camera

Vidnoz is an AI video creation platform that turns text into talking-head videos, with no camera or editing software involved. I ran three test videos through it to see how the output compares to building your own pipeline. What Vidnoz Does You write a script, pick an AI avatar, choose a voice, and Vidnoz generates a complete…

4 min readRead
AIFeb 6, 2024

TensorPix Review 2026: Is It Safe, Free Tier, Pricing & Topaz Alternative

I ran three of my own clips through TensorPix instead of trusting the demo reel on the landing page. The VHS transfer came back genuinely better. The 1080p phone footage barely moved. Below is what the tool did to each one, what the credit system costs, and when Topaz Video AI works out cheaper.

4 min readRead