{"repo":"Michelin-3-star-tires/codex-thread-exporter","free":true,"listed":false,"github":"https://github.com/Michelin-3-star-tires/codex-thread-exporter","clone":"git clone https://github.com/Michelin-3-star-tires/codex-thread-exporter.git","description":"本地 Codex 线程查询与 Markdown 导出工具，支持检索、筛选和批量导出","language":"Python","stars":10,"topics":["cli","codex","markdown","sqlite","uv"],"license":"MIT","category":"databases-storage","readme_excerpt":"Codex 对话查询导出工具 English: Query local Codex thread records and export selected conversations to Markdown. 这是一个用于查询本地 Codex 对话数据库，并将选中的对话导出为 Markdown 的工具。 项目简介 - 支持按对话 ID、标题、首条用户消息前缀进行检索 - 支持在多个匹配结果里选择单个导出或全部导出 - 导出的 Markdown 默认只保留对话正文 - 适合把完整对话整理成可阅读、可归档的文档 亮点 - 会先清理原始记录里的噪音信息，再导出更适合阅读的对话正文 - 自动忽略 developer 消息 - 连续的 assistant 消息只保留最后一条，减少重复内容 - 代码保留可扩展空间，如果你想分析原始事件，也可以在此基础上继续改造 环境要求 - Python 3.13 或更高版本 - uv - 本地可访问目标 SQLite 文件 安装 1. 克隆仓库 2. 执行 uv sync 运行 1. 执行 uv run pytest 确认环境正常 2. 按需启动 uv run thread-exporter 运行方式 交互式运行： 或者直接使用命令： 如需显式指定数据库路径和导出目录： 配置说明 程序会按以下顺序寻找数据库： 1. 命令行参数 --db-path 2. 环境变量 CODEX STATE DB 3. /.codex/state 5.sqlite 如果以上路径都不可用，程序会提示你手动输入路径。 导出结果 - 默认输出目录为 output/ - 按日期分层保存到 output/YYYYMMDD/ - 文件名格式为 创建时间 标题或首句 slug 对话ID.md - 默认导出阅读版，仅保留对话正文 项目结构 - thread exporter/cli.py ：交互式流程与命令行入口 - thread exporter/db.py ：SQLite 读取和对话解析 - thread exporter/exporter.py ：Markdown 生成与落盘 - tests/ ：核心逻辑测试 - CONTRIBUTING.md ：贡献流程、测试命令和提交规范 - CODE OF CONDUCT.md ：社区行为准则 - RELEASE NOTES.md ：版本发布说明 - .github/ ：CI、Issue 模板和 PR 模板 贡献 欢迎提交 Issue 和 Pull Request。开始贡献前，建议先阅读 CONTRIBUTING.md 。 社区准则 参与协作前，请先阅读 CODE OF CONDUCT.md 。 许可证 本项目使用 MIT 许可证，详见 LICENSE 。","default_branch":null,"files":null,"tree":[],"storefront":"/r/Michelin-3-star-tires","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Michelin-3-star-tires/codex-thread-exporter/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}