Remix.run Logo
qarl2 2 days ago

You should have a sub agent adversarially enforce KISS before every commit.

Sharlin 2 days ago | parent | next [-]

"You should have a sub-hammer to adversarially enforce that your primary hammer accurately drives nails into wood"

We wouldn't accept such behavior from any other tool, machine, or computer program. At least most of us would not. To paraphrase the old saying: Some people, when confronted with a problem with an AI model think "I know, I'll use an additional AI model." Now they have two problems.

I find it very intriguing that two lineages of models -- from two different companies -- that are supposed to be painstakingly RL'd to become human-level programmers are actually consistently bad at it out of the box in very similar ways. One would think that at least one of OpenAI and Anthropic would (could) have pushed their model to a direction different from "if you can solve a 100-line problem in 10,000 lines, do it".

pixl97 2 days ago | parent | next [-]

Human level programmers generally suck too. Unending security holes have been human behavior ever since we started sharing computers.

Also, programming isn't a destination, it is a process and everyone has a different ruleset on what that process looks like. Writing a computer program of any complexity is not a determinalistic process. Trying to compare it to a detemanilisic tool will just leave you with broken analogies and a poorer understanding of the world.

Or another way to say this. If programming were deteminalistic we'd have solved it without AI.

PepegaRoach 2 days ago | parent [-]

[dead]

zzleeper 2 days ago | parent | prev | next [-]

Also very puzzling to me. And the jargon-speak, albeit is more of an issue for Claude, is still puzzling. Wonder what part of RL led to this.

qarl2 2 days ago | parent | prev [-]

> We wouldn't accept such behavior from any other tool, machine, or computer program.

Von Neumann, 1952: "Probabilistic Logics and the Synthesis of Reliable Organisms from Unreliable Components." The whole result is that you get an arbitrarily reliable machine out of unreliable parts by adding more unreliable parts and voting. Every ECC memory and RAID array descends from it.

dirkc 2 days ago | parent | prev | next [-]

And then another sub agent that argues for the whole system to be re-written in another language

useruser125524 2 days ago | parent | next [-]

The voices in my head argue about the direction of the project enough already

qarl2 2 days ago | parent | prev [-]

If that's your goal, then yes. Invoking sub agents (with a fresh context) corrects most of these problems. Ask your harness to create a commit gate.

dirkc 2 days ago | parent [-]

But why stop at rewriting in another language. Get another sub agent to invent a new language, create a database, query language and maybe another few DSLs. Then you've got an ecosystem!

You can now re-position your initial solution and sell the client access to some agents that will implement & configure the ecosystem to suit their initial needs!

And don't forget the agents that you'll need to train the customer to use the whole thing!

qarl2 2 days ago | parent [-]

I know you're trying to be funny - but I'm offering a real fix for his problem.

If you don't want a million agents arguing about things, you simply don't ask for that. One agent is sufficient to solve most issues.

dirkc 2 days ago | parent | next [-]

Sorry, I wasn't implying your advice doesn't carry weight. Was more just thinking about the things that (used to) happen when you introduce more parties to process of creating software.

zzleeper 2 days ago | parent | prev [-]

I wonder if I would need a non-openai agent to enforce it.. I have tried so far with skills and agents.md and code stills end up over engineered to the moon.

Will ask OpenAI to write me that agent! Hope the agent is not over engineered or else unsure how to solve the bootstrap puzzle :D

qarl2 2 days ago | parent [-]

There's a misconception that a mistake one instance of a model makes will be repeated by other instances. In my experience most mistakes are just sampling noise, and having the same model (with empty context) check the work usually fixes it.

It's super easy - just ask your agent to set up a code review commit gate.

dlivingston 2 days ago | parent | prev [-]

How can I set such a sub agent up?

qarl2 2 days ago | parent [-]

In your harness, say:

"Going forward, do not allow a commit without a sub agent code review."

seviu 2 days ago | parent [-]

In omp you can also have the advisor role, which is off by default, you can enable it with /advisor command. It acts as a model that reviews the default agent's work in the background.

I am omp pilled, but as the other comments say, any good harness lets you do this in one or the other way.

unrelated: all my homies use their claude subs with omp, and aside from sometimes having to rety the connections, it works, and nobody got banned (yet)