@ranger-testing/ranger-cli 1.0.13 → 1.1.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.
Files changed (101) hide show
  1. package/README.md +72 -183
  2. package/build/cli.js +219 -278
  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 +277 -285
  17. package/build/commands/feature.js.map +1 -1
  18. package/build/commands/hook.js +27 -0
  19. package/build/commands/hook.js.map +1 -0
  20. package/build/commands/hooks/disable.js +25 -0
  21. package/build/commands/hooks/disable.js.map +1 -0
  22. package/build/commands/hooks/enable.js +44 -0
  23. package/build/commands/hooks/enable.js.map +1 -0
  24. package/build/commands/hooks/exitPlanMode.js +35 -0
  25. package/build/commands/hooks/exitPlanMode.js.map +1 -0
  26. package/build/commands/hooks/index.js +10 -0
  27. package/build/commands/hooks/index.js.map +1 -0
  28. package/build/commands/hooks/output.js +53 -0
  29. package/build/commands/hooks/output.js.map +1 -0
  30. package/build/commands/hooks/planReminder.js +46 -0
  31. package/build/commands/hooks/planReminder.js.map +1 -0
  32. package/build/commands/hooks/planStart.js +30 -0
  33. package/build/commands/hooks/planStart.js.map +1 -0
  34. package/build/commands/hooks/postEdit.js +41 -0
  35. package/build/commands/hooks/postEdit.js.map +1 -0
  36. package/build/commands/hooks/preCompact.js +30 -0
  37. package/build/commands/hooks/preCompact.js.map +1 -0
  38. package/build/commands/hooks/sessionStart.js +35 -0
  39. package/build/commands/hooks/sessionStart.js.map +1 -0
  40. package/build/commands/hooks/stopHook.js +54 -0
  41. package/build/commands/hooks/stopHook.js.map +1 -0
  42. package/build/commands/index.js +1 -0
  43. package/build/commands/index.js.map +1 -1
  44. package/build/commands/skillup.js +41 -77
  45. package/build/commands/skillup.js.map +1 -1
  46. package/build/commands/start.js +1 -1
  47. package/build/commands/start.js.map +1 -1
  48. package/build/commands/status.js +47 -65
  49. package/build/commands/status.js.map +1 -1
  50. package/build/commands/update.js +32 -40
  51. package/build/commands/update.js.map +1 -1
  52. package/build/commands/updateEnv.js +1 -1
  53. package/build/commands/updateEnv.js.map +1 -1
  54. package/build/commands/useEnv.js +1 -1
  55. package/build/commands/useEnv.js.map +1 -1
  56. package/build/commands/utils/browserSessionsApi.js +1 -1
  57. package/build/commands/utils/browserSessionsApi.js.map +1 -1
  58. package/build/commands/utils/claudePlugin.js +85 -0
  59. package/build/commands/utils/claudePlugin.js.map +1 -0
  60. package/build/commands/utils/cliSecret.js +1 -1
  61. package/build/commands/utils/environment.js +0 -6
  62. package/build/commands/utils/environment.js.map +1 -1
  63. package/build/commands/utils/featureApi.js +82 -15
  64. package/build/commands/utils/featureApi.js.map +1 -1
  65. package/build/commands/utils/featureReportGenerator.js +37 -3
  66. package/build/commands/utils/featureReportGenerator.js.map +1 -1
  67. package/build/commands/utils/git.js +44 -0
  68. package/build/commands/utils/git.js.map +1 -0
  69. package/build/commands/utils/keychain.js +1 -1
  70. package/build/commands/utils/keychain.js.map +1 -1
  71. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  72. package/build/commands/utils/rangerRoot.js +30 -0
  73. package/build/commands/utils/rangerRoot.js.map +1 -0
  74. package/build/commands/utils/sessionCache.js +133 -0
  75. package/build/commands/utils/sessionCache.js.map +1 -0
  76. package/build/commands/utils/settings.js +7 -5
  77. package/build/commands/utils/settings.js.map +1 -1
  78. package/build/commands/utils/skillContent.js +28 -0
  79. package/build/commands/utils/skillContent.js.map +1 -0
  80. package/build/commands/utils/skills.js +1 -1
  81. package/build/commands/utils/skills.js.map +1 -1
  82. package/build/commands/utils/userApi.js +32 -0
  83. package/build/commands/utils/userApi.js.map +1 -0
  84. package/build/commands/verifyFeature.js +450 -105
  85. package/build/commands/verifyFeature.js.map +1 -1
  86. package/build/commands/verifyInBrowser.js +1 -1
  87. package/build/commands/verifyInBrowser.js.map +1 -1
  88. package/build/skills/bug-bash.md +31 -10
  89. package/build/skills/ranger/SKILL.md +164 -0
  90. package/build/skills/ranger/create.md +151 -0
  91. package/build/skills/ranger/start.md +122 -0
  92. package/build/skills/{feature-tracker → ranger}/verify.md +43 -17
  93. package/package.json +5 -3
  94. package/scripts/postinstall.js +18 -0
  95. package/build/commands/utils/mcpConfig.js +0 -1
  96. package/build/commands/utils/mcpConfig.js.map +0 -1
  97. package/build/skills/feature-tracker/SKILL.md +0 -185
  98. package/build/skills/feature-tracker/create.md +0 -105
  99. package/build/skills/feature-tracker/manage.md +0 -145
  100. package/build/skills/feature-tracker/report.md +0 -159
  101. package/build/skills/feature-tracker/start.md +0 -93
@@ -1,105 +0,0 @@
1
- # Creating a New Feature
2
-
3
- Create a feature when starting new work that doesn't have an existing feature to resume.
4
-
5
- ## Basic Command
6
-
7
- ```bash
8
- ranger feature create "<feature name>" \
9
- --description "<comprehensive description>" \
10
- --checklist "<item 1>,<item 2>,<item 3>"
11
- ```
12
-
13
- ## What Gets Captured Automatically
14
-
15
- When you create a feature, the CLI automatically captures:
16
- - **Git repo URL** - From `git remote get-url origin`
17
- - **Git branch** - From current branch name
18
- - **Created timestamp**
19
- - **Your organization** - From API token
20
-
21
- This enables `ranger feature resume` to find features by git context later.
22
-
23
- ## Writing Good Descriptions
24
-
25
- **The key to good feature tracking is DETAILED DESCRIPTIONS.**
26
-
27
- ### Feature Names
28
-
29
- Should be clear and specific:
30
-
31
- | Bad | Good |
32
- |-----|------|
33
- | "User auth" | "User Authentication System" |
34
- | "Fix bug" | "Fix Payment Processing Timeout" |
35
- | "New feature" | "Dashboard Analytics Widget" |
36
-
37
- ### Feature Descriptions
38
-
39
- Should explain the full scope and goals:
40
-
41
- **Bad:**
42
- ```
43
- Login, signup, password reset
44
- ```
45
-
46
- **Good:**
47
- ```
48
- Complete user authentication system for the web app. Includes:
49
- - Secure login with email/password
50
- - New user signup with email verification
51
- - Password reset flow with secure tokens
52
- All forms should have proper validation, loading states, and error handling.
53
- ```
54
-
55
- ### Checklist Items
56
-
57
- Should explain what success looks like - these descriptions become the default task for browser verification:
58
-
59
- **Bad:**
60
- ```
61
- Login works
62
- ```
63
-
64
- **Good:**
65
- ```
66
- User can log in with valid email and password - sees loading state during submission - redirects to dashboard on success - sees appropriate error message for invalid credentials
67
- ```
68
-
69
- ## Complete Example
70
-
71
- ```bash
72
- ranger feature create "User Authentication" \
73
- --description "Complete user authentication system for the web app. Includes secure login with email/password, new user signup with email verification, and password reset flow. All forms should have proper validation, loading states, and error handling." \
74
- --checklist "User can log in with valid email and password - sees loading state during submission - redirects to dashboard on success - sees appropriate error message for invalid credentials,User can sign up with email and password - receives verification email - can verify email via link - account is created and user is logged in,User can request password reset - receives reset email with secure link - can set new password - can log in with new password"
75
- ```
76
-
77
- ## Output
78
-
79
- ```
80
- Creating feature...
81
-
82
- ✅ Feature created: feat_01abc123
83
-
84
- 🔄 User Authentication (feat_01abc123)
85
- Status: in_progress
86
- Description: Complete user authentication system...
87
- Repository: github.com/myorg/myapp
88
- Branch: feature/auth
89
- Created: 1/21/2026, 10:30:00 AM
90
-
91
- Checklist:
92
- 1. ⬜ User can log in with valid email and password...
93
- 2. ⬜ User can sign up with email and password...
94
- 3. ⬜ User can request password reset...
95
-
96
- ➡️ Set as active feature
97
- ```
98
-
99
- ## After Creation
100
-
101
- The new feature is automatically set as the active feature. You can now:
102
-
103
- 1. Start implementing the first checklist item
104
- 2. Add more items with `ranger feature manage --add "..."`
105
- 3. View status with `ranger feature show`
@@ -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
- ```
@@ -1,159 +0,0 @@
1
- # Generating Reports
2
-
3
- When a feature is complete (or you need a status update), generate a report with all verification evidence.
4
-
5
- ## Basic Command
6
-
7
- ```bash
8
- ranger feature report
9
- ```
10
-
11
- This creates a markdown file at `.ranger/reports/<feature-id>.md`
12
-
13
- ## Options
14
-
15
- ```bash
16
- # Report for active feature
17
- ranger feature report
18
-
19
- # Report for specific feature
20
- ranger feature report feat_abc123
21
-
22
- # Custom output path
23
- ranger feature report --output ./my-report.md
24
- ```
25
-
26
- ## When to Generate Reports
27
-
28
- 1. **Feature complete** - All items verified, share with stakeholders
29
- 2. **Progress update** - Show what's done and what's remaining
30
- 3. **Blocked status** - Document what's blocking and what evidence exists
31
- 4. **Handoff** - Another developer taking over the feature
32
-
33
- ## Report Contents
34
-
35
- The generated report includes:
36
-
37
- ### Header
38
- - Feature name and ID
39
- - Current status (in_progress, completed, blocked)
40
- - Git context (repo, branch)
41
- - Created/completed dates
42
-
43
- ### Description
44
- - Full feature description
45
-
46
- ### Checklist Progress
47
- - Each item with status emoji
48
- - Verification details (date, session ID)
49
- - Agent summary of what was verified
50
- - Links to Playwright traces
51
- - Blocked/canceled reasons
52
-
53
- ### Blocking Issues
54
- - Summary of any blocked items
55
- - Reasons and context
56
-
57
- ### Verification Sessions
58
- - Table of all browser sessions
59
- - Item, status, duration, date
60
-
61
- ## Example Report
62
-
63
- ```markdown
64
- # Feature Report: User Authentication
65
-
66
- **Status:** ✅ Completed
67
- **Created:** Jan 20, 2026
68
- **Completed:** Jan 21, 2026
69
- **Repository:** github.com/myorg/myapp
70
- **Branch:** feature/auth
71
-
72
- ## Description
73
-
74
- Complete user authentication system including login, signup, and password reset.
75
-
76
- ## Checklist Progress (3/3 verified)
77
-
78
- ### ✅ User can log in with valid credentials
79
-
80
- - **Verified:** Jan 20, 2026
81
- - **Session:** bsess_abc123
82
- - **Summary:** Successfully logged in with test credentials, verified redirect to dashboard
83
- - **Trace:** [View in Playwright](https://trace.playwright.dev/?trace=...)
84
-
85
- ### ✅ User can sign up with new account
86
-
87
- - **Verified:** Jan 21, 2026
88
- - **Session:** bsess_def456
89
- - **Summary:** Created new account, verified welcome email received
90
- - **Trace:** [View in Playwright](https://trace.playwright.dev/?trace=...)
91
-
92
- ### ✅ User can reset password
93
-
94
- - **Verified:** Jan 21, 2026
95
- - **Session:** bsess_ghi789
96
- - **Summary:** Completed password reset flow, verified new password works
97
- - **Trace:** [View in Playwright](https://trace.playwright.dev/?trace=...)
98
-
99
- ## Blocking Issues
100
-
101
- None
102
-
103
- ## All Verification Sessions
104
-
105
- | Session | Item | Status | Duration | Date |
106
- |---------|------|--------|----------|------|
107
- | bsess_abc123 | Login | ✅ completed | 45s | Jan 20, 2026 |
108
- | bsess_def456 | Signup | ✅ completed | 62s | Jan 21, 2026 |
109
- | bsess_ghi789 | Reset | ✅ completed | 38s | Jan 21, 2026 |
110
- ```
111
-
112
- ## Sharing with Users
113
-
114
- After generating a report, share it with the user:
115
-
116
- ```
117
- Feature complete! All 3 checklist items verified.
118
-
119
- **Report:** [.ranger/reports/feat_abc123.md](.ranger/reports/feat_abc123.md)
120
-
121
- Summary:
122
- - ✅ Login flow - working correctly
123
- - ✅ Signup flow - creates account and sends verification email
124
- - ✅ Password reset - full flow working
125
-
126
- Each item has a Playwright trace link for detailed session replay.
127
- ```
128
-
129
- ## Playwright Traces
130
-
131
- Each verification session records a Playwright trace. Click the trace link to:
132
- - See every browser action
133
- - View screenshots at each step
134
- - Inspect network requests
135
- - Debug any issues
136
-
137
- Traces are hosted and accessible via the link in the report.
138
-
139
- ## Partial Reports
140
-
141
- You can generate reports even when a feature isn't complete:
142
-
143
- ```bash
144
- $ ranger feature report
145
-
146
- Generating report...
147
- ✅ Report generated: .ranger/reports/feat_abc123.md
148
- ```
149
-
150
- The report will show:
151
- - Which items are verified
152
- - Which are pending
153
- - Which are blocked (with reasons)
154
- - Progress percentage
155
-
156
- This is useful for:
157
- - Status updates to stakeholders
158
- - Documenting progress before a break
159
- - Showing what's blocking completion
@@ -1,93 +0,0 @@
1
- # Starting a Feature Session
2
-
3
- At the START of any coding session, check if there's an existing feature to resume before creating a new one.
4
-
5
- ## Resume by Git Context
6
-
7
- Features are automatically associated with the git repo and branch when created. Use `resume` to find and activate a matching feature:
8
-
9
- ```bash
10
- ranger feature resume
11
- ```
12
-
13
- This command:
14
- 1. Detects current git repo URL and branch name
15
- 2. Searches for in-progress features matching that context
16
- 3. If found, sets it as the active feature
17
- 4. If multiple matches, prompts you to select one
18
-
19
- ## Check Current Status
20
-
21
- After resuming (or if you already have an active feature):
22
-
23
- ```bash
24
- ranger feature show
25
- ```
26
-
27
- This displays:
28
- - Feature name and ID
29
- - Current status (in_progress, blocked, completed)
30
- - Git context (repo, branch)
31
- - Checklist with item statuses
32
-
33
- ## List Active Features
34
-
35
- If `resume` doesn't find a match, list all active features:
36
-
37
- ```bash
38
- ranger feature list --status in_progress
39
- ```
40
-
41
- Or list features for the current branch specifically:
42
-
43
- ```bash
44
- ranger feature list --current-branch
45
- ```
46
-
47
- ## Set Active Feature Manually
48
-
49
- If you know the feature ID:
50
-
51
- ```bash
52
- ranger feature use feat_abc123
53
- ```
54
-
55
- ## Decision Tree
56
-
57
- ```
58
- Start Session
59
-
60
-
61
- ranger feature resume
62
-
63
- ├── Feature found? ──YES──▶ ranger feature show
64
- │ │
65
- │ ▼
66
- │ Continue working
67
-
68
- └── No match? ──▶ ranger feature list --status in_progress
69
-
70
- ├── Found one? ──▶ ranger feature use <id>
71
-
72
- └── None exist? ──▶ See create.md
73
- ```
74
-
75
- ## Example
76
-
77
- ```bash
78
- # Start of session
79
- $ ranger feature resume
80
-
81
- Searching for features matching: github.com/myorg/myapp / feature/auth...
82
-
83
- ✅ Resumed feature: User Authentication (feat_abc123)
84
-
85
- 🔄 User Authentication (feat_abc123)
86
- Status: in_progress
87
- Branch: feature/auth
88
-
89
- Checklist:
90
- 1. ✅ Login flow works
91
- 2. ⬜ Signup creates account
92
- 3. ⬜ Password reset sends email
93
- ```