claude-plugin-viban 1.1.2 → 1.2.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.
- package/.claude-plugin/plugin.json +1 -1
- package/README.md +69 -8
- package/bin/viban +75 -20
- package/commands/add.md +56 -51
- package/commands/assign.md +96 -115
- package/commands/parallel-assign.md +15 -0
- package/commands/sync.md +1 -1
- package/docs/CLAUDE.md +3 -4
- package/package.json +1 -1
- package/scripts/providers/github.sh +3 -2
- package/scripts/sync.sh +38 -1
- package/scripts/sync_create.sh +68 -0
- package/skills/add/SKILL.md +56 -51
- package/skills/assign/SKILL.md +96 -115
- package/skills/parallel-assign/SKILL.md +297 -0
- package/skills/setup/SKILL.md +43 -21
- package/skills/sync/SKILL.md +1 -1
package/skills/setup/SKILL.md
CHANGED
|
@@ -94,13 +94,21 @@ sudo dnf install -y gum
|
|
|
94
94
|
sudo pacman -S --noconfirm zsh jq gum
|
|
95
95
|
```
|
|
96
96
|
|
|
97
|
-
### Step 4: Install or Update viban CLI
|
|
97
|
+
### Step 4: Install or Update viban CLI + Auto-detect (Parallel)
|
|
98
|
+
|
|
99
|
+
Run dependency installation in the **background** while auto-detecting project configuration **in parallel**:
|
|
100
|
+
|
|
101
|
+
**Background task (install):**
|
|
98
102
|
|
|
99
103
|
```bash
|
|
100
104
|
npm install -g claude-plugin-viban@latest
|
|
101
105
|
```
|
|
102
106
|
|
|
103
|
-
|
|
107
|
+
**Parallel task (auto-detect) — run simultaneously:**
|
|
108
|
+
|
|
109
|
+
Jump to Step 7 (Auto-detect Project Configuration) and start gathering project context while installation proceeds.
|
|
110
|
+
|
|
111
|
+
Wait for both tasks to complete before continuing to Step 5.
|
|
104
112
|
|
|
105
113
|
### Step 5: Verify Installation
|
|
106
114
|
|
|
@@ -128,21 +136,25 @@ You can now use:
|
|
|
128
136
|
viban list List all tasks
|
|
129
137
|
/viban:assign Auto-resolve next issue
|
|
130
138
|
/viban:add Create structured issue
|
|
139
|
+
|
|
140
|
+
Tip: Use /viban:sync to integrate with GitHub Issues.
|
|
141
|
+
Run it anytime to set up two-way sync.
|
|
131
142
|
```
|
|
132
143
|
|
|
133
144
|
### Step 6: Workflow Setup Introduction
|
|
134
145
|
|
|
135
|
-
After dependencies are installed, explain to the user:
|
|
146
|
+
After dependencies are installed and auto-detection is complete, explain to the user:
|
|
136
147
|
|
|
137
148
|
```
|
|
138
149
|
╭──────────────────────────────────────────────────╮
|
|
139
|
-
│ Workflow Setup (Optional)
|
|
150
|
+
│ Workflow Setup (Optional) │
|
|
140
151
|
╰──────────────────────────────────────────────────╯
|
|
141
152
|
|
|
142
153
|
/viban:assign uses your project's .viban/workflow.md
|
|
143
154
|
as the TOP PRIORITY when resolving issues.
|
|
144
155
|
|
|
145
|
-
Without a workflow, a default
|
|
156
|
+
Without a workflow, a default process is used:
|
|
157
|
+
analyze → implement → verify → ship.
|
|
146
158
|
Let's set up a custom workflow for this project now.
|
|
147
159
|
```
|
|
148
160
|
|
|
@@ -194,10 +206,9 @@ Ask only what the agent **cannot infer on its own**. One AskUserQuestion call, 3
|
|
|
194
206
|
- header: "Pipeline"
|
|
195
207
|
- question: "After `/viban:assign`, how far should the agent go?"
|
|
196
208
|
- options:
|
|
197
|
-
- "Full auto — analyze → implement → commit → PR
|
|
198
|
-
- "Stop before PR — I'll review the diff
|
|
199
|
-
- "Stop before commit — I'll review the code
|
|
200
|
-
- "Plan only — analyze and propose a plan, I'll implement"
|
|
209
|
+
- "Full auto — analyze → implement → commit → PR (review in PR)"
|
|
210
|
+
- "Stop before PR — I'll review the diff first (review in terminal/IDE)"
|
|
211
|
+
- "Stop before commit — I'll review the code first (review in terminal/IDE)"
|
|
201
212
|
- multiSelect: false
|
|
202
213
|
|
|
203
214
|
**Q2. Issue Numbering**
|
|
@@ -205,17 +216,32 @@ Ask only what the agent **cannot infer on its own**. One AskUserQuestion call, 3
|
|
|
205
216
|
- question: "How should issues be numbered when using `/viban:add`?"
|
|
206
217
|
- options:
|
|
207
218
|
- "Auto — viban auto-assigns #1, #2, #3..."
|
|
219
|
+
- "Sync with provider — use `/viban:sync` to import from GitHub, Jira, Linear, etc."
|
|
208
220
|
- "Manual — ask for an external ID each time (e.g. PROJ-42, JIRA-123)"
|
|
209
221
|
- multiSelect: false
|
|
222
|
+
- If user selects "Sync with provider", run `/viban:sync` to initialize sync after workflow setup completes.
|
|
210
223
|
|
|
211
224
|
**Q3. Extra Rules**
|
|
225
|
+
|
|
226
|
+
Before asking, show the user what was auto-detected from Step 7:
|
|
227
|
+
|
|
228
|
+
```
|
|
229
|
+
Detected conventions:
|
|
230
|
+
Commit style: {e.g. "feat: ...", "fix: ..." (Conventional Commits)}
|
|
231
|
+
Branch naming: {e.g. "feat/*", "fix/*"}
|
|
232
|
+
Build command: {e.g. "npm run build && npm test"}
|
|
233
|
+
Project type: {e.g. "CLI tool (zsh)"}
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
Then ask:
|
|
237
|
+
|
|
212
238
|
- header: "Rules"
|
|
213
|
-
- question: "
|
|
239
|
+
- question: "Anything to change or add to the detected conventions above?"
|
|
214
240
|
- options:
|
|
215
|
-
- "
|
|
216
|
-
- "Let me
|
|
241
|
+
- "Looks good, use as-is"
|
|
242
|
+
- "Let me adjust"
|
|
217
243
|
- multiSelect: false
|
|
218
|
-
- If user selects "Let me
|
|
244
|
+
- If user selects "Let me adjust", collect free-text.
|
|
219
245
|
|
|
220
246
|
**Defaults for everything else (do NOT ask):**
|
|
221
247
|
|
|
@@ -280,8 +306,8 @@ Combine **auto-detected values** (Step 7) with **interview answers** (Step 8) to
|
|
|
280
306
|
| Extra rules | Q3 | User-typed rules or "None" |
|
|
281
307
|
|
|
282
308
|
**Workflow generation principles:**
|
|
283
|
-
- **Q1 (Pipeline) determines the entire automation structure** — which phases run automatically, where to stop, and whether to create PRs. "Full auto" = no stops + auto PR. "Stop before PR" = auto commit + user creates PR. "Stop before commit" = implement only + user reviews.
|
|
284
|
-
- **Q2 (Issue numbering) determines how `/viban:add` handles IDs.** "Auto" = viban auto-assigns `#1`, `#2`. "Manual" = agent asks for an external ID each time and passes `--ext-id` to `viban add`. When manual, commits/PRs reference the external ID instead of `#N`.
|
|
309
|
+
- **Q1 (Pipeline) determines the entire automation structure** — which phases run automatically, where to stop, and whether to create PRs. "Full auto" = no stops + auto PR. "Stop before PR" = auto commit + user creates PR. "Stop before commit" = implement only + user reviews.
|
|
310
|
+
- **Q2 (Issue numbering) determines how `/viban:add` handles IDs.** "Auto" = viban auto-assigns `#1`, `#2`. "Sync with provider" = use `/viban:sync` to import/sync issues from GitHub, Jira, Linear, etc. "Manual" = agent asks for an external ID each time and passes `--ext-id` to `viban add`. When manual, commits/PRs reference the external ID instead of `#N`.
|
|
285
311
|
- **Q3 (Extra rules) is appended verbatim to the Additional Rules section.** If user mentions conventions, evidence, CHANGELOG, language, etc., incorporate into the relevant phase.
|
|
286
312
|
- **Commit/PR conventions are auto-detected from git history** (Step 7.2). If the user overrides via Q3, use the user's preference instead.
|
|
287
313
|
- **Everything else uses smart defaults.** Analysis depth, implementation approach, quality gates, verification methods, issue numbering, post-merge — all auto-determined by the agent or set to sensible defaults.
|
|
@@ -301,7 +327,6 @@ Combine **auto-detected values** (Step 7) with **interview answers** (Step 8) to
|
|
|
301
327
|
{- "Full auto": "Analyze → Implement → Verify → Build → Commit → PR → Review (fully autonomous)"}
|
|
302
328
|
{- "Stop before PR": "Analyze → Implement → Verify → Build → Commit → STOP (user creates PR)"}
|
|
303
329
|
{- "Stop before commit": "Analyze → Implement → STOP (user reviews code, then commits)"}
|
|
304
|
-
{- "Plan only": "Analyze → STOP (user decides next steps)"}
|
|
305
330
|
|
|
306
331
|
---
|
|
307
332
|
|
|
@@ -319,9 +344,6 @@ The agent determines analysis depth based on issue priority and complexity.
|
|
|
319
344
|
- [ ] Root cause identified (or hypothesis formed)
|
|
320
345
|
- [ ] Scope of change estimated
|
|
321
346
|
|
|
322
|
-
{IF Q1 is "Plan only":}
|
|
323
|
-
### >>> STOP: Present analysis and proposed plan to user. Wait for approval.
|
|
324
|
-
|
|
325
347
|
---
|
|
326
348
|
|
|
327
349
|
## Phase 2: Implement
|
|
@@ -377,7 +399,7 @@ If build/test fails: fix errors, return to Phase 3.
|
|
|
377
399
|
{FROM Q1:}
|
|
378
400
|
{- "Full auto": create PR with body template, move issue to review via `viban review {id}`}
|
|
379
401
|
{- "Stop before PR": commit and push only, notify user that PR is pending. Run `viban review {id}`.}
|
|
380
|
-
{- "Stop before commit"
|
|
402
|
+
{- "Stop before commit": N/A — agent already stopped earlier}
|
|
381
403
|
|
|
382
404
|
### PR Body Template
|
|
383
405
|
{AUTO_DETECTED from git history convention. If Q3 overrides, use that instead.}
|
|
@@ -391,7 +413,7 @@ If build/test fails: fix errors, return to Phase 3.
|
|
|
391
413
|
|
|
392
414
|
## Issue Management
|
|
393
415
|
|
|
394
|
-
- Issue numbering: {FROM Q2: "Auto" = auto-increment (viban default), "Manual" = ask for external ID via `--ext-id` flag}
|
|
416
|
+
- Issue numbering: {FROM Q2: "Auto" = auto-increment (viban default), "Sync with provider" = use `/viban:sync` for external tracker integration, "Manual" = ask for external ID via `--ext-id` flag}
|
|
395
417
|
- Test evidence: include test output in PR body
|
|
396
418
|
- Post-merge: auto-close issue (`viban done {id}`), delete branch
|
|
397
419
|
|
package/skills/sync/SKILL.md
CHANGED
|
@@ -17,7 +17,7 @@ Sync the viban board with an external issue tracker. Currently supports GitHub I
|
|
|
17
17
|
|
|
18
18
|
```bash
|
|
19
19
|
# Check if sync is already configured
|
|
20
|
-
if [ -f "
|
|
20
|
+
if [ -f ".viban/sync.json" ]; then
|
|
21
21
|
echo "Sync configured"
|
|
22
22
|
viban sync --status
|
|
23
23
|
else
|