specweave 1.0.479 → 1.0.481
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/bin/specweave.js +4 -2
- package/dist/src/cli/commands/init.d.ts.map +1 -1
- package/dist/src/cli/commands/init.js +1 -0
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/cli/commands/refresh-plugins.d.ts +9 -3
- package/dist/src/cli/commands/refresh-plugins.d.ts.map +1 -1
- package/dist/src/cli/commands/refresh-plugins.js +56 -31
- package/dist/src/cli/commands/refresh-plugins.js.map +1 -1
- package/dist/src/cli/commands/update.d.ts +1 -1
- package/dist/src/cli/commands/update.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/plugin-installer.d.ts +2 -0
- package/dist/src/cli/helpers/init/plugin-installer.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/plugin-installer.js +2 -1
- package/dist/src/cli/helpers/init/plugin-installer.js.map +1 -1
- package/dist/src/core/hooks/LifecycleHookDispatcher.d.ts.map +1 -1
- package/dist/src/core/hooks/LifecycleHookDispatcher.js +19 -6
- package/dist/src/core/hooks/LifecycleHookDispatcher.js.map +1 -1
- package/dist/src/core/lazy-loading/llm-plugin-detector.js +1 -1
- package/dist/src/core/lazy-loading/llm-plugin-detector.js.map +1 -1
- package/dist/src/core/skill-gen/signal-collector.d.ts +2 -0
- package/dist/src/core/skill-gen/signal-collector.d.ts.map +1 -1
- package/dist/src/core/skill-gen/signal-collector.js +3 -2
- package/dist/src/core/skill-gen/signal-collector.js.map +1 -1
- package/dist/src/utils/cleanup-stale-plugins.d.ts +2 -0
- package/dist/src/utils/cleanup-stale-plugins.d.ts.map +1 -1
- package/dist/src/utils/cleanup-stale-plugins.js +106 -30
- package/dist/src/utils/cleanup-stale-plugins.js.map +1 -1
- package/dist/src/utils/plugin-copier.d.ts.map +1 -1
- package/dist/src/utils/plugin-copier.js +30 -31
- package/dist/src/utils/plugin-copier.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/hooks/user-prompt-submit.sh +48 -41
- package/plugins/specweave/skills/architect/SKILL.md +1 -1
- package/plugins/specweave/skills/auto/SKILL.md +1 -1
- package/plugins/specweave/skills/brainstorm/SKILL.md +1 -1
- package/plugins/specweave/skills/debug/SKILL.md +1 -1
- package/plugins/specweave/skills/do/SKILL.md +1 -1
- package/plugins/specweave/skills/done/SKILL.md +1 -1
- package/plugins/specweave/skills/e2e/SKILL.md +1 -1
- package/plugins/specweave/skills/get/SKILL.md +1 -1
- package/plugins/specweave/skills/grill/SKILL.md +1 -1
- package/plugins/specweave/skills/import/SKILL.md +1 -1
- package/plugins/specweave/skills/increment/SKILL.md +1 -1
- package/plugins/specweave/skills/judge-llm/SKILL.md +1 -1
- package/plugins/specweave/skills/npm/SKILL.md +1 -1
- package/plugins/specweave/skills/plan/SKILL.md +1 -1
- package/plugins/specweave/skills/pm/SKILL.md +1 -1
- package/plugins/specweave/skills/pr/SKILL.md +1 -1
- package/plugins/specweave/skills/progress-sync/SKILL.md +1 -1
- package/plugins/specweave/skills/sync-docs/SKILL.md +1 -1
- package/plugins/specweave/skills/tdd-cycle/SKILL.md +1 -1
- package/plugins/specweave/skills/tdd-green/SKILL.md +1 -1
- package/plugins/specweave/skills/tdd-red/SKILL.md +1 -1
- package/plugins/specweave/skills/tdd-refactor/SKILL.md +1 -1
- package/plugins/specweave/skills/team-build/SKILL.md +1 -1
- package/plugins/specweave/skills/team-lead/SKILL.md +1 -1
- package/plugins/specweave/skills/team-merge/SKILL.md +1 -1
- package/plugins/specweave/skills/validate/SKILL.md +1 -1
|
@@ -474,35 +474,10 @@ check_plugin_in_vskill_lock() {
|
|
|
474
474
|
fi
|
|
475
475
|
}
|
|
476
476
|
|
|
477
|
-
#
|
|
478
|
-
#
|
|
479
|
-
#
|
|
480
|
-
#
|
|
481
|
-
check_plugin_installed_from_json() {
|
|
482
|
-
local plugin="$1"
|
|
483
|
-
local marketplace="$2"
|
|
484
|
-
local registry_path="${HOME}/.claude/plugins/installed_plugins.json"
|
|
485
|
-
|
|
486
|
-
# File must exist
|
|
487
|
-
[[ ! -f "$registry_path" ]] && return 1
|
|
488
|
-
|
|
489
|
-
# Must have jq for reliable JSON parsing
|
|
490
|
-
if ! command -v jq >/dev/null 2>&1; then
|
|
491
|
-
return 1 # Fallback to CLI check if jq not available
|
|
492
|
-
fi
|
|
493
|
-
|
|
494
|
-
# Check if plugin exists in registry
|
|
495
|
-
# Format: {"plugins": {"frontend@vskill": [...], ...}}
|
|
496
|
-
local full_name="${plugin}@${marketplace}"
|
|
497
|
-
local has_plugin
|
|
498
|
-
has_plugin=$(jq -r --arg key "$full_name" '.plugins[$key] // null' "$registry_path" 2>/dev/null)
|
|
499
|
-
|
|
500
|
-
if [[ "$has_plugin" != "null" ]] && [[ -n "$has_plugin" ]]; then
|
|
501
|
-
return 0 # Installed
|
|
502
|
-
else
|
|
503
|
-
return 1 # Not installed
|
|
504
|
-
fi
|
|
505
|
-
}
|
|
477
|
+
# ==============================================================================
|
|
478
|
+
# check_plugin_installed_from_json REMOVED (v1.0.535)
|
|
479
|
+
# Plugins are now pre-installed at init time. No runtime installation checks needed.
|
|
480
|
+
# ==============================================================================
|
|
506
481
|
|
|
507
482
|
# ==============================================================================
|
|
508
483
|
# KEYWORD-BASED PLUGIN DETECTION REMOVED (v1.0.159)
|
|
@@ -1192,13 +1167,48 @@ if [[ "${SPECWEAVE_DISABLE_AUTO_LOAD:-0}" != "1" ]] && [[ "${SPECWEAVE_DISABLE_H
|
|
|
1192
1167
|
fi
|
|
1193
1168
|
|
|
1194
1169
|
# ==================================================================
|
|
1195
|
-
# PLUGIN
|
|
1170
|
+
# ON-DEMAND PLUGIN INSTALL (v1.0.540 — restored)
|
|
1196
1171
|
# ==================================================================
|
|
1197
|
-
#
|
|
1198
|
-
#
|
|
1199
|
-
#
|
|
1200
|
-
#
|
|
1172
|
+
# When LLM detect-intent identifies plugins needed for this prompt,
|
|
1173
|
+
# install any that aren't already present. Uses specweave CLI's
|
|
1174
|
+
# --plugin flag for targeted install. Session markers prevent
|
|
1175
|
+
# duplicate installs within the same Claude Code session.
|
|
1201
1176
|
# ==================================================================
|
|
1177
|
+
DETECTED_PLUGINS=$(echo "$JSON_OUTPUT" | jq -r '.plugins[]? // empty' 2>/dev/null)
|
|
1178
|
+
if [[ -n "$DETECTED_PLUGINS" ]]; then
|
|
1179
|
+
CACHE_BASE="${HOME}/.claude/plugins/cache/specweave"
|
|
1180
|
+
SKILLS_BASE="${SW_PROJECT_ROOT:-.}/.claude/skills"
|
|
1181
|
+
SESSION_MARKER_DIR="${TMPDIR:-/tmp}/specweave-ondemand-$$"
|
|
1182
|
+
mkdir -p "$SESSION_MARKER_DIR" 2>/dev/null
|
|
1183
|
+
ONDEMAND_INSTALL_PID=""
|
|
1184
|
+
|
|
1185
|
+
while IFS= read -r PLUGIN_NAME; do
|
|
1186
|
+
[[ -z "$PLUGIN_NAME" ]] && continue
|
|
1187
|
+
[[ "$PLUGIN_NAME" == "sw" ]] && continue # core always installed
|
|
1188
|
+
|
|
1189
|
+
# Idempotency: skip if already installed or already attempted this session
|
|
1190
|
+
if [[ -d "$CACHE_BASE/$PLUGIN_NAME" ]] || \
|
|
1191
|
+
[[ -d "$SKILLS_BASE/$PLUGIN_NAME" ]] || \
|
|
1192
|
+
[[ -f "$SESSION_MARKER_DIR/$PLUGIN_NAME" ]]; then
|
|
1193
|
+
continue
|
|
1194
|
+
fi
|
|
1195
|
+
|
|
1196
|
+
# Install via CLI (handles both native and direct-copy modes)
|
|
1197
|
+
specweave refresh-plugins --plugin "$PLUGIN_NAME" --quiet 2>/dev/null &
|
|
1198
|
+
ONDEMAND_INSTALL_PID=$!
|
|
1199
|
+
touch "$SESSION_MARKER_DIR/$PLUGIN_NAME" 2>/dev/null
|
|
1200
|
+
|
|
1201
|
+
AUTOLOAD_PLUGINS_MSG="${AUTOLOAD_PLUGINS_MSG}Installed plugin: ${PLUGIN_NAME} (on-demand)."$'\n'
|
|
1202
|
+
done <<< "$DETECTED_PLUGINS"
|
|
1203
|
+
|
|
1204
|
+
# Wait for background install with 5s timeout
|
|
1205
|
+
if [[ -n "$ONDEMAND_INSTALL_PID" ]]; then
|
|
1206
|
+
( sleep 5 && kill "$ONDEMAND_INSTALL_PID" 2>/dev/null ) &
|
|
1207
|
+
TIMEOUT_PID=$!
|
|
1208
|
+
wait "$ONDEMAND_INSTALL_PID" 2>/dev/null
|
|
1209
|
+
kill "$TIMEOUT_PID" 2>/dev/null
|
|
1210
|
+
fi
|
|
1211
|
+
fi
|
|
1202
1212
|
|
|
1203
1213
|
# ==================================================================
|
|
1204
1214
|
# EXTRACT ROUTING INFO EARLY (v1.0.155 - needed for agent directives)
|
|
@@ -1399,9 +1409,6 @@ After increment, chain domain skills per tech stack (see CLAUDE.md Skill Chainin
|
|
|
1399
1409
|
BRAIN_MSG=""
|
|
1400
1410
|
|
|
1401
1411
|
# Compact router output — one line per decision
|
|
1402
|
-
[[ -n "$PLUGINS_INSTALLED" ]] && BRAIN_MSG+="Plugins loaded: ${PLUGINS_INSTALLED}. "
|
|
1403
|
-
[[ -n "$PLUGINS_ALREADY" ]] && BRAIN_MSG+="Plugins active: ${PLUGINS_ALREADY}. "
|
|
1404
|
-
|
|
1405
1412
|
if [[ "$INC_ACTION" == "new" || "$INC_ACTION" == "hotfix" ]]; then
|
|
1406
1413
|
BRAIN_MSG+="Increment: create \\\"${INC_NAME:-new-feature}\\\" (${INC_ACTION}). "
|
|
1407
1414
|
elif [[ "$INC_ACTION" == "reopen" ]]; then
|
|
@@ -1444,11 +1451,11 @@ After increment, chain domain skills per tech stack (see CLAUDE.md Skill Chainin
|
|
|
1444
1451
|
fi
|
|
1445
1452
|
|
|
1446
1453
|
# ==================================================================
|
|
1447
|
-
# KEYWORD FALLBACK: PLUGIN INSTALLATION
|
|
1454
|
+
# KEYWORD FALLBACK: PLUGIN INSTALLATION (v1.0.540 — note)
|
|
1448
1455
|
# ==================================================================
|
|
1449
|
-
#
|
|
1450
|
-
#
|
|
1451
|
-
#
|
|
1456
|
+
# On-demand plugin installation restored in v1.0.540 via the LLM
|
|
1457
|
+
# detection path above. Keyword-based fallback is not needed here
|
|
1458
|
+
# because the LLM detect-intent already identifies needed plugins.
|
|
1452
1459
|
# ==================================================================
|
|
1453
1460
|
|
|
1454
1461
|
# ==================================================================
|
|
@@ -116,4 +116,4 @@ Output: `plan.md` with architecture decisions and component breakdown.
|
|
|
116
116
|
|
|
117
117
|
## Resources
|
|
118
118
|
|
|
119
|
-
- [Official Documentation](https://verified-skill.com/docs/
|
|
119
|
+
- [Official Documentation](https://verified-skill.com/docs/reference/skills#architect)
|
|
@@ -237,4 +237,4 @@ In auto mode, execute deployment commands directly using available credentials.
|
|
|
237
237
|
|
|
238
238
|
## Resources
|
|
239
239
|
|
|
240
|
-
- [Official Documentation](https://verified-skill.com/docs/
|
|
240
|
+
- [Official Documentation](https://verified-skill.com/docs/reference/skills#auto)
|
|
@@ -252,4 +252,4 @@ Run `/sw:validate` after execution to ensure quality before closing with `/sw:do
|
|
|
252
252
|
|
|
253
253
|
## Resources
|
|
254
254
|
|
|
255
|
-
- [Official Documentation](https://verified-skill.com/docs/
|
|
255
|
+
- [Official Documentation](https://verified-skill.com/docs/reference/skills#do)
|
|
@@ -113,4 +113,4 @@ If the user says "restore repos", "clone all child repos", or "set up on new mac
|
|
|
113
113
|
|
|
114
114
|
## Resources
|
|
115
115
|
|
|
116
|
-
- [Official Documentation](https://verified-skill.com/docs/
|
|
116
|
+
- [Official Documentation](https://verified-skill.com/docs/reference/skills#get)
|
|
@@ -426,4 +426,4 @@ The grill is uncomfortable. That's the point. Better to sweat here than in front
|
|
|
426
426
|
|
|
427
427
|
## Resources
|
|
428
428
|
|
|
429
|
-
- [Official Documentation](https://verified-skill.com/docs/
|
|
429
|
+
- [Official Documentation](https://verified-skill.com/docs/reference/skills#grill)
|
|
@@ -188,4 +188,4 @@ Progress logged to `.specweave/logs/judge-llm.log`. Default timeout 60s aborts i
|
|
|
188
188
|
|
|
189
189
|
## Resources
|
|
190
190
|
|
|
191
|
-
- [Official Documentation](https://verified-skill.com/docs/
|
|
191
|
+
- [Official Documentation](https://verified-skill.com/docs/reference/skills#judge-llm)
|
|
@@ -477,4 +477,4 @@ Custom presets follow the same execution rules: agents with no `dependsOn` run i
|
|
|
477
477
|
|
|
478
478
|
## Resources
|
|
479
479
|
|
|
480
|
-
- [Official Documentation](https://verified-skill.com/docs/
|
|
480
|
+
- [Official Documentation](https://verified-skill.com/docs/reference/skills#team-build)
|
|
@@ -136,4 +136,4 @@ Report includes: executive summary, rule-based results by category, AI quality s
|
|
|
136
136
|
|
|
137
137
|
## Resources
|
|
138
138
|
|
|
139
|
-
- [Official Documentation](https://verified-skill.com/docs/
|
|
139
|
+
- [Official Documentation](https://verified-skill.com/docs/reference/skills#validate)
|