logo
0
0
Login
Forkfromhaorwen/cnb-cli, behind:main13 commits

CNB-CLI

CNB-CLI

✨ cnb.cool 平台的现代化命令行工具 ✨

Python Typer UV

快速上手 · 功能特性 · 下载

[!NOTE] 该项目目前处于活跃开发阶段,如果您遇到任何问题,请提交issue反馈。

简介

CNB-CLI 是 cnb.cool 平台的现代化命令行工具,提供认证管理和仓库管理功能。基于 Python Typer 构建,支持跨平台使用。

功能特性

  • 🚀 现代化 CLI: 基于 Typer 构建的交互式命令行界面
  • 🔐 认证管理: 完整的用户认证和会话管理
  • 📦 仓库管理: 便捷的代码仓库操作
  • 🎯 跨平台: 支持 Windows、Linux 和 macOS
  • 高性能: 使用 UV 包管理器,快速依赖解析
  • 🔧 易于构建: 支持一键构建独立可执行文件

[!IMPORTANT] 当前版本需要 Python 3.13+ 和 UV 包管理器。

项目结构

cnb-cli/ ├── cnb/ # 核心模块 │ ├── __init__.py │ ├── auth.py # 认证管理模块 │ └── repo.py # 仓库管理模块 ├── main.py # 主入口文件 ├── build.sh # Linux/macOS 构建脚本 ├── build.bat # Windows 构建脚本 ├── pyproject.toml # 项目配置 └── README.md # 项目文档

快速开始

下载

可以从 Release 页面 下载最新的二进制版本。

二进制文件使用说明

Linux系统
  1. 下载二进制文件

    • 从 Release 页面下载 cnb-cli 二进制文件
    • 选择 Linux 版本
  2. 重命名并设置权限

    # 重命名为 cnb-cli mv cnb-cli-linux cnb-cli # 添加执行权限 chmod +x cnb-cli
  3. 添加到环境变量

    临时添加(当前会话有效)

    export PATH=$PATH:/path/to/cnb-cli

    永久添加(推荐)

    对于 bash/zsh 用户,编辑 ~/.bashrc~/.zshrc 文件:

    echo 'export PATH=$PATH:/path/to/cnb-cli' >> ~/.bashrc source ~/.bashrc

    对于 fish 用户,编辑 ~/.config/fish/config.fish 文件:

    set -x PATH $PATH /path/to/cnb-cli
  4. 验证安装

    cnb-cli --help
Windows系统
  1. 下载二进制文件

    • 从 Release 页面下载 cnb-cli.exe 二进制文件
    • 选择 Windows 版本
  2. 重命名文件

    • 将下载的文件重命名为 cnb-cli.exe(如果需要)
  3. 添加到环境变量

    方法1:通过系统设置(推荐)

    1. Win + X 选择"系统"
    2. 点击"高级系统设置"
    3. 点击"环境变量"
    4. 在"用户变量"或"系统变量"中找到 Path
    5. 点击"编辑",添加包含 cnb-cli.exe 的文件夹路径
    6. 点击"确定"保存

    方法2:通过命令行(临时)

    命令提示符 (CMD):

    set PATH=%PATH%;C:\path\to\cnb-cli

    PowerShell:

    $env:Path += ";C:\path\to\cnb-cli"

    方法3:通过PowerShell永久添加

    [Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\path\to\cnb-cli", "User")
  4. 验证安装

    命令提示符:

    cnb-cli --help

    PowerShell:

    cnb-cli --help

[!TIP] 如果您不想添加到环境变量,也可以直接使用完整路径运行,如 ./cnb-cli (Linux) 或 .\cnb-cli.exe (Windows)。

系统要求

  • Python 3.13+
  • UV 包管理器

从源码安装

  1. 克隆本仓库:
git clone https://github.com/haorwen/cnb-cli.git cd cnb-cli
  1. 安装依赖:
uv sync

使用

基本用法

# 如果使用源码安装 uv run main.py [命令] [选项] # 如果使用二进制版本 ./cnb-cli [命令] [选项]

可用命令

  • auth - 认证相关命令
  • repo - 仓库管理命令

获取帮助

uv run main.py --help # 或 ./cnb-cli --help

开发

依赖管理

项目使用 UV 进行依赖管理,所有依赖项都在 pyproject.toml 中定义。

主要依赖:

  • typer>=0.20.0 - 现代化 CLI 框架
  • cryptography>=46.0.3 - 加密功能
  • requests>=2.32.5 - HTTP 请求
  • qrcode>=8.2 - 二维码生成
  • pillow>=12.0.0 - 图像处理

自行构建

如果需要自行构建二进制文件:

Windows

build.bat

Linux/macOS

chmod +x build.sh ./build.sh

构建完成后,会在当前目录生成独立的可执行文件。

故障排除

  1. 依赖安装失败

    • 确保已安装 UV 包管理器
    • 检查 Python 版本是否为 3.13+
  2. 构建失败

    • 确保已安装所有依赖
    • 检查 Nuitka 是否正确安装
    • 查看构建日志获取详细错误信息
  3. 运行时错误

    • 检查配置文件是否正确
    • 查看日志文件中的错误信息
    • 确保网络连接正常

开源协议

GPLV3

作者

haorwen

贡献

欢迎提交 Issue 和 Pull Request!

特别鸣谢

  • Typer - 现代化的 CLI 框架
  • UV - 超快的 Python 包管理器
  • Nuitka - Python 到二进制的编译器

About

✨ cnb.cool 平台的现代化命令行工具 ✨

920.00 KiB
0 forks0 stars1 branches1 TagREADMEGPL-3.0 license
Language
Python85.3%
Shell12.7%
Others2%