From 958a9f2f013ff3e3c680c28d1a29239a624df65f Mon Sep 17 00:00:00 2001 From: Zhengshou Lai Date: Mon, 6 Jul 2026 21:18:04 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E7=A7=BB=E9=99=A4=20resolve=5Fkey()?= =?UTF-8?q?=20=E7=AD=89=20skill=20=E7=AB=AF=E5=87=BD=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=20CLAUDE.md=20=E9=85=8D=E7=BD=AE=E6=8F=8F?= =?UTF-8?q?=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CLAUDE.md | 2 +- mytoolkit/config.py | 53 --------------------------------------------- 2 files changed, 1 insertion(+), 54 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index beb9ee4..d8b3f4f 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -55,7 +55,7 @@ mytoolkit env list # 查看所有 key mytoolkit env export # 导出为 shell export 语句 ``` -API key 读取顺序(所有 skill 脚本统一):环境变量 → `~/.mytoolkit/config.json`。共享调用为 `mytoolkit.config.resolve_key()`。 +本文件仅管理 mytoolkit 自身配置。Skill 脚本各自由其自身管理 API key(读取 `~/.xiaohe/agent/config.json`),与本配置独立。 ## 3. 语音合成 (TTS) diff --git a/mytoolkit/config.py b/mytoolkit/config.py index 4176d49..7b21a83 100644 --- a/mytoolkit/config.py +++ b/mytoolkit/config.py @@ -126,56 +126,3 @@ class Config: # Global singleton config = Config() - - -# ------------------------------------------------------------------ -# Shared utility: 2-layer key resolution for skill scripts -# ------------------------------------------------------------------ - -def resolve_key(name: str) -> str: - """Two-layer key resolution. - - Priority: - 1. Environment variable (checks ``MYCLI_`` first, then ````) - 2. ``~/.mytoolkit/config.json`` → ``keys.`` - - Returns the key value, or ``""`` if not found. - """ - # 1. Env var (MYCLI_ prefix first, then bare) - env_name = name.upper() - for var in (f"MYCLI_{env_name}", env_name): - val = os.environ.get(var, "") - if val: - return val - - # 2. ~/.mytoolkit/config.json - try: - cfg_path = Path.home() / ".mytoolkit" / "config.json" - if cfg_path.exists(): - data = json.loads(cfg_path.read_text()) - return data.get("keys", {}).get(name, "") - except (json.JSONDecodeError, OSError): - pass - - return "" - - -def write_key_to_mytoolkit(name: str, value: str) -> None: - """Write a key into ~/.mytoolkit/config.json (persistent). - - Called by skills when a key is missing and the user provides it. - """ - cfg_path = Path.home() / ".mytoolkit" / "config.json" - cfg_path.parent.mkdir(parents=True, exist_ok=True) - try: - if cfg_path.exists(): - data = json.loads(cfg_path.read_text()) - else: - data = {} - if "keys" not in data: - data["keys"] = {} - data["keys"][name] = value - cfg_path.write_text(json.dumps(data, indent=2, ensure_ascii=False) + "\n") - except (json.JSONDecodeError, OSError): - data = {"keys": {name: value}} - cfg_path.write_text(json.dumps(data, indent=2, ensure_ascii=False) + "\n")