mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-05-07 00:39:00 +08:00
- 新增 CI/CD 工作流配置文件,集成代码质量检查、安全扫描和构建测试 - 详细介绍配置系统架构,包括 YAML 源文件、JSON Schema 结构描述和运行时只读查询 - 提供完整的目录结构推荐和 Schema/JSON 示例配置 - 包含项目接入模板,涵盖 csproj 配置、启动帮助器和运行时读取模板 - 说明运行时校验行为,支持必填字段、类型匹配、数值范围等校验规则 - 介绍开发期热重载功能,支持配置文件变更自动刷新 - 详述生成器接入约定,包括配置类型、表包装和注册辅助生成 - 提供 VS Code 工具使用指南,支持配置浏览、表单编辑和批量操作 - 说明当前系统限制和未来发展规划,明确适用场景
GFramework Config Tool
VS Code extension for the GFramework AI-First config workflow.
Current MVP
- Browse config files from the workspace
config/directory - Open raw YAML files
- Open matching schema files from
schemas/ - Localize extension UI text in English and Simplified Chinese, including the form preview, prompts, and notifications
- Run lightweight schema validation for nested required fields, unknown nested fields, scalar types, scalar arrays, and arrays of objects
- Open a lightweight form preview for nested object fields, object arrays, top-level scalar fields, and scalar arrays
- Render existing YAML comments in the form preview and edit per-field YAML comments directly from the form
- Jump from reference fields to the referenced schema, config domain, or direct config file when a reference value is present
- Initialize empty config files from schema-derived example YAML
- Batch edit one config domain across multiple files for top-level scalar and scalar-array fields
- Surface schema metadata such as
title,description,default,enum, andx-gframework-ref-tablein the lightweight editors
Validation Coverage
The extension currently validates the repository's minimal config-schema subset:
- required properties in nested objects
- unknown properties in nested objects
- scalar compatibility for
integer,number,boolean, andstring - scalar arrays with scalar item type checks
- arrays of objects whose items use the same supported subset recursively
- scalar
enumconstraints and scalar-array itemenumconstraints
Local Testing
cd tools/gframework-config-tool
bun install
bun run test
Packaging And Publishing
cd tools/gframework-config-tool
bun install
bun run package:vsix
VSCE_PAT=your_marketplace_pat bun run publish:marketplace
Current Constraints
- Multi-root workspaces use the first workspace folder
- Validation only covers a minimal subset of JSON Schema
- Form preview supports object-array editing, but nested object arrays inside array items still fall back to raw YAML
- Batch editing remains limited to top-level scalar fields and top-level scalar arrays
Workspace Settings
gframeworkConfig.configPathgframeworkConfig.schemasPath