appydave-tools 0.15.0 → 0.16.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/CLAUDE.md +113 -29
- data/README.md +262 -86
- data/bin/subtitle_manager.rb +18 -12
- data/bin/subtitle_processor.rb +158 -0
- data/docs/archive/codebase-audit-2025-01.md +424 -0
- data/docs/archive/documentation-framework-proposal.md +808 -0
- data/docs/archive/purpose-and-philosophy.md +110 -0
- data/docs/archive/test-coverage-quick-wins.md +342 -0
- data/docs/archive/tool-discovery.md +199 -0
- data/docs/archive/tool-documentation-analysis.md +592 -0
- data/docs/tools/bank-reconciliation.md +269 -0
- data/docs/tools/cli-actions.md +444 -0
- data/docs/tools/configuration.md +329 -0
- data/docs/{usage → tools}/gpt-context.md +118 -7
- data/docs/tools/index.md +324 -0
- data/docs/tools/move-images.md +295 -0
- data/docs/tools/name-manager.md +322 -0
- data/docs/tools/prompt-tools.md +209 -0
- data/docs/tools/subtitle-processor.md +242 -0
- data/docs/tools/youtube-automation.md +258 -0
- data/docs/tools/youtube-manager.md +248 -0
- data/lib/appydave/tools/{subtitle_manager → subtitle_processor}/clean.rb +1 -1
- data/lib/appydave/tools/{subtitle_manager → subtitle_processor}/join.rb +5 -2
- data/lib/appydave/tools/version.rb +1 -1
- data/lib/appydave/tools.rb +2 -4
- data/package.json +1 -1
- metadata +29 -12
- data/lib/mj-paste-test/main.rb +0 -35
- data/lib/mj-paste-test/prompts.txt +0 -18
- data/lib/mj-paste-test/readme-leonardo.md +0 -0
- /data/lib/appydave/tools/{subtitle_manager → subtitle_processor}/_doc-clean.md +0 -0
- /data/lib/appydave/tools/{subtitle_manager → subtitle_processor}/_doc-join.md +0 -0
- /data/lib/appydave/tools/{subtitle_manager → subtitle_processor}/_doc-todo.md +0 -0
|
@@ -0,0 +1,808 @@
|
|
|
1
|
+
# Documentation Framework Proposal
|
|
2
|
+
|
|
3
|
+
**Purpose:** Define a comprehensive, maintainable documentation structure for AppyDave Tools
|
|
4
|
+
|
|
5
|
+
**Date:** January 2025
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Current State Analysis
|
|
10
|
+
|
|
11
|
+
### What We Have
|
|
12
|
+
```
|
|
13
|
+
docs/
|
|
14
|
+
├── ai-tool-discovery.md # AI agent guide (excellent)
|
|
15
|
+
├── codebase-audit-2025-01.md # Code quality audit
|
|
16
|
+
├── tool-documentation-analysis.md # Doc quality assessment
|
|
17
|
+
├── purpose-and-philosophy.md # Project philosophy
|
|
18
|
+
├── usage/
|
|
19
|
+
│ └── gpt-context.md # Only 1 of 7 tools documented
|
|
20
|
+
└── dam/
|
|
21
|
+
└── overview.md # Partial DAM tool docs
|
|
22
|
+
|
|
23
|
+
Root:
|
|
24
|
+
├── README.md # User-facing overview (good)
|
|
25
|
+
├── CLAUDE.md # AI assistant index (660 lines - too large)
|
|
26
|
+
├── CHANGELOG.md # Auto-generated
|
|
27
|
+
└── CODE_OF_CONDUCT.md # Standard
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### What's Missing
|
|
31
|
+
- **Individual tool documentation** (only 1 of 7 tools has detailed docs)
|
|
32
|
+
- **Development guides** (architecture, patterns, contributing)
|
|
33
|
+
- **API/module documentation** (internal code structure)
|
|
34
|
+
- **Troubleshooting guides** (common issues, debugging)
|
|
35
|
+
- **Testing documentation** (conventions, patterns, how to write tests)
|
|
36
|
+
- **Configuration examples** (JSON templates, .env examples)
|
|
37
|
+
- **Workflow guides** (FliVideo workflow, multi-channel setup)
|
|
38
|
+
|
|
39
|
+
### Problems with Current Structure
|
|
40
|
+
1. **CLAUDE.md is bloated** (660 lines - should be 100-200 line index)
|
|
41
|
+
2. **README.md duplicates content** (tool descriptions in both README and CLAUDE.md)
|
|
42
|
+
3. **No clear hierarchy** (usage/ has 1 file, dam/ orphaned)
|
|
43
|
+
4. **Missing cross-references** (docs don't link to each other)
|
|
44
|
+
5. **No versioning strategy** (which docs apply to which versions)
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## Proposed Documentation Structure
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
appydave-tools/
|
|
52
|
+
│
|
|
53
|
+
├── README.md # 🎯 PRIMARY ENTRY POINT (100-150 lines)
|
|
54
|
+
├── CLAUDE.md # 🤖 AI AGENT INDEX (100-150 lines)
|
|
55
|
+
├── CHANGELOG.md # 📝 Auto-generated version history
|
|
56
|
+
├── CODE_OF_CONDUCT.md # 🤝 Community standards
|
|
57
|
+
│
|
|
58
|
+
└── docs/
|
|
59
|
+
│
|
|
60
|
+
├── 📑 INDEX.md # ⭐ DOCUMENTATION MAP (meta-index)
|
|
61
|
+
│
|
|
62
|
+
├── 01-getting-started/ # 🚀 New user onboarding
|
|
63
|
+
│ ├── installation.md
|
|
64
|
+
│ ├── quick-start.md
|
|
65
|
+
│ ├── first-time-setup.md
|
|
66
|
+
│ └── common-workflows.md
|
|
67
|
+
│
|
|
68
|
+
├── 02-tools/ # 🛠️ Tool-specific documentation
|
|
69
|
+
│ ├── gpt-context.md # ⭐ PRIMARY TOOL
|
|
70
|
+
│ ├── youtube-manager.md
|
|
71
|
+
│ ├── subtitle-processor.md
|
|
72
|
+
│ ├── configuration-manager.md
|
|
73
|
+
│ ├── move-images.md
|
|
74
|
+
│ ├── prompt-tools.md # ⚠️ DEPRECATED
|
|
75
|
+
│ └── youtube-automation.md # ⚠️ INTERNAL
|
|
76
|
+
│
|
|
77
|
+
├── 03-workflows/ # 🎬 End-to-end scenarios
|
|
78
|
+
│ ├── flivideo-production.md
|
|
79
|
+
│ ├── multi-channel-management.md
|
|
80
|
+
│ ├── ai-assisted-development.md
|
|
81
|
+
│ ├── bulk-video-updates.md
|
|
82
|
+
│ └── team-collaboration.md
|
|
83
|
+
│
|
|
84
|
+
├── 04-configuration/ # ⚙️ Setup and config
|
|
85
|
+
│ ├── overview.md
|
|
86
|
+
│ ├── channels-config.md
|
|
87
|
+
│ ├── settings-config.md
|
|
88
|
+
│ ├── youtube-automation-config.md
|
|
89
|
+
│ ├── environment-variables.md
|
|
90
|
+
│ └── examples/ # JSON templates
|
|
91
|
+
│ ├── channels.example.json
|
|
92
|
+
│ ├── settings.example.json
|
|
93
|
+
│ └── .env.example
|
|
94
|
+
│
|
|
95
|
+
├── 05-development/ # 👨💻 Developer documentation
|
|
96
|
+
│ ├── architecture.md
|
|
97
|
+
│ ├── code-conventions.md
|
|
98
|
+
│ ├── testing-guide.md
|
|
99
|
+
│ ├── contributing.md
|
|
100
|
+
│ ├── release-process.md
|
|
101
|
+
│ └── patterns/
|
|
102
|
+
│ ├── base-action-pattern.md
|
|
103
|
+
│ ├── configuration-system.md
|
|
104
|
+
│ └── type-system.md
|
|
105
|
+
│
|
|
106
|
+
├── 06-api-reference/ # 📚 Internal API docs
|
|
107
|
+
│ ├── cli-actions/
|
|
108
|
+
│ │ ├── base-action.md
|
|
109
|
+
│ │ └── action-lifecycle.md
|
|
110
|
+
│ ├── configuration/
|
|
111
|
+
│ │ ├── config.md
|
|
112
|
+
│ │ └── models.md
|
|
113
|
+
│ ├── gpt-context/
|
|
114
|
+
│ │ ├── file-collector.md
|
|
115
|
+
│ │ └── output-handler.md
|
|
116
|
+
│ ├── youtube-manager/
|
|
117
|
+
│ │ ├── authorization.md
|
|
118
|
+
│ │ └── api-wrapper.md
|
|
119
|
+
│ ├── subtitle-processor/
|
|
120
|
+
│ │ ├── clean.md
|
|
121
|
+
│ │ └── join.md
|
|
122
|
+
│ └── types/
|
|
123
|
+
│ ├── base-model.md
|
|
124
|
+
│ └── type-system.md
|
|
125
|
+
│
|
|
126
|
+
├── 07-troubleshooting/ # 🔧 Problem solving
|
|
127
|
+
│ ├── common-issues.md
|
|
128
|
+
│ ├── bundler-rbenv.md
|
|
129
|
+
│ ├── youtube-auth-errors.md
|
|
130
|
+
│ ├── openai-api-errors.md
|
|
131
|
+
│ └── debugging-guide.md
|
|
132
|
+
│
|
|
133
|
+
├── 08-ai-assistance/ # 🤖 AI agent resources
|
|
134
|
+
│ ├── tool-discovery.md # ✅ EXISTS (ai-tool-discovery.md)
|
|
135
|
+
│ ├── claude-code-guide.md # How to use with Claude Code
|
|
136
|
+
│ ├── chatgpt-integration.md # Using with ChatGPT
|
|
137
|
+
│ └── prompt-templates/
|
|
138
|
+
│ ├── codebase-analysis.md
|
|
139
|
+
│ └── debugging-assistance.md
|
|
140
|
+
│
|
|
141
|
+
├── 09-philosophy/ # 💡 Project vision
|
|
142
|
+
│ ├── purpose-and-philosophy.md # ✅ EXISTS
|
|
143
|
+
│ ├── design-principles.md
|
|
144
|
+
│ └── roadmap.md
|
|
145
|
+
│
|
|
146
|
+
└── 10-appendix/ # 📎 Reference materials
|
|
147
|
+
├── codebase-audit-2025-01.md # ✅ EXISTS
|
|
148
|
+
├── tool-documentation-analysis.md # ✅ EXISTS
|
|
149
|
+
├── glossary.md
|
|
150
|
+
└── migration-guides/
|
|
151
|
+
└── subtitle-manager-to-processor.md
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Document Templates
|
|
157
|
+
|
|
158
|
+
### Template: Tool Documentation (`docs/02-tools/[tool-name].md`)
|
|
159
|
+
|
|
160
|
+
```markdown
|
|
161
|
+
# [Tool Name]
|
|
162
|
+
|
|
163
|
+
**Status:** ✅ ACTIVE | ⚠️ DEPRECATED | 🔒 INTERNAL
|
|
164
|
+
|
|
165
|
+
**CLI Command:** `tool_name`
|
|
166
|
+
|
|
167
|
+
**Gem Installation:** Available after `gem install appydave-tools`
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Quick Reference
|
|
172
|
+
|
|
173
|
+
\`\`\`bash
|
|
174
|
+
# Most common use case
|
|
175
|
+
tool_name [basic command]
|
|
176
|
+
\`\`\`
|
|
177
|
+
|
|
178
|
+
**When to use this tool:** [One sentence]
|
|
179
|
+
|
|
180
|
+
**Related tools:** [Links to related docs]
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## Overview
|
|
185
|
+
|
|
186
|
+
### The Problem
|
|
187
|
+
|
|
188
|
+
[Clear problem statement from user perspective]
|
|
189
|
+
|
|
190
|
+
### The Solution
|
|
191
|
+
|
|
192
|
+
[How this tool solves the problem]
|
|
193
|
+
|
|
194
|
+
### What It Does
|
|
195
|
+
|
|
196
|
+
- **Operation 1**: [Description]
|
|
197
|
+
- **Operation 2**: [Description]
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## Installation & Setup
|
|
202
|
+
|
|
203
|
+
### Prerequisites
|
|
204
|
+
|
|
205
|
+
- [Requirement 1]
|
|
206
|
+
- [Requirement 2]
|
|
207
|
+
|
|
208
|
+
### First-Time Setup
|
|
209
|
+
|
|
210
|
+
\`\`\`bash
|
|
211
|
+
[Setup commands]
|
|
212
|
+
\`\`\`
|
|
213
|
+
|
|
214
|
+
### Configuration
|
|
215
|
+
|
|
216
|
+
[If applicable, link to configuration docs]
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Usage Examples
|
|
221
|
+
|
|
222
|
+
### Basic Usage
|
|
223
|
+
|
|
224
|
+
\`\`\`bash
|
|
225
|
+
# Example 1: [Description]
|
|
226
|
+
tool_name [command]
|
|
227
|
+
|
|
228
|
+
# Example 2: [Description]
|
|
229
|
+
tool_name [command]
|
|
230
|
+
\`\`\`
|
|
231
|
+
|
|
232
|
+
### Advanced Usage
|
|
233
|
+
|
|
234
|
+
\`\`\`bash
|
|
235
|
+
# Example 3: [Description]
|
|
236
|
+
tool_name [command with options]
|
|
237
|
+
\`\`\`
|
|
238
|
+
|
|
239
|
+
### Real-World Scenarios
|
|
240
|
+
|
|
241
|
+
#### Scenario 1: [Name]
|
|
242
|
+
|
|
243
|
+
**Context:** [When you'd do this]
|
|
244
|
+
|
|
245
|
+
\`\`\`bash
|
|
246
|
+
[Commands]
|
|
247
|
+
\`\`\`
|
|
248
|
+
|
|
249
|
+
**Result:** [What happens]
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## Command Reference
|
|
254
|
+
|
|
255
|
+
### Options
|
|
256
|
+
|
|
257
|
+
| Flag | Long Form | Description | Default |
|
|
258
|
+
|------|-----------|-------------|---------|
|
|
259
|
+
| `-x` | `--example` | [Description] | [Default] |
|
|
260
|
+
|
|
261
|
+
### Exit Codes
|
|
262
|
+
|
|
263
|
+
- `0` - Success
|
|
264
|
+
- `1` - [Error type]
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
## Troubleshooting
|
|
269
|
+
|
|
270
|
+
### Common Issues
|
|
271
|
+
|
|
272
|
+
#### Issue: [Problem description]
|
|
273
|
+
**Symptoms:** [What user sees]
|
|
274
|
+
**Solution:** [Fix]
|
|
275
|
+
|
|
276
|
+
#### Issue: [Another problem]
|
|
277
|
+
**Symptoms:** [What user sees]
|
|
278
|
+
**Solution:** [Fix]
|
|
279
|
+
|
|
280
|
+
### Debug Mode
|
|
281
|
+
|
|
282
|
+
\`\`\`bash
|
|
283
|
+
tool_name [command] --debug
|
|
284
|
+
\`\`\`
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
## Integration with Other Tools
|
|
289
|
+
|
|
290
|
+
- **Works with:** [Tool links]
|
|
291
|
+
- **Typical workflow:** [Brief description]
|
|
292
|
+
- **See also:** [Workflow docs link]
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## API Reference
|
|
297
|
+
|
|
298
|
+
**For developers:** See [API docs link]
|
|
299
|
+
|
|
300
|
+
**Internal modules:**
|
|
301
|
+
- [Module 1 link]
|
|
302
|
+
- [Module 2 link]
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## Contributing
|
|
307
|
+
|
|
308
|
+
See [Development Guide](../05-development/contributing.md)
|
|
309
|
+
|
|
310
|
+
**Test coverage:** [Percentage] - [Link to specs]
|
|
311
|
+
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
## Version History
|
|
315
|
+
|
|
316
|
+
- **Current version:** [Version] ([Changelog link])
|
|
317
|
+
- **Breaking changes:** [If applicable]
|
|
318
|
+
- **Deprecation notices:** [If applicable]
|
|
319
|
+
|
|
320
|
+
---
|
|
321
|
+
|
|
322
|
+
**Related Documentation:**
|
|
323
|
+
- [Workflow guide link]
|
|
324
|
+
- [Configuration guide link]
|
|
325
|
+
- [Troubleshooting link]
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
---
|
|
329
|
+
|
|
330
|
+
### Template: Workflow Documentation (`docs/03-workflows/[workflow-name].md`)
|
|
331
|
+
|
|
332
|
+
```markdown
|
|
333
|
+
# [Workflow Name]
|
|
334
|
+
|
|
335
|
+
**Use case:** [One sentence description]
|
|
336
|
+
|
|
337
|
+
**Tools used:** [List of tools]
|
|
338
|
+
|
|
339
|
+
**Time to complete:** [Estimate]
|
|
340
|
+
|
|
341
|
+
---
|
|
342
|
+
|
|
343
|
+
## Overview
|
|
344
|
+
|
|
345
|
+
[Brief description of this workflow and when to use it]
|
|
346
|
+
|
|
347
|
+
---
|
|
348
|
+
|
|
349
|
+
## Prerequisites
|
|
350
|
+
|
|
351
|
+
- [ ] [Requirement 1]
|
|
352
|
+
- [ ] [Requirement 2]
|
|
353
|
+
- [ ] [Configuration needed]
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
## Step-by-Step Guide
|
|
358
|
+
|
|
359
|
+
### Step 1: [Action]
|
|
360
|
+
|
|
361
|
+
**Why:** [Explanation]
|
|
362
|
+
|
|
363
|
+
\`\`\`bash
|
|
364
|
+
[Commands]
|
|
365
|
+
\`\`\`
|
|
366
|
+
|
|
367
|
+
**Expected result:** [What happens]
|
|
368
|
+
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
### Step 2: [Action]
|
|
372
|
+
|
|
373
|
+
**Why:** [Explanation]
|
|
374
|
+
|
|
375
|
+
\`\`\`bash
|
|
376
|
+
[Commands]
|
|
377
|
+
\`\`\`
|
|
378
|
+
|
|
379
|
+
**Expected result:** [What happens]
|
|
380
|
+
|
|
381
|
+
---
|
|
382
|
+
|
|
383
|
+
### Step 3: [Action]
|
|
384
|
+
|
|
385
|
+
[Continue pattern...]
|
|
386
|
+
|
|
387
|
+
---
|
|
388
|
+
|
|
389
|
+
## Complete Example
|
|
390
|
+
|
|
391
|
+
\`\`\`bash
|
|
392
|
+
# Full workflow from start to finish
|
|
393
|
+
[All commands in sequence]
|
|
394
|
+
\`\`\`
|
|
395
|
+
|
|
396
|
+
---
|
|
397
|
+
|
|
398
|
+
## Troubleshooting This Workflow
|
|
399
|
+
|
|
400
|
+
### If Step X Fails
|
|
401
|
+
|
|
402
|
+
[Debugging steps]
|
|
403
|
+
|
|
404
|
+
### Common Mistakes
|
|
405
|
+
|
|
406
|
+
- **Mistake 1:** [Description and fix]
|
|
407
|
+
- **Mistake 2:** [Description and fix]
|
|
408
|
+
|
|
409
|
+
---
|
|
410
|
+
|
|
411
|
+
## Variations
|
|
412
|
+
|
|
413
|
+
### Variation 1: [Name]
|
|
414
|
+
|
|
415
|
+
[How to adapt workflow]
|
|
416
|
+
|
|
417
|
+
### Variation 2: [Name]
|
|
418
|
+
|
|
419
|
+
[How to adapt workflow]
|
|
420
|
+
|
|
421
|
+
---
|
|
422
|
+
|
|
423
|
+
## Related Workflows
|
|
424
|
+
|
|
425
|
+
- [Link to related workflow 1]
|
|
426
|
+
- [Link to related workflow 2]
|
|
427
|
+
|
|
428
|
+
---
|
|
429
|
+
|
|
430
|
+
**See also:**
|
|
431
|
+
- [Tool documentation links]
|
|
432
|
+
- [Configuration guide links]
|
|
433
|
+
```
|
|
434
|
+
|
|
435
|
+
---
|
|
436
|
+
|
|
437
|
+
### Template: API Reference (`docs/06-api-reference/[module]/[class].md`)
|
|
438
|
+
|
|
439
|
+
```markdown
|
|
440
|
+
# [Class Name]
|
|
441
|
+
|
|
442
|
+
**Module:** `Appydave::Tools::[ModuleName]::[ClassName]`
|
|
443
|
+
|
|
444
|
+
**File:** `lib/appydave/tools/[path]/[file].rb`
|
|
445
|
+
|
|
446
|
+
**Test Coverage:** [Percentage] - [Spec file link]
|
|
447
|
+
|
|
448
|
+
---
|
|
449
|
+
|
|
450
|
+
## Overview
|
|
451
|
+
|
|
452
|
+
[Brief description of what this class does]
|
|
453
|
+
|
|
454
|
+
**Parent class:** [If applicable]
|
|
455
|
+
|
|
456
|
+
**Included modules:** [If applicable]
|
|
457
|
+
|
|
458
|
+
---
|
|
459
|
+
|
|
460
|
+
## Public API
|
|
461
|
+
|
|
462
|
+
### Instance Methods
|
|
463
|
+
|
|
464
|
+
#### `#method_name(param1, param2)`
|
|
465
|
+
|
|
466
|
+
**Description:** [What it does]
|
|
467
|
+
|
|
468
|
+
**Parameters:**
|
|
469
|
+
- `param1` (Type) - [Description]
|
|
470
|
+
- `param2` (Type) - [Description]
|
|
471
|
+
|
|
472
|
+
**Returns:** (Type) - [Description]
|
|
473
|
+
|
|
474
|
+
**Raises:**
|
|
475
|
+
- `ErrorType` - [When]
|
|
476
|
+
|
|
477
|
+
**Example:**
|
|
478
|
+
|
|
479
|
+
\`\`\`ruby
|
|
480
|
+
instance = ClassName.new
|
|
481
|
+
result = instance.method_name(arg1, arg2)
|
|
482
|
+
\`\`\`
|
|
483
|
+
|
|
484
|
+
---
|
|
485
|
+
|
|
486
|
+
### Class Methods
|
|
487
|
+
|
|
488
|
+
[Same structure as instance methods]
|
|
489
|
+
|
|
490
|
+
---
|
|
491
|
+
|
|
492
|
+
## Usage Examples
|
|
493
|
+
|
|
494
|
+
### Example 1: [Scenario]
|
|
495
|
+
|
|
496
|
+
\`\`\`ruby
|
|
497
|
+
[Code example]
|
|
498
|
+
\`\`\`
|
|
499
|
+
|
|
500
|
+
---
|
|
501
|
+
|
|
502
|
+
## Internal Implementation
|
|
503
|
+
|
|
504
|
+
**Design pattern:** [If applicable]
|
|
505
|
+
|
|
506
|
+
**Dependencies:**
|
|
507
|
+
- [Module 1]
|
|
508
|
+
- [Module 2]
|
|
509
|
+
|
|
510
|
+
---
|
|
511
|
+
|
|
512
|
+
## Testing
|
|
513
|
+
|
|
514
|
+
**Spec file:** `spec/appydave/tools/[path]/[file]_spec.rb`
|
|
515
|
+
|
|
516
|
+
**Coverage:** [Percentage]
|
|
517
|
+
|
|
518
|
+
**Example spec:**
|
|
519
|
+
|
|
520
|
+
\`\`\`ruby
|
|
521
|
+
RSpec.describe Appydave::Tools::ClassName do
|
|
522
|
+
[Example test structure]
|
|
523
|
+
end
|
|
524
|
+
\`\`\`
|
|
525
|
+
|
|
526
|
+
---
|
|
527
|
+
|
|
528
|
+
## Related Classes
|
|
529
|
+
|
|
530
|
+
- [Link to related class 1]
|
|
531
|
+
- [Link to related class 2]
|
|
532
|
+
|
|
533
|
+
---
|
|
534
|
+
|
|
535
|
+
**See also:**
|
|
536
|
+
- [User-facing tool documentation]
|
|
537
|
+
- [Pattern documentation]
|
|
538
|
+
```
|
|
539
|
+
|
|
540
|
+
---
|
|
541
|
+
|
|
542
|
+
## Root File Specifications
|
|
543
|
+
|
|
544
|
+
### README.md (100-150 lines)
|
|
545
|
+
|
|
546
|
+
**Purpose:** Primary entry point for users discovering the project
|
|
547
|
+
|
|
548
|
+
**Structure:**
|
|
549
|
+
1. **Hero section** (1-2 lines) - What is this?
|
|
550
|
+
2. **Why this exists** (2-3 lines) - Problem statement
|
|
551
|
+
3. **Quick wins** (5 bullet points) - Value proposition
|
|
552
|
+
4. **Installation** (3 lines) - One command
|
|
553
|
+
5. **Tool index** (7 tools x 2 lines each) - Name + one-liner
|
|
554
|
+
6. **Quick start** (3 lines) - Simplest example
|
|
555
|
+
7. **Documentation links** (5 lines) - Where to go next
|
|
556
|
+
8. **Philosophy** (2 lines + link) - Brief mention
|
|
557
|
+
9. **Contributing** (3 lines + link)
|
|
558
|
+
10. **License** (2 lines)
|
|
559
|
+
|
|
560
|
+
**What NOT to include:**
|
|
561
|
+
- ❌ Full tool documentation (goes in docs/02-tools/)
|
|
562
|
+
- ❌ Command reference (goes in tool docs)
|
|
563
|
+
- ❌ Troubleshooting (goes in docs/07-troubleshooting/)
|
|
564
|
+
- ❌ Architecture details (goes in docs/05-development/)
|
|
565
|
+
|
|
566
|
+
---
|
|
567
|
+
|
|
568
|
+
### CLAUDE.md (100-150 lines)
|
|
569
|
+
|
|
570
|
+
**Purpose:** AI assistant index and quick reference
|
|
571
|
+
|
|
572
|
+
**Structure:**
|
|
573
|
+
1. **Project summary** (3 lines) - What is this?
|
|
574
|
+
2. **Quick reference table** (10 lines) - Tools + status
|
|
575
|
+
3. **Critical setup** (15 lines) - Bundler/rbenv fix
|
|
576
|
+
4. **Common commands** (20 lines) - Development, testing, build
|
|
577
|
+
5. **Documentation index** (30 lines) - Links to all docs
|
|
578
|
+
6. **AI assistant notes** (20 lines) - How to use docs effectively
|
|
579
|
+
7. **Key patterns** (10 lines) - Important code patterns to know
|
|
580
|
+
|
|
581
|
+
**What NOT to include:**
|
|
582
|
+
- ❌ Full command examples (link to tool docs)
|
|
583
|
+
- ❌ Detailed explanations (link to relevant docs)
|
|
584
|
+
- ❌ Security guides (link to troubleshooting)
|
|
585
|
+
- ❌ Configuration examples (link to config docs)
|
|
586
|
+
|
|
587
|
+
**Links to:**
|
|
588
|
+
- docs/INDEX.md (documentation map)
|
|
589
|
+
- docs/02-tools/ (individual tool docs)
|
|
590
|
+
- docs/08-ai-assistance/tool-discovery.md (for discovery)
|
|
591
|
+
- docs/07-troubleshooting/ (for common issues)
|
|
592
|
+
|
|
593
|
+
---
|
|
594
|
+
|
|
595
|
+
### docs/INDEX.md (50-75 lines)
|
|
596
|
+
|
|
597
|
+
**Purpose:** Documentation navigation hub
|
|
598
|
+
|
|
599
|
+
**Structure:**
|
|
600
|
+
1. **Quick navigation** - Links to all doc sections
|
|
601
|
+
2. **By audience** - New user, developer, AI agent paths
|
|
602
|
+
3. **By task** - "I want to..." links
|
|
603
|
+
4. **Documentation status** - Which docs are complete/WIP
|
|
604
|
+
5. **Contributing to docs** - How to add/update docs
|
|
605
|
+
|
|
606
|
+
---
|
|
607
|
+
|
|
608
|
+
## Documentation Principles
|
|
609
|
+
|
|
610
|
+
### 1. Single Source of Truth
|
|
611
|
+
- Each concept documented in ONE place
|
|
612
|
+
- Other docs link to that source
|
|
613
|
+
- No duplication between README, CLAUDE, and detailed docs
|
|
614
|
+
|
|
615
|
+
### 2. Progressive Disclosure
|
|
616
|
+
- README: Overview + links
|
|
617
|
+
- Tool docs: Usage + examples
|
|
618
|
+
- API docs: Implementation details
|
|
619
|
+
- Each layer deeper than the last
|
|
620
|
+
|
|
621
|
+
### 3. Task-Oriented
|
|
622
|
+
- Organize by "what user wants to do"
|
|
623
|
+
- Not "what the code structure is"
|
|
624
|
+
- Workflow guides > API docs for users
|
|
625
|
+
|
|
626
|
+
### 4. AI-Friendly
|
|
627
|
+
- Clear headings and structure
|
|
628
|
+
- Keywords for discovery
|
|
629
|
+
- Cross-references between docs
|
|
630
|
+
- Machine-readable formats where helpful
|
|
631
|
+
|
|
632
|
+
### 5. Maintainable
|
|
633
|
+
- Templates for consistency
|
|
634
|
+
- Clear ownership per doc
|
|
635
|
+
- Version-controlled
|
|
636
|
+
- CI checks for broken links
|
|
637
|
+
|
|
638
|
+
---
|
|
639
|
+
|
|
640
|
+
## Documentation Coverage Goals
|
|
641
|
+
|
|
642
|
+
### Phase 1: Foundation (Priority 1 - Do First)
|
|
643
|
+
- [ ] Slim down CLAUDE.md to 100-150 lines
|
|
644
|
+
- [ ] Create docs/INDEX.md
|
|
645
|
+
- [ ] Complete docs/02-tools/ for 5 active tools:
|
|
646
|
+
- [ ] gpt-context.md ✅ (already exists)
|
|
647
|
+
- [ ] youtube-manager.md
|
|
648
|
+
- [ ] subtitle-processor.md
|
|
649
|
+
- [ ] configuration-manager.md
|
|
650
|
+
- [ ] move-images.md
|
|
651
|
+
- [ ] Create docs/01-getting-started/:
|
|
652
|
+
- [ ] installation.md
|
|
653
|
+
- [ ] quick-start.md
|
|
654
|
+
- [ ] Create docs/07-troubleshooting/bundler-rbenv.md
|
|
655
|
+
|
|
656
|
+
### Phase 2: Workflows (Priority 2)
|
|
657
|
+
- [ ] Complete docs/03-workflows/:
|
|
658
|
+
- [ ] flivideo-production.md
|
|
659
|
+
- [ ] multi-channel-management.md
|
|
660
|
+
- [ ] ai-assisted-development.md
|
|
661
|
+
- [ ] Create docs/04-configuration/overview.md
|
|
662
|
+
- [ ] Add JSON examples to docs/04-configuration/examples/
|
|
663
|
+
|
|
664
|
+
### Phase 3: Development (Priority 3)
|
|
665
|
+
- [ ] Complete docs/05-development/:
|
|
666
|
+
- [ ] architecture.md
|
|
667
|
+
- [ ] testing-guide.md
|
|
668
|
+
- [ ] contributing.md
|
|
669
|
+
- [ ] Create docs/06-api-reference/ for key modules:
|
|
670
|
+
- [ ] cli-actions/base-action.md
|
|
671
|
+
- [ ] configuration/config.md
|
|
672
|
+
- [ ] types/base-model.md
|
|
673
|
+
|
|
674
|
+
### Phase 4: Polish (Priority 4)
|
|
675
|
+
- [ ] Complete remaining API reference docs
|
|
676
|
+
- [ ] Add more troubleshooting guides
|
|
677
|
+
- [ ] Create migration guides
|
|
678
|
+
- [ ] Add prompt templates for AI assistance
|
|
679
|
+
|
|
680
|
+
---
|
|
681
|
+
|
|
682
|
+
## Migration Strategy
|
|
683
|
+
|
|
684
|
+
### Step 1: Create Structure
|
|
685
|
+
1. Create directory structure (01-10 folders)
|
|
686
|
+
2. Create docs/INDEX.md
|
|
687
|
+
3. Create templates in each folder
|
|
688
|
+
|
|
689
|
+
### Step 2: Move Existing Docs
|
|
690
|
+
1. Keep: ai-tool-discovery.md → 08-ai-assistance/tool-discovery.md
|
|
691
|
+
2. Keep: purpose-and-philosophy.md → 09-philosophy/
|
|
692
|
+
3. Move: audits → 10-appendix/
|
|
693
|
+
4. Keep: usage/gpt-context.md → 02-tools/gpt-context.md
|
|
694
|
+
|
|
695
|
+
### Step 3: Extract from README/CLAUDE
|
|
696
|
+
1. Extract tool details from README → 02-tools/
|
|
697
|
+
2. Extract workflow info → 03-workflows/
|
|
698
|
+
3. Extract troubleshooting → 07-troubleshooting/
|
|
699
|
+
4. Slim down README to index + links
|
|
700
|
+
5. Slim down CLAUDE to index + links
|
|
701
|
+
|
|
702
|
+
### Step 4: Fill Gaps
|
|
703
|
+
1. Write missing tool docs (4 tools)
|
|
704
|
+
2. Write getting-started guides
|
|
705
|
+
3. Write key workflow guides
|
|
706
|
+
4. Write critical troubleshooting guides
|
|
707
|
+
|
|
708
|
+
### Step 5: Link Everything
|
|
709
|
+
1. Add cross-references between docs
|
|
710
|
+
2. Update README with doc links
|
|
711
|
+
3. Update CLAUDE.md with doc links
|
|
712
|
+
4. Update docs/INDEX.md
|
|
713
|
+
|
|
714
|
+
---
|
|
715
|
+
|
|
716
|
+
## Maintenance Plan
|
|
717
|
+
|
|
718
|
+
### Ownership
|
|
719
|
+
- **README.md**: Project maintainer
|
|
720
|
+
- **CLAUDE.md**: Project maintainer
|
|
721
|
+
- **docs/02-tools/**: Tool authors + maintainer
|
|
722
|
+
- **docs/03-workflows/**: Workflow users + maintainer
|
|
723
|
+
- **docs/05-development/**: Core contributors
|
|
724
|
+
- **docs/06-api-reference/**: Auto-generated where possible
|
|
725
|
+
|
|
726
|
+
### Review Schedule
|
|
727
|
+
- **Weekly**: Check for outdated examples
|
|
728
|
+
- **Per release**: Update version-specific docs
|
|
729
|
+
- **Quarterly**: Audit doc coverage vs codebase
|
|
730
|
+
- **Annually**: Major doc restructure if needed
|
|
731
|
+
|
|
732
|
+
### Quality Checks
|
|
733
|
+
- [ ] CI: Check for broken internal links
|
|
734
|
+
- [ ] CI: Check for missing required sections (per template)
|
|
735
|
+
- [ ] CI: Check that code examples are syntactically valid
|
|
736
|
+
- [ ] Manual: Verify examples work (spot-check per release)
|
|
737
|
+
|
|
738
|
+
---
|
|
739
|
+
|
|
740
|
+
## Success Metrics
|
|
741
|
+
|
|
742
|
+
### For Users
|
|
743
|
+
- Time to first successful tool use: < 5 minutes
|
|
744
|
+
- Can find answer to question: < 2 minutes
|
|
745
|
+
- Confidence in tool selection: > 90%
|
|
746
|
+
|
|
747
|
+
### For Contributors
|
|
748
|
+
- Time to understand codebase: < 30 minutes
|
|
749
|
+
- Can find where to add feature: < 5 minutes
|
|
750
|
+
- Can write conformant test: < 10 minutes
|
|
751
|
+
|
|
752
|
+
### For AI Agents
|
|
753
|
+
- Correct tool identification: > 95%
|
|
754
|
+
- Can generate working example: > 90%
|
|
755
|
+
- Finds relevant docs: < 30 seconds
|
|
756
|
+
|
|
757
|
+
### For Maintainers
|
|
758
|
+
- Time to update doc: < 15 minutes
|
|
759
|
+
- Doc coverage of codebase: > 80%
|
|
760
|
+
- Broken link rate: < 1%
|
|
761
|
+
|
|
762
|
+
---
|
|
763
|
+
|
|
764
|
+
## Notes on Implementation
|
|
765
|
+
|
|
766
|
+
### What to Write First
|
|
767
|
+
1. docs/INDEX.md (navigation hub)
|
|
768
|
+
2. Slim CLAUDE.md (AI agent index)
|
|
769
|
+
3. docs/02-tools/ for active tools (user-facing)
|
|
770
|
+
4. docs/07-troubleshooting/bundler-rbenv.md (critical pain point)
|
|
771
|
+
5. docs/01-getting-started/ (onboarding)
|
|
772
|
+
|
|
773
|
+
### What Can Wait
|
|
774
|
+
- Detailed API reference (06-api-reference/)
|
|
775
|
+
- Advanced workflow variations
|
|
776
|
+
- Comprehensive troubleshooting
|
|
777
|
+
- Historical appendix materials
|
|
778
|
+
|
|
779
|
+
### What Could Be Auto-Generated
|
|
780
|
+
- docs/06-api-reference/ (from YARD/RDoc comments)
|
|
781
|
+
- Command option tables (from OptionParser definitions)
|
|
782
|
+
- Test coverage stats (from SimpleCov)
|
|
783
|
+
- Changelog summaries (from git history)
|
|
784
|
+
|
|
785
|
+
---
|
|
786
|
+
|
|
787
|
+
## Open Questions
|
|
788
|
+
|
|
789
|
+
1. **Versioning**: Should docs be versioned per gem release? (Probably yes for breaking changes)
|
|
790
|
+
2. **Format**: Markdown vs alternatives? (Markdown is best for AI agents and GitHub)
|
|
791
|
+
3. **Hosting**: GitHub Pages? (Could render nice static site from markdown)
|
|
792
|
+
4. **Search**: Add search functionality? (GitHub search works, static site could add)
|
|
793
|
+
5. **Localization**: Support multiple languages? (Not priority, but structure should allow it)
|
|
794
|
+
6. **Examples**: Inline vs separate files? (Inline for short, separate for long/runnable)
|
|
795
|
+
7. **Video**: Add video tutorials? (Nice-to-have, links in markdown)
|
|
796
|
+
|
|
797
|
+
---
|
|
798
|
+
|
|
799
|
+
**Recommendation:** Start with Phase 1 (Foundation), validate with users/AI agents, then iterate based on feedback.
|
|
800
|
+
|
|
801
|
+
**Estimated Effort:**
|
|
802
|
+
- Phase 1: 8-12 hours
|
|
803
|
+
- Phase 2: 6-8 hours
|
|
804
|
+
- Phase 3: 10-15 hours
|
|
805
|
+
- Phase 4: 15-20 hours
|
|
806
|
+
- **Total:** 40-55 hours for complete framework implementation
|
|
807
|
+
|
|
808
|
+
**Priority Order:** Phase 1 > Phase 2 > Phase 4 > Phase 3 (skip API docs initially, focus on user/workflow docs)
|