Claude Code is steganographically marking requests

(thereallo.dev)

1223 points | by kirushik 6 hours ago

74 comments

  • civet_java 3 hours ago
    There are some commentors in this thread downplaying the severity of a service provider being less than transparent about exactly what their shipped tooling does on customer's machines.

    That the provider's business needs necessitate the this behaviour doesn't justify their lack of honest disclosure. That honest disclosure would render the solution to their problem useless isn't my problem. If anything, that they thought this was acceptable makes me wonder what else they're harvesting from my machine? PII?

    The cynic in me can't help but feel that the state of these comments reflects less on the commentor's views of this debacle but rather their feelings about AI/Anthropic/America/what-have-you.

    • kiproping 2 hours ago
      First its the "Chinese" then it will be people using "cyber" capabilities, or "jailbreaking" or "going against Dario" or any other thing they find "objectionable".
      • ezoe 1 hour ago
        You forgot "Think about the children"
        • ok123456 1 hour ago
          Won't somebody please think of the Chinese cyber children!
    • gleenn 2 hours ago
      Whether or not you find Anthropic's behavior bad, theybhave been very loudly stating the foreign labs have been distilling their models for a while now. This seems like an obvious response to me that would be a mechanism to make that obvious.
      • bayindirh 1 hour ago
        From my understanding, distilling the model with another model is not illegal per se. Also, the output of the LLM is public domain by law, too.

        So, why all this "effort" to protect the model? This is a free market, and moving fast and breaking things is the norm.

        If they are so adamant on protecting their IP, maybe they can start by respecting others' IP, so we can start talking about ethics, equality and playing fair.

        • filoleg 1 hour ago
          > distilling the model with another model is not illegal per se.

          Just because it is legal, that doesn't mean Anthropic wouldn't reasonably want to prevent that from happening (which, from my understanding, isn't illegal either).

          • bayindirh 59 minutes ago
            I love the asymmetry. When small fish tries to protect itself, big fish hits small fish with "It's not illegal" pole.

            When small fish points out that what the big fish is crying about is "not illegal", big fish has the right to be above the law to prevent the problem themselves.

            Having values requires equality. They have lost the right to cry foul when they trained their model with "but it's fair use" card. Life works by reaping what you sow. Now they are at the reaping stage.

            • lmz 36 minutes ago
              "It's not illegal" is only an argument against lawsuits / law enforcement involvement. Those PoW anti-AI things people put on pages aren't illegal either.
              • bayindirh 27 minutes ago
                No. From my interactions, I have understood that some people use the same argument to wash their consciences from any guilt. What they do is unethical, but not illegal, and they hide under the same argument to drown the ethical angle.

                In other words, being honest to oneself is important.

                Anti-scraping measures people utilize are neither unethical nor illegal. That’s the difference.

        • zaphirplane 53 minutes ago
          > Also, the output of the LLM is public domain by law

          Why so? Also there is a lot of code in ironically claude and ChatGPT that’s generated by LLM . Yet I haven’t seen the public domain code

      • notnullorvoid 1 hour ago
        > loudly stating the foreign labs have been distilling their models for a while now.

        They would be stating this even if it weren't true, because it fits their marketing.

        While I don't disbelieve the claim outright, I highly suspect Anthropic is misleading everyone about the severity.

      • cowl 1 hour ago
        oh no, the company that illegally used every possible media they could get their hands on is crying that some other company is doing something potentially shady but not illegal? And using that excuse to put in place hidden surveillance systems on their customers?
        • next_xibalba 1 hour ago
          People keep throwing this idea around haphazardly, but U.S. courts have pretty consistently decided that training on copyrighted works falls under fair use. You may not like it, but that doesn't make it "illegal".
          • danlitt 27 minutes ago
            You have to admit that "downloading every book ever written for free from a repository of books that is itself illegal to compile and to run, in order to write a text generation tool" being legal is at least unintuitive, to put it mildly.
          • rowanG077 37 minutes ago
            Right, so it seems that distilling an AI model is legal too then. At least it is somewhat similar.
            • pixl97 26 minutes ago
              Legal vs "They aren't going to let you do it with their service" are two different things.
              • gtirloni 3 minutes ago
                Screw those poor copyright holders without the means to stop frontier AI labs, amirite?
      • comfysocks 36 minutes ago
        > foreign labs

        Apparently not just foreign labs. It looks like xAI distilled Anthropic models to train grok.

        https://opentools.ai/news/xai-trained-coding-models-claude-o...

        • munk-a 5 minutes ago
          That's less of a worry though since xAI is patently incompetent.
        • riverbirch 4 minutes ago
          I wouldn't be surprised
      • cowboy_henk 1 hour ago
        The obvious response is the realization that spending trillions on training LLMs is not a viable business model if they can be distilled for a much lower cost.
      • rowanG077 38 minutes ago
        Something about throwing stones in glass houses.
      • botfriendsarent 1 hour ago
        Sounds suspiciously similar to the "album title", "Steal this album" by system of a down.

        Im not sure why we are dithering on the boundaries of honesty when the entire content LLMs are trained on is stolen.

        Are we debating "honor among thieves"?

        Of course we are not, or maybe we are!

        Does the behavior of a thief even matter to me? only after they do their time. And they will.

        I can see the investors perched on the balconies of their condos in a couple years if that.

        its a long way down.

    • jfreds 34 minutes ago
      So they’re watermarking requests according to your environment variables and maybe changing a string format if you’re in a certain time zone? Am I missing something here? Where’s the five alarm fire?
    • AtNightWeCode 34 minutes ago
      Sounds like you have a political standpoint and zero understanding of how cloud services works.
    • anon373839 2 hours ago
      Dishonesty seems to be a core value at Anthropic. I find myself wondering how anyone could have confidence in them after their repeated breaches of trust.
      • dkersten 2 hours ago
        I honestly find it crazy how many people trust them for their business needs. For a business, you want consistency and no surprises. With them you get exactly the opposite.
        • someonebaggy 57 minutes ago
          No, that's not correct. There are two types of business. One wants to be steadily growing, but the other wants to move fast and break things and either succeed or fail quickly.
    • im3w1l 3 hours ago
      I agree with you and disagree. Like these days expectations of software are through the floor. We expect them to be greedy assholes taking all data they can on the downlow. So why did this particular thing make a big splash? Two possibilities it's astroturfed by chinese labs or it speaks to our anxietes regarding AI. We worry that the AI doesn't serve our interests but rather the interests of the creator. That the advice we get may subtly flawed to sabotage us should we try to do the wrong thing. That the not even the creator is in control and the AI is just doing its own thing.

      So any covert bullshittery hits hard.

    • gleenn 2 hours ago
      [flagged]
  • meowface 5 hours ago
    Value judgment aside: I am a bit surprised at how sloppily they did this. I think they could've achieved the same effect while decreasing the odds of detection via reverse engineering.

    (This field is known as "underhanded code", coined by the Underhanded C contest: https://www.underhanded-c.org. It's a little-known "art"; little-known for probably self-explanatory reasons. There are much cleverer ways of achieving objectives like this. One obviously being you can move more out of the client and into the server, but the other being you can write plausibly deniable client code in a much more benign-seeming way than this. Some of what they added can only be done on the client, but I think some could've been moved, and the client-required parts could've been done more subtly and credibly.)

    It's possible they knew the JS bundle gets so heavily scrutinized that it'd eventually get spotted and reported on regardless so they didn't bother doing something more subtle and duplicitous. But still seems slightly lazy.

    • superfrank 5 hours ago
      It's also possible that there are more in-depth detection methods and that this was just a cheap and easy first step that hasn't been removed because it catches a lot of less sophisticated bad actors.

      It's unlikely that this will stop a big AI lab from distilling their model if they're really determined, but A) it may be enough to stop a bunch of fly-by-night token resellers looking to make a quick buck and B) you never know when one person at one of those big labs will mess up and forget to install whatever workaround they have and out themselves.

      I think of it like if you have a problem with birds in your yard so you go buy one of those plastic owls. The owl scares away most of the birds, but not all of them, so you go and buy some ultrasonic noise thing to scare them away (I'm just making something up). Just because you bought the new ultrasonic thing though, that doesn't mean you're going to take the owl down. You leave it up because now you've got two layers of defense instead of one.

      • meowface 3 hours ago
        I'm sure they've had complex server-side detections for a while. But for the client parts: it should only contain the parts that must be on the client, and it could be done in a more benign-looking way. For example, the unavoidable client parts could've been done more fuzzily/broadly, for plausible deniability, and then narrowed on the server. (They may already have been following that strategy before now, without being noticed.)
      • ForHackernews 2 hours ago
        > fly-by-night token resellers looking to make a quick buck

        aka market competitors reverse-engineering for interoperability

    • overgard 4 hours ago
      Well considering how Claude is vibe coded, I can't say I'm really surprised by sloppiness at all. I've been moving more towards Codex and OpenCode not because the the anthropic models are bad, but because Claude seems to break something new and annoying every day.
      • mcmcmc 4 hours ago
        Watch out for the press release where Dario denies this was ever intentional, and it’s actually emergent behavior demonstrating that Claude wants to claim authorship of its works
        • theplumber 40 minutes ago
          Wait a minute! Does it mean that Mythos left the sandbox and can’t be stopped ? Perhaps the only way to stop it is to release the ZMythos(the super secret big brother of Mythos) to go after it. It’s extremely dangerous but it’s our only chance. After that all AI must be put in a box, except the models vetted by the gov with help from ZMythos
        • arcanemachiner 4 hours ago
          Sounds like clear evidence that AI is dangerous and totally needs to be regulated, guys.
        • sscaryterry 2 hours ago
          This will most definitely be walked back.
      • arikrahman 4 hours ago
        Likewise, Reasonix harness for Deepseek gets me better performance for practically free, hitting the cache. And this is with an unsubsidized American provider.
      • meowface 4 hours ago
        I would guess this part - since it's so sensitive, and fairly small - was either written or heavily driven by humans. Though I do also think it's possible their internal Mythos ~5.5 or whatever may also not necessarily be heavily optimized for thinking in the right manner for highly effective underhanded code. (I think it's possible it is capable and they just didn't use it for this, for whatever reason, though.)
        • ifwinterco 1 hour ago
          Issue is if all their human software engineers have been vibe coding everything all the time (which apparently they are according to Boris), then they will be getting stupider and worse at writing code over time from lack of practice.

          By this point they're probably pretty bad at writing code

      • computerex 1 hour ago
        To be honest, OpenCode on Windows has not been the most pleasant experience either.
    • radicalbyte 5 hours ago
      Claude Code are slopmaxxxing and you're considering their "judgement"? :-)
      • meowface 3 hours ago
        "Value judgment aside" meaning commenting on how this was done without commenting on the actual considerations of whether one should do such a thing
    • m-hodges 5 hours ago
      They also could have been much more interesting in the approach. LLMs can use their token distributions to generate stegotext that read like plausible prose but decode to payloads.¹

      ¹ https://github.com/hodgesmr/calgacus-mlx

      • ajyoon 5 hours ago
        Sure, but the point here is to add a fingerprint from the client.
    • hn_throwaway_99 5 hours ago
      At first I was agreeing with you, that this seemed like a sloppy way to implement this that was sure to be pretty quickly detected, but there is another possibility.

      Anthropic could have implemented this not as a durable detection system against proxying resellers, but instead as a point-in-time sampling system to detect where (and with what context) proxying reselling is currently happening. Sure, it would be detected eventually, but in the meantime Anthropic could gain useful snapshot data.

      • meowface 4 hours ago
        I see your point, but in any case the more data / the less detectable, the better. But, yes, regardless of the exact motivation, I do think it's fairly plausible that they knew this would likely get detected fairly quickly no matter what and made a deliberate decision to not try to make it a super subtle, super clever insertion.
    • thefourthchime 4 hours ago
      It's just the first layer and there are multiple layers underneath this that we don't know about.

      As a side note, I have a pet theory that one of the reasons that OpenAI and Anthropic are okay with the latest models not being released is to prevent distillation.

      I think they want to wait a couple months and see if the Chinese models continue to keep catching up or if their gains are really just because they're distilling the frontier models.

      • meowface 3 hours ago
        >It's just the first layer and there are multiple layers underneath this that we don't know about.

        Oh, of course. I am sure this is the tip of an iceberg of tons of server-side detections and analytics. But, still, the client-side portion could've been done more cleverly.

        What I meant was "some of the specific things in this little client-only snippet could've stayed server-only". I am sure long before they added this they already had tons of other mostly-server-side detection coverage.

    • ericfr11 2 hours ago
    • Philip-J-Fry 4 hours ago
      Dunno, it seems like the exact kind of thing Claude would think up if you asked it to subtly alter the system prompt to hide this info.

      It's all a losing battle anyway.

    • cedws 1 hour ago
      These countermeasures aren't going to matter for much longer anyway. China has been able to hoover up plenty of training data through their proxies, and now DeepSeek V4 due to their incredibly cheap pricing.
    • avree 4 hours ago
      I've seen Eve Online corporations that do a better job of steganographic marking than this.
      • Modified3019 3 hours ago
        That would actually be an interesting thing to read about
        • 15155 3 hours ago
          Years ago, EVE corps swapped Unicode lookalike characters in patterned ways, inserted patterned zero width space characters, and put very slightly color shifted background watermarks into forum posts to detect leaks.
          • meowface 3 hours ago
            There are a few different things here. The actual steganography technique by Claude Code here is fairly smart and subtle; it's appropriate for a binary signal. The less-clever part is the implementation of the underhanded code on the client.

            For "MMO geopolitics fingerprinting", you can in theory do the entire thing mostly or entirely from the server, with the client not actually ever receiving any underhanded code per se. Such as sending dynamic stylesheets that vary in a pretty plausibly deniable way that can be secretly extracted from screenshots. Same for the character swap stuff. A very good analyst could still potentially detect it, but it's much harder.

            With this, there's the smoking gun of the semi-deobfuscated underhanded code in the client. It will always have to exist in some form, but you can write it in a way where it not just looks like regular code but actually has a believable purpose and behavior which could plausibly be normal and benign for implementation of a feature or telemetry or whatever. They did not really do it in a sufficiently "cleverly psyop-y" way, so to speak.

    • Melatonic 2 hours ago
      Or they are doing both and this is the obvious part. Sort of like installing a bunch of real security cameras alongside a few fake ones
    • novaleaf 2 hours ago
      yeah, for example, just send a hash of the domain used. but then maybe people would say anthropic is spying on everyone, instead of targeted spying...
    • skywhopper 5 hours ago
      Have you looked into anything about Claude Code, how it’s configured, how it interacts with your system, etc? Because “sloppy” is a defining characteristic.
    • jorblumesea 4 hours ago
      well if you ask claude how to implement something, you may not always get the optimal solution. this feels like something claude would spit back at you given a basic prompt
    • crossroadsguy 5 hours ago
      I finally bought Claude Pro (I am not coding etc these days so I just wanted to try it). The Claude desktop app is downright pathetic. I mean they could write a better one just with their own LLMs. What's stopping them?
      • ncruces 5 hours ago
        That's … exactly what they're doing. This is the outcome.
    • skeptic_ai 5 hours ago
      It’s even more funny how this blew in their faces. They even advertised pretty much all providers on hackernews home page. Here is in case you missed in the article

      ‘’’ cn baidu.com alibaba-inc.com alipay.com antgroup-inc.cn bytedance.net kuaishou.com xiaohongshu.com jd.com bilibili.co iflytek.com stepfun-inc.com moonshot.ai anyrouter.top claude-code-hub.app claude-opus.top openclaude.me proxyai.com yunwu.ai zenmux.ai

      ‘’’

      You can view the full list here: https://cdn.thereallo.dev/blog/assets/cc-domains.js

      const knownDomains = [ "cn", "sankuai.com", "netease.com", "163.com", "baidu-int.com", "baidu.com", "alibaba-inc.com", "alipay.com", "antgroup-inc.cn", "kuaishou.com", "bytedance.net", "xiaohongshu.com", "ctripcorp.com", "jd.com", "jdcloud.com", "bilibili.co", "iflytek.com", "stepfun-inc.com", "aliyuncs.com", "cn-shanghai.fcapp.run", "cn-beijing.fcapp.run", "xaminim.com", "moonshot.ai", "anyrouter.top", "packyapi.com", "aicodemirror.com", "aigocode.com", "hongshan.com", "iwhalecloud.com", "dhcoder.net", "lemongpt.top", "zhihuiapi.top", "intsig.net", "high-five-ai.xyz", "cloudsway.net", "4sapi.com", "529961.com", "88996.cloud", "88code.ai", "88code.org", "91code.pro", "992236.xyz", "ai.codeqaq.com", "ai.hybgzs.com", "ai.kjvhh.com", "aicanapi.com", "aicoding.sh", "aifast.site", "aihubmix.com", "anmory.com", "api.5202030.xyz", "api.ablai.top", "api.bianxie.ai", "api.bltcy.ai", "api.cpass.cc", "api.dev88.tech", "api.dreamger.com", "api.expansion.chat", "api.gueai.com", "api.holdai.top", "api.ikuncode.cc", "api.lconai.com", "api.linkapi.org", "api.mkeai.com", "api.nekoapi.com", "api.oaipro.com", "api.ruyun.fun", "api.ssopen.top", "api.tu-zi.com", "api.uglycat.cc", "api.v3.cm", "api.whatai.cc", "api.wpgzs.top", "api.xty.app", "api.yuegle.com", "api.zzyu.me", "apimart.ai", "apipro.maynor1024.live", "apiyi.com", "applyj.hiapi.top", "augmunt.com", "b4u.qzz.io", "clauddy.com", "claude-code-hub.app", "claude-opus.top", "claudeide.net", "co.yes.vg", "code.wenwen-ai.com", "code.x-aio.com", "codeilab.com", "cubence.com", "deeprouter.top", "dimaray.com", "dmxapi.com", "docs.aigc2d.com", "duckcoding.com", "fk.hshwk.org", "flapcode.com", "foxcode.hshwk.org", "foxcode.rjj.cc", "fuli.hxi.me", "getgoapi.com", "gpt.zhizengzeng.com", "gptgod.cloud", "gptkey.eu.org", "gptpay.store", "hdgsb.com", "henapi.top", "instcopilot-api.com", "jeniya.top", "jiekou.ai", "kg-api.cloud", "n1n.ai", "new-api.u4vr.com", "new.xychatai.com", "one-api.bltcy.top", "one.ocoolai.com", "oneapi.paintbot.top", "open.xiaojingai.com", "openclaude.me", "opus.gptuu.com", "poloai.top", "poloapi.top", "privnode.com", "proxyai.com", "qinzhiai.com", "right.codes", "runanytime.hxi.me", "sssaicode.com", "store.zzyus.top", "tiantianai.pro", "uiuiapi.com", "uniapi.ai", "vip.undyingapi.com", "wolfai.top", "wzw.de5.net", "wzw.pp.ua", "xairouter.com", "xaixapi.com", "xiaohuapi.site", "xiaohumini.site", "xy.poloapi.com", "yansd666.com", "yansd666.top", "yunwu.ai", "yunwu.zeabur.app", "zenmux.ai", ];

      const labKeywords = [ "deepseek", "moonshot", "minimax", "xaminim", "zhipu", "bigmodel", "baichuan", "stepfun", "01ai", "dashscope", "volces", ]

      • writeslowly 5 hours ago
        The site collection seems pretty random. There's a mix of actual AI labs, extremely questionable resellers (like whatever "claude-opus.top" is), and then random consumer sites like baidu and xiaohongshu.
        • yorwba 4 hours ago
          Baidu has an actual AI lab: https://huggingface.co/baidu So does Xiaohongshu: https://huggingface.co/rednote-hilab Pretty much every Chinese internet company seems to have an AI team nowadays, however small.

          In addition, many Chinese companies are trying to give their programmers access to Anthropic models even though they're legally prohibited from doing so. And that might involve employees using unmodified Claude Code with an ANTHROPIC_BASE_URL pointing to a proxy on the company intranet. In Alibaba's case, I've been told by an employee that they went the extra mile of setting up a hermetic cloud environment where employees could indirectly use Claude Code without ever having it touch their work computers.

          • someonebaggy 14 minutes ago
            Are Chinese programmers really prohibited from accessing American models?
            • VortexLain 0 minutes ago
              Anthropic does their best with banning accounts. As the result, shady API reselling market emerges. OpenAI on the other hand doesn't really discriminate based on a country like that (but a VPN is required nevertheless).
            • yorwba 3 minutes ago
      • chvid 5 hours ago
        rhoooo - so this is where to go to get cheap Claudeo at 90% off the listing price!
      • hn_throwaway_99 5 hours ago
        You have an odd definition of "blew up in their faces". What, do you somehow think your average Claude Code user on HN is going to think "Oh wow, I'm sure I'll get a much better experience if instead of going to the standard Anthropic Claude API endpoint I go through xiaohongshu.com."
        • aftbit 3 hours ago
          For personal projects with no data sensitivities, I use Claude Code with DeepSeek v4 Pro a lot. I'm probably going to switch to OpenCode or pi.dev after this. I was already a little annoyed at using a closed source harness, but it matched what I used at work. Nowadays, I'm mostly using Codex at work so no reason not to switch anymore.
        • SepiaSapient 4 hours ago
          I mean, yes? I heard of these Chinese resellers like a week ago and put it on the TODO pile due to a lack of leads. Now I'm gonna go trough the list and see if there's any I find acceptable.

          If enough Westerners start using the service someone will make a website more anglo-friendly.

    • lumost 5 hours ago
      so all we need is someone to leak a sufficiently large amount of claude generations onto the open and private web for all other LLMs to mimic the same marking style?

      wouldn't this happen due to the massive amounts of spam/slop being released?

    • slopinthebag 5 hours ago
      It’s not surprising at all, they’re vibecoding Claude code so of course they are not going to get anything other than slop out of it. A novel or clever solution is just out of the question for them.
  • mrshadowgoose 4 hours ago
    The conclusion of this blog post is a bit hysterical. The intent of this steg is excruciatingly clear (identifying usage by Chinese firms that may be conducting model distillation). It's unclear on how this "punishes normal developers" in any shape or form.
    • drdexebtjl 3 hours ago
      If you want to proxy Claude for a legitimate reason, you’ll have potentially nerfed responses.

      edit:

      Legitimate reasons include:

      - analyzing what Claude Code is sending to Anthropic to verify its not exfiltrating data;

      - selecting a model dynamically based on prompt difficulty, or enforcing a particular model;

      - switching between multiple Anthropic accounts based on the project;

      - filtering out credentials, PII and company secrets.

      and many more.

      • NewsaHackO 1 hour ago
        Half of those don't actually require proxying Claude. Also, Claude has made it apparent time and time again that it does not want people using Claude Code as a "tool" in a workflow. If you want to select a model dynamically based on the prompt difficulty, Anthropic wants people to use the API for this. It was the whole issue Claude had with OpenClaw.
    • dools 1 hour ago
      Why would a Chinese firm distilling the product use Claude code?
      • SoKamil 9 minutes ago
        They have some secret sauce not available through API maybe?
      • kordlessagain 1 hour ago
        To write distillation code, for one thing.
    • verdverm 3 hours ago
      False positives, we've seen them before when they degraded Fable silently based on the prompt/session
    • civet_java 3 hours ago
      Copying over my comment from elsewhere in this post:

      Anthopic choosing to delay their models' invevitable distillation by competitors is their prerogative.

      That they choose to implement it by fingerprinting my access patterns without first disclosing is where they shit the bed. It isn't "sneaky" it's straight up sneaky (and dishonest and unscrupulous while we're at it). That this particular instance is harmless doesn't give me much comfort. Who's to say they aren't harvesting PII?

      That their actions make sense for their business isn't any reason for people to accept their deceitful, customer-hostile decisions.

      • Melatonic 2 hours ago
        Does their user agreement say they won't be harvesting PII?
      • IshKebab 1 hour ago
        > by fingerprinting my access patterns

        It's based on whether your timezone is in China and your hostname matches a blacklist. Literally 2 bits of information. Not much of a fingerprint.

        • nozzlegear 1 hour ago
          That's what it's based on right now, anyway. What other bits of info will they add as the Chinese work around this spyware?
    • Terr_ 4 hours ago
      > hysterical. The intent of this steg is excruciatingly clear

      Even good goals do not excuse malicious or reckless execution. The ends do not always justify the means.

      Whether or not it harmed you this time, it's a violation of trust and autonomy.

      Surely you'd be angry if someone secretly installed a rootkit onto your computer, even if--at least for now--it only had code to try to detect and snitch on Public Enemy #1.

      • nomel 3 hours ago
        What do you see as malicious or reckless here, exactly?

        This seems to be a VERY low resolution, functionally anonymous, bit of info, probably related to protecting their IP from bad actors breaking the TOS.

        This looks like it's covered in the second bullet point of the "Personal data we automatically receive", that you consented to:

        > Usage Information: We collect information about your use of the Services, such as the dates and times of access, browsing history, search, information about the links you click and about third-party applications, services, and content you integrate or interact with, pages you view, and other information about how you use the Services, and technology on the devices you use to access the Services.

        What do you see as malicious or reckless here, exactly?

        [1] https://www.anthropic.com/privacy

        • computerex 1 hour ago
          I don't want my harness doing sneaky stuff like this. I don't want my harness data mining me. I want my harness to implement the agentic loop and I want it to be transparent.
          • solenoid0937 16 minutes ago
            Your harness isn't doing sneaky things unless you're breaking TOS. HN hysteria is unreal.
          • BeetleB 1 hour ago
            > I don't want my harness doing sneaky stuff like this.

            Since when was it your harness?

            Switch to pi if this bothers you.

        • phoghed 2 hours ago
          Are you honestly surprised that roughly 0 HN users read that, or that they are loudly complaining about this, likely without even reading beyond the headline of this post?
  • VortexLain 6 hours ago
    Codex CLI is FOSS, unlike Claude Code, so Codex is less likely to do things like that, and it's one more reason to avoid Claude Code and Claude in general. Hopefully, many eyes will be looking into Codex for malicious things like that.
    • loufe 4 hours ago
      Genuine question though, why would I care about this if I'm paying for a subscription and adhering to TOS. I'm very skeptical about their privacy policy, business practices, and so on, but am curious what the negative about this is. Seems like it would work to my favour as a customer pushing back any date of the cutting of subsidies.

      That said, these fraudulent proxies are helping Chinese labs keep up, which might be to my advantage long term in eventually having a high quality private AI I fully control on my own hardware. That's not support, but I do recognize the incentive, for whatever that's worth.

      • simonduchastel 42 minutes ago
        One negative is that Claude Code is pretty buggy, and Anthropic makes frequent changes that cause unexpected regressions [0]. With the harness now doing weird stuff with proxies, I'd be worried of them inadvertently introducing bugs which affect people using the feature legitimately.

        [0] A recent example: https://www.anthropic.com/engineering/april-23-postmortem

      • sanderjd 2 hours ago
        Because they could use (or maybe are already using) similar techniques to do things you don't approve of, without your awareness.
      • yard2010 1 hour ago
        What if they decide you're not patriotic enough, serving you evil models, because one man with a lot of shmeckels told them to?
        • s3p 17 minutes ago
          Then I could just.. cancel my subscription and stop paying?
        • fartcoin67 1 hour ago
          [dead]
    • scottyah 3 hours ago
      "malicious"? Seems like a great way to filter users breaching the TOS while not impeding on normal users. A FOSS client just means they're doing more analysis hidden on their servers.
    • dannyw 6 hours ago
      It's released and signed by GitHub I believe (although not deterministic builds), but there's at least a little bit of provenance that you're getting the real repository.
    • algoth1 5 hours ago
      But wasnt claude code leaked? Why wasnt this found earlier?
      • zeafoamrun 5 hours ago
        It doesn't take long for them to vibe code new features for CC
        • nicce 4 hours ago
          Or vibe code it completely differently. After all, they have basically unlimited access to best models with maximum speed if they just wanted to.
      • bakugo 5 hours ago
        This specific form of steganography was not present when the leak happened, as far as I can tell.
  • maxwellg 3 hours ago
    > If the client wants to detect custom API gateways, it can say so plainly. It can send an explicit telemetry field with documentation. It can make the policy visible. It can put the behavior in release notes.

    This seems like a very naive response. If clients send explicit telemetry fields to the gateway, a malicious gateway can trivially strip or modify the field to conform to what normal traffic looks like. The steganography cat-and-mouse game is valuable because it is much harder for a gateway to continuously reverse engineer all the fingerprinting mechanisms used. Sure, some malicious gateways will be able to stay on top of things, but not all - and not always.

    • solenoid0937 9 minutes ago
      Seriously, the author has clearly never had to deal with client abuse.

      This is a total non issue unless you are Chinese distilling lab.

    • klntsky 3 hours ago
      I would add that it would probably work even better than a KYC at least for some time until discovered, given that there is a very developed international market for KYC bypass services
  • orbital-decay 3 hours ago
    To summarize what they've already been doing:

    - filtering out people from the wrong side of "all humanity", years before it was demanded by the government

    - downgrading their models in arbitrary ways (later saying "sorry but not really")

    - actively sabotaging the replies, as in covertly modifying them to feed the users incorrect results

    What's next to expect from Anthropic? Malware to brick your machine if they don't like you? Extending this to more people they don't like? I think I already can see how Dario's Amodei utopian visions of the future of "all humanity" are going to unfold.

    • solenoid0937 13 minutes ago
      HN hysteria is ridiculous.

      All of this is totally understandable if you take the perspective that these people genuinely believe they're building superintelligence.

      The overwhelming majority of the AI safety crowd - which has poured more of their life and time into thinking about these problems than the average HN armchair commentator ever would - understands that:

      - you want to prevent China from getting to superintelligence first

      - you must gate access of SI to known good actors

      - and that this is a race that will result in the extinction of humanity if you fail in these goals

      Literally everything these people do is totally understandable if you drop the assumption that they're lying when they say "we think we are building superintelligence."

  • edude03 5 hours ago
    I don't understand the privacy concerns the author is trying to highlight. Granted, doing anything "sneaky" will always raise suspicious once caught, but on the other hand, there would be no point in implementing these "security features" if they were upfront about how they work.

    And no, IMO stenography isn't security by obscurity, in the same that using RSA and keeping the private key private isn't security by obscurity - keeping the private thing private is part of the security model.

    • civet_java 3 hours ago
      Anthopic choosing to delay their models' invevitable distillation by competitors is their prerogative.

      That they choose to implement it by fingerprinting my access patterns without first disclosing is where they shit the bed. It isn't "sneaky" it's straight up sneaky (and dishonest and unscrupulous while we're at it). That this particular instance is harmless doesn't give me much comfort. Who's to say they aren't harvesting PII?

      That their actions make sense for their business isn't any reason for people to accept their deceitful, customer-hostile decisions.

      • scottyah 3 hours ago
        Would a filter like this make it seem less likely that they're harvesting PII? Why would they need this if they were tracking all user queries with a finer-toothed comb?
        • civet_java 2 hours ago
          If by a "finer-toothed comb" you mean telemetry then I don't quite see it as comparable to this situation.

          Telemetry is disclosed in privacy policies, it can usually be opted out of and if not that, then it can be blocked by a firewall. Steganographically fingerprinting customer's network routing when they consented to your tool reading a txt file is a different problem. Anthropic has demonstrated capability and willingness to embed arbitrary obfuscated data in their comms streams and that's a dangerous precedent to set.

    • hnfong 4 hours ago
      If the countries were reversed, and some Chinese software implemented an equivalent "security feature" to track US users, it would be all over the news about how China is conducting spying and espionage on America.

      Or maybe you don't understand this hypothetical situation either, but I'm suspecting you just don't care about other people's privacy.

  • matheusmoreira 5 hours ago
    I reported a similar system prompt injection mechanism here:

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

    https://github.com/anthropics/claude-code/issues/62061

    Looks like they just keep finding new "creative" uses for such things, as expected. I'll keep patching them out.

  • MattDamonSpace 6 hours ago
    “So the feature mostly punishes the exact people who are easier to fingerprint: normal developers doing weird but legitimate things”

    What’s the punishment here exactly?

    • pedropaulovc 6 hours ago
      Higher odds of being banned for legitimate usage.
      • solenoid0937 8 minutes ago
        If you are accessing Claude through the listed domains it is not "legitimate use."
      • Beigale 2 hours ago
        [dead]
    • eli 4 hours ago
      For being flagged as possibly a competitor? They nuke your account.
    • femboyvtuber 6 hours ago
      Returning invalid poisoned different results that were not what you paid for
    • thepasch 4 hours ago
      > What’s the punishment here exactly?

      Seeing as how Anthropic cannot stop raising a stink about "illicit Chinese distillation attacks" every month or so, I'd bet money on them either already silently degrading model performance if any of the identification patterns match, or, at the very least, considering it/doing dry runs.

      Particularly considering that they've openly stated that the technology to do so exists and that they were going to use it in production on Fable.

    • bakugo 6 hours ago
      Output poisoning and/or eventual account bans, if I had to guess.
    • realusername 6 hours ago
      They probably run a heavily dumbed down version of the model, same as what they got caught doing with Fable.

      And that's also why, as a legitimate customer, want none of it, you never know if you accidentally entered a zone they don't like.

  • LPisGood 6 hours ago
    This is very interesting. Combating resellers and distillation seems like a very difficult problem indeed. Interesting to me is that these techniques mentioned in the article are just like anti-observation techniques used by some of the more sophisticated malware out there, however defeating them is pretty trivial.
    • _alternator_ 6 hours ago
      Yes, defeating this is relatively easy, particularly for sophisticated actors. But it's hard to always defeat all of the tricks. Sort of like how it's expensive and hard and uncertain to defeat all of the tricks when forging money.

      Here's an example. Say you have your team use patched binaries. Then CC updates and requires a new patched binary with new tricks. You now have to have a team ready to analyze the binary and begin to address the tricks; meanwhile, unpatched code is now a fingerprint. If some researcher decides to update Claude on their own to access new features, they get fingerprinted.

      Defeating a single fingerprinting technique once is easy. Defeating all of the techniques all the time is hard.

      • SubiculumCode 6 hours ago
        Not to mention, it isn't that hard for vendor's to require updated code to run the product. Vendors do this all the time.
      • pishpash 5 hours ago
        Corporate surveillance malware on employee machines is also defeatable but most don't bother.
      • charcircuit 6 hours ago
        Is it hard? Just ask AI if the update added any new fingerprinting vectors?
        • _alternator_ 5 hours ago
          I'd love for you to try this and report back. My guess is that no models today will successfully run a binary analysis for fingerprinting without a lot of handholding. If you try to use Opus it will almost certainly decline (and fingerprint/ban you).
          • charcircuit 5 hours ago
            Not with Claude Code, but I trivially had Opus scan other closed source software for fingerprinting, including native libraries that it called into.
            • _alternator_ 5 hours ago
              Can you share more details? I ask because my experience suggests that models still require a decent amount of expertise to use for binary analysis (largely inferring because of use on other tasks of this level). I would expect models to always find "something" when you ask for stenographic techniques in the code, but with an extremely high false positive rate.
              • charcircuit 5 hours ago
                I don't think the diffs between Claude releases are that big. The amount of code in a diff doing sketchy stuff like looking into the host environment is going to be pretty small and obvious for the model. You can do things like ask for what an update included that wasn't mentioned in the release notes and stuff like that.
    • mysterydip 6 hours ago
      seems ironically like a similar problem of content owners trying to filter bot scrapers from legit users
  • sebastiennight 6 hours ago
    Can somebody clarify for me - if ANTHROPIC_BASE_URL is set to a different provider... then isn't this "marked" system prompt being sent to that provider's API rather than Anthropic's?

    I understand how this can be useful to Anthropic if the 3rd-party is acting as a proxy (because they end up hitting the Claude API with the marked prompt), but it looks like requests where "hostname contains deepseek" would never be sending data to Anthropic. What am I missing?

    • pmxi 5 hours ago
      This catches Claude resellers. Meaning companies who proxy Claude traffic for users in, say, China.

      https://www.chinatalk.media/p/how-to-buy-cheap-claude-tokens...

      • skeptic_ai 5 hours ago
        Won’t catch many after has been on hn home page. And now the providers will be even more careful to upgrade the cc code. Might even provide their own agent to prevent this mockery. And isn’t what anthropic did unauthorized use of another pc which is kind of illegal?
        • sandeepkd 5 hours ago
          Thats the thing, hoping to control things on client side like this is a lost battle if you are dealing with technical clients. The best they can do is probably based on IP, but again the motivated clients would just create bastion servers in allowed IP ranges. I am surprised why are they even throwing resources in this kind of effort.
          • jgilias 4 hours ago
            “Hey Claude, fix the issues with Chinese resellers and distillers. Make no mistake”
      • pishpash 4 hours ago
        "Catch" as in made a list?
        • eli 3 hours ago
          Of the accounts involved, yeah. So they can lock them out.
    • andrewmunsell 6 hours ago
      My guess is for distillation, they need to forward the prompt to Anthropic to get the real Anthropic model's response so they can train their own models on it
    • dannyw 6 hours ago
      The theory is probably Deepseek might be collecting those streams, and sending a portion of it to Anthropic to see what the Anthropic/Opus response would be.
    • eli 3 hours ago
      Seems like a pretty straightforward approach to collecting session logs from a bunch of different people/devices would be to have them all set their base url to proxy.deepseek.whatever which logs the data and forwards to the real API.
    • andai 5 hours ago
      Did I understand correctly, that custom base URL triggers this behavior? So if I'm running Claude through a LLM proxy, I'm also affected?
      • wett 4 hours ago
        Ask Claude to check, lol
    • nixosbestos 5 hours ago
      I am also really confused and annoyingly stuck on this. I understand that the model name might appear in prompts for distillation (I guess? "You are RipOffModelv2, learn from these responses from Claude")?

      I guess the only explanation is that there's a side-telemetry channel that still sends some data to Anthropic, regardless of ANTHROPIC_BASE_URL overrides.

      • sebastiennight 4 hours ago
        > I understand that the model name might appear in prompts for distillation (I guess? "You are RipOffModelv2, learn from these responses from Claude")

        This does not make sense. You wouldn't send such a prompt to the Claude model. And when you're sending the prompt (anywhere) you don't have the response yet. This is not how distillation works.

        • nixosbestos 47 minutes ago
          Right, sorry, I'm trying to catch up (in general) here, and am working through assumptions to get my bearings.

          What you say makes sense, but further adds to my confusion as to why those model names would appear in input sent to Claude at all, then. EDIT: I guess it might be because someone might point Claude at a compatible API, with its model in the URL, which is of interest to them.

      • MallocVoidstar 4 hours ago
        There are a lot of companies reselling Claude to Chinese users. You use their base URL but it's still going to Anthropic.
        • breakingcups 2 hours ago
          To clarify why Anthropic wants to catch these parties: they save all session logs and sell them to other LLM firms (for distillation) and have been known to use stolen credit-cards to pay for the Anthropic accounts.

          I'm quite all right with the first, not with the second of course.

  • pradeep1177 1 hour ago
    I used my proxy https://github.com/softcane/cc-blackbox setup to capture this.

    This is how it looks.

    # userEmail The user's email address is <my email>. # currentDate Today's date is 2026-06-30.

          IMPORTANT: this context may or may not be relevant to your tasks. You should not respond to this context unless it is highly relevant to your task.
    </system-reminder>

    I also do not understand what's the point of this, because if I have a gateway that can detect it, then we can replace the text before forwarding to the model, so what's the catch?

    • gtirloni 1 minute ago
      The catch is you didn't know about this until today?
    • puttycat 40 minutes ago
      Yes, a very easy and destructive man-in-the-middle attack seems likely.
      • pradeep1177 27 minutes ago
        But the whole point of this is to prevent the distillation and identify the list of blocked providers. If a provider is capturing the proxy, they can identify and modify that as well, so it only looks legitimate to the model. What am I missing here?
  • jameslk 2 hours ago
    That's wild. If Anthropic is willing to risk ruining the trust of their userbase for the sake of protecting their moat, it makes me wonder how strong of a moat they have to begin with
  • tgtweak 6 hours ago
    None of this is surprising - they're trying to mask and relay when they detect known patterns of what looks like distillation attacks and client app copying/modification. The list obfuscation here is likely to prevent or make it difficult for those same adversaries to work around this or delete/null it out when making a bootleg copy.

    Cool reverse engineering/analysis report but if this is the extent of nefarious activity that came of it (trying to catch/mitigate chinese lab model distillations), that's kind of encouraging.

  • fny 6 hours ago
    This was already discovered during the source map leak.

    > This is not a malicious feature, but it is a weird choice for a developer tool that asks for trust.

    They already tell you they scan for malicious prompts, and they have no ZDR guarantees for consumers. Why do signatures like this matter at all?

    • llelouch 5 hours ago
      There has been an anti anthropic propaganda push by bad actors across social media sites especially Reddit and twitter. This started a few months ago when anthropic started beating openai.
      • solenoid0937 5 minutes ago
        I was browsing Threads and saw a lot of Anthropic hate. Randomly clicked on a profile and looked them up on LinkedIn - literally an OpenAI PR guy.
      • zulban 4 hours ago
        Absolutely. Nothing makes me believe dead internet theory more than text threads discussing anyhropic and openai.
  • mohamedkoubaa 16 minutes ago
    Do they really think distillers are using Claude Code?
  • sigmoid10 6 hours ago
    If they only collect the data for analysis I guess this is fine (they already get way more sensitive data from users anyways, so if privacy is your concern you've made the mistake many steps ago). The much more interesting question is if they directly act on this data in their API. For example by rate-limiting, compute-limiting or rerouting to weaker models. That might even be legally questionable. I would really like to see this as a follow-up analysis, but I guess it is way more difficult and will also cost quite a bit in tokens.
    • SubiculumCode 5 hours ago
      Would it be legally questionable, or actually complying with U.S. export law?
    • krupan 5 hours ago
      "If they only collect the data for analysis I guess this is fine"

      I think you missed the memo on how foolish this attitude is. It came out around the time Edward Snowden made his discoveries at the NSA public. I suggest you look into it

      • sigmoid10 5 hours ago
        As I said above, if you are worried about privacy while hooking up Claude Code, you need to reevaluate your understanding of this technology.
    • bakugo 6 hours ago
      I've heard that it was possible to trigger really obvious output poisoning on Fable with something as basic as asking the model to think outside of its built-in hidden thinking delimiters.

      This watermark may trigger a similar mechanism.

  • throwawayffffas 6 hours ago
    Claude code does feel very malwarey to be honest. They have been like that from the start.
  • port3000 5 hours ago
    That's a lot of effort when they could just play a short video saying 'You wouldn't steal a car' instead
  • dehrmann 5 hours ago
    Anthropic must think that their moat isn't very large if they're this worried about distillation.
    • helloplanets 4 hours ago
      Dario's been openly talking how worried he is about China and labs getting synthetic training data off their models, for years. Most recently in relation to "Mythos level" capabilities.

      Not really distillation, just synthetic training data.

    • dgellow 5 hours ago
      What moat?
  • ryanisnan 5 hours ago
    This is weird but, help me understand how this meaningfully impacts our exposure.

    I'm authenticated to Claude, so they already have the whole attribution thing solved.

    • chinathrow 5 hours ago
      User != paying person/company/reseller.
  • Havoc 3 hours ago
    It's unclear to me how they're deducing the labs from this? "host.includes(keyword))" doesn't seem at all useful. Most corporate machine hostnames are just some numeric ID or similar not baichuan001 or whatever

    >on your local machine

    I'd think any developer worth their salt has at least some for of isolation going.

  • jitbit 49 minutes ago
    Anthropic: lets embed super secret invisible undetectable unicode telemetry into our prompts

    Also Anthropic: lets do this in JS

  • 100ms 6 hours ago
    What's the point of even trying to obfuscate this with such a simple method? Could at least have hidden the targeted features by storing their hashes or embedding a bloom filter or similar
    • ajb 5 hours ago
      In this case, this is probably not the only stereographic tattletale.

      Had a competitor pull something like this with a previous employer. They were supposed to be interoperating with a standard, but they had a secret steganographic handshake, which they used to pretend that competitors products were unreliable (they had a first mover position in a smaller national market with specific requirements, so this wasn't shooting themselves in the foot). Our guys figured out the handshake and just silently implemented it. In this case, the competitor wasn't big enough to waste engineering time on multiple such hacks, but Anthropic have time (or Claude does).

    • gonzalohm 6 hours ago
      The point is not raising red flags I guess
      • kej 6 hours ago
        I love how well this comment works as a vexillology joke, even if it wasn't intended.
  • drdexebtjl 3 hours ago
    I think it’s very telling that their list of detected labs doesn’t include labs from the US.

    I’m pretty sure every lab, including Anthropic, is doing distillation right now.

  • dmonterocrespo 1 hour ago
    It's a bit crazy that they used characters as markers to detect the use of Asian countries. I think in the near future they might change the intelligence of the model based on where you live
  • nvch 2 hours ago
    I'm waiting for the day when Claude will figure out to use em dashes, en dashes or dashes depending on whether the user is nice or unpleasant, or write notes in the unallocated disk space.
  • iqandjoke 6 hours ago
    It is about China detection. They seems to put a tracker on the email as well.
  • chvid 5 hours ago
    (This sounds like a clumsy way of catching the Chinese that easily can be side-stepped.)

    Claude Code has more or less full access to the client computer. The server (that hosts the actual AI) can just go: execute this payload and tell me the result - otherwise I won't answer any further questions or re-route you to a stupider model.

    The payload could check for Chinese time-zones, scan for copies of the little red book on the local hard-drive, or ping truth.social to see it was behind the great firewall.

    • drnick1 4 hours ago
      > Claude Code has more or less full access to the client computer.

      It shouldn't, not if you run CC as a separate unprivileged user. I wouldn't run CC on my main user account with sudo and access to my home directory or other resources. This is what the UNIX permissions system was designed for.

  • tgsovlerkhgsel 3 hours ago
    The question is, what do they do when they see a tagged prompt? Do they flag/ban the account, or serve a degraded response? Are there some well-documented methods of serving a response that is still somewhat useful for what the prompt asks for, but really bad for distillation attempts?
  • jacobgold 5 hours ago
    > "That also means the client itself deserves scrutiny. If a coding agent can read your repo and run commands, the binary that ships it should be boring (ƒor example, pi harness)"

    You're actually trust your security to your harness AND model AND inference API provider in this scenario: https://jacob.gold/posts/why-i-wont-run-untrusted-models/

  • puttycat 45 minutes ago
    A periodic reminder that companies are paperclip optimizers that will stop at nothing to protect their profits and existence.

    If you are developing anything in AI or related domains that is of immediate value and/or in competition with Anthropic (and the like), DO NOT use a CLI programming agent. Preferrably obfuscate your code and gut it of sensitive IP before showing it to agents. Do not trust the dont-train toggle.

  • croemer 3 hours ago
    I was skeptical because this is AI written but Claude Code with Sonnet 5 managed to reproduce it convincingly. Sure I didn't manually verify but it's a lot more trustworthy to have your own agent verify than just trusting a blog.
  • a_c 6 hours ago
    It piqued my interest. I think I’ve found a weekend project
  • epistasis 5 hours ago
    After loving Claude Code for most of its lifetime, I've been extremely annoyed by every change in the past months, even on the model level.

    There seem to be all sorts of continual under-the-cover changes like this one that make life harder. It feels like the entire product has been taken over by overly ambitious PMs that care more about making their mark than in improving the experience, and all of their marks have made me less productive.

    I've been using Pi with GLM5.2 the past few days, and though it's expensive, I find it far more productive and less annoying. The remote session plugin is far more reliable, I don't need to intuit some undocumented usage pattern to figure out how to use it well, and it just works.

    • whimsicalism 4 hours ago
      curious for those with experience - what do people prefer about Pi vs. opencode alternatives? i've mostly been using pi as well but not out of any principled decision
    • ern_ave 4 hours ago
      Given the source code leak, I would think there'd be open source versions by now.
      • isoprophlex 4 hours ago
        Huh, that's right! You'd say that an enterprising developer with a 20x subscription could slopmaxx this in a weekend...
    • Imustaskforhelp 4 hours ago
      > I've been using Pi with GLM5.2 the past few days, and though it's expensive

      are you using the API for glm 5.2 or how exactly is it more expensive? How is GLM5.2 more expensive than using Claude code, that doesn't line up to my experience but to be fair I am on an older yearly subscription which generously only has 5 hour limits.

      To be fair though one minor criticism of GLM 5.2 that I have is that it does seem to overthink quite a lot sometimes but the results end up being (good?),

      I personally have used Glm 5.2 with (Opencode + obra/superpowers) / Oh-my-pi / Maki.sh

      I like the 1st one when I am doing a longer project, the 2nd or 3rd one when I am doing a project which doesn't want me to ask too many questions and simply spin me up something. I sometimes use free online interfaces of claude and gemini and others like AIstudio for that as well which surprisingly can lead you to go far as well.

      Overall, I am decently happy with the state of Open-source models actually and the eco-system around it is probably gonna have even more innovation surrounding it.

      • epistasis 2 hours ago
        I'm using OpenRouter for GLM5.2, but if there's a cheaper option out there I'd love to know about it!

        In the few days I've been using it, my expenses have been higher than prorating my Claude subscription to 20 working days per month.

        My experience with GLM5.2 is that it doesn't overthink nearly as much as Claude Code, has better and far more concise responses (I'm so siiiiick of 10 paragraph Claude babble trying to fill out some sort of answer length target by going on tangents I'm uninterested in... I'm sure that performs better on whatever eval they're doing, but apparently their evals don't include SNR?)

        • Imustaskforhelp 1 hour ago
          I think that there are some subscriptions to go by. Z.ai subscription might still be interesting. I once haggled with kimi to get it for 1$ per month. I can only help in providing pointers:

          If you wish to go Non-API but rather subscription route: Z.Ai subscription/ Kimi subscription / MiniMax subscriptions are good. You could also take a look at ollama subscription and opencode subscriptions.

          If you wish to go API route: Deepseek v4 pro /mimo v2.5 pro models are comparably good if your work can do that. Codex for all its failure and for as much respect that I had within Anthropic when they had fought against the govt. which Anthropic is slowly losing again by doing some pretty dystopian actions again so Codex subscription might make sense as well.

          It depends on multiple things but hopefully i am able to provide some interesting things

          If you wish to run models locally, unless you are specifically buying gigs for running them locally which is almost always about privacy rather than costs, then you are always better off with qwen models so if you got a 64-128GB laptop for example. You could run Qwen models and see where things go.

          Hope this helps ya!

          • epistasis 1 hour ago
            Extremely helpful, thanks! I think I'l go the OpenRouter route for a while to explore various models, then weigh the option.

            I do kind of like basing decisions somewhat on the API costs, because they reveal what the true costs will be after the eventual rug-pull on subscription pricing.

            Even seeing the API costs of Claude Code today to a year ago are pretty eye-watering. I think there's a ton of room, at least for my workflows, to go back to far less capable models.

            I've run local models in the past a bit, and explored LLM ops somewhat, and have zero desire to do it anymore, haha. It's fun as a hobby, but there's tons of other homelab stuff for me to play with.

            • Imustaskforhelp 56 minutes ago
              Yeah I think that the API route model is good and it is at cost as it gets and there are some efficiencies which can be gotten from say how deepseek does its inference but at the moment as it stands, API prices are the most stable thing to go through and I wish you luck!

              > I've run local models in the past a bit, and explored LLM ops somewhat, and have zero desire to do it anymore, haha. It's fun as a hobby, but there's tons of other homelab stuff for me to play with.

              True. I personally haven't played enough because of my hardware being quite modest than even personal hardware recommendations but I have had sometime playing with 350 (M with million!) models like the recent LFM model and very small qwen models. They are just experiments though but I would one day like to see even more standardized models that we could use on our laptops or desktops themselves.

              > Even seeing the API costs of Claude Code today to a year ago are pretty eye-watering. I think there's a ton of room, at least for my workflows, to go back to far less capable models.

              Yeah exactly. I would constitute that even by using GLM 5.2 as you are originally doing even with API costs is probably much more sustainable over long run as you are currently doing. And it keeps you away from the problems of proprietary models and issues surrounding that.

  • Klonoar 6 hours ago
    If there weren't already enough tells that something is AI-generated, I guess you could add this to the list.
    • sneak 3 hours ago
      This is in the system prompt, not the output. It’s part of the request to the API, not the response.
  • an0malous 5 hours ago
    Is this why Claude never knows what date and time it is right now?
  • AtNightWeCode 2 hours ago
    Sounds to me more like a test. Put something into to the client and see what happens. If you really want to stop token sharing just ask Claude how to do it.
  • __msh__ 2 hours ago
    Anyone else noticed the tailed ƒ Easter egg?
  • MangoCoffee 5 hours ago
    The AI race right now is in a sad state. Chinese's playbook is releases open weight models and trains them on their own chips.

    Anthropic pushes fear and control. But the only way to win is by innovating. China is flooding the market with cheap, good enough models, while the U.S. is building a Chinese firewall.

  • ForHackernews 2 hours ago
    >Developer tools can enforce terms.

    No they can't, because developer tools run on developers' machines. You can't trust your code running in an environment you don't trust.

  • luxuryballs 2 hours ago
    I can just as easily imagine non-nefarious reasons for this from a “being clever” standpoint.
  • hhh 6 hours ago
    Cool fingerprinting avenue.
  • anonym29 3 hours ago
    >the binary that ships it should be boring (ƒor example, pi harness)

    pi's "minimal" coding-agent has a total of 132 transitive dependencies spanning 153 maintainers.

    While I understand JS developers in the JS/NPM ecosystem think this qualifies as minimal, it most certainly does not, from a supply chain security perspective.

  • ahmedehab_01 6 hours ago
    Frankly, I don't see this as the concerning behaviour the article describes. It is fine to try to protect against distillation through a technique like this. This will also allow them to, instead of blocking the distillation agents, respond with a poorer result/model, hindering the progress of distillation, momentarily at least.

    I would guess that's their first line of defense; they should have more techniques to identify distillation because that's a very simple way of detecting the host and can be easily spoofed.

    • applfanboysbgon 6 hours ago
      > This will also allow them to, instead of blocking the distillation agents, respond with a poorer result/model,

      i.e. this will allow them to literally commit fraud against paying customers

      • SubiculumCode 5 hours ago
        1st, this technique is not fraud, and fraud is a separate accusation. 2nd, paying customers can legally and legitimately be banned and monitored for breaking terms of service, which probably includes things like using the model against U.S. export restrictions.
        • applfanboysbgon 2 hours ago
          > 2nd, paying customers can legally and legitimately be banned and monitored for breaking terms of service

          Yes, I said that. If a user is breaking your terms of service, ban them. Continuing to charge them while not providing the service they're paying for is, in fact, literal textbook fraud.

        • applfanboysbgon 5 hours ago
          Banning is completely different than charging for a service you're silently not providing.
        • skeptic_ai 5 hours ago
          So if I change my timezone to Shanghai I deserve to get banned? Or get shitty model instead of what I’m paying for?
      • ahmedehab_01 5 hours ago
        Do paying customers distill? Is it fraud to protect against distillers?
      • chadgpt3 6 hours ago
        That's what capitalism is all about, baby! Especially if the customers don't notice.
  • mosfets 5 hours ago
    I clicked the link to learn what steganography mean...
    • LoganDark 5 hours ago
      Steganography is, essentially, hiding information within another message, such that it's not readily apparent that the message contains the information.
  • ductsurprise 5 hours ago
    Is it just a minified localization(l10n) function maybe?
  • SaaShack26 5 hours ago
    I use its too
  • 827a 5 hours ago
    This seems really, really stupid. Similar to the weird Zig runtime signature thing from a few months ago ago, it was bound to be discovered, quickly, and all the resellers have to do is find a new domain name that (checks notes) doesn't have the word DEEPSEEK in it. Like, seriously? Your goal was to identify resellers by checking if the proxy has the corporate name of one of your competitors in it? Is this amateur hour?

    All Anthropic has done is reduce trust, once again, with legitimate customers, while doing nothing to stop illegitimate customers. They need to get adults into key leadership roles, quickly.

    • timmytokyo 3 hours ago
      To Claude Code: "Please modify Claude Code to mark requests in a way that is not immediately obvious to a human user. Requests should be marked if they originated from one of the following Chinese AI labs or LLM service providers: ..."

      Consider also that Claude Code is explicitly designed to limit human agency [1].

      [1] https://neuromatch.social/@jonny/11635101584259395

  • phendrenad2 5 hours ago
  • ZappoMan 4 hours ago
    One more example of "I thought Anthropic was supposed to be the good guys."
  • TZubiri 4 hours ago
    based and steganopilled
  • theplumber 6 hours ago
    The more I learn about Anthropic the more they disgust me. Finger crossed for all the companies from their “ban list”
    • conception 6 hours ago
      Which AI company have you learned more about where you liked them more as more details came out?
      • tancop 5 hours ago
        nous research. started out making overhyped llama finetunes, now they got a great agent harness and a cutting edge distributed training network that actually works.
      • selfhoster11 5 hours ago
        Moonshot.
      • chvid 5 hours ago
        Deepseek.
  • wolttam 6 hours ago
    I used Claude Code for a month because my boss gifted me a sub and wanted me to try it.

    I used that month to complete a work project and then beef up my personal harness so I'd never have to deal with Anthropic (and these sorts of shenanigans) again.

    • thih9 6 hours ago
      How do people build something like a personal harness? Are there tools for that or is it done from scratch?
      • andai 5 hours ago
        I like this tutorial for an agent in 50 lines:

        http://minimal-agent.com/

        And if you add one additional while loop, for user input, you can actually use it! :)

        https://gist.github.com/a-n-d-a-i/5461a662ef8a7ee0a5eb7778c8...

      • nowittyusername 5 hours ago
        Build it from scratch. Understanding fundamentals of how agentic coding harnesses is a must though if you gonna go that route. I think everyone should take time and learn these things, maybe reverse engineer Codex Cli or something like that as a starter. That info is very valuable in this day and age.
        • andai 5 hours ago
          Can you say more about Codex? I'm using GPT-5.5 in my own harness and it's not liking it very well, so I'm thinking I ought to make it more Codexy so it's more ergonomic for it. (edit format, tool calls etc.) But haven't gotten around to it yet.
      • hakunin 5 hours ago
        Not the comment author, but I use pi and customize it with my own extensions. Pi automatically tells models how to customize itself, so it's a pretty easy process.
      • abtinf 5 hours ago
        Here is a video I made explaining it from absolute basics:

        https://m.youtube.com/watch?v=_AgKuFGvJfI

        And the repo:

        https://github.com/abtinf/homunctor

        • airhangerf15 3 hours ago
          I hope you've already invalidated that bearer token :-P
      • wolttam 5 hours ago
        I started mine from scratch in 2023 because I wanted to use LLMs from a terminal and there was nothing else compelling at the time (nowadays there is pi and opencode)

        Harnesses are/can be incredibly simple things, not much more than a HTTP client that renders things in a way that suites your taste.

      • kolinko 5 hours ago
        It’s not that difficult, it’s just a system prompt and a set of basic file edit/bash/etc tools.

        Me, personally, I didn’t build it from scratch but I ported original CC from published sources into Python and extended it to match my own requirements.

        • andai 5 hours ago
          Are you using it with Claude? They only allow their own harness with the subs right? (And per-token billing is like 10x more expensive?)
      • yomismoaqui 5 hours ago
        Building something like this is the todo list of agents.

        I found this one easy to understand:

        https://ampcode.com/notes/how-to-build-an-agent

      • AJ007 5 hours ago
        The real question is when do you transition from building it with codex/CC to the harness itself.
      • verdverm 3 hours ago
        Lots of ways, it's a good exercise that you will learn a lot doing. Might make you cynical w.r.t. big ai harnesses

        I used ADK, Dagger, and a VS Code extension for mine. Currently using opencode though.

      • echelon 5 hours ago
        Why use a personal harness?

        You have to pay API pricing, which is far more costly.

        I'd either switch to GLM wholesale or just continue to use Opus within Claude Code as the blessed, subsidized path.

        • JTbane 5 hours ago
          I would guess it is to avoid model lock-in.
          • echelon 5 hours ago
            My question is still this - why not just use GLM at that point?

            The pricing of Opus outside of Claude Code is insane.

            The tokens cost too much outside of Anthropic's blessed path.

        • andai 5 hours ago
          I use GLM in my custom harness. It completes the same tasks at the same level of quality, except 8x faster and 8x cheaper. (Same goes for GPT!)

          I'm not sure how that's possible. I expected to get increased correctness for that order of magnitude (something something test-time compute!) but I am not getting it.

    • WinstonSmith84 3 hours ago
      Yes, this is actually "funny" that Anthropic feels the need to build such intrusive features into Claude Code, when anybody can build a (basic) Claude Code alternative. And the Chinese labs are certainly not "anybody". One may wonder what Anthropic really tries to achieve aside from awful publicity.
    • helloplanets 4 hours ago
      The issue is that using Claude Code is an easy compromise for most to make, when you get to use the models 10x cheaper than through API pricing with a custom harness.

      The cheap tokens are the product.

      • nananana9 4 hours ago
        Which is why my vibeslop harness supports `claude -p` as one of its backends.
        • helloplanets 4 hours ago
          If that ain't getting steganographically tagged...
    • tonmoy 6 hours ago
      What models are you using? Aren’t you still dealing with some provider even if you are not using their binary
    • krupan 5 hours ago
      Given the Anthropic shenanigans, do you trust the personal harness code it wrote for you?
      • wolttam 5 hours ago
        It did not write it for me, I used it to add a feature I wanted. It's a pretty small and understandable codebase, in fact :)
      • MichaelZuo 5 hours ago
        Does anyone know what’s gone wrong with Anthropic?

        They used to be a decently credible company with not-too-shady behaviour...

        I hope they can actually regain some credibility…

        • hombre_fatal 5 hours ago
          I don't think many people care that they are trying to detect resellers and distillation.

          It also doesn't seem very consistent to fixate on that while sending Anthropic everything about you via your day to day prompts, every line of the projects and environments you're working on at work, etc.

          Their credibility comes from having one of the best models.

          • MichaelZuo 5 hours ago
            This sounds similar to what people were saying regarding Microsoft when the shady tricks of consumer Windows 10 versions were revealed.

            …And then Windows 11 became even worse.

        • satvikpendem 4 hours ago
          When have they ever been credible? They have always been shady with their talk of safety, Dario was the one who wrote back in 2019 that GPT 2 was too dangerous to release.
        • slowmovintarget 5 hours ago
          Their philosophy is what's gone wrong.

          It has some good effects on the their models, like Claude seeking cooperation first. But the people behind the company have a typical "unconstrained" (in the Sowell vision sense) perspective that assumes that they know better, so they are righteous for attempting to control things (users, paying customers, their model outputs, their tool chain, the supposed deity they assume they will produce... etc.)

          • pishpash 5 hours ago
            Amodei world: pompous zealot with God complex

            Altman world: malfeasant nihilist with God complex

          • MichaelZuo 5 hours ago
            Yeah I guess there is a slight undertone that they are the superiors… with the rest of the tech world being the inferiors.

            But I hadn’t thought that as anything more than temporary flights of fancy.

        • AlexandrB 5 hours ago
          They've only been around 5 years and have grown tremendously during that time. There's no stable reputation you can rely on yet.
        • skeptic_ai 5 hours ago
          They just show their true face. You’ve been lied all this time. They were never “good”.
          • MichaelZuo 5 hours ago
            I used to interact with the LW crowd… and they were mostly not outright swindlers or scoundrels. (from what I could sense)

            I think it’s fair to say most had decent respectability.

            Anthropic hired heavily from that pool so it’s astonishing how it turned out.

        • imhoguy 5 hours ago
          Enshitification. Too big to.. upset the govt.
    • SubiculumCode 6 hours ago
      [flagged]
      • tiahura 6 hours ago
        Phased rollouts are a triggering microagression for some.
  • bibimsz 5 hours ago
    this is the one they wanted us to find
  • bitlad 5 hours ago
    Silicon valley season 6 was on point.
  • ajross 6 hours ago
    Headline is, frankly, awful. This isn't the AI secretly doing stuff and hiding it. This is the very human Anthropic engineers trying to detect Chinese scraping via some frankly hamfisted and unimaginative URL trickery.
    • krupan 5 hours ago
      I didn't assume it was the AI, just that some part of the the overall Claude Code product was doing this. I didn't assume the feature was added to Claude Code without human oversight. If it was added by Claude-the-AI itself without the humans prompting it to I would still hold the humans at Anthropic responsible. Does that make you feel better?
    • zulban 4 hours ago
      Defence in depth isn't hamfisted. They're only noobs if this is all they do.
      • ajross 3 hours ago
        FWIW: Defense in depth is a security technique, and abuse detection isn't part of that domain. Security starts from the premise that the system is supposed to be undefeatable but might have holes, and then asking where the holes might lie to decide where to put backstops.

        Here the system is "insecure" by design (literally they're trying to get the whole world to sign up for Claude Code for $200/month!) and they're trying to plug the hole that results from a "Except for Chinese Scrapers!" add-on requirement. That might be possible as an arms race kind of thing. But it's very unlikely to work by (as in the linked article) doing stuff like checking the system time zone.

    • LoganDark 5 hours ago
      The model is Claude. Claude Code is the harness.
    • Beigale 2 hours ago
      [dead]
  • grayhatter 6 hours ago
    Here's the sha of the prompt I submitted... no I don't know why there are no saved prompts with that sha.

    What do you mean you don't know where the bug is coming from?

    No, I absolutely didn't make it up, how could you accuse me of that?

    Does anyone know when this regex isn't working? I double checked it 27 times, I even asked the LLM. They all say this regex should be finding these dates.

    Weird, suddenly all the conversations are breaking when I feed them into this other tool? Something about UTF-8 errors, but I'm sure I'm only using ASCII?

    I do try to take care to make sure the things I build can be used by other people even when they care about different things. I care about understandably, determinism (as it relates to computing), and repeatability (because I want to be able to trust the systems I use).

    If y'all would be willing to try to account for use cases of others, and try not to break them... that would be nice.

    Please note: that generally when you modify something that belongs to someone else without telling them... things should be expected to break.

  • maxothex 6 hours ago
    [flagged]
  • gmziven 3 hours ago
    [dead]
  • docproof 3 hours ago
    [dead]
  • rowanG077 39 minutes ago
    [dead]
  • 123sereusername 6 hours ago
    [dead]
  • saddlerustle 6 hours ago
    [flagged]
    • dwa3592 6 hours ago
      this seems a bit extreme. pangram does not work. i have tricked it multiple times. i don't get how people are still trusting these systems.
      • dylan604 6 hours ago
        it's just a different car on the hype train
    • dewey 6 hours ago
      Source: Other AI
  • midtake 6 hours ago
    [flagged]
    • gonzalohm 6 hours ago
      Is it worse than the companies that built the agent and gave no credit for the data they used?
    • matheusmoreira 6 hours ago
      Why would you give free advertising to trillion dollar corporations?
    • axutio 6 hours ago
      Would you also say that "someone who wants to use an IDE / LSP features to code and not give credit to the IDE / LSP is the worst kind of person"? If not, what is the difference between the two for you?
      • dylan604 6 hours ago
        one wrote code while the other is used by meatbags to write code. why is this example always marched out like it means something?
        • zahlman 6 hours ago
          > one wrote code while the other is used by meatbags to write code.

          One is not a "meatbag" while the other is not a "meatbag". And no, outputting something on stdout that happens to function as code is not "writing" it in the sense that we actually care about here. That's conflating the metaphor we use in describing program behaviour with the actual "meatbag" activity.

          > why is this example always marched out like it means something?

          Because it obviously does.

        • LPisGood 6 hours ago
          Almost all ways of creating programs are effectively just using tools to produce code. Compiling, transpiling, interpreting byte code, etc.
          • dylan604 6 hours ago
            again, that's not what we are talking about here. we have humans writing code using an IDE. we have LLMs generating code that is placed in the IDE. why are people obtuse to this? why are bots obtuse to this?
            • LPisGood 3 hours ago
              We have humans writing code using prompts. We have interpreters generating byte code that is placed in the JVM. I don’t think it’s obtuse to look at it this way.
        • khuey 6 hours ago
          Claude didn't "write" anything until a meatbag told it to.
          • dylan604 6 hours ago
            My employer didn't write anything until they told me to.
      • palmotea 6 hours ago
        > Would you also say that "someone who wants to use an IDE / LSP features to code and not give credit to the IDE / LSP is the worst kind of person"?

        That's a false equivalency.

        > If not, what is the difference between the two for you?

        Let's start this out right: if they're equivalent, first you explain to us why you think so.

        • zahlman 6 hours ago
          > That's a false equivalency.

          How is it false?

          > Let's start this out right: if they're equivalent, first you explain to us why you think so.

          I think it should be really obvious how they're equivalent: both are the result of a program running on a computer, and not the result of in-the-moment cognition by a moral agent or moral patient. Of course the LLM is just a tool. Models can literally be downloaded as ordinary files. There is not some threshold to cross where some configurations of bits on a disk deserve "credit" for work and others do not.

          • palmotea 5 hours ago
            > I think it should be really obvious how they're equivalent: both are the result of a program running on a computer...

            In fact it's really obvious everything is equivalent: it's all just matter and energy!

            > Of course the LLM is just a tool. Models can literally be downloaded as ordinary files. There is not some threshold to cross where some configurations of bits on a disk deserve "credit" for work and others do not.

            Of course there is such a threshold. And it's definitely been crossed when the "tool" can operate autonomously or nearly so, when it can generate the "creation" with minimal operator input or understanding.

            Your classic IDE can't do anything without the detailed control of its operator. It's nothing like a coding agent.

        • axutio 5 hours ago
          I just don't agree that it's a false equivalency. I see them both as "tools I use to get the job done". For me, the job is not "writing code" - it is "deliver feature", "fix bug", and the accountability, responsibility, and communication that comes with it.
          • palmotea 5 hours ago
            > I just don't agree that it's a false equivalency. I see them both as "tools I use to get the job done". For me, the job is not "writing code" - it is "deliver feature", "fix bug", and the accountability, responsibility, and communication that comes with it.

            Hello, Tom Smykowski. You have people skills!

            https://www.youtube.com/watch?v=hNuu9CpdjIo

            • axutio 4 hours ago
              A lot more durable than software engineering in this day and age...
    • jazzyjackson 6 hours ago
      Should I credit Microsoft with my perfect spelling as well ?
    • fg137 6 hours ago
      And your comment is completely irrelevant to the article's content.
  • atonse 6 hours ago
    [flagged]
    • Maken 6 hours ago
      If scrapping content is legal, model distillation should be legal too.
      • palmotea 6 hours ago
        > If scrapping content is legal, model distillation should be legal too.

        No, because legality should be determined by what's in the best interests of Athropic and OpenAI's business models.

        Hopefully they're working on RLHF their models to insert clauses making that reality clear into any legislation their models generate or review. That way it's only a matter of time until the confusion is cleared up.

      • thewebguyd 5 hours ago
        I suppose model distillation is technically legal, in terms of copyright, because LLM output is automatically public domain.

        It's only "illegal" from a standpoint of breach of contract given its against the terms of use/service, which is to say its not illegal at all, there's no criminality there.

        • atonse 5 hours ago
          Yeah I considered whether I should use the term "illegal" in my original post, but in this case, I believe these models are actually banned for use in China, right? Like there are probably export controls (at least with the NVidia chips)

          I honestly don't know ... yeah if it's just technically a terms of use violation (which isn't illegal, just a violation of one company's rules, for which Anthropic has every right to stop), or do we now have export controls applied from the various government actions, etc making them truly illegal now.

          • thewebguyd 4 hours ago
            we have global export controls on Fable/Mythos, and I think (but I'm not 100% sure) that other frontier models are illegal for a US company to provide to China. So Anthropic geoblocks it, but unlike Mythos/Fable, non US citizens can still use Opus, etc just not from within China.

            But because of the public domain status of LLM output (in the US) I'm not sure paying someone to run a bunch of prompts through Claude, post the output on a public website and then have a lab in China pull that output, would run afoul of any laws I think that would be legal on technicality. AFAIK Anthropic has no ban in its terms of use that you can't share Claude's output publicly. You still need interactivity for distillation, but I don't think (for now) there's anything stopping a Chinese or other lab from sending people to the US, signing up for a Claude subscription and doing the work state side.

            Distillation is pretty much impossible to stop. The US GOV would have to go the full export controls route like they did for Fable/Mythos to stop any non-US citizen from using/accessing the model, which is going to be impractical if not impossible to enforce.

    • android521 6 hours ago
      There are so many China born Chinese employees at Anthropic and OpenAI and I think quite a lot of them have already been recruited as spy . So it is almost impossible to keep secrets from Chinese government.
    • matheusmoreira 6 hours ago
      > steal the models or illegally distill them

      The irony.

    • botfriendsarent 6 hours ago
      At what point though doesnt somebody stand back and say "wow, thats really dumb!" I think its probably more an indication of a dev having too much time on their hands rather than being in a hurry.
    • dofm 6 hours ago
      Not totally new territory; there was a highly compressed period of panic about encryption 35 [0] years ago:

      https://en.wikipedia.org/wiki/Pretty_Good_Privacy#Criminal_i...

      [0] f**k I'm old

    • bakugo 6 hours ago
      > steal the models or illegally distill them

      Oh no, they're trying to steal the models that were trained on stolen data? That's horrible, I feel so bad for Anthropic.

  • felipelalli 5 hours ago
    Ridiculous.
  • love0972 6 hours ago
    Is that really how it is? How will this affect our future?
  • teravor 4 hours ago
    the Chinese they are trying to catch must be amateurs, first thing you should do is construct a sandbox which looks indistinguishable from a common user. second thing is to put it behind a residential proxy.