mcpField
C
create-project

create-project

github.com/verygoodopensource开发17555 次安装今天更新
代码仓库

关于 create-project

create-project 是用于创建 Dart 或 Flutter 项目的技能,面向需要从模板开始搭建项目的开发者。它通过 Very Good CLI MCP 服务推断合适模板、收集必要信息,并在创建后安装依赖。

主要功能

  1. 01基于需求推断项目模板
  2. 02询问缺失的项目参数
  3. 03使用 Very Good CLI MCP 服务创建项目
  4. 04创建后安装依赖
  5. 05处理 Dart 包命名和组织名要求

适用场景

  1. 01从模板初始化 Dart 包或 Flutter 应用
  2. 02按分层架构创建数据层或仓储层包
  3. 03在创建新项目后安装依赖

MCP 相关

该技能调用 Very Good CLI MCP 服务来创建项目并安装依赖。若服务不可用,可改用相应的 very_good 命令。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/verygoodopensource/vgv-ai-flutter-plugin --skill create-project

安装后在 Claude Code 中输入/create-project确认已加载。

附带文件agents/openai.yaml

详细介绍

创建项目

使用 Very Good CLI 模板搭建新的 Dart 或 Flutter 项目。

跨运行环境的回退方案。 此技能会调用 Very Good CLI MCP 服务,并向用户提出结构化问题。在没有此插件的 Bash 钩子且未连接该 MCP 服务的主机上,直接运行等效的 very_good create … 和 very_good packages get 命令。在不支持 AskUserQuestion 的主机上,调用主机提供的任何等效用户提问工具;如果没有,则以普通编号文本提出相同的问题。


核心规范

  • 使用 Very Good CLI MCP 服务搭建项目并安装依赖
  • 根据上下文推断模板——根据用户想构建的内容确定合适的模板,而不是让他们选择子命令名称
  • 仅针对无法推断的信息使用 AskUserQuestion——项目名称和组织名称是最常缺少的信息
  • 创建后安装依赖

工作流

第 1 步:了解用户想构建什么

根据用户的描述推断子命令——可用子命令及其说明由 Very Good CLI MCP 服务定义。

如果意图不明确,使用 AskUserQuestion 提出关于他们要构建什么的高层问题,而不是询问他们想要哪个子命令。

第 2 步:收集缺失的参数

一次调用 AskUserQuestion,询问无法推断的信息。除非用户主动提出,否则将可选参数(描述、输出目录、应用 ID)保留为默认值。

第 3 步:创建并设置
  1. 使用 Very Good CLI MCP 服务创建项目
  2. 使用 Very Good CLI MCP 服务安装依赖——将 directory: '<path-to-created-project>' 传递给 packages_get,确保它针对新项目运行,而不是工作区根目录

关键领域知识

  • 对于分层架构模式中的数据层和仓库层包,使用 dart_package(而非 flutter_package)——这些包不得依赖 Flutter SDK
  • 如果用户提供的项目名称包含连字符,请将其转换为下划线——Dart 包名称仅允许使用小写字母、数字和下划线
  • 生成应用、插件或游戏的模板需要组织名称——不要跳过,否则会默认使用占位值
  • 如果创建后 packages_get 失败,请检查 directory 是否指向新项目,以及 Dart SDK 是否位于 PATH 中

反模式

反模式问题正确做法
让用户选择模板名称用户会按要构建的内容思考,而不是按 CLI 子命令思考根据上下文推断模板
过多询问可选参数会拖慢工作流仅询问无法推断的信息
在数据层使用 flutter_package会引入不必要的 Flutter SDK 依赖对数据层和仓库层包使用 dart_package
为应用或插件跳过组织名称会默认使用占位值模板要求时进行询问

评论

支持 Markdown