arkhala/ttxforge
GitHub: arkhala/ttxforge
TTXForge 是一个基于 Next.js 和 LLM 构建的网络安全桌面演练平台,帮助安全团队快速启动互动式 CSIRT 演练并自动生成专业的事件响应报告。
Stars: 0 | Forks: 0
# TTXForge
**AI 驱动的网络安全桌面演练平台**
[](https://nextjs.org/)
[](https://www.typescriptlang.org/)
[](https://tailwindcss.com/)
[](https://ui.shadcn.com/)
## 🎯 使命
TTXForge 赋能安全团队开展真实的、自选冒险式的桌面演练(TTX),严格遵循现实世界的 CSIRT 流程。每个决策都会被记录,后果具有教育意义,并且每次会议结束时都会自动生成生产级别的行动后报告(AAR)、高管摘要和经验教训。
**成功标准**:团队可以在不到 5 分钟的设置内,启动一场为期 60 分钟的勒索软件 TTX,由 4-8 名参与者运行,并获得一份看起来像是由资深事件响应专家撰写的专业 AAR。
## ✨ 核心功能 (MVP)
- **精选与自定义场景**:勒索软件、APT、内部威胁、BEC、供应链、数据泄露 + LLM 生成的自定义演练
- **动态 CSIRT 站会**:角色分配(事件指挥官、首席分析师、通讯主管、法务、高管联络人等)
- **互动运行器**:叙事注入 + 3-5 个高质量的 LLM 生成选项 + 自由文本自定义操作
- **实时状态机**:跟踪阶段、已知事实、攻击者进度、CSIRT 准备情况
- **完整审计跟踪**:每个操作、笔记、通信和角色更改都会带有时间戳和归属记录
- **自动化输出**:记录日志(PDF/JSON)、AAR、高管摘要、角色分配日志、经验教训
- **美观的暗色赛博 UI**:响应式、键盘优先、分屏布局(叙事 | 决策 | 实时日志 | 参与者)
## 🛠 技术栈
**前端**
- Next.js 15(App Router, Server Components, Streaming)
- TypeScript(严格模式)
- Tailwind CSS + shadcn/ui + Radix UI + Lucide icons + Framer Motion
- TanStack Query + Zustand 进行状态管理
**后端与数据**
- Next.js API Routes(初期)
- Prisma + PostgreSQL(Neon)— 从内存 + localStorage 迁移
- Auth.js v5(凭据 / 魔法链接 MVP)
**LLM 层**
- 抽象客户端:`GrokClient`(以 xAI 为主)+ `OllamaClient`(本地后备)
- `/prompts/` 中的版本化提示词
**报告**
- 服务端 PDF(Puppeteer 或 pdfmake)
- DOCX 导出
**开发者体验**
- ESLint + Prettier + Husky + Conventional Commits
- 优秀的文档 + C4 架构图
## 🚀 快速开始(本地开发)
```
git clone https://github.com/arkhala/ttxforge.git
cd ttxforge
npm install
npm run dev
```
打开 [http://localhost:3000](http://localhost:3000)
### 环境变量
```
# .env.local
XAI_API_KEY=your_xai_key_here
OLLAMA_BASE_URL=http://localhost:11434
DATABASE_URL=postgresql://...
NEXTAUTH_SECRET=...
NEXTAUTH_URL=http://localhost:3000
```
## 📁 项目结构
```
/app
layout.tsx # Root layout + providers
page.tsx # Landing
/exercises # Library
/new-exercise # Wizard
/runner/[id] # Interactive runner
/components
/ui # shadcn primitives (Button, Card, etc.)
/exercise # Domain components (future)
/lib
/llm # GrokClient + OllamaClient (full abstraction)
/state # Zustand stores (Phase 1)
/utils
/prompts # Versioned LLM prompts (.md + .ts)
/docs # PRD, ARCHITECTURE, ROADMAP, DECISIONS
/public # Static assets, favicon
```
## 🗺 路线图亮点
- **v0.1(当前)**:核心脚手架 + 着陆页 + 资源库 + 向导 + 占位符运行器 + LLM 抽象 ✅
- **v0.2**:带有状态机的完整互动运行器 + 基础日志记录 + 真实 LLM 调用
- **v0.3**:持久化、身份验证、多参与者模式、PDF 报告
- **v0.4**:高级报告、自定义场景生成器
- **v1.0**:具备 SSO、审计合规、团队工作区等功能的生产就绪版
## 🤝 贡献
我们遵循 Conventional Commits。请提交 issue 或 PR。安全第一的思维是不可妥协的。
**由防守者怀着 ❤️ 为防守者打造。**
*TTXForge — 模拟与现实交汇之处。*
标签:AI, AI风险缓解, Web平台, 库, 应急响应, 桌面演练, 测试用例, 网络安全, 自动化代码审查, 自动化攻击, 隐私保护