viepilot 2.1.0 → 2.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +220 -0
- package/README.md +32 -21
- package/bin/viepilot.cjs +12 -4
- package/docs/brainstorm/session-2026-04-11.md +194 -0
- package/docs/skills-reference.md +46 -0
- package/docs/user/features/adapters.md +74 -0
- package/docs/user/features/proposal.md +196 -0
- package/lib/adapters/antigravity.cjs +33 -0
- package/lib/adapters/claude-code.cjs +2 -2
- package/lib/adapters/codex.cjs +34 -0
- package/lib/adapters/cursor.cjs +2 -1
- package/lib/adapters/index.cjs +4 -2
- package/lib/google-slides-exporter.cjs +80 -0
- package/lib/proposal-generator.cjs +249 -0
- package/lib/screenshot-artifact.cjs +142 -0
- package/lib/viepilot-config.cjs +32 -1
- package/lib/viepilot-install.cjs +8 -10
- package/package.json +8 -3
- package/skills/vp-audit/SKILL.md +13 -2
- package/skills/vp-auto/SKILL.md +2 -2
- package/skills/vp-brainstorm/SKILL.md +2 -2
- package/skills/vp-crystallize/SKILL.md +30 -3
- package/skills/vp-debug/SKILL.md +2 -2
- package/skills/vp-docs/SKILL.md +1 -1
- package/skills/vp-evolve/SKILL.md +1 -1
- package/skills/vp-info/SKILL.md +1 -1
- package/skills/vp-pause/SKILL.md +2 -2
- package/skills/vp-proposal/SKILL.md +175 -0
- package/skills/vp-request/SKILL.md +2 -2
- package/skills/vp-resume/SKILL.md +2 -2
- package/skills/vp-rollback/SKILL.md +1 -1
- package/skills/vp-ui-components/SKILL.md +2 -2
- package/skills/vp-update/SKILL.md +1 -1
- package/templates/proposal/docx/project-detail.docx +0 -0
- package/templates/proposal/pptx/general.pptx +0 -0
- package/templates/proposal/pptx/product-pitch.pptx +0 -0
- package/templates/proposal/pptx/project-proposal-creative.pptx +0 -0
- package/templates/proposal/pptx/project-proposal-enterprise.pptx +0 -0
- package/templates/proposal/pptx/project-proposal-modern-tech.pptx +0 -0
- package/templates/proposal/pptx/project-proposal.pptx +0 -0
- package/templates/proposal/pptx/tech-architecture.pptx +0 -0
- package/workflows/autonomous.md +32 -0
- package/workflows/brainstorm.md +1 -1
- package/workflows/crystallize.md +519 -0
- package/workflows/evolve.md +2 -0
- package/workflows/proposal.md +807 -0
- package/dev-install.sh +0 -171
- package/install.sh +0 -125
package/dev-install.sh
DELETED
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# ViePilot Development Installation Script
|
|
4
|
-
# Installs development build without symlink dependency by default
|
|
5
|
-
#
|
|
6
|
-
# Optional env vars:
|
|
7
|
-
# VIEPILOT_ADAPTER — target platform: claude-code (default), cursor, cursor-agent, cursor-ide
|
|
8
|
-
# VIEPILOT_INSTALL_PROFILE — backward-compat alias for VIEPILOT_ADAPTER
|
|
9
|
-
# VIEPILOT_AUTO_YES — skip confirmation prompt (set to 1)
|
|
10
|
-
# VIEPILOT_SYMLINK_SKILLS=1 — symlink each skills/vp-* instead of copy
|
|
11
|
-
|
|
12
|
-
set -e
|
|
13
|
-
|
|
14
|
-
# Colors
|
|
15
|
-
RED='\033[0;31m'
|
|
16
|
-
GREEN='\033[0;32m'
|
|
17
|
-
YELLOW='\033[1;33m'
|
|
18
|
-
BLUE='\033[0;34m'
|
|
19
|
-
NC='\033[0m'
|
|
20
|
-
|
|
21
|
-
# Get script directory (project root)
|
|
22
|
-
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
23
|
-
AUTO_YES="${VIEPILOT_AUTO_YES:-0}"
|
|
24
|
-
|
|
25
|
-
# Backward compat: VIEPILOT_INSTALL_PROFILE accepted as alias for VIEPILOT_ADAPTER
|
|
26
|
-
ADAPTER="${VIEPILOT_ADAPTER:-${VIEPILOT_INSTALL_PROFILE:-claude-code}}"
|
|
27
|
-
|
|
28
|
-
case "$ADAPTER" in
|
|
29
|
-
claude-code)
|
|
30
|
-
SKILLS_DIR="$HOME/.claude/skills"
|
|
31
|
-
VIEPILOT_DIR="$HOME/.claude/viepilot"
|
|
32
|
-
PROFILE_LABEL="Claude Code"
|
|
33
|
-
;;
|
|
34
|
-
cursor|cursor-agent|cursor-ide)
|
|
35
|
-
SKILLS_DIR="$HOME/.cursor/skills"
|
|
36
|
-
VIEPILOT_DIR="$HOME/.cursor/viepilot"
|
|
37
|
-
PROFILE_LABEL="Cursor"
|
|
38
|
-
;;
|
|
39
|
-
*)
|
|
40
|
-
echo "Unknown adapter: $ADAPTER. Use: claude-code (default), cursor-agent, cursor-ide"
|
|
41
|
-
exit 1
|
|
42
|
-
;;
|
|
43
|
-
esac
|
|
44
|
-
|
|
45
|
-
echo -e "${BLUE}"
|
|
46
|
-
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
47
|
-
echo " VIEPILOT DEV INSTALLER"
|
|
48
|
-
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
49
|
-
echo -e "${NC}"
|
|
50
|
-
|
|
51
|
-
if [ "${VIEPILOT_SYMLINK_SKILLS:-0}" = "1" ]; then
|
|
52
|
-
echo -e "${YELLOW}Development mode installation (skills: SYMLINK → repo)${NC}"
|
|
53
|
-
else
|
|
54
|
-
echo -e "${YELLOW}Development mode installation (copy-first for reliability)${NC}"
|
|
55
|
-
fi
|
|
56
|
-
echo " Source: $SCRIPT_DIR"
|
|
57
|
-
echo " Skills: $SKILLS_DIR"
|
|
58
|
-
echo " Viepilot: $VIEPILOT_DIR"
|
|
59
|
-
echo " Adapter: $ADAPTER ($PROFILE_LABEL)"
|
|
60
|
-
echo ""
|
|
61
|
-
|
|
62
|
-
check_cloc_dependency() {
|
|
63
|
-
if command -v cloc >/dev/null 2>&1; then
|
|
64
|
-
echo -e " ${GREEN}✓${NC} cloc detected"
|
|
65
|
-
return 0
|
|
66
|
-
fi
|
|
67
|
-
|
|
68
|
-
echo -e "${YELLOW} cloc not found.${NC}"
|
|
69
|
-
echo " README LOC auto-sync will fallback safely, but metrics won't refresh automatically."
|
|
70
|
-
echo " Install suggestion:"
|
|
71
|
-
echo " - macOS: brew install cloc"
|
|
72
|
-
echo " - Ubuntu/Debian: sudo apt-get install -y cloc"
|
|
73
|
-
echo " - Windows: choco install cloc"
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
# Confirm
|
|
77
|
-
if [ "$AUTO_YES" != "1" ]; then
|
|
78
|
-
read -p "This will replace existing installation with dev files. Continue? (y/n) " -n 1 -r
|
|
79
|
-
echo
|
|
80
|
-
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
|
81
|
-
echo "Installation cancelled."
|
|
82
|
-
exit 0
|
|
83
|
-
fi
|
|
84
|
-
else
|
|
85
|
-
echo "Auto-yes enabled via VIEPILOT_AUTO_YES=1"
|
|
86
|
-
fi
|
|
87
|
-
|
|
88
|
-
echo ""
|
|
89
|
-
echo -e "${BLUE}Removing old installations...${NC}"
|
|
90
|
-
|
|
91
|
-
# Remove old skill installations
|
|
92
|
-
for skill in "$SKILLS_DIR"/vp-*/; do
|
|
93
|
-
if [ -d "$skill" ] || [ -L "$skill" ]; then
|
|
94
|
-
rm -rf "$skill"
|
|
95
|
-
echo " Removed: $(basename "$skill")"
|
|
96
|
-
fi
|
|
97
|
-
done
|
|
98
|
-
|
|
99
|
-
# Remove old viepilot installation
|
|
100
|
-
if [ -d "$VIEPILOT_DIR" ] || [ -L "$VIEPILOT_DIR" ]; then
|
|
101
|
-
rm -rf "$VIEPILOT_DIR"
|
|
102
|
-
echo " Removed: viepilot/"
|
|
103
|
-
fi
|
|
104
|
-
|
|
105
|
-
echo ""
|
|
106
|
-
echo -e "${BLUE}Installing skills...${NC}"
|
|
107
|
-
|
|
108
|
-
# Install skills: copy (default) or symlink when VIEPILOT_SYMLINK_SKILLS=1
|
|
109
|
-
mkdir -p "$SKILLS_DIR"
|
|
110
|
-
for skill in "$SCRIPT_DIR"/skills/vp-*/; do
|
|
111
|
-
skill_name=$(basename "$skill")
|
|
112
|
-
if [ "${VIEPILOT_SYMLINK_SKILLS:-0}" = "1" ]; then
|
|
113
|
-
if command -v realpath >/dev/null 2>&1; then
|
|
114
|
-
skill_abs=$(realpath "$skill")
|
|
115
|
-
else
|
|
116
|
-
skill_abs=$(cd "$skill" && pwd)
|
|
117
|
-
fi
|
|
118
|
-
ln -sfn "$skill_abs" "$SKILLS_DIR/$skill_name"
|
|
119
|
-
echo -e " ${GREEN}✓${NC} $skill_name (symlink)"
|
|
120
|
-
else
|
|
121
|
-
cp -R "$skill" "$SKILLS_DIR/$skill_name"
|
|
122
|
-
echo -e " ${GREEN}✓${NC} $skill_name"
|
|
123
|
-
fi
|
|
124
|
-
done
|
|
125
|
-
|
|
126
|
-
echo ""
|
|
127
|
-
echo -e "${BLUE}Installing viepilot files...${NC}"
|
|
128
|
-
|
|
129
|
-
# Install file copies (avoid symlink discovery issues)
|
|
130
|
-
mkdir -p "$VIEPILOT_DIR"
|
|
131
|
-
mkdir -p "$VIEPILOT_DIR/workflows"
|
|
132
|
-
mkdir -p "$VIEPILOT_DIR/templates"
|
|
133
|
-
mkdir -p "$VIEPILOT_DIR/bin"
|
|
134
|
-
mkdir -p "$VIEPILOT_DIR/lib"
|
|
135
|
-
mkdir -p "$VIEPILOT_DIR/ui-components"
|
|
136
|
-
|
|
137
|
-
cp -R "$SCRIPT_DIR/workflows/"* "$VIEPILOT_DIR/workflows/"
|
|
138
|
-
cp -R "$SCRIPT_DIR/templates/"* "$VIEPILOT_DIR/templates/"
|
|
139
|
-
cp -R "$SCRIPT_DIR/bin/"* "$VIEPILOT_DIR/bin/"
|
|
140
|
-
cp -R "$SCRIPT_DIR/lib/"* "$VIEPILOT_DIR/lib/"
|
|
141
|
-
if [ -d "$SCRIPT_DIR/ui-components" ]; then
|
|
142
|
-
cp -R "$SCRIPT_DIR/ui-components/"* "$VIEPILOT_DIR/ui-components/"
|
|
143
|
-
fi
|
|
144
|
-
|
|
145
|
-
echo -e " ${GREEN}✓${NC} workflows"
|
|
146
|
-
echo -e " ${GREEN}✓${NC} templates"
|
|
147
|
-
echo -e " ${GREEN}✓${NC} bin"
|
|
148
|
-
echo -e " ${GREEN}✓${NC} lib"
|
|
149
|
-
echo -e " ${GREEN}✓${NC} ui-components"
|
|
150
|
-
check_cloc_dependency
|
|
151
|
-
|
|
152
|
-
# Count installed
|
|
153
|
-
SKILL_COUNT=$(ls -d "$SKILLS_DIR"/vp-*/ 2>/dev/null | wc -l | tr -d ' ')
|
|
154
|
-
WORKFLOW_COUNT=$(ls "$SCRIPT_DIR"/workflows/*.md 2>/dev/null | wc -l | tr -d ' ')
|
|
155
|
-
|
|
156
|
-
echo ""
|
|
157
|
-
echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
|
|
158
|
-
echo -e "${GREEN} DEV INSTALLATION COMPLETE ✓${NC}"
|
|
159
|
-
echo -e "${GREEN}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${NC}"
|
|
160
|
-
echo ""
|
|
161
|
-
if [ "${VIEPILOT_SYMLINK_SKILLS:-0}" = "1" ]; then
|
|
162
|
-
echo "Installed (skills symlink mode):"
|
|
163
|
-
echo -e "${YELLOW}Skills point at repo — edits in $SCRIPT_DIR/skills/ are live.${NC}"
|
|
164
|
-
else
|
|
165
|
-
echo "Installed (copy mode):"
|
|
166
|
-
echo -e "${YELLOW}Development mode enabled (reliable copy mode).${NC}"
|
|
167
|
-
echo "Re-run this script after local changes to refresh installed files."
|
|
168
|
-
fi
|
|
169
|
-
echo " - Skills: $SKILL_COUNT"
|
|
170
|
-
echo " - Workflows: $WORKFLOW_COUNT"
|
|
171
|
-
echo ""
|
package/install.sh
DELETED
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
# ViePilot installation — thin wrapper around the Node installer (bin/viepilot.cjs).
|
|
4
|
-
# Implements prompts + optional cloc install here; file copy/symlink/chmod/path is in lib/viepilot-install.cjs.
|
|
5
|
-
#
|
|
6
|
-
# Optional: VIEPILOT_SYMLINK_SKILLS=1 — passed through to Node (symlink skills into ~/.cursor/skills/)
|
|
7
|
-
# Optional: VIEPILOT_INSTALL_DRY_RUN=1 — runs `viepilot install --dry-run` (for CI/tests)
|
|
8
|
-
|
|
9
|
-
set -e
|
|
10
|
-
|
|
11
|
-
RED='\033[0;31m'
|
|
12
|
-
GREEN='\033[0;32m'
|
|
13
|
-
YELLOW='\033[1;33m'
|
|
14
|
-
BLUE='\033[0;34m'
|
|
15
|
-
NC='\033[0m'
|
|
16
|
-
|
|
17
|
-
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
18
|
-
cd "$SCRIPT_DIR" || exit 1
|
|
19
|
-
|
|
20
|
-
CURSOR_SKILLS_DIR="$HOME/.cursor/skills"
|
|
21
|
-
VIEPILOT_DIR="$HOME/.cursor/viepilot"
|
|
22
|
-
AUTO_YES="${VIEPILOT_AUTO_YES:-0}"
|
|
23
|
-
INSTALL_PROFILE="${VIEPILOT_INSTALL_PROFILE:-cursor-ide}"
|
|
24
|
-
ADD_PATH_CHOICE="${VIEPILOT_ADD_PATH:-0}"
|
|
25
|
-
|
|
26
|
-
echo -e "${BLUE}"
|
|
27
|
-
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
28
|
-
echo " VIEPILOT INSTALLER"
|
|
29
|
-
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
30
|
-
echo -e "${NC}"
|
|
31
|
-
|
|
32
|
-
if [ ! -f "$SCRIPT_DIR/README.md" ] || [ ! -d "$SCRIPT_DIR/skills" ]; then
|
|
33
|
-
echo -e "${RED}Error: Please run this script from the viepilot directory${NC}"
|
|
34
|
-
exit 1
|
|
35
|
-
fi
|
|
36
|
-
|
|
37
|
-
echo -e "${YELLOW}Installation paths:${NC}"
|
|
38
|
-
echo " Skills: $CURSOR_SKILLS_DIR"
|
|
39
|
-
echo " ViePilot: $VIEPILOT_DIR"
|
|
40
|
-
echo " Profile: $INSTALL_PROFILE"
|
|
41
|
-
echo " Engine: Node (bin/viepilot.cjs) — no bash copy logic"
|
|
42
|
-
echo ""
|
|
43
|
-
|
|
44
|
-
install_cloc_best_effort() {
|
|
45
|
-
if command -v cloc >/dev/null 2>&1; then
|
|
46
|
-
echo " ✓ cloc detected"
|
|
47
|
-
return 0
|
|
48
|
-
fi
|
|
49
|
-
|
|
50
|
-
echo -e "${YELLOW} cloc not found.${NC}"
|
|
51
|
-
echo " README metric auto-sync can still run with fallback, but LOC refresh will be skipped."
|
|
52
|
-
echo " Suggested install:"
|
|
53
|
-
echo " - macOS: brew install cloc"
|
|
54
|
-
echo " - Ubuntu/Debian: sudo apt-get install -y cloc"
|
|
55
|
-
echo " - Windows: choco install cloc"
|
|
56
|
-
|
|
57
|
-
if [ "$AUTO_YES" = "1" ]; then
|
|
58
|
-
return 0
|
|
59
|
-
fi
|
|
60
|
-
|
|
61
|
-
read -p " Attempt automatic cloc install now (best effort)? (y/n) " -n 1 -r
|
|
62
|
-
echo
|
|
63
|
-
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
|
64
|
-
return 0
|
|
65
|
-
fi
|
|
66
|
-
|
|
67
|
-
if command -v brew >/dev/null 2>&1; then
|
|
68
|
-
brew install cloc || true
|
|
69
|
-
elif command -v apt-get >/dev/null 2>&1; then
|
|
70
|
-
sudo apt-get update && sudo apt-get install -y cloc || true
|
|
71
|
-
elif command -v dnf >/dev/null 2>&1; then
|
|
72
|
-
sudo dnf install -y cloc || true
|
|
73
|
-
elif command -v yum >/dev/null 2>&1; then
|
|
74
|
-
sudo yum install -y cloc || true
|
|
75
|
-
elif command -v pacman >/dev/null 2>&1; then
|
|
76
|
-
sudo pacman -Sy --noconfirm cloc || true
|
|
77
|
-
else
|
|
78
|
-
echo -e "${YELLOW} Could not detect supported package manager. Install cloc manually.${NC}"
|
|
79
|
-
fi
|
|
80
|
-
|
|
81
|
-
if command -v cloc >/dev/null 2>&1; then
|
|
82
|
-
echo " ✓ cloc installed"
|
|
83
|
-
else
|
|
84
|
-
echo -e "${YELLOW} cloc is still unavailable; continuing without blocking installation.${NC}"
|
|
85
|
-
fi
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
if [ "$AUTO_YES" != "1" ]; then
|
|
89
|
-
read -p "Continue with installation? (y/n) " -n 1 -r
|
|
90
|
-
echo
|
|
91
|
-
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
|
|
92
|
-
echo "Installation cancelled."
|
|
93
|
-
exit 0
|
|
94
|
-
fi
|
|
95
|
-
else
|
|
96
|
-
echo "Auto-yes enabled via VIEPILOT_AUTO_YES=1"
|
|
97
|
-
fi
|
|
98
|
-
|
|
99
|
-
echo ""
|
|
100
|
-
echo -e "${BLUE}Preparing Node installer...${NC}"
|
|
101
|
-
install_cloc_best_effort
|
|
102
|
-
|
|
103
|
-
echo ""
|
|
104
|
-
if [ "$AUTO_YES" != "1" ]; then
|
|
105
|
-
read -p "Add vp-tools + viepilot to PATH? (symlinks via Node installer, often /usr/local/bin) (y/n) " -n 1 -r
|
|
106
|
-
echo
|
|
107
|
-
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
|
108
|
-
export VIEPILOT_ADD_PATH=1
|
|
109
|
-
fi
|
|
110
|
-
else
|
|
111
|
-
if [ "$ADD_PATH_CHOICE" = "1" ]; then
|
|
112
|
-
export VIEPILOT_ADD_PATH=1
|
|
113
|
-
fi
|
|
114
|
-
fi
|
|
115
|
-
|
|
116
|
-
export VIEPILOT_AUTO_YES=1
|
|
117
|
-
|
|
118
|
-
NODE_ARGS=(install --target "$INSTALL_PROFILE" --yes)
|
|
119
|
-
if [ "${VIEPILOT_INSTALL_DRY_RUN:-0}" = "1" ]; then
|
|
120
|
-
NODE_ARGS+=(--dry-run)
|
|
121
|
-
fi
|
|
122
|
-
|
|
123
|
-
echo ""
|
|
124
|
-
echo -e "${BLUE}Running: node bin/viepilot.cjs ${NODE_ARGS[*]}${NC}"
|
|
125
|
-
exec node "$SCRIPT_DIR/bin/viepilot.cjs" "${NODE_ARGS[@]}"
|