- 新增 templates/state_template.md — _state.md 和 _timeline.jsonl 模板 - 8 条命令模板增加"第 0 步:加载项目状态"和"更新项目状态"规则 - install.sh 注入会话状态恢复逻辑(CODEBUDDY.md) - ROADMAP 调整为 v0.2.0=状态保持,v1.0.0=评测体系 借鉴 gstack 的 Context Recovery + append-only JSONL 模式: _timeline.jsonl 只追加不修改作为事实来源,_state.md 做当前快照
118 lines
4.1 KiB
Bash
Executable File
118 lines
4.1 KiB
Bash
Executable File
#!/bin/bash
|
||
# ============================================================
|
||
# YxStack 一键安装脚本
|
||
# 用法:curl -sSL {raw_url} | bash
|
||
# 或者:bash install.sh
|
||
# ============================================================
|
||
set -e
|
||
|
||
REPO_URL="http://82.157.208.197:3000/qiukai/yxstack-skill.git"
|
||
YXSTACK_DIR="$HOME/.codebuddy/yxstack"
|
||
CODEBUDDY_MD="$HOME/.codebuddy/CODEBUDDY.md"
|
||
|
||
YxSTACK_CONFIG='
|
||
## YxStack 工作流
|
||
采用 **圆心商业化工作流(YxStack)** 作为全局默认规范。
|
||
|
||
### 核心约束
|
||
- 专注业务策略、产品规划、商业模式、增长运营
|
||
- 不输出研发实现、代码、技术架构、UI 设计
|
||
|
||
### 内置指令
|
||
| 指令 | 用途 |
|
||
|------|------|
|
||
| /pfit | 痛点真伪验证 |
|
||
| /pos | 产品定位与差异化 |
|
||
| /uj | 用户旅程与流失分析 |
|
||
| /prd | 业务型 PRD 与 MVP 定义 |
|
||
| /money | 商业模式与定价体系 |
|
||
| /gtm | 冷启动与推广方案 |
|
||
| /metric | 业务指标与复盘 |
|
||
| /comp | 竞品商业分析 |
|
||
|
||
使用指令时,需读取 `~/.codebuddy/yxstack/commands/{command}.md`
|
||
获取完整执行模板,并按模板中的 Checklist 执行。
|
||
|
||
完整定义见 `~/.codebuddy/yxstack/README.md`。
|
||
|
||
### 自动升级
|
||
每次会话开始时(或用户第一次使用 YxStack 指令前),检查版本更新:
|
||
|
||
```bash
|
||
cd ~/.codebuddy/yxstack && \
|
||
git fetch origin 2>/dev/null; \
|
||
REMOTE=$(git ls-remote --tags origin 2>/dev/null | awk -F/ \047/v[0-9]/ {print $NF}\047 | sort -V | tail -1); \
|
||
LOCAL=$(cat VERSION 2>/dev/null); \
|
||
if [ -n "$REMOTE" ] && [ "$REMOTE" != "$LOCAL" ]; then \
|
||
echo "YxStack 有新版本:$LOCAL → $REMOTE,建议升级"; \
|
||
fi
|
||
```
|
||
|
||
如果检测到新版本,提示用户:「YxStack 有新版本 vX.Y.Z,是否升级?」用户确认后执行 \`bash ~/.codebuddy/yxstack/install.sh\`。
|
||
|
||
### 会话状态恢复
|
||
|
||
每次会话开始时,自动执行以下流程:
|
||
1. 查找当前项目是否存在 `.yxstack/_state.md`
|
||
2. 如果存在,读取并给出「上次到这里了:当前在 {phase} 阶段,上次执行了 {last_command}」的 2 句欢迎摘要
|
||
3. 如果「待处理项」中有明确的下一步指令,主动建议执行
|
||
4. 如果 `_state.md` 不存在,跳过,正常开始会话
|
||
|
||
项目状态文件 `.yxstack/_state.md` 和事件日志 `_timeline.jsonl` 由 YxStack 指令自动维护,
|
||
参考模板见 `~/.codebuddy/yxstack/templates/state_template.md`。
|
||
|
||
开源仓库:http://82.157.208.197:3000/qiukai/yxstack-skill
|
||
维护方:筑基阁(开阳星)
|
||
'
|
||
|
||
echo ""
|
||
echo " ★ 圆心商业化工作流(YxStack)安装中..."
|
||
echo ""
|
||
|
||
# 1. 克隆仓库
|
||
if [ -d "$YXSTACK_DIR" ]; then
|
||
echo " [1/2] 更新 YxStack 模板..."
|
||
cd "$YXSTACK_DIR"
|
||
git pull --ff-only 2>/dev/null || {
|
||
echo " ⚠ 更新失败,重新克隆..."
|
||
cd "$HOME"
|
||
rm -rf "$YXSTACK_DIR"
|
||
git clone "$REPO_URL" "$YXSTACK_DIR"
|
||
}
|
||
else
|
||
echo " [1/2] 下载 YxStack 模板..."
|
||
mkdir -p "$HOME/.codebuddy"
|
||
git clone "$REPO_URL" "$YXSTACK_DIR"
|
||
fi
|
||
|
||
# 2. 配置 CODEBUDDY.md
|
||
echo " [2/2] 配置全局工作流..."
|
||
|
||
if [ ! -f "$CODEBUDDY_MD" ]; then
|
||
# 全新用户,创建文件
|
||
echo "# 全局配置" > "$CODEBUDDY_MD"
|
||
echo "$YxSTACK_CONFIG" >> "$CODEBUDDY_MD"
|
||
echo " ✓ 已创建 CODEBUDDY.md 并写入 YxStack 配置"
|
||
elif grep -q "YxStack\|yxstack\|圆心商业化工作流" "$CODEBUDDY_MD" 2>/dev/null; then
|
||
echo " ✓ CODEBUDDY.md 已包含 YxStack 配置,跳过"
|
||
else
|
||
# 已有文件但没有 YxStack,追加
|
||
echo "" >> "$CODEBUDDY_MD"
|
||
echo "$YxSTACK_CONFIG" >> "$CODEBUDDY_MD"
|
||
echo " ✓ 已在现有 CODEBUDDY.md 末尾追加 YxStack 配置"
|
||
fi
|
||
|
||
echo ""
|
||
echo " ★ 安装完成!版本:$(cat VERSION 2>/dev/null || echo '未知')"
|
||
echo ""
|
||
echo " 现在你可以使用以下指令:"
|
||
echo " /pfit — 验证痛点真伪"
|
||
echo " /pos — 产品定位与差异化"
|
||
echo " /uj — 用户旅程分析"
|
||
echo " /prd — 业务型 PRD"
|
||
echo " /money — 商业模式与定价"
|
||
echo " /gtm — 冷启动方案"
|
||
echo " /metric — 业务指标体系"
|
||
echo " /comp — 竞品商业分析"
|
||
echo ""
|