SpankoWhat/TimmyLine
GitHub: SpankoWhat/TimmyLine
一款面向蓝队的事件响应时间轴可视化与协作管理工具,帮助安全团队在复杂事件调查中统一跟踪时间线、实体和调查行动。
Stars: 0 | Forks: 0
# TimmyLine
TimmyLine 是一款网络安全事件响应时间轴可视化与管理工具。它基于 SvelteKit 2 (Svelte 5)、Drizzle ORM 和 SQLite 构建,提供了一个数据密集、终端美学风格的界面,用于在整个事件响应工作流中跟踪事件、时间轴事件、调查行动、实体和注释。它通过 Socket.IO 支持实时多分析师协作,支持基于 OAuth 的身份验证、API 密钥访问,以及用于 AI 代理集成的 Model Context Protocol (MCP) 服务器。
## 快速开始
```
git clone https://github.com/SpankoWhat/TimmyLine.git
cd TimmyLine
npm install
cp timmyline.config.example.json timmyline.config.json # non-secret settings
cp example.env .env # secrets (OAuth, session key)
npm run db:push # create the SQLite database
npm run db:seed # optional: populate lookup tables
npm run dev # http://localhost:5173
```
有关详细步骤,请参阅 [快速开始指南](https://github.com/SpankoWhat/TimmyLine/wiki/Quick-Start)。
## 配置
TimmyLine 将配置分为两层:
| 文件 | 用途 |
|---|---|
| `timmyline.config.json` | 非机密设置:数据库路径、日志记录、身份验证开关、Web 服务器端口/源 |
| `.env` | 仅限机密信息:`AUTH_SECRET`、OAuth 客户端 ID/密钥 |
```
{
"logging": { "filePath": "./data/timmyLine.log", "writeToFile": false },
"database": { "filePath": "./data/timmyLine.db" },
"auth": { "google": { "enabled": true }, "microsoft": { "enabled": true }, "github": { "enabled": true }, "apiKeys": { "enabled": true } },
"webServer": { "port": 3000, "origin": "http://localhost" }
}
```
完整参考:[配置](https://github.com/SpankoWhat/TimmyLine/wiki/Configuration)
## 生产部署
### Docker (推荐)
```
cp example.env .env
cp timmyline.config.example.json timmyline.config.json
./init-db.sh
docker compose up -d
```
### 手动 (Node.js 20+)
```
npm ci && npm run build
cp example.env .env
cp timmyline.config.example.json timmyline.config.json
node migrate.js
node server.js
```
完整指南:[生产部署](https://github.com/SpankoWhat/TimmyLine/wiki/Production-Deployment)
## 核心功能
- **事件管理** — 带有优先级/状态统计信息和可排序事件列表的仪表板。
- **时间轴视图** — 带有日期分隔符、间隔检测和事件聚类的密集日志视图和垂直时间轴。
- **实体与注释** — 在浮动、可分离的侧面板中进行 IOC/资产跟踪和分析师备注。
- **关系管理** — 通过内联构建器链接具有类型角色的事件、行动和实体。
- **实时协作** — Socket.IO 状态跟踪、每行聚焦/编辑指示器、实时数据同步。
- **导出** — 将任何事件导出为自包含的交互式 HTML。
- **命令面板** — `Ctrl+K` 用于导航、创建和配置命令。
- **MCP 集成** — 包含 37 个工具的 Model Context Protocol 服务器,用于 AI 代理访问。
完整详情:[功能](https://github.com/SpankoWhat/TimmyLine/wiki/Features)
## 文档
| 主题 | 链接 |
|---|---|
| 快速开始 | [wiki/Quick-Start](https://github.com/SpankoWhat/TimmyLine/wiki/Quick-Start) |
| 配置 | [wiki/Configuration](https://github.com/SpankoWhat/TimmyLine/wiki/Configuration) |
| 生产部署 | [wiki/Production-Deployment](https://github.com/SpankoWhat/TimmyLine/wiki/Production-Deployment) |
| 功能 | [wiki/Features](https://github.com/SpankoWhat/TimmyLine/wiki/Features) |
| 身份验证 | [wiki/Authentication](https://github.com/SpankoWhat/TimmyLine/wiki/Authentication) |
| API 参考 | [wiki/API-Reference](https://github.com/SpankoWhat/TimmyLine/wiki/API-Reference) |
| MCP 服务器集成 | [wiki/MCP-Server-Integration](https://github.com/SpankoWhat/TimmyLine/wiki/MCP-Server-Integration) |
| 架构 | [wiki/Architecture](https://github.com/SpankoWhat/TimmyLine/wiki/Architecture) |
| 项目结构 | [wiki/Project-Structure](https://github.com/SpankoWhat/TimmyLine/wiki/Project-Structure) |
## 许可证
请参阅 [LICENSE](LICENSE)。
标签:AI代理, API密钥, ASN信息, Drizzle ORM, GNU通用公共许可证, MCP协议, MITM代理, Node.js, OAuth认证, Socket.IO, SOC工具, SQLite, Svelte 5, SvelteKit 2, 事件管理, 协作平台, 可视化工具, 威胁追踪, 安全事件响应, 安全管理, 实体管理, 实时协作, 库, 应急响应, 开源, 数字取证, 时间线可视化, 漏洞发现, 终端美学, 网络安全, 自动化脚本, 请求拦截, 调查行动, 隐私保护