@sixfactors-ai/codeloop 0.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.
- package/LICENSE +21 -0
- package/README.md +214 -0
- package/dist/__tests__/integration/skill-board.test.d.ts +1 -0
- package/dist/__tests__/integration/skill-board.test.js +76 -0
- package/dist/__tests__/integration/skill-board.test.js.map +1 -0
- package/dist/__tests__/integration/tdd-planning.test.d.ts +1 -0
- package/dist/__tests__/integration/tdd-planning.test.js +41 -0
- package/dist/__tests__/integration/tdd-planning.test.js.map +1 -0
- package/dist/commands/init.d.ts +2 -0
- package/dist/commands/init.js +115 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/serve.d.ts +7 -0
- package/dist/commands/serve.js +113 -0
- package/dist/commands/serve.js.map +1 -0
- package/dist/commands/status.d.ts +2 -0
- package/dist/commands/status.js +177 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/update.d.ts +2 -0
- package/dist/commands/update.js +95 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/__tests__/board.test.d.ts +1 -0
- package/dist/lib/__tests__/board.test.js +220 -0
- package/dist/lib/__tests__/board.test.js.map +1 -0
- package/dist/lib/__tests__/scaffold.test.d.ts +1 -0
- package/dist/lib/__tests__/scaffold.test.js +39 -0
- package/dist/lib/__tests__/scaffold.test.js.map +1 -0
- package/dist/lib/__tests__/serve.test.d.ts +1 -0
- package/dist/lib/__tests__/serve.test.js +57 -0
- package/dist/lib/__tests__/serve.test.js.map +1 -0
- package/dist/lib/__tests__/server.test.d.ts +1 -0
- package/dist/lib/__tests__/server.test.js +100 -0
- package/dist/lib/__tests__/server.test.js.map +1 -0
- package/dist/lib/__tests__/smoke.test.d.ts +1 -0
- package/dist/lib/__tests__/smoke.test.js +7 -0
- package/dist/lib/__tests__/smoke.test.js.map +1 -0
- package/dist/lib/board.d.ts +38 -0
- package/dist/lib/board.js +86 -0
- package/dist/lib/board.js.map +1 -0
- package/dist/lib/detect.d.ts +13 -0
- package/dist/lib/detect.js +60 -0
- package/dist/lib/detect.js.map +1 -0
- package/dist/lib/scaffold.d.ts +8 -0
- package/dist/lib/scaffold.js +105 -0
- package/dist/lib/scaffold.js.map +1 -0
- package/dist/lib/server.d.ts +5 -0
- package/dist/lib/server.js +125 -0
- package/dist/lib/server.js.map +1 -0
- package/dist/lib/version.d.ts +10 -0
- package/dist/lib/version.js +27 -0
- package/dist/lib/version.js.map +1 -0
- package/dist/ui/404.html +1 -0
- package/dist/ui/_next/static/XkK-IaWE1h2_WYJHhUKNa/_buildManifest.js +1 -0
- package/dist/ui/_next/static/XkK-IaWE1h2_WYJHhUKNa/_ssgManifest.js +1 -0
- package/dist/ui/_next/static/chunks/255-54d3085ce94738a4.js +1 -0
- package/dist/ui/_next/static/chunks/423-bb541b7ae2733575.js +1 -0
- package/dist/ui/_next/static/chunks/4bd1b696-c023c6e3521b1417.js +1 -0
- package/dist/ui/_next/static/chunks/app/_not-found/page-d6bc774f7acb716e.js +1 -0
- package/dist/ui/_next/static/chunks/app/layout-e5fc8e78e1c8da95.js +1 -0
- package/dist/ui/_next/static/chunks/app/page-a1867b0e8c871ff8.js +1 -0
- package/dist/ui/_next/static/chunks/framework-de98b93a850cfc71.js +1 -0
- package/dist/ui/_next/static/chunks/main-49fd204fc9037ea3.js +1 -0
- package/dist/ui/_next/static/chunks/main-app-c46afa2f48f3aaef.js +1 -0
- package/dist/ui/_next/static/chunks/pages/_app-7d307437aca18ad4.js +1 -0
- package/dist/ui/_next/static/chunks/pages/_error-cb2a52f75f2162e2.js +1 -0
- package/dist/ui/_next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/dist/ui/_next/static/chunks/webpack-4a462cecab786e93.js +1 -0
- package/dist/ui/_next/static/css/721d4a8588775f36.css +1 -0
- package/dist/ui/index.html +1 -0
- package/dist/ui/index.txt +19 -0
- package/package.json +53 -0
- package/starters/generic.yaml +45 -0
- package/starters/go.yaml +47 -0
- package/starters/node-typescript.yaml +56 -0
- package/starters/python.yaml +50 -0
- package/templates/codeloop/board.json +5 -0
- package/templates/codeloop/gotchas.md +13 -0
- package/templates/codeloop/patterns.md +15 -0
- package/templates/codeloop/principles.md +49 -0
- package/templates/codeloop/rules.md +23 -0
- package/templates/commands/commit.md +245 -0
- package/templates/commands/manage.md +77 -0
- package/templates/commands/plan.md +83 -0
- package/templates/commands/reflect.md +93 -0
- package/templates/tasks/todo.md +3 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Session-end reflection — capture what you learned
|
|
3
|
+
allowed-tools: Read, Write, Edit, Glob, Grep, AskUserQuestion, Bash
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<!-- codeloop-version: 0.1.0 -->
|
|
7
|
+
|
|
8
|
+
# /reflect
|
|
9
|
+
|
|
10
|
+
Pause and think about what happened this session. Propose changes — but **nothing gets written without approval**.
|
|
11
|
+
|
|
12
|
+
> **Tip:** For lightweight inline reflection during commits, `/commit` Phase 2 handles it automatically. Use standalone `/reflect` for deeper multi-commit session reviews.
|
|
13
|
+
|
|
14
|
+
## Phase 1: Think
|
|
15
|
+
|
|
16
|
+
Look back at the session and identify:
|
|
17
|
+
|
|
18
|
+
1. **Gotchas** — Unexpected behavior, hidden dependencies, undocumented quirks
|
|
19
|
+
2. **Better approaches** — Wrong turns, wasted time, things you'd do differently
|
|
20
|
+
3. **Patterns** — Approaches that worked well, shortcuts discovered
|
|
21
|
+
4. **Frequency updates** — Gotchas re-encountered this session (increment freq)
|
|
22
|
+
|
|
23
|
+
Read `.codeloop/gotchas.md` and `.codeloop/patterns.md` to check for existing entries that were re-encountered.
|
|
24
|
+
|
|
25
|
+
## Phase 2: Propose
|
|
26
|
+
|
|
27
|
+
Present a **numbered list** of everything you want to do. Group by type:
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
## Proposed changes
|
|
31
|
+
|
|
32
|
+
### Gotchas
|
|
33
|
+
1. NEW: "<description>" → .codeloop/gotchas.md [freq:1]
|
|
34
|
+
2. INCREMENT: "<existing gotcha>" freq:2 → freq:3
|
|
35
|
+
|
|
36
|
+
### Patterns
|
|
37
|
+
3. NEW: "<description>" → .codeloop/patterns.md
|
|
38
|
+
|
|
39
|
+
### Rules
|
|
40
|
+
4. PROMOTE: "<gotcha at freq 10+>" → .codeloop/rules.md
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Then use **AskUserQuestion** with multiSelect to let the user pick which items to apply. Include all items as options.
|
|
44
|
+
|
|
45
|
+
## Phase 3: Apply
|
|
46
|
+
|
|
47
|
+
Only apply the items the user selected. Skip everything else.
|
|
48
|
+
|
|
49
|
+
### Writing gotchas
|
|
50
|
+
|
|
51
|
+
New gotchas follow this format:
|
|
52
|
+
|
|
53
|
+
```markdown
|
|
54
|
+
### [freq:1] Short descriptive title
|
|
55
|
+
**Applies to:** <scope or context>
|
|
56
|
+
**Source:** Discovered <date>
|
|
57
|
+
|
|
58
|
+
<Description of the gotcha, what went wrong, and the fix>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Place in the appropriate section (create section if needed, matching config.yaml scope sections).
|
|
62
|
+
|
|
63
|
+
### Incrementing frequency
|
|
64
|
+
|
|
65
|
+
Find the existing entry, update `[freq:N]` to `[freq:N+1]`.
|
|
66
|
+
|
|
67
|
+
### Writing patterns
|
|
68
|
+
|
|
69
|
+
New patterns follow this format:
|
|
70
|
+
|
|
71
|
+
```markdown
|
|
72
|
+
### Pattern Title
|
|
73
|
+
**Confidence:** LOW/MEDIUM/HIGH
|
|
74
|
+
**Applies to:** <scope or context>
|
|
75
|
+
|
|
76
|
+
<Description of the pattern with code example if applicable>
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Promoting to rules
|
|
80
|
+
|
|
81
|
+
When a gotcha reaches freq >= 10, suggest promoting to `.codeloop/rules.md`:
|
|
82
|
+
1. Write a concise rule in rules.md
|
|
83
|
+
2. Add a note to the gotcha: `**Promoted to rules.md**`
|
|
84
|
+
|
|
85
|
+
After applying, one-line summary: what was saved and where.
|
|
86
|
+
|
|
87
|
+
## Rules
|
|
88
|
+
|
|
89
|
+
- If nothing worth saving, just say "Nothing new to capture" and stop
|
|
90
|
+
- No scoring rubrics, no ceremony
|
|
91
|
+
- Keep knowledge files concise — trim old low-freq entries if files get too long
|
|
92
|
+
- **Never write to any file without approval from Phase 2**
|
|
93
|
+
- Frequency = severity: the more a gotcha recurs, the more important it becomes
|