glidercli 0.1.5 → 0.3.0

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,24 +0,0 @@
1
- #!/bin/bash
2
- # Auto-prompt to set email on checkout if not set correctly
3
- # If allowed_emails is empty, skip check
4
-
5
- ROOT="$(git rev-parse --show-toplevel 2>/dev/null)"
6
- CONFIG="$ROOT/repo.config.json"
7
- EMAIL=$(git config user.email 2>/dev/null)
8
-
9
- # Read allowed emails from config
10
- if [[ -f "$CONFIG" ]] && command -v jq &>/dev/null; then
11
- ALLOWED=$(jq -r '.allowed_emails[]' "$CONFIG" 2>/dev/null)
12
- else
13
- exit 0
14
- fi
15
-
16
- # If no emails configured, skip check
17
- [[ -z "$ALLOWED" ]] && exit 0
18
-
19
- echo "$ALLOWED" | grep -qx "$EMAIL" && exit 0
20
-
21
- echo ""
22
- echo "⚠ Git email not set. Pick one from repo.config.json:"
23
- echo "$ALLOWED" | sed 's/^/ git config user.email '\''/' | sed 's/$/'\''/'
24
- echo ""
@@ -1,13 +0,0 @@
1
- #!/bin/bash
2
- # post-commit hook - auto push tags after npm version creates them
3
- # npm version patch/minor/major creates a commit AND a tag
4
-
5
- # Check if the last commit was from npm version (has version in message)
6
- LAST_MSG=$(git log -1 --pretty=%B)
7
-
8
- if [[ "$LAST_MSG" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
9
- echo "📦 Detected npm version commit: $LAST_MSG"
10
- echo "🏷️ Pushing tag v$LAST_MSG..."
11
- git push --tags 2>/dev/null &
12
- echo "✓ Tag push triggered (background)"
13
- fi
@@ -1,30 +0,0 @@
1
- #!/bin/bash
2
- # Blocks commits if email not in allowed list (reads from repo.config.json)
3
- # If allowed_emails is empty, skip check (user hasn't configured yet)
4
-
5
- ROOT="$(git rev-parse --show-toplevel 2>/dev/null)"
6
- CONFIG="$ROOT/repo.config.json"
7
- EMAIL=$(git config user.email)
8
-
9
- # Read allowed emails from config
10
- if [[ -f "$CONFIG" ]] && command -v jq &>/dev/null; then
11
- ALLOWED=$(jq -r '.allowed_emails[]' "$CONFIG" 2>/dev/null)
12
- else
13
- # No config or jq - skip check
14
- exit 0
15
- fi
16
-
17
- # If no emails configured, skip check
18
- [[ -z "$ALLOWED" ]] && exit 0
19
-
20
- echo "$ALLOWED" | grep -qx "$EMAIL" && exit 0
21
-
22
- echo ""
23
- echo "❌ BLOCKED: $EMAIL not allowed"
24
- echo ""
25
- echo "Allowed emails (from repo.config.json):"
26
- echo "$ALLOWED" | sed 's/^/ /'
27
- echo ""
28
- echo "Fix: git config user.email '<one of the above>'"
29
- echo ""
30
- exit 1
@@ -1,13 +0,0 @@
1
- #!/bin/bash
2
- # pre-push hook - runs health check before push
3
- # Blocks push if large files or embedded repos detected
4
-
5
- ROOT="$(git rev-parse --show-toplevel 2>/dev/null)"
6
- HEALTH_SCRIPT="$ROOT/.github/scripts/health-check.sh"
7
-
8
- if [[ -x "$HEALTH_SCRIPT" ]]; then
9
- "$HEALTH_SCRIPT"
10
- exit $?
11
- fi
12
-
13
- exit 0
@@ -1,127 +0,0 @@
1
- #!/bin/bash
2
- # health-check.sh - Git health check before commit/push
3
- # Checks: large files (>90MB), embedded git repos
4
- # Run: .github/scripts/health-check.sh [size_mb]
5
-
6
- ROOT="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
7
- SIZE_MB="${1:-90}"
8
- LIMIT=$((SIZE_MB * 1024 * 1024))
9
-
10
- cd "$ROOT" || exit 1
11
-
12
- echo "🏥 Git Health Check: $ROOT"
13
- echo "==================="
14
- echo ""
15
-
16
- ISSUES=0
17
-
18
- # ============================================================================
19
- # CHECK 1: Large files (>90MB default)
20
- # ============================================================================
21
- echo "🔍 Checking for files > ${SIZE_MB}MB..."
22
- echo ""
23
-
24
- echo "=== UNSTAGED/UNTRACKED ==="
25
- while IFS= read -r line; do
26
- [[ -z "$line" ]] && continue
27
- file="${line:3}"
28
- # Handle renames
29
- [[ "$line" == R* ]] && file="${file##* -> }"
30
- if [[ -f "$file" ]]; then
31
- fsize=$(stat -f%z "$file" 2>/dev/null || stat -c%s "$file" 2>/dev/null || echo "0")
32
- if [[ "$fsize" -gt "$LIMIT" ]]; then
33
- size_human=$((fsize / 1024 / 1024))
34
- echo " 🔴 $file (${size_human}MB)"
35
- ISSUES=1
36
- fi
37
- fi
38
- done < <(git status --porcelain 2>/dev/null)
39
-
40
- echo ""
41
- echo "=== STAGED ==="
42
- while IFS= read -r file; do
43
- [[ -z "$file" ]] && continue
44
- if [[ -f "$file" ]]; then
45
- fsize=$(stat -f%z "$file" 2>/dev/null || stat -c%s "$file" 2>/dev/null || echo "0")
46
- if [[ "$fsize" -gt "$LIMIT" ]]; then
47
- size_human=$((fsize / 1024 / 1024))
48
- echo " 🔴 $file (${size_human}MB)"
49
- ISSUES=1
50
- fi
51
- fi
52
- done < <(git diff --cached --name-only 2>/dev/null)
53
-
54
- echo ""
55
- echo "=== COMMITTED (last 10) ==="
56
- while IFS= read -r file; do
57
- [[ -z "$file" ]] && continue
58
- if [[ -f "$file" ]]; then
59
- fsize=$(stat -f%z "$file" 2>/dev/null || stat -c%s "$file" 2>/dev/null || echo "0")
60
- if [[ "$fsize" -gt "$LIMIT" ]]; then
61
- size_human=$((fsize / 1024 / 1024))
62
- echo " 🔴 $file (${size_human}MB)"
63
- ISSUES=1
64
- fi
65
- fi
66
- done < <(git log --oneline -10 --diff-filter=A --name-only --pretty=format:"" 2>/dev/null | sort -u)
67
-
68
- if [[ $ISSUES -eq 0 ]]; then
69
- echo " 🟢 No large files"
70
- fi
71
-
72
- echo ""
73
-
74
- # ============================================================================
75
- # CHECK 2: Embedded git repos
76
- # ============================================================================
77
- echo "🔍 Checking for embedded git repos..."
78
- echo ""
79
-
80
- ROOT_GIT="$ROOT/.git"
81
- EMBEDDED=()
82
-
83
- while IFS= read -r git_dir; do
84
- [[ -z "$git_dir" ]] && continue
85
- [[ "$git_dir" == "$ROOT_GIT" ]] && continue
86
-
87
- repo_dir="${git_dir%/.git}"
88
- relative="${repo_dir#$ROOT/}"
89
-
90
- # Check if tracked or not ignored
91
- is_tracked=false
92
- git ls-files --cached "$relative" 2>/dev/null | grep -q . && is_tracked=true
93
-
94
- is_ignored=false
95
- git check-ignore -q "$relative" 2>/dev/null && is_ignored=true
96
-
97
- if [[ "$is_tracked" == "true" ]]; then
98
- echo " 🔴 $relative (TRACKED - needs removal)"
99
- EMBEDDED+=("$relative")
100
- ISSUES=1
101
- elif [[ "$is_ignored" == "false" ]]; then
102
- echo " 🟡 $relative (not ignored - add to .gitignore)"
103
- EMBEDDED+=("$relative")
104
- ISSUES=1
105
- fi
106
- done < <(find "$ROOT" -type d -name ".git" 2>/dev/null | sort)
107
-
108
- if [[ ${#EMBEDDED[@]} -eq 0 ]]; then
109
- echo " 🟢 No embedded repos"
110
- else
111
- echo ""
112
- echo "Fix: Add to .gitignore:"
113
- for repo in "${EMBEDDED[@]}"; do
114
- echo " $repo/"
115
- done
116
- fi
117
-
118
- echo ""
119
- echo "==================="
120
-
121
- if [[ $ISSUES -eq 0 ]]; then
122
- echo "🟢 All checks passed"
123
- exit 0
124
- else
125
- echo "🔴 Issues found - fix before pushing"
126
- exit 1
127
- fi
@@ -1,19 +0,0 @@
1
- #!/bin/bash
2
- # setup.sh - run after cloning
3
- # Installs hooks and prompts for email config
4
-
5
- ROOT="$(cd "$(dirname "$0")/../.." && pwd)"
6
- cd "$ROOT"
7
-
8
- # 1. Install hooks
9
- mkdir -p .git/hooks
10
- cp .github/hooks/* .git/hooks/ 2>/dev/null
11
- chmod +x .git/hooks/* 2>/dev/null
12
- echo "✓ Hooks installed"
13
-
14
- # 2. Prompt user to set email
15
- echo ""
16
- echo "Set your git email:"
17
- echo " git config user.email 'github.relock416@passmail.net' # vdutts"
18
- echo " git config user.email 'me@vd7.io' # vdutts7"
19
- echo ""
@@ -1,19 +0,0 @@
1
- name: Release
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v*'
7
-
8
- jobs:
9
- release:
10
- runs-on: ubuntu-latest
11
- steps:
12
- - uses: actions/checkout@v4
13
-
14
- - name: Create Release
15
- uses: softprops/action-gh-release@v1
16
- with:
17
- generate_release_notes: true
18
- env:
19
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
File without changes
Binary file
Binary file
package/repo.config.json DELETED
@@ -1,31 +0,0 @@
1
- {
2
- "repo": {
3
- "name": "glidercli",
4
- "description": "Browser automation CLI with autonomous loop execution",
5
- "homepage": "https://npmjs.com/package/glidercli",
6
- "topics": ["ralph", "claude", "claude-code", "autonomous-agents", "browser-automation", "cdp", "chrome-devtools", "ralph-wiggum"]
7
- },
8
- "owner": {
9
- "github_username": "vdutts7",
10
- "website": "https://vd7.io",
11
- "twitter": "vaboratory"
12
- },
13
- "allowed_emails": [
14
- "github.relock416@passmail.net",
15
- "me@vd7.io"
16
- ],
17
- "social_preview": {
18
- "title": "glidercli",
19
- "icons_dir": "assets/icons",
20
- "icon_creator": "https://vd7.dev/icon-creator",
21
- "dimensions": {
22
- "width": 1280,
23
- "height": 640
24
- }
25
- },
26
- "npm": {
27
- "package_name": "glidercli",
28
- "alt_package": "@vd7/glider",
29
- "bin_command": "glider"
30
- }
31
- }