ai-summon 0.0.1 → 0.0.3
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/JUEJIN.md +162 -0
- package/README.md +10 -32
- package/package.json +5 -1
package/JUEJIN.md
ADDED
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
> 适用人群:项目多、切换频繁、被 Recent 背刺过、每天 `cd` 到心累的同学
|
|
2
|
+
> 关键词:Cursor、Claude Code、命令行、模糊搜索、效率工具
|
|
3
|
+
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
### 0. 你是不是也被「Recent 列表」PUA 过?
|
|
7
|
+
|
|
8
|
+
你有没有这种瞬间崩溃过:
|
|
9
|
+
|
|
10
|
+
- **项目越来越多**:Cursor 的 Recent 只能记住几个,你常用的那个总在关键时刻消失。
|
|
11
|
+
- **打开一次很麻烦**:想开老项目,只能 Finder/Terminal 里翻目录,或者一路 `cd` 进去再开 IDE。
|
|
12
|
+
- **Claude Code 也同款麻烦**:不进到项目目录里跑起来就别扭,每次都要先“搬运”到正确的文件夹。
|
|
13
|
+
|
|
14
|
+
说白了就是:**我们每天都在做同一件低价值动作——找目录、进目录、打开工具。**
|
|
15
|
+
|
|
16
|
+
都 2026 年了,打开项目这件事,能不能像 `git status` 一样自然?
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
### 1. 我想要的体验:打开项目 = 输入几个字母 + 回车
|
|
21
|
+
|
|
22
|
+
于是我做了一个小工具:**`ai`**(一个命令行入口)。
|
|
23
|
+
|
|
24
|
+
它的目标非常简单粗暴:
|
|
25
|
+
|
|
26
|
+
- **把“打开项目”变成肌肉记忆**
|
|
27
|
+
- **不再依赖 Recent**
|
|
28
|
+
- **不再为了打开项目先手动 `cd`**
|
|
29
|
+
|
|
30
|
+
你只需要记住两句话:
|
|
31
|
+
|
|
32
|
+
- **打开 Cursor**:`ai cursor search`
|
|
33
|
+
- **打开 Claude Code**:`ai claude search`
|
|
34
|
+
|
|
35
|
+
从此你不再需要:
|
|
36
|
+
|
|
37
|
+
- 先 Finder 里翻半天
|
|
38
|
+
- 先 Terminal 里 `cd /some/very/long/path/...`
|
|
39
|
+
- 先祈祷 Recent 列表“刚好记得你”
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### 2. 为什么我觉得它“值”(而且项目越多越值)
|
|
44
|
+
|
|
45
|
+
#### 2.1 Recent 是“记忆”,但我们需要的是“检索”
|
|
46
|
+
|
|
47
|
+
Recent 的本质是:帮你记住最近几个。
|
|
48
|
+
你的真实需求是:**我随时能找到任何一个。**
|
|
49
|
+
|
|
50
|
+
项目从 5 个到 50/200 个时,“记忆”天然失效,“检索”才可靠。
|
|
51
|
+
|
|
52
|
+
#### 2.2 打开项目这件事,频率高到离谱
|
|
53
|
+
|
|
54
|
+
每天开 10 次项目很正常吧?
|
|
55
|
+
|
|
56
|
+
每次手动进目录哪怕只花 20 秒:
|
|
57
|
+
一天就是 200 秒,一周 1000 秒……更可怕的是:**它会打断注意力**。
|
|
58
|
+
|
|
59
|
+
你本来在想需求/排查问题,结果被迫去“搬运自己到目录”。
|
|
60
|
+
|
|
61
|
+
#### 2.3 Claude 更依赖“在正确目录里”
|
|
62
|
+
|
|
63
|
+
很多人用 Claude Code 的时候都有这种感觉:
|
|
64
|
+
“我只是想开始聊,但又得先去到项目目录……好麻烦。”
|
|
65
|
+
|
|
66
|
+
所以我干脆把“选中项目 → 进入目录 → 启动 Claude”这件事收编成一次操作。
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
### 3. 适合哪些人(对号入座)
|
|
71
|
+
|
|
72
|
+
- **你的项目多到 Recent 永远不够用**
|
|
73
|
+
- **你经常在多个 repo 来回切换**
|
|
74
|
+
- **你用 Cursor 写代码、用 Claude Code 辅助分析/写方案**
|
|
75
|
+
- **你已经受够了重复 `cd` / Finder 找目录**
|
|
76
|
+
- **你想把“打开项目”变成一种丝滑启动仪式**
|
|
77
|
+
|
|
78
|
+
如果你看到这里疯狂点头:你就是目标用户。
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
### 4. 它会改变什么:从“打开项目”到“打开思路”
|
|
83
|
+
|
|
84
|
+
我最喜欢的点不是“省几秒钟”,而是:
|
|
85
|
+
|
|
86
|
+
- 你不需要为了打开一个 repo 而离开当前思考
|
|
87
|
+
- 你把启动成本降到接近 0
|
|
88
|
+
- 你更愿意随时切回那个不常开的项目(因为不痛)
|
|
89
|
+
|
|
90
|
+
一句话总结:**更少的摩擦 = 更顺的 flow = 更高的产出。**
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
### 5. 怎么开始用(超简单)
|
|
95
|
+
|
|
96
|
+
#### 5.1 安装
|
|
97
|
+
|
|
98
|
+
全局装一个 `ai` 命令:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
npm install -g ai-summon
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
#### 5.2 初始化一次
|
|
105
|
+
|
|
106
|
+
初始化配置(第一次用建议跑一下):
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
ai init
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
它会让你设置一个“工作目录”(通常是你放所有 git 仓库的大目录,比如 `~/dev`)。
|
|
113
|
+
|
|
114
|
+
#### 5.3 开始用
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
ai cursor search
|
|
118
|
+
ai claude search
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
### 6. 小技巧:用得越久越舒服
|
|
124
|
+
|
|
125
|
+
- **把所有仓库收进一个 workingDirectory**:你会越来越依赖“统一入口”,而不是“记住路径”。
|
|
126
|
+
- **当你新增/移动了大量仓库**:跑一下 refresh(你可以把它当成“更新索引”)。
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
ai cursor refresh
|
|
130
|
+
ai claude refresh
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
### 7. FAQ(我猜你会问)
|
|
136
|
+
|
|
137
|
+
#### Q1:我只有几个项目,也值得用吗?
|
|
138
|
+
|
|
139
|
+
一开始可能是“舒服一点点”,但当你项目变多、开始多 repo 协作时,它会从“舒服”变成“刚需”。
|
|
140
|
+
|
|
141
|
+
#### Q2:这是不是只是个快捷方式?
|
|
142
|
+
|
|
143
|
+
它表面是“打开工具”,本质是:**把打开项目这件事产品化**。
|
|
144
|
+
当入口足够低成本,你会更愿意切换、更愿意复用、更少被路径打断。
|
|
145
|
+
|
|
146
|
+
#### Q3:我想分享给团队/同事?
|
|
147
|
+
|
|
148
|
+
非常适合。尤其是多人、多 repo、频繁切换的团队环境。你可以把这篇文章甩过去(别客气)。
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
### 8. 写在最后:这是个很小的工具,但解决的是个很真实的痛
|
|
153
|
+
|
|
154
|
+
我们总爱用更复杂的技术去解决更宏大的问题,但很多时候,效率就藏在最不起眼的重复动作里。
|
|
155
|
+
|
|
156
|
+
如果你也被 Recent 背叛过、也在 Terminal 里 `cd` 到心累过——
|
|
157
|
+
欢迎试试这种思路:**把打开项目做成一个统一入口。**
|
|
158
|
+
|
|
159
|
+
项目地址(GitHub):`https://github.com/ai-shaohua/ai-summon.git`
|
|
160
|
+
欢迎大家 **点赞 / 收藏 / Star**,你的支持就是我继续打磨小工具的动力~
|
|
161
|
+
|
|
162
|
+
|
package/README.md
CHANGED
|
@@ -9,16 +9,24 @@ A small TypeScript CLI (binary name: `ai`) for:
|
|
|
9
9
|
## Installation
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
|
-
|
|
13
|
-
yarn build:install
|
|
12
|
+
npm install -g ai-summon
|
|
14
13
|
```
|
|
15
14
|
|
|
15
|
+
[](https://www.npmjs.com/package/ai-summon)
|
|
16
|
+
|
|
16
17
|
After install, you should have the `ai` command available:
|
|
17
18
|
|
|
18
19
|
```bash
|
|
19
20
|
ai --help
|
|
20
21
|
```
|
|
21
22
|
|
|
23
|
+
### Install from source (dev)
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
yarn install
|
|
27
|
+
yarn build:install
|
|
28
|
+
```
|
|
29
|
+
|
|
22
30
|
## Commands
|
|
23
31
|
|
|
24
32
|
### `ai init`
|
|
@@ -116,41 +124,11 @@ Example:
|
|
|
116
124
|
```json
|
|
117
125
|
{
|
|
118
126
|
"workingDirectory": "/Users/you/dev",
|
|
119
|
-
"repos": {},
|
|
120
|
-
"yiren": {},
|
|
121
127
|
"urls": {},
|
|
122
128
|
"urlGroups": {}
|
|
123
129
|
}
|
|
124
130
|
```
|
|
125
131
|
|
|
126
|
-
### Manual mode (grouped projects)
|
|
127
|
-
|
|
128
|
-
If `workingDirectory` is not set, `ai cursor` / `ai claude` will use `repos` (two-step selection: category → project).
|
|
129
|
-
|
|
130
|
-
Example:
|
|
131
|
-
|
|
132
|
-
```json
|
|
133
|
-
{
|
|
134
|
-
"repos": {
|
|
135
|
-
"work": {
|
|
136
|
-
"impactful": "/Users/you/dev/impactful",
|
|
137
|
-
"payments": "/Users/you/dev/payments"
|
|
138
|
-
},
|
|
139
|
-
"personal": {
|
|
140
|
-
"dotfiles": "/Users/you/dev/dotfiles"
|
|
141
|
-
}
|
|
142
|
-
},
|
|
143
|
-
"yiren": {},
|
|
144
|
-
"urls": {
|
|
145
|
-
"jira": "https://your-jira.example.com",
|
|
146
|
-
"gitlab": "https://your-gitlab.example.com"
|
|
147
|
-
},
|
|
148
|
-
"urlGroups": {
|
|
149
|
-
"daily": ["https://example.com", "https://example.org"]
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
```
|
|
153
|
-
|
|
154
132
|
## Development
|
|
155
133
|
|
|
156
134
|
```bash
|
package/package.json
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ai-summon",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "",
|
|
6
6
|
"main": "index.js",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/ai-shaohua/ai-summon.git"
|
|
10
|
+
},
|
|
7
11
|
"scripts": {
|
|
8
12
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
9
13
|
"build": "rm -rf dist && tsc",
|