30 comments

  • throwaway219450 8 hours ago
    Astra writes well (which is why I often like to work with it over Claude), but it tends to produce code golf that's borderline unreadable, like completely omitting line breaks. I thought I had something funky with my config, but it seems to be a known issue.

    https://lucumr.pocoo.org/2026/9/7/astra-why/

    EDIT: You can search for "tenobrus astra" on X, but link removed.

    The generated code certainly does what's asked of it, but it's as sloppy as anything else I've seen. I don't think this benchmark can control for that. Maybe if it had a metric for minimum diff to satisfy the new requirement with the existing constraints on dead code etc?

    • pkulak 52 minutes ago
      6.1 Sol does this too. Like, line break after a function, but absolutely nowhere else. This solved it for me:

      - Use paragraph-oriented formatting: give distinct logical steps room to breathe. Keep closely related statements together, but separate changes of purpose and a block's final result with blank lines. Prefer readability over vertical compactness.

      • ModernMech 49 minutes ago
        I've found passing its output through a formatter is essential, also turning dead code warnings into errors.
    • CharlieDigital 6 hours ago
      I use the frontier models only in plan mode; coding is held out to cheaper models.

      I run Paseo as an orchestrator with agent profiles. "Distinguished Member of Technical Staff" -> Fable, plan mode. "End-User Customer Advocate" -> Astra, plan mode. A few others. Basically, these agents (with profile prompts) can only be "consulted" for input on design elements; it's OK if they produce a bit of verbosity here. This has worked fantastically for me, really awesome to see a self-constructed team own the work end-to-end.

      A "Director of Engineering" (6.1 Sol or Opus 5.5) also in plan mode organizes the team for the task and then owns coordination and instruction. You can think of this in essence like a "model router".

      Coding is handled by Haiku 5.5/GPT 6 Luna/DeepSeek v4.1 Flash. One "Principal Engineer" Sonnet 5.5 or 6.1 Sol for some tasks.

      • grim_io 6 hours ago
        You are deep in it.

        You may be larping for no additional benefit vs just using Opus 5.5 and just asking it to implement a feature.

        • 14u2c 4 hours ago
          You are correct, at least based on my experimentation. This subagent workflow really only delivers meaningful results when working across model families (ex: Opus asking Astra for a review) or when working across conceptual hardware boundaries (cloud offloading to local inference, etc). The planner / overseer model ends up reading all the output of the coder model anyway, at least if you want quality output, so there's not much benefit otherwise.
          • CharlieDigital 4 hours ago

                > The planner / overseer model ends up reading all the output of the coder model anyway
            
            I mean, even that's fine because output tokens cost ~5x input tokens. So that's still a win if the agent that does the heavy code reading and writing produces output that may be read again by the lead (not my observation of how agents in Paseo interact and of course, correctable to degrees with shared system prompt).

            Here's a snippet of a sample prompt downwards from the lead for a piece of code I'm working on:

                From agent: 3ff73f80-9713-458c-8271-d275f03609c6
            
                <role>
                You are the Principal Engineer on <snipped ... /> (.NET 11 / Vue MCP server; read CLAUDE.md in your working directory first). ...
                </role>
            
                <lead_role>
                I am the Director of Engineering. The System Architect and the DMTS reviewed this approach ...
                </lead_role>
            
                <sniped ... />
            
                <comms>
                Run all gating commands in the FOREGROUND. End your turn ONLY with the final report: pass/fail per success criterion (a)-(i) with evidence, the branch tip SHA and `git log --oneline origin/main..HEAD`, lines added/deleted, the exact 0factor image digest and version you pinned, every deviation from this brief and why, risks you saw,...
                </comms>
            
            The agent is given explicit "comms" instructions upwards and I find that both agents in this exchange stick to the contract.
            • 14u2c 4 hours ago
              > even that's fine because output tokens cost ~5x input tokens.

              That's assuming you come in under a certain threshold of revisions, and excludes the tokens generated for all the exchanges. The later can be be significant, especially when there are significant issues to correct.

              • CharlieDigital 3 hours ago
                All I can say is give it a try. We can debate hypotheticals all day, but it costs nothing to try and see.

                The Paseo harness/orchestrator is doing something right. I switched from TUI after trying it as a candidate for a non-TUI user.

                It's not the same behavior as Claude starting a Claude sub-agent.

                • dhorthy 14 minutes ago
                  or someone could clone the SCB repo and make a fork that proves it one way or another
        • CharlieDigital 6 hours ago
          Nah; I can use my token budget across both providers this way, use tokens more sparingly with smaller models for heavy text in/out (why pay Opus prices to babysit a PR? run tests?), and you'd be surprised when the agents talk to each other and "role play" how much this improves things like the UX as well as technical design which are more subjective.

          Distinguished Member of Technical Staff, for example, is asked to "expand the solution space" which I find has a strong effect on approaches considered (it doesn't know what was already considered on the main thread; only the domain and problem space).

          This also helps with context growth since the sub-agents do the heavy lifting (e.g. search, read docs) and just provide the key bits back to the lead.

          Like you, I was a single-model, single-TUI user up until three weeks ago when I picked up Paseo and it is the only tool that I've found that has significantly positively improved my throughput without sacrificing quality of product.

          Is it "larping"? I ran an eval today on a contract ingest and extract agent I'm working on. Changing the <role> fragment of the prompt lifted the results by +7 points by simply changing the text to the effect of "You are a senior partner at a prestigious law firm that focuses on reading licensing contracts..." and some bits about the content the agent is reviewing + objective. No one would believe it without an eval.

          Claude docs explicitly say to LARP[0]:

              > Give Claude a role
              > 
              > Setting a role in the system prompt focuses Claude's behavior and tone for your use case. Even a single sentence makes a difference
          
          My conclusion: the agents like to LARP so I'm happy to LARP with them.

          [0] https://platform.claude.com/docs/en/build-with-claude/prompt...

          • mrheosuper 15 minutes ago
            Why stop at "You are a senior partner at a prestigious law firm that focuses on reading licensing contracts..." why not "You are super programmer/developer that has been programming with Ada using punchcard, having Linus on quick dial, you can smell BS code from miles away and know exactly which question to ask".
          • elcritch 3 hours ago
            I hate to be pedantic, but LARP stands for live action role playing.

            Only mentioning it because LLMs are already taking over software development and everything online. Let's keep them out of our meet space peculiarities (1) while we can. ;)

            1: https://epicarmoury.com/blogs/news/what-is-larp

        • what 4 hours ago
          He has to be deep in it because it’s the product he sells.
          • CharlieDigital 4 hours ago
            Paseo is open source (https://github.com/getpaseo/paseo, Apache 2.0) and not my project; not affiliated.

            I have other products and I work for private equity (no affiliation with Paseo at all).

            You've entirely missed the lede.

        • criley2 3 hours ago
          No "may be" about it. There is no benefit to having bad models write your code, and there's no benefit to "plan" mode. Plan mode is an outdated 2025 concept that should be removed from standard harnesses.

          There are 2 scenarios for dumb builder agents:

          1. Your "planner" actually implements the project almost completely, finds all the gotchas, solves all of the emergent problems, and fully plans the solution.

          2. Your "planner" takes a half-assed first attempt, solving none of the major problems that will arise during implementation

          In scenario 1 -- just pay cache output on a few more tokens to finish the project. No need to spend twenty minutes pumping a few million tokens through deepseek regardless of how cheap it is to do so.

          In scenario 2 -- good luck getting quality output

          I do think this "software team" LARPing is an engineering version of AI psychosis. You can get all of the little parts humming along, sending messages, and looking really cool. You can even convince yourself that all of these busy little bees actually make better product.

          But a frontier model working alone can produce better output in a tiny fraction of the time. Just build the thing.

          • CharlieDigital 2 hours ago
            Try it. 3 weeks ago I was in the same boat. Single model, TUI. I only tried Paseo primarily to test multi-host orchestration (after giving up on Herdr) and not even multi-agent, multi-plat behavior.

            Output quality, especially subjective bits, has improved relative to my attention needed. Autonomous decision making is much, much better for me adding one profile that specifically is instructed to focus on UI/UX, one for end user proxy, and one for MTS.

            It costs you nothing to try except maybe 15 minutes of setup. Give it a solid, skeptical week. It's good even without the profiles, but way better with.

            Try my profiles as a starting point: https://gist.github.com/CharlieDigital/1c496a2799862795f0c31...

            • qvq 1 hour ago
              I tried it and figured out the benefit was getting the agent to look at solving the problem from different perspectives. Now I just include those perspectives in the prompt to a single agent. Example: If I feel like the agent is going to just bolt on a feature without refactoring the core parts, I tell it to expand functionality of the core parts as needed.
    • eptcyka 8 hours ago
      Don’t apologize for x, just don’t post x links.
      • Aurornis 4 hours ago
        X links are fine. People who don't want to visit the site can choose not to visit it.

        This current situation where people get shamed for sharing the information until they edit it out and leave obscure "search for___ on X" is infinitely worse.

      • encypruon 7 hours ago
        I think it's the best possible approach. It lets you refer to content that's unfortunately stuck on the site, while still signaling clearly that it's something to avoid if possible and to apologize for if not. Omitting the link just removes information without influencing consensus on whether to use X.

        edit: I wish it would let me view the darn screenshot tho :c

        • uoaei 6 hours ago
          There are plenty of alternatives to link to X content without hitting X's servers.
          • flaburgan 6 hours ago
            Do you mind listing some? I only know xxcancel.com
            • Arubis 1 hour ago
              Twiiit.com/(your link) rewrites to a pool of nitter servers.
      • throwaway219450 6 hours ago
        I removed it, but it's frustrating when the options are someone's (reasonable) post on X, or slop-spam aggregators. I don't really want to drive visits to either, but at least the X poster can get the views. I don't really like xcancel either as it still encourages indirect engagement with X.
    • loveparade 2 hours ago
      Astra is some of the worst code I've seen in terms of slop, so the benchmark is kind of surprising to me. Astra gets things right, but I need Claude clean up its slop all the time. Many times I've cut down Astra changes from 1000+ lines to ~100 lines.
    • ttul 7 hours ago
      I've noticed the line breaks issue. It's easily fixed with a formatter like prettier and, frankly, that kind of quality-of-life thing is best handled deterministically anyway.
      • LukaD 5 hours ago
        I haven't used prettier much but this is what the prettier docs say about empty lines.

        > It turns out that empty lines are very hard to automatically generate. The approach that Prettier takes is to preserve empty lines the way they were in the original source code. There are two additional rules: > > - Prettier collapses multiple blank lines into a single blank line. > - Empty lines at the start and end of blocks (and whole files) are removed. (Files always end with a single newline, though.)

        The last time I used astra it wrote a lot of rust code where it would insert almost no empty lines at all. Not before functions, structs, impl blocks, etc., and not inside functions to group statements. Similar to prettier, rustfmt doesn't really insert empty lines.

        Edit: hmm maybe I misunderstood your and the parent's comment. Are you talking about missing regular newlines after statements, i.e. multiple statements on one line?

        • throwaway219450 4 hours ago
          I was talking about a function with 100 lines and no line breaks. Very difficult to read.

          I use black/ruff on a lot of projects and it will only touch standard-y things like docstring spacing, or spacing between methods and classes, import sorting etc. It doesn’t touch intentional/aesthetic user spacing. With agents it is helpful to make them run ruff and mypy to keep them honest, but as long as the code adheres to the spec, it doesn’t get changed. Astra also creates things like “report” functions with 10 arguments, so it’s useful to turn on complexity checkers as well.

          I don’t see how Prettier is any better here unless you really want everything to be deterministic; how could it possibly know (always) when to insert a line? Aside from some more obvious cases like adding a gap before a loop declaration. Sometimes I group lines because they’re part of a mathematical formula or other operation and it makes sense to me, but Prettier doesn’t know that.

      • rsfern 6 hours ago
        Doesn’t this mess up the context though? I use ruff and my agents get confused if I edit and run ruff out of band. How do people deal with that? I’m always having to remind agents to re-read files because they’ve changed
        • ttul 3 hours ago
          I find it is okay if I tell the agent that running the formatting step is required before every commit.
    • nozzlegear 7 hours ago
      • aand16 4 hours ago
        Beware NSFW: redirects to private instances that redirect to porn for monetization

        Edit: disable JS to prevent click-jacking

        • nozzlegear 3 hours ago
          Interesting, I've never seen it do that.
  • taspeotis 4 hours ago
    It's Opus specific, but personally I'd never bother with Opus above High, CursorBench shows a clear inflection: https://cursor.com/cursorbench
  • WASDx 8 hours ago
    Great benchmark!

    I believe effort can mean both "solve harder problems" and "produce more stuff". I mostly don't want more stuff than I asked for, so a capable model at lower effort can indeed be the wiser choice. Faster response too.

  • hedgehog 9 hours ago
    Is there a reasonable way to run a representative subset myself?

    Edit:

    > For folks who want to try to repro these findings: I used the pinned v1.0 catalog, the stock just-solve prompt, seed 42, the any-case runner pass policy, and Docker with Python 3.12 and uv.

    And https://github.com/gabeorlanski/scb-problems/

    • dhorthy 4 hours ago
      Yeah and I started with subsets although I did not find them representative, eg I picked 6 challenges for a subset and fable scored 33%, while on the full challenge it landed closer to 14-15% range

      The part II post linked in my top comment has a list of the challenges I used for that.

      To run them, just point your model at the paper, it can find the repo, etc and with a key or sub, get it running

      • hedgehog 1 hour ago
        Thanks, that's helpful. Do you still have the full data of pass/fail for each test and model? It would be interesting retrospectively to see if there is such a subset.

        I built some tools for personal research projects that could potentially help success rates on long dev tasks, empirically it seems to but I've never actually done a quantitative evaluation. SlopCodeBench looks promising for all the reasons you point out in your post.

  • softwaredoug 6 hours ago
    IMO slop usually comes from overly defensive programming from LLMs. They’re loath to remove code and simplify, because unless we humans tell them some code / use case is unimportant, they have no reason to not care about it.

    So agents can make these overly complex solutions trying to make bulletproof implementations and prevent regressions.

    It requires a human to look at code, ask about complexity, and guide simplification by subtracting requirements implicit in the code.

    • skrtskrt 6 hours ago
      They also seem to really bias towards tacking on new code to "work around" what's there, rather than breaking down what's there into smaller more composable bits that can serve the pre-existing use case and the new requirement elegantly.
      • Klathmon 5 hours ago
        LLMs write. It sounds glib but it's what they do, and so every problem they encounter they will try to write their way out of it without lots of hand holding.
        • dhorthy 4 hours ago
          they yearn to create content, generate more tokens, etc etc - agree
      • ares623 5 hours ago
        It's like we took the worst behavior of our colleagues, and went and said "yes, let's automate _that_ part" and patted ourselves on the back.
        • kansface 5 hours ago
          It’s more likely emergent behavior.
      • softwaredoug 5 hours ago
        Yes exactly. And I’m not sure we want agents with that level of autonomy to decide what functionality is important and what to leave in place.
        • yxhuvud 3 hours ago
          No, but it would sometimes be nice if they sometimes raised questions about what is important and what isn't
  • drivebyhooting 8 hours ago
    First of all, what happened to Max and Ultra?

    Secondly, I’m mostly using Astra Ultra or Sol 6.1 when tight on quota. I pay $200/month and rarely if ever run out. Am I doing something wrong? Or perhaps I’m not that productive as you guys?

    • steinvakt2 8 hours ago
      Same here. I’m feeling productive enough. If I was more “productive”, I wouldn’t be able to keep up with what I was producing. My attention and cognitive broadband is the bottleneck. I find it hard to believe that people are actually productive using 4 active chat windows simultaneously for 8+ hours a day.
      • kooi 37 minutes ago
        Yep, the context switching let's me do 2 or 3 active agents, but I have to slow down if real issues come up.

        Maybe the agent maxing dudes are doing their 12+ agents on a monster vibe project and all they say is "fix it", "make it work" all day

    • 4b11b4 6 hours ago
      Same I just leave 6.1 on Max. Don't touch that dial
    • slopinthebag 5 hours ago
      max and ultra are so slow and tend to overengineer massively imo
      • agentdev001 3 hours ago
        Max and ultra are slow and overengineer, based on evidence from evaluations.
  • furyofantares 8 hours ago
    For most things I find medium to be the highest quality output. However if I want it to do spatial reasoning or if I want it be funny / write something (not code) of almost-passable quality, then xhigh is where it's at.
  • theodorewiles 7 hours ago
    I have a simplify skill built from a rich hickey talk that basically solves the erosion and verbosity metrics SCB flagged (i.e. erosion and verbosity are way better and improve over time). However, after running the SCB benchmark I cannot find any evidence that it actually improves test pass rate trajectories. Food for thought on maintainability metrics.
  • sheepscreek 2 hours ago
    Suggestion to include GPT 6.1 Sol (Low) since that is configured as the default. I’d be interested to see how well it fares against the others.
  • jwpapi 5 hours ago
    Very interesting. If I’m honest with myself it could be very much a reality that I would be better off in only using for medium effor size tasked instead of trying to "offload" the necessary architecture thinking to "high" or even more.

    They are good for inspiration though, but maybe I rather let me build a demo and then tell a medium model what I want from it.

  • giancarlostoro 7 hours ago
    GPT 5.5 on Medium is all I use lately, I don't understand why anyone would pay drastically more for slightly more, when Opus has been good enough for a year now to do most things.
    • AnotherGoodName 6 hours ago
      You unknowingly substituted the name of another model when you’re otherwise talking about the competitor fwiw. Some if those in the reply chain didn’t even seem to notice.

      That’s a little telling of the state of ai atm though isn’t it? It’s all pretty similar. The latest Opus/GPT/Gemini/Deepseek/Kimi on medium does indeed do the job

      • spijdar 5 hours ago
        It would be a little strange but not that strange for someone to have an idiosyncratic preference for GPT-5.5. It's still available as a Codex model (I think? It's selectable in Pi, not Codex itself), and it might perform differently enough from later GPT models that someone prefers it.

        To your point, though, I don't know if I've noticed that big of an impact going from 5.5 to newer GPT models. If I had to switch back, I'm not sure how much I'd miss the newer ones. People talk about e.g. Opus 4.6 similarly, I've noticed.

        The bigger change in OpenAI-land IMO is the models got cheaper, generally.

      • giancarlostoro 3 hours ago
        You're right, I meant to write: Opus for all of the above. I do think a lot of it is roughly similar, for most use cases, anything after Opus 4.5+ is "good enough" basically.
    • spijdar 7 hours ago
      Why not GPT-{5.6, 6, 6.1} Sol? They're all cheaper than GPT 5.5, and as "smart", if not "smarter", at least to me.

      Though, it has been a while since I've used 5.5.

      • ttul 7 hours ago
        Surely they mean Opus-5.5...
      • singingtoday 7 hours ago
        I have no data to support this, but when working on SaaS systems I find anthropic models more effective.

        But for webdev, deep research, code review, and a few other tasks I find the current 6.1 sol better.

        But I use both. And I use codex more.

  • mordae 7 hours ago
    This is interesting. Is nobody training LLMs to repeat resolving issues by patches from real projects where refactoring is required, judging the refactor similarity and not just tests passing?
  • xlayn 5 hours ago
    what are the odds of as purely side effect of benchmaxing that the models get actually good because the benchmarkers the nittier they get the better the model has to become?

    corrolary: just as cars evolved for worst because they were measured for "race numbers", what are the odds that the models just become "that uber nerd that degrades anyone who doesn't follow all his uber-rules for uber-code" and in the process start creating code that cannot be read or maintained?

  • visiondude 1 hour ago
    I can’t find this useful given they are trying to quantify wether the code ‘feels’ sloppy with some fuzzy math that can easily be manipulated. at least it’s an attempt, some feel it’s a good attempt, i feel it’s rather poor and misses the point. the best code is the one that's most easily understood and equally performant - some of the math here may go against that (given you can reduce concentrations with helper functions and the like)
  • dang 8 hours ago
    Related. Others?

    Benchmarking Opus 5 on SlopCodeBench - https://news.ycombinator.com/item?id=49076391 - July 2026 (119 comments)

  • foota 7 hours ago
    Wouldn't it be better to enforce pass via the harness and then measure cost/quality since that's more what people are likely to do?
  • meffmadd 7 hours ago
    Are the raw outputs published somewhere?

    I am currently investigating SCB results and a larger, more representative dataset to work on would be really helpful!

  • thatslast 1 hour ago
    wondering how gemini 4 performs
  • jdthedisciple 7 hours ago
    Finally a serious benchmark!
  • 0xbadcafebee 2 hours ago
    > The full benchmark is hard in a way that matters to me: the agents get the main behavior right much more often than they keep all tested behavior working as requirements change

    So, it's like... software development? 90% of bugs come from unintended consequences of changes after the fact. There's a couple decades of design lessons people had to learn to keep this number low. The agents don't follow those lessons.

    Good programmers rely on structure and reinforcement to prevent themselves from introducing bugs. Today that structure is a combination of software frameworks, SDLC gates, and system design patterns. For example, most any Python programmer can reliably churn out a Django app as a Microservice and be fairly sure it won't be that hard to make, or result in tons of unexpected bugs. The reason isn't that it's some perfect software design. It's that prescribed methods in themselves are bumper lanes, keeping you on track. A few of you may remember what programming was like before popular open source frameworks, or maybe you've worked on proprietary big-iron mega-projects. Left entirely to one's own devices, programmers can make a mess of things. Give them a formal structure and suddenly there's less to go wrong.

    I wouldn't sit around waiting for models to become uber-programmers. Instead I'd treat 'em like humans, and enforce the structures we know have better results. You can try to impose good design as skills (https://github.com/ciembor/agent-rules-books) but the model will still do things its own way. That's why coding harnesses need to intervene and explicitly enforce the structure/framework/bumper lanes. Basically we need 1,000 different Pi extensions that will intervene as the agent codes in order to enforce the correct design. Otherwise we will forever be chasing some "perfect coding rlhf", and still the model will blunder into corners.

  • eivindmeyer 7 hours ago
    why measure something you can just enforce with something like opcore which we have built? https://github.com/the-open-engine/opcore/
  • juleiie 6 hours ago
    Opus did better on medium? Can anyone confirm this somehow? What’s the sweetspot in your opinion?
  • Onavo 9 hours ago
    I wish a company named human layer won't write their reports with so much Claudisms.
  • slopinthebag 5 hours ago
    not suprising. i think we also tend to do better at things when we only expend medium effort.
  • cute_boi 8 hours ago
    The irony is the article is very sloppy. Can we at least write it and review it properly..
    • antipaul 7 hours ago
      This is true. I was unfamiliar with this concept (I use codex/claude daily), and am trying to get to the "bottom line".

      Oh, it's there at bottom under "my takeaway". But I still didn't get it initially.

      Slop Code Bench? Need a Slop Writing Bench too

    • jampekka 8 hours ago
      What's wrong with it? Reads fine to me.
      • a3w 6 hours ago
        There are 36 tests. You can pass 0 or 36 or any number inbetween. Lets give five significant digits of how accurate solving was.

        That is not how data physics work. It should not be how data science works.

  • rinkash 1 hour ago
    [flagged]
  • babaliauskas 6 hours ago
    [flagged]
  • sick_of_slop 8 hours ago
    [dead]