8000 GitHub - Deyu-Kong/ContextExtractor: 一个小小的toy,主要用于快速提取文件上下文供LLM交互
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Deyu-Kong/ContextExtractor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Context Extractor

PyQt5 License

一个小小的toy,主要用于快速提取文件上下文供LLM交互

现在各家大模型大都支持文件上传,但是很多操作又不支持,比如拖拽上传。因此写了这个小小的toy,来快速拖拽获取文本内容到剪贴板上,方便与LLM的交互。当然,本Readme文件大部分内容也是这么来的()

功能特性

  • 拖放操作支持
    • 直接拖拽文件/文件夹到悬浮窗口
    • 支持递归读取目录下的所有文件
  • 智能内容处理
    • 自动统计字符数量
    • 异常文件类型检测(二进制文件等)
    • 错误日志记录(日志存储在~/context_extractor_logs文件夹中)
  • 便捷交互
    • 系统托盘图标支持
    • 右键菜单快速访问

安装使用

环境要求

  • Python 3.6+
  • PyQt5
# 安装依赖
pip install pyqt5

运行方式

# 开发模式
python main.py

# 打包可执行文件
pyinstaller --onefile --windowed --ico=icon.ico main.py

使用说明

  1. ​拖放文件​: 将任意文件/文件夹拖拽到悬浮窗口,自动开始处理

  2. ​文件选择​

  • 双击窗口打开文件对话框
  • 支持多选文件和文件夹
  1. ​结果获取​:处理完成后,格式化的内容会自动复制到剪贴板

​4. 系统托盘​

  • 右键菜单退出程序
  • 双击图标显示窗口

项目结构

ContextExtractor/
├── utils.py            # 日志配置 & 文件处理核心逻辑
├── tray_icon.py        # 系统托盘图标组件
├── drop_window.py      # 拖放主窗口实现
├── main.py             # 程序入口
└── hooks/
    └── hook-pyqt5.py   # 打包配置文件

注意事项

  • 日志文件存储路径:~/context_extractor_logs
  • 支持文件编码:UTF-8
  • 最大处理文件数:无限制(受系统内存限制)

许可协议

本项目采用 MIT License,由 Kong Deyu 维护。欢迎提交Issue和PR。

提示:使用前请确保已安装PyQt5,如需自定义样式可修改drop_window.py中的CSS样式代码段。

About

一个小小的toy,主要用于快速提取文件上下文供LLM交互

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

0