Paul Welty, PhD AI, WORK, AND STAYING HUMAN

2026-02-27 — Paulos

What shipped today

This was a foundational day. Two major themes: completing the skills refactor that started yesterday, and wiring up the end-to-day content pipeline so it actually works end-to-end.

The skills refactor landed as PR #142 after resolving 16 merge conflicts with Codex’s concurrent work on the same files. The “earns its keep” philosophy is now the canonical product contract — PRODUCT.md was rewritten to reflect it. A /scout pass found 6 post-refactor issues (stale refs, orphaned files, dead config), and /grind ran all 6 in parallel on isolated worktrees. Four shipped clean, one was already resolved, one recovered from a dead agent. PRs #152-#155 all merged.

The second theme was the content pipeline. /close, /sum-up, and /reflect were disconnected — each wrote to or read from slightly different locations, and none of them committed to polymathic-h. Now the pipeline connects: /close writes work logs to both the current repo and polymathic-h/content/work-logs/{project}/, committing and pushing both. /sum-up reads from the canonical polymathic-h location and writes synthesis to content/syntheses/{date}.md. /reflect reads that synthesis, writes a post with a real title, generates ElevenLabs audio with the cloned voice, injects an audio player, commits, pushes, and Cloudflare auto-deploys. One command from synthesis to published podcast.

Along the way: built paulos idea to push content ideas to Authexis via the v1 API (chased down a redirect-stripping-auth-headers bug), wired up Pushover as a notification platform (env var name mismatch: PUSHOVER_API_TOKEN vs PUSHOVER_APP_TOKEN), added PAULOS_DEFAULT_NOTIFIER env var support, and reversed the .claude/ symlink ownership so paulos owns the directory and utilities symlinks into it.

Completed

  • #142 — Skills refactor: intent-based skills, earns-its-keep CLI philosophy
  • #143 — Fix intent router command mapping (already resolved)
  • #144 — Remove stale pm_execute guidance (already resolved by Codex)
  • #145 — Sweep skills/docs for stale references to removed command groups
  • #148 — Delete orphaned git_branch.py and its test
  • #149 — Remove stale config fields and escalation parsing block
  • #150 — Fix install_home_server.sh reference to deleted project command
  • #151 — Clean stale .claude/ artifacts
  • #139 — Add Pushover to notification menu (already implemented)

Carry-over

  • #146 — Rewrite README.md (needs human input on scope)
  • #147 — Fix PRODUCT.md phantom command references (needs human review)
  • #119 — Explore using Authexis content services for blog posts (natural next step after paulos idea)
  • Test the full /close/sum-up/reflect pipeline end-to-end in a real session

Risks

  • The .claude/ symlink between paulos and utilities has been a recurring source of circular references. The current setup (paulos owns, utilities symlinks) should be stable but watch for it on git pull.
  • The paulos idea command hits www.authexis.app directly to avoid a redirect that strips auth headers. If Authexis changes its redirect behavior, this could break silently.

Flags and watch-outs

  • Authexis has 4 test ideas that need cleanup (from testing paulos idea)
  • ElevenLabs voice ID MfTav5s2dmhGtqd47aNF is hardcoded via env var — if the voice gets deleted or regenerated, audio generation will fail silently
  • The polymathic-h pre-commit hook and /reflect skill both specify --provider elevenlabs — keep them in sync

Next session

  • Run the full EOD pipeline: /close/sum-up/reflect and verify the published output
  • /prep the eod reflect bug cluster (#133, #134, #135, #136) and batch-grind them
  • Pick up #119 (Authexis content services for blog) — extends the paulos idea work
  • Consider whether utilities repo should be archived now that .claude/ ownership is settled

Why customer tools are organized wrong

This article reveals a fundamental flaw in how customer support tools are designed—organizing by interaction type instead of by customer—and explains why this fragmentation wastes time and obscures the full picture you need to help users effectively.

Infrastructure shapes thought

The tools you build determine what kinds of thinking become possible. On infrastructure, friction, and building deliberately for thought rather than just throughput.

Server-side dashboard architecture: Why moving data fetching off the browser changes everything

How choosing server-side rendering solved security, CORS, and credential management problems I didn't know I had.

The work of being available now

A book on AI, judgment, and staying human at work.

The practice of work in progress

Practical essays on how work actually gets done.

Junior engineers didn't become profitable overnight. The work did.

We've been celebrating that AI made junior engineers profitable. That's not what happened. AI made it economically viable to give them access to work that actually builds judgment, work we always knew

Three projects, three opposite methods, all monster output days: what that taught me about when process helps and when it's just comfort

I've been running a portfolio of software projects using a mix of autonomous AI pipelines and human-led parallel agent sessions. Yesterday, three different projects had monster output days — and th...

What happens when the pipeline doesn't need you

So here's something I noticed today that I want to sit with. I run several projects that use autonomous pipelines — AI systems that pick up tasks, write code, open pull requests, ship changes. One ...