Skip to content

Software should stay understandable when it gets clever.

I'm Kaan Demirel. I build small, composable tools around AI, automation, and local-first software. The point is not autonomy. It is useful systems whose decisions and failure modes stay visible.

Kaan Demirel

Working from Turkey

How I build

Small pieces, clear seams.

I prefer focused tools that do one job well, compose cleanly, and remain replaceable when the surrounding system changes.

AI suggests; people approve.

AI can draft, filter, and summarize. Consequential actions should still expose what will happen and wait for an explicit decision.

Own the failure modes.

Local-first and self-hosted systems make storage, recovery, and operational tradeoffs visible instead of hiding them behind a service boundary.

The work behind the words

Two projects show the range: one turns engineering standards into agent tools; the other keeps router diagnostics useful before AI enters the loop.

Writing is part of the work.I document the decisions, tradeoffs, and failed assumptions that do not fit in a repository description.

Working range

The stack changes with the problem. These are the tools currently closest to the work.

  • Rust
  • Python
  • TypeScript
  • Shell
  • Fedora
  • Podman
  • Claude Code