banner

Welcome to Viktor Vasylkovskyi Blog

My latest thoughts and insights on technology, programming, and personal projects.

The Infrastructure Behind My Agents Setup

I've spent years thinking about how to provision and manage infrastructure reliably. Multi-agent AI is the same problem — just with LLMs as the compute layer. This is the full stack behind my agent setup, written as a companion to my LLM Day Lisbon talk.

Mon Jun 15 2026

Observability Vertical Part 6 - LLM Traces with Arize Phoenix

Metrics tell you something is slow. Logs tell you it errored. Traces tell you where in the call chain it went wrong — and for AI services making tool calls and hitting third-party LLM APIs, that matters more than anywhere else. Deploy Arize Phoenix, wire Grafana Alloy to fan out traces, and get full prompt-to-response visibility in a purpose-built UI.

Sat May 23 2026

Observability Vertical Part 5 - Collecting Logs with Loki

You have metrics, alerts, and application telemetry. Now add the third pillar — logs. Deploy Loki, wire Grafana Alloy to collect systemd journal, Docker container logs, and system files, and query everything in Grafana.

Thu May 21 2026

OpenClaw as an Orchestrator — Delegating to Claude Code via Handoff File

Wiring OpenClaw on a Raspberry Pi as the coordinator and Claude Code as the worker. Why ACP and tmux didn't survive contact with the Pi, and the boring filesystem mailbox that did.

Tue May 19 2026

Mastering FastAPI with PostgreSQL - From Setup to Database-Driven APIs

How to integrate FastAPI with PostgreSQL for robust database-driven applications

Fri May 15 2026

Observability Vertical Part 1 - Collecting Metrics with Docker Compose

Setup your metrics collection stack and wire them into alerts with Grafana

Mon May 11 2026

Observability Vertical Part 2 - Service Alert Provisioning

You have metrics. Now define what "unhealthy" means — each service provisions its own alert rules as part of its own Terraform. A complete example for a Raspberry Pi host.

Mon May 11 2026

Observability Vertical Part 3 - Making Alerts Actionable - Wiring the Alerting Platform with PagerDuty

Your alerts are firing and sitting in Grafana. This post wires the exit — PagerDuty service, Grafana contact points, and notification policy via Terraform so firing alerts actually page someone.

Mon May 11 2026

Observability Vertical Part 4 - Application Metrics with OpenTelemetry

Your infrastructure is observable. Now make your application observable too — wire an OTel-instrumented service into Alloy, push HTTP metrics to Prometheus, and get a FastAPI observability dashboard with request rate, error rate, and latency percentiles.

Mon May 11 2026

Observability Vertical Part 1.5 - Replacing Prometheus with Grafana Mimir

Upgrade your single-node metrics stack to Mimir monolithic mode — longer retention, decoupled alerting, and a migration path to HA without paying for Datadog

Mon May 11 2026

Container Metrics with cAdvisor (Push-Based via Alloy)

Add per-container CPU, memory, network, and filesystem metrics to your existing Grafana Alloy push pipeline — no platform-side changes required

Fri May 08 2026

From Monolith to Multi-Agents — A Deep Dive

A deep dive into the journey from a monolithic agent to a multi-agent system for incident investigation.

Thu May 07 2026

The Waterfall Agent - From Spec to 9 Merged PRs in 90 Minutes

A waterfall agentic workflow built on Claude Code sub-agents. Hand it a design doc, get back nine reviewed PRs and an integration branch ready to ship. What we tried, what broke, and what actually works.

Wed Apr 29 2026

Multi-Agent Development with Claude Code - Part 4 - Headless Mode on Raspberry Pi

Taking the writer/reviewer orchestrator fully autonomous. No terminal window, no approvals, no babysitting. A Raspberry Pi watches a folder, and when a feature doc lands, a PR comes out the other side.

Tue Apr 28 2026

Autonomous Multi-Agent Development with Claude Code — Where We Started and Where We Landed

The introduction to this series. What we were trying to do, how the workflow came together, and where to start reading.

Mon Apr 20 2026

Multi-Agent Development with Claude Code - Part 1 - The Waterfall Agentic Workflow

Instead of asking an agent for assistance, what if you handed it the full product spec and let it run? A first experiment in autonomous feature implementation — what worked, what didn't, and what we learned about worktrees and single vs multi agent approaches.

Mon Apr 20 2026

Multi-Agent Development with Claude Code — Part 2 - The Writer + Reviewer Sub-Agent Loop

Nine features across two repos, implemented by an orchestrator that spawns a writer sub-agent per feature, then a reviewer, loops on failure, and merges on pass. What the orchestration actually looks like in practice.

Mon Apr 20 2026

Multi-Agent Development with Claude Code — Part 3 - Design Doc to Prototype

Starting from a design document and running a slash command. The claude-md-generator, design-doc-decomposer, and implementation-orchestrator together produce 7 merged PRs in 90 minutes. What the workflow looks like, what the output was, and how to handle the bugs afterwards.

Mon Apr 20 2026

Multi-Agent Development with Claude Code — Conclusions & Reflections

What we actually learned after running the writer/reviewer orchestrator loop in practice. The round-robin bottleneck, the specification gap, and whether this is the end game.

Mon Apr 20 2026

Sentrux - Using Architectural Sensor to improve quality of codebase in AI assisted coding

How Sentrux improves reviewer loop

Mon Apr 20 2026

Sentrux - Using Architectural Sensor to improve quality of codebase in AI assisted coding

How Sentrux improves reviewer loop

Mon Apr 20 2026

Infrastructure as Code Toolbox - Final Thoughts and Future Work

Recap of the infrastructure journey and guidance on security enhancements, disaster recovery, and scaling strategies for production readiness

Wed Apr 15 2026

Running an AI Coding Bot on Raspberry Pi — Part 6 Obsidian Vault & Autonomous Roadmap Loop

Giving the agent a persistent memory and a self-generated work queue. Obsidian vault as a second brain, roadmap markdown to structured metadata, automatic issue creation, and the full autonomous loop.

Tue Apr 14 2026

Running an AI Coding Bot on Raspberry Pi — Part 5 Heartbeats, Notifications & GitHub Project Workflow

Closing the loop — wake triggers so Codex notifies OpenClaw on completion, check-agents.sh, HEARTBEAT.md task registry, Discord channel notifications, and spawning two agents in parallel from a single message.

Mon Apr 13 2026

Load Test

Learn how to load test your AWS infrastructure using k6 to measure performance and identify bottlenecks

Fri Apr 10 2026

Running an AI Coding Bot on Raspberry Pi — Part 4 Delegating Code to Codex via ACP & tmux

Setting up OpenClaw as a coordinator that delegates coding work to Codex. Covers ACP setup, the arm64 binary fix, why we pivoted to tmux, the filesystem mailbox protocol, and spawn-agent.sh.

Fri Apr 10 2026

Running an AI Coding Bot on Raspberry Pi — Part 3 Performance & Stability

Expanding swap memory, tuning swappiness, increasing timeouts, installing as a systemd service, and routing logs to Grafana Loki so the bot actually stays alive.

Mon Apr 06 2026

Running an AI Coding Bot on Raspberry Pi — Part 1 Secure Setup

Before installing anything, get the security right. Scoping filesystem access, creating a fine-grained GitHub PAT, and setting Anthropic spending caps so your bot can't ruin you.

Sun Apr 05 2026

Running an AI Coding Bot on Raspberry Pi — Part 2 Installing & Wiring Up OpenClaw

Node.js install, the OpenClaw package, fixing a missing Discord plugin dependency, tunnelling the dashboard, and approving your first Discord pairing.

Sun Apr 05 2026

Running an AI Coding Bot on Raspberry Pi - Complete Guide

Transform your Raspberry Pi into an autonomous coding assistant with OpenClaw, Codex, and Obsidian - from secure setup to autonomous task loops

Sat Apr 04 2026

Provisioning PostgresSQL RDBMS on AWS with Terraform

Set up a managed PostgreSQL database using Amazon RDS with Terraform, including security groups and subnet configuration

Sat Mar 28 2026

Provision AWS Secret Manager Retrieval of Secrets

Securely store and retrieve application secrets using AWS Secrets Manager and integrate them into your EC2 instances with Terraform

Wed Mar 18 2026

Provision CloudFront CDN with Terraform

Configure CloudFront CDN for global content delivery with SSL/TLS termination and integration with EC2 origin servers

Thu Mar 12 2026

Provisioning Application Load Balancer and connecting it to Ec-2 instance using Terraform

Build a production-ready setup with Application Load Balancer for SSL termination, multiple availability zones, and load balancing across EC2 instances

Sun Mar 08 2026

Provisioning API Gateway and connecting it to Ec-2 instance using Terraform

Set up AWS API Gateway as SSL termination for REST APIs, with custom domain mapping and integration to EC2 backend

Sat Feb 28 2026

Provisioning SSL Certificate

Request and validate SSL certificates using AWS Certificate Manager (ACM) with DNS validation through Route53

Wed Feb 25 2026

Provisioning SSL Termination for Web Application

Compare SSL termination strategies using API Gateway, Application Load Balancer, and CloudFront for different application architectures

Sun Feb 22 2026

Provisioning EC2 Instances with Terraform Modules – Best Practices Guide

Organize Terraform code using modules for reusability, maintainability, and multi-environment deployments

Sun Feb 15 2026

Provision DNS records with Terraform

Step-by-step guide to configuring Route53 DNS records and mapping your domain to EC2 instances using Terraform

Thu Feb 05 2026

Deploying EC2 instance on AWS with Terraform

Learn to provision your first EC2 instance on AWS with VPC, subnets, security groups, and SSH access using Terraform

Wed Jan 28 2026

Infrastructure as Code Toolbox - A Hands-On Terraform Journey Through AWS

A comprehensive guide to building a three-tier web application infrastructure on AWS using Terraform, covering EC2, RDS, Route53, SSL/TLS, and more

Thu Jan 15 2026

Conclusion and Next Steps

Summary and next steps for expanding your Raspberry Pi on-premises infrastructure

Sun Dec 28 2025

Automated PagerDuty Integration for Grafana Alerts

Integrate PagerDuty with Grafana for incident management and on-call notifications

Mon Dec 22 2025

Automated Grafana Alerts with Terraform

Configure Grafana alerting rules for proactive monitoring of your Raspberry Pi infrastructure

Thu Dec 18 2025

End-to-End Local PostgreSQL Workflow for Full-Stack Development

Integrate PostgreSQL database into your codebase - Typescript

Mon Dec 15 2025

Distributed Metrics with Grafana Alloy (Push-Based Pipeline)

Replace pull-based Prometheus scraping with a push-based metrics pipeline using Grafana Alloy on each device — no inbound access required

Mon Dec 15 2025

Collecting Logs with Loki and Grafana Alloy (Automated)

Implement centralized logging with Grafana Loki for Docker and system logs

Mon Dec 15 2025

Collecting Metrics with Prometheus and Node Exporter (Automated)

Configure Prometheus for collecting hardware and system metrics from Raspberry Pi

Fri Dec 12 2025

Setting Up Grafana (Automated with Ansible)

Set up Grafana for monitoring and observability dashboards on Raspberry Pi

Mon Dec 08 2025

Managing Secrets with HashiCorp Vault

Deploy and configure HashiCorp Vault on Raspberry Pi for centralized secrets management

Fri Dec 05 2025

Managing Secrets with Ansible Vault

Securely manage secrets and credentials for your Raspberry Pi infrastructure

Tue Dec 02 2025

Continuous Deployment with Docker

Implement automated Docker image builds and deployments with GitHub Actions on ARM64 architecture

Fri Nov 28 2025

Setting Up GitHub Actions Self-Hosted Runner

Install and configure self-hosted GitHub Actions runner on Raspberry Pi for ARM64 CI/CD pipelines

Tue Nov 25 2025

Exposing Services with Cloudflare Tunnel

Set up Cloudflare Tunnel for secure public access to your Raspberry Pi without port forwarding

Sat Nov 22 2025

Configuring Raspberry Pi with Ansible

Automate Raspberry Pi configuration with Ansible playbooks for Docker, system packages, and base software

Tue Nov 18 2025

Setting Up Raspberry Pi OS Lite

Step-by-step guide to installing and configuring Raspberry Pi OS Lite for headless operation

Sat Nov 15 2025

Hardware Requirements

Essential hardware components needed to build your Raspberry Pi infrastructure setup

Wed Nov 12 2025

Private On-Premises Infrastructure with Raspberry Pi

Build your own private on-premises infrastructure with Raspberry Pi - complete guide from hardware setup to CI/CD pipelines

Mon Nov 10 2025