@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.
Files changed (72) hide show
  1. package/README.md +28 -65
  2. package/build/cli.js +220 -277
  3. package/build/cli.js.map +1 -1
  4. package/build/commands/addEnv.js +1 -1
  5. package/build/commands/addEnv.js.map +1 -1
  6. package/build/commands/authEncrypt.js +7 -6
  7. package/build/commands/authEncrypt.js.map +1 -1
  8. package/build/commands/clean.js +1 -1
  9. package/build/commands/clean.js.map +1 -1
  10. package/build/commands/config.js +5 -4
  11. package/build/commands/config.js.map +1 -1
  12. package/build/commands/dataMcpServer.js +1 -1
  13. package/build/commands/dataMcpServer.js.map +1 -1
  14. package/build/commands/env.js +17 -10
  15. package/build/commands/env.js.map +1 -1
  16. package/build/commands/feature.js +208 -273
  17. package/build/commands/feature.js.map +1 -1
  18. package/build/commands/index.js +3 -0
  19. package/build/commands/index.js.map +1 -1
  20. package/build/commands/postEditHook.js +25 -0
  21. package/build/commands/postEditHook.js.map +1 -0
  22. package/build/commands/preCompactHook.js +85 -0
  23. package/build/commands/preCompactHook.js.map +1 -0
  24. package/build/commands/sessionStartHook.js +64 -0
  25. package/build/commands/sessionStartHook.js.map +1 -0
  26. package/build/commands/skillup.js +18 -21
  27. package/build/commands/skillup.js.map +1 -1
  28. package/build/commands/start.js +1 -1
  29. package/build/commands/start.js.map +1 -1
  30. package/build/commands/status.js +30 -44
  31. package/build/commands/status.js.map +1 -1
  32. package/build/commands/update.js +32 -40
  33. package/build/commands/update.js.map +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/updateEnv.js.map +1 -1
  36. package/build/commands/useEnv.js +1 -1
  37. package/build/commands/useEnv.js.map +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/browserSessionsApi.js.map +1 -1
  40. package/build/commands/utils/cliSecret.js +1 -1
  41. package/build/commands/utils/environment.js +0 -6
  42. package/build/commands/utils/environment.js.map +1 -1
  43. package/build/commands/utils/featureApi.js +68 -24
  44. package/build/commands/utils/featureApi.js.map +1 -1
  45. package/build/commands/utils/featureReportGenerator.js +37 -3
  46. package/build/commands/utils/featureReportGenerator.js.map +1 -1
  47. package/build/commands/utils/keychain.js +1 -1
  48. package/build/commands/utils/keychain.js.map +1 -1
  49. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  50. package/build/commands/utils/mcpConfig.js +1 -1
  51. package/build/commands/utils/rangerRoot.js +30 -0
  52. package/build/commands/utils/rangerRoot.js.map +1 -0
  53. package/build/commands/utils/settings.js +7 -5
  54. package/build/commands/utils/settings.js.map +1 -1
  55. package/build/commands/utils/skillContent.js +28 -0
  56. package/build/commands/utils/skillContent.js.map +1 -0
  57. package/build/commands/utils/skills.js +1 -1
  58. package/build/commands/utils/skills.js.map +1 -1
  59. package/build/commands/utils/userApi.js +32 -0
  60. package/build/commands/utils/userApi.js.map +1 -0
  61. package/build/commands/verifyFeature.js +429 -104
  62. package/build/commands/verifyFeature.js.map +1 -1
  63. package/build/commands/verifyInBrowser.js +1 -1
  64. package/build/commands/verifyInBrowser.js.map +1 -1
  65. package/build/skills/bug-bash.md +31 -10
  66. package/build/skills/feature-tracker/SKILL.md +8 -30
  67. package/build/skills/feature-tracker/create.md +47 -38
  68. package/build/skills/feature-tracker/start.md +4 -4
  69. package/build/skills/feature-tracker/verify.md +10 -14
  70. package/package.json +5 -3
  71. package/scripts/postinstall.js +18 -0
  72. 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
- | `--url` | Yes | Starting URL for the verification |
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 --url "http://localhost:3000/login" --item 1
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
- ### Create and Verify New Item
92
+ ### Verify with Specific Environment
96
93
 
97
94
  ```bash
98
- # Add a new checklist item and verify it in one command
95
+ # Use staging environment instead of active environment
99
96
  ranger verify-feature \
100
- --url "http://localhost:3000/settings" \
101
- --task "Change profile photo and verify it updates" \
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
- Use `ranger feature manage --reset <index>` to reset an item, then re-verify.
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.13",
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
- ```