Shashwat-Gupta57/Jctx

GitHub: Shashwat-Gupta57/Jctx

一条命令将 Java、Kotlin 或 Python 项目转换为结构化的 AI 上下文文件,让大模型真正理解你的代码架构而非盲目猜测。

Stars: 3 | Forks: 1

![演示 GIF](https://raw.githubusercontent.com/Shashwat-Gupta57/Jctx/main/JctxSample-1.8.0.gif) # Jctx — 让 AI 完全理解你的 Java、Kotlin 和 Python 代码库 **停止复制粘贴文件。获取真正具备架构感知的回答。** **在几秒钟内生成完整的项目上下文。** **在几秒钟内,将任何 Java、Kotlin 或 Python 项目转换为单个 AI 可用的 `context.txt`(或 `context.md`)文件。** ``` Jctx "C:\projects\MyApp" → context.txt written (Java: 39 files | Kotlin: 12 files | Python: 15 files | POM: 1 file | Gradle: 1 file) ``` 无需配置。无需依赖。只需 Python 和一个文件夹。 ## 为什么会有这个项目 你正在开发一个 Java、Kotlin 或 Python 项目。你打开 AI 聊天窗口寻求帮助。在提出问题之前,你要花 10 分钟复制粘贴文件,解释你的类结构,总结每个模块的作用。 **之前:** ChatGPT 给出随机的类建议 **之后:** ChatGPT 准确指出需要修改哪个类以及原因 **Jctx 只需一条命令即可完成所有这些工作。** 它会扫描你的项目并生成一份简洁、结构化的 `context.txt`(或 `context.md`)——包含每个类、每个字段、每个方法签名、每个 Javadoc/KDoc 注释以及你的构建文件——格式经过优化,让 AI 能够立即理解你的整个代码库。 它还提供 **Token 数量估算**、**语言百分比** 和 **依赖关系图** —— 这些都会自动打印到你的控制台中。 粘贴它。提出你的问题。获得有用的答案。 ## 输出(真实示例)
点击展开示例 context.txt(纯文本 - 默认) ``` ================================================================ JCTX v2.0.0 - Java, Kotlin & Python Context Extractor Project : C:\projects\Talken Date : 2026-03-31 12:00:00 Files : Java: 39 file(s) | Kotlin: 5 file(s) | Python: 2 file(s) | POM: 1 file(s) | Gradle: 1 file(s) ================================================================ ================================================================ SECTION 1 - PROJECT FILE TREE ================================================================ Talken\ ├── src\ │ └── main\ │ ├── java\ │ │ └── org\ │ │ └── flexstudios\ │ │ └── talken\ │ │ ├── Controls.java │ │ └── TalkenClient.java │ └── kotlin\ │ └── org\ │ └── flexstudios\ │ └── talken\ │ └── UserProfile.kt ├── build.gradle └── pom.xml ================================================================ SECTION 2 - POM.XML CONTENT ================================================================ ---------------------------------------------------------------- FILE: pom.xml ---------------------------------------------------------------- 4.0.0 org.flexstudios talken 1.0.0 ================================================================ SECTION 3 - KOTLIN CLASS AND MEMBER DETAILS ================================================================ ---------------------------------------------------------------- FILE: src\main\kotlin\org\flexstudios\talken\UserProfile.kt ---------------------------------------------------------------- CLASS: UserProfile DOC : Represents the user's local profile settings. DATA MEMBERS: · private val String displayName · private val String email METHODS: [1] String getAboutSection() DOC: (no documentation) ================================================================ END OF REPORT ================================================================ ```
## 安装说明 **选项 1:PyPI(推荐)** 在任何操作系统(Windows、macOS、Linux)上安装 Jctx 的最简单方法是通过 pip: ``` pip install jctx ``` `jctx` 命令将立即在你的终端中可用。 **选项 2:手动下载 (Windows)** 1. 下载最新的 **Release** 压缩包。 2. 解压缩 3. 右键点击 `Setup.bat` → **以管理员身份运行** 4. 打开一个新的终端 ``` jctx "C:\path\to\your\java\project" ``` ## 运行 Naabu ``` Jctx [--md] [--slim] [--no-tree] [--clipboard] [--print] [--version] [--help] ``` | 标志 | 效果 | |---|---| | *(无)* | 将 `context.txt` 保存到你的项目文件夹中,并打印 token 估算 | | `--md` | 输出格式清晰的 Markdown 文件(`context.md`)以代替纯文本 | | `--slim` | 精简模式:仅输出类名和方法签名(省略字段和文档)以节省 token | | `--no-tree` | 跳过文件树部分(输出更简短) | | `--clipboard` | 将生成的报告直接复制到剪贴板 | | `--print` | 同时打印到控制台 | | `--version` | 显示 Jctx 版本 | | `--help` | 显示帮助信息 | ## 如何使用输出结果 将 `context.txt`(或 `context.md` 的内容)粘贴到任何 AI 聊天窗口并提出你的问题: 可完美配合 **Claude**、**ChatGPT**、**Gemini** 以及任何其他支持长文本输入的 AI 使用。 ## 控制台指标 生成文件后,Jctx 会将完整的分析仪表板打印到你的控制台: ### 语言百分比 通过可视化进度条显示 Java 和 Kotlin 代码的精确比例: ``` ================================================================ LANGUAGE PERCENTAGES ================================================================ Java : 60.2% ██████████████████████████████░░░░░░░░░░░░░░░░░░░░ (~23,400 tokens) Kotlin : 28.1% ██████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ (~10,910 tokens) Python : 11.7% █████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ (~ 4,560 tokens) ================================================================ ``` ### 依赖关系图 自动映射你的项目类之间的依赖关系(仅限项目内部引用——没有外部库的干扰): ``` ================================================================ DEPENDENCY GRAPH (project-internal) ================================================================ EncryptionModule → (none) MessagingModule → EncryptionModule, UserProfile TalkenClient → EncryptionModule, MessagingModule, UserProfile UserProfile → (none) ================================================================ ``` ### Token 数量估算 显示总的 token 数量以及各部分的明细,并检查你的上下文是否适合主流 AI 模型的上下文窗口: ``` ================================================================ TOKEN ESTIMATE ================================================================ Total tokens : ~34,767 Language Breakdown: Java : ~ 23,400 ( 59.5%) Kotlin : ~ 10,910 ( 27.7%) Python : ~ 4,560 ( 11.6%) Build files : ~ 145 ( 0.4%) File tree : ~ 312 ( 0.8%) Context Window Fit: Y Llama 4 Scout (10M) Y Gemini 3.1 (2M) Y Grok (2M) Y GPT-5.4 (1M) Y Claude 4.6 (1M) Y Qwen 3 (1M) ================================================================ ``` ## `.jctxignore` — 自定义排除项 在项目根目录放置一个 `.jctxignore` 文件,以在提取上下文时排除额外的目录或文件: ``` # 跳过测试目录 **/test/** # 跳过生成的代码 generated/ # 跳过特定文件 patterns *.test.java ``` | 模式 | 含义 | |---------|---------| | `dirname/` | 跳过任何名为 `dirname` 的目录 | | `**/test/**` | 跳过目录树中任何名为 `test` 的目录 | | `*.test.java` | 跳过匹配该 glob 模式的文件 | | `# comment` | 以 `#` 开头的行将被忽略 | 当检测到 `.jctxignore` 时,控制台横幅会显示: ``` .jctxignore: yes (2 dirs, 1 patterns) ``` ## 提取内容 | 内容 | 详情 | |---|---| | 文件树 | 完整的项目结构,已排除构建文件夹 | | 构建文件 | 你的 `pom.xml`、`build.gradle`、`requirements.txt` 和 `pyproject.toml` 的完整内容 | | 类 | Java/Kotlin 类和接口、Python 类,以及所有文档字符串/JavaDocs/KDocs | | 字段 | 类型、名称、访问修饰符、val/var (Kotlin)、实例变量 (`self.x`)、行内注释 | | 方法 | 带编号的列表 —— 返回类型、名称、参数、装饰器、顶层 Python/Kotlin 函数 | **自动忽略:** `build/`、`target/`、`.idea/`、`.git/`、`node_modules/`、`.gradle/`、`.class`、`.jar` 以及所有其他构建产物。可通过 `.jctxignore` 进一步自定义。 ## 系统要求 - Python 3.8 或更高版本 — [python.org](https://python.org) - 适用于 Windows、macOS、Linux ## 路线图 - [x] Kotlin 支持 - [x] Markdown 输出模式 (`context.md`) - [x] 多语言项目估算(混合 Java + Kotlin 百分比) - [x] 随输出提供 Token 数量估算 - [x] 剪贴板支持和精简模式 - [x] 依赖关系图(项目内部) - [x] `.jctxignore` 自定义排除项 - [x] 跨平台打包 (PyPI / pip) - [x] Python 语言支持 - [ ] 架构图生成 (`--diagram`) ## 开源许可证 MIT — 可免费使用、修改和分享。
标签:AI代码助手, AST解析, DLL 劫持, DNS解析, Gradle, Jctx, JS文件枚举, Kotlin, POM, Python, 上下文提取, 上下文窗口管理, 代码上下文, 代码分析, 代码文档生成, 代码结构化, 依赖图, 凭证管理, 后台面板检测, 大语言模型, 威胁情报, 开发者工具, 开源项目, 提示词工程, 无后门, 漏洞测试, 策略决策点, 逆向工具