@ranger-testing/ranger-cli 1.0.13 → 1.0.14
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 +28 -65
- package/build/cli.js +220 -277
- package/build/cli.js.map +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/addEnv.js.map +1 -1
- package/build/commands/authEncrypt.js +7 -6
- package/build/commands/authEncrypt.js.map +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/clean.js.map +1 -1
- package/build/commands/config.js +5 -4
- package/build/commands/config.js.map +1 -1
- package/build/commands/dataMcpServer.js +1 -1
- package/build/commands/dataMcpServer.js.map +1 -1
- package/build/commands/env.js +17 -10
- package/build/commands/env.js.map +1 -1
- package/build/commands/feature.js +208 -273
- package/build/commands/feature.js.map +1 -1
- package/build/commands/index.js +3 -0
- package/build/commands/index.js.map +1 -1
- package/build/commands/postEditHook.js +25 -0
- package/build/commands/postEditHook.js.map +1 -0
- package/build/commands/preCompactHook.js +85 -0
- package/build/commands/preCompactHook.js.map +1 -0
- package/build/commands/sessionStartHook.js +64 -0
- package/build/commands/sessionStartHook.js.map +1 -0
- package/build/commands/skillup.js +18 -21
- package/build/commands/skillup.js.map +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/start.js.map +1 -1
- package/build/commands/status.js +30 -44
- package/build/commands/status.js.map +1 -1
- package/build/commands/update.js +32 -40
- package/build/commands/update.js.map +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/updateEnv.js.map +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/useEnv.js.map +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/browserSessionsApi.js.map +1 -1
- package/build/commands/utils/cliSecret.js +1 -1
- package/build/commands/utils/environment.js +0 -6
- package/build/commands/utils/environment.js.map +1 -1
- package/build/commands/utils/featureApi.js +68 -24
- package/build/commands/utils/featureApi.js.map +1 -1
- package/build/commands/utils/featureReportGenerator.js +37 -3
- package/build/commands/utils/featureReportGenerator.js.map +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/keychain.js.map +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/mcpConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +30 -0
- package/build/commands/utils/rangerRoot.js.map +1 -0
- package/build/commands/utils/settings.js +7 -5
- package/build/commands/utils/settings.js.map +1 -1
- package/build/commands/utils/skillContent.js +28 -0
- package/build/commands/utils/skillContent.js.map +1 -0
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/skills.js.map +1 -1
- package/build/commands/utils/userApi.js +32 -0
- package/build/commands/utils/userApi.js.map +1 -0
- package/build/commands/verifyFeature.js +429 -104
- package/build/commands/verifyFeature.js.map +1 -1
- package/build/commands/verifyInBrowser.js +1 -1
- package/build/commands/verifyInBrowser.js.map +1 -1
- package/build/skills/bug-bash.md +31 -10
- package/build/skills/feature-tracker/SKILL.md +8 -30
- package/build/skills/feature-tracker/create.md +47 -38
- package/build/skills/feature-tracker/start.md +4 -4
- package/build/skills/feature-tracker/verify.md +10 -14
- package/package.json +5 -3
- package/scripts/postinstall.js +18 -0
- package/build/skills/feature-tracker/manage.md +0 -145
|
@@ -5,11 +5,11 @@ After implementing code for a checklist item, verify it works in the browser. Th
|
|
|
5
5
|
## Basic Command
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
ranger verify-feature
|
|
9
|
-
--url "<starting url>" \
|
|
10
|
-
--task "<what to verify>"
|
|
8
|
+
ranger verify-feature --task "<what to verify>"
|
|
11
9
|
```
|
|
12
10
|
|
|
11
|
+
The URL is derived from your active environment's `baseUrl` setting.
|
|
12
|
+
|
|
13
13
|
## Required: Active Feature
|
|
14
14
|
|
|
15
15
|
`verify-feature` requires an active feature. If you don't have one:
|
|
@@ -31,10 +31,9 @@ ranger feature use <id>
|
|
|
31
31
|
|
|
32
32
|
| Option | Required | Description |
|
|
33
33
|
|--------|----------|-------------|
|
|
34
|
-
| `--
|
|
34
|
+
| `--env` | No | Environment to use (defaults to active environment) |
|
|
35
35
|
| `--task` | No | What to verify (defaults to item description) |
|
|
36
36
|
| `--item` | No | Item index to verify (skips selection prompt) |
|
|
37
|
-
| `--new-item` | No | Create and verify a new item |
|
|
38
37
|
|
|
39
38
|
## Writing Good Task Descriptions
|
|
40
39
|
|
|
@@ -56,7 +55,7 @@ If your checklist item has a detailed description, you can omit `--task`:
|
|
|
56
55
|
|
|
57
56
|
```bash
|
|
58
57
|
# Item 1: "User can log in with valid credentials - sees loading state - redirects to dashboard"
|
|
59
|
-
ranger verify-feature --
|
|
58
|
+
ranger verify-feature --item 1
|
|
60
59
|
```
|
|
61
60
|
|
|
62
61
|
The item's description becomes the task automatically.
|
|
@@ -78,7 +77,6 @@ After verification, the agent evaluates if the result satisfies the checklist it
|
|
|
78
77
|
|
|
79
78
|
```bash
|
|
80
79
|
ranger verify-feature \
|
|
81
|
-
--url "http://localhost:3000/login" \
|
|
82
80
|
--task "Log in with test@example.com / password123, verify redirect to dashboard"
|
|
83
81
|
```
|
|
84
82
|
|
|
@@ -87,19 +85,17 @@ ranger verify-feature \
|
|
|
87
85
|
```bash
|
|
88
86
|
# Skip the selection prompt, verify item 2 directly
|
|
89
87
|
ranger verify-feature \
|
|
90
|
-
--url "http://localhost:3000/signup" \
|
|
91
88
|
--task "Complete signup flow with new email" \
|
|
92
89
|
--item 2
|
|
93
90
|
```
|
|
94
91
|
|
|
95
|
-
###
|
|
92
|
+
### Verify with Specific Environment
|
|
96
93
|
|
|
97
94
|
```bash
|
|
98
|
-
#
|
|
95
|
+
# Use staging environment instead of active environment
|
|
99
96
|
ranger verify-feature \
|
|
100
|
-
--
|
|
101
|
-
--task "
|
|
102
|
-
--new-item "User can update profile photo from settings page"
|
|
97
|
+
--env staging \
|
|
98
|
+
--task "Verify login works in staging"
|
|
103
99
|
```
|
|
104
100
|
|
|
105
101
|
## After Verification
|
|
@@ -140,4 +136,4 @@ Run `ranger use <env-name>` to set an environment with browser access.
|
|
|
140
136
|
The agent has 59 minutes max. For very long flows, break into smaller checklist items.
|
|
141
137
|
|
|
142
138
|
### Wrong item marked
|
|
143
|
-
|
|
139
|
+
Reset the item via the dashboard, then re-verify.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ranger-testing/ranger-cli",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.14",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"ranger": "./build/cli.js",
|
|
@@ -10,10 +10,12 @@
|
|
|
10
10
|
"build": "tsc && npm run obfuscate && cp -r src/skills build/ && chmod 755 build/cli.js",
|
|
11
11
|
"obfuscate": "node scripts/obfuscate.cjs",
|
|
12
12
|
"dev": "tsx src/cli.ts",
|
|
13
|
-
"check-playwright-version": "node scripts/check-playwright-version.cjs"
|
|
13
|
+
"check-playwright-version": "node scripts/check-playwright-version.cjs",
|
|
14
|
+
"postinstall": "node scripts/postinstall.js"
|
|
14
15
|
},
|
|
15
16
|
"files": [
|
|
16
|
-
"build"
|
|
17
|
+
"build",
|
|
18
|
+
"scripts/postinstall.js"
|
|
17
19
|
],
|
|
18
20
|
"dependencies": {
|
|
19
21
|
"@anthropic-ai/claude-agent-sdk": "^0.1.0",
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Postinstall script for @ranger-testing/ranger-cli
|
|
5
|
+
* Displays welcome message and setup instructions after npm install
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
console.log(`
|
|
9
|
+
🏞️ Ranger CLI installed!
|
|
10
|
+
|
|
11
|
+
Get started:
|
|
12
|
+
1. Get your API token: https://dashboard.ranger.net/cli
|
|
13
|
+
2. Run: ranger start <your-token>
|
|
14
|
+
|
|
15
|
+
For Claude Code, install the plugin in Claude Code:
|
|
16
|
+
/plugin marketplace add ranger-testing/trailhead
|
|
17
|
+
/plugin install ranger@trailhead
|
|
18
|
+
`);
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
# Managing Checklist Items
|
|
2
|
-
|
|
3
|
-
Manage checklist items as you work through a feature. The `manage` command supports both interactive mode (for humans) and CLI flags (for agents/automation).
|
|
4
|
-
|
|
5
|
-
## Quick Reference
|
|
6
|
-
|
|
7
|
-
| Action | Command |
|
|
8
|
-
|--------|---------|
|
|
9
|
-
| Add item | `ranger feature manage --add "description"` |
|
|
10
|
-
| Edit item | `ranger feature manage --edit <index> --description "new text"` |
|
|
11
|
-
| Block item | `ranger feature manage --block <index> --reason "why"` |
|
|
12
|
-
| Cancel item | `ranger feature manage --cancel <index> --reason "why"` |
|
|
13
|
-
| Reset to pending | `ranger feature manage --reset <index>` |
|
|
14
|
-
|
|
15
|
-
**Note:** All indexes are 1-based (first item is 1, not 0).
|
|
16
|
-
|
|
17
|
-
## Adding Items
|
|
18
|
-
|
|
19
|
-
Add new checklist items as scope expands or you discover new requirements:
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
ranger feature manage --add "New item that needs to be done"
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
**Tip:** Be descriptive! The item description becomes the default task for browser verification.
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
# Bad
|
|
29
|
-
ranger feature manage --add "Test logout"
|
|
30
|
-
|
|
31
|
-
# Good
|
|
32
|
-
ranger feature manage --add "User can click logout button in header - sees confirmation - is redirected to login page - session is invalidated"
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
## Editing Items
|
|
36
|
-
|
|
37
|
-
Update an item's description to clarify requirements or fix typos:
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
ranger feature manage --edit 1 --description "Updated description with more detail"
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
Use `ranger feature show` first to see item indexes:
|
|
44
|
-
|
|
45
|
-
```
|
|
46
|
-
Checklist:
|
|
47
|
-
1. ⬜ First item <-- index 1
|
|
48
|
-
2. ⬜ Second item <-- index 2
|
|
49
|
-
3. ⬜ Third item <-- index 3
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
## Blocking Items
|
|
53
|
-
|
|
54
|
-
Mark an item as blocked when something prevents completion:
|
|
55
|
-
|
|
56
|
-
```bash
|
|
57
|
-
ranger feature manage --block 2 --reason "API endpoint not implemented yet"
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
Common blocking reasons:
|
|
61
|
-
- Bug in dependent system
|
|
62
|
-
- Missing API endpoint
|
|
63
|
-
- Waiting for design assets
|
|
64
|
-
- Environment issue
|
|
65
|
-
|
|
66
|
-
## Canceling Items
|
|
67
|
-
|
|
68
|
-
Cancel items that are no longer needed:
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
ranger feature manage --cancel 3 --reason "Descoped to v2 based on PM feedback"
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
Canceled items:
|
|
75
|
-
- Don't count toward completion
|
|
76
|
-
- Are shown with strikethrough in reports
|
|
77
|
-
- Preserve the cancellation reason for context
|
|
78
|
-
|
|
79
|
-
## Resetting Items
|
|
80
|
-
|
|
81
|
-
Reset a blocked or canceled item back to pending:
|
|
82
|
-
|
|
83
|
-
```bash
|
|
84
|
-
ranger feature manage --reset 2
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
Use this when:
|
|
88
|
-
- A blocker is resolved
|
|
89
|
-
- A canceled item is back in scope
|
|
90
|
-
- You need to re-verify a previously verified item
|
|
91
|
-
|
|
92
|
-
## Interactive Mode
|
|
93
|
-
|
|
94
|
-
For humans, run without flags to get an interactive menu:
|
|
95
|
-
|
|
96
|
-
```bash
|
|
97
|
-
ranger feature manage
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
This shows:
|
|
101
|
-
```
|
|
102
|
-
Managing: User Authentication (feat_abc123)
|
|
103
|
-
|
|
104
|
-
Current checklist:
|
|
105
|
-
1. ✅ Login flow works
|
|
106
|
-
2. ⬜ Signup creates account
|
|
107
|
-
3. 🛑 Password reset sends email
|
|
108
|
-
Blocked: Email service not configured
|
|
109
|
-
|
|
110
|
-
? What would you like to do?
|
|
111
|
-
❯ Add new item
|
|
112
|
-
Update existing item
|
|
113
|
-
Cancel
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
## Item Statuses
|
|
117
|
-
|
|
118
|
-
| Status | Emoji | Meaning |
|
|
119
|
-
|--------|-------|---------|
|
|
120
|
-
| Pending | ⬜ | Not yet verified |
|
|
121
|
-
| Verified | ✅ | Successfully verified in browser |
|
|
122
|
-
| Blocked | 🛑 | Cannot complete due to blocker |
|
|
123
|
-
| Canceled | ⛔ | No longer needed |
|
|
124
|
-
|
|
125
|
-
## Workflow Example
|
|
126
|
-
|
|
127
|
-
```bash
|
|
128
|
-
# Check current state
|
|
129
|
-
ranger feature show
|
|
130
|
-
|
|
131
|
-
# Add a new requirement discovered during implementation
|
|
132
|
-
ranger feature manage --add "Form should show inline validation errors"
|
|
133
|
-
|
|
134
|
-
# Realize an item needs clarification
|
|
135
|
-
ranger feature manage --edit 2 --description "Signup form validates email format and password strength before submission"
|
|
136
|
-
|
|
137
|
-
# Hit a blocker
|
|
138
|
-
ranger feature manage --block 3 --reason "SMTP server not configured in local env"
|
|
139
|
-
|
|
140
|
-
# Blocker resolved later
|
|
141
|
-
ranger feature manage --reset 3
|
|
142
|
-
|
|
143
|
-
# Scope change from PM
|
|
144
|
-
ranger feature manage --cancel 4 --reason "Social login moved to v2"
|
|
145
|
-
```
|