HackerTrans
TopNewTrendsCommentsPastAskShowJobs

tacoda

no profile record

Submissions

This One's Not AI

blog.tacoda.dev
3 points·by tacoda·17 dagen geleden·2 comments

What Breaks When You Skip the Harness

blog.tacoda.dev
1 points·by tacoda·19 dagen geleden·0 comments

Harness Engineering

leanpub.com
1 points·by tacoda·20 dagen geleden·0 comments

Tools Are Harness Too

blog.tacoda.dev
3 points·by tacoda·20 dagen geleden·0 comments

I Still Live in the Terminal

blog.tacoda.dev
23 points·by tacoda·21 dagen geleden·28 comments

Sensors: The Other Half of the Harness

blog.tacoda.dev
3 points·by tacoda·22 dagen geleden·0 comments

The Accidental Framework

blog.tacoda.dev
1 points·by tacoda·23 dagen geleden·0 comments

The Harness Is Also Onboarding

blog.tacoda.dev
2 points·by tacoda·24 dagen geleden·0 comments

Keystone 2.0 – A Worthy 2.0

blog.tacoda.dev
3 points·by tacoda·25 dagen geleden·0 comments

Versioning the Harness Itself

blog.tacoda.dev
3 points·by tacoda·25 dagen geleden·0 comments

The Daemon in the Middle

blog.tacoda.dev
3 points·by tacoda·26 dagen geleden·0 comments

The Org Harness

pub.towardsai.net
3 points·by tacoda·26 dagen geleden·0 comments

Intent-Driven Delivery

blog.tacoda.dev
2 points·by tacoda·27 dagen geleden·0 comments

Ports and Adapters for Prose

blog.tacoda.dev
2 points·by tacoda·28 dagen geleden·0 comments

Scoping Rules: Global, Project, Path-Glob

medium.com
3 points·by tacoda·29 dagen geleden·0 comments

From a Single File to an MCP Server: Six Rewrites of My Own Harness

pub.towardsai.net
4 points·by tacoda·29 dagen geleden·0 comments

Post-Mortems for Agent Runs

blog.tacoda.dev
1 points·by tacoda·30 dagen geleden·0 comments

Lisp's Influence on Ruby

blog.tacoda.dev
258 points·by tacoda·vorige maand·86 comments

Explicit Seams as Agent Affordances

blog.tacoda.dev
2 points·by tacoda·vorige maand·0 comments

Keystone: The First Agent Harness Framework

medium.com
4 points·by tacoda·vorige maand·0 comments

comments

tacoda
·17 dagen geleden·discuss
Noted. This one is actually in response to feedback I received here.
tacoda
·19 dagen geleden·discuss
That’s fair. I usually have a separate alias file in my config. But it’s really a convenience for me.
tacoda
·20 dagen geleden·discuss
I agree with this. If it’s text, I do it in the terminal, but I still use GUI for Chrome or Zoom. I think the discoverability depends on the product. On the other hand, in the terminal, it’s a help flag or a man page.
tacoda
·20 dagen geleden·discuss
Both actually. It is incorrect. It’s two words, but I also have an alias that makes it two letters. Thanks for pointing this out.
tacoda
·27 dagen geleden·discuss
Technically when you write in the domain, you are effectively making your own Lisp and then using it. It’s one of the amazing things that macros can do.
tacoda
·27 dagen geleden·discuss
I would call these different dialects of Lisp. The data doesn’t have to be a function. It’s illustrative. The patterns of application still work. What’s the difference if delimiters are different or if you are calling JVM libraries? The high-level ideas are still right there. Consider JavaScript. It is definitely not a Lisp, but if you model it as Lisp in C’s clothes, then all of a sudden IIFEs make total sense. The point is that it’s a helpful mental model for languages other than Lisp.
tacoda
·2 maanden geleden·discuss
An untested codebase doesn't just lack tests. It actively teaches every contributor, human or agent, that tests aren't part of the work.

Coding agents pattern-match on what they find. If the convention is no tests, that's what they'll write. And the longer it goes on, the more the codebase is shaped in ways that make testing harder, which entrenches the pattern further. New post on why testing is no longer optional in the new world of agentic coding, how to start when you have zero tests, and what to do when the code resists being tested at all.
tacoda
·2 maanden geleden·discuss
[dead]
tacoda
·2 maanden geleden·discuss
[dead]
tacoda
·2 maanden geleden·discuss
I built a tool. It scaffolds a Claude Code agent harness into any project.

A harness is the system that lets an AI coding agent produce correct, high-quality code consistently. It has four parts:

Guidance: CLAUDE.md and rules in .claude/rules/ that shape what the agent writes. Guardrails: automated checks (lint, tests, build) the agent runs. Flywheel: review feedback updates a rule file. The next conversation starts smarter. Workflows: agents, commands, and skills under .claude/ that turn institutional knowledge into runnable procedures.

sellier ships a generic, slim version of all four. You run it once, then run a Claude command to fill in the placeholders.
tacoda
·2 maanden geleden·discuss
If you let an AI agent loose on a non-trivial codebase, two things happen. First, it gets a lot done. Second, it gets a lot done in the style of whatever it last read. Drop it into a file with anemic models and inline authorization checks, and the next thing it writes will be an anemic model with an inline authorization check. Agents are mirrors with momentum.

This post is about how we stopped fighting that and started using it. It covers two iterations of a system we call the harness — the set of files, rules, and workflows that constrain what an agent produces in our Laravel + React monorepo. The first iteration was a scattering of CLAUDE.md files in subdirectories. The second is a .claude/ folder with rules, agents, commands, and skills. The second is dramatically better, and the reasons are worth writing down.

The audience here is engineers who are picking up agentic coding and want a concrete pattern they can copy.
tacoda
·3 maanden geleden·discuss
You can use AI coding agents on real production codebases and get predictable, high-quality results if you treat the agent like a junior engineer who needs guardrails, not a magic wand.

Note this series is half-published and updates will be coming over the next few days.