Hacker News new | ask | show | jobs
by vemv 163 days ago
I have all these set:

    export CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY=1
    export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1
    export DISABLE_AUTOUPDATER=1
    # reduces splash screen size:
    export IS_DEMO=1
4 comments

You can add these to your `~/.claude/settings.json`:

  "env": {
    "CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY": "1",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1",
    "DISABLE_AUTOUPDATER": "1",
    "IS_DEMO": "1"
  }
Ha! Great minds think alike! I posted the same thing 3 seconds slower =(
Just an FYI to several of the posters here.

You CAN set these as env vars in your shell, but I prefer to stick 'em in the Claude settings.json:

  $ cat ~/.claude/settings.json
  {
    "env": {
      "CLAUDE_CODE_DISABLE_TERMINAL_TITLE": "1",
      "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
    }
  }

This keeps your main environment from getting cluttered.
what does the last one do?
"Added IS_DEMO environment variable to hide email and organization from the UI, useful for streaming or recording sessions"

from the changelog: https://github.com/anthropics/claude-code/blob/main/CHANGELO...

Hmmm, they already added this which has same functionality: CLAUDE_CODE_HIDE_ACCOUNT_INFO
I wasn't even aware that was possible. I will IMMEDIATELY do this. The mere fact this is necessary to stop their data-fiending is disgusting. You prepend it everytime you run Claude or do you slap that into an .env file?
These are good to append to your .bashrc or .zshrc (depending on your shell of choice) and they'll be picked up.
More generically-named env vars should not be set as an "export" in a rc file like that (IS_DEMO/DISABLE_AUTOUPDATER etc). They'll get exported to every process spawned by the shell, which could have unintended consequences.

You could instead eg:

  alias code='DISABLE_AUTOUPDATER=1 IS_DEMO=1 /usr/local/bin/code'
or write a wrapper shell script (analyse/adjust $PATH if you're going to name it the same as an existing binary/script), eg

  #!/bin/bash

  export FOO=bar

  exec /usr/local/bin/code
Oh, shame, I use claude across 4-5 devices, but thanks anyways.
I would strongly encourage you to create a global shared bashrc for your various devices - my dotfiles repo has tremendously improved my life as an eng who needs to discard dev boxes occasionally (virtual dev boxes)
Arent you going to be banned by using it on too many devices ?
They charge based on consumption as the comment below me stated.
Ah sorry, I was thinking about the Pro / Max plan, not API token usage
I think they charge based on consumption, not devices.
You can also put these into settings.json.

  > I wasn't even aware that was possible.
That's why you should always read the manual! These aren't hidden and secret settings:

https://code.claude.com/docs/en/settings

And, if you really hate manuals, you can just ask Claude to write the settings for you =D

> to stop their data-fiending

Every time you run it, it uploads most of your project's code to Anthropic's server. That's just how this category of product works. If you're disgusted by a survey...