Metadata-Version: 2.5
Name: nexforge-cli
Version: 0.7.6
Summary: NexForgeCLI — 一个面向 DeepSeek V4 的终端智能体(TUI + CLI 双模式)
Project-URL: Homepage, https://gitee.com/Lighthorn/nexforgecli
Author: NexForge
License: MIT
Keywords: agent,cli,deepseek,textual,tui
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Build Tools
Classifier: Topic :: Terminals
Requires-Python: >=3.11
Requires-Dist: httpx>=0.27
Requires-Dist: openai>=1.40
Requires-Dist: pillow>=10.0
Requires-Dist: pydantic>=2.6
Requires-Dist: pyperclip>=1.8
Requires-Dist: rich>=13.7
Requires-Dist: textual>=0.60
Provides-Extra: anthropic
Requires-Dist: anthropic>=0.50; extra == 'anthropic'
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: twine>=5.0; extra == 'dev'
Provides-Extra: images
Requires-Dist: cairosvg>=2.7; extra == 'images'
Requires-Dist: pillow>=10.0; extra == 'images'
Requires-Dist: term-image>=0.7; extra == 'images'
Provides-Extra: mcp
Requires-Dist: mcp>=1.0; extra == 'mcp'
Provides-Extra: remote
Requires-Dist: cryptography>=42; extra == 'remote'
Description-Content-Type: text/markdown

<div align="center">

# ◆ NexForgeCLI

**面向 DeepSeek V4 的终端智能体 · TUI + CLI 双模式**

</div>

NexForgeCLI 是一个运行在终端里的智能体助手，既支持 DeepSeek/千问等多模型，也是**插件宿主**（plugins 目录即插即用）。既能作为全屏 TUI 交互式对话/编码，也能作为 one-shot 命令行工具嵌进脚本和管道。

> 当前版本:**v0.7.6** · PyPI: `pip install nexforge-cli`

**v0.7.6 要点(新增局域网实例接管)**：按 `F12` 打开实例侧栏，同一局域网里的 nf 会**自动
互相发现**(组播, 不出网段), 核对指纹后即可**互相接管**——在被控端跑长任务, 在控制端看
事件流、改它的配置、审批它的写操作。配对走 TOFU(首次核对指纹), 之后按实例身份记住。
发现不到对方时用 `/remote add <地址>[:端口]` **手动按地址配对**(跨网段/交换机禁组播也能连),
它**同样要核对指纹**——绕过组播不等于可以绕过 TOFU。跨机首次使用请先看手册 02 章的
"先过这三关"(共享 token / 放行 TCP 8898 + UDP 47892 / 同一网段)。
另: 新增**机器级待修清单**(`bug_report`/`bug_list`/`bug_update`)——干活时顺手把"与本任务
无关但别丢了"的问题记成工单, 跨项目跨实例共用; 以及修复了流式输出期间上滚会被跟底拽回、
搜索把推荐池当结果两处用户可见问题。
(上一版 0.7.5 要点: 新增 REPL 模式 `nexforge --repl` —— 轻量多轮交互 + 终端审批,
 适合 SSH/服务器; 审批支持 `a` = 本会话全部允许, 可用 `/ask` 收回。)

(上一版 0.7.4 要点: 新增 `/open` 命令 + 卡片点击改用 `on_mouse_down`。
 另：0.7.4 首次把手册补上 CLI/REPL 用法——此前手册只讲了 TUI。)(上一版 0.7.2 要点: 生图接入火山方舟 Agent Plan —— 默认 seedream-5.0-pro;
网关必须用套餐专用的 /api/plan/v3, 模型名要用套餐覆盖的。)

---

## 📦 安装

```bash
# pipx 安装(推荐,自动管理 PATH)
pipx install nexforge-cli

# pip 安装
pip install nexforge-cli

# 开发版
pip install git+https://gitee.com/Lighthorn/nexforgecli.git
```

设置 API Key:

```bash
export DEEPSEEK_API_KEY="sk-..."
# 或启动后在输入框输入: /key sk-...
```

API Key 获取: https://platform.deepseek.com/api_keys

---

## ✨ 特性

- **多模型底座** —— DeepSeek(内置) / 千问专用底座 / 通用 OpenAI 兼容 / Anthropic，`/provider` 即切
- **插件宿主** —— `plugins/` 目录即插即用(工具/UI特性/技能)，无需改主程序
- **三级知识库** —— 全局+项目+项目地图，kb_search 检索、kb_write 沉淀
- **DeepSeek 深度优化** —— thinking 模式、KV Cache、streaming、采样参数、JSON Mode、tool_choice 全适配
- **TUI 全屏交互** —— Textual 驱动，流式 Markdown、可折叠思考面板、工具卡片、状态栏
- **安全分级** —— safe/supervised/auto 三级权限，审批弹窗
- **会话管理** —— 自动保存/恢复、多会话切换、重命名/删除
- **计划模式** —— 只读讨论，AI 生成计划后执行
- **多行输入** —— F2 弹窗面板、F3 系统编辑器
- **一键安装** —— `pip install nexforge-cli`

---

## 🚀 使用

```bash
# 全屏 TUI(默认)
nexforge

# 或简写
nf

# one-shot 模式
nexforge -p "这个项目是做什么的?"
```

### 快捷键

| 快捷键 | 功能 |
|--------|------|
| `Enter` | 发送消息 |
| `F1` | 帮助 |
| `F2` | 多行输入弹窗 |
| `F3` | 外部编辑器 |
| `Ctrl+S` | 会话面板 |
| `Ctrl+B` | 计划面板 |
| `Ctrl+L` | 清屏 |
| `Ctrl+Shift+C` | 复制 AI 回复 |
| `Esc` | 停止/退出 |

---

## 📁 文档

| 文档 | 内容 |
|------|------|
| [01-安装与配置](manual/01-安装与配置.md) | 安装/配置/API Key |
| [02-界面与快捷键](manual/02-界面与快捷键.md) | 全部命令和快捷键 |
| [03-模型配置](manual/03-模型配置.md) | DeepSeek/千问/多模型接入 |
| [04-工具参考](manual/04-工具参考.md) | AI 可调用工具说明 |
| [08-自定义配置](manual/08-自定义配置.md) | config.toml/models.toml 全字段 |
| [10-插件开发](manual/10-插件开发.md) | 插件宿主开发指南 |

---

## 🧪 开发

```bash
git clone https://gitee.com/Lighthorn/nexforgecli.git
cd nexforgecli
pip install -e ".[dev]"
python -m pytest -q
```

---

## 📄 License

MIT
