Skip to content
View muellerei's full-sized avatar
  • Germany
  • 22:18 (UTC +02:00)

Block or report muellerei

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
muellerei/README.md

Patrick Müller

Tools I needed and nobody had built.

Writing code since 1985, paid for it since around 1990 — Fortran77, Oracle Forms, LAMP, Angular, and whatever the current generation calls itself. Long enough to tell what will still be here in ten years from what is merely loud right now.

Programming is a puzzle and a craft at the same time: solve the problem, then make the code simpler than the problem was. I find a problem, I build a tool — lately in Python and TypeScript, on the command line and against whatever API is in the way. Nobody asked for any of these — the good ones never are.

What I hold to

Boring beats clever. Readable code beats a smart abstraction every time. The clever version is a debt someone pays later, usually me.

Context decides. A prototype may take shortcuts. Something people depend on may not. Knowing which one you are writing is most of the job.

No dependency without a reason. Every package is a promise someone else has to keep. Standards outlive vendors.

A view must not be able to disagree with its source. Anything derived gets recomputed, never kept by hand in a second place — two versions of the truth start drifting the day you write the second one.

Write down why, not just what. A decision that took an afternoon to reach should not take an afternoon to reconstruct.

Projects

logseq-cli: read and write a Logseq graph from a shell or an AI agent. Python, click, no vendor coupling. Verified writes, because the API answers a failed one with HTTP 200 and null.

roadmapper: derive a Notion roadmap from GitLab epics and milestones. One way only: the board is a view, so it cannot drift from the tracker. TypeScript, two dependencies, one command for cron. Progress is a sum over the issue tree, which is the one thing a field mapping cannot do.

task-line: a Claude Code mod that draws one line per task list above the prompt: the current task, a progress bar and the count. It reads the lists Claude keeps and creates none, and looks the same in the terminal and the desktop app. TypeScript, no network, no files.

enable-todo-tools: a Claude Code mod with one job. Newer models leave Claude's todo tools out, so anything that reads the list has nothing to show; this sets CLAUDE_CODE_ENABLE_TODO_TOOLS=1 at session start. Opt-in, and the companion to task-line.

sweet-spot: a Claude Code mod that never acts in the middle of a turn. It waits for a pause, counts down with a "Not now", and holds back while a subagent is running. Only then does it hand a long session over before the context gets too big, to a fresh session that starts from a handoff or by Claude Code's own /compact. The 200k default comes from a measurement, not a feeling: most of the cost in real sessions came from calls above it. TypeScript, no network, writes nothing.


Germany. Off the keyboard: a gravel bike, daily, non-negotiable.

Popular repositories Loading

  1. roadmapper roadmapper Public

    Derive a Notion roadmap from GitLab epics and milestones. One way, no drift, no LLM, scoped tokens.

    TypeScript

  2. muellerei muellerei Public

    Profile

  3. logseq-cli logseq-cli Public

    Drive a file-based Logseq graph from a shell or an AI agent: JSON on every command, dry-run on every write, bounded output

    Python

  4. awesome-logseq awesome-logseq Public

    Forked from logseq/awesome-logseq

    Awesome Logseq resources created by the community <3

  5. task-line task-line Public

    Claude Code mod: one line per task list above the prompt with the current task, a progress bar and the count. Same look in the terminal and the desktop app.

    TypeScript

  6. enable-todo-tools enable-todo-tools Public

    Claude Code mod that switches the todo tools back on for models that leave them out, by setting CLAUDE_CODE_ENABLE_TODO_TOOLS at session start. Companion to task-line.

    TypeScript