ragtime-cli 0.2.17__py3-none-any.whl → 0.3.0__py3-none-any.whl
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.
- {ragtime_cli-0.2.17.dist-info → ragtime_cli-0.3.0.dist-info}/METADATA +79 -28
- ragtime_cli-0.3.0.dist-info/RECORD +16 -0
- src/cli.py +1021 -111
- src/config.py +17 -1
- src/indexers/docs.py +86 -8
- src/mcp_server.py +26 -3
- ragtime_cli-0.2.17.dist-info/RECORD +0 -26
- src/commands/audit.md +0 -151
- src/commands/create-pr.md +0 -389
- src/commands/generate-docs.md +0 -325
- src/commands/handoff.md +0 -176
- src/commands/import-docs.md +0 -259
- src/commands/pr-graduate.md +0 -192
- src/commands/recall.md +0 -175
- src/commands/remember.md +0 -168
- src/commands/save.md +0 -10
- src/commands/start.md +0 -206
- {ragtime_cli-0.2.17.dist-info → ragtime_cli-0.3.0.dist-info}/WHEEL +0 -0
- {ragtime_cli-0.2.17.dist-info → ragtime_cli-0.3.0.dist-info}/entry_points.txt +0 -0
- {ragtime_cli-0.2.17.dist-info → ragtime_cli-0.3.0.dist-info}/licenses/LICENSE +0 -0
- {ragtime_cli-0.2.17.dist-info → ragtime_cli-0.3.0.dist-info}/top_level.txt +0 -0
src/commands/recall.md
DELETED
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Search the local memory system for knowledge
|
|
3
|
-
allowed-arguments: search query and optional filters (e.g., /recall auth patterns, /recall --namespace app)
|
|
4
|
-
allowed-tools: mcp__ragtime__search, mcp__ragtime__list_memories, AskUserQuestion
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Recall
|
|
8
|
-
|
|
9
|
-
Search the local memory system for stored knowledge.
|
|
10
|
-
|
|
11
|
-
**Usage:**
|
|
12
|
-
- `/recall auth patterns` - Search for auth-related patterns
|
|
13
|
-
- `/recall #301 decisions` - Decisions related to issue #301
|
|
14
|
-
- `/recall --namespace team` - All team conventions
|
|
15
|
-
- `/recall` - Interactive search mode
|
|
16
|
-
|
|
17
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════
|
|
18
|
-
CUSTOMIZABLE: Modify query parsing, add project-specific filters,
|
|
19
|
-
adjust result formatting, etc.
|
|
20
|
-
═══════════════════════════════════════════════════════════════════════════ -->
|
|
21
|
-
|
|
22
|
-
## Query Syntax
|
|
23
|
-
|
|
24
|
-
```
|
|
25
|
-
/recall [modifiers] <search terms> [filters]
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
**Modifiers:**
|
|
29
|
-
- `all:` - Include all confidence levels (default: high + medium only)
|
|
30
|
-
- `pre-merge:` - Include unmerged branch memories from teammates
|
|
31
|
-
|
|
32
|
-
**Filters:**
|
|
33
|
-
- `#301` or `--issue 301` - Filter by issue number
|
|
34
|
-
- `@auth` or `--component auth` - Filter by component
|
|
35
|
-
- `--type decision` - Filter by memory type
|
|
36
|
-
- `--namespace app` - Filter by namespace
|
|
37
|
-
- `--status active` - Filter by status
|
|
38
|
-
|
|
39
|
-
<!-- CUSTOMIZABLE: Add your own filter shortcuts -->
|
|
40
|
-
|
|
41
|
-
## Step 1: Parse the Query
|
|
42
|
-
|
|
43
|
-
**If `$ARGUMENTS` provided:**
|
|
44
|
-
- Parse modifiers, search terms, and filters
|
|
45
|
-
|
|
46
|
-
**If no arguments:**
|
|
47
|
-
- Ask: "What are you looking for?"
|
|
48
|
-
- Optionally ask for filters
|
|
49
|
-
|
|
50
|
-
## Step 2: Build the Search
|
|
51
|
-
|
|
52
|
-
Construct filters based on parsed query:
|
|
53
|
-
|
|
54
|
-
- Default: exclude `status: "abandoned"` and `confidence: "low"`
|
|
55
|
-
- If `all:` modifier: include everything
|
|
56
|
-
- If `pre-merge:` modifier: include `status: "pre-merge"`
|
|
57
|
-
|
|
58
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════
|
|
59
|
-
RAGTIME CORE - DO NOT MODIFY
|
|
60
|
-
These commands must match ragtime's expected format.
|
|
61
|
-
═══════════════════════════════════════════════════════════════════════════ -->
|
|
62
|
-
|
|
63
|
-
Execute the search:
|
|
64
|
-
|
|
65
|
-
```
|
|
66
|
-
mcp__ragtime__search:
|
|
67
|
-
query: "{search terms}"
|
|
68
|
-
namespace: "{namespace if specified}"
|
|
69
|
-
type: "{type if specified}"
|
|
70
|
-
component: "{component if specified}"
|
|
71
|
-
limit: 20
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
For listing without semantic search:
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
mcp__ragtime__list_memories:
|
|
78
|
-
namespace: "{namespace}"
|
|
79
|
-
type: "{type}"
|
|
80
|
-
status: "{status}"
|
|
81
|
-
component: "{component}"
|
|
82
|
-
limit: 20
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════ -->
|
|
86
|
-
|
|
87
|
-
## Step 3: Present Results
|
|
88
|
-
|
|
89
|
-
Format results clearly:
|
|
90
|
-
|
|
91
|
-
```
|
|
92
|
-
## 🧠 Recall: "{search terms}"
|
|
93
|
-
|
|
94
|
-
Found {count} memories:
|
|
95
|
-
|
|
96
|
-
### High Confidence
|
|
97
|
-
───────────────────────────────────────────
|
|
98
|
-
|
|
99
|
-
**Auth uses JWT with 15-min expiry**
|
|
100
|
-
- Type: architecture | Component: auth
|
|
101
|
-
- Added: 2026-01-15 | Source: pr-graduate
|
|
102
|
-
|
|
103
|
-
**Sessions stored in Redis, not cookies**
|
|
104
|
-
- Type: decision | Component: auth
|
|
105
|
-
- Added: 2026-01-10 | Source: meeting
|
|
106
|
-
|
|
107
|
-
### Medium Confidence
|
|
108
|
-
───────────────────────────────────────────
|
|
109
|
-
|
|
110
|
-
**Consider rate limiting on auth endpoints**
|
|
111
|
-
- Type: pattern | Component: auth
|
|
112
|
-
- Added: 2026-01-20 | Source: remember
|
|
113
|
-
|
|
114
|
-
───────────────────────────────────────────
|
|
115
|
-
|
|
116
|
-
Showing {count} of {total} results.
|
|
117
|
-
Refine with: /recall auth --type decision
|
|
118
|
-
Include low confidence: /recall all: auth
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
### Pre-Merge Results
|
|
122
|
-
|
|
123
|
-
If pre-merge memories are found, show them separately with a warning:
|
|
124
|
-
|
|
125
|
-
```
|
|
126
|
-
### ⚠️ Pre-Merge (from teammate branches)
|
|
127
|
-
───────────────────────────────────────────
|
|
128
|
-
|
|
129
|
-
**New auth middleware pattern** (pre-merge)
|
|
130
|
-
- From: origin/jm/feature-auth
|
|
131
|
-
- Type: architecture | Component: auth
|
|
132
|
-
- ⚠️ Not yet merged - may change
|
|
133
|
-
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
## Step 4: Offer Actions
|
|
137
|
-
|
|
138
|
-
```
|
|
139
|
-
What would you like to do?
|
|
140
|
-
|
|
141
|
-
1. **Use this context** - I'll incorporate these into our work
|
|
142
|
-
2. **Refine search** - Try different filters
|
|
143
|
-
3. **View details** - See full content of a specific memory
|
|
144
|
-
4. **Done** - Just wanted to see what we know
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
## Example Queries
|
|
148
|
-
|
|
149
|
-
| Query | What it finds |
|
|
150
|
-
|-------|---------------|
|
|
151
|
-
| `/recall auth` | All auth-related memories (high/medium confidence) |
|
|
152
|
-
| `/recall #301 decisions` | Decisions made during issue #301 |
|
|
153
|
-
| `/recall --namespace team` | All team conventions |
|
|
154
|
-
| `/recall --component shifts --type architecture` | Shifts architecture |
|
|
155
|
-
| `/recall pre-merge: auth` | Include teammate WIP auth knowledge |
|
|
156
|
-
| `/recall all: validation` | Include low-confidence validation memories |
|
|
157
|
-
|
|
158
|
-
## No Results Handling
|
|
159
|
-
|
|
160
|
-
```
|
|
161
|
-
No memories found for "{query}" with current filters.
|
|
162
|
-
|
|
163
|
-
Suggestions:
|
|
164
|
-
- Try broader terms: /recall {simpler query}
|
|
165
|
-
- Include all confidence: /recall all: {query}
|
|
166
|
-
- Check different namespace: /recall --namespace team {query}
|
|
167
|
-
- Include pre-merge: /recall pre-merge: {query}
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
## Notes
|
|
171
|
-
|
|
172
|
-
- Results are sorted by relevance (semantic similarity)
|
|
173
|
-
- Default excludes low confidence and abandoned memories
|
|
174
|
-
- Use `all:` modifier to see everything
|
|
175
|
-
- Pre-merge memories are from `(unmerged)` folders synced from teammate branches
|
src/commands/remember.md
DELETED
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Capture ad-hoc knowledge to local memory mid-session
|
|
3
|
-
allowed-arguments: the thing to remember (e.g., /remember auth uses 15-min JWT expiry)
|
|
4
|
-
allowed-tools: Bash, AskUserQuestion, mcp__ragtime__remember
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Remember
|
|
8
|
-
|
|
9
|
-
Capture ad-hoc knowledge to the local memory system during a session.
|
|
10
|
-
|
|
11
|
-
**Usage:**
|
|
12
|
-
- `/remember auth uses 15-minute JWT expiry` - Quick capture with content
|
|
13
|
-
- `/remember` - Interactive mode, asks what to remember
|
|
14
|
-
|
|
15
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════
|
|
16
|
-
CUSTOMIZABLE: Modify prompts, add project-specific types, adjust the
|
|
17
|
-
approval flow, etc. Everything above the RAGTIME CORE section can be
|
|
18
|
-
tailored to your project's needs.
|
|
19
|
-
═══════════════════════════════════════════════════════════════════════════ -->
|
|
20
|
-
|
|
21
|
-
## When to Use
|
|
22
|
-
|
|
23
|
-
Use `/remember` when you discover something worth preserving:
|
|
24
|
-
- Architecture patterns ("the validation pipeline works like X")
|
|
25
|
-
- Gotchas ("don't use Y because Z")
|
|
26
|
-
- Decisions made during discussion
|
|
27
|
-
- Team preferences discovered
|
|
28
|
-
- Anything you'd want future sessions to know
|
|
29
|
-
|
|
30
|
-
**Don't use for:**
|
|
31
|
-
- Temporary debug notes (those belong in handoff.md)
|
|
32
|
-
- Personal todos (use GitHub issues)
|
|
33
|
-
- Things that will be captured by `/pr-graduate` anyway
|
|
34
|
-
|
|
35
|
-
## Step 1: Capture the Knowledge
|
|
36
|
-
|
|
37
|
-
**If `$ARGUMENTS` provided:**
|
|
38
|
-
- Use it as the memory content
|
|
39
|
-
|
|
40
|
-
**If no arguments:**
|
|
41
|
-
- Ask: "What would you like me to remember?"
|
|
42
|
-
|
|
43
|
-
## Step 2: Determine Memory Type
|
|
44
|
-
|
|
45
|
-
Ask the user:
|
|
46
|
-
|
|
47
|
-
```
|
|
48
|
-
What type of knowledge is this?
|
|
49
|
-
|
|
50
|
-
1. 🏗️ **Architecture** - How something works in the codebase
|
|
51
|
-
2. 📋 **Convention** - Team rule or standard practice
|
|
52
|
-
3. ⚠️ **Gotcha** - Warning or "don't do this"
|
|
53
|
-
4. 🎯 **Decision** - Why we chose X over Y
|
|
54
|
-
5. 💡 **Pattern** - Reusable approach for common problem
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
<!-- CUSTOMIZABLE: Add your own types here if needed -->
|
|
58
|
-
|
|
59
|
-
## Step 3: Determine Scope
|
|
60
|
-
|
|
61
|
-
```
|
|
62
|
-
Where does this knowledge apply?
|
|
63
|
-
|
|
64
|
-
1. 🌐 **Global** - Applies everywhere
|
|
65
|
-
2. 📦 **Component** - Specific area (auth, claims, shifts, etc.)
|
|
66
|
-
3. 📄 **File** - Specific file or folder
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
If Component or File, ask which one.
|
|
70
|
-
|
|
71
|
-
<!-- CUSTOMIZABLE: Add your own components here -->
|
|
72
|
-
|
|
73
|
-
## Step 4: Determine Confidence
|
|
74
|
-
|
|
75
|
-
```
|
|
76
|
-
How confident are you in this knowledge?
|
|
77
|
-
|
|
78
|
-
1. ✅ **High** - Verified, tested, or from authoritative source
|
|
79
|
-
2. ⚡ **Medium** - Observed it working, but not extensively tested
|
|
80
|
-
3. 🤔 **Low** - Best guess or inference, should be validated
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
## Step 5: Determine Namespace
|
|
84
|
-
|
|
85
|
-
Based on the memory type, suggest the appropriate namespace:
|
|
86
|
-
|
|
87
|
-
| Type | Default Namespace |
|
|
88
|
-
|------|------------------|
|
|
89
|
-
| Architecture | `app` |
|
|
90
|
-
| Convention | `team` |
|
|
91
|
-
| Gotcha | `app` |
|
|
92
|
-
| Decision | `app` (or `branch-{branch}` if WIP) |
|
|
93
|
-
| Pattern | `app` |
|
|
94
|
-
|
|
95
|
-
Ask: "Store in `{suggested namespace}`? Or somewhere else?"
|
|
96
|
-
|
|
97
|
-
<!-- CUSTOMIZABLE: Adjust routing rules for your project -->
|
|
98
|
-
|
|
99
|
-
## Step 6: Confirm and Store
|
|
100
|
-
|
|
101
|
-
Present the memory for confirmation:
|
|
102
|
-
|
|
103
|
-
```
|
|
104
|
-
## Memory to Store
|
|
105
|
-
|
|
106
|
-
**Content:** {the knowledge}
|
|
107
|
-
**Type:** {type}
|
|
108
|
-
**Namespace:** {namespace}
|
|
109
|
-
**Confidence:** {confidence}
|
|
110
|
-
**Scope:** {scope}
|
|
111
|
-
**Component:** {if applicable}
|
|
112
|
-
|
|
113
|
-
Store this? (yes/edit/cancel)
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════
|
|
117
|
-
RAGTIME CORE - DO NOT MODIFY
|
|
118
|
-
These commands must match ragtime's expected format.
|
|
119
|
-
Changing these may break storage/retrieval.
|
|
120
|
-
═══════════════════════════════════════════════════════════════════════════ -->
|
|
121
|
-
|
|
122
|
-
Once confirmed, store using ragtime MCP:
|
|
123
|
-
|
|
124
|
-
```
|
|
125
|
-
mcp__ragtime__remember:
|
|
126
|
-
content: "{the knowledge}"
|
|
127
|
-
namespace: "{namespace}"
|
|
128
|
-
type: "{architecture|convention|decision|pattern}"
|
|
129
|
-
component: "{component if applicable}"
|
|
130
|
-
confidence: "{high|medium|low}"
|
|
131
|
-
confidence_reason: "manual"
|
|
132
|
-
source: "remember"
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════ -->
|
|
136
|
-
|
|
137
|
-
## Step 7: Confirm Storage
|
|
138
|
-
|
|
139
|
-
```
|
|
140
|
-
✅ Remembered!
|
|
141
|
-
|
|
142
|
-
"{abbreviated content}..."
|
|
143
|
-
|
|
144
|
-
Stored to: {namespace}
|
|
145
|
-
Confidence: {confidence}
|
|
146
|
-
Query with: ragtime search "{topic}" --namespace {namespace}
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
## Quick Mode
|
|
150
|
-
|
|
151
|
-
For rapid capture, you can specify everything inline:
|
|
152
|
-
|
|
153
|
-
```
|
|
154
|
-
/remember [high] auth uses 15-min JWT expiry #auth #architecture
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
Parsing:
|
|
158
|
-
- `[high]` → confidence
|
|
159
|
-
- `#auth` → component
|
|
160
|
-
- `#architecture` → type
|
|
161
|
-
- Rest → content
|
|
162
|
-
|
|
163
|
-
## Notes
|
|
164
|
-
|
|
165
|
-
- Memories stored via `/remember` get `source: "remember"` and default to medium confidence unless specified
|
|
166
|
-
- If on a feature branch, consider whether this is branch-specific or general knowledge
|
|
167
|
-
- For decisions that might be reversed, use low confidence
|
|
168
|
-
- Team conventions should be discussed before storing to `team` namespace
|
src/commands/save.md
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Save current progress (alias for /handoff)
|
|
3
|
-
allowed-tools: Bash, Read, Write, mcp__ragtime__remember
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Save
|
|
7
|
-
|
|
8
|
-
Alias for `/handoff`. See that command for full documentation.
|
|
9
|
-
|
|
10
|
-
Run `/handoff` to save current context to branch memory.
|
src/commands/start.md
DELETED
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Start or resume work on a GitHub issue
|
|
3
|
-
allowed-arguments: issue number (e.g., /start 230)
|
|
4
|
-
allowed-tools: Bash, Read, Write, mcp__ragtime__search, mcp__ragtime__remember, AskUserQuestion
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Start or Resume Work
|
|
8
|
-
|
|
9
|
-
Smart command that starts fresh OR resumes existing work depending on context.
|
|
10
|
-
|
|
11
|
-
**Usage:**
|
|
12
|
-
- `/start 230` - Start or resume work on issue #230
|
|
13
|
-
- `/start` - Show your assigned issues and prompt for selection
|
|
14
|
-
|
|
15
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════
|
|
16
|
-
CUSTOMIZABLE: Adjust branch naming conventions, issue lookup, workflow
|
|
17
|
-
steps, etc.
|
|
18
|
-
═══════════════════════════════════════════════════════════════════════════ -->
|
|
19
|
-
|
|
20
|
-
## Step 1: Determine the Issue
|
|
21
|
-
|
|
22
|
-
**If an issue number was provided as an argument**, use it directly.
|
|
23
|
-
|
|
24
|
-
**If no argument was provided**, check current state and prompt:
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
BRANCH=$(git branch --show-current)
|
|
28
|
-
ISSUE_NUM=$(echo "$BRANCH" | grep -oE '[0-9]+' | head -1)
|
|
29
|
-
DEVNAME=$(gh api user --jq '.login' 2>/dev/null || git config user.name | tr ' ' '-' | tr '[:upper:]' '[:lower:]')
|
|
30
|
-
|
|
31
|
-
echo "Current branch: $BRANCH"
|
|
32
|
-
echo "Developer: $DEVNAME"
|
|
33
|
-
|
|
34
|
-
if [ -n "$ISSUE_NUM" ]; then
|
|
35
|
-
echo "Already on issue branch: #$ISSUE_NUM"
|
|
36
|
-
else
|
|
37
|
-
echo ""
|
|
38
|
-
echo "=== Your Assigned Issues ==="
|
|
39
|
-
gh issue list --assignee @me --state open
|
|
40
|
-
fi
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
If not on an issue branch and no argument provided, ask: **"Which issue would you like to start?"**
|
|
44
|
-
|
|
45
|
-
## Step 2: Switch to the Branch
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
ISSUE_NUM={issue_number}
|
|
49
|
-
|
|
50
|
-
# Check if branch exists
|
|
51
|
-
EXISTING_BRANCH=$(git branch -a | grep -E "/$ISSUE_NUM-|/$ISSUE_NUM$" | head -1 | tr -d ' *')
|
|
52
|
-
|
|
53
|
-
if [ -n "$EXISTING_BRANCH" ]; then
|
|
54
|
-
echo "Found existing branch: $EXISTING_BRANCH"
|
|
55
|
-
git checkout "$EXISTING_BRANCH"
|
|
56
|
-
else
|
|
57
|
-
# Create new branch
|
|
58
|
-
ISSUE_TITLE=$(gh issue view $ISSUE_NUM --json title --jq '.title' | tr '[:upper:]' '[:lower:]' | tr ' ' '-' | tr -cd 'a-z0-9-' | head -c 40)
|
|
59
|
-
NEW_BRANCH="$DEVNAME/$ISSUE_NUM-$ISSUE_TITLE"
|
|
60
|
-
echo "Creating new branch: $NEW_BRANCH"
|
|
61
|
-
git checkout -b "$NEW_BRANCH" main
|
|
62
|
-
fi
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
<!-- CUSTOMIZABLE: Adjust branch naming convention for your project -->
|
|
66
|
-
|
|
67
|
-
## Step 3: Check for Existing Context
|
|
68
|
-
|
|
69
|
-
```bash
|
|
70
|
-
BRANCH=$(git branch --show-current)
|
|
71
|
-
BRANCH_SLUG=$(echo "$BRANCH" | tr '/' '-')
|
|
72
|
-
CONTEXT_FILE=".claude/memory/branches/$BRANCH_SLUG/context.md"
|
|
73
|
-
|
|
74
|
-
if [ -f "$CONTEXT_FILE" ]; then
|
|
75
|
-
echo "✓ Found branch context"
|
|
76
|
-
cat "$CONTEXT_FILE"
|
|
77
|
-
else
|
|
78
|
-
echo "No existing context found"
|
|
79
|
-
fi
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
### Decision Tree:
|
|
83
|
-
|
|
84
|
-
**If context.md exists:**
|
|
85
|
-
→ **RESUME MODE** - Go to Step 4a
|
|
86
|
-
|
|
87
|
-
**If NO context.md:**
|
|
88
|
-
→ **FRESH START MODE** - Go to Step 4b
|
|
89
|
-
|
|
90
|
-
## Step 4a: Resume Mode
|
|
91
|
-
|
|
92
|
-
Load and present the existing context:
|
|
93
|
-
|
|
94
|
-
1. Read the branch's `context.md`
|
|
95
|
-
2. Display the current state and what's left
|
|
96
|
-
3. Ask: "Ready to continue? What would you like to work on first?"
|
|
97
|
-
|
|
98
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════
|
|
99
|
-
RAGTIME CORE - DO NOT MODIFY
|
|
100
|
-
═══════════════════════════════════════════════════════════════════════════ -->
|
|
101
|
-
|
|
102
|
-
Also load any branch memories:
|
|
103
|
-
|
|
104
|
-
```
|
|
105
|
-
mcp__ragtime__search:
|
|
106
|
-
query: "decisions patterns architecture"
|
|
107
|
-
namespace: "branch-{branch}"
|
|
108
|
-
limit: 10
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════ -->
|
|
112
|
-
|
|
113
|
-
Present:
|
|
114
|
-
|
|
115
|
-
```
|
|
116
|
-
## Resuming Issue #{issue_num}
|
|
117
|
-
|
|
118
|
-
### Current State:
|
|
119
|
-
{from context.md}
|
|
120
|
-
|
|
121
|
-
### What's Left:
|
|
122
|
-
{from context.md}
|
|
123
|
-
|
|
124
|
-
### Branch Memories:
|
|
125
|
-
{list of decisions/patterns stored}
|
|
126
|
-
|
|
127
|
-
Ready to continue? What would you like to work on first?
|
|
128
|
-
```
|
|
129
|
-
|
|
130
|
-
## Step 4b: Fresh Start Mode
|
|
131
|
-
|
|
132
|
-
Create a new implementation plan:
|
|
133
|
-
|
|
134
|
-
1. Fetch issue details:
|
|
135
|
-
```bash
|
|
136
|
-
gh issue view "$ISSUE_NUM" --json title,body,labels,assignees
|
|
137
|
-
```
|
|
138
|
-
|
|
139
|
-
2. Parse the GitHub issue (title, body, labels)
|
|
140
|
-
|
|
141
|
-
3. Identify which parts of the app this touches
|
|
142
|
-
|
|
143
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════
|
|
144
|
-
RAGTIME CORE - DO NOT MODIFY
|
|
145
|
-
═══════════════════════════════════════════════════════════════════════════ -->
|
|
146
|
-
|
|
147
|
-
4. Search for relevant context:
|
|
148
|
-
|
|
149
|
-
**App knowledge (architecture for those areas):**
|
|
150
|
-
```
|
|
151
|
-
mcp__ragtime__search:
|
|
152
|
-
query: "{component or feature area}"
|
|
153
|
-
namespace: "app"
|
|
154
|
-
limit: 10
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
**Team conventions:**
|
|
158
|
-
```
|
|
159
|
-
mcp__ragtime__search:
|
|
160
|
-
query: "conventions standards"
|
|
161
|
-
namespace: "team"
|
|
162
|
-
limit: 10
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
<!-- ═══════════════════════════════════════════════════════════════════════════ -->
|
|
166
|
-
|
|
167
|
-
5. Create an implementation plan based on:
|
|
168
|
-
- Issue requirements
|
|
169
|
-
- Codebase knowledge from memories
|
|
170
|
-
- Team conventions
|
|
171
|
-
|
|
172
|
-
6. Present the plan and ask if the user wants to proceed or adjust
|
|
173
|
-
|
|
174
|
-
## Step 5: Save Initial Context (Fresh Start only)
|
|
175
|
-
|
|
176
|
-
**After user approves the plan**, save it to context.md:
|
|
177
|
-
|
|
178
|
-
```bash
|
|
179
|
-
BRANCH=$(git branch --show-current)
|
|
180
|
-
BRANCH_SLUG=$(echo "$BRANCH" | tr '/' '-')
|
|
181
|
-
mkdir -p ".claude/memory/branches/$BRANCH_SLUG"
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
Write the context.md with the plan (see `/handoff` for format).
|
|
185
|
-
|
|
186
|
-
## Step 6: Ready to Work
|
|
187
|
-
|
|
188
|
-
```
|
|
189
|
-
Ready to work on Issue #{issue_num}!
|
|
190
|
-
|
|
191
|
-
What would you like to tackle first?
|
|
192
|
-
```
|
|
193
|
-
|
|
194
|
-
## Syncing Teammate Context
|
|
195
|
-
|
|
196
|
-
If you need context from a teammate's branch:
|
|
197
|
-
|
|
198
|
-
```bash
|
|
199
|
-
# Fetch their branch
|
|
200
|
-
git fetch origin jm/feature-auth
|
|
201
|
-
|
|
202
|
-
# Sync their memories
|
|
203
|
-
ragtime sync origin/jm/feature-auth
|
|
204
|
-
```
|
|
205
|
-
|
|
206
|
-
This creates `branches/jm-feature-auth(unmerged)/` with their context and memories, searchable but gitignored.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|