@vd7/eyecli 0.1.9 β 0.1.12
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/.hooks/pre-push +12 -0
- package/README.md +50 -38
- package/package.json +1 -1
package/.hooks/pre-push
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# Gate push behind Touch ID when shelllock is available (AI agents cannot bypass).
|
|
3
|
+
set -eo pipefail
|
|
4
|
+
|
|
5
|
+
if command -v shelllock &>/dev/null && [[ "${SHELLLOCK_VERIFIED:-}" != "1" ]]; then
|
|
6
|
+
shelllock -m "Push to remote?" true || {
|
|
7
|
+
echo "πͺ pre-push: BLOCKED β Touch ID denied"
|
|
8
|
+
exit 1
|
|
9
|
+
}
|
|
10
|
+
fi
|
|
11
|
+
|
|
12
|
+
exit 0
|
package/README.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
|
|
3
|
-
<img src="https://raw.githubusercontent.com/vdutts7/
|
|
4
|
-
<img src="https://raw.githubusercontent.com/vdutts7/
|
|
3
|
+
<img src="https://raw.githubusercontent.com/vdutts7/squircle/main/webp/eyecli.webp" alt="logo" width="80" height="80" />
|
|
4
|
+
<img src="https://raw.githubusercontent.com/vdutts7/squircle/main/webp/npm.webp" alt="logo" width="80" height="80" />
|
|
5
5
|
|
|
6
|
-
<h1 align="center"
|
|
7
|
-
<p align="center"><i><b>The
|
|
6
|
+
<h1 align="center">eyecli</h1>
|
|
7
|
+
<p align="center"><i><b>The eye sees all. Powerful search CLI wrapping `ripgrep` and `fd` (`fzf` + semantic search coming soon). </b></i></p>
|
|
8
8
|
|
|
9
9
|
[![Github][github]][github-url]
|
|
10
10
|
[![npm][npm]][npm-url]
|
|
@@ -12,34 +12,38 @@
|
|
|
12
12
|
</div>
|
|
13
13
|
|
|
14
14
|
<br/>
|
|
15
|
-
|
|
15
|
+
|
|
16
16
|
## Table of Contents
|
|
17
17
|
|
|
18
18
|
<ol>
|
|
19
|
-
<a href="#about"
|
|
20
|
-
<a href="#install"
|
|
21
|
-
<a href="#usage"
|
|
22
|
-
<a href="#ignore-file"
|
|
23
|
-
<a href="#roadmap"
|
|
24
|
-
<a href="#tools-used"
|
|
25
|
-
<a href="#contact"
|
|
19
|
+
<a href="#about">About</a><br/>
|
|
20
|
+
<a href="#install">Install</a><br/>
|
|
21
|
+
<a href="#usage">Usage</a><br/>
|
|
22
|
+
<a href="#ignore-file">Ignore File</a><br/>
|
|
23
|
+
<a href="#roadmap">Roadmap</a><br/>
|
|
24
|
+
<a href="#tools-used">Tools used</a><br/>
|
|
25
|
+
<a href="#contact">Contact</a>
|
|
26
26
|
</ol>
|
|
27
27
|
|
|
28
28
|
<br/>
|
|
29
29
|
|
|
30
|
-
##
|
|
31
|
-
|
|
32
|
-
Smart defaults for searching. Hidden files included, case-insensitive, no .gitignore restrictions.
|
|
30
|
+
## About
|
|
33
31
|
|
|
34
|
-
-
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
38
|
-
-
|
|
32
|
+
- **Smart defaults**:
|
|
33
|
+
- hidden files included (`.gitignore`, `.env`, etc files "not respected")
|
|
34
|
+
- case-insensitive
|
|
35
|
+
- **Fast**:
|
|
36
|
+
- powered by `ripgrep` and `fd`
|
|
37
|
+
- **Extension filter**:
|
|
38
|
+
- `:json`, `:ts,tsx` syntax for quick file type filtering
|
|
39
|
+
- **Tree view**:
|
|
40
|
+
β visualize results as dir tree
|
|
41
|
+
- **Customizable**:
|
|
42
|
+
β `~/.eyeignore` for personal ignore patterns
|
|
39
43
|
|
|
40
44
|
<br/>
|
|
41
45
|
|
|
42
|
-
##
|
|
46
|
+
## Install
|
|
43
47
|
|
|
44
48
|
```bash
|
|
45
49
|
npm i -g @vd7/eyecli
|
|
@@ -47,8 +51,8 @@ npm i -g @vd7/eyecli
|
|
|
47
51
|
|
|
48
52
|
### Requirements
|
|
49
53
|
|
|
50
|
-
- [ripgrep](https://github.com/BurntSushi/ripgrep)
|
|
51
|
-
- [fd](https://github.com/sharkdp/fd)
|
|
54
|
+
- [ripgrep](https://github.com/BurntSushi/ripgrep) β for content search
|
|
55
|
+
- [fd](https://github.com/sharkdp/fd) β for filename search
|
|
52
56
|
|
|
53
57
|
```bash
|
|
54
58
|
# macOS
|
|
@@ -61,9 +65,17 @@ apt install ripgrep fd-find
|
|
|
61
65
|
choco install ripgrep fd
|
|
62
66
|
```
|
|
63
67
|
|
|
68
|
+
### From source (optional)
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
git clone https://github.com/vdutts7/eyecli.git
|
|
72
|
+
cd eyecli
|
|
73
|
+
npm i -g .
|
|
74
|
+
```
|
|
75
|
+
|
|
64
76
|
<br/>
|
|
65
77
|
|
|
66
|
-
##
|
|
78
|
+
## Usage
|
|
67
79
|
|
|
68
80
|
```bash
|
|
69
81
|
# Search file contents
|
|
@@ -106,16 +118,17 @@ eye init
|
|
|
106
118
|
|
|
107
119
|
<br/>
|
|
108
120
|
|
|
109
|
-
##
|
|
121
|
+
## `$HOME/.eyeignore` file
|
|
110
122
|
|
|
111
|
-
|
|
123
|
+
eyecli supports a `$HOME/.eyeignore` file to customize what gets searched
|
|
112
124
|
|
|
113
125
|
```bash
|
|
114
126
|
# Create starter ignore file
|
|
115
127
|
eye init
|
|
116
128
|
```
|
|
117
129
|
|
|
118
|
-
|
|
130
|
+
- creates `$HOME/.eyeignore` with sensible defaults (`node_modules`, `.git`, build dirs, etc.)
|
|
131
|
+
- edit it to customize.
|
|
119
132
|
|
|
120
133
|
**Starter template includes:**
|
|
121
134
|
- Version control (.git, .svn)
|
|
@@ -126,24 +139,25 @@ This creates `~/.eyeignore` with sensible defaults (node_modules, .git, build di
|
|
|
126
139
|
- Caches (__pycache__, .cache)
|
|
127
140
|
- And more...
|
|
128
141
|
|
|
129
|
-
**Secrets are NOT ignored by default**
|
|
142
|
+
**Secrets are NOT ignored by default** β uncomment `.env` patterns in `~/.eyeignore` if you want to exclude them.
|
|
130
143
|
|
|
131
144
|
<br/>
|
|
132
145
|
|
|
133
|
-
##
|
|
146
|
+
## Roadmap
|
|
134
147
|
|
|
135
148
|
- [x] Content search with ripgrep
|
|
136
149
|
- [x] Filename search with fd
|
|
137
150
|
- [x] Extension filtering (`:json`, `:ts,tsx`)
|
|
138
151
|
- [x] Tree view output
|
|
139
152
|
- [x] Custom ignore file (`~/.eyeignore`)
|
|
140
|
-
- [ ] Fuzzy matching
|
|
153
|
+
- [ ] Fuzzy matching (`fzf`)
|
|
154
|
+
- [ ] Semantic search
|
|
141
155
|
- [ ] Interactive mode
|
|
142
156
|
- [ ] Config file for defaults
|
|
143
157
|
|
|
144
158
|
<br/>
|
|
145
159
|
|
|
146
|
-
##
|
|
160
|
+
## Tools Used
|
|
147
161
|
|
|
148
162
|
[![Node.js][nodejs-badge]][nodejs-url]
|
|
149
163
|
[![ripgrep][rg-badge]][rg-url]
|
|
@@ -151,10 +165,12 @@ This creates `~/.eyeignore` with sensible defaults (node_modules, .git, build di
|
|
|
151
165
|
|
|
152
166
|
<br/>
|
|
153
167
|
|
|
154
|
-
## π€Contact
|
|
155
168
|
|
|
156
|
-
|
|
157
|
-
|
|
169
|
+
## Contact
|
|
170
|
+
|
|
171
|
+
<a href="https://vd7.io"><img src="https://res.cloudinary.com/ddyc1es5v/image/upload/v1773910810/readme-badges/readme-badge-vd7.png" alt="vd7.io" height="40" /></a> <a href="https://x.com/vdutts7"><img src="https://res.cloudinary.com/ddyc1es5v/image/upload/v1773910817/readme-badges/readme-badge-x.png" alt="/vdutts7" height="40" /></a>
|
|
172
|
+
|
|
173
|
+
|
|
158
174
|
|
|
159
175
|
<!-- BADGES -->
|
|
160
176
|
[github]: https://img.shields.io/badge/π»_eyecli-000000?style=for-the-badge
|
|
@@ -167,7 +183,3 @@ This creates `~/.eyeignore` with sensible defaults (node_modules, .git, build di
|
|
|
167
183
|
[rg-url]: https://github.com/BurntSushi/ripgrep
|
|
168
184
|
[fd-badge]: https://img.shields.io/badge/fd-4B275F?style=for-the-badge&logo=rust&logoColor=white
|
|
169
185
|
[fd-url]: https://github.com/sharkdp/fd
|
|
170
|
-
[email]: https://img.shields.io/badge/Email-000000?style=for-the-badge&logo=Gmail&logoColor=white
|
|
171
|
-
[email-url]: mailto:me@vd7.io
|
|
172
|
-
[twitter]: https://img.shields.io/badge/Twitter-000000?style=for-the-badge&logo=Twitter&logoColor=white
|
|
173
|
-
[twitter-url]: https://x.com/vdutts7
|