xenotaur/Taurcode
GitHub: xenotaur/Taurcode
Taurcode 是一个 AI 编程提示词管理工具,提供标准化格式编写、校验和跨系统导入导出能力,让提示词在 Espanso 等文本展开工具间高效流转。
Stars: 0 | Forks: 0
# Taurcode
Taurcode 是一组用于 AI 生成代码的提示词集合,并提供了相应的工具将其格式化为适用于各种注入系统(如 Espanso)的格式。
## 规范提示词
规范提示词编写在 `prompts/*.md` 目录下的 Markdown 文件中,并包含 YAML frontmatter 元数据。
提示词示例:
```
---
id: test-prompt
name: Test Prompt
description: A test prompt
keyword: ":tc-test"
---
This is a test prompt body.
```
## 从 Espanso 导入
使用 CLI 将 Espanso 包导入为规范提示词:
```
PYTHONPATH=src python -m taurcode.cli import espanso --input espanso/package/package.yml --output prompts
```
导入行为:
- 仅包含 `trigger` 和 `replace` 的简单匹配会被转换为 `prompts/*.md` 文件。
- `replace` 块标量(`|` 字面量和 `>` 折叠)会根据 YAML 解析语义予以保留。
- 不受支持或复杂的匹配会被原样保留在 `prompts/imported_raw/*.yml` 中。
- 原始回退机制会保留不受支持的匹配 YAML 内容,以免提示词文本丢失。
- 导入器会打印一份包含匹配总数、已转换数和原始回退数的摘要。
建议的迁移工作流:
```
PYTHONPATH=src python -m taurcode.cli import espanso --input --output prompts
PYTHONPATH=src python -m taurcode.cli validate --prompts prompts
PYTHONPATH=src python -m taurcode.cli export espanso --prompts prompts --output build/espanso/taurcode
```
## 导出至 Espanso
使用 CLI 将规范提示词导出为 Espanso 包:
```
PYTHONPATH=src python -m taurcode.cli export espanso --prompts prompts --output build/espanso/taurcode
```
生成的输出:
- `build/espanso/taurcode/package.yml`
- `build/espanso/taurcode/_manifest.yml`
注意:目前需要手动将其安装到本地 Espanso 配置中。
## 校验提示词
在导出前校验所有提示词文件:
```
PYTHONPATH=src python -m taurcode.cli validate --prompts prompts
```
校验规则:
- 提示词文件会从提供的目录中递归加载。
- 仅会处理 `.md` 文件。
- 必填字段:`id`、`name`、`description`、`keyword`、`body`。
- `id` 值必须唯一。
- `keyword` 值必须唯一。
- `keyword` 必须以 `:` 开头。
- `body` 不得为空。
常见错误:
- `Duplicate keyword ':tc-test' found in prompts/a.md and prompts/b.md`
- `Missing required field 'id' in prompts/example.md`
导出命令会运行相同的校验步骤,如果提示词数据无效则会执行失败。
## 开发工作流
从仓库根目录运行可操作性检查:
```
scripts/develop
scripts/lint
scripts/format
scripts/test
scripts/coverage
taurcode --help
```
测试约定:
- 测试框架:`unittest`
- 发现模式:`*_test.py`
- 如果未发现任何测试,`scripts/test` 将执行失败。
标签:AI编程, AI辅助编程, CLI, DNS解析, Espanso, Markdown, Python, WiFi技术, YAML, 代码片段管理, 代码生成, 威胁情报, 安全库, 审计, 开发者工具, 开源项目, 提示词工程, 提示词模板, 提示词管理, 提示词转换, 效率工具, 数据转换, 文本扩展工具, 文本注入系统, 文档结构分析, 无后门, 渗透测试工具, 策略决策点, 逆向工具, 防御加固