claude-plugin-viban 1.0.32 → 1.0.34

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "viban",
3
- "version": "1.0.16",
3
+ "version": "1.0.34",
4
4
  "description": "Terminal Kanban TUI for AI-human collaborative issue tracking",
5
5
  "author": {
6
6
  "name": "happy-nut"
package/bin/viban CHANGED
@@ -4,7 +4,8 @@
4
4
  setopt EXTENDED_GLOB
5
5
 
6
6
  # Store script directory at startup (before any function changes $0)
7
- VIBAN_SCRIPT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
7
+ # Resolve symlinks so npm global installs (bin/viban -> ../lib/node_modules/.../bin/viban) work
8
+ VIBAN_SCRIPT_DIR="$(cd "$(dirname "${0:A}")/.." && pwd)"
8
9
 
9
10
  # ============================================================
10
11
  # Dependency Check (Early exit with helpful messages)
@@ -629,7 +630,8 @@ build_column_lines() {
629
630
  spinner_prefix="${SPINNER_FRAMES[$((SPINNER_IDX % ${#SPINNER_FRAMES[@]} + 1))]} "
630
631
  spinner_w=2 # char(1) + space(1)
631
632
  fi
632
- local title_w=$((card_inner - 7 - spinner_w))
633
+ local prefix_w=$((4 + ${#id} + spinner_w)) # " #" + id_digits + " " + spinner
634
+ local title_w=$((card_inner - prefix_w - 1)) # -1 right margin for width safety
633
635
  local short=$(truncate_str "$title" $title_w)
634
636
  local title_content=" ${spinner_prefix}#$id $short"
635
637
  local title_content_w=$(str_width "$title_content")
@@ -1273,6 +1275,7 @@ cmd_add() {
1273
1275
  case "$1" in
1274
1276
  --title) title="$2"; shift 2 ;;
1275
1277
  --desc|--description) desc="$2"; shift 2 ;;
1278
+ --desc-file) [[ -f "$2" ]] && desc="$(cat "$2")"; shift 2 ;;
1276
1279
  --priority) priority="$2"; shift 2 ;;
1277
1280
  --type) issue_type="$2"; shift 2 ;;
1278
1281
  --attach|--attachments) shift; while [[ $# -gt 0 && "$1" != --* ]]; do attachments+=("$1"); shift; done ;;
package/commands/add.md CHANGED
@@ -94,33 +94,55 @@ Error log or stack trace
94
94
 
95
95
  ### Step 4: Register viban Issue
96
96
 
97
+ Write the description body to a temp file using a heredoc, then pass via `--desc-file`:
98
+
97
99
  ```bash
98
- viban add "{short_title}" "$'## Symptoms\n...(body)'" {priority} {type} [attachments...]
100
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
101
+ ## Symptoms
102
+ One-sentence summary...
103
+
104
+ ## Reproduction Steps
105
+ 1. ...
106
+
107
+ ## Location
108
+ - File: `path/to/file.ext`
109
+ VIBAN_EOF
110
+
111
+ viban add "{short_title}" --desc-file /tmp/viban-desc.md --priority {priority} --type {type}
99
112
  ```
100
113
 
114
+ **Why heredoc?** Using `<<'VIBAN_EOF'` (single-quoted delimiter) prevents shell interpretation of backticks, `$`, parentheses, and other special characters in the description.
115
+
101
116
  **Parameters**:
102
- - `title`: Plain title (no tags)
103
- - `description`: Issue body (Markdown)
104
- - `priority`: P0, P1, P2, P3 (default: P3)
105
- - `type`: bug, feat, chore, refactor
106
- - `attachments`: (optional) File paths to attach (screenshots, logs, etc.)
117
+ - `title`: Plain title (no tags) — first positional argument
118
+ - `--desc-file`: Path to file containing issue body (Markdown)
119
+ - `--priority`: P0, P1, P2, P3 (default: P3)
120
+ - `--type`: bug, feat, chore, refactor
121
+ - `--attach`: (optional) File paths to attach (screenshots, logs, etc.)
107
122
 
108
123
  **Examples**:
109
124
  ```bash
110
125
  # BUG issue
111
- viban add "API response timeout" "$'## Symptoms\n...'" P1 bug
126
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
127
+ ## Symptoms
128
+ API responds with 504 after 30 seconds.
129
+ - File: `src/api/handler.ts:42`
130
+ VIBAN_EOF
131
+ viban add "API response timeout" --desc-file /tmp/viban-desc.md --priority P1 --type bug
112
132
 
113
133
  # FEATURE issue
114
- viban add "Dark mode support" "$'## Symptoms\n...'" P2 feat
115
-
116
- # REFACTOR issue
117
- viban add "Separate auth logic" "$'## Symptoms\n...'" P3 refactor
134
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
135
+ ## Symptoms
136
+ Users request dark mode support.
137
+ VIBAN_EOF
138
+ viban add "Dark mode support" --desc-file /tmp/viban-desc.md --priority P2 --type feat
118
139
 
119
140
  # With screenshot attachments
120
- viban add "Layout broken on mobile" "$'## Symptoms\n...'" P1 bug ./screenshots/mobile-bug.png
121
-
122
- # With multiple attachments
123
- viban add "Chart rendering issue" "$'## Symptoms\n...'" P1 bug ./error.png ./console-log.txt
141
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
142
+ ## Symptoms
143
+ Layout broken on mobile viewport.
144
+ VIBAN_EOF
145
+ viban add "Layout broken on mobile" --desc-file /tmp/viban-desc.md --priority P1 --type bug --attach ./screenshots/mobile-bug.png
124
146
  ```
125
147
 
126
148
  ### Step 4a: Attaching Screenshots (Recommended for Visual Issues)
@@ -133,7 +155,7 @@ For visual bugs (layout issues, UI glitches, rendering problems), attaching scre
133
155
 
134
156
  2. **Attach during creation**:
135
157
  ```bash
136
- viban add "Button misaligned on dashboard" "$'## Symptoms\n...'" P1 bug ./screenshots/button-issue.png
158
+ viban add "Button misaligned on dashboard" --desc-file /tmp/viban-desc.md --priority P1 --type bug --attach ./screenshots/button-issue.png
137
159
  ```
138
160
 
139
161
  3. **Or attach to existing issue**:
@@ -197,7 +219,12 @@ Please include:
197
219
 
198
220
  **Registration Command**:
199
221
  ```bash
200
- viban add "Backtest results chart not displayed" "$'## Symptoms\n...'" P1 bug
222
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
223
+ ## Symptoms
224
+ Backtest results chart not displayed when clicking chart tab.
225
+ - File: `src/pages/backtest/results.tsx`
226
+ VIBAN_EOF
227
+ viban add "Backtest results chart not displayed" --desc-file /tmp/viban-desc.md --priority P1 --type bug
201
228
  ```
202
229
 
203
230
  **Registered Issue**:
@@ -67,8 +67,11 @@ If tests fail: **stop and inform user**. Do not release with failing tests.
67
67
  # Update package.json version
68
68
  # (use jq or sed to update the version field)
69
69
 
70
+ # IMPORTANT: Also update .claude-plugin/plugin.json version to stay in sync
71
+ # (marketplace uses plugin.json version for caching)
72
+
70
73
  # Commit
71
- git add package.json
74
+ git add package.json .claude-plugin/plugin.json
72
75
  git commit -m "{new_version}"
73
76
 
74
77
  # Tag
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-plugin-viban",
3
- "version": "1.0.32",
3
+ "version": "1.0.34",
4
4
  "description": "Terminal Kanban TUI for AI-human collaborative issue tracking",
5
5
  "main": "bin/viban",
6
6
  "bin": {
@@ -141,26 +141,54 @@ Error log or stack trace
141
141
 
142
142
  ### Step 4: Register viban Issue
143
143
 
144
+ Write the description body to a temp file using a heredoc, then pass via `--desc-file`:
145
+
144
146
  ```bash
145
- viban add "{short_title}" "$'## Symptoms\n...(body)'" {priority} {type}
147
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
148
+ ## Symptoms
149
+ One-sentence summary...
150
+
151
+ ## Reproduction Steps
152
+ 1. ...
153
+
154
+ ## Location
155
+ - File: `path/to/file.ext`
156
+ VIBAN_EOF
157
+
158
+ viban add "{short_title}" --desc-file /tmp/viban-desc.md --priority {priority} --type {type}
146
159
  ```
147
160
 
161
+ **Why heredoc?** Using `<<'VIBAN_EOF'` (single-quoted delimiter) prevents shell interpretation of backticks, `$`, parentheses, and other special characters in the description.
162
+
148
163
  **Parameters**:
149
- - `title`: Plain title (no tags)
150
- - `description`: Issue body (Markdown)
151
- - `priority`: P0, P1, P2, P3 (default: P3)
152
- - `type`: bug, feat, chore, refactor
164
+ - `title`: Plain title (no tags) — first positional argument
165
+ - `--desc-file`: Path to file containing issue body (Markdown)
166
+ - `--priority`: P0, P1, P2, P3 (default: P3)
167
+ - `--type`: bug, feat, chore, refactor
153
168
 
154
169
  **Examples**:
155
170
  ```bash
156
171
  # BUG issue
157
- viban add "API response timeout" "$'## Symptoms\n...'" P1 bug
172
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
173
+ ## Symptoms
174
+ API responds with 504 after 30 seconds.
175
+ - File: `src/api/handler.ts:42`
176
+ VIBAN_EOF
177
+ viban add "API response timeout" --desc-file /tmp/viban-desc.md --priority P1 --type bug
158
178
 
159
179
  # FEATURE issue
160
- viban add "Dark mode support" "$'## Symptoms\n...'" P2 feat
180
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
181
+ ## Symptoms
182
+ Users request dark mode support.
183
+ VIBAN_EOF
184
+ viban add "Dark mode support" --desc-file /tmp/viban-desc.md --priority P2 --type feat
161
185
 
162
186
  # REFACTOR issue
163
- viban add "Separate auth logic" "$'## Symptoms\n...'" P3 refactor
187
+ cat > /tmp/viban-desc.md <<'VIBAN_EOF'
188
+ ## Symptoms
189
+ Auth logic is duplicated across 3 modules.
190
+ VIBAN_EOF
191
+ viban add "Separate auth logic" --desc-file /tmp/viban-desc.md --priority P3 --type refactor
164
192
  ```
165
193
 
166
194
  ### Step 5: Report Results