Skip to main content

为命令行程序配置临时的启动环境变量,特别适合为 claude code 配置切换模型。

Project description

envdo

PyPI version Python version License GitHub Repo

[ 中文 | English ]

Configure environment variables for Python code or command-line programs, providing dotenv management with group-based switching.

Features

  • Group Environment Configuration - Configure a set of environment variables for programs without affecting the system environment
  • Multi-Environment Management - Support multiple environment configurations for quick switching
  • Sensitive Information Protection - Automatically hide sensitive information (TOKEN, KEY, PASSWORD, etc.)
  • Interactive Selection - Support interactive environment configuration selection
  • Clear Output - Use the rich library for clear terminal output

Installation

pip install envdo
pip install git+https://github.com/NewToolAI/envdo.git

Configuration

Create a configuration file .envdo.json (in project directory) or ~/.envdo.json (in user directory):

{
    "deepseek-3.2": {
        "ANTHROPIC_MODEL": "deepseek-reasoner",
        "ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
        "ANTHROPIC_AUTH_TOKEN": "your-token-here"
    },
    "glm-4.7": {
        "ANTHROPIC_MODEL": "glm-4.7",
        "ANTHROPIC_BASE_URL": "https://open.bigmodel.cn/api/anthropic",
        "ANTHROPIC_AUTH_TOKEN": "your-token-here"
    },
    "claude-opus": {
        "ANTHROPIC_MODEL": "claude-opus-4-5",
        "ANTHROPIC_BASE_URL": "https://api.anthropic.com",
        "ANTHROPIC_AUTH_TOKEN": "your-token-here",
        "HTTP_PROXY": "http://127.0.0.1:7890",
        "HTTPS_PROXY": "http://127.0.0.1:7890",
        "NO_PROXY": "localhost,127.0.0.1"
    }
}

Programmatic Usage

from envdo import load_envdo

load_envdo('example-1')

Command Line Usage

Demo 0

List All Environment Configurations

envdo list

Demo 1

Interactive Environment Selection

envdo select <command>

Demo 2

Run Command with Specified Environment

envdo gpt-5.2 <command>

Demo 3

Other Commands

envdo -v          # Show version
envdo --version
envdo -h          # Show help
envdo --help

Configuration Notes

  • Configuration file priority: .envdo.json in current directory > ~/.envdo.json in user directory
  • On first run, if the configuration file does not exist, an example configuration file will be automatically created
  • Sensitive information (containing keywords TOKEN, KEY, PASSWORD, SECRET, AUTH, CREDENTIAL, etc.) will be automatically displayed as ***

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

envdo-0.1.0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

envdo-0.1.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file envdo-0.1.0.tar.gz.

File metadata

  • Download URL: envdo-0.1.0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for envdo-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fd0793e2fd79583aeff40a0e495f5e79bb894037bf073f119b2d2da655be464d
MD5 3ccd3c2a9c467c3d8b1e15a5c360219e
BLAKE2b-256 bc5d74379e02e9ce78fbf8e99df6a1283a2bee64ebab4f7d229c643924c7b6b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for envdo-0.1.0.tar.gz:

Publisher: release.yml on NewToolAI/envdo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file envdo-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: envdo-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for envdo-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 07fced0dffe95fa94de97923a8b9249c032cec66543a780f09fe19dad85528a2
MD5 d3d77d3118f9def296fd8b98397e0316
BLAKE2b-256 37f1124dca786bb6e5af31b0f4a87dc83716b6dffa8869db717c80c445bce1af

See more details on using hashes here.

Provenance

The following attestation bundles were made for envdo-0.1.0-py3-none-any.whl:

Publisher: release.yml on NewToolAI/envdo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page