원클릭으로
component-discovery
Vue 3 + Vite 组件自动发现机制规范。当用户提到"添加组件"、"创建component.js"、"自动发现"、"component配置"、或需要在 src/components 下创建新的组件目录时,必须使用此skill。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Vue 3 + Vite 组件自动发现机制规范。当用户提到"添加组件"、"创建component.js"、"自动发现"、"component配置"、或需要在 src/components 下创建新的组件目录时,必须使用此skill。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
当用户希望整理需求、明确目的、描述问题,或要求"生成文档"、"整理意图"、"明确现象"时触发。用于通过多轮对话收集和整理需求,不执行任何代码修改。
当用户说 "boot work-flow"、"初始化 work-flow"、"为这个仓库创建 work-flow skill"、"创建 <仓库名>-work-flow" 时触发。这是一个元skill:自动检测 git 仓库名 → 在项目本地创建 <repo>-work-flow skill → 仅写入项目启动方法和启动信息作为最小骨架 → 标注后续通过 /key_board_3 添加 references 增强。
清理git嵌套仓库,保持仓库隔离性,让 git add . 干净无污染。 适用于 .claude/repo/ 或其他包含克隆仓库的目录。 当用户提到"清理git"、"处理嵌套仓库"、"git隔离"、"保持干净"、 "部分跟踪"、"白名单子目录"、"忽略但保留子目录"、"gitignore 否定规则"、 "忽略 .tool/"、"工具目录不入库"时触发。
当用户要求"总结成skill"、"保存对话为skill"、"提取提示词"、"做成技能"时触发。这是元技能模板,用于指导创建其他技能,而非被创建的技能本身。
当用户要求"拆分到references"、"给skill加ref引导"、"把xx沉淀为reference"、"优化skill结构"、"重构skill"、"skill膨胀了"、"合并skill"、或要求"探索/扫描现有skill看哪些可合并"时触发。本 skill 专用于按主题把已有 skill 组织成渐进式指导文档——主 SKILL.md 承担主干主题、references/ 承担特化专项的特化指导,整个 skill 包高内聚、单文档承担一个主题;长度只是边缘参考。不创建新 skill、不改变前置 skill (key_board / key_board_2) 的职责。探索模式详见 [[场景E-合并审计]]。
阅读任意代码库目录(不限语言/框架),分析模块与代码结构,生成防腐蚀规范 SKILL.md、更新已有 skill 使其与代码库一致、或在使用 skill 后反思同步项目经验。覆盖"创建"、"同步"、"反思"三个场景。不生成孤儿文档。
| name | component-discovery |
| description | Vue 3 + Vite 组件自动发现机制规范。当用户提到"添加组件"、"创建component.js"、"自动发现"、"component配置"、或需要在 src/components 下创建新的组件目录时,必须使用此skill。 |
本项目使用完全自动化的组件发现系统。只需按照规范创建文件,系统会自动识别、注册路由并在首页展示。
src/components/
└── YourComponent/ # 目录名必须与 component.js 中的 name 一致
├── component.js # 组件配置(必需)
└── index.vue # 组件实现(必需)
export default {
// === 基础信息 ===
name: 'YourComponent', // 【必需】唯一标识符,必须与目录名一致
title: '显示标题', // 【必需】在 UI 中显示的名称
description: '组件描述', // 【必需】组件功能描述
version: '1.0.0', // 【必需】语义化版本
// === 分组与分类 ===
group: 'DataTable', // 【必需】主分组,如 'Three.js', 'DataTable', 'Basic'
category: 'Spreadsheet', // 【必需】子分类
tags: ['tag1', 'tag2'], // 【必需】搜索/过滤标签
// === 入口文件 ===
component: './index.vue', // 【必需】组件文件路径(相对路径)
// === 路由配置(可选)===
route: {
path: '/custom-path', // 自定义路由路径,默认 /components/{name}
meta: {
title: '页面标题', // 页面标题
icon: '🎨' // 图标 emoji
}
},
// === 显示选项(可选)===
fullscreen: true, // 是否全屏显示,默认 true
// === 依赖(可选)===
dependencies: [], // 外部依赖,如 ['three']
// === 默认属性(可选)===
defaultProps: {} // 默认 props
}
系统会自动验证以下字段,缺少任何一个都会导致组件无法被发现:
| 字段 | 类型 | 说明 |
|---|---|---|
name | string | 唯一标识符 |
title | string | 显示名称 |
description | string | 组件描述 |
version | string | 版本号 |
group | string | 主分组 |
category | string | 子分类 |
tags | array | 标签数组 |
component | string | 组件文件路径 |
<script setup>
// 组件逻辑
defineProps({
// 定义你的 props
})
// 组合式 API
import { ref } from 'vue'
const count = ref(0)
</script>
<template>
<div class="your-component">
<!-- 组件内容 -->
</div>
</template>
<style scoped>
.your-component {
/* 样式 */
}
</style>
import.meta.glob('../components/**/component.js') 扫描所有配置文件ComponentDiscovery.scanComponents() 加载并验证每个配置route.path 或默认路径 /components/{name} 自动注册路由常用 group 值:
Three.js - Three.js 相关组件DataTable - 数据表格类组件Basic - 基础组件Animation - 动画组件Effects - 特效组件name 一致(大小写敏感)dependencies 中添加已内置的包(如 vue, vue-router, three 已内置)假设要创建"我的表格"组件:
mkdir src/components/MyTable
src/components/MyTable/component.js:
export default {
name: 'MyTable',
title: '我的表格',
description: '一个自定义数据表格组件',
version: '1.0.0',
group: 'DataTable',
category: 'Table',
tags: ['table', 'data', 'custom'],
component: './index.vue',
route: {
path: '/my-table',
meta: {
title: '我的表格',
icon: '📊'
}
}
}
src/components/MyTable/index.vue:
<script setup>
defineProps({
data: { type: Array, default: () => [] }
})
</script>
<template>
<div class="my-table">
<table>
<slot />
</table>
</div>
</template>
创建完成后,重新运行 npm run dev,组件会自动出现在首页。