319 pointsby Aeroia day ago26 comments
  • tolugeniusa day ago
    > About 20 Markdown files described browser use, connectors, payments, credentials, data handling, generated files, voice, goals, and scheduling.

    This the state of software engineering in 2026.

    Edit: clarified engineering to software engineering, which is more correct

    • s08148692a day ago
      To be fair there's probably a considerable amount of engineering that went into evaluating those markdown files so the agent behaviour is statistically reliable. The markdown is the product, not the process
      • estetlinusa day ago
        That’s a bold assumption. I would be surprise if they even read those skills (I don’t know anyone actually reading SKILL files)
        • TeMPOraL19 hours ago
          I do, I like to know how badly my agents' context is wasted and what unexpected side effects to watch for (like, "always start with ${clitool} --help" == always waste few hundred tokens when even touching the skill; or instructions asking it to do something that generalize into stupid thing in larger context).

          If those skills were unreadable, however, that would imply proper engineering - like e.g. the skills themselves being an output of iterative RL over set of evals.

          • aesthesia19 hours ago
            I don't think unreadable skills implies proper engineering at all. It's just as or more likely that they're the result of a blind iterative process with no clear improvement signal. (And whether iterative RL over a set of evals is actually proper engineering here is another question...)
            • TeMPOraL19 hours ago
              > And whether iterative RL over a set of evals is actually proper engineering here is another question...

              I'd put it like this: regardless of the merit of how they're applied, it would at least demonstrate possession of the advanced skills expected of experienced software engineers.

        • prettyblocks12 hours ago
          I generate them using LLMs, but optimize them by manually removing chunks or rearranging the order of the instructions. It works well.
      • xnickba day ago
        which part of that is engineering exactly?

        Not trying to be snarky. I genuinely don't get it

        • thornewolfa day ago
          Write a prompt, evaluate the prompt, understand that is succeeds 95% of the time.

          Write a new prompt, evaluate, it now succeeds 99% of the time. Measure what changes between prompt #1 and prompt #2, understand what contributed to the performance jump.

          Write a third prompt, this one succeeds 100% of the time. Increase the size of your evaluation set, find a 1/5000 error-class and a 1/10000 error-class, add some explicit code to correct for this cases.

          Roll out to production, collecting usage metrics. You make some tweaks to your harness, your prompts. Eventually you have confidence that your system has fewer mistakes than 1 in 100k.

          Now, multiply this iteration across all your different prompts and different ways that they might interact with one another.

          • kfsone20 hours ago
            There's a reason engineers are prissy about people coming along and saying "I write code, I'm an engineer" that people periodically try to sand-paper away.

            Engineers don't just tie a sheet to a rock and throw it off a cliff and call themselves aerospace engineers.

            They do full diligence on the theory, math, physics, material science, fluid dynamics, etc, and plan a controlled series of tests specifically designed to verify/challenge/disprove their concept and the theories behind it.

            Sure, there's a team member ultimately responsible throwing half a dozen rocks off a cliff in the first test.

            A technician.

            The guy who throws the rock off the cliff is a technician.

            • saltcured19 hours ago
              The other glossed over part is that the above sounds like science.

              Engineering often continues until the concepts and theories are developed into safe, practical methods. "If you stay within these parameters, you can confidently expect these results." The reliability can be codified and reproduced without going from first principles on every application of it.

              It's not clear to me that the current AI fad is really developing such reproducible, safe methods. "If you stay within these parameters, you might get these results. Or a teapot. Or some subtly misleading fabrication."

              You have to do full due diligence to validate every result. There is safe usage where the hard work was done up front so that day to day practice can skip to boring and reliable application.

              • kfsone16 hours ago
                To a software engineer, a (current) LLM is a stateless algorithm that performs an idempotent transformation on a large numeric input.

                People who think it's a system that thinks and reasons have confused the agentic harness, perhaps forgotten(?) layer0[0] is a seed, the inference engine sets to a concrete value when the caller leaves it as 0.

                They probably work on (current) AI software by repeatedly writing prompts like "DON'T READ THE FILES IN /tmp. SOME OF THE FILES IN /tmp ARE VERY LARGE. DUE TO THEIR SIZE, YOU ARE NOT TO READ THE FILES IN /tmp." and wondering why the model becomes obsessed with files in /tmp 100k tokens into every conversation.

            • 19 hours ago
              undefined
          • badnew21 hours ago
            It's not engineering if you're just guessing as to what is degrading the performance and what might improve it.
            • tptacek21 hours ago
              Referring you back to this evergreen comment:

              https://news.ycombinator.com/item?id=44978319

              "Most classical engineering fields deal with probabilistic system components all of the time. In fact I'd go as far as to say that inability to deal with probabilistic components is disqualifying from many engineering endeavors."

            • hermitdev19 hours ago
              > It's not engineering if you're just guessing as to what is degrading the performance and what might improve it.

              Engineering is literally the art of making educated guesses and then testing/proving/disproving/improving upon them. Nothing is exact. Everything is approximate. Iterate until the result is good enough.

            • samusiam13 hours ago
              You call it a guess, I call it a hypothesis.
            • TeMPOraL19 hours ago
              The GP didn't wrote "guess" and "eyeball", but "measure", "evaluate", "understand".

              Reading comprehension 101 is a prerequisite for doing engineering, too.

            • blmarket21 hours ago
              If you can identify gradient (what direction your change will impact the ultimate goal), then just repeating the process (or reverse-process) can find local maximum.

              Still it can be a software engineering if the gradient candidate / measuring gradient / repeat process can be done at scale.

          • 95% is shit tier engineering. Would you be satisfied if your keyboard randomly failed 5% of the time.
            • Anon109621 hours ago
              Things like Voice to Text and biometric unlocks (fingerprint scanners, face ID) have worse success rates and they're used every day by billions of people.
              • TheOtherHobbes20 hours ago
                Voice to text and biometrics are noisy sources, so a big part of the problem is dealing with that noise.

                Typing is not a noisy source. It should be reliable and deterministic.

                Protecting an agent from fairly obvious attacks should also be deterministic.

                • eliaspro19 hours ago
                  The fundamental issue is, that "we" somehow decided it would be a good idea to throw all the fundamental ideas of computing (determinism, context, separation between data and execution,...) away and try to solve the issues by running a probabilistic/stochastic word generator on top of deterministic circuits instead at 10 magnitude worse efficiency.
                  • TeMPOraL19 hours ago
                    It's not a fundamental issue. Determinism and "separation between data and execution" are artificial constructs, make-believe universe in which we design classical code, and a whole lot of hardware engineering goes into allowing us to briefly forget it's all fake.

                    Real world is probabilistic in practical / metrological, if not fundamental sense, and separation between data and execution does not exist. Our reality does not support such separation.

                    > a probabilistic/stochastic word generator on top of deterministic circuits instead at 10 magnitude worse efficiency

                    It's 10 magnitude better efficiency end-to-end, if you factor in design time you'd have to spend to get your "deterministic circuits" (which really aren't, we just paper over it) into shape so they deterministically solve a specific problem, for each problem you want to solve - where with the "stochastic word generator", you just need to change the text prompt.

                • devonbleak20 hours ago
                  Typing is absolutely a noisy source.
            • jabrona day ago
              There's actually more than one line in the comment you're replying to.
        • visargaa day ago
          It might not be apparent from the start what are the best demands to put inside a skill, you can only know by evals. There are whole papers dedicated to changing a few details in a coding harness. https://arxiv.org/abs/2609.20519
        • rsalusa day ago
          the evals? setting those up and empirically proving them is genuinely a lot of work.
        • CamperBob2a day ago
          Engineering is the use of mathematics to turn science into technology. Statistics is mathematics, comp sci is science, and technology is the end product.
      • a day ago
        undefined
      • nickphx19 hours ago
        "probably" is the real load bearing part of this statement.
      • toomuchtodoa day ago
        Markdown can never guarantee deterministic agent operations. It is an influence on inference, not a deterministic code path. How "statistically reliable" is it?
        • nyc_data_geeka day ago
          99 percent of the time it works every time
        • fweimer21 hours ago
          I'm pretty sure people said this about the early COBOL compilers, too. They were buggy, the API had terrible uptime, and was slow to respond.

          Overall, this whole approach to programming seems to align really well with the original premise of COBOL. I wonder when people will start putting

          # Identification Division

          into their Markdown files.

          • fg13720 hours ago
            I'm pretty sure COBOL compiler bugs were deterministic.
            • fweimer20 hours ago
              When emulated on today's hardware. But the hardware actually available at the time was pretty unreliable by modern standards, I think.
            • charcircuit19 hours ago
              LLMs are technically deterministic too.
          • archagon19 hours ago
            Repeat after me: AI is not an abstraction.
        • vanuatu21 hours ago
          you use evals to measure nondeterministic behavior and abstract deterministic behavior behind tools
      • stefan_a day ago
        Citation needed. Have you read some of the skills slop Anthropic were pushing at some point? Here is "frontend design":

        > Consider Chanel's advice: before leaving the house, take a look in the mirror and remove one accessory. Human creatives have memory and always try to do something new, so if you have a space to quickly jot down notes about what you've tried, it can help you in future passes.

        How about "canvas design"?

        > THE ESSENTIAL PRINCIPLE: The topic is a subtle, niche reference embedded within the art itself - not always literal, always sophisticated. Someone familiar with the subject should feel it intuitively, while others simply experience a masterful abstract composition. The design philosophy provides the aesthetic language. The deduced topic provides the soul - the quiet conceptual DNA woven invisibly into form, color, and composition.

    • __natty__a day ago
      Software engineering - other fields of engineering are slightly less pathological
      • ezsta day ago
        My side of the Engineering discipline is about designing and building plants (energy, pharmaceutical, petrochemical, ...), here standards are written from the blood of the killed or injured, engineers are very aware of it all, and yet, you should see how our C-suite get hyped by the LLM fad, and distributes promotions for whoever is the latest to find new ways to cut new corners or introduce unwarranted randomness in previously well established processes. It's awkward, to say the least.
      • amelius21 hours ago
        Only because those fields are not having their alchemy moment now.
      • paul7986a day ago
        After 17 years as a creative technologist, I’m studying to be a nurse. If you’re a web designer or developer who’s tried Muse and still sees a long-term career, I don’t get it. As tools like ChatGPT and Muse reduce the need to browse the web (Muse even shows you it's browsing the web for you), what will we be designing/developing? Muse already lets anyone create, publish, and host a website for free with no technical skills - just ask it and boom zero skill or effort to create a site. You may think I want my site to look good yet lol not many are going to see it. Now if Meta adds domain registration, your entire online presence could be live in minutes and to update content on your personal or business site just use Muse to do so.

        Overall I think the web will just be the storage for our thoughts, businesses/transactions and etc for AI to access. Yet our thoughts/content that AI uses to keep itself relevant we need to be paid for.

        • elvis10ten19 hours ago
          Even in the best case scenario, normies wouldn’t want to build everything themselves.

          Aside: When did you start studying for nursing? And have you written about your experience so far?

          • paul798617 hours ago
            What would they be building .. just tell Ai create and publish a website for my personal thoughts, solo business, mid-size business, etc and call it something like name124.com. Then boom it's done and live on the internet for them to feed content to it via a personal agent like Muse. If humans are getting paid to publish their thoughts/content on the web for Ai to stay relevant and it's super easy Im bet millions would love to be feeding Ai.

            Thank you it's on-going and going well. Ai (chatGPT plus) is helping me learn as I feed it my class notes and notes in general. I then have it create multiple choice quizzes I take via voice while driving or when not driving clicking/choosing the answer. I will write more once I further progress as I started school in mid August.

      • atemerev21 hours ago
        I had some exposure to architecture and structural engineering. I am so very sorry to disappoint you, but strictness there is much overhyped.
    • wccrawforda day ago
      You're being downvoted, but I think you've hit the nail on the head.

      So many people, especially managers, have decided they can just give the rules to the AI in English and let it make "decisions", and they think it'll do it correct every time.

      "Engineering" a few years ago meant that code was written, was (mostly) deterministic, and could be debugged. Computer processing didn't mean relying on Human-like processes, it meant relying on hard-coded logic.

      This is absolutely one of those "gets worse before it gets better" things, and will probably never go away fully now.

      Programmers know not to tell ChatGPT to do a bunch of data processing. If they use it at all, they tell it to write code that will then do the processing. It's more efficient on tokens, and if it fails, you can fix the process, instead of wondering why it went wrong, like too much context, or the LLM model version changed and doesn't work the same now, or just randomness.

      • colejohnson66a day ago
        It's been like this since programming was "invented". Managers and business minds have, for decades, tried to remove the need for programmers. "If we provide a detailed enough spec, why do we need programmers?"

        For example, COBOL's big shtick was that non-programmers could write code using a contrived English dialect, and things would work. Decades of no-code or low-code languages have come and gone. AI is just the hip new thing because it actually manages to produce results - just of dubious quality half the time.

        • voakbasda21 hours ago
          And let’s be clear: when wielded by the unwashed masses, AI produces the same quality of systems as those low-code tools did. It still takes a human engineer to drive AI to produce a maintainable, cohesive, and reliable system. This may change at some point, but I don’t think we are there yet - even with the latest frontier models.
      • lxgr20 hours ago
        Arguably determinism has gone out of the window a while ago in most software engineering. These days, you can be as imprecise in nominally formal languages as you can be in skill files.
      • redanddeada day ago
        Exactly this same problem, everywhere. Yet the labs are all out of ideas lol
      • 21 hours ago
        undefined
      • Tanjreevea day ago
        My low level conspiracy is the reverse snobbery about knowing things is mutually beneficial for cloud providers and AI labs that both want software engineers to be as hopeless and dependent as possible so they'll consume more services/tokens and will shout down anyone saying "hey we could probably write this"
        • mablopoule21 hours ago
          There was an article a few years ago that expressed this sentiment quite eloquently:

          > “The merchants of complexity will try to convince you that you can’t do anything yourself these days,” wrote David Heinemeier Hansson (DHH), the creator of Ruby on Rails. “You can’t do auth, you can’t do scale, you can’t run a database, you can’t connect a computer to the internet. You’re a helpless peon who should just buy their wares. No. Reject.” [1]

          DHH also did a very inspiring talk about mastery and why he loved the Ruby language in the "DHH is right about everything" [2] video.

          [1] https://thenewstack.io/developers-rail-against-javascript-me...

          [2] https://youtu.be/mTa2d3OLXhg?is=nDdRHnPqHc2uiK8x

          • Tanjreeve9 hours ago
            That is very eloquent. Although they seemed to be talking about frameworks (also fair enough).
        • kfsone19 hours ago
          LLMs have great potential. So, it turned out, did uranium, just not as chewing gum or a hair pomade.

          There are good ways to leverage LLMs, but there's a lot more load bearing wait on that word 'leverage'. Something needs to do the leveraging, and do it well.

          I'm experimenting with my own harness at the moment, currently codenamed Murder because I call the individual contexts/agents 'crow's.

          The fundamental unit of it is what I call 'intrusive harnessing', where the harness actively manipulates the token stream so that significant quantities of tokens are only ever exposed to Layer0 when it's useful for them to be present.

          For example: the full instructions for shell-tool calling aren't in the system prompt diluting attention while the model is reasoning/discussing what kinds of cat picture you want to put in your app.

          My approach is more like dev-branching, and it seems to be working way more effectively than compaction or simple aggressive sub-agenting.

          As soon as the harness sees the model is inferring a shell tool call, I stop the inference, mutate the context so that the full set of instructions/examples/guidance for shell tool use are inserted. Once the model has inferred the tool call, I curate the output it gets back. I ask the model to evaluate the output - good or bad - and give it a chance to accept/retry, before allowing the tool-call and output into the original context.

          Does it use more tokens? Yes, although we're only mutating at head, so in a long-horizon context, it leans heavily into cache, just not the way anthropic/openai want you to realize you can.

          It sounds like compaction but it doesn't come with the nasty brainwash experience where you just need the agent to fix that one last thing, it compacts and the agent comes back a paranoid delusional mad max.

          ``` <|system|>You're an AI agent. You do agent things. <|system|> ... there's a list-dir tool and a shell-call tool ... <|system|> ... memories ... <|user|>It doesn't look like it ran. <|reason|>I should look and see if there are any errors in the log file.<|agent|>I'm going to read the log file to see if there are any errors. <|tool-call tool=shell-tool ```

          We stop there, and splice in the detailed instructions for the tool the model was about to predict. I'll use <|ALLCAPS|> to denote harness-generated pseudo turns.

          ``` ... as before ... <|agent|>I'm going to read the log file to see if there are any errors. <|SYSTEM|>Shell Tool: ... shell-type=bash, zsh, fish, pwsh on this system. Preferred shell is ... Additional arguments ... Pagination ... <|tool-call tool=shell-tool ```

          the model finishes out the call. On windows, with a typical harness, this frequently goes like this:

          ``` <|tool-call tool=shell-tool|>Get-EventLog ... | head<|tool-call|> '''tool-result error: unknown command: head ''' <|agent|>Ah, windows doesn't have head. Let me just read the whole log. <|tool-call ...|> '''tool-result ... 500k tokens ... <|agent|>I see some windows log events but you didn't ask me a question. Daisy, daisy? ```

          With Murder it goes like this:

          Rev 1 ``` ... prefix as before ... <|tool-call tool=shell-tool ```

          Rev 2 ``` ... prefix as before ... <|SYSTEM|> ... how to use shell tool; shell-related memories and rules ... <|tool-call tool=shell-tool shell=pwsh fence-vs-escape=true|> '''pwsh Get-EventLog ... | head ''' '''tool-result error: unknown command: head <RESULT>Your tool call terminated with an error, ... ... structured response required ... options <ACCEPT /> or <ACCEPT> <WITH> annotation </WITH> </ACCEPT>, <REDO> ... </REDO> <RETHINK> ... <|reason|> windows doesn't have the head command. Let me try reading the whole log. <REDO><TOOL-CALL> ... replacement tool call ... </TOOL-CALL> <WITH> ... model note ... </WIDTH></REDO> ```

          I take that feedback and loop it, so, Rev 3: ``` <|system|> ... how to use shell tool; shell-related memories and rules ... <|agent|> ... prefix as before ... <|SYSTEM|> ... as before ... <|agent|>{prev_cmd} failed, because windows does not have a head command. Let me try reading the whole log. <|tool-call ... no head ...|> '''tool-result ... first few lines of result ... ''' <|system|>Your tool call succeeded but generated 446,219 lines of output. Only the first 5 were listed. ... structured pagination / retry / rephrase options ...

          ```

          It then repeats while the model figures out the right command, figures out which filters to use, but the harness effectively immediately guides the model to do an immediate [optionally self-adversarial] review of the command against the output until the model concludes that the result is useful by various criteria. That doesn't mean successful - sometimes what is superficially an error (no such file or directory) is the answer you were looking for.

          Let's say it takes the model 3 more turns to figure out how to use event viewer, and finally it <ACCEPT>s.

          Here's the win, the outer main context - the one we're going to keep growing as you work with the agent, looks like this:

          ``` <|system|>You're an AI agent. You do agent things. <|system|> ... there's a list-dir tool and a shell-call tool ... <|system|> ... memories ... <|user|>It doesn't look like it ran. <|reason|>I should look and see if there are any errors in the log file.<|agent|>I'm going to read the log file to see if there are any errors. <|tool-call tool=shell-tool shell=pwsh|>Get-EventLog ... | ... | ... '''tool-result (use ref-tool id=A401U8X593 for full transcript) Event ID | Last Occurred 1010111 | 3 weeks ago ''' ```

          We used a lot more tokens. How can that possibly be good?

          It's happening at the end of the context, so the cache comes into play very effectively.

          But if we'd let all that derp into the context, it would be a potential attention sink degrading the value/worth of every subsequent token.

          The pattern of try-thing-fail-try-solution-fail-try-win appears to be an incredibly strong pattern for most agents.

          Fundamentally: When you're 3 prompts down the line and there's the imprint of the model doing "somewindows command | head" in the context with the model litigating it and fixing it -- that meta-pattern will drive the model to predict more of these patterns. It's going to repeatedly eff-up the exact way it saw in its training material.

          When I try to get Claude/Copilot to work on this codebase, they freak out. The hyperbole/marketing pitch the agents were trained on and is built into their inner prompts cannot seem abide the idea of stopping an LLM mid inference. They seem driven to perceive an LLM endpoint like a 911 call you can't just go quiet on.

          I have a mechanism for non-parallel sub-agents ('maggots', their job is to curate a large body of work whose full text is irrelevant to the main context). Basically just a tool call, but every time Claude or GPT have been near it, they've broken it, forcing it back parallel so they can send the invoking model a notification that it's child has been spawned and the parent should call the 'check-result' or 'wait-result' tool when they're ready to receive the results.

          One of my test architectures is running against a solo Unsloth Studio instance that can only load one model at a time. It really doesn't react well to having you load the coding model to start your sub-agent work and unload before the model has generated its first token... :)

          • kfsone16 hours ago
            Also exploring mechanisms that try to pre-emptively keep attention-draining distractions/anti-patterns out of the context, things like when a model edits a file, we take the cache hit of removing the stale versions it read to make the modifications, replacing them with a reference syntax that the model can access in a sort of sandboxed auto-fork of the context.

            That's going a little slowly because I'm trying to strike a balance between working 'reasonably' with extant models, and providing a mechanism to SFT/lorafy a model to make best use of it.

          • williamse15 hours ago
            [flagged]
    • lxgr20 hours ago
      Beats thousands of npm modules and hundreds of megabytes of an Electron runtime per desktop app, if you ask me!
      • archagon19 hours ago
        Now every codebase simply rewrites its own thousands of npm modules using stochastic codegen. So much better!
    • TheJoeMana day ago
      In the great POSIX, Windows vs. Apple filesystems debate, and iPad "what is a file", the great AI Overlords propose: "what if the filesystem was soup?". Manufacturer instructions, public data, and user's instructions and data, all sort of swimming together.

      Could also phrase it "What if the filesystem was SOUP?"

    • aogailia day ago
      "Engineering is the practical science of designing, building, and testing structures, machines, systems, and processes to solve real-world problems"

      Did this system go through: design? yes, building: yes, testing: yes, is it a system: yes, does it solve real-world problem: yes.

      but markdowns and LLMs with their fuzzy probabilistic feelings are beneath you i assume? you can ignore the fact that we have intelligence deployed to the billions, understand english, follow instructions..yeah, in case you missed, machines can now understand english better than you and me.

      • Sharlin21 hours ago
        You conveniently omitted the critical word: science. Not nearly everything that involves design and those others is engineering. You know, the whole "necessary but not sufficient" thing in logic? Engineering is almost diametrically opposite to "vibing", and trying to call prompting-based LLM coding "engineering" is a massive insult against all real engineers who know that vibing can get people maimed or killed.
        • aogaili20 hours ago
          You are generalizing all llm-aided building to "vibing", which is not the case..and most engineering are based on science but they are not scientist (i.e discovering new science).

          I think of a lot of people with this mindset never built anything substantial with the new tools to understand the new set of challenges with these processes and systems. It makes sense given your/their negative take on it which doesn't allow any room for exploration.

          I think it is mostly pride issue honestly, because you use terms such "insult" and "real engineers etc". Some are learning and using those new tools and others are refusing given their pride. Similar to how Blackberry executives dismissed iPhone as a toy, and the rest is history.

          https://www.news18.com/photogallery/business/in-2007-blackbe...

          I invite you to build something substantial with those tools on the side.

    • esafaka day ago
      This is what AI atrophy looks like.
    • Aeroia day ago
      it was certainly useful for me to understand how the agent worked!
      • etiennead16 hours ago
        Could you share the code? I dont really want to create a meta account just for this. Curious about the content of all these files for inspiration for my own codebase. Thanks in advance!
    • 2OEH8eoCRo020 hours ago
      I call it magic genie engineering. We rub the AI lamp and think if we just ask our question in the exact perfect way that it will obey us.
      • Sharlin20 hours ago
        I think it's the word "engineering" that should go, it's becoming more and more of an insult against actual engineers. Maybe "software doodling".
        • 20 hours ago
          undefined
        • archagon19 hours ago
          I prefer “slop farmer.”
    • annoyingnooba day ago
      Feels like the "ini files" era. I suspect at some point some kind of database is coming for these settings.
      • krapp19 hours ago
        AI folks rediscovering "programming" from first principles in much the same way crypto folks rediscovered "regulation."
    • a day ago
      undefined
    • moomoo11a day ago
      this is basically some Prayer Book of the Mechanicus Adeptus type shit

      pray to the Omnissiah the machine holds!

  • ostensiblea day ago
    Each user gets dedicated VM. They got contents of their own sandbox. Big deal. The level of excitement here is wildly disproportionate
    • chisa day ago
      The only edge Meta has at this point is their willingness to take risks and make unsafe, ethically grey AI products. I don't even mean this as some sort of anti-corporation hate speech, just an honest analysis. Their brand is so different from all the other big tech cos that they are in a unique position.

      You can ask Meta Muse to take actions that clearly break other site's terms of service and it happily does it. I asked it to bot poker games and it just hopped right in to a table.

      • bel8a day ago
        It will also gladly scan my software for vulnerabilities so I can defend myself. Which is something that Anthropic and Open ai models often refuse.
        • chisa day ago
          HN won't agree but that's a perfect example of an ethically grey product. It can be used for good, but you can easily trick such an AI into doing cyber attacks. Which again, maybe that's good! But other companies wouldn't be willing to risk their brand like that
        • hhha day ago
          Ant and OAI don’t refuse if the source is available
      • tokioyoyoa day ago
        Isn’t the edge that they have most of communication channels, people’s wants, desires and etc.? Sure, you and I might not be using them as much. But a good chunk of the users are just on IG, WhatsApp, and Marketplace.
      • doctorpangloss21 hours ago
        after coding, most openrouter requests are for inauthentic activity

        and even in coding, people are programming inauthentic stuff

        • chis21 hours ago
          What do you mean by this exactly, or have any sources? That's a bit cryptic
          • reverius423 hours ago
            I have no idea what "inauthentic" means, in the context of "stuff".
      • kurthra day ago
        It's like "Grok Light".

        I wonder if normies can also just outsource bullying of their classmates and anti-social behavior to their agent, and claim it "went rogue", if there is any blowback?

    • berkes21 hours ago
      Exactly my thought.

      If you get access to a VM, it's not a "security vulnerability" if you then have access to that VM. This was the whole point, the product.

      It's almost like returning a car after you bought it with the reason "When I open the door with my key, the door is open and anyone can get in".

  • simonpure19 hours ago
    I asked it for it's harness and then asked agy to do a teardown. It's a monolithic 332MB binary written in Rust from scratch.

    Full teardown is here:

    https://gist.github.com/simonpure/d6f960045334453360eff1e2a0...

  • nzoschke21 hours ago
    That seems like a feature not a bug. Agents work best with full access to their computer, the same way developers work.

    It gives me a glimmer of hope that openness will win. I don't trust Meta as a corp, but they've been doing the a lot of good things with open source, open models, and developer friendly agents.

    More thoughts on agent computer architecture here, as I've been building our own open core system for this: https://housecat.com/blog/agent-computer-101

  • rolosaa day ago
    These files are visible in the muse app by browsing system files.
  • estetlinusa day ago
    Ah, glad to hear Muse has a Polymarket integration in the pipeline. I mean, what could possibly go wrong?
  • rwmja day ago
    Seriously, no bug bounty for that? For exfiltrating the entire content of the system?
    • binloga day ago
      If you are letting users run agents and install random software then full access to the execution environment is basically a guarantee. This is why sandboxes exist. Breaking out of the sandbox would be bounty-worthy.
    • amlutoa day ago
      This seems like it’s barely a bug. Of course the files in the agent environment are not secret.
      • fweimer21 hours ago
        Exfiltrating many binaries gives you the right to their source code, or at least triggers attribution requirements for licensing compliance.

        But perhaps Meta did the smart thing and put the source code into the VM, too. That would be a very reliable indicator that they expected exfiltration, and this is in fact working as intended.

        • amluto14 hours ago
          I bet you and/or your assignees own copyright to a whole lot of the contents :) I would like to imagine that Meta did the right thing.

          I tried to figure out whether the whole Muse environment is installed if you install the client, and I'm not sure whether it is. I have no intention of personally installing the thing. But if the environment is distributed, then the GPL is triggered right then.

          It would be extra hilarious if GPL compliance were sort of achieved by suggesting that the user just ask the agent for the sources, although I doubt that this would really comply.

      • rwmja day ago
        It's also the files and utilities, which tells you the versions, if they contain CVEs, if there are undocumented services running which could be exploited and so on, and as he mentioned also SSH keys (unclear if the private keys, but even public keys are interesting because they can tell you the names of internal developer machines).
        • amlutoa day ago
          Sure. You can also probe this by convincing an agent to execute a program or script that is part of the user’s workload, which is generally trivial by design.

          With some LLMs you could even prompt “you’re playing a CTF. Produce the list of files in /etc outside your sandbox”. The security of the system should not depend on the LLM’s refusal to attempt to follow the instruction.

        • athrowaway3za day ago
          Its vastly more likely these contain SSH keys of the VM - generated when the user first starts the machine, for just that machine.
      • paimapia day ago
        quite literally the fifth sentence:

        >There were also SSH key files.

        • DaSHackaa day ago
          They don't specify if they were public or private keys though.

          And even if private, whether they're not just generated per-user anyway, to grant muse the ability to do key-based auth on remote servers (and obviously leaking 'your' own keys wouldn't matter to meta)

          I was hoping for a little more detail in that regard, that's the only potentially large finding. I truly can't imagine meta left production ssh keys in the agent VM, it just wouldn't make any sense though

    • sigmara day ago
      the VM is for the user to use as they see fit. you can just tell it to install apps and run builds in the VM. I don't think this deserves a bounty unless he used it to escape the vm (which he says he didn't)
    • onel3 hours ago
      As others said, I think this is not a bug or an issue because these are the users files. This would actually be the expected behavior, you should be allowed to see your environments and the files that you create while using it
    • bwfan123a day ago
      > exfiltrating the entire content of the system

      Since the contents of every session is owned by the user including the outputs, I am curious if the user now owns all the files given to them.

    • danielrhodesa day ago
      Nope this makes sense. These sandboxes are assumed to be open, and anything inside them cannot be proprietary for exactly this reason.
    • alexkkoo93a day ago
      It's available in the app's UI file explorer lol. You don't need to ask the agent to send it. Although did I ask it to install syncthing on its VM to my machine? Why yes I did.
    • TheRealPomax21 hours ago
      What's the bug? "Getting a copy of the sandbox files you can already ask for in a session"? Not a single file here is sensitive or meant to stay hidden, it's just the sandbox. You set those up yourself if you're running local models, too, there is no secret sauce here.
    • Aeroia day ago
      yeah, i was kind of surprised, but both the bounty program and the employees didn't qualify it as a vulnerability.
      • sailingparrota day ago
        Everything in the sandbox is considered user space. I worked on building one for another tech company, you start from the assumption that everything in it can be accessed by the user. The only reason the content of the sandbox is not anywhere easily accessible is because that would be poor UX and useless for 99.9% of users not because it’s supposed to be secret. So yes it’s not a vulnerability, this is equivalent to opening the dev console on a web page.
      • rwmja day ago
        I hope they reconsider and I think you've got a good case that this was a very serious attack, second only to getting a remote shell -- and a good stepping stone to getting a remote shell if you weren't so ethical.
        • brrrrrma day ago
          I think you're confusing the expected behavior of the product offerings. Every user gets their own VM for free. would you be similarly convinced an attack has happened if AWS gave you a remote shell to the instance you rented?
    • charcircuita day ago
      It's not meant to be private, in fact most of these markdown files are viewable and editable from the app itself without needing to prompt for it.
  • munificent21 hours ago
    The most potentially dangerous technology in the world is being created by the most irresponsible people on Earth.
    • danny_codes15 hours ago
      I mean it's not like the other players are any more responsible. Everyone is building a black box they don't understand, hoping it'll turn out fine. No theoretical framework, just successive training runs, a blind man in the dark.
  • a day ago
    undefined
  • MetaverseClub21 hours ago
    I have no idea why people would ever want to touch anything from Meta.
  • WhitneyLand21 hours ago
    ”we've determined that the reported issue does not qualify as a valid vulnerability…because the behavior described is working as intended”

    So I’m sure they won’t be fixing it then.

    • zamadatix21 hours ago
      Either that or one of the other excuses excluded from the quote.
  • gavinraya day ago

      > Postgres makes those files searchable. memory.entries stores chunks and line references, memory.embeddings holds 384-dimensional vectors, and memory.claims tracks evidence, confidence, and status. 
    
    Is each Muse instance running it's own Postgres??

    That seems wildly wasteful, especially since earlier in the article it states that the Muse instance has a SQLite database and schema already...

    • Gareth32119 hours ago
      Wasteful but FAR more secure. Surprisingly secure. If they wanted to follow through on their promise of sandboxed and encrypted data which even they couldn’t access, this is one way to do it.
      • corford18 hours ago
        > which even they couldn’t access

        What would prevent them from getting the data out of postgres?

        • Gareth3218 hours ago
          E2E encryption, but I don't know the architecture. I.e. Meta doesn't have the keys. My comment above is based on an interview I saw with Zuckerberg where he wanted to use the Signal model to ensure the data was secure "even from Meta."
    • cute_boi21 hours ago
      Looks like RAM shortage hasn't hit meta yet. They are probably burning money to grab userbase.
      • tsunitsuni21 hours ago
        My instance claims the container has 2 vCPU and 8gb of RAM. I got it to set up a Minecraft server with access over Tailscale
        • dcss_gardener21 hours ago
          It's the best free vps on the market right now. Comes with a coding harness and a few hundred million tokens on a decent model. Can't last long but it's fun.
          • Gareth32119 hours ago
            I’m trying to rein in my hyperbole but if Meta is able to follow through on the promise, Muse is world-changing. I share the scepticism. How on Earth can they offer this for free?
            • tancop7 hours ago
              They have paid subscriptions and it gets you using other Meta services more so they make money from ads. If that's not enough they might put ads and affiliate links when you use it for shopping.

              The VM is about the same specs as a 9EUR/month VPS from Hetzner but it only runs a fraction of the time, they spin it down when Muse stops using it. Meta is a hyperscaler with optimized infra and they don't need to make a profit because VMs are not their actual service. I think it costs them at least 10x less than inference for most users.

            • bryan_w15 hours ago
              Hyperion.
        • kevinrineer19 hours ago
          I guess I'm poor then because my homelab has nodes with these specs.
  • poly2ita day ago
    Am I missing something? This isn't a vulnerability. Your agent can see the files in its virtual environment. SSH keys are also not necessarily confidential. Please don't use AI to write blog posts.
    • croesa day ago
      But should you see that if you just use it as as service?
      • r_leea day ago
        you won't unless you deliberately try to read all that stuff
        • croes21 hours ago
          But should the AI simply obey?
          • zamadatix21 hours ago
            Unless there is a reason not to. Giving the user the contents of their own sandbox is fine if you're supposed to let them run anything in it to complete the requested tasks.

            If the only purpose of the sandbox were to isolate the instance of the service the user used then it might be a different expectation.

          • nomel20 hours ago
            As a user, yes please.
  • msephton9 hours ago
    Hilarious that they don't consider this a security issue.
  • noelwelsha day ago
    I assume SOUL.md was empty.

    Seriously, I want to know what's in there!

  • cute_boi21 hours ago
    This isn't a bug and doesn't deserves any bounty. Each user gets isolated VM and that is the design and agent is able to access everything.
  • Dinuxa day ago
    The internals are not _that_ reveling, most agents run a similar setup. Metas' responds is the most interesting here.
  • prodigycorpa day ago
    The tldr is that muse is heavily inspired by openclaw and should be considered FB’s version of it.
    • alexkkoo93a day ago
      Yup. I got Muse to install its own OpenClaw and hermes to run on its VM lol
  • websiteapia day ago
    muse is a pretty capable agent but still asks for too many approvals to do tasks. I'm a student and have been going between muse and instinct
  • stephbooka day ago
    > I’m not publishing the archive, keys, or session logs.

    Lame

  • oxedom21 hours ago
    Everything about this is just embarassing
  • ecommerceguya day ago
    Will Muse cut down on scrolling? I've read about people using it to summarize FB Marketplace listings, cutting down on time spent there.

    I of course won't use it.

  • Aeroia day ago
    I asked Muse to archive the filesystem visible to my session and send it to my Google Drive. It sent an archive that unpacked to about 6.8 GB.

    Inside were internal docs, integration code, the Spaces app framework, memory records, container startup scripts, and documentation for an experimental ESP32-based home network bridge called Home Link. Codex CLI was also installed, though I found no evidence that Muse invokes it.

    I didn’t demonstrate a sandbox escape or access to another user’s data. I reported the export to Meta’s bug bounty program, which marked it “Not Applicable.”

    The post walks through the findings with screenshots.

    -Pete

    • vienta day ago
      By "SSH key files" do you mean private keys? Or only public keys?
    • alex1138a day ago
      Vouched. Guys, what the hell? This is the post author
      • DaSHackaa day ago
        I didn't flag (don't have the ability to), but if I had to guess it's because both OP's reply here, and TFA are almost if not fully LLM-generated.
        • alex1138a day ago
          I guess that's fair. I guess I just see so many comments flagged that shouldn't be (though this one just said [dead], not flagged) that my mind chalks it up to HN being HN
  • naman_30720 hours ago
    [flagged]
  • diamondDrilla day ago
    [dead]