pm-preview

Solid

产品文档实时预览 - 在浏览器中预览 docs/ 下的所有 MD 文档,文档更新时自动刷新 Use when: 需要预览产品文档、查看 PRD/BRD/MRD 等 MD 文档的渲染效果 Do NOT use when: 文档尚未生成(docs/ 为空)

Code & Development 41 stars 6 forks Updated yesterday MIT

Install

View on GitHub

Quality Score: 86/100

Stars 20%
54
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

## Preamble (run first) ```bash # 检查 docs/ 目录和文档数量 echo "📊 文档预览状态:" echo "" if [ ! -d docs ]; then echo " ❌ docs/ 目录不存在" echo " 💡 请先执行产品流程(/pm-brainstorm → /pm-demand → ... → /pm-docs)生成文档" exit 0 fi total=0 for prefix in "01-需求调研" "02-方案设计" "03-增长迭代" "04-风控管理" "05-产品战略"; do count=$(ls docs/$prefix/*.md 2>/dev/null | wc -l | tr -d ' ') if [ "$count" -gt 0 ]; then echo " $prefix: $count 个文档" total=$((total + count)) fi done # 递归统计所有 .md 文件 all=$(find docs -name "*.md" 2>/dev/null | wc -l | tr -d ' ') echo "" echo " 📄 总计: $all 个 MD 文档" echo "" if [ "$all" -eq 0 ]; then echo " ❌ 没有找到任何文档" echo " 💡 请先执行产品流程生成文档" fi ``` --- ## 执行流程 ### 步骤 1: 启动预览服务器 使用 `Bash` 工具启动预览服务器: ```bash bash skills/pm-preview/scripts/start-preview.sh --project-dir . ``` **说明**: - 服务器在随机高端口启动(49152-65535) - 使用 `--project-dir .` 将 session 持久化到 `.superpm/preview/`,服务器停止后文件保留 - 后台运行,不阻塞终端 **输出示例**: ```json {"type":"server-started","port":52341,"url":"http://localhost:52341","docs_dir":"/path/to/docs","state_dir":"/path/to/.superpm/preview/..."} ``` ### 步骤 2: 告知用户打开预览 从输出中提取 `url` 字段,告知用户: > 📄 文档预览已启动! > > 🌐 **预览地址**: {url} > > 在浏览器中打开上述地址,即可查看所有产品文档。 > - 左侧边栏:文档目录树 > - 右侧内容区:Markdown 渲染结果 > - 📝 文档更新时浏览器会自动刷新 ### 步骤 3: 监控状态(可选) 如果用户需要持续预览,可以提醒: > 💡 **提示**: > - 预览服务器 30 分钟无活动后自动停止 > - 如需手动停止,执行:`bash skills/pm-preview/scripts/stop-preview.sh .superpm/preview/{session_id}` > - 执行其他 skill(如 `/pm-docs`)生成新文档后,浏览器会自动刷新 --- ## 停止预览 用户可通过以下方式停止: ```bash # 查找 ...

Details

Author
konglong87
Repository
konglong87/superPM
Created
4 months ago
Last Updated
yesterday
Language
JavaScript
License
MIT

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category