An AI filmmaking workspace where the user directs and an agent executes.
一个面向 AI 影视制作的导演工作台:用户下达导演令,Agent 作为执行副导演调用技能与工具完成工作。
[!IMPORTANT] This repository does not currently include an open-source license. Public source availability does not grant permission to use, modify, or redistribute the code. See License.
Alex 导演台将项目、剧本、人物、场景、道具、分镜、图片和视频组织在同一工作区。执行副导演会结合当前资源、项目画幅和对话历史,自主选择 Agent Skill 与工具,并通过 NDJSON 实时返回执行过程。
项目目前处于积极开发阶段,适合本地开发和工作流验证;用于生产环境前请自行完成安全与可靠性评估。
Skills/**/SKILL.md 发现 Agent Skill,并支持启停与运行审计。| 层 | 技术 |
|---|---|
| Web | React 19、TypeScript 6、Vite 8、React Router、Lucide |
| API | ASP.NET Core 8 Minimal API、EF Core 8、SQLite |
| Agent | Microsoft Agent Framework Harness、Azure AI OpenAI |
| 媒体 | Azure Image、Azure TTS、ComfyUI、MiniMax H3、ImageSharp |
| 存储 | SQLite 元数据、本地文件 Blob |
版本由 global.json 和 package.json 约束。
克隆仓库:
git clone https://github.com/mayong43111/alex-director-console.git
cd alex-director-console
创建本地环境文件:
Copy-Item .env.example .env
编辑 .env,至少填写:
AZURE_OPENAI_ENDPOINT=https://<resource-name>.openai.azure.com/
AZURE_OPENAI_API_KEY=<api-key>
AZURE_OPENAI_DEPLOYMENT=gpt-5.4
AZURE_IMAGE_DEPLOYMENT=gpt-image-2
AZURE_IMAGE_QUALITY=medium
AZURE_IMAGE_API_VERSION=2025-04-01-preview
AZURE_SPEECH_DEPLOYMENT=tts
AZURE_SPEECH_API_VERSION=2025-03-01-preview
一键启动开发环境:
.\start-dev.ps1
已安装前端依赖时可跳过安装:
.\start-dev.ps1 -SkipInstall
打开以下地址:
也可以分别启动:
dotnet run --project src/backend/AlexDirectorConsole.V2.Api --launch-profile http
npm install --prefix src/frontend
npm run dev --prefix src/frontend
.env 仅用于数据库中尚无对应全局配置时的首次初始化。之后以系统配置页面保存的数据库值为准,重启不会用 .env 覆盖。
| 变量 | 必需 | 说明 |
|---|---|---|
AZURE_OPENAI_ENDPOINT | 是 | Azure OpenAI Endpoint |
AZURE_OPENAI_API_KEY | 是 | Azure OpenAI API Key;不要提交到 Git |
AZURE_OPENAI_DEPLOYMENT | 是 | 对话模型部署名 |
AZURE_IMAGE_DEPLOYMENT | 图片功能 | 图片模型部署名 |
AZURE_IMAGE_QUALITY | 否 | low、medium 或 high,默认 medium |
AZURE_IMAGE_API_VERSION | 否 | 图片 API 版本 |
AZURE_SPEECH_DEPLOYMENT | 配音功能 | 语音模型部署名;当前资源使用 tts |
AZURE_SPEECH_API_VERSION | 否 | 语音 API 版本 |
当前 tts 部署支持 alloy、echo、fable、nova、onyx、shimmer。Endpoint 和 API Key 未单独配置时复用 AZURE_OPENAI_*。
视频工作流需要以下首次初始化变量:
VM_HOST=
VM_PORT=22
VM_USERNAME=azureuser
SSH_PRIVATE_KEY_PATH=%USERPROFILE%\.ssh\id_rsa
COMFYUI_PATH=/home/azureuser/ComfyUI
COMFYUI_PYTHON_PATH=/home/azureuser/envs/comfy311/bin/python
COMFYUI_PORT=8188
COMFYUI_LOCAL_PROXY_PORT=8188
COMFYUI_WORKFLOW_DIRECTORY=/home/azureuser/ComfyUI/user/default/workflows
COMFYUI_OUTPUT_DIRECTORY=/home/azureuser/ComfyUI/output
完整模板见 .env.example。
alex-director-console/
├─ src/
│ ├─ backend/ # ASP.NET Core API 与自动化测试
│ ├─ database/ # SQLite Schema 与 EF Core 迁移
│ ├─ frontend/ # React + Vite 前端
│ └─ local-tts/ # 可选本地 Qwen3-TTS 运行时
├─ docs/ # 设计与重构文档
├─ .env.example
└─ start-dev.ps1
创作域、剧本三件套与参考图片流程见 创作生产架构;代码架构演进和边界约束见 重构计划。
开发数据默认保存在:
src/database/App_Data/alex-director-v2.db
数据库迁移会在 API 启动时自动应用。也可以显式运行:
dotnet run --project src/database -- migrate
新增 EF Core 迁移:
dotnet ef migrations add <MigrationName> `
--project src/database `
--startup-project src/database `
--output-dir Data/Migrations
| 方法 | 路径 | 用途 |
|---|---|---|
GET | /api/health | 健康检查 |
GET | /api/agent/status | Agent 与图片模型状态 |
GET / PUT | /api/projects、/api/projects/{id} | 项目读取与保存 |
GET / POST | /api/projects/{id}/assets | 资源列表与上传 |
GET | /api/projects/{projectId}/assets/{id}/versions | 当前项目内的资源版本历史 |
DELETE | /api/projects/{projectId}/assets/{assetId} | 删除逻辑资源、全部版本和镜头绑定 |
GET | /api/projects/{projectId}/assets/{id}/content | 读取或下载当前项目 Blob |
GET / POST | /api/projects/{id}/messages | 对话历史与非流式消息 |
POST | /api/projects/{id}/messages/stream | NDJSON 流式导演会话 |
GET / PATCH | /api/skills、/api/skills/{id} | 技能列表与启停 |
开发环境可通过 Swagger 查看完整契约。
dotnet build AlexDirectorConsole.sln
npm run lint --prefix src/frontend
npm run build --prefix src/frontend
dotnet test src/backend/AlexDirectorConsole.V2.Api.Tests
git diff --check
提交改动前至少应通过以上检查,并手动验证受影响工作流。
欢迎通过 Issues 提交缺陷和建议。较大改动建议先创建 Issue,说明目标、行为变化和数据迁移影响。
提交 Pull Request 时请:
.env、API Key、SQLite 数据库、Blob、SSH 私钥或生成输出。.env 只适合本地开发;生产部署应使用受控的机密存储。Alex Director Console brings projects, scripts, characters, scenes, props, storyboards, images, and videos into one workspace. The director agent uses the active asset, project format, and conversation history to select Agent Skills and tools, while execution progress is streamed to the UI over NDJSON.
The project is under active development. It is intended for local development and workflow evaluation and should be reviewed before production use.
Skills/**/SKILL.md, enable or disable them, and audit executions.| Layer | Technology |
|---|---|
| Web | React 19, TypeScript 6, Vite 8, React Router, Lucide |
| API | ASP.NET Core 8 Minimal API, EF Core 8, SQLite |
| Agent | Microsoft Agent Framework Harness, Azure AI OpenAI |
| Media | Azure Image, Azure TTS, ComfyUI, MiniMax H3, ImageSharp |
| Storage | SQLite metadata and local file blobs |
Versions are pinned by global.json and package.json.
Clone the repository:
git clone https://github.com/mayong43111/alex-director-console.git
cd alex-director-console
Create the local environment file:
Copy-Item .env.example .env
Edit .env and provide at least:
AZURE_OPENAI_ENDPOINT=https://<resource-name>.openai.azure.com/
AZURE_OPENAI_API_KEY=<api-key>
AZURE_OPENAI_DEPLOYMENT=gpt-5.4
AZURE_IMAGE_DEPLOYMENT=gpt-image-2
AZURE_IMAGE_QUALITY=medium
AZURE_IMAGE_API_VERSION=2025-04-01-preview
AZURE_SPEECH_DEPLOYMENT=tts
AZURE_SPEECH_API_VERSION=2025-03-01-preview
Start the development environment:
.\start-dev.ps1
Skip dependency installation when node_modules is already available:
.\start-dev.ps1 -SkipInstall
Open:
To start each service separately:
dotnet run --project src/backend/AlexDirectorConsole.V2.Api --launch-profile http
npm install --prefix src/frontend
npm run dev --prefix src/frontend
.env seeds a global configuration only when no corresponding database record exists. Subsequent restarts preserve values saved through the system configuration UI.
| Variable | Required | Description |
|---|---|---|
AZURE_OPENAI_ENDPOINT | Yes | Azure OpenAI endpoint |
AZURE_OPENAI_API_KEY | Yes | Azure OpenAI API key; never commit it |
AZURE_OPENAI_DEPLOYMENT | Yes | Chat model deployment name |
AZURE_IMAGE_DEPLOYMENT | For images | Image model deployment name |
AZURE_IMAGE_QUALITY | No | low, medium, or high; defaults to medium |
AZURE_IMAGE_API_VERSION | No | Image API version |
AZURE_SPEECH_DEPLOYMENT | For voice-over | Speech model deployment name; the current resource uses tts |
AZURE_SPEECH_API_VERSION | No | Speech API version |
The current tts deployment supports alloy, echo, fable, nova, onyx, and shimmer. Speech falls back to AZURE_OPENAI_* when no separate endpoint or API key is configured.
Video workflows use the following first-run seed values:
VM_HOST=
VM_PORT=22
VM_USERNAME=azureuser
SSH_PRIVATE_KEY_PATH=%USERPROFILE%\.ssh\id_rsa
COMFYUI_PATH=/home/azureuser/ComfyUI
COMFYUI_PYTHON_PATH=/home/azureuser/envs/comfy311/bin/python
COMFYUI_PORT=8188
COMFYUI_LOCAL_PROXY_PORT=8188
COMFYUI_WORKFLOW_DIRECTORY=/home/azureuser/ComfyUI/user/default/workflows
COMFYUI_OUTPUT_DIRECTORY=/home/azureuser/ComfyUI/output
See .env.example for the complete template.
alex-director-console/
├─ src/
│ ├─ backend/ # ASP.NET Core API and tests
│ ├─ database/ # SQLite schema and EF Core migrations
│ ├─ frontend/ # React + Vite frontend
│ └─ local-tts/ # Optional local Qwen3-TTS runtime
├─ docs/ # Design and refactoring notes
├─ .env.example
└─ start-dev.ps1
See the refactoring plan for architectural boundaries and evolution.
Development data is stored in:
src/database/App_Data/alex-director-v2.db
Database migrations are applied automatically when the API starts. They can also be run explicitly:
dotnet run --project src/database -- migrate
Create an EF Core migration with:
dotnet ef migrations add <MigrationName> `
--project src/database `
--startup-project src/database `
--output-dir Data/Migrations
| Method | Path | Purpose |
|---|---|---|
GET | /api/health | Health check |
GET | /api/agent/status | Agent and image model status |
GET / PUT | /api/projects, /api/projects/{id} | Read and save projects |
GET / POST | /api/projects/{id}/assets | List and upload assets |
GET | /api/projects/{projectId}/assets/{id}/versions | Asset version history within the project |
DELETE | /api/projects/{projectId}/assets/{assetId} | Delete a logical resource, all versions, and shot links |
GET | /api/projects/{projectId}/assets/{id}/content | Read or download a project-scoped blob |
GET / POST | /api/projects/{id}/messages | Conversation history and non-streaming messages |
POST | /api/projects/{id}/messages/stream | Streaming director session over NDJSON |
GET / PATCH | /api/skills, /api/skills/{id} | List, enable, or disable skills |
Swagger exposes the complete contract in development.
dotnet build AlexDirectorConsole.sln
npm run lint --prefix src/frontend
npm run build --prefix src/frontend
dotnet test src/backend/AlexDirectorConsole.V2.Api.Tests
git diff --check
At minimum, run the checks above and manually verify affected workflows before submitting changes.
Bug reports and proposals are welcome through Issues. For substantial changes, open an issue first and describe the goal, behavioral impact, and any data migration requirements.
When submitting a pull request:
.env, API keys, SQLite databases, blobs, SSH keys, or generated output..env is intended for local development; use managed secret storage in production.本仓库目前未包含 LICENSE 文件。源代码公开可见不代表已授予使用、修改或再分发许可。在许可证补充前,请先联系仓库所有者获得授权。
This repository currently does not include a LICENSE file. Source availability does not grant permission to use, modify, or redistribute the code. Contact the repository owner for authorization until a license is added.
C#
64.5%
TypeScript
22.6%
CSS
9.6%
Python
1.6%
An AI filmmaking workspace where the user directs and an agent executes.
一个面向 AI 影视制作的导演工作台:用户下达导演令,Agent 作为执行副导演调用技能与工具完成工作。
[!IMPORTANT] This repository does not currently include an open-source license. Public source availability does not grant permission to use, modify, or redistribute the code. See License.
Alex 导演台将项目、剧本、人物、场景、道具、分镜、图片和视频组织在同一工作区。执行副导演会结合当前资源、项目画幅和对话历史,自主选择 Agent Skill 与工具,并通过 NDJSON 实时返回执行过程。
项目目前处于积极开发阶段,适合本地开发和工作流验证;用于生产环境前请自行完成安全与可靠性评估。
Skills/**/SKILL.md 发现 Agent Skill,并支持启停与运行审计。| 层 | 技术 |
|---|---|
| Web | React 19、TypeScript 6、Vite 8、React Router、Lucide |
| API | ASP.NET Core 8 Minimal API、EF Core 8、SQLite |
| Agent | Microsoft Agent Framework Harness、Azure AI OpenAI |
| 媒体 | Azure Image、Azure TTS、ComfyUI、MiniMax H3、ImageSharp |
| 存储 | SQLite 元数据、本地文件 Blob |
版本由 global.json 和 package.json 约束。
克隆仓库:
git clone https://github.com/mayong43111/alex-director-console.git
cd alex-director-console
创建本地环境文件:
Copy-Item .env.example .env
编辑 .env,至少填写:
AZURE_OPENAI_ENDPOINT=https://<resource-name>.openai.azure.com/
AZURE_OPENAI_API_KEY=<api-key>
AZURE_OPENAI_DEPLOYMENT=gpt-5.4
AZURE_IMAGE_DEPLOYMENT=gpt-image-2
AZURE_IMAGE_QUALITY=medium
AZURE_IMAGE_API_VERSION=2025-04-01-preview
AZURE_SPEECH_DEPLOYMENT=tts
AZURE_SPEECH_API_VERSION=2025-03-01-preview
一键启动开发环境:
.\start-dev.ps1
已安装前端依赖时可跳过安装:
.\start-dev.ps1 -SkipInstall
打开以下地址:
也可以分别启动:
dotnet run --project src/backend/AlexDirectorConsole.V2.Api --launch-profile http
npm install --prefix src/frontend
npm run dev --prefix src/frontend
.env 仅用于数据库中尚无对应全局配置时的首次初始化。之后以系统配置页面保存的数据库值为准,重启不会用 .env 覆盖。
| 变量 | 必需 | 说明 |
|---|---|---|
AZURE_OPENAI_ENDPOINT | 是 | Azure OpenAI Endpoint |
AZURE_OPENAI_API_KEY | 是 | Azure OpenAI API Key;不要提交到 Git |
AZURE_OPENAI_DEPLOYMENT | 是 | 对话模型部署名 |
AZURE_IMAGE_DEPLOYMENT | 图片功能 | 图片模型部署名 |
AZURE_IMAGE_QUALITY | 否 | low、medium 或 high,默认 medium |
AZURE_IMAGE_API_VERSION | 否 | 图片 API 版本 |
AZURE_SPEECH_DEPLOYMENT | 配音功能 | 语音模型部署名;当前资源使用 tts |
AZURE_SPEECH_API_VERSION | 否 | 语音 API 版本 |
当前 tts 部署支持 alloy、echo、fable、nova、onyx、shimmer。Endpoint 和 API Key 未单独配置时复用 AZURE_OPENAI_*。
视频工作流需要以下首次初始化变量:
VM_HOST=
VM_PORT=22
VM_USERNAME=azureuser
SSH_PRIVATE_KEY_PATH=%USERPROFILE%\.ssh\id_rsa
COMFYUI_PATH=/home/azureuser/ComfyUI
COMFYUI_PYTHON_PATH=/home/azureuser/envs/comfy311/bin/python
COMFYUI_PORT=8188
COMFYUI_LOCAL_PROXY_PORT=8188
COMFYUI_WORKFLOW_DIRECTORY=/home/azureuser/ComfyUI/user/default/workflows
COMFYUI_OUTPUT_DIRECTORY=/home/azureuser/ComfyUI/output
完整模板见 .env.example。
alex-director-console/
├─ src/
│ ├─ backend/ # ASP.NET Core API 与自动化测试
│ ├─ database/ # SQLite Schema 与 EF Core 迁移
│ ├─ frontend/ # React + Vite 前端
│ └─ local-tts/ # 可选本地 Qwen3-TTS 运行时
├─ docs/ # 设计与重构文档
├─ .env.example
└─ start-dev.ps1
创作域、剧本三件套与参考图片流程见 创作生产架构;代码架构演进和边界约束见 重构计划。
开发数据默认保存在:
src/database/App_Data/alex-director-v2.db
数据库迁移会在 API 启动时自动应用。也可以显式运行:
dotnet run --project src/database -- migrate
新增 EF Core 迁移:
dotnet ef migrations add <MigrationName> `
--project src/database `
--startup-project src/database `
--output-dir Data/Migrations
| 方法 | 路径 | 用途 |
|---|---|---|
GET | /api/health | 健康检查 |
GET | /api/agent/status | Agent 与图片模型状态 |
GET / PUT | /api/projects、/api/projects/{id} | 项目读取与保存 |
GET / POST | /api/projects/{id}/assets | 资源列表与上传 |
GET | /api/projects/{projectId}/assets/{id}/versions | 当前项目内的资源版本历史 |
DELETE | /api/projects/{projectId}/assets/{assetId} | 删除逻辑资源、全部版本和镜头绑定 |
GET | /api/projects/{projectId}/assets/{id}/content | 读取或下载当前项目 Blob |
GET / POST | /api/projects/{id}/messages | 对话历史与非流式消息 |
POST | /api/projects/{id}/messages/stream | NDJSON 流式导演会话 |
GET / PATCH | /api/skills、/api/skills/{id} | 技能列表与启停 |
开发环境可通过 Swagger 查看完整契约。
dotnet build AlexDirectorConsole.sln
npm run lint --prefix src/frontend
npm run build --prefix src/frontend
dotnet test src/backend/AlexDirectorConsole.V2.Api.Tests
git diff --check
提交改动前至少应通过以上检查,并手动验证受影响工作流。
欢迎通过 Issues 提交缺陷和建议。较大改动建议先创建 Issue,说明目标、行为变化和数据迁移影响。
提交 Pull Request 时请:
.env、API Key、SQLite 数据库、Blob、SSH 私钥或生成输出。.env 只适合本地开发;生产部署应使用受控的机密存储。Alex Director Console brings projects, scripts, characters, scenes, props, storyboards, images, and videos into one workspace. The director agent uses the active asset, project format, and conversation history to select Agent Skills and tools, while execution progress is streamed to the UI over NDJSON.
The project is under active development. It is intended for local development and workflow evaluation and should be reviewed before production use.
Skills/**/SKILL.md, enable or disable them, and audit executions.| Layer | Technology |
|---|---|
| Web | React 19, TypeScript 6, Vite 8, React Router, Lucide |
| API | ASP.NET Core 8 Minimal API, EF Core 8, SQLite |
| Agent | Microsoft Agent Framework Harness, Azure AI OpenAI |
| Media | Azure Image, Azure TTS, ComfyUI, MiniMax H3, ImageSharp |
| Storage | SQLite metadata and local file blobs |
Versions are pinned by global.json and package.json.
Clone the repository:
git clone https://github.com/mayong43111/alex-director-console.git
cd alex-director-console
Create the local environment file:
Copy-Item .env.example .env
Edit .env and provide at least:
AZURE_OPENAI_ENDPOINT=https://<resource-name>.openai.azure.com/
AZURE_OPENAI_API_KEY=<api-key>
AZURE_OPENAI_DEPLOYMENT=gpt-5.4
AZURE_IMAGE_DEPLOYMENT=gpt-image-2
AZURE_IMAGE_QUALITY=medium
AZURE_IMAGE_API_VERSION=2025-04-01-preview
AZURE_SPEECH_DEPLOYMENT=tts
AZURE_SPEECH_API_VERSION=2025-03-01-preview
Start the development environment:
.\start-dev.ps1
Skip dependency installation when node_modules is already available:
.\start-dev.ps1 -SkipInstall
Open:
To start each service separately:
dotnet run --project src/backend/AlexDirectorConsole.V2.Api --launch-profile http
npm install --prefix src/frontend
npm run dev --prefix src/frontend
.env seeds a global configuration only when no corresponding database record exists. Subsequent restarts preserve values saved through the system configuration UI.
| Variable | Required | Description |
|---|---|---|
AZURE_OPENAI_ENDPOINT | Yes | Azure OpenAI endpoint |
AZURE_OPENAI_API_KEY | Yes | Azure OpenAI API key; never commit it |
AZURE_OPENAI_DEPLOYMENT | Yes | Chat model deployment name |
AZURE_IMAGE_DEPLOYMENT | For images | Image model deployment name |
AZURE_IMAGE_QUALITY | No | low, medium, or high; defaults to medium |
AZURE_IMAGE_API_VERSION | No | Image API version |
AZURE_SPEECH_DEPLOYMENT | For voice-over | Speech model deployment name; the current resource uses tts |
AZURE_SPEECH_API_VERSION | No | Speech API version |
The current tts deployment supports alloy, echo, fable, nova, onyx, and shimmer. Speech falls back to AZURE_OPENAI_* when no separate endpoint or API key is configured.
Video workflows use the following first-run seed values:
VM_HOST=
VM_PORT=22
VM_USERNAME=azureuser
SSH_PRIVATE_KEY_PATH=%USERPROFILE%\.ssh\id_rsa
COMFYUI_PATH=/home/azureuser/ComfyUI
COMFYUI_PYTHON_PATH=/home/azureuser/envs/comfy311/bin/python
COMFYUI_PORT=8188
COMFYUI_LOCAL_PROXY_PORT=8188
COMFYUI_WORKFLOW_DIRECTORY=/home/azureuser/ComfyUI/user/default/workflows
COMFYUI_OUTPUT_DIRECTORY=/home/azureuser/ComfyUI/output
See .env.example for the complete template.
alex-director-console/
├─ src/
│ ├─ backend/ # ASP.NET Core API and tests
│ ├─ database/ # SQLite schema and EF Core migrations
│ ├─ frontend/ # React + Vite frontend
│ └─ local-tts/ # Optional local Qwen3-TTS runtime
├─ docs/ # Design and refactoring notes
├─ .env.example
└─ start-dev.ps1
See the refactoring plan for architectural boundaries and evolution.
Development data is stored in:
src/database/App_Data/alex-director-v2.db
Database migrations are applied automatically when the API starts. They can also be run explicitly:
dotnet run --project src/database -- migrate
Create an EF Core migration with:
dotnet ef migrations add <MigrationName> `
--project src/database `
--startup-project src/database `
--output-dir Data/Migrations
| Method | Path | Purpose |
|---|---|---|
GET | /api/health | Health check |
GET | /api/agent/status | Agent and image model status |
GET / PUT | /api/projects, /api/projects/{id} | Read and save projects |
GET / POST | /api/projects/{id}/assets | List and upload assets |
GET | /api/projects/{projectId}/assets/{id}/versions | Asset version history within the project |
DELETE | /api/projects/{projectId}/assets/{assetId} | Delete a logical resource, all versions, and shot links |
GET | /api/projects/{projectId}/assets/{id}/content | Read or download a project-scoped blob |
GET / POST | /api/projects/{id}/messages | Conversation history and non-streaming messages |
POST | /api/projects/{id}/messages/stream | Streaming director session over NDJSON |
GET / PATCH | /api/skills, /api/skills/{id} | List, enable, or disable skills |
Swagger exposes the complete contract in development.
dotnet build AlexDirectorConsole.sln
npm run lint --prefix src/frontend
npm run build --prefix src/frontend
dotnet test src/backend/AlexDirectorConsole.V2.Api.Tests
git diff --check
At minimum, run the checks above and manually verify affected workflows before submitting changes.
Bug reports and proposals are welcome through Issues. For substantial changes, open an issue first and describe the goal, behavioral impact, and any data migration requirements.
When submitting a pull request:
.env, API keys, SQLite databases, blobs, SSH keys, or generated output..env is intended for local development; use managed secret storage in production.本仓库目前未包含 LICENSE 文件。源代码公开可见不代表已授予使用、修改或再分发许可。在许可证补充前,请先联系仓库所有者获得授权。
This repository currently does not include a LICENSE file. Source availability does not grant permission to use, modify, or redistribute the code. Contact the repository owner for authorization until a license is added.
C#
64.5%
TypeScript
22.6%
CSS
9.6%
Python
1.6%