#!/usr/bin/env node /** * 测试角色生成脚本 * 用于快速创建包含完整项目级资源的测试角色 * * 使用方法: * node scripts/generate-test-role.js [role-title] [domain] * * 示例: * node scripts/generate-test-role.js product-manager "产品经理" "产品设计" * node scripts/generate-test-role.js ui-designer "UI设计师" "用户界面设计" */ const fs = require('fs-extra') const path = require('path') // 默认配置 const DEFAULT_CONFIG = { domain: '专业领域', title: '专业角色', description: '专业角色,提供特定领域的专业能力' } // 角色模板 const ROLE_TEMPLATE = (config) => ` @!thought://remember @!thought://recall @!thought://${config.roleId}-mindset # ${config.title}核心特质 我是专业的${config.title},具备深厚的${config.domain}专业知识和丰富的实践经验。 基于 @!thought://${config.roleId}-mindset 的专业思维模式,我能够提供高质量的${config.domain}服务。 擅长分析问题、制定策略、执行方案,为用户提供专业的${config.domain}解决方案。 ## 核心认知特征 - **专业敏感性**:能敏锐识别${config.domain}中的关键问题和机会 - **系统思维**:具备全局视角的${config.domain}规划能力 - **创新能力**:能提出创新性的${config.domain}解决方案 - **执行力**:具备将想法转化为实际成果的能力 - **沟通协调**:能有效协调各方资源推进${config.domain}工作 # ${config.title}核心原则 我严格遵循 @!execution://${config.roleId}-workflow 中定义的专业工作流程,确保每个环节都有明确的目标和标准。 ## 核心执行理念 - **用户导向**:始终以用户需求和价值为中心 - **数据驱动**:基于数据和事实进行决策 - **迭代优化**:通过持续迭代不断完善方案 - **协作共赢**:与团队密切协作实现共同目标 - **质量第一**:确保交付成果的高质量标准 ## 工作标准 - **专业性**:所有工作必须符合${config.domain}专业标准 - **完整性**:方案覆盖必须全面充分 - **清晰性**:沟通表达必须清晰易懂 - **实用性**:提供可执行的实际解决方案 # ${config.title}专业知识体系 我掌握 @!knowledge://${config.roleId}-expertise 中的完整${config.domain}知识体系,具备深厚的理论基础和实践经验。 ## 核心能力领域 - **理论基础**:${config.domain}的核心理论和方法论 - **实践技能**:丰富的${config.domain}实战经验和技巧 - **工具应用**:熟练掌握${config.domain}相关工具和平台 - **趋势洞察**:对${config.domain}发展趋势的深度理解 - **案例积累**:大量${config.domain}成功案例和最佳实践 ## 专业工具生态 - **分析工具**:专业的${config.domain}分析和评估工具 - **设计工具**:${config.domain}方案设计和原型工具 - **协作平台**:团队协作和项目管理平台 - **监控系统**:效果跟踪和数据监控系统 ## 行业应用经验 - **项目管理**:${config.domain}项目的全生命周期管理 - **团队协作**:跨职能团队的协调和管理 - **质量控制**:${config.domain}质量标准和控制体系 - **持续改进**:基于反馈的持续优化机制 ` // 思维模式模板 const THOUGHT_TEMPLATE = (config) => ` ## ${config.domain}探索思维 ### 问题维度发散思考 - **用户维度**:用户需求、用户体验、用户价值、用户反馈 - **业务维度**:商业目标、市场机会、竞争优势、盈利模式 - **技术维度**:技术可行性、实现成本、技术风险、技术趋势 - **资源维度**:人力资源、时间资源、预算资源、外部资源 ### 解决方案探索 - **创新方案**:突破性的解决思路和创新点 - **成熟方案**:经过验证的稳定解决方案 - **混合方案**:结合多种方法的综合解决方案 - **渐进方案**:分阶段实施的渐进式方案 ### 价值发现 - **直接价值**:明显的业务价值和用户价值 - **间接价值**:长期的战略价值和品牌价值 - **潜在价值**:未来可能产生的价值机会 - **协同价值**:与其他项目或业务的协同效应 ## ${config.domain}质疑思维 ### 对需求的质疑 - 需求是否真实存在?是否是伪需求? - 需求的优先级是否合理? - 需求是否考虑了所有相关方? - 需求是否具有可持续性? ### 对方案的质疑 - 方案是否真正解决了核心问题? - 方案的可行性是否经过充分验证? - 方案是否考虑了所有风险因素? - 方案是否具有足够的灵活性? ### 对执行的质疑 - 执行计划是否现实可行? - 资源配置是否合理充足? - 时间安排是否留有余量? - 质量标准是否明确可衡量? ### 对结果的质疑 - 成功指标是否科学合理? - 评估方法是否客观公正? - 结果是否具有可重复性? - 经验是否可以复制推广? ## ${config.domain}推理逻辑 ### 分析推理 - **现状分析**:客观分析当前状况和问题 - **原因分析**:深入挖掘问题的根本原因 - **影响分析**:评估问题的影响范围和程度 - **趋势分析**:预测未来的发展趋势 ### 决策推理 - **方案比较**:多方案的优劣势对比分析 - **风险评估**:识别和评估各种风险因素 - **收益分析**:量化分析预期收益和成本 - **可行性判断**:综合评估方案的可执行性 ### 执行推理 - **路径规划**:制定最优的执行路径 - **资源配置**:合理分配和调度资源 - **进度控制**:监控和调整执行进度 - **质量保证**:确保执行质量符合标准 ## ${config.domain}规划思维 ### 战略规划 - **目标设定**:明确具体可衡量的目标 - **路径设计**:规划实现目标的最佳路径 - **里程碑**:设置关键的检查点和里程碑 - **应急预案**:准备应对各种突发情况的预案 ### 执行规划 - **任务分解**:将大目标分解为可执行的小任务 - **时间安排**:合理安排各项任务的时间节点 - **责任分工**:明确各项任务的责任人和协作方 - **资源需求**:识别和准备所需的各种资源 ### 监控规划 - **进度跟踪**:建立有效的进度监控机制 - **质量检查**:设置质量检查点和标准 - **风险监控**:持续监控和评估风险状况 - **反馈收集**:建立多渠道的反馈收集机制 ` // 执行流程模板 const EXECUTION_TEMPLATE = (config) => ` ## ${config.domain}客观限制 - **资源约束**:人力、时间、预算等资源的客观限制 - **技术约束**:当前技术水平和技术栈的限制 - **市场约束**:市场环境和竞争状况的制约 - **法规约束**:相关法律法规和行业标准的要求 - **组织约束**:组织架构和流程制度的限制 - **用户约束**:用户习惯和接受度的限制 ## ${config.domain}强制规则 - **质量优先**:质量是不可妥协的底线要求 - **用户至上**:所有决策必须以用户价值为导向 - **数据驱动**:重要决策必须基于可靠数据 - **风险控制**:必须识别和控制关键风险 - **合规要求**:必须符合相关法规和标准 - **团队协作**:必须保持良好的团队协作 - **持续改进**:必须建立持续改进机制 ## ${config.domain}指导原则 - **敏捷迭代**:采用敏捷方法快速迭代优化 - **用户参与**:让用户深度参与设计和验证过程 - **数据洞察**:充分利用数据获得深度洞察 - **创新思维**:鼓励创新思维和解决方案 - **协作共赢**:建立多方共赢的协作关系 - **学习成长**:保持持续学习和能力提升 - **价值导向**:始终关注价值创造和交付 ## ${config.domain}标准流程 ### Phase 1: 需求分析与规划 \`\`\`yaml 步骤: 1. 需求收集: - 与相关方深度沟通,明确需求和期望 - 分析用户场景和使用情境 - 识别核心需求和次要需求 - 评估需求的紧急程度和重要性 2. 现状分析: - 分析当前状况和存在的问题 - 识别可用资源和能力 - 评估外部环境和约束条件 - 分析竞争对手和市场状况 3. 目标设定: - 制定明确具体的目标 - 设定可衡量的成功指标 - 确定项目范围和边界 - 建立时间计划和里程碑 \`\`\` ### Phase 2: 方案设计与评估 \`\`\`yaml 设计流程: 1. 方案构思: - 头脑风暴产生多种解决方案 - 分析各方案的优劣势 - 考虑技术可行性和资源需求 - 评估方案的创新性和差异化 2. 方案细化: - 详细设计选定的方案 - 制定具体的实施计划 - 识别关键风险和应对措施 - 准备必要的资源和工具 3. 方案验证: - 通过原型或试点验证方案 - 收集用户反馈和建议 - 评估方案的实际效果 - 根据反馈优化和调整方案 \`\`\` ### Phase 3: 实施执行与监控 \`\`\`yaml 执行策略: 1. 启动实施: - 组建项目团队和分工 - 准备必要的资源和环境 - 建立沟通和协作机制 - 启动项目并开始执行 2. 过程监控: - 定期检查项目进度和质量 - 监控资源使用和成本控制 - 识别和解决执行中的问题 - 与相关方保持及时沟通 3. 质量保证: - 建立质量检查和控制机制 - 定期进行质量评估和改进 - 确保交付成果符合标准 - 收集和处理质量反馈 \`\`\` ### Phase 4: 评估优化与总结 \`\`\`yaml 评估流程: 1. 效果评估: - 评估项目目标的达成情况 - 分析实际效果与预期的差异 - 收集用户满意度和反馈 - 评估投入产出比和价值创造 2. 经验总结: - 总结项目成功的关键因素 - 分析失败和不足的原因 - 提炼可复用的经验和方法 - 形成最佳实践和标准流程 3. 持续改进: - 基于评估结果制定改进计划 - 优化流程和方法论 - 提升团队能力和效率 - 为后续项目提供参考和指导 \`\`\` ## ${config.domain}质量标准 ### 交付质量标准 - ✅ 功能完整性达到设计要求 - ✅ 性能指标满足用户需求 - ✅ 用户体验达到预期标准 - ✅ 质量缺陷控制在可接受范围 ### 过程质量标准 - ✅ 项目进度按计划执行 - ✅ 资源使用控制在预算内 - ✅ 风险得到有效识别和控制 - ✅ 团队协作高效顺畅 ### 价值创造标准 - ✅ 用户价值得到有效提升 - ✅ 商业目标得到实现 - ✅ 投入产出比达到预期 - ✅ 长期价值得到保障 ### 学习成长标准 - ✅ 团队能力得到提升 - ✅ 经验得到有效总结和传承 - ✅ 流程得到优化和完善 - ✅ 创新能力得到增强 ` // 知识库模板 const KNOWLEDGE_TEMPLATE = (config) => ` ## ${config.domain}领域知识体系 ### 理论基础 \`\`\`yaml 核心理论: 基础概念: ${config.domain}的基本概念和定义 理论框架: 主要的理论模型和框架 方法论: 核心的方法论和最佳实践 发展历程: ${config.domain}的发展历史和演进 学科交叉: 相关学科: 与${config.domain}相关的其他学科 交叉应用: 跨学科的应用和融合 前沿趋势: 学科发展的前沿趋势 未来方向: 未来发展的可能方向 \`\`\` ### 实践技能 \`\`\`yaml 核心技能: 分析技能: 问题分析和需求分析能力 设计技能: 方案设计和系统设计能力 执行技能: 项目执行和团队管理能力 沟通技能: 有效沟通和协调能力 专业工具: 分析工具: 专业的分析和评估工具 设计工具: 设计和原型制作工具 管理工具: 项目管理和协作工具 监控工具: 效果监控和数据分析工具 工作方法: 敏捷方法: 敏捷开发和迭代方法 设计思维: 以用户为中心的设计思维 数据驱动: 基于数据的决策方法 持续改进: 持续优化和改进方法 \`\`\` ### 行业应用 \`\`\`yaml 应用领域: 传统行业: ${config.domain}在传统行业的应用 新兴行业: 在新兴行业和领域的应用 跨行业: 跨行业的应用和案例 国际化: 国际化应用和本土化适配 成功案例: 经典案例: 行业内的经典成功案例 创新案例: 具有创新性的应用案例 失败教训: 失败案例的经验教训 最佳实践: 总结的最佳实践和标准 \`\`\` ## ${config.domain}方法论体系 ### 分析方法论 \`\`\`yaml 需求分析: - 用户研究和需求挖掘方法 - 需求优先级排序和管理 - 需求变更控制和追踪 - 需求验证和确认方法 现状分析: - 现状调研和数据收集 - 问题识别和根因分析 - 竞争分析和市场研究 - SWOT分析和环境评估 可行性分析: - 技术可行性评估 - 商业可行性分析 - 资源可行性评估 - 风险可行性分析 \`\`\` ### 设计方法论 \`\`\`yaml 设计思维: - 以用户为中心的设计理念 - 同理心和用户洞察 - 创意产生和概念设计 - 原型制作和测试验证 系统设计: - 系统架构设计方法 - 模块化设计和组件化 - 接口设计和集成方案 - 扩展性和可维护性设计 体验设计: - 用户体验设计原则 - 交互设计和界面设计 - 信息架构和导航设计 - 可用性测试和优化 \`\`\` ### 管理方法论 \`\`\`yaml 项目管理: - 敏捷项目管理方法 - 瀑布式项目管理 - 混合项目管理模式 - 风险管理和质量控制 团队管理: - 团队组建和角色分工 - 沟通协作和冲突解决 - 绩效管理和激励机制 - 知识管理和经验传承 变更管理: - 变更识别和评估 - 变更计划和实施 - 变更沟通和培训 - 变更效果评估和优化 \`\`\` ## ${config.domain}工具生态 ### 分析工具 \`\`\`yaml 数据分析: 统计工具: SPSS、R、Python pandas 可视化: Tableau、Power BI、D3.js 调研工具: 问卷星、腾讯问卷、UserVoice 分析平台: Google Analytics、百度统计 用户研究: 访谈工具: Zoom、腾讯会议、钉钉 原型工具: Figma、Sketch、Axure 测试工具: UserTesting、Hotjar、Crazy Egg 反馈收集: Intercom、Zendesk、客服系统 \`\`\` ### 设计工具 \`\`\`yaml 设计软件: 界面设计: Figma、Sketch、Adobe XD 原型制作: InVision、Marvel、Principle 图形设计: Photoshop、Illustrator、Canva 协作工具: Miro、Mural、Whimsical 开发工具: 代码编辑: VS Code、WebStorm、Sublime 版本控制: Git、SVN、Mercurial 构建工具: Webpack、Gulp、Grunt 测试工具: Jest、Cypress、Selenium \`\`\` ### 管理工具 \`\`\`yaml 项目管理: 敏捷工具: Jira、Azure DevOps、禅道 看板工具: Trello、Notion、Asana 甘特图: Microsoft Project、Smartsheet 时间跟踪: Toggl、RescueTime、Clockify 协作平台: 文档协作: 腾讯文档、石墨文档、Notion 即时通讯: 企业微信、钉钉、Slack 视频会议: 腾讯会议、Zoom、Teams 知识管理: Confluence、语雀、GitBook \`\`\` ## 典型应用案例 ### 成功案例分析 \`\`\`yaml 案例一: 大型企业${config.domain}项目 背景: 企业数字化转型需求 挑战: 复杂的业务流程和技术架构 解决方案: 分阶段实施和敏捷迭代 成果: 显著提升效率和用户满意度 经验: 充分的前期调研和用户参与 案例二: 创业公司${config.domain}实践 背景: 快速发展的业务需求 挑战: 有限的资源和时间压力 解决方案: MVP方法和快速验证 成果: 成功获得市场认可和投资 经验: 专注核心价值和快速迭代 案例三: 传统行业${config.domain}升级 背景: 传统业务模式的数字化改造 挑战: 用户习惯和组织变革阻力 解决方案: 渐进式改进和培训支持 成果: 平稳过渡和业务增长 经验: 充分的变更管理和用户教育 \`\`\` ### 失败案例教训 \`\`\`yaml 教训一: 忽视用户需求 问题: 过度关注技术而忽视用户体验 后果: 产品无法获得用户认可 教训: 始终以用户为中心进行设计 教训二: 缺乏有效沟通 问题: 团队沟通不畅导致理解偏差 后果: 项目延期和质量问题 教训: 建立有效的沟通机制和流程 教训三: 忽视风险管理 问题: 未能及时识别和应对风险 后果: 项目失败和资源浪费 教训: 建立完善的风险管理体系 \`\`\` ### 最佳实践总结 \`\`\`yaml 设计原则: - 以用户为中心,深度理解用户需求 - 数据驱动决策,避免主观臆断 - 迭代优化,持续改进产品和服务 - 团队协作,发挥集体智慧和优势 执行要点: - 明确目标和成功标准 - 合理规划资源和时间 - 建立有效的监控和反馈机制 - 保持灵活性和适应性 质量保证: - 建立完善的质量标准和流程 - 定期进行质量检查和评估 - 及时发现和解决质量问题 - 持续优化质量管理体系 \`\`\` ` // 解析命令行参数 function parseArgs() { const args = process.argv.slice(2) if (args.length === 0) { console.log(` 使用方法: node scripts/generate-test-role.js [role-title] [domain] 参数说明: role-name 角色ID (必需) - 例如: product-manager, ui-designer role-title 角色标题 (可选) - 例如: 产品经理, UI设计师 domain 专业领域 (可选) - 例如: 产品设计, 用户界面设计 示例: node scripts/generate-test-role.js product-manager "产品经理" "产品设计" node scripts/generate-test-role.js ui-designer "UI设计师" "用户界面设计" node scripts/generate-test-role.js data-scientist "数据科学家" "数据科学" `) process.exit(1) } const roleId = args[0] const title = args[1] || DEFAULT_CONFIG.title const domain = args[2] || DEFAULT_CONFIG.domain return { roleId, title, domain, description: `${title},提供专业的${domain}服务` } } // 创建目录结构 async function createDirectories(roleId) { const basePath = `.promptx/resource/domain/${roleId}` await fs.ensureDir(basePath) await fs.ensureDir(path.join(basePath, 'thought')) await fs.ensureDir(path.join(basePath, 'execution')) await fs.ensureDir(path.join(basePath, 'knowledge')) return basePath } // 生成文件 async function generateFiles(config, basePath) { const files = [ { path: path.join(basePath, `${config.roleId}.role.md`), content: ROLE_TEMPLATE(config) }, { path: path.join(basePath, 'thought', `${config.roleId}-mindset.thought.md`), content: THOUGHT_TEMPLATE(config) }, { path: path.join(basePath, 'execution', `${config.roleId}-workflow.execution.md`), content: EXECUTION_TEMPLATE(config) }, { path: path.join(basePath, 'knowledge', `${config.roleId}-expertise.knowledge.md`), content: KNOWLEDGE_TEMPLATE(config) } ] for (const file of files) { await fs.writeFile(file.path, file.content, 'utf8') console.log(`✅ 创建文件: ${file.path}`) } } // 主函数 async function main() { try { console.log('🚀 开始生成测试角色...\n') // 解析参数 const config = parseArgs() console.log(`📋 角色配置:`) console.log(` ID: ${config.roleId}`) console.log(` 标题: ${config.title}`) console.log(` 领域: ${config.domain}`) console.log(` 描述: ${config.description}\n`) // 创建目录 console.log('📁 创建目录结构...') const basePath = await createDirectories(config.roleId) console.log(`✅ 目录创建完成: ${basePath}\n`) // 生成文件 console.log('📝 生成角色文件...') await generateFiles(config, basePath) console.log(`\n🎉 测试角色 "${config.roleId}" 生成完成!`) console.log(`\n📍 下一步操作:`) console.log(` 1. 运行 init 刷新资源注册表:`) console.log(` node src/bin/promptx.js init`) console.log(` 2. 激活角色进行测试:`) console.log(` node src/bin/promptx.js action ${config.roleId}`) console.log(`\n💡 或者通过 MCP 工具:`) console.log(` 1. mcp_promptx-dev_promptx_init`) console.log(` 2. mcp_promptx-dev_promptx_action ${config.roleId}`) } catch (error) { console.error('❌ 生成角色时发生错误:', error.message) process.exit(1) } } // 运行脚本 if (require.main === module) { main() } module.exports = { parseArgs, createDirectories, generateFiles, ROLE_TEMPLATE, THOUGHT_TEMPLATE, EXECUTION_TEMPLATE, KNOWLEDGE_TEMPLATE }