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,592 @@
|
|
|
1
|
+
# Tool Documentation Analysis
|
|
2
|
+
|
|
3
|
+
**Date:** January 2025
|
|
4
|
+
**Purpose:** Evaluate tool naming accuracy, documentation quality, and AI agent discoverability
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Executive Summary
|
|
9
|
+
|
|
10
|
+
**Key Findings:**
|
|
11
|
+
1. ❌ **Naming Issue**: "Subtitle Manager" is a misnomer - tool performs *processing*, not *management*
|
|
12
|
+
2. ⚠️ **Documentation Quality**: Mixed - some tools well-documented, others vague
|
|
13
|
+
3. ⚠️ **AI Discoverability**: Partial - basic tool listing exists but lacks scenario-based discovery patterns
|
|
14
|
+
|
|
15
|
+
**Recommendations:**
|
|
16
|
+
1. Rename `SubtitleManager` → `SubtitleProcessor` (more accurate)
|
|
17
|
+
2. Enhance tool documentation with problem-scenario mapping
|
|
18
|
+
3. Create AI-friendly discovery index with use-case patterns
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## 1. Naming Analysis: "Subtitle Manager" vs Reality
|
|
23
|
+
|
|
24
|
+
### What the Tool Actually Does
|
|
25
|
+
|
|
26
|
+
**Current Name:** `SubtitleManager`
|
|
27
|
+
**Accurate Name:** `SubtitleProcessor` or `SubtitleTransformer`
|
|
28
|
+
|
|
29
|
+
**Rationale:**
|
|
30
|
+
|
|
31
|
+
The term "**Manager**" implies:
|
|
32
|
+
- Orchestration of multiple resources
|
|
33
|
+
- CRUD operations (Create, Read, Update, Delete)
|
|
34
|
+
- State management and persistence
|
|
35
|
+
- Coordination of lifecycle operations
|
|
36
|
+
|
|
37
|
+
Example: "YouTube Manager" correctly uses "Manager" because it:
|
|
38
|
+
- Manages video metadata (CRUD operations)
|
|
39
|
+
- Coordinates with YouTube API
|
|
40
|
+
- Handles authentication state
|
|
41
|
+
- Orchestrates multiple video operations
|
|
42
|
+
|
|
43
|
+
The term "**Processor**" implies:
|
|
44
|
+
- Transformation of input data
|
|
45
|
+
- File format manipulation
|
|
46
|
+
- Stream processing
|
|
47
|
+
- Stateless operations
|
|
48
|
+
|
|
49
|
+
**What SubtitleManager Actually Does:**
|
|
50
|
+
|
|
51
|
+
#### Clean Operation (`Clean` class)
|
|
52
|
+
```ruby
|
|
53
|
+
# What it does:
|
|
54
|
+
1. Removes HTML tags (<u></u> underscores)
|
|
55
|
+
2. Normalizes line breaks and spacing
|
|
56
|
+
3. Merges duplicate subtitle entries
|
|
57
|
+
4. Rebuilds SRT format with sequential numbering
|
|
58
|
+
|
|
59
|
+
# What it does NOT do:
|
|
60
|
+
- Store subtitle state
|
|
61
|
+
- Track subtitle versions
|
|
62
|
+
- Manage subtitle lifecycle
|
|
63
|
+
- Coordinate multiple subtitle sources
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
**Actual Behavior:** Single-pass transformation of SRT content
|
|
67
|
+
|
|
68
|
+
#### Join Operation (`Join` class)
|
|
69
|
+
```ruby
|
|
70
|
+
# What it does:
|
|
71
|
+
1. Resolves file patterns (wildcards, sorting)
|
|
72
|
+
2. Parses multiple SRT files
|
|
73
|
+
3. Adjusts timestamps with buffers
|
|
74
|
+
4. Merges into single timeline
|
|
75
|
+
5. Writes consolidated output
|
|
76
|
+
|
|
77
|
+
# What it does NOT do:
|
|
78
|
+
- Manage subtitle relationships
|
|
79
|
+
- Track join history
|
|
80
|
+
- Store merged configurations
|
|
81
|
+
- Coordinate ongoing synchronization
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
**Actual Behavior:** Multi-file stream processing and transformation
|
|
85
|
+
|
|
86
|
+
### Naming Recommendation
|
|
87
|
+
|
|
88
|
+
**Recommended Change:** `SubtitleManager` → `SubtitleProcessor`
|
|
89
|
+
|
|
90
|
+
**Rationale:**
|
|
91
|
+
- **Accuracy**: Tool processes/transforms subtitle files, doesn't manage them
|
|
92
|
+
- **Clarity**: "Processor" immediately conveys transformation/manipulation
|
|
93
|
+
- **Consistency**: Aligns with common patterns (ImageProcessor, DataProcessor, TextProcessor)
|
|
94
|
+
- **Precision**: Avoids confusion with state management or CRUD operations
|
|
95
|
+
|
|
96
|
+
**Alternative Names:**
|
|
97
|
+
1. `SubtitleProcessor` ⭐ **BEST** - Clear, accurate, industry-standard
|
|
98
|
+
2. `SubtitleTransformer` - Good, but may imply more complex transformations
|
|
99
|
+
3. `SubtitleTools` - Generic, less precise
|
|
100
|
+
4. `SubtitleUtilities` - Too vague
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## 2. Tool Documentation Quality Assessment
|
|
105
|
+
|
|
106
|
+
### Evaluation Criteria
|
|
107
|
+
1. **Purpose Clarity**: Is the problem statement clear?
|
|
108
|
+
2. **Use Case Specificity**: Are concrete scenarios provided?
|
|
109
|
+
3. **Functional Accuracy**: Does description match implementation?
|
|
110
|
+
4. **Discovery Keywords**: Can AI agents find the right tool for a task?
|
|
111
|
+
|
|
112
|
+
### Tool-by-Tool Analysis
|
|
113
|
+
|
|
114
|
+
#### ⭐ **1. GPT Context Gatherer** - EXCELLENT
|
|
115
|
+
**Documentation Quality:** A+ (95%)
|
|
116
|
+
|
|
117
|
+
✅ **Strengths:**
|
|
118
|
+
- Clear problem statement: "AI assistants need context about your code, but copying files is tedious"
|
|
119
|
+
- Specific use cases: "Working with ChatGPT, Claude, or any AI assistant"
|
|
120
|
+
- Comprehensive examples showing different patterns
|
|
121
|
+
- Links to detailed usage guide
|
|
122
|
+
- Multiple output format examples
|
|
123
|
+
|
|
124
|
+
✅ **Functional Accuracy:** 100% - Does exactly what's described
|
|
125
|
+
|
|
126
|
+
✅ **Discovery Keywords Present:**
|
|
127
|
+
- "AI assistants", "context", "codebase", "files", "patterns", "clipboard"
|
|
128
|
+
|
|
129
|
+
**Minor Gap:** Could mention token limit optimization scenarios
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
#### ⚠️ **2. YouTube Manager** - GOOD
|
|
134
|
+
**Documentation Quality:** B+ (80%)
|
|
135
|
+
|
|
136
|
+
✅ **Strengths:**
|
|
137
|
+
- Clear problem statement: "Updating video metadata through YouTube Studio is slow and repetitive"
|
|
138
|
+
- Concrete examples with actual commands
|
|
139
|
+
- Multiple operation examples (get, update, tags)
|
|
140
|
+
|
|
141
|
+
⚠️ **Gaps:**
|
|
142
|
+
- Use cases are generic: "Bulk metadata updates, standardizing tags, retrieving analytics"
|
|
143
|
+
- Missing scenario examples: "When you have 50 videos to retag after rebranding"
|
|
144
|
+
- No error handling guidance
|
|
145
|
+
- Authentication setup not mentioned in quick reference
|
|
146
|
+
|
|
147
|
+
**Functional Accuracy:** 90% - Does what's described, but analytics retrieval not shown
|
|
148
|
+
|
|
149
|
+
**Discovery Keywords:** Good but could add "batch", "bulk edit", "video metadata"
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
#### ❌ **3. Subtitle Manager** - NEEDS IMPROVEMENT
|
|
154
|
+
**Documentation Quality:** C+ (65%)
|
|
155
|
+
|
|
156
|
+
❌ **Major Issues:**
|
|
157
|
+
|
|
158
|
+
**1. Naming Accuracy:** 40%
|
|
159
|
+
- Name implies management (CRUD, state, coordination)
|
|
160
|
+
- Actually performs processing (cleaning, merging, transformation)
|
|
161
|
+
- Misleading for discovery: AI looking for "subtitle storage" would be confused
|
|
162
|
+
|
|
163
|
+
**2. Problem Statement:** 70%
|
|
164
|
+
- "Raw subtitle files need cleanup" ✅ Good
|
|
165
|
+
- "Multi-part recordings need merged subtitles" ✅ Good
|
|
166
|
+
- Missing: WHY this matters (YouTube auto-captions are messy, FliVideo workflow creates parts)
|
|
167
|
+
|
|
168
|
+
**3. Use Cases:** 60%
|
|
169
|
+
- "Cleaning YouTube auto-captions" ✅ Specific
|
|
170
|
+
- "Merging multi-part recording subtitles" ✅ Specific
|
|
171
|
+
- Missing: FliVideo workflow integration, batch processing scenarios
|
|
172
|
+
|
|
173
|
+
**4. Functional Accuracy:** 85%
|
|
174
|
+
- Clean operation: Accurate description
|
|
175
|
+
- Join operation: Accurate description
|
|
176
|
+
- Missing: Details on what "cleaning" actually does (removes tags, merges duplicates)
|
|
177
|
+
|
|
178
|
+
✅ **Strengths:**
|
|
179
|
+
- Command examples are clear
|
|
180
|
+
- Options well-documented (buffer, sort, log-level)
|
|
181
|
+
|
|
182
|
+
**Discovery Keywords:** Missing "normalize", "deduplicate", "timeline sync", "SRT format"
|
|
183
|
+
|
|
184
|
+
**CLAUDE.md Note Issue:**
|
|
185
|
+
```markdown
|
|
186
|
+
**Note:** Internal module is called `SubtitleMaster` but CLI tool is `subtitle_manager`
|
|
187
|
+
```
|
|
188
|
+
This is now outdated (we renamed to SubtitleManager) and reinforces the naming confusion.
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
#### ⚠️ **4. Prompt Tools** - VAGUE
|
|
193
|
+
**Documentation Quality:** D+ (50%)
|
|
194
|
+
|
|
195
|
+
❌ **Major Issues:**
|
|
196
|
+
|
|
197
|
+
**1. Problem Statement:** 40%
|
|
198
|
+
- "Repetitive AI prompts slow you down" - Too generic
|
|
199
|
+
- What KIND of prompts? What workflows?
|
|
200
|
+
|
|
201
|
+
**2. Solution Description:** 30%
|
|
202
|
+
- "Automate prompt workflows via OpenAI API" - Too vague
|
|
203
|
+
- HOW does it automate? What's the input/output?
|
|
204
|
+
|
|
205
|
+
**3. Examples:** 20%
|
|
206
|
+
```bash
|
|
207
|
+
# Run completion workflow
|
|
208
|
+
prompt_tools completion [options]
|
|
209
|
+
```
|
|
210
|
+
No actual examples of what [options] are or what the output looks like
|
|
211
|
+
|
|
212
|
+
**4. Use Cases:** 40%
|
|
213
|
+
- "Automated content research, title generation, SEO optimization" - Too broad
|
|
214
|
+
- How does this differ from just calling OpenAI API directly?
|
|
215
|
+
|
|
216
|
+
**5. Functional Accuracy:** Unknown
|
|
217
|
+
- Can't verify without seeing actual implementation details
|
|
218
|
+
- README doesn't link to deeper documentation
|
|
219
|
+
|
|
220
|
+
❌ **Discovery Keywords:** Missing context - can't determine when to use this vs other tools
|
|
221
|
+
|
|
222
|
+
**Recommendation:** Either expand documentation significantly or mark as "Advanced/Experimental"
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
#### ⚠️ **5. YouTube Automation** - VAGUE
|
|
227
|
+
**Documentation Quality:** D+ (50%)
|
|
228
|
+
|
|
229
|
+
❌ **Major Issues:**
|
|
230
|
+
|
|
231
|
+
**1. Problem Statement:** 50%
|
|
232
|
+
- "Full video workflows require multiple manual steps" - Generic
|
|
233
|
+
- What workflows? What steps?
|
|
234
|
+
|
|
235
|
+
**2. Solution Description:** 40%
|
|
236
|
+
- "GPT-powered automation sequences" - Buzzword-heavy, unclear mechanism
|
|
237
|
+
- What does "sequence 01-1" mean? How do I create sequences?
|
|
238
|
+
|
|
239
|
+
**3. Examples:** 30%
|
|
240
|
+
```bash
|
|
241
|
+
youtube_automation -s 01-1
|
|
242
|
+
```
|
|
243
|
+
No context on what this does or what sequences exist
|
|
244
|
+
|
|
245
|
+
**4. Use Cases:** 50%
|
|
246
|
+
- "Concept → research → script workflows" - Sounds interesting but no detail
|
|
247
|
+
- "Batch processing" - Of what?
|
|
248
|
+
|
|
249
|
+
**5. Functional Accuracy:** Unknown
|
|
250
|
+
- Too vague to assess
|
|
251
|
+
|
|
252
|
+
❌ **Discovery Problems:**
|
|
253
|
+
- When would I use this vs YouTube Manager?
|
|
254
|
+
- What's the relationship between tools?
|
|
255
|
+
- Is this built on top of other tools?
|
|
256
|
+
|
|
257
|
+
**Recommendation:** Add workflow examples, sequence documentation, or mark as internal-only
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
#### ✅ **6. Configuration Manager** - GOOD
|
|
262
|
+
**Documentation Quality:** B+ (80%)
|
|
263
|
+
|
|
264
|
+
✅ **Strengths:**
|
|
265
|
+
- Clear problem statement: "Managing settings for multiple YouTube channels gets messy"
|
|
266
|
+
- Specific use case: "Multi-channel management"
|
|
267
|
+
- Command examples are comprehensive (-l, -e, -p, -c)
|
|
268
|
+
- Shows configuration types (settings, channels)
|
|
269
|
+
|
|
270
|
+
⚠️ **Minor Gaps:**
|
|
271
|
+
- Use cases could be more scenario-based
|
|
272
|
+
- "Team collaboration" mentioned but not explained
|
|
273
|
+
- No examples of actual configuration structure in quick reference
|
|
274
|
+
|
|
275
|
+
**Functional Accuracy:** 95% - Does what's described
|
|
276
|
+
|
|
277
|
+
**Discovery Keywords:** Good - "configuration", "multi-channel", "settings", "JSON"
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
|
|
281
|
+
#### ⚠️ **7. Move Images** - SPECIFIC BUT LIMITED
|
|
282
|
+
**Documentation Quality:** B- (75%)
|
|
283
|
+
|
|
284
|
+
✅ **Strengths:**
|
|
285
|
+
- Clear problem statement: "Downloaded images need organizing with proper naming"
|
|
286
|
+
- Very specific examples with actual results shown
|
|
287
|
+
- Marked as "(Development tool)" - sets expectations
|
|
288
|
+
- Configuration details included (source/destination paths)
|
|
289
|
+
|
|
290
|
+
⚠️ **Gaps:**
|
|
291
|
+
- "Why this matters" context missing (video workflow, b-roll organization)
|
|
292
|
+
- Relationship to FliVideo workflow not explained
|
|
293
|
+
- Project folder structure not documented
|
|
294
|
+
|
|
295
|
+
**Functional Accuracy:** 95% - Specific and accurate
|
|
296
|
+
|
|
297
|
+
❌ **Discovery Problem:**
|
|
298
|
+
- Marked as "dev only" but could be useful for others
|
|
299
|
+
- Not clear when you'd use this in a workflow
|
|
300
|
+
- Hard-coded paths limit usefulness
|
|
301
|
+
|
|
302
|
+
**Recommendation:** Either generalize for broader use or document FliVideo integration better
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## 3. AI Agent Discoverability Analysis
|
|
307
|
+
|
|
308
|
+
### Current State: PARTIAL DISCOVERABILITY
|
|
309
|
+
|
|
310
|
+
#### What Works ✅
|
|
311
|
+
|
|
312
|
+
**1. Tool Listing Exists**
|
|
313
|
+
- README.md has "The Tools" section
|
|
314
|
+
- CLAUDE.md has "Quick Reference Index" table
|
|
315
|
+
- Each tool has a dedicated section
|
|
316
|
+
|
|
317
|
+
**2. Problem-Solution Format**
|
|
318
|
+
- README uses "The problem" / "The solution" structure
|
|
319
|
+
- Helps with problem-based discovery
|
|
320
|
+
|
|
321
|
+
**3. Command Examples**
|
|
322
|
+
- Most tools have concrete command examples
|
|
323
|
+
- Shows actual usage patterns
|
|
324
|
+
|
|
325
|
+
#### What's Missing ❌
|
|
326
|
+
|
|
327
|
+
**1. Scenario-Based Discovery**
|
|
328
|
+
|
|
329
|
+
AI agents need to map **user intent** → **right tool**
|
|
330
|
+
|
|
331
|
+
**Current problem:**
|
|
332
|
+
```
|
|
333
|
+
User: "I need to process my subtitle files"
|
|
334
|
+
AI: Which tool? SubtitleManager? Prompt Tools? YouTube Automation?
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
**What's needed:**
|
|
338
|
+
```markdown
|
|
339
|
+
## Scenario → Tool Mapping
|
|
340
|
+
|
|
341
|
+
### "I recorded my video in 5 parts and have separate subtitle files"
|
|
342
|
+
→ **Subtitle Processor** (join command)
|
|
343
|
+
- Merges multiple SRT files into one
|
|
344
|
+
- Adjusts timestamps with buffers
|
|
345
|
+
- Handles FliVideo multi-part workflow
|
|
346
|
+
|
|
347
|
+
### "YouTube auto-generated captions have messy formatting"
|
|
348
|
+
→ **Subtitle Processor** (clean command)
|
|
349
|
+
- Removes HTML tags
|
|
350
|
+
- Merges duplicate entries
|
|
351
|
+
- Normalizes spacing and numbering
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
**2. Tool Relationship Map**
|
|
355
|
+
|
|
356
|
+
**Missing context:**
|
|
357
|
+
- How do tools interact?
|
|
358
|
+
- Which tools depend on others?
|
|
359
|
+
- What's the recommended workflow sequence?
|
|
360
|
+
|
|
361
|
+
**Example of what's needed:**
|
|
362
|
+
```markdown
|
|
363
|
+
## Tool Workflow Relationships
|
|
364
|
+
|
|
365
|
+
### FliVideo Video Production Workflow
|
|
366
|
+
1. Record multi-part video → multiple files
|
|
367
|
+
2. Generate subtitles → **Subtitle Processor (clean)**
|
|
368
|
+
3. Merge subtitle parts → **Subtitle Processor (join)**
|
|
369
|
+
4. Upload video → (external tool)
|
|
370
|
+
5. Update metadata → **YouTube Manager**
|
|
371
|
+
6. Organize assets → **Move Images**
|
|
372
|
+
|
|
373
|
+
### AI-Assisted Content Planning
|
|
374
|
+
1. Gather codebase context → **GPT Context Gatherer** ⭐
|
|
375
|
+
2. Generate content ideas → **Prompt Tools**
|
|
376
|
+
3. Create automation sequences → **YouTube Automation**
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
**3. Task-Based Index**
|
|
380
|
+
|
|
381
|
+
**Current approach:** Tool-centric listing
|
|
382
|
+
**AI-friendly approach:** Task-centric mapping
|
|
383
|
+
|
|
384
|
+
**What's needed:**
|
|
385
|
+
```markdown
|
|
386
|
+
## Task → Tool Quick Reference
|
|
387
|
+
|
|
388
|
+
| I want to... | Use this tool | Command |
|
|
389
|
+
|--------------|---------------|---------|
|
|
390
|
+
| Feed my codebase to ChatGPT | GPT Context Gatherer | `gpt_context -i '**/*.rb' -d` |
|
|
391
|
+
| Clean messy subtitles | Subtitle Processor | `subtitle_manager clean -f input.srt` |
|
|
392
|
+
| Merge 5 subtitle files | Subtitle Processor | `subtitle_manager join -d ./parts -f "*.srt"` |
|
|
393
|
+
| Update 20 video titles | YouTube Manager | `youtube_manager update --video-id ID --title "New"` |
|
|
394
|
+
| Organize downloaded images | Move Images | `bin/move_images.rb -f b40 intro b40` |
|
|
395
|
+
| Setup tool configuration | Configuration Manager | `ad_config -c` |
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
**4. Disambiguation Guide**
|
|
399
|
+
|
|
400
|
+
**Problem:** Multiple tools might seem relevant
|
|
401
|
+
|
|
402
|
+
**What's needed:**
|
|
403
|
+
```markdown
|
|
404
|
+
## Tool Disambiguation
|
|
405
|
+
|
|
406
|
+
### "I need to work with subtitles"
|
|
407
|
+
- **Subtitle Processor (clean)** → You have one messy SRT file to normalize
|
|
408
|
+
- **Subtitle Processor (join)** → You have multiple SRT files to merge
|
|
409
|
+
- **YouTube Manager** → You want to upload/download subtitles from YouTube
|
|
410
|
+
- **YouTube Automation** → You want to automate subtitle workflow + video upload
|
|
411
|
+
|
|
412
|
+
### "I need to automate YouTube tasks"
|
|
413
|
+
- **YouTube Manager** → Single video metadata updates (CRUD operations)
|
|
414
|
+
- **YouTube Automation** → Multi-step workflows (concept → research → script)
|
|
415
|
+
- **Prompt Tools** → Generate content with AI prompts
|
|
416
|
+
```
|
|
417
|
+
|
|
418
|
+
**5. Entry Point Classification**
|
|
419
|
+
|
|
420
|
+
**What's needed:**
|
|
421
|
+
```markdown
|
|
422
|
+
## Tool Entry Points by User Type
|
|
423
|
+
|
|
424
|
+
### 👨💻 Developer Using AI Assistants
|
|
425
|
+
**Primary tool:** GPT Context Gatherer ⭐
|
|
426
|
+
**Why:** Feed codebase to Claude/ChatGPT for development help
|
|
427
|
+
|
|
428
|
+
### 🎥 YouTuber with Multi-Part Recordings
|
|
429
|
+
**Primary tools:** Subtitle Processor (clean + join) → YouTube Manager
|
|
430
|
+
**Workflow:** Clean auto-captions → Merge parts → Upload metadata
|
|
431
|
+
|
|
432
|
+
### ⚙️ Power User Automating Workflows
|
|
433
|
+
**Primary tools:** YouTube Automation → Prompt Tools
|
|
434
|
+
**Workflow:** Create automation sequences → Generate content
|
|
435
|
+
|
|
436
|
+
### 🔧 Tool Administrator
|
|
437
|
+
**Primary tool:** Configuration Manager
|
|
438
|
+
**Why:** Setup multi-channel configurations before using other tools
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
|
|
443
|
+
## 4. Recommendations for Improvement
|
|
444
|
+
|
|
445
|
+
### Priority 1: Rename Subtitle Tool ⭐ CRITICAL
|
|
446
|
+
|
|
447
|
+
**Action:** Rename `SubtitleManager` → `SubtitleProcessor`
|
|
448
|
+
|
|
449
|
+
**Files to update:**
|
|
450
|
+
- [x] `lib/appydave/tools/subtitle_manager/` → `subtitle_processor/`
|
|
451
|
+
- [x] Module names in clean.rb and join.rb
|
|
452
|
+
- [x] `bin/subtitle_manager.rb` → `subtitle_processor.rb` (or keep filename for backward compat)
|
|
453
|
+
- [ ] All spec files
|
|
454
|
+
- [ ] README.md
|
|
455
|
+
- [ ] CLAUDE.md
|
|
456
|
+
- [ ] Gemspec
|
|
457
|
+
- [ ] Exe wrapper scripts
|
|
458
|
+
|
|
459
|
+
**Backward Compatibility:**
|
|
460
|
+
- Keep `subtitle_manager` as CLI command alias
|
|
461
|
+
- Add deprecation warning in v0.15.0
|
|
462
|
+
- Remove alias in v1.0.0
|
|
463
|
+
|
|
464
|
+
---
|
|
465
|
+
|
|
466
|
+
### Priority 2: Enhance Documentation for AI Discovery
|
|
467
|
+
|
|
468
|
+
**Create: `docs/ai-agent-guide.md`**
|
|
469
|
+
|
|
470
|
+
```markdown
|
|
471
|
+
# AI Agent Tool Discovery Guide
|
|
472
|
+
|
|
473
|
+
## Quick Task Reference
|
|
474
|
+
|
|
475
|
+
| User Says... | Use This Tool | Example Command |
|
|
476
|
+
|--------------|---------------|-----------------|
|
|
477
|
+
| "Feed my code to ChatGPT" | GPT Context Gatherer | `gpt_context -i '**/*.rb' -d` |
|
|
478
|
+
| "Clean messy subtitles" | Subtitle Processor | `subtitle_processor clean -f input.srt` |
|
|
479
|
+
| "Merge subtitle files" | Subtitle Processor | `subtitle_processor join -d ./parts` |
|
|
480
|
+
| [etc...] | | |
|
|
481
|
+
|
|
482
|
+
## Scenario → Tool Mapping
|
|
483
|
+
[Detailed scenarios with context]
|
|
484
|
+
|
|
485
|
+
## Tool Relationship Graph
|
|
486
|
+
[Visual or text-based workflow diagrams]
|
|
487
|
+
|
|
488
|
+
## Disambiguation Rules
|
|
489
|
+
[When to use which tool]
|
|
490
|
+
```
|
|
491
|
+
|
|
492
|
+
**Update: `CLAUDE.md` - Add AI Discovery Section**
|
|
493
|
+
|
|
494
|
+
```markdown
|
|
495
|
+
## AI Agent Tool Discovery
|
|
496
|
+
|
|
497
|
+
### Problem-Based Tool Selection
|
|
498
|
+
|
|
499
|
+
When user describes a problem, map to these categories:
|
|
500
|
+
|
|
501
|
+
1. **Code Context Problems** → GPT Context Gatherer
|
|
502
|
+
- Keywords: "feed to AI", "codebase context", "ChatGPT", "Claude"
|
|
503
|
+
|
|
504
|
+
2. **Subtitle Processing Problems** → Subtitle Processor
|
|
505
|
+
- Keywords: "clean subtitles", "merge SRT", "multi-part recording"
|
|
506
|
+
|
|
507
|
+
3. **YouTube Metadata Problems** → YouTube Manager
|
|
508
|
+
- Keywords: "video metadata", "update title", "tags", "description"
|
|
509
|
+
|
|
510
|
+
[etc...]
|
|
511
|
+
```
|
|
512
|
+
|
|
513
|
+
---
|
|
514
|
+
|
|
515
|
+
### Priority 3: Fix Vague Tool Documentation
|
|
516
|
+
|
|
517
|
+
**Prompt Tools & YouTube Automation:**
|
|
518
|
+
|
|
519
|
+
**Option A:** Expand Documentation
|
|
520
|
+
- Add detailed examples with actual inputs/outputs
|
|
521
|
+
- Document all available options
|
|
522
|
+
- Show workflow integration
|
|
523
|
+
- Explain how they differ from other tools
|
|
524
|
+
|
|
525
|
+
**Option B:** Mark as Internal/Experimental
|
|
526
|
+
- Move to "Advanced Tools" section
|
|
527
|
+
- Add "Internal Use" disclaimers
|
|
528
|
+
- Reduce visibility in main README
|
|
529
|
+
- Keep detailed docs in CLAUDE.md for developers
|
|
530
|
+
|
|
531
|
+
**Recommendation:** Option B for now (expand in future releases)
|
|
532
|
+
|
|
533
|
+
---
|
|
534
|
+
|
|
535
|
+
### Priority 4: Create Tool Relationship Documentation
|
|
536
|
+
|
|
537
|
+
**Create: `docs/tool-workflows.md`**
|
|
538
|
+
|
|
539
|
+
```markdown
|
|
540
|
+
# Tool Workflows and Relationships
|
|
541
|
+
|
|
542
|
+
## FliVideo Production Workflow
|
|
543
|
+
[Step-by-step with tool usage]
|
|
544
|
+
|
|
545
|
+
## Multi-Channel Management Workflow
|
|
546
|
+
[Setup and maintenance]
|
|
547
|
+
|
|
548
|
+
## AI-Assisted Content Creation Workflow
|
|
549
|
+
[Using GPT Context + Prompt Tools]
|
|
550
|
+
```
|
|
551
|
+
|
|
552
|
+
---
|
|
553
|
+
|
|
554
|
+
## 5. Summary Table: Documentation Quality Scores
|
|
555
|
+
|
|
556
|
+
| Tool | Naming Accuracy | Problem Clarity | Use Case Specificity | Functional Accuracy | AI Discoverability | Overall Score |
|
|
557
|
+
|------|-----------------|-----------------|----------------------|---------------------|-------------------|---------------|
|
|
558
|
+
| GPT Context Gatherer | 95% ✅ | 95% ✅ | 90% ✅ | 100% ✅ | 90% ✅ | **A+ (95%)** |
|
|
559
|
+
| YouTube Manager | 90% ✅ | 85% ✅ | 70% ⚠️ | 90% ✅ | 75% ⚠️ | **B+ (80%)** |
|
|
560
|
+
| **Subtitle Manager** | **40% ❌** | 70% ⚠️ | 60% ⚠️ | 85% ✅ | 50% ❌ | **C+ (65%)** |
|
|
561
|
+
| Configuration Manager | 85% ✅ | 80% ✅ | 75% ⚠️ | 95% ✅ | 75% ⚠️ | **B+ (80%)** |
|
|
562
|
+
| Move Images | 80% ✅ | 75% ⚠️ | 85% ✅ | 95% ✅ | 60% ⚠️ | **B- (75%)** |
|
|
563
|
+
| Prompt Tools | 70% ⚠️ | 40% ❌ | 40% ❌ | ??? | 30% ❌ | **D+ (50%)** |
|
|
564
|
+
| YouTube Automation | 70% ⚠️ | 50% ❌ | 50% ❌ | ??? | 35% ❌ | **D+ (50%)** |
|
|
565
|
+
|
|
566
|
+
**Legend:**
|
|
567
|
+
- ✅ Good (75-100%)
|
|
568
|
+
- ⚠️ Needs Improvement (50-74%)
|
|
569
|
+
- ❌ Poor (0-49%)
|
|
570
|
+
|
|
571
|
+
---
|
|
572
|
+
|
|
573
|
+
## 6. Immediate Action Items
|
|
574
|
+
|
|
575
|
+
### Must Do (This Release)
|
|
576
|
+
1. ❌ **Rename SubtitleManager → SubtitleProcessor** (accuracy critical)
|
|
577
|
+
2. ⚠️ **Update CLAUDE.md outdated note** about SubtitleMaster
|
|
578
|
+
3. ⚠️ **Add task-based quick reference** to CLAUDE.md
|
|
579
|
+
|
|
580
|
+
### Should Do (Next Release)
|
|
581
|
+
4. ⚠️ **Create `docs/ai-agent-guide.md`** for AI discovery
|
|
582
|
+
5. ⚠️ **Expand Prompt Tools documentation** or mark as internal
|
|
583
|
+
6. ⚠️ **Expand YouTube Automation documentation** or mark as internal
|
|
584
|
+
|
|
585
|
+
### Nice to Have (Future)
|
|
586
|
+
7. ⚠️ **Create `docs/tool-workflows.md`** showing tool relationships
|
|
587
|
+
8. ⚠️ **Add scenario-based discovery section** to README
|
|
588
|
+
9. ⚠️ **Create visual workflow diagrams**
|
|
589
|
+
|
|
590
|
+
---
|
|
591
|
+
|
|
592
|
+
**Analysis Complete** ✅
|