the-frame-ai 0.7.2 → 0.9.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/README.de.md +1 -0
- package/README.es.md +1 -0
- package/README.hi.md +1 -0
- package/README.ja.md +1 -0
- package/README.md +1 -0
- package/README.ru.md +1 -0
- package/README.zh.md +1 -0
- package/package.json +1 -1
- package/templates/commands/frame:arch.md +113 -0
package/README.de.md
CHANGED
|
@@ -223,6 +223,7 @@ Diese 7 Befehle decken 90% der Solo-Dev-Arbeit ab:
|
|
|
223
223
|
| `/frame:research <Thema>` | Vor der Planung eines neuen Features |
|
|
224
224
|
| `/frame:explain <Datei>` | Warum sieht dieser Code so aus? |
|
|
225
225
|
| `/frame:why <Thema>` | Entscheidungshistorie durchsuchen |
|
|
226
|
+
| `/frame:arch <Modul>` | Modularchitektur in `docs/arch/{Modul}.md` dokumentieren |
|
|
226
227
|
</details>
|
|
227
228
|
|
|
228
229
|
<details>
|
package/README.es.md
CHANGED
|
@@ -223,6 +223,7 @@ Estos 7 comandos cubren el 90% del trabajo de desarrollo en solitario:
|
|
|
223
223
|
| `/frame:research <tema>` | Antes de planificar una nueva funcionalidad |
|
|
224
224
|
| `/frame:explain <archivo>` | ¿Por qué este código tiene este aspecto? |
|
|
225
225
|
| `/frame:why <tema>` | Buscar historial de decisiones |
|
|
226
|
+
| `/frame:arch <módulo>` | Documentar la arquitectura de un módulo en `docs/arch/{módulo}.md` |
|
|
226
227
|
</details>
|
|
227
228
|
|
|
228
229
|
<details>
|
package/README.hi.md
CHANGED
|
@@ -223,6 +223,7 @@ npx the-frame-ai init
|
|
|
223
223
|
| `/frame:research <विषय>` | नई सुविधा की योजना बनाने से पहले |
|
|
224
224
|
| `/frame:explain <फ़ाइल>` | यह कोड ऐसा क्यों दिखता है? |
|
|
225
225
|
| `/frame:why <विषय>` | निर्णय इतिहास खोजें |
|
|
226
|
+
| `/frame:arch <मॉड्यूल>` | मॉड्यूल की आर्किटेक्चर `docs/arch/{मॉड्यूल}.md` में दस्तावेज़ करें |
|
|
226
227
|
</details>
|
|
227
228
|
|
|
228
229
|
<details>
|
package/README.ja.md
CHANGED
|
@@ -223,6 +223,7 @@ npx the-frame-ai init
|
|
|
223
223
|
| `/frame:research <トピック>` | 新機能の計画前 |
|
|
224
224
|
| `/frame:explain <ファイル>` | このコードがこうなっている理由は? |
|
|
225
225
|
| `/frame:why <トピック>` | 意思決定の履歴を検索 |
|
|
226
|
+
| `/frame:arch <モジュール>` | モジュールのアーキテクチャを `docs/arch/{モジュール}.md` に記録 |
|
|
226
227
|
</details>
|
|
227
228
|
|
|
228
229
|
<details>
|
package/README.md
CHANGED
|
@@ -225,6 +225,7 @@ These 7 commands cover 90% of solo dev work:
|
|
|
225
225
|
| `/frame:research <topic>` | Before planning a new feature |
|
|
226
226
|
| `/frame:explain <file>` | Why does this code look like this? |
|
|
227
227
|
| `/frame:why <topic>` | Search decision history |
|
|
228
|
+
| `/frame:arch <module>` | Document a module's architecture to `docs/arch/{module}.md` |
|
|
228
229
|
</details>
|
|
229
230
|
|
|
230
231
|
<details>
|
package/README.ru.md
CHANGED
|
@@ -221,6 +221,7 @@ npx the-frame init
|
|
|
221
221
|
| `/frame:research <тема>` | Перед планированием новой фичи |
|
|
222
222
|
| `/frame:explain <файл>` | Почему этот код выглядит именно так? |
|
|
223
223
|
| `/frame:why <тема>` | Поиск по истории решений |
|
|
224
|
+
| `/frame:arch <модуль>` | Задокументировать архитектуру модуля в `docs/arch/{модуль}.md` |
|
|
224
225
|
</details>
|
|
225
226
|
|
|
226
227
|
<details>
|
package/README.zh.md
CHANGED
package/package.json
CHANGED
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# /frame:arch — Module Architecture
|
|
2
|
+
|
|
3
|
+
Analyse a module and generate `docs/arch/{module}.md` with its architecture description.
|
|
4
|
+
|
|
5
|
+
## Instructions
|
|
6
|
+
|
|
7
|
+
### Step 0: Fail-fast
|
|
8
|
+
|
|
9
|
+
Require a module name or path. If missing, STOP: "Which module? Provide a module name or path (e.g. `/frame:arch chat` or `/frame:arch src/payments`)."
|
|
10
|
+
|
|
11
|
+
### Step 1: Locate the module
|
|
12
|
+
|
|
13
|
+
Find relevant files:
|
|
14
|
+
```bash
|
|
15
|
+
find . -type f \( -name "*.ts" -o -name "*.js" -o -name "*.py" -o -name "*.go" \) \
|
|
16
|
+
| grep -i "{module}" | grep -v node_modules | grep -v dist | head -30
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
If nothing found, try broader search:
|
|
20
|
+
```bash
|
|
21
|
+
grep -rn "{module}" . --include="*.ts" --include="*.js" --include="*.py" --include="*.go" \
|
|
22
|
+
-l | grep -v node_modules | grep -v dist | head -20
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
If still nothing: STOP — "Module '{module}' not found. Check the name and try again."
|
|
26
|
+
|
|
27
|
+
### Step 2: Read the files
|
|
28
|
+
|
|
29
|
+
Read all located files fully. For large files (>200 lines), focus on:
|
|
30
|
+
- Exports / public API
|
|
31
|
+
- Main classes, functions, types
|
|
32
|
+
- Imports (what this module depends on)
|
|
33
|
+
|
|
34
|
+
### Step 3: Find entry points and dependencies
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
grep -rn "import.*{module}\|require.*{module}\|from.*{module}" . \
|
|
38
|
+
--include="*.ts" --include="*.js" --include="*.py" --include="*.go" \
|
|
39
|
+
| grep -v node_modules | grep -v dist | head -20
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
This shows who depends on this module.
|
|
43
|
+
|
|
44
|
+
### Step 4: Check existing doc
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
cat docs/arch/{module}.md 2>/dev/null
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
If it exists, note what has changed since it was written.
|
|
51
|
+
|
|
52
|
+
### Step 5: Generate the document
|
|
53
|
+
|
|
54
|
+
Create or overwrite `docs/arch/{module}.md`:
|
|
55
|
+
|
|
56
|
+
```markdown
|
|
57
|
+
# {Module} — Architecture
|
|
58
|
+
|
|
59
|
+
> Generated: {date}
|
|
60
|
+
|
|
61
|
+
## Overview
|
|
62
|
+
|
|
63
|
+
{2-3 sentences: what this module does and why it exists}
|
|
64
|
+
|
|
65
|
+
## Responsibilities
|
|
66
|
+
|
|
67
|
+
- {responsibility 1}
|
|
68
|
+
- {responsibility 2}
|
|
69
|
+
- ...
|
|
70
|
+
|
|
71
|
+
## File Structure
|
|
72
|
+
|
|
73
|
+
| File | Role |
|
|
74
|
+
|------|------|
|
|
75
|
+
| {file} | {what it does} |
|
|
76
|
+
|
|
77
|
+
## Public API
|
|
78
|
+
|
|
79
|
+
{Key exports, functions, classes with one-line descriptions}
|
|
80
|
+
|
|
81
|
+
## Dependencies
|
|
82
|
+
|
|
83
|
+
**Depends on:**
|
|
84
|
+
- {internal module or external package} — {why}
|
|
85
|
+
|
|
86
|
+
**Used by:**
|
|
87
|
+
- {module or file} — {how}
|
|
88
|
+
|
|
89
|
+
## Data Flow
|
|
90
|
+
|
|
91
|
+
{Describe how data enters, transforms, and exits this module. Use plain text or a simple ASCII diagram.}
|
|
92
|
+
|
|
93
|
+
## Key Decisions
|
|
94
|
+
|
|
95
|
+
{Non-obvious design choices, constraints, or trade-offs. If none — omit this section.}
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Write the file:
|
|
99
|
+
```bash
|
|
100
|
+
mkdir -p docs/arch
|
|
101
|
+
```
|
|
102
|
+
Then write `docs/arch/{module}.md` with the generated content.
|
|
103
|
+
|
|
104
|
+
### Step 6: Confirm
|
|
105
|
+
|
|
106
|
+
Report: "Architecture documented → `docs/arch/{module}.md`" and list the files analysed.
|
|
107
|
+
|
|
108
|
+
## Rules
|
|
109
|
+
|
|
110
|
+
- Overwrite if file already exists — always reflect current state
|
|
111
|
+
- No code changes, only the doc file
|
|
112
|
+
- Keep the doc factual — describe what exists, not what should exist
|
|
113
|
+
- If the module spans many files, summarise patterns rather than listing every detail
|