rush-ai 0.5.0 → 0.6.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.
- package/README.md +54 -37
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,9 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# rush-ai
|
|
4
4
|
|
|
5
|
-
**
|
|
6
|
-
|
|
7
|
-
*Create tasks, manage agents, stream results, and integrate IDE plugins — all from the terminal*
|
|
5
|
+
**Call Rush agents from your terminal — relay the context, not the prompt.**
|
|
8
6
|
|
|
9
7
|
[](https://www.npmjs.com/package/rush-ai)
|
|
10
8
|
[](https://opensource.org/licenses/MIT)
|
|
@@ -13,23 +11,60 @@
|
|
|
13
11
|
|
|
14
12
|
---
|
|
15
13
|
|
|
16
|
-
##
|
|
14
|
+
## Why rush-ai
|
|
15
|
+
|
|
16
|
+
### Hand off your context, not your prompt
|
|
17
|
+
|
|
18
|
+
You're already deep in a conversation with your local agent — Cursor, Claude Code, or your own. It knows the codebase, the constraints, what you've already tried. When part of that work belongs on the Rush platform (building a site, asking a specialist agent), you don't want to summarize everything again.
|
|
19
|
+
|
|
20
|
+
`rush-ai` is the hand-off. Your local agent calls `rush-ai task create` with the context it already has. Rush picks it up, you switch to the browser to watch the preview, and you keep iterating there.
|
|
17
21
|
|
|
18
22
|
```bash
|
|
19
|
-
|
|
23
|
+
# From inside Cursor / Claude Code, the local agent runs:
|
|
24
|
+
npx rush-ai task create -a web-builder -p "做一个公司官网,风格大气专业"
|
|
25
|
+
```
|
|
20
26
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
27
|
+
### Rush agents as your sub-agents
|
|
28
|
+
|
|
29
|
+
Rush hosts a growing shelf of specialist agents. Any of them can become a sub-agent inside your own workflow — you don't rewrite the prompt, you call the agent.
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
# Browse the shelf
|
|
33
|
+
npx rush-ai agent list
|
|
34
|
+
|
|
35
|
+
# Pick one and put it to work — e.g. the HR analytics specialist
|
|
36
|
+
npx rush-ai task create -a 人力资源分析专家 -p "分析 Q1 部门人效趋势"
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Featured: `web-builder`
|
|
40
|
+
|
|
41
|
+
`web-builder` is Rush's most intensive agent. One prompt gives you back a live preview URL and a git repository — share it, clone it, or keep iterating via `task send`.
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
npx rush-ai task create -a web-builder -p "Build a product landing page"
|
|
45
|
+
# → Task lodig8oknq0r running
|
|
46
|
+
|
|
47
|
+
npx rush-ai task status lodig8oknq0r
|
|
48
|
+
# Preview: https://lodig8oknq0r-preview.rush.zhenguanyu.com/
|
|
49
|
+
# Git: https://gitlab-ee.zhenguanyu.com/rush/online/lodig8oknq0r
|
|
25
50
|
```
|
|
26
51
|
|
|
52
|
+
## Quick Start
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
npx rush-ai auth login
|
|
56
|
+
npx rush-ai agent list
|
|
57
|
+
npx rush-ai task create -a rush -p "Add a contact form to the homepage"
|
|
58
|
+
npx rush-ai task watch <task-id>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
`rush` is the default general-purpose agent. Swap `-a` for any agent from `agent list` to call a specialist instead.
|
|
62
|
+
|
|
27
63
|
## Features
|
|
28
64
|
|
|
29
|
-
- **Task lifecycle** — Create, watch (SSE streaming), cancel, and download artifacts
|
|
30
|
-
- **Agent
|
|
31
|
-
- **MCP integration** — Discover MCP servers, list tools, run as MCP stdio server
|
|
32
|
-
- **IDE plugins** — Install, update, diagnose plugins for Claude Code and Cursor
|
|
65
|
+
- **Task lifecycle** — Create, watch (SSE streaming), send follow-ups, cancel, and download artifacts
|
|
66
|
+
- **Agent shelf** — Browse agents, inspect skills and MCP servers, plug any agent into your own workflow as a sub-agent
|
|
67
|
+
- **MCP integration** — Discover MCP servers, list tools, run as an MCP stdio server
|
|
33
68
|
- **Multi-profile** — Switch between environments (test, production, custom)
|
|
34
69
|
- **Shell completion** — Bash, Zsh, and Fish auto-completion
|
|
35
70
|
- **CI-friendly** — `--json` output, `--ci` mode, non-zero exit codes on failure
|
|
@@ -39,8 +74,11 @@ rush-ai task watch <task-id>
|
|
|
39
74
|
**Requirements:** Node.js >= 18.0.0
|
|
40
75
|
|
|
41
76
|
```bash
|
|
42
|
-
|
|
43
|
-
npx rush-ai <command>
|
|
77
|
+
# Recommended — always runs the latest version, zero setup
|
|
78
|
+
npx rush-ai <command>
|
|
79
|
+
|
|
80
|
+
# Optional — pin a global binary
|
|
81
|
+
npm install -g rush-ai
|
|
44
82
|
```
|
|
45
83
|
|
|
46
84
|
## Commands
|
|
@@ -64,12 +102,6 @@ npx rush-ai <command> # Or use npx directly
|
|
|
64
102
|
| `mcp serve` | - | Start MCP stdio server |
|
|
65
103
|
| `mcp list` | `mcp ls` | List available MCP servers |
|
|
66
104
|
| `mcp list-tools <id>` | - | List tools provided by an MCP server |
|
|
67
|
-
| `plugin install <name>` | - | Install an IDE plugin |
|
|
68
|
-
| `plugin update <name>` | - | Update an installed plugin |
|
|
69
|
-
| `plugin uninstall <name>` | - | Remove a plugin |
|
|
70
|
-
| `plugin list` | `plugin ls` | List available and installed plugins |
|
|
71
|
-
| `plugin status <name>` | - | Show plugin installation status |
|
|
72
|
-
| `plugin doctor [name]` | - | Diagnose plugin issues |
|
|
73
105
|
| `config show` | - | Show current configuration |
|
|
74
106
|
| `config set <key> <value>` | - | Set a config value (`api`, `collectMetrics`, `currentTeam`) |
|
|
75
107
|
| `config use <profile>` | - | Switch active profile |
|
|
@@ -148,19 +180,6 @@ rush-ai mcp list --search "database"
|
|
|
148
180
|
rush-ai mcp list-tools <server-id>
|
|
149
181
|
```
|
|
150
182
|
|
|
151
|
-
### IDE Plugin Management
|
|
152
|
-
|
|
153
|
-
```bash
|
|
154
|
-
# Install plugin for Claude Code
|
|
155
|
-
rush-ai plugin install claude-code
|
|
156
|
-
|
|
157
|
-
# Check plugin health
|
|
158
|
-
rush-ai plugin doctor claude-code
|
|
159
|
-
|
|
160
|
-
# Update plugin
|
|
161
|
-
rush-ai plugin update claude-code --force
|
|
162
|
-
```
|
|
163
|
-
|
|
164
183
|
### Multi-Profile Configuration
|
|
165
184
|
|
|
166
185
|
```bash
|
|
@@ -203,9 +222,7 @@ Config files are stored in `~/.rush/`:
|
|
|
203
222
|
```
|
|
204
223
|
~/.rush/
|
|
205
224
|
├── auth.json # Credentials (token, refresh token, expiry)
|
|
206
|
-
|
|
207
|
-
└── plugins/
|
|
208
|
-
└── installed.json # Plugin manifest
|
|
225
|
+
└── config.json # Global settings (profiles, metrics, team)
|
|
209
226
|
```
|
|
210
227
|
|
|
211
228
|
## Development
|
package/dist/index.js
CHANGED
|
@@ -3342,7 +3342,15 @@ function gitPushUrl(projectPath, url) {
|
|
|
3342
3342
|
cwd: projectPath,
|
|
3343
3343
|
stdio: "pipe",
|
|
3344
3344
|
timeout: 3e5,
|
|
3345
|
-
maxBuffer: 10 * 1024 * 1024
|
|
3345
|
+
maxBuffer: 10 * 1024 * 1024,
|
|
3346
|
+
env: {
|
|
3347
|
+
...process.env,
|
|
3348
|
+
// 失败时不要弹密码 / SSH key 提示,否则在非交互环境(CI / 测试)
|
|
3349
|
+
// 会一直 hang 到外层 timeout(300s)才返回。
|
|
3350
|
+
GIT_TERMINAL_PROMPT: "0",
|
|
3351
|
+
GIT_ASKPASS: "true",
|
|
3352
|
+
SSH_ASKPASS: "true"
|
|
3353
|
+
}
|
|
3346
3354
|
});
|
|
3347
3355
|
return { success: true, stderr: "" };
|
|
3348
3356
|
} catch (err) {
|
|
@@ -3945,7 +3953,7 @@ function registerTaskCommand(program) {
|
|
|
3945
3953
|
}
|
|
3946
3954
|
}
|
|
3947
3955
|
);
|
|
3948
|
-
task.command("list").alias("ls").description("List tasks").option("-l, --limit <limit>", "Maximum number of tasks", "
|
|
3956
|
+
task.command("list").alias("ls").description("List tasks").option("-l, --limit <limit>", "Maximum number of tasks", "50").option("-s, --status <status>", "Filter by status").action(async (options) => {
|
|
3949
3957
|
requireAuth();
|
|
3950
3958
|
const format = resolveFormat(program.opts());
|
|
3951
3959
|
const client = createClient();
|