setup-vibeflow 0.13.0 → 0.14.1

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.
Files changed (3) hide show
  1. package/README.md +47 -0
  2. package/index.js +31 -0
  3. package/package.json +5 -1
package/README.md ADDED
@@ -0,0 +1,47 @@
1
+ # setup-vibeflow
2
+
3
+ [![npm version](https://img.shields.io/npm/v/setup-vibeflow)](https://www.npmjs.com/package/setup-vibeflow)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/pe-menezes/vibeflow/blob/main/LICENSE)
5
+ [![Downloads](https://img.shields.io/npm/dw/setup-vibeflow)](https://www.npmjs.com/package/setup-vibeflow)
6
+
7
+ **Stop vibe-coding blind. Spec it, then ship it.**
8
+
9
+ Vibeflow adds a thinking layer before AI coding: you define **what** to build with specs, guardrails, and quality gates. The agent implements following your project's real patterns.
10
+
11
+ ## Install
12
+
13
+ ```bash
14
+ # Cursor
15
+ npx setup-vibeflow@latest --cursor
16
+
17
+ # GitHub Copilot
18
+ npx setup-vibeflow@latest --copilot
19
+ ```
20
+
21
+ ## What it does
22
+
23
+ The installer downloads and configures Vibeflow in your project:
24
+
25
+ - **Cursor** — skills (9 commands), rules, and project conventions
26
+ - **Copilot** — prompts (9 commands), agents, and custom instructions
27
+
28
+ After install, run `analyze` to scan your codebase, then `gen-spec` → `implement` for each feature.
29
+
30
+ ## Claude Code
31
+
32
+ Claude Code uses its own **plugin system** — no npx needed.
33
+
34
+ **Claude Desktop:**
35
+ Sidebar → Customize → **+** next to "Personal plugins" → Add marketplace → paste `pe-menezes/vibeflow-claude` → Sync → Install **Vibeflow**
36
+
37
+ **Claude Code CLI:**
38
+ ```
39
+ /plugin marketplace add pe-menezes/vibeflow-claude
40
+ /plugin install vibeflow@vibeflow-marketplace
41
+ ```
42
+
43
+ ## Links
44
+
45
+ - [vibeflow.run](https://vibeflow.run) — Website & docs
46
+ - [GitHub](https://github.com/pe-menezes/vibeflow) — Source code & full README
47
+ - [MANUAL.md](https://github.com/pe-menezes/vibeflow/blob/main/MANUAL.md) — Complete documentation
package/index.js CHANGED
@@ -8,6 +8,7 @@ import pc from 'picocolors';
8
8
 
9
9
  const REPO = 'pe-menezes/vibeflow';
10
10
  const BRANCH = 'main';
11
+ const CLAUDE_PLUGIN_REPO = 'pe-menezes/vibeflow-claude';
11
12
 
12
13
  const COPILOT_FILES = [
13
14
  { src: 'github/prompts/vibeflow-analyze.prompt.md', dest: '.github/prompts/vibeflow-analyze.prompt.md' },
@@ -145,9 +146,33 @@ function detectEdition() {
145
146
  const args = process.argv.slice(2);
146
147
  if (args.includes('--cursor')) return 'cursor';
147
148
  if (args.includes('--copilot')) return 'copilot';
149
+ if (args.includes('--claude') || args.includes('--claude-code')) return 'claude';
148
150
  return null;
149
151
  }
150
152
 
153
+ function printClaudeInstructions() {
154
+ console.log('');
155
+ console.log(` ${pc.bold(pc.cyan('Vibeflow'))} ${pc.dim('— Claude Code Edition')}`);
156
+ console.log('');
157
+ console.log(` Claude Code uses a ${pc.bold('plugin system')} — not file downloads.`);
158
+ console.log('');
159
+ console.log(` ${pc.bold(pc.underline('Claude Desktop (Cowork)'))}`);
160
+ console.log(` ${pc.bold('1.')} Sidebar → ${pc.cyan('Customize')}`);
161
+ console.log(` ${pc.bold('2.')} Click ${pc.cyan('+')} next to "Personal plugins" → ${pc.cyan('Add marketplace')}`);
162
+ console.log(` ${pc.bold('3.')} Paste: ${pc.cyan(CLAUDE_PLUGIN_REPO)}`);
163
+ console.log(` ${pc.bold('4.')} Click ${pc.cyan('Sync')}`);
164
+ console.log(` ${pc.bold('5.')} ${pc.cyan('Browse plugins')} → Install ${pc.bold('Vibeflow')}`);
165
+ console.log('');
166
+ console.log(` ${pc.bold(pc.underline('Claude Code CLI (terminal)'))}`);
167
+ console.log(` ${pc.bold('1.')} ${pc.cyan(`/plugin marketplace add ${CLAUDE_PLUGIN_REPO}`)}`);
168
+ console.log(` ${pc.bold('2.')} ${pc.cyan('/plugin install vibeflow@vibeflow-marketplace')}`);
169
+ console.log('');
170
+ console.log(` ${pc.bold('Then run:')} ${pc.cyan('/vibeflow:analyze')} to get started.`);
171
+ console.log('');
172
+ console.log(` ${pc.dim('Plugin repo:')} ${pc.dim(`https://github.com/${CLAUDE_PLUGIN_REPO}`)}`);
173
+ console.log('');
174
+ }
175
+
151
176
  function printUsage() {
152
177
  console.log('');
153
178
  console.log(` ${pc.bold(pc.cyan('Vibeflow'))} ${pc.dim('— Setup')}`);
@@ -157,6 +182,7 @@ function printUsage() {
157
182
  console.log(` ${pc.bold('Editions:')}`);
158
183
  console.log(` ${pc.cyan('--copilot')} Install for GitHub Copilot ${pc.dim('(.github/prompts, agents, instructions)')}`);
159
184
  console.log(` ${pc.cyan('--cursor')} Install for Cursor ${pc.dim('(.cursor/rules, skills)')}`);
185
+ console.log(` ${pc.cyan('--claude')} Show install instructions for Claude Code ${pc.dim('(plugin system)')}`);
160
186
  console.log('');
161
187
  console.log(` ${pc.bold('Options:')}`);
162
188
  console.log(` ${pc.cyan('--force')} Overwrite existing files`);
@@ -187,6 +213,11 @@ async function main() {
187
213
  process.exit(1);
188
214
  }
189
215
 
216
+ if (editionKey === 'claude') {
217
+ printClaudeInstructions();
218
+ process.exit(0);
219
+ }
220
+
190
221
  const edition = EDITIONS[editionKey];
191
222
 
192
223
  console.log('');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "setup-vibeflow",
3
- "version": "0.13.0",
3
+ "version": "0.14.1",
4
4
  "description": "Install Vibeflow (spec-driven development) in your project",
5
5
  "bin": {
6
6
  "setup-vibeflow": "./index.js"
@@ -22,6 +22,10 @@
22
22
  ],
23
23
  "author": "pe-menezes",
24
24
  "license": "MIT",
25
+ "homepage": "https://vibeflow.run",
26
+ "files": [
27
+ "index.js"
28
+ ],
25
29
  "repository": {
26
30
  "type": "git",
27
31
  "url": "https://github.com/pe-menezes/vibeflow"