aiwg 2026.2.5 → 2026.2.7
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/agentic/code/frameworks/media-curator/README.md +138 -0
- package/agentic/code/frameworks/media-curator/agents/acquisition-manager.md +725 -0
- package/agentic/code/frameworks/media-curator/agents/completeness-tracker.md +519 -0
- package/agentic/code/frameworks/media-curator/agents/discography-analyst.md +419 -0
- package/agentic/code/frameworks/media-curator/agents/metadata-curator.md +333 -0
- package/agentic/code/frameworks/media-curator/agents/quality-assessor.md +338 -0
- package/agentic/code/frameworks/media-curator/agents/source-discoverer.md +441 -0
- package/agentic/code/frameworks/media-curator/commands/acquire.md +688 -0
- package/agentic/code/frameworks/media-curator/commands/analyze-artist.md +569 -0
- package/agentic/code/frameworks/media-curator/commands/assemble.md +390 -0
- package/agentic/code/frameworks/media-curator/commands/check-completeness.md +586 -0
- package/agentic/code/frameworks/media-curator/commands/curate.md +633 -0
- package/agentic/code/frameworks/media-curator/commands/export.md +497 -0
- package/agentic/code/frameworks/media-curator/commands/find-sources.md +544 -0
- package/agentic/code/frameworks/media-curator/commands/tag-collection.md +457 -0
- package/agentic/code/frameworks/media-curator/commands/verify-archive.md +427 -0
- package/agentic/code/frameworks/media-curator/config/defaults.yaml +77 -0
- package/agentic/code/frameworks/media-curator/docs/overview.md +119 -0
- package/agentic/code/frameworks/media-curator/docs/standards-reference.md +109 -0
- package/agentic/code/frameworks/media-curator/docs/user-guide.md +226 -0
- package/agentic/code/frameworks/media-curator/manifest.json +18 -0
- package/agentic/code/frameworks/media-curator/plan-act-curator.md +60 -0
- package/agentic/code/frameworks/media-curator/skills/archive-acquisition.md +942 -0
- package/agentic/code/frameworks/media-curator/skills/audio-extraction.md +149 -0
- package/agentic/code/frameworks/media-curator/skills/cover-art-embedding.md +643 -0
- package/agentic/code/frameworks/media-curator/skills/gap-documentation.md +487 -0
- package/agentic/code/frameworks/media-curator/skills/integrity-verification.md +673 -0
- package/agentic/code/frameworks/media-curator/skills/metadata-tagging.md +521 -0
- package/agentic/code/frameworks/media-curator/skills/provenance-tracking.md +174 -0
- package/agentic/code/frameworks/media-curator/skills/quality-filtering.md +544 -0
- package/agentic/code/frameworks/media-curator/skills/youtube-acquisition.md +829 -0
- package/docs/releases/v2026.2.7-announcement.md +144 -0
- package/package.json +1 -1
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
# Media Curator Framework
|
|
2
|
+
|
|
3
|
+
Intelligent media archive management for building, curating, and maintaining comprehensive media collections. Handles discography analysis, source discovery, acquisition, quality assessment, metadata curation, and multi-platform export.
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Deploy the framework
|
|
9
|
+
aiwg use media-curator
|
|
10
|
+
|
|
11
|
+
# Analyze an artist's discography
|
|
12
|
+
/analyze-artist "Twenty One Pilots"
|
|
13
|
+
|
|
14
|
+
# Discover sources for specific content
|
|
15
|
+
/find-sources "Twenty One Pilots" --scope "complete"
|
|
16
|
+
|
|
17
|
+
# Acquire content from discovered sources
|
|
18
|
+
/acquire --plan sources.yaml
|
|
19
|
+
|
|
20
|
+
# Tag and organize the collection
|
|
21
|
+
/tag-collection /path/to/collection
|
|
22
|
+
|
|
23
|
+
# Check collection completeness
|
|
24
|
+
/check-completeness "Twenty One Pilots"
|
|
25
|
+
|
|
26
|
+
# Verify archive integrity
|
|
27
|
+
/verify-archive /path/to/collection
|
|
28
|
+
|
|
29
|
+
# Export for a specific platform
|
|
30
|
+
/export --profile plex /path/to/collection /path/to/output
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Capabilities
|
|
34
|
+
|
|
35
|
+
| Capability | Agent | Command |
|
|
36
|
+
|-----------|-------|---------|
|
|
37
|
+
| Discography research and era identification | `discography-analyst` | `/analyze-artist` |
|
|
38
|
+
| Multi-platform source discovery | `source-discoverer` | `/find-sources` |
|
|
39
|
+
| Download orchestration with format selection | `acquisition-manager` | `/acquire` |
|
|
40
|
+
| Audio/video quality scoring and filtering | `quality-assessor` | (integrated) |
|
|
41
|
+
| Metadata tagging and artwork embedding | `metadata-curator` | `/tag-collection` |
|
|
42
|
+
| Gap analysis and completeness tracking | `completeness-tracker` | `/check-completeness` |
|
|
43
|
+
| Narrative and playlist assembly | (integrated) | `/assemble` |
|
|
44
|
+
| Multi-platform format export | (integrated) | `/export` |
|
|
45
|
+
| SHA-256 integrity verification | (integrated) | `/verify-archive` |
|
|
46
|
+
|
|
47
|
+
## Architecture
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
media-curator/
|
|
51
|
+
├── agents/
|
|
52
|
+
│ ├── discography-analyst.md # Era/project identification
|
|
53
|
+
│ ├── source-discoverer.md # Finding content across platforms
|
|
54
|
+
│ ├── acquisition-manager.md # Download orchestration
|
|
55
|
+
│ ├── quality-assessor.md # Accept/reject criteria
|
|
56
|
+
│ ├── metadata-curator.md # Tagging and organization
|
|
57
|
+
│ └── completeness-tracker.md # Gap analysis
|
|
58
|
+
├── commands/
|
|
59
|
+
│ ├── curate.md # Main orchestration entry point
|
|
60
|
+
│ ├── analyze-artist.md # Discography analysis
|
|
61
|
+
│ ├── find-sources.md # Source discovery
|
|
62
|
+
│ ├── acquire.md # Download management
|
|
63
|
+
│ ├── tag-collection.md # Metadata application
|
|
64
|
+
│ ├── check-completeness.md # Gap analysis
|
|
65
|
+
│ ├── assemble.md # Narrative/playlist assembly
|
|
66
|
+
│ ├── export.md # Multi-platform output
|
|
67
|
+
│ └── verify-archive.md # Integrity verification
|
|
68
|
+
├── skills/
|
|
69
|
+
│ ├── youtube-acquisition.md # yt-dlp patterns
|
|
70
|
+
│ ├── archive-acquisition.md # Internet Archive patterns
|
|
71
|
+
│ ├── audio-extraction.md # ffmpeg audio extraction
|
|
72
|
+
│ ├── metadata-tagging.md # opustags/ffmpeg tagging
|
|
73
|
+
│ ├── quality-filtering.md # Accept/reject logic
|
|
74
|
+
│ ├── cover-art-embedding.md # Artwork embedding
|
|
75
|
+
│ ├── integrity-verification.md # SHA-256 manifests
|
|
76
|
+
│ ├── gap-documentation.md # GAP-NOTE.md pattern
|
|
77
|
+
│ └── provenance-tracking.md # W3C PROV-O for media
|
|
78
|
+
├── config/
|
|
79
|
+
│ └── defaults.yaml # Default configuration
|
|
80
|
+
└── docs/
|
|
81
|
+
├── overview.md # Framework overview
|
|
82
|
+
├── user-guide.md # User guide
|
|
83
|
+
└── standards-reference.md # Standards (PREMIS, PROV, ID3)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## User Interaction Patterns
|
|
87
|
+
|
|
88
|
+
### Complete Collection
|
|
89
|
+
```
|
|
90
|
+
User: "My favorite band is Radiohead - build me the complete collection"
|
|
91
|
+
→ Analyzes eras, discovers sources, acquires systematically, delivers organized collection
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Targeted Extraction
|
|
95
|
+
```
|
|
96
|
+
User: "I love early Metallica - Master of Puppets era"
|
|
97
|
+
→ Identifies 1983-1988, finds era-specific content, delivers focused collection
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### Event/Tour Focus
|
|
101
|
+
```
|
|
102
|
+
User: "Twenty One Pilots Bandito Tour - everything from that tour"
|
|
103
|
+
→ Identifies tour dates/venues, finds pro-shot performances, delivers tour archive
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Quality Tiers
|
|
107
|
+
|
|
108
|
+
| Tier | Sources | Action |
|
|
109
|
+
|------|---------|--------|
|
|
110
|
+
| 1: Official/Lossless | Bandcamp FLAC, official YouTube | Always accept |
|
|
111
|
+
| 2: High Quality | YouTube Music AAC 256, SoundCloud 320 | Accept |
|
|
112
|
+
| 3: Standard | YouTube AAC 128-256 | Accept if unique |
|
|
113
|
+
| 4: Avoid | Phone recordings, heavy compression | Reject (unless legendary) |
|
|
114
|
+
|
|
115
|
+
## Standards
|
|
116
|
+
|
|
117
|
+
| Standard | Usage |
|
|
118
|
+
|----------|-------|
|
|
119
|
+
| ID3v2.4 / Vorbis Comments | Audio metadata |
|
|
120
|
+
| SHA-256 (NIST FIPS 180-4) | Integrity verification |
|
|
121
|
+
| PREMIS 3.0 | Preservation fixity metadata |
|
|
122
|
+
| W3C PROV-O | Provenance tracking |
|
|
123
|
+
| ISO 8601 | Timestamps (UTC, nanosecond precision) |
|
|
124
|
+
| MusicBrainz | Canonical discography data |
|
|
125
|
+
|
|
126
|
+
## Tools Required
|
|
127
|
+
|
|
128
|
+
| Tool | Purpose | Install |
|
|
129
|
+
|------|---------|---------|
|
|
130
|
+
| `yt-dlp` | Video/audio acquisition | `pip install yt-dlp` |
|
|
131
|
+
| `ffmpeg` | Transcoding, extraction | System package |
|
|
132
|
+
| `opustags` | Opus metadata tagging | System package |
|
|
133
|
+
| `sha256sum` | Integrity checksums | GNU coreutils |
|
|
134
|
+
|
|
135
|
+
## Related Issues
|
|
136
|
+
|
|
137
|
+
- Epic: [#75](https://git.integrolabs.net/roctinam/ai-writing-guide/issues/75)
|
|
138
|
+
- Child issues: #76-#83, #253
|