phantom0004/cipherfeed
GitHub: phantom0004/cipherfeed
一个静态的威胁情报工作空间作品集原型,用于展示情报标准化、优先级排序、每日简报和脚本化 AI 分析师的界面设计与交互概念。
Stars: 1 | Forks: 0
# CipherFeed 作品集版本
CipherFeed 作品集版本是我设计并开发的一款威胁情报工作空间的交互式静态重构。它保留了足够的原始产品体验,以展示其信息架构、分析师工作流、界面设计以及基于来源的 AI 概念,同时未公开其背后的实际运营平台。
该应用程序包含一个仪表板式的概览、可搜索的情报流、决策简报、排序的动作队列、来源覆盖视图,以及一个脚本化的 AI 分析师演示。每一条记录、指标、叙述、时间戳和响应都是虚构的本地固定数据。
## 作品集亮点
- 具备搜索、严重程度和类别过滤器的标准化情报流。
- 一个详细信息工作区,将证据、解读、置信度和后续操作集中展示。
- 晨会简报,解释了发生了什么变化、哪些重要,以及哪些尚无法确定。
- 基于可见因素的可解释优先级队列,而非仅仅依赖不透明的评分。
- 双视角 AI 分析师概念,包含引导性问题、证据引用和置信度边界。
- 完全在浏览器中运行的响应式、可访问的 React 交互。
## 产品导览
| 屏幕 | 展示内容 | 交互方式 |
| --- | --- | --- |
| 概览 | 执行指标、每日情境、优先操作和来源覆盖 | 通过链接进入每个保留的产品概念 |
| 情报流 | 标准化记录和分析师证据工作区 | 搜索、过滤并选择虚构记录 |
| 每日简报 | 聚焦决策的综合分析和明确的信息缺口 | 审查变更、操作、覆盖范围和叙述标签 |
| AI 分析师 | 基于来源的对话式 UX 和响应安全性 | 切换视角并选择引导性问题 |
| 项目笔记 | 原始工作流、作品集范围和公开边界 | 审查保留和移除的内容 |
## 静态架构
公开版只有一个信任边界:本地浏览器。它不包含任何运行时网络客户端或服务端实现。
```
flowchart LR
T["Synthetic threat fixtures"] --> UI["React portfolio interface"]
P["Prewritten briefing and chat fixtures"] --> UI
UI --> O["Overview"]
UI --> S["Intel stream"]
UI --> B["Daily brief"]
UI --> A["AI analyst demo"]
UI --> N["Project notes"]
O & S & B & A & N --> L["Local browser only"]
```
此代码库中不包含任何账户、环境变量、实时数据流、服务端路由、数据库、模型提供商、分析服务、调度器或部署工作流。
## AI 分析师演示的工作原理
AI 分析师视图旨在传达预期的用户体验,而不会揭示或重建原始实现。
```
flowchart TD
Q["User selects a guided question"] --> K["Look up a local scripted fixture"]
R["Analyst or executive perspective"] --> K
K --> C["Render prewritten response"]
C --> E["Show fictional evidence references"]
C --> G["Show confidence boundary"]
X["No free-form model call"] -.-> K
Y["No prompt, provider, key, API, or storage"] -.-> K
```
自由格式的聊天已被明显禁用。选择一个提示仅会更改本地的 React 状态,并从 `src/data/portfolioDemo.js` 中读取响应。在此过程中,没有任何数据被发送、生成、存储或推断。
## 概念性情报工作流
该项目展示了此产品模型,但未实现实时连接器:
```
flowchart TD
S["Public advisory or bulletin"] --> C["Collect within source terms"]
C --> V["Validate and bound fields"]
V --> N["Normalize into a common schema"]
N --> R["Correlate stable identifiers"]
R --> P["Prioritize with visible reasons"]
P --> O["Present summary, evidence, gaps, and actions"]
S -. "preserve separately" .-> E["Original source evidence"]
E -. "display beside interpretation" .-> O
```
在实际运营的系统中,每个阶段都需要进行安全、许可、隐私、可用性、可观测性、速率限制和滥用风险审查。这些系统被刻意排除在作品集版本之外。
## 合成数据模型
`src/data/demoThreats.js` 中的每个条目都采用了通用的教学模式:
| 字段 | 含义 |
| --- | --- |
| `id` | 以 `DEMO-` 开头的虚构标识符 |
| `title` | 对模拟信号的中立总结 |
| `severity` | 用于过滤和优先级上下文的显示标签 |
| `category` | 广泛的情报类型 |
| `source` | 明确的合成来源标签 |
| `confidence` | 对所呈现解读的置信度 |
| `priority` | 由可见上下文解释的虚构分数 |
| `sourceCount` | 虚构的佐证记录数量 |
| `trend` | 模拟的变动标签 |
| `exposure` | 明确虚构的适用性上下文 |
| `exploitation` | 谨慎的活动声明 |
| `evidence` | 支持性事实和局限性 |
| `actions` | 面向验证的后续步骤 |
| `tags` | 本地搜索词 |
这些固定数据避免使用真实的组织、人员、客户、凭证、基础设施标识符、生产环境 URL 以及复制的源响应。
## 保留的内容
- 多来源威胁情报工作区的结构。
- 搜索、过滤、详细审查、优先级和置信度模式。
- 晨间情报简报和排序动作队列概念。
- 确定性来源证据与叙述框架的分离。
- AI 概念中的分析师和执行层响应视角。
- 在作品集中非常有用的响应式交互和无障碍模式。
## 移除的内容
- 身份、账户、个人资料和个人数据处理。
- 支付、计划、商业工作流和联系渠道。
- 实时 API、接入任务、服务端函数、数据库代码和迁移脚本。
- 提供商配置、提示词、模型路由、使用情况跟踪和密钥。
- 私密研究、生产环境遥测数据、部署文件和操作文档。
- Logo、图标、favicon、截图、远程字体和品牌指南。
## 本地运行
环境要求:
- Node.js 20 或更高版本。
- npm 10 或更高版本。
```
npm ci
npm run dev
```
打开 Vite 打印的本地 URL。不需要也不支持任何环境文件。
验证命令:
```
npm run lint
npm test
npm run build
npm run verify
```
## 安全地修改作品集
### 添加虚构的威胁记录
1. 打开 `src/data/demoThreats.js`。
2. 复制一条记录并分配一个新的 `DEMO-` 标识符。
3. 保持来源标签明确为合成的。
4. 添加证据、信息缺口和验证操作。
5. 避免使用真实的指标、组织、来源响应或凭证。
6. 运行 `npm run verify`。
### 添加脚本化的分析师问题
1. 打开 `src/data/portfolioDemo.js`。
2. 在 `analystPrompts` 中添加一个条目。
3. 编写分析师和执行层两个版本。
4. 仅引用虚构的本地记录。
5. 在每个回复中声明置信度边界。
请勿添加模型 SDK、网络请求、环境变量、隐藏提示词或自由格式的响应生成器。其教育价值在于界面和推理模式,而不是一个可部署的集成。
### 更改视觉处理
所有的展示样式均位于 `src/styles.css` 中。该项目仅使用系统字体、CSS 和文本标签。请保持可读的对比度、键盘焦点、带有标签的表单控件、小屏幕布局以及清晰的演示边界。
## 代码库结构图
```
.
|-- src/
| |-- __tests__/ Application boundary and route tests
| |-- data/
| | |-- demoThreats.js Synthetic intelligence records
| | `-- portfolioDemo.js Briefing, chart, and scripted chat fixtures
| |-- App.jsx Portfolio screens and local interactions
| |-- main.jsx Browser entry point
| `-- styles.css Self-contained visual treatment
|-- index.html Minimal document shell
|-- package.json React and Vite development commands
|-- CONTRIBUTING.md Portfolio-safe contribution scope
`-- LICENSE Noncommercial source-available terms
```
## 隐私与安全边界
- 不包含 `.env` 或 `.env.example`;
- 没有任何运行时网络调用或浏览器持久化;
- 没有身份验证、用户记录、支付或个人数据;
- 没有 API 密钥、提供商名称、私有提示词或模型设置;
- 没有实时源数据、生产基础设施或研究文档;且
- 没有商业地址、私人联系方式、分析或遥测数据。
静态构建仍然依赖于正常的浏览器和包管理器的安全性。在发布新快照之前,请审查依赖项更新并运行完整的验证套件。
## 公开历史记录警告
安全发布分支是 `codex/public-portfolio-snapshot`。它源自一个干净的根提交,不包含作为可访问历史的原始运营代码库。仅将此分支推送到新的公共代码库。切勿镜像本地代码库,也不要推送较旧的分支、标签、Pull Request 引用或 reflog。
## 许可证
该代码公开可见,旨在用于非商业性的教育、学习、实验、修改和重新分发,遵循
[PolyForm Noncommercial License 1.0.0](LICENSE)。
由于限制了商业用途,这属于“源代码可用”,而非 OSI 认证的开源发行版。
标签:DLL 劫持, React, Syscalls, UX设计, 前端展示, 大语言模型, 威胁情报, 开发者工具, 数据可视化, 自定义脚本, 静态应用