@ranger-testing/ranger-cli 1.0.14 → 1.1.1
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 +87 -324
- package/build/cli.js +76 -64
- 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/clean.js +1 -1
- package/build/commands/clean.js.map +1 -1
- package/build/commands/dataMcpServer.js +1 -1
- package/build/commands/feature.js +94 -34
- package/build/commands/feature.js.map +1 -1
- package/build/commands/hook.js +28 -0
- package/build/commands/hook.js.map +1 -0
- package/build/commands/hooks/disable.js +30 -0
- package/build/commands/hooks/disable.js.map +1 -0
- package/build/commands/hooks/enable.js +48 -0
- package/build/commands/hooks/enable.js.map +1 -0
- package/build/commands/hooks/exitPlanMode.js +35 -0
- package/build/commands/hooks/exitPlanMode.js.map +1 -0
- package/build/commands/hooks/index.js +11 -0
- package/build/commands/hooks/index.js.map +1 -0
- package/build/commands/hooks/output.js +53 -0
- package/build/commands/hooks/output.js.map +1 -0
- package/build/commands/hooks/planReminder.js +46 -0
- package/build/commands/hooks/planReminder.js.map +1 -0
- package/build/commands/hooks/planStart.js +30 -0
- package/build/commands/hooks/planStart.js.map +1 -0
- package/build/commands/hooks/postEdit.js +43 -0
- package/build/commands/hooks/postEdit.js.map +1 -0
- package/build/commands/hooks/preCompact.js +30 -0
- package/build/commands/hooks/preCompact.js.map +1 -0
- package/build/commands/hooks/sessionEnd.js +21 -0
- package/build/commands/hooks/sessionEnd.js.map +1 -0
- package/build/commands/hooks/sessionStart.js +75 -0
- package/build/commands/hooks/sessionStart.js.map +1 -0
- package/build/commands/hooks/stopHook.js +54 -0
- package/build/commands/hooks/stopHook.js.map +1 -0
- package/build/commands/index.js +1 -3
- package/build/commands/index.js.map +1 -1
- package/build/commands/skillup.js +36 -70
- 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 +17 -21
- package/build/commands/status.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/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudePlugin.js +85 -0
- package/build/commands/utils/claudePlugin.js.map +1 -0
- package/build/commands/utils/cliSecret.js +1 -1
- package/build/commands/utils/desirePathLog.js +133 -0
- package/build/commands/utils/desirePathLog.js.map +1 -0
- package/build/commands/utils/featureApi.js +23 -0
- package/build/commands/utils/featureApi.js.map +1 -1
- package/build/commands/utils/git.js +44 -0
- package/build/commands/utils/git.js.map +1 -0
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/sessionCache.js +282 -0
- package/build/commands/utils/sessionCache.js.map +1 -0
- package/build/commands/utils/skillContent.js +3 -3
- package/build/commands/utils/skillContent.js.map +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/skills.js.map +1 -1
- package/build/commands/verifyFeature.js +32 -3
- package/build/commands/verifyFeature.js.map +1 -1
- package/build/commands/verifyInBrowser.js +1 -1
- package/build/skills/ranger/SKILL.md +170 -0
- package/build/skills/ranger/create.md +151 -0
- package/build/skills/ranger/start.md +122 -0
- package/build/skills/{feature-tracker → ranger}/verify.md +48 -3
- package/package.json +2 -3
- package/build/commands/postEditHook.js +0 -25
- package/build/commands/postEditHook.js.map +0 -1
- package/build/commands/preCompactHook.js +0 -85
- package/build/commands/preCompactHook.js.map +0 -1
- package/build/commands/sessionStartHook.js +0 -64
- package/build/commands/sessionStartHook.js.map +0 -1
- package/build/commands/utils/mcpConfig.js +0 -1
- package/build/commands/utils/mcpConfig.js.map +0 -1
- package/build/skills/feature-tracker/SKILL.md +0 -163
- package/build/skills/feature-tracker/create.md +0 -114
- package/build/skills/feature-tracker/report.md +0 -159
- package/build/skills/feature-tracker/start.md +0 -93
|
@@ -1,114 +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 "<description>" \
|
|
10
|
-
-c "<checklist item 1>" \
|
|
11
|
-
-c "<checklist item 2>"
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
Use multiple `-c` flags for multiple checklist items. Each item can contain commas.
|
|
15
|
-
|
|
16
|
-
## What Gets Captured Automatically
|
|
17
|
-
|
|
18
|
-
When you create a feature, the CLI automatically captures:
|
|
19
|
-
- **Git repo URL** - From `git remote get-url origin`
|
|
20
|
-
- **Git branch** - From current branch name
|
|
21
|
-
- **Created timestamp**
|
|
22
|
-
- **Your organization** - From API token
|
|
23
|
-
|
|
24
|
-
This enables `ranger feature resume` to find features by git context later.
|
|
25
|
-
|
|
26
|
-
## Writing Good Checklist Items
|
|
27
|
-
|
|
28
|
-
**OPTIMIZE FOR FAST FEEDBACK: Keep checklists as small as possible.**
|
|
29
|
-
|
|
30
|
-
### Key Principles
|
|
31
|
-
|
|
32
|
-
1. **Prefer 1 checklist item** when possible - this gets you feedback fastest
|
|
33
|
-
2. **Each item should be a full user flow**, not a single UI element
|
|
34
|
-
3. **Only add more items for larger features** that genuinely have multiple distinct flows
|
|
35
|
-
|
|
36
|
-
### What Makes a Good Checklist Item
|
|
37
|
-
|
|
38
|
-
Each checklist item should describe the **complete user journey** to verify the feature:
|
|
39
|
-
|
|
40
|
-
**Bad - too granular:**
|
|
41
|
-
```
|
|
42
|
-
Button appears on page
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
**Good - full user flow:**
|
|
46
|
-
```
|
|
47
|
-
Navigate to Settings page, see the new Export button, click it, and verify the export dialog opens with CSV and PDF options
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
**Bad - broken into too many items:**
|
|
51
|
-
```
|
|
52
|
-
1. Login button exists
|
|
53
|
-
2. Login form appears
|
|
54
|
-
3. Login submits correctly
|
|
55
|
-
4. Redirects to dashboard
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
**Good - single flow:**
|
|
59
|
-
```
|
|
60
|
-
Go to login page, enter valid credentials, submit, and verify redirect to dashboard with user info displayed
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
### When to Use Multiple Items
|
|
64
|
-
|
|
65
|
-
Only split into multiple items when the feature has **genuinely distinct user flows**:
|
|
66
|
-
|
|
67
|
-
- Adding a button? **1 item** - navigate, find it, use it, verify result
|
|
68
|
-
- Building login + signup? **2 items** - each is a separate flow
|
|
69
|
-
- Full CRUD feature? **3-4 items** - create, read, update, delete are distinct
|
|
70
|
-
|
|
71
|
-
## Complete Example
|
|
72
|
-
|
|
73
|
-
**Simple feature (1 item):**
|
|
74
|
-
```bash
|
|
75
|
-
ranger feature create "Add Export Button" \
|
|
76
|
-
--description "Add export functionality to the reports page" \
|
|
77
|
-
-c "Navigate to Reports page, click the new Export button, select CSV format, and verify the file downloads"
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
**Larger feature (multiple items):**
|
|
81
|
-
```bash
|
|
82
|
-
ranger feature create "User Authentication" \
|
|
83
|
-
--description "Login and signup flows for the web app" \
|
|
84
|
-
-c "Go to login page and sign in with valid credentials, verify redirect to dashboard" \
|
|
85
|
-
-c "Go to signup page and create new account, verify welcome email and successful login"
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
## Output
|
|
89
|
-
|
|
90
|
-
```
|
|
91
|
-
Creating feature...
|
|
92
|
-
|
|
93
|
-
✅ Feature created: feat_01abc123
|
|
94
|
-
|
|
95
|
-
🔄 User Authentication (feat_01abc123)
|
|
96
|
-
Status: in_progress
|
|
97
|
-
Description: Login and signup flows...
|
|
98
|
-
Repository: github.com/myorg/myapp
|
|
99
|
-
Branch: feature/auth
|
|
100
|
-
Created: 1/21/2026, 10:30:00 AM
|
|
101
|
-
|
|
102
|
-
Checklist:
|
|
103
|
-
1. ⬜ Go to login page and sign in...
|
|
104
|
-
2. ⬜ Go to signup page and create...
|
|
105
|
-
|
|
106
|
-
➡️ Set as active feature
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
## After Creation
|
|
110
|
-
|
|
111
|
-
The new feature is automatically set as the active feature. You can now:
|
|
112
|
-
|
|
113
|
-
1. Start implementing the first checklist item
|
|
114
|
-
2. View status with `ranger feature show`
|
|
@@ -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 Features
|
|
34
|
-
|
|
35
|
-
If `resume` doesn't find a match, list all features:
|
|
36
|
-
|
|
37
|
-
```bash
|
|
38
|
-
ranger feature list
|
|
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
|
|
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
|
-
```
|