personal-software-dev-exploration

Installation
SKILL.md

个人软件开发探索技能

任务目标

  • 本 Skill 用于:从零开始系统化探索和规划个人软件开发项目
  • 核心能力
    • 竞品分析:多维度对比同类产品,提取设计要点
    • 需求定义:明确 MVP 边界,区分 P0/P1/P2 优先级
    • 架构设计:技术选型、模块划分、数据流设计
    • 决策追踪:记录所有讨论决策,形成决策矩阵
  • 触发条件:开始一个新的个人软件项目、需要系统化规划项目方向、或现有项目需要重新梳理需求时

操作步骤

标准流程

┌─────────────────────────────────────────────────────────────┐
│  个人软件开发探索流程                                         │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ① 问题发现 ──→ ② 竞品分析 ──→ ③ 需求定义 ──→ ④ 架构设计 │
│       │              │              │              │        │
│       ▼              ▼              ▼              ▼        │
│   [洞察机会]    [对比表+决策]  [MVP边界+优先级] [技术选型]  │
│                                                             │
│  ⑤ 决策整理 ──→ ⑥ 文档输出                                 │
│       │              │                                      │
│       ▼              ▼                                      │
│   [决策矩阵]    [problem/*.md + SRS.md 更新]               │
│                                                             │
└─────────────────────────────────────────────────────────────┘

步骤详解

第一步:问题发现

  1. 识别核心问题:用户面临什么痛点?
  2. 评估解决价值:这个问题值得解决吗?
  3. 判断个人适配度:个人开发是否适合做这个项目?

第二步:竞品分析

  1. 选择竞品:选取 2-4 个同类产品
  2. 多维度对比:功能、技术、用户体验、生态
  3. 提取可借鉴点:哪些设计值得学习?
  4. 确定差异化方向:如何与竞品区分?

第三步:需求定义

  1. 明确 MVP 边界:第一版必须交付什么?
  2. 划分优先级:P0(必须)/P1(重要)/P2(可选)
  3. 定义成功标准:如何衡量项目成功?
  4. 估算资源投入:时间、人力、设备

第四步:架构设计

  1. 技术栈选型:前端/后端/框架选择
  2. 模块划分:核心模块及其职责
  3. 数据流设计:数据如何在系统中流动
  4. 技术风险评估:哪些技术难点需要攻克?

第五步:决策整理

  1. 建立决策矩阵:汇总所有讨论决策
  2. 标注优先级:P0/P1/P2 分层
  3. 明确待确定项:还有哪些问题未解决?

第六步:文档输出

  1. 创建 problem/ 目录:按类别组织问题
  2. 更新 SRS.md:将决策同步到需求规格说明书
  3. 建立讨论追踪:记录每轮讨论结论

资源索引

注意事项

  • 渐进式规划:不要试图一次性解决所有问题,先聚焦 MVP
  • 优先级排序:从 P0 开始,确保核心功能先行
  • 决策可追溯:每次讨论后立即记录决策,避免遗忘
  • 保持灵活性:个人项目需求常会变化,文档应及时更新
  • 控制范围:个人开发时间精力有限,警惕功能蔓延

使用示例

示例 1:从零开始探索新项目

场景:想要开发一个效率工具,但不确定做什么

操作

  1. 问题发现:分析日常工作中的痛点(剪贴板管理、文件搜索、快捷启动)
  2. 竞品分析:研究 uTools、ZTools、Quicker 等产品
  3. 需求定义:确定 MVP 边界(先做 QuickJS 插件 + 搜索)
  4. 架构设计:选择 Tauri + Svelte + QuickJS
  5. 决策整理:输出 5 个问题分类文件
  6. 文档输出:更新 SRS.md

输出

wiki/
├── SRS.md                    # 功能需求规格
└── problem/                  # 问题追踪
    ├── 00-summary.md         # 决策汇总
    ├── 01-project-management.md
    ├── 02-technical-architecture.md
    ├── 03-user-experience.md
    ├── 04-ecosystem-community.md
    └── 05-resources-risk.md

示例 2:为现有项目补充缺失信息

场景:已有项目 SRS,但发现有些问题未定义

操作

  1. 识别缺失:检查 SRS 中的"待确定"项
  2. 分类整理:将问题按 project/technical/ux/ecosystem 分类
  3. 分轮讨论:按优先级逐轮讨论
  4. 更新文档:将决策同步回 SRS

示例 3:竞品分析驱动技术选型

场景:不确定用 Electron 还是 Tauri

操作

  1. 选择竞品:uTools(Electron)、ZTools(Delphi+CEF)
  2. 多维度对比:性能、生态、社区、安全
  3. 个人开发者适配:Tauri 更轻量适合个人项目
  4. 决策记录:选择 Tauri + Rust,记录理由
Related skills
Installs
1
First Seen
Apr 15, 2026