shabirkhan-dev/redcore

GitHub: shabirkhan-dev/redcore

一个基于 Bun + Turborepo monorepo 和 Rust CLI 的证据优先网络安全运营平台,通过版本化契约管理可复现的实验室环境与签名证据。

Stars: 0 | Forks: 0

# RedCore + Blade [![CI](https://static.pigsec.cn/wp-content/uploads/repos/cas/39/39faa54be350a1dab8afd3b2fb8c1c83e4d9cff84abfef2374d19a18053687c4.svg)](https://github.com/shabirkhan-dev/redcore/actions/workflows/ci.yml) [![Security](https://static.pigsec.cn/wp-content/uploads/repos/cas/11/116530ae2b0dfb0390d7e5d43e4b803c1d427fbd70342e6f6fee028ad54a6dac.svg)](https://github.com/shabirkhan-dev/redcore/actions/workflows/security.yml) 基于 **Bun + Turborepo** monorepo 构建的证据优先网络安全运营平台。 - **Blade** — 可信执行平面:可复现的实验室环境、策略、签名证据、清理。独立产品;可从 CLI 直接运行,无需 RedCore。 - **RedCore** — 围绕 Blade 构建的运营和编排层(Web、API、移动端)。已规划;非当前里程碑。 本仓库是**契约优先**的。Blade 目前以只读 CLI 的形式发布;RedCore 应用复用 Starter kit 布局,为未来的运营 UI 和 API 工作做准备。 ## 快速开始 **前置条件** - [Bun](https://bun.sh) `1.3.13` - [Rust](https://rustup.rs) `1.97`,包含 `rustfmt` 和 `clippy`(用于 Blade) - 可选:Docker Compose `v2.20+` ``` git clone https://github.com/shabirkhan-dev/redcore.git cd redcore bun install bun run prepare ``` ### Blade(当前里程碑) ``` cargo generate-lockfile # first time only bun run test:contracts bun run test:blade bun run blade -- version bun run blade -- doctor bun run blade -- build validate examples/operator/Bladefile.json bun run blade -- lab validate examples/labs/web-pentest.lab.json ``` 验证命令接受 `--output text` 或 `--output json`。退出码:`0` 正常,`1` 契约/前置条件失败,`2` 用法错误,`3` 输入/读取错误,`4` 引擎错误。 锁解析、产物下载、镜像构建、runtime 配置、网络和证据捕获**尚未实现**。参见 [docs/architecture/phase-gap.md](docs/architecture/phase-gap.md) 和 [plan.md](plan.md)。 ### 完整 monorepo 开发(Starter 应用) ``` bun run dev ``` | 应用 | URL (dev) | | --- | --- | | Web | http://localhost:3000 | | Nest API | http://localhost:4000 | | 文档 | http://localhost:3002/docs | ## 仓库布局 | 区域 | 用途 | | --- | --- | | `crates/` | Blade Rust workspace(`blade-cli`, `blade-core`) | | `packages/contracts` | `@redcore/contracts` — Bladefile, LabSpec, EvidenceEvent, SignedOperationRequest v1 | | `packages/ui`, `logger`, `typescript-config` | 共享的 Starter kit 包(`@school-os/*`) | | `apps/web`, `mobile`, `nest-api`, `docs`, `ai-api`, `rust` | 未来的 RedCore 运营界面(目前的 Starter 脚手架) | | `docs/adr`, `docs/architecture` | Blade/RedCore 架构决策和差距报告 | | `examples/` | 运营 Bladefile 和 lab spec 测试夹具 | | `plan.md` | 动态更新的产品和路线图文档 | | `docker/`, `.github/workflows/` | Compose 片段、CI/CD、安全 | ## 根命令 | 命令 | 用途 | | --- | --- | | `bun run blade -- ` | 运行 Blade CLI(`cargo run -p blade-cli`) | | `bun run test:contracts` | 测试 `@redcore/contracts` | | `bun run test:blade` | 为 Blade crates 运行 `cargo test` | | `bun run check:contracts` | 对 contracts 包进行类型检查 | | `bun run check:blade` | 为 Blade workspace 运行 `cargo check` | | `bun run dev` | 启动 Starter 应用开发服务器 (Turbo) | | `bun run build` | 构建所有应用 | | `bun run lint` / `lint:fix` | Biome + 脚本 linter | | `bun run format` | 格式化 TS/JS、shell、Python、Rust | | `bun run typecheck` | 跨 workspace 的 TypeScript 检查 | | `bun run test` / `test:coverage` | Workspace 测试 + 覆盖率 | | `bun run test:e2e:web` | 针对 Web 的 Playwright e2e 测试 | | `bun run architecture:check` | 导入边界规则 | | `bun run preflight` | Lint + 类型检查 + 测试 | ## 语言边界 - **Rust** — Blade CLI、daemon(已规划)、策略、runtimes、网络、证据、TTL、状态协调。 - **Bun + TypeScript** — 契约、workspace 工具;后续用于 RedCore API 和 Web 应用。 - **Python** — 仅在包边界处用于隔离的工具适配器和自动化。 Blade 可在 Windows、macOS 和 Linux 上运行。容器副作用运行在 **Linux 执行平面**上(原生 Linux、WSL2、虚拟机或云)。客户端通过经过身份验证的 API 控制 Blade;它们不直接运行 Podman。参见 [docs/adr/0006-portable-clients-use-a-linux-blade-execution-plane.md](docs/adr/0006-portable-clients-use-a-linux-blade-execution-plane.md)。 ## Docker ``` cp env.docker.example .env docker compose up -d --build ``` Web `:3000` · Nest `:4000` · Postgres 主机 `:5433`。详情:[docker/README.md](docker/README.md) 和文档应用路由 `/docs/docker`。 ## 文档 | 文档 | 用途 | | --- | --- | | [plan.md](plan.md) | 愿景、阶段和接下来的即时步骤 | | [docs/adr/](docs/adr/) | 架构决策记录 | | [docs/architecture/phase-gap.md](docs/architecture/phase-gap.md) | 阶段 0/1 差距报告 | | [PROJECT.md](PROJECT.md) | Monorepo 布局和约定 | | [AGENTS.md](AGENTS.md) | AI Agent 指令 | | [DESIGN.md](DESIGN.md) | UI 设计简报(运营界面) | | `apps/docs` | Fumadocs 站点(`bun --cwd apps/docs run dev`) | ## 许可证 根据您的选择,在 **MIT** 或 **Apache-2.0** 双重许可下: [LICENSE-MIT](LICENSE-MIT), [LICENSE-Apache-2.0](LICENSE-Apache-2.0)。
标签:Bun, Rust, 可视化界面, 安全运营, 扫描框架, 特征检测, 网络安全, 网络流量审计, 自动化攻击, 请求拦截, 隐私保护