Skip to content
Menu
WorkflowSkills, tmux and the daily loopToolsai-usagebarQuota and reset times for 24 AI providersghpendingEvery open PR and issue in one listtclockA terminal clock with command widgetsFrank projectsExperiments that scratch my own itchesai-memoryLong-term memory for coding agentsai-jailAn OS sandbox for AI coding agentsLearnCompetent Enough, the bookAGI, jobs and learning without fear or hypeWhy AGI doesn't matterAn opinion, with sourcesThe limits of LLMsWhat AI can copy, and what it can'tAI and studentsWhy foundations matter more than everBlog & benchmarkThe blog and the LLM benchmarkNewsletterThe M.Akita Chronicles, every MondayPodcastsLong conversations about AI, on videoGamesMy game collection as code, on OmarchySetupOmarchy, tmux, and what I set asideFollow
Workflow

How one person keeps 40 repositories moving

Every morning I open one coding agent per project, give it a single line, and review what comes back. A coding agent can inspect files, edit code and run checks. My reusable instructions are plain text files called skills.

The smallest version of this workflow

My full setup grew over time. You can start with one project, one task and four habits.

Choose a bounded task

Pick work with a clear finish and a result you can check. Keep the first change small enough to review.

Write down the constraints

Tell the agent what must stay true, which commands verify the work and what it must not touch.

Review the change

Read the diff, question its assumptions and run the project checks. A person remains responsible for accepting it.

Keep the lesson

Turn a failure into a test or a written rule. The next session should not repeat the same mistake.

The command I start from

This is my mature engineering setup. Each tmux window is one project. ai-memory starts the agent with that project's saved decisions and hooks. The smallest workflow above needs none of this.

my exact technical setup
cd ~/Projects/ai-usagebarai-memory run claude# quota gone? same workstream, another agentai-memory run codex --yolo

Then I type one of three lines, depending on what the queue looks like:

  • run pr-audit and iss-audit, then run github-resolution

    The normal day: audit everything open, then fix what the audits approved.

  • ... then run the release skill

    Appended when enough has landed for a version.

  • run pr-bump and release

    Days when the only queue is Dependabot.

The pipeline

Every claim is checked, whether it came from a person or an agent. Every approved fix gets a regression test, and a release waits for all automated checks to pass on that exact version.

A left to right pipeline: Open PRs and issues split into pr-audit and iss-audit, which merge after an Approved check into github-resolution, then pr-post-audit, then release, then Kaizen, with an arrow from Kaizen back to the start. An ai-memory bar runs under all of it.
pr-post-audit runs when a session resolved more than three tickets. The release skill runs only when I ask for one.

Kaizen closes the loop

After each round I look at what went wrong or took too long and fix the process, along with the code. I call it kaizen, the Japanese word for continuous improvement, and it is the step that makes the next round better than this one.

Skills

A rule gets added the day a mistake shows up. The my-skills history is full of them: batch the Dependabot bumps into one pass, leave declined pull requests in a clean state.

Harness instructions

Each project's AGENTS.md collects the commands, invariants and traps as I find them, so the next agent does not have to rediscover them.

Tools

ai-usagebar, ghpending and tclock each exist because something in my routine was slow or invisible. They keep changing for the same reason.

Setup

The desktop, the terminal and the gaming box are all code, so an improvement is a commit that I can review, keep or revert.

Every line in these skills is a scar.

From my post on skills

What that adds up to

Everything below happened in 2026, across the tools on this site, my Frank side projects, the newsletter, the benchmark and the blog. Counted on September 23, 2026. Nearly all of it went through agents and these skills, with me reading the reports and making the calls.

30
projects with commits
6,330
commits
783
merged pull requests
486
closed issues
1.08M
lines of code added
121
blog posts published

Lines of code are lines added to code files. Lockfiles, data, fonts, translations, vendored and generated files do not count, and neither do the benchmark's model output or the newsletter's generated content. FrankGeary and tclock are forks, so only my own changes count. Pull requests and issues come from GitHub; frank_bazaar has no GitHub remote and akitando-news is private.

Project by project
ProjectCommitsMerged PRsClosed issuesLines of code added
ai-memory1,468500283328,177
akitaonrails.github.io63795121 posts
akitando-news (private)5771080,602
ai-usagebar55314642132,932
distrobox-gaming4972047,622
FrankMD361424581,237
llm-coding-benchmark3595717,636
ai-jail353448341,666
FrankYomik2480053,833
frank_go2203116,725
frank_investigator1891245,365
FrankClaw1893269,114
FrankSherlock1212848,930
frank_karaoke1024010,465
frank_fbi791325,498
FrankMega622010,965
clock-tui541007,276
frank_type49329,815
ghpending40326,081
frank_geary34101,157
tropicalruby-202630002,201
ai-memory-web22109,775
frank_scanlation21008,904
omarchy-games-menu17006,951
aitrepreneur-docker1300781
google-calendar-tui12013,956
ai-jail-web10002,887
frank_lyrics9002,346
ai-toolkit-web3002,778
frank_bazaar1··1,769

AI is a mirror. If you are good, it makes you ten times faster. If you are bad, it also makes you ten times faster, at producing slop.

One folder, every agent

The skills live in one repository. Each agent's skills folder holds symbolic links into it, so an edit reaches Claude Code, Codex, OpenCode and Kimi at once.

A central my-skills folder linked by chain symbols to five agent folders: Claude Code, Codex, OpenCode, Kimi and ~/.agents. One edit reaches all.
adding a skill
mkdir ~/Projects/my-skills/<name>   # add a SKILL.mdfor h in ~/.claude/skills ~/.agents/skills ~/.codex/skills; do  ln -s ~/Projects/my-skills/<name> "$h/<name>"done

Where the rest of the knowledge lives

Skills cover procedures that repeat the same way. Everything else lives in plain text the agents can read.

A memory per project

ai-memory keeps each project's decisions, traps and handoffs. A new session, in any agent, starts from there.

AGENTS.md everywhere

Every repository has its own instructions: the commands, the invariants, the mistakes not to repeat.

Point at a living example

"Make an AUR workflow like the one in ai-memory" beats a skill about AUR packaging, because the example is always current.

Write down what did not become code

Research, rejected alternatives, the reason behind a decision. Every hour of agent research becomes a document I can reuse.

Everything here is open source

The tools, the skills and the benchmark are public repositories. Fork them and build the version that fits the way you work.