Skip to content
Independent software engineer · Tallinn

Hi, I’m Luke.

I work on payments at Nelo, build tools of my own, and spend a lot of time making my workspace feel like mine.

Soft edges. Open windows. A little room to think.
DESK 01 / a small window into my workPERSONAL WORKSPACE · ALWAYS A WORK IN PROGRESS
hello-world.txtread me
A note from the keyboard

Hello, internet.

I’m Luke. I make software and customise the tools I use to make it.

Heaps Good is where I collect the projects, experiments and things I’m figuring out.

A bit about me ↗
Tallinn, Estoniaone human
herdr / my working environment3 panes
workspaces◦ personal└ general⌄ project├ planner└ keyboard-nav◦ side-projects└ curoseveral threads,
one place
plannerkeyboard-nav+
Luke

Let’s make the project list work with a keyboard.

● Claude

I’ve put the goal and acceptance criteria in the task pane. Let’s agree on the behaviour first.

↳ context gathered↳ plan recorded↳ ready for your judgement
❯ /task keyboard-navigation
Task Example
REFINE The direction needs my OK.
OVERVIEW   REFINE   TEST
GOAL

Make the project list usable with a keyboard.

ACCEPTANCE

□ Arrow keys move focus
□ Focus stays visible
□ Tab leaves the list

DECISIONS

Kept with the work.

Skills · mods · workflowsOpen the workspace ↗
Move the windows around. Or to jump in.

One engineer.
A whole little ecosystem.

I’m a software engineer based in Tallinn. My work has taken me through banking, payments and systems where the details matter.

These days I work on consumer payments at Nelo. Outside that, I’m building personal tools and experimenting with how I work with coding agents.

Some of the places along the way

Nelo · ANZ Plus · BAE Systems Applied Intelligence

My custom herdr setup

The conversation is
only part of the picture.

I want the plan, the decisions and the state of the work in view. So I customise herdr around the way I use Claude: a workspace tree, the conversation, and a task mod alongside it.

The interesting part

What happens when it doesn’t go to plan?

Pick a stage, or play the walkthrough.
▣herdr / my workspaceInteractive illustration · generic task
plannerkeyboard-navigation+
An example conversation
Luke

Let’s make the project list work with a keyboard.

Luke

Keep focus visible, use the arrow keys to move between items, and leave normal Tab navigation intact.

↳

The plan and acceptance criteria live with the task.

❯/plan keyboard-navigation
Example workspaceSkills + mods + workflowsNothing here runs a real task.
↔ Scroll the workspace to explore all three panes.
02 / 07

Put the decisions somewhere they can stay.

I work through the design and acceptance criteria with Claude. A custom mod keeps the plan visible beside the conversation.

Skills / the instructions

I keep repeatable ways of working in skills, so the context and expectations don’t need rebuilding in every conversation. Planning, task work, reviews and pull-request updates each have a place.

/plan/task/review/pr-update

A simplified, interactive example of my workflow. Generic commands; no real task is running.

Under the hoodA short tour of a much bigger system.

This page shows one simplified task. My actual setup connects an ongoing plan to individual task files, agent roles, decision gates and a mod that keeps the current state beside the conversation.

01 / before the task

A plan that stays alive.

The plan holds proposed work, decisions, questions, dependencies and blockers. I accept, defer or decline tasks. A launched task gets its own tab and keeps its connection to the plan.

02 / before building

Three sources. Then my call.

Separate agents validate the tickets, documentation and current code. They record supporting evidence, concerns and contradictions. I approve validation, then work through the goal, criteria, subtasks and planned tests before approving implementation.

03 / while it runs

State that survives a session.

Goals, test evidence, review findings, worktrees, PRs and follow-ups live in structured task state. The mod displays it beside the chat. Agents record their results there; the workflow checks the gate before advancing.

04 / before it closes

Evidence all the way through.

Every criterion needs evidence and the regression run must pass. Claude and Codex independently review the same commits. Findings need a resolution. PR checks, further review and ticket updates remain part of the task; it closes after merge.

Generic names here: /plan /task /reviewMy judgement stays in the loop.

A few open projects.

Small tools with plenty going on underneath. Open one for a closer look.

From this desk to your next project

Let’s make
something good.

A product to build, a system to untangle, or a team doing interesting work. I’d like to hear about it.

Say hello ↗
FROM THE DESK OFLuke.

Software engineer
Tallinn, Estonia

Company and product names belong to their respective owners. Mention does not imply endorsement.

↑ ↓ to choose · enter to openA few open doors.