Metadata-Version: 2.4
Name: tokslash
Version: 0.4.0
Summary: Markdown and text file editor for Claude Code — saves 80-90% of tokens
Author-email: 王军尉 <support@stratsapien.com>
License: Commercial
Project-URL: Homepage, https://tokslash.stratsapien.com
Project-URL: Repository, https://github.com/KickGit/tokslash_commercial
Project-URL: Bug Tracker, https://github.com/KickGit/tokslash_commercial/issues
Keywords: claude-code,token-saver,markdown,editor,mcp
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Text Editors
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: fastmcp>=2.1.0
Requires-Dist: markdown-it-py>=3.0.0
Requires-Dist: mdit-py-plugins>=0.4.0
Requires-Dist: ruamel.yaml>=0.18.0
Requires-Dist: watchdog>=4.0.0
Requires-Dist: click>=8.1.0
Requires-Dist: tqdm>=4.66.0
Requires-Dist: pyjwt[crypto]>=2.8.0
Requires-Dist: pyyaml>=6.0
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.24; extra == "dev"
Requires-Dist: pytest-cov>=5.0; extra == "dev"
Requires-Dist: cython>=3.0; extra == "dev"
Requires-Dist: fastapi>=0.115; extra == "dev"
Requires-Dist: starlette>=0.40; extra == "dev"
Requires-Dist: httpx>=0.28; extra == "dev"
Requires-Dist: cryptography>=42.0; extra == "dev"
Requires-Dist: wechatpayv3>=1.4.0; extra == "dev"
Provides-Extra: semantic
Requires-Dist: onnxruntime>=1.18; extra == "semantic"
Requires-Dist: tokenizers>=0.21; extra == "semantic"
Requires-Dist: numpy>=1.20; extra == "semantic"
Dynamic: license-file

# TokSlash

**Edit Markdown by section, not by file.**

TokSlash brings structure-level editing to Claude Code. Instead of reading and rewriting entire files or using string-based Edit, it lets you read and modify specific sections by block ID — saving tokens and avoiding format corruption.

---

## Quick Start — 5 步上手

### 1. 安装

```bash
pip install tokslash
```

### 2. 配置 Claude Code

```bash
tokslash install     # ← 注册 MCP 服务器 + 自动放行 hooks（只需一次）
```

### 3. 初始化项目

```bash
cd 你的项目/
tokslash init        # ← 把编辑规则写入 CLAUDE.md（每个项目运行一次）
tokslash reindex     # ← 建立 Markdown 文件索引
```

### 4. 验证安装

```bash
tokslash doctor      # ← 全绿表示一切正常
```

### 5. 激活 Pro（可选，免费版跳过）

```bash
tokslash activate --key YOUR-LICENSE-KEY
```

> [Buy Pro](https://tokslash.stratsapien.com) — ¥199 终身版 / $49 终身版

### 6. 重启 Claude Code

```bash
# 关闭当前 Claude Code 会话
# 重新进入项目目录，打开 Claude Code
```

TokSlash 会作为 MCP 工具自动出现。在 Claude Code 中说"改 README"它就会自动用 TokSlash。

---

## 在 Claude Code 中使用

Claude Code 会自动调用 TokSlash。你不需要记命令——正常说话就行：

```
用户："更新 README 的安装步骤，添加 Python 3.12 支持"

Claude Code 自动:
  → list_blocks("README.md")        查看所有章节
  → read_block("<id>")              读取目标章节
  → replace_block("<id>", "...")    只替换目标章节
```

你也可以主动使用：

| 命令 | 用途 | 示例 |
|------|------|------|
| `list_blocks("文件.md")` | 查看文件有哪些章节 | `list_blocks("README.md")` |
| `read_block("块ID")` | 读一个章节 | `read_block("abc-123...")` |
| `replace_block("块ID", "新内容")` | 改一个章节 | `replace_block("abc-123...", "## 安装\n\n新内容")` |
| `find_blocks("文件.md", "关键词")` | 按标题搜索章节 | `find_blocks("README.md", "安装")` |
| **`generate_toc("文件.md")`** | 生成/更新目录 | `generate_toc("README.md")` |
| **`move_block("源ID", "目标ID", "after")`** | 移动章节（含子章节） | `move_block("id1", "id2", "after")` |
| **`adjust_level("块ID", -1)`** | 升级/降级标题（子标题同步） | `adjust_level("id1", -1)` |
| `md_edit("文件.md", "指令")` | 自然语言一步编辑 | `md_edit("README.md", "把 Python 3.10 改为 3.12")` |

**何时 TokSlash 生效：**
- 文件超过 100 行
- 文件有标题结构（# ## ### 等）
- 你只需要修改一个或几个章节

**何时用原生 Edit：**
- 文件小于 100 行
- 改动只有 1-3 行
- 文件没有标题结构

---

## CLI 命令

| 命令 | 用途 |
|------|------|
| `tokslash install` | 注册 MCP 服务器 + hooks + .gitignore（全局，只需一次） |
| `tokslash init` | 把编辑规则写入 CLAUDE.md（每个项目运行一次） |
| `tokslash reindex` | 建立/刷新当前项目的索引 |
| `tokslash doctor` | 诊断所有配置问题 |
| `tokslash blocks README.md` | 查看文件的章节结构 |
| `tokslash status` | 查看索引状态 + 今日配额 |
| `tokslash stats` | 查看 token 节省统计 |
| `tokslash activate --key <key>` | 激活 Pro 许可证 |
| `tokslash --version` | 查看版本号 |

---

## 新增功能（V0.4.0）

| 功能 | 说明 | 免费版 |
|------|------|--------|
| **`md_generate_toc`** | 自动生成/更新目录（`<!-- toc -->` 标记） | ✅ |
| **`md_move_block`** | 移动章节，含所有子章节（4 种位置模式） | 🔒 Pro |
| **`md_adjust_level`** | 升级/降级标题，子标题自动同步 | ✅ |
| **Aha Moment** | 每次编辑显示 token + 金额节省 | ✅ |
| **Python 3.13 兼容** | cibuildwheel 自动检测 Python 版本 | ✅ |

---

## Free vs Pro

| 功能 | 免费版 | Pro 版 |
|------|--------|--------|
| 结构化编辑 | ✅ 50次/天 | ✅ 无限 |
| 块级关键词搜索 | ✅ | ✅ |
| 安全引擎 + 自动备份 | ✅ | ✅ |
| 跨文件语义搜索 | — | ✅ |
| 优先支持 | — | ✅ |
| 终身更新 | — | ✅ |

**免费版让你体验全部功能**，50次/天对大多数用户足够。Pro 适合重度用户。

---

## 支付方式

| 方式 | 适用 | 链接 |
|------|------|------|
| **微信支付** | 中国大陆 | [tokslash.stratsapien.com/pay](https://tokslash.stratsapien.com/pay.html) |
| **Creem** | 海外用户 | [Creem 支付链接](https://www.creem.io/payment/prod_wOsUaoPNTsbnXB15QZMo7) |

支付成功后，许可证密钥会显示在页面上，并发送到你的邮箱。

---

## 常见问题

### 安装后 Claude Code 看不到 TokSlash？

1. 确认安装成功：`tokslash --version`
2. 运行诊断：`tokslash doctor`（看哪里标红）
3. 重新注册：`tokslash install`
4. 在 Claude Code 输入 `/mcp` 查看是否有 tokslash

### 升级版本后工具失效？

```bash
pip install tokslash --upgrade
tokslash           # 会提示需要重启 Claude Code
# 重启 Claude Code
```

### 每个项目都要做什么？

```bash
cd 新项目/
tokslash init        # 写入 CLAUDE.md（只需一次）
tokslash reindex     # 建立索引
# 然后重启 Claude Code
```

### 数据会被上传吗？

**不会。** 所有索引、缓存、备份都保存在本地 `.tokslash/` 目录。
唯一的网络请求是许可证激活验证（可离线使用）。

---

## 支持

- **邮件:** support@stratsapien.com
- **网站:** [tokslash.stratsapien.com](https://tokslash.stratsapien.com)
- **许可证:** Commercial. All rights reserved.
