up-cli 0.2.0__tar.gz → 0.5.0__tar.gz

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 (168) hide show
  1. up_cli-0.5.0/.claude/context_budget.json.migrated +12 -0
  2. {up_cli-0.2.0 → up_cli-0.5.0}/.claude/settings.local.json +2 -1
  3. up_cli-0.5.0/.claude/skills/docs-system/SKILL.md +22 -0
  4. up_cli-0.5.0/.claude/skills/learning-system/SKILL.md +204 -0
  5. up_cli-0.5.0/.claude/skills/learning-system/file_learnings/2026-02-04_git_for_ai_vibe_coding.json +41 -0
  6. up_cli-0.5.0/.claude/skills/learning-system/file_learnings/2026-02-04_git_for_ai_vibe_coding.md +114 -0
  7. up_cli-0.5.0/.claude/skills/learning-system/insights/2026-02-04_git_for_ai_vibe_coding_insights.md +69 -0
  8. up_cli-0.5.0/.claude/skills/learning-system/insights/2026-02-05-implementation-review.md +119 -0
  9. up_cli-0.5.0/.claude/skills/learning-system/insights/gap-analysis.md +230 -0
  10. up_cli-0.5.0/.claude/skills/learning-system/insights/patterns.md +146 -0
  11. up_cli-0.5.0/.claude/skills/learning-system/prd.json +714 -0
  12. up_cli-0.5.0/.claude/skills/learning-system/prd_template.json +21 -0
  13. up_cli-0.5.0/.claude/skills/learning-system/project_analyzer.py +253 -0
  14. up_cli-0.5.0/.claude/skills/learning-system/project_profile.json +21 -0
  15. up_cli-0.5.0/.claude/skills/learning-system/research/2026-02-04-git-design-philosophy-scaling.md +529 -0
  16. up_cli-0.5.0/.claude/skills/learning-system/sources.json +23 -0
  17. up_cli-0.5.0/.claude/skills/product-loop/SKILL.md +206 -0
  18. up_cli-0.5.0/.claude/skills/product-loop/circuit_breaker.py +146 -0
  19. up_cli-0.5.0/.claude/skills/product-loop/state_manager.py +148 -0
  20. up_cli-0.5.0/.cursor/rules/docs.md +68 -0
  21. up_cli-0.5.0/.cursor/rules/main.md +38 -0
  22. up_cli-0.5.0/.cursor/rules/python.md +72 -0
  23. up_cli-0.5.0/.cursor/rules/tests.md +65 -0
  24. up_cli-0.5.0/.cursor/rules/typescript.md +73 -0
  25. up_cli-0.5.0/.cursorrules +39 -0
  26. {up_cli-0.2.0 → up_cli-0.5.0}/.gitignore +7 -2
  27. up_cli-0.5.0/.loop_state.json.migrated +37 -0
  28. up_cli-0.5.0/CLAUDE.md +133 -0
  29. up_cli-0.5.0/Git for AI Vibe Coding.txt +283 -0
  30. {up_cli-0.2.0 → up_cli-0.5.0}/PKG-INFO +160 -15
  31. {up_cli-0.2.0 → up_cli-0.5.0}/Readme.md +157 -13
  32. up_cli-0.5.0/docs/CONTEXT.md +89 -0
  33. up_cli-0.5.0/docs/CURSOR_HISTORY_EXTRACTION.md +446 -0
  34. up_cli-0.5.0/docs/DOCS_SYSTEM_ANALYSIS.md +254 -0
  35. up_cli-0.5.0/docs/INDEX.md +42 -0
  36. up_cli-0.5.0/docs/MULTI_AGENT_SKILLS_DESIGN.md +130 -0
  37. up_cli-0.5.0/docs/PYPI_PUBLISHING.md +145 -0
  38. up_cli-0.5.0/docs/README.md +26 -0
  39. up_cli-0.5.0/docs/architecture/INTEGRATED_LIFECYCLE.md +391 -0
  40. up_cli-0.5.0/docs/architecture/MULTI_WORKTREE_EXECUTION.md +396 -0
  41. up_cli-0.5.0/docs/architecture/README.md +3 -0
  42. up_cli-0.5.0/docs/changelog/README.md +23 -0
  43. up_cli-0.5.0/docs/decisions/README.md +5 -0
  44. up_cli-0.5.0/docs/development/README.md +3 -0
  45. up_cli-0.5.0/docs/features/README.md +3 -0
  46. up_cli-0.5.0/docs/guides/CURSOR_CLAUDE_INTEGRATION.md +290 -0
  47. up_cli-0.5.0/docs/guides/README.md +3 -0
  48. up_cli-0.5.0/docs/handoff/LATEST.md +163 -0
  49. up_cli-0.5.0/docs/handoff/README.md +5 -0
  50. up_cli-0.5.0/docs/learnings/README.md +5 -0
  51. up_cli-0.5.0/docs/operations/README.md +3 -0
  52. up_cli-0.5.0/docs/releases/README.md +5 -0
  53. up_cli-0.5.0/docs/research/README.md +3 -0
  54. up_cli-0.5.0/docs/reviews/README.md +5 -0
  55. up_cli-0.5.0/docs/roadmap/IMPROVEMENT_PLAN.md +438 -0
  56. up_cli-0.5.0/docs/roadmap/README.md +35 -0
  57. up_cli-0.5.0/docs/roadmap/phases/PHASE_1_FOUNDATION.md +23 -0
  58. up_cli-0.5.0/docs/roadmap/vision/PRODUCT_VISION.md +28 -0
  59. up_cli-0.5.0/docs/tests/README.md +5 -0
  60. up_cli-0.5.0/docs/todo/README.md +3 -0
  61. {up_cli-0.2.0 → up_cli-0.5.0}/pyproject.toml +3 -2
  62. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/__init__.py +1 -1
  63. up_cli-0.5.0/src/up/ai_cli.py +229 -0
  64. up_cli-0.5.0/src/up/cli.py +99 -0
  65. up_cli-0.5.0/src/up/commands/agent.py +521 -0
  66. up_cli-0.5.0/src/up/commands/bisect.py +343 -0
  67. up_cli-0.5.0/src/up/commands/branch.py +350 -0
  68. up_cli-0.5.0/src/up/commands/init.py +260 -0
  69. up_cli-0.5.0/src/up/commands/learn.py +1741 -0
  70. up_cli-0.5.0/src/up/commands/memory.py +545 -0
  71. up_cli-0.5.0/src/up/commands/provenance.py +267 -0
  72. up_cli-0.5.0/src/up/commands/review.py +239 -0
  73. up_cli-0.5.0/src/up/commands/start.py +1124 -0
  74. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/commands/status.py +173 -18
  75. up_cli-0.5.0/src/up/commands/sync.py +317 -0
  76. up_cli-0.5.0/src/up/commands/vibe.py +304 -0
  77. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/context.py +64 -10
  78. up_cli-0.5.0/src/up/core/__init__.py +69 -0
  79. up_cli-0.5.0/src/up/core/checkpoint.py +479 -0
  80. up_cli-0.5.0/src/up/core/provenance.py +364 -0
  81. up_cli-0.5.0/src/up/core/state.py +678 -0
  82. up_cli-0.5.0/src/up/events.py +512 -0
  83. up_cli-0.5.0/src/up/git/__init__.py +37 -0
  84. up_cli-0.5.0/src/up/git/utils.py +270 -0
  85. up_cli-0.5.0/src/up/git/worktree.py +331 -0
  86. up_cli-0.5.0/src/up/learn/__init__.py +155 -0
  87. up_cli-0.5.0/src/up/learn/analyzer.py +227 -0
  88. up_cli-0.5.0/src/up/learn/plan.py +374 -0
  89. up_cli-0.5.0/src/up/learn/research.py +511 -0
  90. up_cli-0.5.0/src/up/learn/utils.py +117 -0
  91. up_cli-0.5.0/src/up/memory.py +1096 -0
  92. up_cli-0.5.0/src/up/parallel.py +551 -0
  93. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/templates/config/__init__.py +1 -1
  94. up_cli-0.5.0/src/up/templates/docs/SKILL.md +28 -0
  95. up_cli-0.5.0/src/up/templates/docs/__init__.py +341 -0
  96. up_cli-0.5.0/src/up/templates/docs/standards/HEADERS.md +24 -0
  97. up_cli-0.5.0/src/up/templates/docs/standards/STRUCTURE.md +18 -0
  98. up_cli-0.5.0/src/up/templates/docs/standards/TEMPLATES.md +19 -0
  99. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/templates/loop/__init__.py +92 -32
  100. up_cli-0.5.0/src/up/ui/__init__.py +14 -0
  101. up_cli-0.5.0/src/up/ui/loop_display.py +650 -0
  102. up_cli-0.5.0/src/up/ui/theme.py +137 -0
  103. up_cli-0.5.0/tests/test_placeholder.py +9 -0
  104. up_cli-0.2.0/src/up/cli.py +0 -54
  105. up_cli-0.2.0/src/up/commands/init.py +0 -71
  106. up_cli-0.2.0/src/up/commands/learn.py +0 -381
  107. up_cli-0.2.0/src/up/commands/start.py +0 -414
  108. up_cli-0.2.0/tests/test_cursor_history.py +0 -328
  109. {up_cli-0.2.0 → up_cli-0.5.0}/scripts/export_claude_history.py +0 -0
  110. {up_cli-0.2.0 → up_cli-0.5.0}/scripts/export_cursor_history.py +0 -0
  111. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/SKILL.md +0 -0
  112. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/standards/HEADERS.md +0 -0
  113. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/CONTEXT.md +0 -0
  114. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/STRUCTURE.md +0 -0
  115. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/architecture_README.md +0 -0
  116. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/changelog_README.md +0 -0
  117. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/decisions_README.md +0 -0
  118. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/development_README.md +0 -0
  119. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/features_README.md +0 -0
  120. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/guides_README.md +0 -0
  121. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/handoff_README.md +0 -0
  122. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/learnings_README.md +0 -0
  123. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/operations_README.md +0 -0
  124. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/releases_README.md +0 -0
  125. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/research_README.md +0 -0
  126. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/reviews_README.md +0 -0
  127. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/roadmap_README.md +0 -0
  128. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/tests_README.md +0 -0
  129. {up_cli-0.2.0 → up_cli-0.5.0}/skills/docs-system/templates/todo_README.md +0 -0
  130. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/README.md +0 -0
  131. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/SKILL.md +0 -0
  132. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/analysis_engine.py +0 -0
  133. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/insights/gap-analysis.md +0 -0
  134. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/insights/patterns.md +0 -0
  135. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/learn.sh +0 -0
  136. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/planning_engine.py +0 -0
  137. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/prd.json +0 -0
  138. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/project_analyzer.py +0 -0
  139. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/research/2026-01-28-function-design-patterns.md +0 -0
  140. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/research/2026-01-28-taint-analysis.md +0 -0
  141. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/research/2026-01-28-web-hunt-dast.md +0 -0
  142. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/research_agent.py +0 -0
  143. {up_cli-0.2.0 → up_cli-0.5.0}/skills/learning-system/sources.json +0 -0
  144. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/LOOP_INSTRUCTIONS.md +0 -0
  145. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/RALPH_HYBRID_README.md +0 -0
  146. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/README.md +0 -0
  147. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/SKILL.md +0 -0
  148. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/SKILL_OLD.md +0 -0
  149. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/autonomous_agent.py +0 -0
  150. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/ralph_circuit_breaker.py +0 -0
  151. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/ralph_hybrid.sh +0 -0
  152. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/ralph_rate_limiter.py +0 -0
  153. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/ralph_response_analyzer.py +0 -0
  154. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/ralph_state.py +0 -0
  155. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/run-loop-advanced.sh +0 -0
  156. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/run-loop.sh +0 -0
  157. {up_cli-0.2.0 → up_cli-0.5.0}/skills/product-loop/start-autonomous.sh +0 -0
  158. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/commands/__init__.py +0 -0
  159. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/commands/dashboard.py +0 -0
  160. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/commands/new.py +0 -0
  161. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/commands/summarize.py +0 -0
  162. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/summarizer.py +0 -0
  163. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/templates/__init__.py +0 -0
  164. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/templates/docs_skill/__init__.py +0 -0
  165. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/templates/learn/__init__.py +0 -0
  166. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/templates/mcp/__init__.py +0 -0
  167. {up_cli-0.2.0 → up_cli-0.5.0}/src/up/templates/projects/__init__.py +0 -0
  168. {up_cli-0.2.0 → up_cli-0.5.0}/tests/__init__.py +0 -0
@@ -0,0 +1,12 @@
1
+ {
2
+ "budget": 100000,
3
+ "total_tokens": 0,
4
+ "remaining_tokens": 100000,
5
+ "usage_percent": 0.0,
6
+ "status": "OK",
7
+ "warning_threshold": 0.8,
8
+ "critical_threshold": 0.9,
9
+ "session_start": "2026-02-04T18:17:59.380676",
10
+ "entry_count": 0,
11
+ "entries": []
12
+ }
@@ -10,7 +10,8 @@
10
10
  "Bash(pip show:*)",
11
11
  "Bash(git add:*)",
12
12
  "Bash(git commit:*)",
13
- "WebFetch(domain:img.iami.xyz)"
13
+ "WebFetch(domain:img.iami.xyz)",
14
+ "Bash(python:*)"
14
15
  ]
15
16
  }
16
17
  }
@@ -0,0 +1,22 @@
1
+ ---
2
+ name: docs
3
+ description: Documentation system with standards
4
+ user-invocable: true
5
+ allowed-tools: Read, Write, Edit, Glob
6
+ ---
7
+
8
+ # Docs Skill
9
+
10
+ ## Commands
11
+
12
+ - `/docs new [type]` - Create document
13
+ - `/docs status` - Show status
14
+
15
+ ## Types
16
+
17
+ | Type | Folder |
18
+ |------|--------|
19
+ | feature | features/ |
20
+ | arch | architecture/ |
21
+ | changelog | changelog/ |
22
+ | guide | guides/ |
@@ -0,0 +1,204 @@
1
+ ---
2
+ name: learn
3
+ description: Research and create improvement plans
4
+ user-invocable: true
5
+ allowed-tools: Read, Write, Bash, WebFetch, WebSearch, Glob, Grep
6
+ version: "1.0.0"
7
+ min-claude-version: "2024.01"
8
+ ---
9
+
10
+ # Learning System
11
+
12
+ Research best practices from open source projects and blogs, then create actionable improvement plans.
13
+
14
+ ## Workflow
15
+
16
+ ```
17
+ RESEARCH → ANALYZE → COMPARE → PLAN → IMPLEMENT
18
+ ```
19
+
20
+ ## Commands
21
+
22
+ | Command | Description |
23
+ |---------|-------------|
24
+ | `/learn auto` | Auto-analyze project and generate insights |
25
+ | `/learn research [topic]` | Research a specific topic |
26
+ | `/learn analyze` | Analyze all research files |
27
+ | `/learn compare` | Compare findings with current code |
28
+ | `/learn plan` | Generate improvement PRD |
29
+ | `/learn full` | Run complete pipeline |
30
+
31
+ ## Phase 1: RESEARCH
32
+
33
+ ### Default Sources
34
+
35
+ Read `sources.json` for configured sources. Research from:
36
+
37
+ **Open Source Projects:**
38
+ - semgrep/semgrep - Pattern-based code analysis
39
+ - github/codeql - Query-based analysis
40
+ - High-quality projects in your tech stack
41
+
42
+ **Blogs & Documentation:**
43
+ - Official documentation for your frameworks
44
+ - Engineering blogs from top companies
45
+
46
+ ### Actions
47
+
48
+ 1. Use `WebSearch` to find recent articles/releases
49
+ 2. Use `WebFetch` to read project READMEs and docs
50
+ 3. Extract architecture patterns
51
+ 4. Note innovative approaches
52
+
53
+ ### Output
54
+
55
+ Save findings to `research/YYYY-MM-DD-topic.md`:
56
+
57
+ ```markdown
58
+ # Research: [Topic Name]
59
+
60
+ **Created**: YYYY-MM-DD
61
+ **Status**: 📋 Reference
62
+ **Source**: [Project/Blog Name]
63
+
64
+ ---
65
+
66
+ ## Key Findings
67
+
68
+ 1. Finding 1
69
+ 2. Finding 2
70
+
71
+ ## Applicable Patterns
72
+
73
+ - Pattern A: Description
74
+ - Pattern B: Description
75
+
76
+ ## Code Examples
77
+
78
+ ```language
79
+ // example code
80
+ ```
81
+ ```
82
+
83
+ ---
84
+
85
+ ## Phase 2: ANALYZE
86
+
87
+ Read all research files and extract:
88
+
89
+ 1. **Design Patterns** - Architectural approaches
90
+ 2. **Key Innovations** - Novel techniques
91
+ 3. **Best Practices** - Industry standards
92
+ 4. **Reusable Components** - Code/concepts to adopt
93
+
94
+ ### Output
95
+
96
+ Update `insights/patterns.md` with extracted patterns.
97
+
98
+ ---
99
+
100
+ ## Phase 3: COMPARE
101
+
102
+ Compare insights with current implementation:
103
+
104
+ 1. Read project's main documentation (CLAUDE.md, README.md)
105
+ 2. Scan source code for current patterns
106
+ 3. Identify gaps and opportunities
107
+
108
+ ### Output
109
+
110
+ Update `insights/gap-analysis.md` with findings.
111
+
112
+ ---
113
+
114
+ ## Phase 4: PLAN
115
+
116
+ Create improvement plan as PRD:
117
+
118
+ 1. Prioritize gaps by impact/effort
119
+ 2. Create user stories with acceptance criteria
120
+ 3. Order by dependencies
121
+ 4. Save as `prd.json`
122
+
123
+ ### PRD Schema
124
+
125
+ ```json
126
+ {
127
+ "project": "Project Name",
128
+ "branchName": "feature/improvements",
129
+ "description": "Brief description",
130
+ "userStories": [
131
+ {
132
+ "id": "US-001",
133
+ "title": "Story title",
134
+ "description": "Description",
135
+ "acceptanceCriteria": ["Criterion 1", "Criterion 2"],
136
+ "priority": 1,
137
+ "effort": "low|medium|high",
138
+ "passes": false
139
+ }
140
+ ]
141
+ }
142
+ ```
143
+
144
+ ---
145
+
146
+ ## Phase 5: IMPLEMENT
147
+
148
+ Hand off to Product Loop:
149
+
150
+ ```
151
+ /product-loop
152
+ ```
153
+
154
+ The product loop will:
155
+ 1. Read `prd.json` generated by learning system
156
+ 2. Execute tasks with circuit breaker protection
157
+ 3. Checkpoint before risky changes
158
+ 4. Track progress
159
+
160
+ ---
161
+
162
+ ## AUTO Mode
163
+
164
+ When `/learn auto` is invoked:
165
+
166
+ 1. Scan the codebase to detect technologies and patterns
167
+ 2. Identify improvement areas automatically
168
+ 3. Generate research topics based on findings
169
+ 4. Research each topic (limit: 3 topics)
170
+ 5. Continue with analyze → compare → plan
171
+
172
+ ### Auto Mode Output
173
+
174
+ ```
175
+ Project Profile:
176
+ - Languages: Python, TypeScript
177
+ - Frameworks: FastAPI, React
178
+ - Patterns: Repository Pattern, React Hooks
179
+ - Improvements: add-caching, optimize-queries
180
+ - Topics: FastAPI caching best practices, React performance
181
+ ```
182
+
183
+ ---
184
+
185
+ ## State Files
186
+
187
+ | File | Purpose |
188
+ |------|---------|
189
+ | `sources.json` | Research sources config |
190
+ | `research/*.md` | Raw research notes |
191
+ | `insights/patterns.md` | Extracted patterns |
192
+ | `insights/gap-analysis.md` | Gap analysis |
193
+ | `prd.json` | Generated improvement plan |
194
+
195
+ ---
196
+
197
+ ## Context Budget
198
+
199
+ This skill is context-aware:
200
+ - Estimates token usage before reading files
201
+ - Warns when approaching budget limits
202
+ - Suggests summarization when needed
203
+
204
+ Check budget: Read `.claude/context_budget.json`
@@ -0,0 +1,41 @@
1
+ {
2
+ "source_file": "Git for AI Vibe Coding.txt",
3
+ "source_path": "/Users/mour/AI/up-cli/Git for AI Vibe Coding.txt",
4
+ "file_type": ".txt",
5
+ "key_concepts": [
6
+ "!/bin/bash",
7
+ "Save as test_regression.sh and make executable (chmod +x)",
8
+ "1. Build the project. If the build fails, we can't test.",
9
+ "We return 125 to tell git bisect to 'skip' this commit.",
10
+ "2. Run the specific test case that reproduces the bug.",
11
+ "Do NOT run the full suite; it's too slow. Focus on the regression.",
12
+ "3. Return exit code to git bisect",
13
+ "0 = Good (Bug not present)",
14
+ "1 = Bad (Bug present)",
15
+ ".cursorrules",
16
+ "Add to.zshrc or.bashrc"
17
+ ],
18
+ "patterns_found": [
19
+ "Design pattern mentioned",
20
+ "Best practice documented",
21
+ "Architecture concept",
22
+ "Workflow described",
23
+ "Convention defined",
24
+ "Standard referenced"
25
+ ],
26
+ "best_practices": [
27
+ "Constraint Example: \"Before applying changes to more than 3 files, propose a plan.\"",
28
+ "Constraint Example: \"Never delete comments marked // CRITICAL.\"",
29
+ "The Cost: This can lead to \"commit explosion.\" A feature that takes a human 3 commits might take Aid",
30
+ "Create branch feat/login-page from main.",
31
+ "Run git worktree add.worktrees/login-page feat/login-page.",
32
+ "Copy necessary .env files or context configs to the new directory.",
33
+ "Open a new terminal tab/pane in that directory.",
34
+ "git bisect start",
35
+ "git bisect bad (Current broken state)",
36
+ "git bisect good <commit-hash-from-yesterday>"
37
+ ],
38
+ "code_snippets": [],
39
+ "action_items": [],
40
+ "ai_analysis": "I'll analyze this document on Git strategies for AI-driven \"vibe coding\" development.\n\n## Key Concepts\n\n1. **Vibe Coding Paradigm** - Development where intent orchestration replaces manual coding; developer acts as architect directing AI builders\n\n2. **Pure vs Responsible Vibe Coding** - Pure is exploratory/rapid prototyping; Responsible maintains code ownership with rigorous review\n\n3. **The \"70% Problem\"** - AI gets you 70% there instantly, but final 30% of integration/debugging takes exponentially longer\n\n4. **\"Paint Sprayer\" Effect** - AI generates code as \"black boxes\" vs the \"white box\" understanding of manual coding\n\n5. **Version Loop Tightening** - Traditional \"Code \u2192 Test \u2192 Commit\" becomes \"Prompt \u2192 Generate \u2192 Visual Diff \u2192 Reset/Commit\"\n\n6. **Git as \"Ripcord\"** - Commit before every significant prompt; `git reset --hard` immediately on flawed generation\n\n7. **Provenance Obscurity** - `git blame` shows who prompted, but the reasoning/prompt context is lost\n\n8. **Contextual Overwrite Risk** - AI may delete critical edge-case handling outside its context window\n\n## Patterns\n\n| Pattern | Description |\n|---------|-------------|\n| **Commit-Before-Prompt** | Always commit clean state before AI generation |\n| **Hard Reset Recovery** | Reset immediately on bad generation vs \"prompting out\" |\n| **Git Worktrees** | Parallel development with multiple AI agents |\n| **Specification-Driven** | Tools like Copilot Workspace use specs before code |\n| **Composer Model** | IDE-native AI editing multiple files simultaneously |\n\n## Best Practices\n\n1. **Never \"prompt your way out\"** of bad generation - reset and refine the prompt instead\n2. **Use `.cursorrules`** (or equivalent) as a gatekeeper for AI behavior\n3. **Review every diff** in responsible mode - treat AI as pair programmer, not autonomous agent\n4. **Commit atomically** - small, logical commits for easier bisect debugging\n5. **Preserve prompt context** - document the \"why\" alongside commits for future debugging\n6. **Avoid \"Apply All\" blindly** - scrutinize multi-file changes before accepting\n7. **Use worktrees for parallel agents** - prevents agents from overwriting each other\n\n## Implementation Ideas\n\n### For up-cli\n\n1. **Add pre-prompt checkpoint command** - Auto-commit or stash before AI operations\n2. **Prompt logging** - Store prompts alongside commits for provenance\n3. **Worktree orchestration** - Manage parallel agent branches with automatic merge conflict detection\n4. **\"Doom loop\" detection** - Warn when multiple failed prompts suggest need for reset\n5. **Diff review workflow** - Integrate visual diff step before accepting AI changes\n6. **Context budget awareness** - Track AI context window usage to prevent contextual overwrite\n\n### Workflow Integration\n\n```\n# Proposed vibe coding safety loop\n1. git commit -m \"checkpoint: before AI prompt\"\n2. Run AI generation\n3. Review diff (mandatory)\n4. Accept \u2192 commit with prompt context\n OR Reject \u2192 git reset --hard HEAD\n```"
41
+ }
@@ -0,0 +1,114 @@
1
+ # Learnings from: Git for AI Vibe Coding.txt
2
+
3
+ **Analyzed**: 2026-02-04
4
+ **Source**: `/Users/mour/AI/up-cli/Git for AI Vibe Coding.txt`
5
+ **Type**: .txt
6
+ **Method**: AI-powered
7
+
8
+ ## AI Analysis
9
+
10
+ I'll analyze this document on Git strategies for AI-driven "vibe coding" development.
11
+
12
+ ## Key Concepts
13
+
14
+ 1. **Vibe Coding Paradigm** - Development where intent orchestration replaces manual coding; developer acts as architect directing AI builders
15
+
16
+ 2. **Pure vs Responsible Vibe Coding** - Pure is exploratory/rapid prototyping; Responsible maintains code ownership with rigorous review
17
+
18
+ 3. **The "70% Problem"** - AI gets you 70% there instantly, but final 30% of integration/debugging takes exponentially longer
19
+
20
+ 4. **"Paint Sprayer" Effect** - AI generates code as "black boxes" vs the "white box" understanding of manual coding
21
+
22
+ 5. **Version Loop Tightening** - Traditional "Code → Test → Commit" becomes "Prompt → Generate → Visual Diff → Reset/Commit"
23
+
24
+ 6. **Git as "Ripcord"** - Commit before every significant prompt; `git reset --hard` immediately on flawed generation
25
+
26
+ 7. **Provenance Obscurity** - `git blame` shows who prompted, but the reasoning/prompt context is lost
27
+
28
+ 8. **Contextual Overwrite Risk** - AI may delete critical edge-case handling outside its context window
29
+
30
+ ## Patterns
31
+
32
+ | Pattern | Description |
33
+ |---------|-------------|
34
+ | **Commit-Before-Prompt** | Always commit clean state before AI generation |
35
+ | **Hard Reset Recovery** | Reset immediately on bad generation vs "prompting out" |
36
+ | **Git Worktrees** | Parallel development with multiple AI agents |
37
+ | **Specification-Driven** | Tools like Copilot Workspace use specs before code |
38
+ | **Composer Model** | IDE-native AI editing multiple files simultaneously |
39
+
40
+ ## Best Practices
41
+
42
+ 1. **Never "prompt your way out"** of bad generation - reset and refine the prompt instead
43
+ 2. **Use `.cursorrules`** (or equivalent) as a gatekeeper for AI behavior
44
+ 3. **Review every diff** in responsible mode - treat AI as pair programmer, not autonomous agent
45
+ 4. **Commit atomically** - small, logical commits for easier bisect debugging
46
+ 5. **Preserve prompt context** - document the "why" alongside commits for future debugging
47
+ 6. **Avoid "Apply All" blindly** - scrutinize multi-file changes before accepting
48
+ 7. **Use worktrees for parallel agents** - prevents agents from overwriting each other
49
+
50
+ ## Implementation Ideas
51
+
52
+ ### For up-cli
53
+
54
+ 1. **Add pre-prompt checkpoint command** - Auto-commit or stash before AI operations
55
+ 2. **Prompt logging** - Store prompts alongside commits for provenance
56
+ 3. **Worktree orchestration** - Manage parallel agent branches with automatic merge conflict detection
57
+ 4. **"Doom loop" detection** - Warn when multiple failed prompts suggest need for reset
58
+ 5. **Diff review workflow** - Integrate visual diff step before accepting AI changes
59
+ 6. **Context budget awareness** - Track AI context window usage to prevent contextual overwrite
60
+
61
+ ### Workflow Integration
62
+
63
+ ```
64
+ # Proposed vibe coding safety loop
65
+ 1. git commit -m "checkpoint: before AI prompt"
66
+ 2. Run AI generation
67
+ 3. Review diff (mandatory)
68
+ 4. Accept → commit with prompt context
69
+ OR Reject → git reset --hard HEAD
70
+ ```
71
+
72
+ ---
73
+
74
+ ## Key Concepts (Basic Extraction)
75
+
76
+ - !/bin/bash
77
+ - Save as test_regression.sh and make executable (chmod +x)
78
+ - 1. Build the project. If the build fails, we can't test.
79
+ - We return 125 to tell git bisect to 'skip' this commit.
80
+ - 2. Run the specific test case that reproduces the bug.
81
+ - Do NOT run the full suite; it's too slow. Focus on the regression.
82
+ - 3. Return exit code to git bisect
83
+ - 0 = Good (Bug not present)
84
+ - 1 = Bad (Bug present)
85
+ - .cursorrules
86
+ - Add to.zshrc or.bashrc
87
+
88
+ ## Patterns Found
89
+
90
+ - [ ] Design pattern mentioned
91
+ - [ ] Best practice documented
92
+ - [ ] Architecture concept
93
+ - [ ] Workflow described
94
+ - [ ] Convention defined
95
+ - [ ] Standard referenced
96
+
97
+ ## Best Practices
98
+
99
+ - [ ] Constraint Example: "Before applying changes to more than 3 files, propose a plan."
100
+ - [ ] Constraint Example: "Never delete comments marked // CRITICAL."
101
+ - [ ] The Cost: This can lead to "commit explosion." A feature that takes a human 3 commits might take Aid
102
+ - [ ] Create branch feat/login-page from main.
103
+ - [ ] Run git worktree add.worktrees/login-page feat/login-page.
104
+ - [ ] Copy necessary .env files or context configs to the new directory.
105
+ - [ ] Open a new terminal tab/pane in that directory.
106
+ - [ ] git bisect start
107
+ - [ ] git bisect bad (Current broken state)
108
+ - [ ] git bisect good <commit-hash-from-yesterday>
109
+
110
+ ## Action Items
111
+
112
+ - [ ] Review insights and apply to project
113
+ - [ ] Run `up learn analyze` to process all learnings
114
+ - [ ] Run `up learn plan` to generate improvement PRD
@@ -0,0 +1,69 @@
1
+ # Insights: 2026-02-04_git_for_ai_vibe_coding.md
2
+
3
+ **Analyzed**: 2026-02-04
4
+ **Source**: `/Users/mour/AI/up-cli/.claude/skills/learning-system/file_learnings/2026-02-04_git_for_ai_vibe_coding.md`
5
+ **Method**: claude CLI
6
+
7
+ ---
8
+
9
+ I'll analyze this research document and extract the key information.
10
+
11
+ ## Analysis: Git for AI Vibe Coding
12
+
13
+ ### 1. Key Patterns
14
+
15
+ | Pattern | Description |
16
+ |---------|-------------|
17
+ | **Commit-Before-Prompt** | Always commit clean state before AI generation |
18
+ | **Hard Reset Recovery** | Reset immediately on bad generation vs "prompting out" |
19
+ | **Git Worktrees** | Parallel development with multiple AI agents in separate directories |
20
+ | **Specification-Driven** | Use specs/rules files before code generation |
21
+ | **Composer Model** | IDE-native AI editing multiple files simultaneously |
22
+ | **Version Loop Tightening** | "Prompt → Generate → Visual Diff → Reset/Commit" replaces traditional cycle |
23
+
24
+ ### 2. Best Practices
25
+
26
+ 1. **Never "prompt your way out"** - Reset and refine prompt instead of iterating on bad code
27
+ 2. **Use `.cursorrules`/`CLAUDE.md`** - Gatekeeper files for AI behavior constraints
28
+ 3. **Review every diff** - Treat AI as pair programmer, not autonomous agent
29
+ 4. **Commit atomically** - Small, logical commits for easier `git bisect` debugging
30
+ 5. **Preserve prompt context** - Document the "why" alongside commits
31
+ 6. **Avoid "Apply All" blindly** - Scrutinize multi-file changes
32
+ 7. **Use worktrees for parallel agents** - Prevents agents from overwriting each other
33
+
34
+ ### 3. Gaps Identified
35
+
36
+ | Gap | Impact |
37
+ |-----|--------|
38
+ | **Provenance Obscurity** | `git blame` shows who prompted, but reasoning/prompt context is lost |
39
+ | **Contextual Overwrite Risk** | AI may delete critical edge-case handling outside its context window |
40
+ | **The "70% Problem"** | Final 30% of integration/debugging takes exponentially longer |
41
+ | **"Paint Sprayer" Effect** | AI generates "black boxes" vs "white box" understanding |
42
+ | **Commit Explosion** | Features that take humans 3 commits may take 30+ with AI |
43
+
44
+ ### 4. Action Items
45
+
46
+ **Immediate (for up-cli)**:
47
+ - [ ] Add pre-prompt checkpoint command (auto-commit/stash before AI ops)
48
+ - [ ] Implement "doom loop" detection (warn after multiple failed prompts)
49
+ - [ ] Add context budget tracking to prevent contextual overwrite
50
+
51
+ **Short-term**:
52
+ - [ ] Prompt logging - store prompts alongside commits for provenance
53
+ - [ ] Diff review workflow - integrate mandatory visual diff step
54
+ - [ ] Worktree orchestration - manage parallel agent branches
55
+
56
+ **Workflow to Implement**:
57
+ ```bash
58
+ # Vibe coding safety loop
59
+ 1. git commit -m "checkpoint: before AI prompt"
60
+ 2. Run AI generation
61
+ 3. Review diff (mandatory)
62
+ 4. Accept → commit with prompt context
63
+ OR Reject → git reset --hard HEAD
64
+ ```
65
+
66
+ **Constraint Examples for CLAUDE.md**:
67
+ - "Before applying changes to more than 3 files, propose a plan"
68
+ - "Never delete comments marked `// CRITICAL`"
69
+
@@ -0,0 +1,119 @@
1
+ # Implementation Review Analysis
2
+
3
+ **Created**: 2026-02-05
4
+ **Status**: 🔄 Active
5
+ **Source**: Self-analysis of up-cli codebase
6
+
7
+ ---
8
+
9
+ ## Summary
10
+
11
+ Analysis of the up-cli project after completing all 26 PRD tasks revealed several gaps between "marked complete" and "actually complete."
12
+
13
+ ## Key Findings
14
+
15
+ ### 1. Dead Code (Critical)
16
+
17
+ **File**: `src/up/commands/learn.py` (1741 lines)
18
+
19
+ - Task A-001 "Split learn.py into submodules" marked complete
20
+ - New modules created in `src/up/learn/`
21
+ - CLI updated to use new modules
22
+ - **OLD FILE NEVER DELETED**
23
+
24
+ **Impact**: 1741 lines of dead code, confusing for maintainers
25
+
26
+ ### 2. Zero Test Coverage (High)
27
+
28
+ | Category | Files | Tests | Coverage |
29
+ |----------|-------|-------|----------|
30
+ | Core (state, checkpoint, provenance) | 3 | 0 | 0% |
31
+ | Commands (start, vibe, agent, etc.) | 12 | 0 | 0% |
32
+ | Learn modules | 5 | 0 | 0% |
33
+ | Git utilities | 2 | 0 | 0% |
34
+
35
+ **Impact**: No confidence in code correctness, regressions likely
36
+
37
+ ### 3. Template-Code Drift (Medium)
38
+
39
+ Templates in `src/up/templates/` contain:
40
+ - Full `circuit_breaker.py` implementation
41
+ - Full `state_manager.py` implementation
42
+ - Both diverge from actual `src/up/core/` implementations
43
+
44
+ **Impact**: New projects get outdated code patterns
45
+
46
+ ### 4. Large Monolithic Files Remain (Medium)
47
+
48
+ | File | Lines | Should Be |
49
+ |------|-------|-----------|
50
+ | `commands/start.py` | 1077 | < 400 (split by phase) |
51
+ | `memory.py` | 1096 | < 400 (split by function) |
52
+
53
+ ## Patterns Identified
54
+
55
+ ### Anti-Pattern: "Mark Complete Without Verification"
56
+
57
+ Task completion criteria should include:
58
+ 1. ✅ Code written
59
+ 2. ❌ Old code removed (missing)
60
+ 3. ❌ Tests written (missing)
61
+ 4. ❌ Templates updated (missing)
62
+
63
+ ### Anti-Pattern: "Reference Implementation in Templates"
64
+
65
+ Templates should either:
66
+ - Import from actual modules, OR
67
+ - Contain minimal stubs with "see src/up/core/" comments
68
+
69
+ Not full implementations that drift.
70
+
71
+ ## Recommendations
72
+
73
+ ### Immediate (Sprint 8: Cleanup)
74
+
75
+ 1. **Delete dead code**
76
+ - Remove `src/up/commands/learn.py`
77
+
78
+ 2. **Add core tests**
79
+ - `tests/test_state.py` - State management
80
+ - `tests/test_checkpoint.py` - Checkpoint operations
81
+ - `tests/test_provenance.py` - Provenance tracking
82
+
83
+ 3. **Fix template drift**
84
+ - Update `templates/loop/__init__.py` to NOT include full implementations
85
+ - Add note pointing to `src/up/core/`
86
+
87
+ ### Short-term (Sprint 9: Quality Gates)
88
+
89
+ 4. **Add test requirement to PRD process**
90
+ - Task not complete without test
91
+ - Add `tests_required: true` to PRD schema
92
+
93
+ 5. **Add coverage tracking**
94
+ - Configure pytest-cov
95
+ - Add badge to README
96
+ - Minimum 60% coverage gate
97
+
98
+ ### Medium-term (Sprint 10: Modularization)
99
+
100
+ 6. **Split start.py**
101
+ - `start/loop.py` - Main loop logic
102
+ - `start/phases.py` - Phase implementations
103
+ - `start/verification.py` - Test/lint verification
104
+
105
+ 7. **Split memory.py**
106
+ - `memory/storage.py` - ChromaDB operations
107
+ - `memory/search.py` - Semantic search
108
+ - `memory/index.py` - File indexing
109
+
110
+ ---
111
+
112
+ ## Metrics
113
+
114
+ | Metric | Current | Target |
115
+ |--------|---------|--------|
116
+ | Dead code files | 1 | 0 |
117
+ | Test coverage | ~2% | 60% |
118
+ | Max file size | 1741 | 400 |
119
+ | Template drift items | 2 | 0 |