qcc


Nameqcc JSON
Version 0.2.2 PyPI version JSON
download
home_pageNone
Summary🚀 现代化 Claude Code 配置管理神器 - 零配置启动,多端同步,安全加密,厂商快速配置
upload_time2025-08-16 14:10:26
maintainerNone
docs_urlNone
authorQCC Team
requires_python>=3.7
licenseNone
keywords ai anthropic claude cli config fast-config provider qcc
VCS
bugtrack_url
requirements click requests cryptography
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 🚀 QCC - Quick Claude Config

<div align="center">

[![Python](https://img.shields.io/badge/Python-3.7+-blue.svg)](https://python.org)
[![PyPI](https://img.shields.io/pypi/v/qcc.svg)](https://pypi.org/project/qcc/)
[![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)
[![Code Style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)

**🌟 现代化 Claude Code 配置管理神器 🌟**

*零配置启动 • 多端同步 • 安全加密 • 一键部署*

</div>

---

## ✨ 核心特性

<table>
<tr>
<td width="50%">

### 🎯 **智能启动**
- 🚀 零配置体验,3秒智能选择
- 🔄 自动同步,跨设备无缝切换
- 💡 智能默认,记住你的使用习惯

### 🔐 **安全可靠**
- 🛡️ 端到端加密存储
- 🔑 用户自主数据控制
- 🚫 无中心化存储风险

</td>
<td width="50%">

### ☁️ **多端同步**
- 📱 GitHub 跨平台同步
- 💾 iCloud/OneDrive/Dropbox 本地云盘
- 🏠 纯本地存储模式

### ⚡ **现代架构**
- 📦 支持 `uvx` 零安装运行
- 🎨 现代 Python 包管理
- 🔧 模块化设计,易于扩展

</td>
</tr>
</table>

---

## 🎮 快速开始

### 🌟 零安装体验(推荐)

```bash
# 🔥 一行命令,立即体验
curl -LsSf https://astral.sh/uv/install.sh | sh && uvx qcc
```

<details>
<summary>💫 首次运行自动完成以下魔法</summary>

1. ⬇️ **自动下载**最新版本
2. 🔧 **智能选择**存储后端(GitHub/云盘/本地)
3. 🔐 **安全认证**(GitHub 设备流,无需本地服务器)
4. ☁️ **创建云存储**,安全加密
5. 🔄 **同步配置**档案
6. 🎯 **智能选择**配置(3秒超时)
7. 🚀 **启动** Claude Code

</details>

### 📦 传统安装

```bash
# 🛠️ 使用 uv(推荐)
uv tool install qcc

# 📎 或使用 pip
pip install qcc
```

---

## 🎪 厂商快速配置

### 🌈 一键配置任意 AI 厂商

```bash
qcc fc  # 🎭 Fast Config - 厂商配置向导
```

<div align="center">

```mermaid
graph LR
    A[🎯 选择厂商] --> B[🌐 浏览器注册]
    B --> C[🔑 输入 API Key]
    C --> D[✅ 确认配置]
    D --> E[🚀 启动 Claude]
    
    style A fill:#ff6b6b
    style B fill:#4ecdc4
    style C fill:#45b7d1
    style D fill:#f9ca24
    style E fill:#6c5ce7
```

</div>

#### 🎨 支持的厂商(云端实时更新)

- 🏢 **Anthropic 官方** - 原生 Claude API
- 🌟 **Claude Plus** - 第三方增强服务
- 🔄 **更多厂商** - 云端配置实时更新

---

## 🎯 核心命令

<table>
<tr>
<td width="50%">

### 🚀 **快速操作**
```bash
qcc                    # 🌟 智能启动
qcc fc                 # 🎭 厂商快速配置
qcc init               # 🔧 初始化设置
qcc add work           # ➕ 添加配置
```

</td>
<td width="50%">

### 📋 **管理命令**
```bash
qcc list               # 📜 查看所有配置
qcc use work           # 🎯 使用指定配置
qcc status             # 📊 系统状态
qcc sync               # 🔄 手动同步
```

</td>
</tr>
</table>

### 🛠️ 高级管理

```bash
qcc default work       # ⭐ 设置默认配置
qcc config             # ⚙️  配置管理(更改存储方式)
qcc remove old         # 🗑️  删除配置
qcc uninstall          # 🧹 清理本地数据(保留云端)
```

---

## 🏗️ 存储后端

<div align="center">

| 🌐 GitHub | ☁️ 云盘同步 | 🏠 本地存储 |
|-----------|------------|------------|
| 🔄 全平台通用 | 📱 平台特定 | 🔒 完全私有 |
| 🛡️ 设备流认证 | 📁 文件同步 | 💾 本地缓存 |
| 🌍 随处可用 | ⚡ 快速同步 | 🚫 无需网络 |

</div>

### 🌟 GitHub 跨平台
- 🔐 **安全认证**:设备流,无需本地服务器
- 🌍 **全平台**:Windows、macOS、Linux 通用
- 📊 **数据主权**:存储在你的 GitHub 账户

### 📁 智能云盘检测
- 🍎 **macOS**:自动检测 iCloud Drive
- 🪟 **Windows**:自动检测 OneDrive
- 🐧 **Linux**:自动检测 Dropbox

### 🏠 本地模式
- 🔒 **完全私有**:无云端同步
- 📂 **本地存储**:`~/.fastcc/`
- 🚀 **极速启动**:无网络依赖

---

## 🛡️ 安全架构

<div align="center">

```mermaid
graph TD
    A[🔑 用户数据] --> B[🔐 端到端加密]
    B --> C[☁️ 用户自有存储]
    C --> D[🛡️ 零信任架构]
    
    E[🚫 无中心化数据库] --> F[🔒 本地文件权限 600]
    F --> G[🔐 OAuth 设备流]
    G --> H[✅ 完全安全]
    
    style A fill:#ff6b6b
    style B fill:#4ecdc4
    style C fill:#45b7d1
    style D fill:#6c5ce7
    style E fill:#f9ca24
    style F fill:#26de81
    style G fill:#fd79a8
    style H fill:#00b894
```

</div>

---

## 🏛️ 系统架构

<div align="center">

```
🏗️ QCC 模块化架构
┌─────────────────────────────────────┐
│  🎮 CLI Interface (Click)          │
├─────────────────────────────────────┤
│  🧠 Core Logic                     │
│   ├── 📋 ConfigManager             │
│   └── 👤 ConfigProfile             │
├─────────────────────────────────────┤
│  🎭 Providers (New!)               │
│   ├── 🌐 ProvidersManager          │
│   └── 🔗 Browser Integration       │
├─────────────────────────────────────┤
│  💾 Storage Backends               │
│   ├── 🐙 GitHub (OAuth/Simple)     │
│   ├── ☁️  Cloud Files              │
│   └── 🏠 Local Storage             │
├─────────────────────────────────────┤
│  🔐 Security & Utils               │
│   ├── 🔑 Cryptography              │
│   ├── 🔐 OAuth Authentication      │
│   └── 🎨 UI Components             │
└─────────────────────────────────────┘
```

</div>

### 🎯 设计原则

- 🔌 **插件化**:存储后端可扩展
- 🛡️ **安全第一**:端到端加密,用户数据自主
- 🎨 **用户友好**:智能默认,最少交互
- 🚀 **现代化**:支持 uvx,零安装体验

---

## 🔧 开发指南

### 🏗️ 开发环境

```bash
# 🚀 快速搭建开发环境
git clone <repository>
cd qcc
python -m venv fastcc_env
source fastcc_env/bin/activate  # Windows: fastcc_env\Scripts\activate

# 📦 安装开发依赖
pip install -e .

# 🧪 运行开发版本
python -m fastcc.cli --help
```

### 🧪 测试套件

```bash
# 🔬 运行测试
source fastcc_test_env/bin/activate

# 🎯 单个测试
python3 tests/test_providers.py        # 厂商配置测试
python3 tests/test_fc_command.py       # FC 命令测试
python3 tests/test_simplified_fc.py    # 简化流程测试

# 🎪 全部测试
python3 -m pytest tests/ -v
```

### 📦 构建发布

```bash
# 🔨 构建包
pip install build twine
python -m build

# 🚀 发布到 PyPI
python -m twine upload dist/*
```

---

## 🎨 配置文件

| 📁 文件 | 📍 位置 | 📝 说明 |
|--------|---------|--------|
| 💾 **本地缓存** | `~/.fastcc/cache.json` | 配置档案缓存 |
| 🔑 **GitHub Token** | `~/.fastcc/github_token.json` | 认证令牌 |
| ⚙️ **Claude 设置** | `~/.claude/settings.json` | Claude Code 配置 |

---

## 📋 系统要求

<div align="center">

| 🐍 Python | 📦 依赖 | 🖥️ 平台 |
|-----------|---------|---------|
| **3.7+** | click, requests, cryptography | Windows, macOS, Linux |

</div>

---

## 🤝 贡献指南

<div align="center">

🎉 **欢迎贡献!** 🎉

[🐛 报告问题](../../issues) • [💡 功能建议](../../issues) • [🔀 提交 PR](../../pulls)

</div>

---

## 📄 开源协议

**MIT License** - 自由使用,欢迎贡献!

---

<div align="center">

### 🌟 如果这个项目对你有帮助,请给个 Star!⭐

**让 AI 配置管理变得简单而优雅** ✨

</div>
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "qcc",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "ai, anthropic, claude, cli, config, fast-config, provider, qcc",
    "author": "QCC Team",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/6a/7b/dfabab045af215f2cf26cf0a5cdf182dcc83383f790bd4d4f07be2495999/qcc-0.2.2.tar.gz",
    "platform": null,
    "description": "# \ud83d\ude80 QCC - Quick Claude Config\n\n<div align=\"center\">\n\n[![Python](https://img.shields.io/badge/Python-3.7+-blue.svg)](https://python.org)\n[![PyPI](https://img.shields.io/pypi/v/qcc.svg)](https://pypi.org/project/qcc/)\n[![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n[![Code Style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n\n**\ud83c\udf1f \u73b0\u4ee3\u5316 Claude Code \u914d\u7f6e\u7ba1\u7406\u795e\u5668 \ud83c\udf1f**\n\n*\u96f6\u914d\u7f6e\u542f\u52a8 \u2022 \u591a\u7aef\u540c\u6b65 \u2022 \u5b89\u5168\u52a0\u5bc6 \u2022 \u4e00\u952e\u90e8\u7f72*\n\n</div>\n\n---\n\n## \u2728 \u6838\u5fc3\u7279\u6027\n\n<table>\n<tr>\n<td width=\"50%\">\n\n### \ud83c\udfaf **\u667a\u80fd\u542f\u52a8**\n- \ud83d\ude80 \u96f6\u914d\u7f6e\u4f53\u9a8c\uff0c3\u79d2\u667a\u80fd\u9009\u62e9\n- \ud83d\udd04 \u81ea\u52a8\u540c\u6b65\uff0c\u8de8\u8bbe\u5907\u65e0\u7f1d\u5207\u6362\n- \ud83d\udca1 \u667a\u80fd\u9ed8\u8ba4\uff0c\u8bb0\u4f4f\u4f60\u7684\u4f7f\u7528\u4e60\u60ef\n\n### \ud83d\udd10 **\u5b89\u5168\u53ef\u9760**\n- \ud83d\udee1\ufe0f \u7aef\u5230\u7aef\u52a0\u5bc6\u5b58\u50a8\n- \ud83d\udd11 \u7528\u6237\u81ea\u4e3b\u6570\u636e\u63a7\u5236\n- \ud83d\udeab \u65e0\u4e2d\u5fc3\u5316\u5b58\u50a8\u98ce\u9669\n\n</td>\n<td width=\"50%\">\n\n### \u2601\ufe0f **\u591a\u7aef\u540c\u6b65**\n- \ud83d\udcf1 GitHub \u8de8\u5e73\u53f0\u540c\u6b65\n- \ud83d\udcbe iCloud/OneDrive/Dropbox \u672c\u5730\u4e91\u76d8\n- \ud83c\udfe0 \u7eaf\u672c\u5730\u5b58\u50a8\u6a21\u5f0f\n\n### \u26a1 **\u73b0\u4ee3\u67b6\u6784**\n- \ud83d\udce6 \u652f\u6301 `uvx` \u96f6\u5b89\u88c5\u8fd0\u884c\n- \ud83c\udfa8 \u73b0\u4ee3 Python \u5305\u7ba1\u7406\n- \ud83d\udd27 \u6a21\u5757\u5316\u8bbe\u8ba1\uff0c\u6613\u4e8e\u6269\u5c55\n\n</td>\n</tr>\n</table>\n\n---\n\n## \ud83c\udfae \u5feb\u901f\u5f00\u59cb\n\n### \ud83c\udf1f \u96f6\u5b89\u88c5\u4f53\u9a8c\uff08\u63a8\u8350\uff09\n\n```bash\n# \ud83d\udd25 \u4e00\u884c\u547d\u4ee4\uff0c\u7acb\u5373\u4f53\u9a8c\ncurl -LsSf https://astral.sh/uv/install.sh | sh && uvx qcc\n```\n\n<details>\n<summary>\ud83d\udcab \u9996\u6b21\u8fd0\u884c\u81ea\u52a8\u5b8c\u6210\u4ee5\u4e0b\u9b54\u6cd5</summary>\n\n1. \u2b07\ufe0f **\u81ea\u52a8\u4e0b\u8f7d**\u6700\u65b0\u7248\u672c\n2. \ud83d\udd27 **\u667a\u80fd\u9009\u62e9**\u5b58\u50a8\u540e\u7aef\uff08GitHub/\u4e91\u76d8/\u672c\u5730\uff09\n3. \ud83d\udd10 **\u5b89\u5168\u8ba4\u8bc1**\uff08GitHub \u8bbe\u5907\u6d41\uff0c\u65e0\u9700\u672c\u5730\u670d\u52a1\u5668\uff09\n4. \u2601\ufe0f **\u521b\u5efa\u4e91\u5b58\u50a8**\uff0c\u5b89\u5168\u52a0\u5bc6\n5. \ud83d\udd04 **\u540c\u6b65\u914d\u7f6e**\u6863\u6848\n6. \ud83c\udfaf **\u667a\u80fd\u9009\u62e9**\u914d\u7f6e\uff083\u79d2\u8d85\u65f6\uff09\n7. \ud83d\ude80 **\u542f\u52a8** Claude Code\n\n</details>\n\n### \ud83d\udce6 \u4f20\u7edf\u5b89\u88c5\n\n```bash\n# \ud83d\udee0\ufe0f \u4f7f\u7528 uv\uff08\u63a8\u8350\uff09\nuv tool install qcc\n\n# \ud83d\udcce \u6216\u4f7f\u7528 pip\npip install qcc\n```\n\n---\n\n## \ud83c\udfaa \u5382\u5546\u5feb\u901f\u914d\u7f6e\n\n### \ud83c\udf08 \u4e00\u952e\u914d\u7f6e\u4efb\u610f AI \u5382\u5546\n\n```bash\nqcc fc  # \ud83c\udfad Fast Config - \u5382\u5546\u914d\u7f6e\u5411\u5bfc\n```\n\n<div align=\"center\">\n\n```mermaid\ngraph LR\n    A[\ud83c\udfaf \u9009\u62e9\u5382\u5546] --> B[\ud83c\udf10 \u6d4f\u89c8\u5668\u6ce8\u518c]\n    B --> C[\ud83d\udd11 \u8f93\u5165 API Key]\n    C --> D[\u2705 \u786e\u8ba4\u914d\u7f6e]\n    D --> E[\ud83d\ude80 \u542f\u52a8 Claude]\n    \n    style A fill:#ff6b6b\n    style B fill:#4ecdc4\n    style C fill:#45b7d1\n    style D fill:#f9ca24\n    style E fill:#6c5ce7\n```\n\n</div>\n\n#### \ud83c\udfa8 \u652f\u6301\u7684\u5382\u5546\uff08\u4e91\u7aef\u5b9e\u65f6\u66f4\u65b0\uff09\n\n- \ud83c\udfe2 **Anthropic \u5b98\u65b9** - \u539f\u751f Claude API\n- \ud83c\udf1f **Claude Plus** - \u7b2c\u4e09\u65b9\u589e\u5f3a\u670d\u52a1\n- \ud83d\udd04 **\u66f4\u591a\u5382\u5546** - \u4e91\u7aef\u914d\u7f6e\u5b9e\u65f6\u66f4\u65b0\n\n---\n\n## \ud83c\udfaf \u6838\u5fc3\u547d\u4ee4\n\n<table>\n<tr>\n<td width=\"50%\">\n\n### \ud83d\ude80 **\u5feb\u901f\u64cd\u4f5c**\n```bash\nqcc                    # \ud83c\udf1f \u667a\u80fd\u542f\u52a8\nqcc fc                 # \ud83c\udfad \u5382\u5546\u5feb\u901f\u914d\u7f6e\nqcc init               # \ud83d\udd27 \u521d\u59cb\u5316\u8bbe\u7f6e\nqcc add work           # \u2795 \u6dfb\u52a0\u914d\u7f6e\n```\n\n</td>\n<td width=\"50%\">\n\n### \ud83d\udccb **\u7ba1\u7406\u547d\u4ee4**\n```bash\nqcc list               # \ud83d\udcdc \u67e5\u770b\u6240\u6709\u914d\u7f6e\nqcc use work           # \ud83c\udfaf \u4f7f\u7528\u6307\u5b9a\u914d\u7f6e\nqcc status             # \ud83d\udcca \u7cfb\u7edf\u72b6\u6001\nqcc sync               # \ud83d\udd04 \u624b\u52a8\u540c\u6b65\n```\n\n</td>\n</tr>\n</table>\n\n### \ud83d\udee0\ufe0f \u9ad8\u7ea7\u7ba1\u7406\n\n```bash\nqcc default work       # \u2b50 \u8bbe\u7f6e\u9ed8\u8ba4\u914d\u7f6e\nqcc config             # \u2699\ufe0f  \u914d\u7f6e\u7ba1\u7406\uff08\u66f4\u6539\u5b58\u50a8\u65b9\u5f0f\uff09\nqcc remove old         # \ud83d\uddd1\ufe0f  \u5220\u9664\u914d\u7f6e\nqcc uninstall          # \ud83e\uddf9 \u6e05\u7406\u672c\u5730\u6570\u636e\uff08\u4fdd\u7559\u4e91\u7aef\uff09\n```\n\n---\n\n## \ud83c\udfd7\ufe0f \u5b58\u50a8\u540e\u7aef\n\n<div align=\"center\">\n\n| \ud83c\udf10 GitHub | \u2601\ufe0f \u4e91\u76d8\u540c\u6b65 | \ud83c\udfe0 \u672c\u5730\u5b58\u50a8 |\n|-----------|------------|------------|\n| \ud83d\udd04 \u5168\u5e73\u53f0\u901a\u7528 | \ud83d\udcf1 \u5e73\u53f0\u7279\u5b9a | \ud83d\udd12 \u5b8c\u5168\u79c1\u6709 |\n| \ud83d\udee1\ufe0f \u8bbe\u5907\u6d41\u8ba4\u8bc1 | \ud83d\udcc1 \u6587\u4ef6\u540c\u6b65 | \ud83d\udcbe \u672c\u5730\u7f13\u5b58 |\n| \ud83c\udf0d \u968f\u5904\u53ef\u7528 | \u26a1 \u5feb\u901f\u540c\u6b65 | \ud83d\udeab \u65e0\u9700\u7f51\u7edc |\n\n</div>\n\n### \ud83c\udf1f GitHub \u8de8\u5e73\u53f0\n- \ud83d\udd10 **\u5b89\u5168\u8ba4\u8bc1**\uff1a\u8bbe\u5907\u6d41\uff0c\u65e0\u9700\u672c\u5730\u670d\u52a1\u5668\n- \ud83c\udf0d **\u5168\u5e73\u53f0**\uff1aWindows\u3001macOS\u3001Linux \u901a\u7528\n- \ud83d\udcca **\u6570\u636e\u4e3b\u6743**\uff1a\u5b58\u50a8\u5728\u4f60\u7684 GitHub \u8d26\u6237\n\n### \ud83d\udcc1 \u667a\u80fd\u4e91\u76d8\u68c0\u6d4b\n- \ud83c\udf4e **macOS**\uff1a\u81ea\u52a8\u68c0\u6d4b iCloud Drive\n- \ud83e\ude9f **Windows**\uff1a\u81ea\u52a8\u68c0\u6d4b OneDrive\n- \ud83d\udc27 **Linux**\uff1a\u81ea\u52a8\u68c0\u6d4b Dropbox\n\n### \ud83c\udfe0 \u672c\u5730\u6a21\u5f0f\n- \ud83d\udd12 **\u5b8c\u5168\u79c1\u6709**\uff1a\u65e0\u4e91\u7aef\u540c\u6b65\n- \ud83d\udcc2 **\u672c\u5730\u5b58\u50a8**\uff1a`~/.fastcc/`\n- \ud83d\ude80 **\u6781\u901f\u542f\u52a8**\uff1a\u65e0\u7f51\u7edc\u4f9d\u8d56\n\n---\n\n## \ud83d\udee1\ufe0f \u5b89\u5168\u67b6\u6784\n\n<div align=\"center\">\n\n```mermaid\ngraph TD\n    A[\ud83d\udd11 \u7528\u6237\u6570\u636e] --> B[\ud83d\udd10 \u7aef\u5230\u7aef\u52a0\u5bc6]\n    B --> C[\u2601\ufe0f \u7528\u6237\u81ea\u6709\u5b58\u50a8]\n    C --> D[\ud83d\udee1\ufe0f \u96f6\u4fe1\u4efb\u67b6\u6784]\n    \n    E[\ud83d\udeab \u65e0\u4e2d\u5fc3\u5316\u6570\u636e\u5e93] --> F[\ud83d\udd12 \u672c\u5730\u6587\u4ef6\u6743\u9650 600]\n    F --> G[\ud83d\udd10 OAuth \u8bbe\u5907\u6d41]\n    G --> H[\u2705 \u5b8c\u5168\u5b89\u5168]\n    \n    style A fill:#ff6b6b\n    style B fill:#4ecdc4\n    style C fill:#45b7d1\n    style D fill:#6c5ce7\n    style E fill:#f9ca24\n    style F fill:#26de81\n    style G fill:#fd79a8\n    style H fill:#00b894\n```\n\n</div>\n\n---\n\n## \ud83c\udfdb\ufe0f \u7cfb\u7edf\u67b6\u6784\n\n<div align=\"center\">\n\n```\n\ud83c\udfd7\ufe0f QCC \u6a21\u5757\u5316\u67b6\u6784\n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502  \ud83c\udfae CLI Interface (Click)          \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502  \ud83e\udde0 Core Logic                     \u2502\n\u2502   \u251c\u2500\u2500 \ud83d\udccb ConfigManager             \u2502\n\u2502   \u2514\u2500\u2500 \ud83d\udc64 ConfigProfile             \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502  \ud83c\udfad Providers (New!)               \u2502\n\u2502   \u251c\u2500\u2500 \ud83c\udf10 ProvidersManager          \u2502\n\u2502   \u2514\u2500\u2500 \ud83d\udd17 Browser Integration       \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502  \ud83d\udcbe Storage Backends               \u2502\n\u2502   \u251c\u2500\u2500 \ud83d\udc19 GitHub (OAuth/Simple)     \u2502\n\u2502   \u251c\u2500\u2500 \u2601\ufe0f  Cloud Files              \u2502\n\u2502   \u2514\u2500\u2500 \ud83c\udfe0 Local Storage             \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502  \ud83d\udd10 Security & Utils               \u2502\n\u2502   \u251c\u2500\u2500 \ud83d\udd11 Cryptography              \u2502\n\u2502   \u251c\u2500\u2500 \ud83d\udd10 OAuth Authentication      \u2502\n\u2502   \u2514\u2500\u2500 \ud83c\udfa8 UI Components             \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n```\n\n</div>\n\n### \ud83c\udfaf \u8bbe\u8ba1\u539f\u5219\n\n- \ud83d\udd0c **\u63d2\u4ef6\u5316**\uff1a\u5b58\u50a8\u540e\u7aef\u53ef\u6269\u5c55\n- \ud83d\udee1\ufe0f **\u5b89\u5168\u7b2c\u4e00**\uff1a\u7aef\u5230\u7aef\u52a0\u5bc6\uff0c\u7528\u6237\u6570\u636e\u81ea\u4e3b\n- \ud83c\udfa8 **\u7528\u6237\u53cb\u597d**\uff1a\u667a\u80fd\u9ed8\u8ba4\uff0c\u6700\u5c11\u4ea4\u4e92\n- \ud83d\ude80 **\u73b0\u4ee3\u5316**\uff1a\u652f\u6301 uvx\uff0c\u96f6\u5b89\u88c5\u4f53\u9a8c\n\n---\n\n## \ud83d\udd27 \u5f00\u53d1\u6307\u5357\n\n### \ud83c\udfd7\ufe0f \u5f00\u53d1\u73af\u5883\n\n```bash\n# \ud83d\ude80 \u5feb\u901f\u642d\u5efa\u5f00\u53d1\u73af\u5883\ngit clone <repository>\ncd qcc\npython -m venv fastcc_env\nsource fastcc_env/bin/activate  # Windows: fastcc_env\\Scripts\\activate\n\n# \ud83d\udce6 \u5b89\u88c5\u5f00\u53d1\u4f9d\u8d56\npip install -e .\n\n# \ud83e\uddea \u8fd0\u884c\u5f00\u53d1\u7248\u672c\npython -m fastcc.cli --help\n```\n\n### \ud83e\uddea \u6d4b\u8bd5\u5957\u4ef6\n\n```bash\n# \ud83d\udd2c \u8fd0\u884c\u6d4b\u8bd5\nsource fastcc_test_env/bin/activate\n\n# \ud83c\udfaf \u5355\u4e2a\u6d4b\u8bd5\npython3 tests/test_providers.py        # \u5382\u5546\u914d\u7f6e\u6d4b\u8bd5\npython3 tests/test_fc_command.py       # FC \u547d\u4ee4\u6d4b\u8bd5\npython3 tests/test_simplified_fc.py    # \u7b80\u5316\u6d41\u7a0b\u6d4b\u8bd5\n\n# \ud83c\udfaa \u5168\u90e8\u6d4b\u8bd5\npython3 -m pytest tests/ -v\n```\n\n### \ud83d\udce6 \u6784\u5efa\u53d1\u5e03\n\n```bash\n# \ud83d\udd28 \u6784\u5efa\u5305\npip install build twine\npython -m build\n\n# \ud83d\ude80 \u53d1\u5e03\u5230 PyPI\npython -m twine upload dist/*\n```\n\n---\n\n## \ud83c\udfa8 \u914d\u7f6e\u6587\u4ef6\n\n| \ud83d\udcc1 \u6587\u4ef6 | \ud83d\udccd \u4f4d\u7f6e | \ud83d\udcdd \u8bf4\u660e |\n|--------|---------|--------|\n| \ud83d\udcbe **\u672c\u5730\u7f13\u5b58** | `~/.fastcc/cache.json` | \u914d\u7f6e\u6863\u6848\u7f13\u5b58 |\n| \ud83d\udd11 **GitHub Token** | `~/.fastcc/github_token.json` | \u8ba4\u8bc1\u4ee4\u724c |\n| \u2699\ufe0f **Claude \u8bbe\u7f6e** | `~/.claude/settings.json` | Claude Code \u914d\u7f6e |\n\n---\n\n## \ud83d\udccb \u7cfb\u7edf\u8981\u6c42\n\n<div align=\"center\">\n\n| \ud83d\udc0d Python | \ud83d\udce6 \u4f9d\u8d56 | \ud83d\udda5\ufe0f \u5e73\u53f0 |\n|-----------|---------|---------|\n| **3.7+** | click, requests, cryptography | Windows, macOS, Linux |\n\n</div>\n\n---\n\n## \ud83e\udd1d \u8d21\u732e\u6307\u5357\n\n<div align=\"center\">\n\n\ud83c\udf89 **\u6b22\u8fce\u8d21\u732e\uff01** \ud83c\udf89\n\n[\ud83d\udc1b \u62a5\u544a\u95ee\u9898](../../issues) \u2022 [\ud83d\udca1 \u529f\u80fd\u5efa\u8bae](../../issues) \u2022 [\ud83d\udd00 \u63d0\u4ea4 PR](../../pulls)\n\n</div>\n\n---\n\n## \ud83d\udcc4 \u5f00\u6e90\u534f\u8bae\n\n**MIT License** - \u81ea\u7531\u4f7f\u7528\uff0c\u6b22\u8fce\u8d21\u732e\uff01\n\n---\n\n<div align=\"center\">\n\n### \ud83c\udf1f \u5982\u679c\u8fd9\u4e2a\u9879\u76ee\u5bf9\u4f60\u6709\u5e2e\u52a9\uff0c\u8bf7\u7ed9\u4e2a Star\uff01\u2b50\n\n**\u8ba9 AI \u914d\u7f6e\u7ba1\u7406\u53d8\u5f97\u7b80\u5355\u800c\u4f18\u96c5** \u2728\n\n</div>",
    "bugtrack_url": null,
    "license": null,
    "summary": "\ud83d\ude80 \u73b0\u4ee3\u5316 Claude Code \u914d\u7f6e\u7ba1\u7406\u795e\u5668 - \u96f6\u914d\u7f6e\u542f\u52a8\uff0c\u591a\u7aef\u540c\u6b65\uff0c\u5b89\u5168\u52a0\u5bc6\uff0c\u5382\u5546\u5feb\u901f\u914d\u7f6e",
    "version": "0.2.2",
    "project_urls": {
        "Homepage": "https://github.com/lghguge520/qcc",
        "Issues": "https://github.com/lghguge520/qcc/issues",
        "Repository": "https://github.com/lghguge520/qcc.git"
    },
    "split_keywords": [
        "ai",
        " anthropic",
        " claude",
        " cli",
        " config",
        " fast-config",
        " provider",
        " qcc"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b9e69b232e617ec2950e6b6769c4a72e2106a83ea2427a9880eb15f6e62b6ba2",
                "md5": "c14f46a596c7d3e1c4d4beaed1944599",
                "sha256": "95cc1cd2c9205433f1ff7cc0a95b73f75eee5c73154190f2e5a3cb4e19cb6ec8"
            },
            "downloads": -1,
            "filename": "qcc-0.2.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c14f46a596c7d3e1c4d4beaed1944599",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 38461,
            "upload_time": "2025-08-16T14:10:24",
            "upload_time_iso_8601": "2025-08-16T14:10:24.654767Z",
            "url": "https://files.pythonhosted.org/packages/b9/e6/9b232e617ec2950e6b6769c4a72e2106a83ea2427a9880eb15f6e62b6ba2/qcc-0.2.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6a7bdfabab045af215f2cf26cf0a5cdf182dcc83383f790bd4d4f07be2495999",
                "md5": "3a0ea3ae9181c976ed2c2dede1d618bf",
                "sha256": "9540b68531d564a8f68d9f97773b18edace68939d74f83dd0dc1d383dd073897"
            },
            "downloads": -1,
            "filename": "qcc-0.2.2.tar.gz",
            "has_sig": false,
            "md5_digest": "3a0ea3ae9181c976ed2c2dede1d618bf",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 34288,
            "upload_time": "2025-08-16T14:10:26",
            "upload_time_iso_8601": "2025-08-16T14:10:26.762526Z",
            "url": "https://files.pythonhosted.org/packages/6a/7b/dfabab045af215f2cf26cf0a5cdf182dcc83383f790bd4d4f07be2495999/qcc-0.2.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-16 14:10:26",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "lghguge520",
    "github_project": "qcc",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "click",
            "specs": [
                [
                    ">=",
                    "8.0.0"
                ]
            ]
        },
        {
            "name": "requests",
            "specs": [
                [
                    ">=",
                    "2.25.0"
                ]
            ]
        },
        {
            "name": "cryptography",
            "specs": [
                [
                    ">=",
                    "3.4.0"
                ]
            ]
        }
    ],
    "lcname": "qcc"
}
        
Elapsed time: 2.01968s