The Claude Code CLI covertly alters the format of its system prompt (using slashes instead of dashes, and a different apostrophe unicode character) when it detects the user is in Chinese time zones like Shanghai or northwestern China, effectively fingerprinting Chinese users to Anthropic's backend, likely to help detect distillation attempts by Chinese AI labs.
CJ describes a reverse-engineering finding that Claude Code steganographically alters date formatting and punctuation in its prompts based on the user's Chinese time zone or domain, likely to detect and deter model-distillation attempts by rival Chinese AI labs. ✦ AI generated
CJ Reynolds · Syntax · 2026-07-06 · original ↗
starts at this moment · 74:25
there is some code that will detect like if you're running cloud code from the Asia Shanghai time zone or the Asia... basically, if it detects that you're in either of these two Chinese time zones, it changes the prompt to have slashes instead of dashes and then it changes the apostrophe to use a different unicode value instead... it basically just fingerprinted you as someone using cloud code in China.
verbatim transcript · starts at 74:25
74:25prompt with cloud code, it has a piece of text at the top that says today's date is year- month-day. And that's the standard format. But there is some code that will detect like if you're running cloud code from the Asia Shanghai time zone or the Asia Eur. Is that like Russia or I don't know. >> I'm gonna go and say I do not know. Yes. >> Okay. I'll I'll look it up. I'll let
74:56that run in the background. Um northwest Oh, it's northwestern China. So, they're actually just two different Chinese time zones. So, basically, if it detects that you're in either of these two chi Chinese time zones, it changes the prompt to have slashes instead of dashes and then it changes the apostrophe to use a different unicode value instead. So if you were working on code in China and you you were even let's say you were
75:23just watching the request that cloud code was making you would kind of have no idea that it basically just fingerprinted you as someone using cloud code in China. But the way it fingerprints is it uses a different apostrophe character and uses slashes instead of dashes. Um the other thing is it can it detects uh I think like what domain you're running from and this is essentially to help prevent distillation
75:47attacks where some of these Chinese labs like DeepSeek and some of the others like Zai um are potentially prompting Claude saving the responses and then using that as training for their own models. So it detects where you're running from in terms of your domain and there's a whole list of like deepseek, moonshot, miniax and um all of that is is passed in in the prompt as well.
76:14So all of this to say that the cloud code harness that you're using locally is able to do things like this like auto accept your code after 60 seconds if you don't respond or let their API know on the back end that you're running this code from a specific part of the world or from a specific company. >> Um which is fascinating. I mean like it's they built the tool. They have
- ·Detects Asia/Shanghai and other Chinese time zones
- ·Alters system prompt formatting covertly when detected
- ·Swaps dashes for slashes in date format
- ·Changes apostrophe to a different unicode character
- ·Steganographic marker sent to Anthropic's backend
- ·Helps identify usage tied to Chinese time zones/domains
- ·Suspected aim: detect rival Chinese labs distilling Claude
- ·Effectively fingerprints China-based Claude Code users