claude-flow-novice 2.18.20 → 2.18.21
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/commands/cfn-ruvector/cfn-codebase-reindex.md +5 -2
- package/.claude/commands/cfn-ruvector/cfn-codebase-search.md +3 -1
- package/.claude/commands/cfn-ruvector-search.md +3 -1
- package/.claude/hooks/SessionStart-cfn-build-ruvector.sh +17 -5
- package/.claude/skills/cfn-local-ruvector-accelerator/SKILL.md +17 -4
- package/CLAUDE.md +1 -1
- package/package.json +1 -1
- package/scripts/install-ruvector-global.sh +48 -0
|
@@ -25,9 +25,12 @@ Add `--force` flag for complete reindex:
|
|
|
25
25
|
Execute reindex:
|
|
26
26
|
|
|
27
27
|
```bash
|
|
28
|
+
RUVECTOR_BIN="${HOME}/.local/bin/local-ruvector"
|
|
29
|
+
[ ! -f "$RUVECTOR_BIN" ] && RUVECTOR_BIN="./.claude/skills/cfn-local-ruvector-accelerator/target/release/local-ruvector"
|
|
30
|
+
|
|
28
31
|
# Incremental (default - only changed files)
|
|
29
|
-
|
|
32
|
+
"$RUVECTOR_BIN" index --path . --types rs,ts,js,py,sh,md
|
|
30
33
|
|
|
31
34
|
# Full rebuild (when needed)
|
|
32
|
-
#
|
|
35
|
+
# "$RUVECTOR_BIN" index --path . --types rs,ts,js,py,sh,md --force
|
|
33
36
|
```
|
|
@@ -27,5 +27,7 @@ Search your indexed codebase using RuVector. Uses SQLite index for fast lookups.
|
|
|
27
27
|
Execute the search:
|
|
28
28
|
|
|
29
29
|
```bash
|
|
30
|
-
|
|
30
|
+
RUVECTOR_BIN="${HOME}/.local/bin/local-ruvector"
|
|
31
|
+
[ ! -f "$RUVECTOR_BIN" ] && RUVECTOR_BIN="./.claude/skills/cfn-local-ruvector-accelerator/target/release/local-ruvector"
|
|
32
|
+
"$RUVECTOR_BIN" query "{{query}}" --max-results {{#if top}}{{top}}{{else}}10{{/if}}
|
|
31
33
|
```
|
|
@@ -30,5 +30,7 @@ Quick semantic search through your indexed codebase.
|
|
|
30
30
|
Execute search:
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
|
|
33
|
+
RUVECTOR_BIN="${HOME}/.local/bin/local-ruvector"
|
|
34
|
+
[ ! -f "$RUVECTOR_BIN" ] && RUVECTOR_BIN="./.claude/skills/cfn-local-ruvector-accelerator/target/release/local-ruvector"
|
|
35
|
+
"$RUVECTOR_BIN" query "$ARGUMENTS" --max-results 10
|
|
34
36
|
```
|
|
@@ -1,12 +1,24 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
|
-
# SessionStart hook:
|
|
2
|
+
# SessionStart hook: Ensure RuVector binary is available (global or local)
|
|
3
|
+
GLOBAL_BINARY="$HOME/.local/bin/local-ruvector"
|
|
3
4
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
4
5
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
5
6
|
RUVECTOR_DIR="$PROJECT_ROOT/.claude/skills/cfn-local-ruvector-accelerator"
|
|
6
|
-
|
|
7
|
+
LOCAL_BINARY="$RUVECTOR_DIR/target/release/local-ruvector"
|
|
7
8
|
|
|
8
|
-
|
|
9
|
+
# Check global first (preferred)
|
|
10
|
+
if [ -f "$GLOBAL_BINARY" ]; then
|
|
11
|
+
exit 0
|
|
12
|
+
fi
|
|
13
|
+
|
|
14
|
+
# Fall back to local binary
|
|
15
|
+
if [ -f "$LOCAL_BINARY" ]; then
|
|
16
|
+
exit 0
|
|
17
|
+
fi
|
|
18
|
+
|
|
19
|
+
# Build locally if cargo available
|
|
20
|
+
if command -v cargo &>/dev/null && [ -d "$RUVECTOR_DIR" ]; then
|
|
9
21
|
echo "[cfn-build-ruvector] Building RuVector..."
|
|
10
|
-
|
|
11
|
-
[ -f "$
|
|
22
|
+
cd "$RUVECTOR_DIR" && cargo build --release --quiet 2>/dev/null
|
|
23
|
+
[ -f "$LOCAL_BINARY" ] && echo "[cfn-build-ruvector] Built locally" || echo "[cfn-build-ruvector] Build skipped"
|
|
12
24
|
fi
|
|
@@ -29,8 +29,8 @@ sqlite3 ~/.local/share/ruvector/index_v2.db "SELECT file_path, line_number FROM
|
|
|
29
29
|
/codebase-search "authentication middleware pattern"
|
|
30
30
|
/cfn-ruvector-search "error handling in API routes"
|
|
31
31
|
|
|
32
|
-
# CLI direct (
|
|
33
|
-
|
|
32
|
+
# CLI direct (global install preferred)
|
|
33
|
+
local-ruvector query "user login flow" --max-results 5
|
|
34
34
|
```
|
|
35
35
|
|
|
36
36
|
### Structural Search (V2 - SQL on AST)
|
|
@@ -48,6 +48,19 @@ sqlite3 ~/.local/share/ruvector/index_v2.db \
|
|
|
48
48
|
"SELECT COUNT(*) FROM entities WHERE project_root = '/path/to/project';"
|
|
49
49
|
```
|
|
50
50
|
|
|
51
|
+
## Installation
|
|
52
|
+
|
|
53
|
+
**Global install (recommended for multi-project use):**
|
|
54
|
+
```bash
|
|
55
|
+
# From claude-flow-novice project
|
|
56
|
+
./scripts/install-ruvector-global.sh
|
|
57
|
+
|
|
58
|
+
# Verify
|
|
59
|
+
local-ruvector --version
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
This installs to `~/.local/bin/local-ruvector` for access from any project.
|
|
63
|
+
|
|
51
64
|
## Prerequisites
|
|
52
65
|
|
|
53
66
|
**OPENAI_API_KEY is REQUIRED for indexing.** Indexing will fail without a valid key.
|
|
@@ -73,7 +86,7 @@ echo $OPENAI_API_KEY # Should show your key (not empty)
|
|
|
73
86
|
|
|
74
87
|
```bash
|
|
75
88
|
# Index a project (first time or full rebuild)
|
|
76
|
-
|
|
89
|
+
local-ruvector index --path /path/to/project --types rs,ts,py
|
|
77
90
|
|
|
78
91
|
# Incremental update (after code changes)
|
|
79
92
|
/codebase-reindex
|
|
@@ -102,7 +115,7 @@ Before implementing changes, ALWAYS query RuVector first:
|
|
|
102
115
|
# Find similar patterns (slash command uses --top, CLI uses --max-results)
|
|
103
116
|
/codebase-search "relevant search terms" --top 5
|
|
104
117
|
# Or via CLI:
|
|
105
|
-
|
|
118
|
+
local-ruvector query "relevant search terms" --max-results 5
|
|
106
119
|
|
|
107
120
|
# Query past errors
|
|
108
121
|
./.claude/skills/cfn-ruvector-codebase-index/query-error-patterns.sh --task-description "description"
|
package/CLAUDE.md
CHANGED
|
@@ -54,7 +54,7 @@ Always provide `context_files` when code needs imports from existing files.
|
|
|
54
54
|
```bash
|
|
55
55
|
# Semantic search
|
|
56
56
|
/codebase-search "authentication middleware pattern"
|
|
57
|
-
|
|
57
|
+
local-ruvector query --pattern "auth"
|
|
58
58
|
|
|
59
59
|
# Structural SQL query
|
|
60
60
|
sqlite3 ~/.local/share/ruvector/index_v2.db "SELECT * FROM refs WHERE target_name = 'MyFunction';"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-flow-novice",
|
|
3
|
-
"version": "2.18.
|
|
3
|
+
"version": "2.18.21",
|
|
4
4
|
"description": "Claude Flow Novice - Advanced orchestration platform for multi-agent AI workflows with CFN Loop architecture\n\nIncludes Local RuVector Accelerator and all CFN skills for complete functionality.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Install RuVector binary to ~/.local/bin for global access
|
|
3
|
+
# Usage: ./scripts/install-ruvector-global.sh
|
|
4
|
+
|
|
5
|
+
set -euo pipefail
|
|
6
|
+
|
|
7
|
+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
8
|
+
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
9
|
+
RUVECTOR_DIR="$PROJECT_ROOT/.claude/skills/cfn-local-ruvector-accelerator"
|
|
10
|
+
TARGET_BIN="$HOME/.local/bin/local-ruvector"
|
|
11
|
+
|
|
12
|
+
echo "[ruvector-install] Installing RuVector to ~/.local/bin/"
|
|
13
|
+
|
|
14
|
+
# Ensure ~/.local/bin exists
|
|
15
|
+
mkdir -p "$HOME/.local/bin"
|
|
16
|
+
|
|
17
|
+
# Check if we need to build
|
|
18
|
+
SOURCE_BINARY="$RUVECTOR_DIR/target/release/local-ruvector"
|
|
19
|
+
if [ ! -f "$SOURCE_BINARY" ]; then
|
|
20
|
+
echo "[ruvector-install] Building RuVector from source..."
|
|
21
|
+
if ! command -v cargo &>/dev/null; then
|
|
22
|
+
echo "[ruvector-install] ERROR: cargo not found. Install Rust: https://rustup.rs"
|
|
23
|
+
exit 1
|
|
24
|
+
fi
|
|
25
|
+
cd "$RUVECTOR_DIR"
|
|
26
|
+
cargo build --release
|
|
27
|
+
fi
|
|
28
|
+
|
|
29
|
+
# Copy binary
|
|
30
|
+
if [ -f "$SOURCE_BINARY" ]; then
|
|
31
|
+
cp "$SOURCE_BINARY" "$TARGET_BIN"
|
|
32
|
+
chmod +x "$TARGET_BIN"
|
|
33
|
+
echo "[ruvector-install] Installed: $TARGET_BIN"
|
|
34
|
+
echo "[ruvector-install] Version: $($TARGET_BIN --version 2>/dev/null || echo 'unknown')"
|
|
35
|
+
else
|
|
36
|
+
echo "[ruvector-install] ERROR: Build failed - binary not found"
|
|
37
|
+
exit 1
|
|
38
|
+
fi
|
|
39
|
+
|
|
40
|
+
# Verify PATH
|
|
41
|
+
if [[ ":$PATH:" != *":$HOME/.local/bin:"* ]]; then
|
|
42
|
+
echo ""
|
|
43
|
+
echo "[ruvector-install] WARNING: ~/.local/bin not in PATH"
|
|
44
|
+
echo "Add to your shell profile:"
|
|
45
|
+
echo ' export PATH="$HOME/.local/bin:$PATH"'
|
|
46
|
+
fi
|
|
47
|
+
|
|
48
|
+
echo "[ruvector-install] Done. Run 'local-ruvector --help' to verify."
|