youtube-knowledge-mcp 1.1.0 → 1.2.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.
Files changed (134) hide show
  1. package/README.md +227 -175
  2. package/dist/http.d.ts +64 -0
  3. package/dist/http.d.ts.map +1 -0
  4. package/dist/http.js +283 -0
  5. package/dist/http.js.map +1 -0
  6. package/dist/index.d.ts +19 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +342 -164
  9. package/dist/index.js.map +1 -1
  10. package/dist/prompts.d.ts +3 -0
  11. package/dist/prompts.d.ts.map +1 -0
  12. package/dist/prompts.js +167 -0
  13. package/dist/prompts.js.map +1 -0
  14. package/dist/resources.d.ts +10 -0
  15. package/dist/resources.d.ts.map +1 -0
  16. package/dist/resources.js +72 -0
  17. package/dist/resources.js.map +1 -0
  18. package/dist/schemas.d.ts +326 -0
  19. package/dist/schemas.d.ts.map +1 -0
  20. package/dist/schemas.js +128 -0
  21. package/dist/schemas.js.map +1 -0
  22. package/dist/tools/batch.d.ts +111 -0
  23. package/dist/tools/batch.d.ts.map +1 -0
  24. package/dist/tools/batch.js +187 -0
  25. package/dist/tools/batch.js.map +1 -0
  26. package/dist/tools/check-health.d.ts +59 -0
  27. package/dist/tools/check-health.d.ts.map +1 -0
  28. package/dist/tools/check-health.js +38 -0
  29. package/dist/tools/check-health.js.map +1 -0
  30. package/dist/tools/clips.d.ts +158 -0
  31. package/dist/tools/clips.d.ts.map +1 -0
  32. package/dist/tools/clips.js +279 -0
  33. package/dist/tools/clips.js.map +1 -0
  34. package/dist/tools/download-video.d.ts +43 -12
  35. package/dist/tools/download-video.d.ts.map +1 -1
  36. package/dist/tools/download-video.js +32 -3
  37. package/dist/tools/download-video.js.map +1 -1
  38. package/dist/tools/fetch-videos.d.ts +39 -7
  39. package/dist/tools/fetch-videos.d.ts.map +1 -1
  40. package/dist/tools/fetch-videos.js +20 -3
  41. package/dist/tools/fetch-videos.js.map +1 -1
  42. package/dist/tools/get-channel-info.d.ts +11 -7
  43. package/dist/tools/get-channel-info.d.ts.map +1 -1
  44. package/dist/tools/get-channel-info.js +5 -3
  45. package/dist/tools/get-channel-info.js.map +1 -1
  46. package/dist/tools/get-chapters.d.ts +28 -6
  47. package/dist/tools/get-chapters.d.ts.map +1 -1
  48. package/dist/tools/get-chapters.js +24 -4
  49. package/dist/tools/get-chapters.js.map +1 -1
  50. package/dist/tools/get-comments.d.ts +26 -7
  51. package/dist/tools/get-comments.d.ts.map +1 -1
  52. package/dist/tools/get-comments.js +10 -4
  53. package/dist/tools/get-comments.js.map +1 -1
  54. package/dist/tools/get-playlist-info.d.ts +13 -6
  55. package/dist/tools/get-playlist-info.d.ts.map +1 -1
  56. package/dist/tools/get-playlist-info.js +4 -2
  57. package/dist/tools/get-playlist-info.js.map +1 -1
  58. package/dist/tools/get-transcript.d.ts +42 -7
  59. package/dist/tools/get-transcript.d.ts.map +1 -1
  60. package/dist/tools/get-transcript.js +139 -10
  61. package/dist/tools/get-transcript.js.map +1 -1
  62. package/dist/tools/get-video-info.d.ts +17 -6
  63. package/dist/tools/get-video-info.d.ts.map +1 -1
  64. package/dist/tools/get-video-info.js +5 -2
  65. package/dist/tools/get-video-info.js.map +1 -1
  66. package/dist/tools/library.d.ts +127 -0
  67. package/dist/tools/library.d.ts.map +1 -0
  68. package/dist/tools/library.js +118 -0
  69. package/dist/tools/library.js.map +1 -0
  70. package/dist/tools/list-library.d.ts +40 -6
  71. package/dist/tools/list-library.d.ts.map +1 -1
  72. package/dist/tools/list-library.js +8 -2
  73. package/dist/tools/list-library.js.map +1 -1
  74. package/dist/tools/save-to-library.d.ts +14 -11
  75. package/dist/tools/save-to-library.d.ts.map +1 -1
  76. package/dist/tools/save-to-library.js +15 -8
  77. package/dist/tools/save-to-library.js.map +1 -1
  78. package/dist/tools/search-channels.d.ts +33 -7
  79. package/dist/tools/search-channels.d.ts.map +1 -1
  80. package/dist/tools/search-channels.js +11 -4
  81. package/dist/tools/search-channels.js.map +1 -1
  82. package/dist/tools/search-transcript.d.ts +52 -0
  83. package/dist/tools/search-transcript.d.ts.map +1 -0
  84. package/dist/tools/search-transcript.js +103 -0
  85. package/dist/tools/search-transcript.js.map +1 -0
  86. package/dist/tools/search-videos.d.ts +39 -7
  87. package/dist/tools/search-videos.d.ts.map +1 -1
  88. package/dist/tools/search-videos.js +21 -3
  89. package/dist/tools/search-videos.js.map +1 -1
  90. package/dist/utils/clips.d.ts +69 -0
  91. package/dist/utils/clips.d.ts.map +1 -0
  92. package/dist/utils/clips.js +202 -0
  93. package/dist/utils/clips.js.map +1 -0
  94. package/dist/utils/context.d.ts +24 -0
  95. package/dist/utils/context.d.ts.map +1 -0
  96. package/dist/utils/context.js +19 -0
  97. package/dist/utils/context.js.map +1 -0
  98. package/dist/utils/errors.d.ts +58 -0
  99. package/dist/utils/errors.d.ts.map +1 -0
  100. package/dist/utils/errors.js +152 -0
  101. package/dist/utils/errors.js.map +1 -0
  102. package/dist/utils/format.d.ts +34 -5
  103. package/dist/utils/format.d.ts.map +1 -1
  104. package/dist/utils/format.js +45 -0
  105. package/dist/utils/format.js.map +1 -1
  106. package/dist/utils/preflight.d.ts +30 -0
  107. package/dist/utils/preflight.d.ts.map +1 -0
  108. package/dist/utils/preflight.js +79 -0
  109. package/dist/utils/preflight.js.map +1 -0
  110. package/dist/utils/search-index.d.ts +58 -0
  111. package/dist/utils/search-index.d.ts.map +1 -0
  112. package/dist/utils/search-index.js +192 -0
  113. package/dist/utils/search-index.js.map +1 -0
  114. package/dist/utils/storage.d.ts +83 -6
  115. package/dist/utils/storage.d.ts.map +1 -1
  116. package/dist/utils/storage.js +204 -21
  117. package/dist/utils/storage.js.map +1 -1
  118. package/dist/utils/transcript.d.ts +142 -0
  119. package/dist/utils/transcript.d.ts.map +1 -0
  120. package/dist/utils/transcript.js +216 -0
  121. package/dist/utils/transcript.js.map +1 -0
  122. package/dist/utils/validate.d.ts +16 -0
  123. package/dist/utils/validate.d.ts.map +1 -0
  124. package/dist/utils/validate.js +64 -0
  125. package/dist/utils/validate.js.map +1 -0
  126. package/dist/utils/youtube.d.ts +15 -1
  127. package/dist/utils/youtube.d.ts.map +1 -1
  128. package/dist/utils/youtube.js +231 -174
  129. package/dist/utils/youtube.js.map +1 -1
  130. package/dist/utils/ytdlp.d.ts +51 -0
  131. package/dist/utils/ytdlp.d.ts.map +1 -0
  132. package/dist/utils/ytdlp.js +191 -0
  133. package/dist/utils/ytdlp.js.map +1 -0
  134. package/package.json +19 -14
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ export declare function registerPrompts(server: McpServer, mode: 'stdio' | 'http'): void;
3
+ //# sourceMappingURL=prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsCzE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAoM/E"}
@@ -0,0 +1,167 @@
1
+ import { z } from 'zod';
2
+ import { completable } from '@modelcontextprotocol/sdk/server/completable.js';
3
+ import { listTags } from './utils/storage.js';
4
+ /**
5
+ * Reusable workflows, exposed as MCP prompts.
6
+ *
7
+ * These encode the sequences that were previously buried in the server's
8
+ * instructions string, where a client could read them but not invoke them.
9
+ */
10
+ function userMessage(text) {
11
+ return { messages: [{ role: 'user', content: { type: 'text', text } }] };
12
+ }
13
+ const video = z.string().describe('YouTube video ID or URL');
14
+ /**
15
+ * An optional prompt argument that offers completions.
16
+ *
17
+ * The SDK looks for the completion marker in two places, and unwraps
18
+ * differently in each: registering the prompt unwraps one level of ZodOptional
19
+ * and inspects the schema inside, while serving a `completion/complete` request
20
+ * inspects the field as declared. Marking only the inner schema advertises the
21
+ * capability but then completes to nothing; marking only the outer one never
22
+ * advertises it at all, and the client gets "method not found". Both layers
23
+ * therefore carry the marker.
24
+ */
25
+ function completableOptional(schema,
26
+ // Undefined when the client asks for completions before anything is typed.
27
+ complete) {
28
+ return completable(completable(schema, complete).optional(), complete);
29
+ }
30
+ export function registerPrompts(server, mode) {
31
+ server.registerPrompt('summarize_video', {
32
+ title: 'Summarize a video',
33
+ description: "Read a video's chapters and transcript and produce a structured summary with timestamped citations.",
34
+ argsSchema: {
35
+ video,
36
+ depth: z
37
+ .enum(['brief', 'standard', 'detailed'])
38
+ .optional()
39
+ .describe('How much detail to produce. Default: standard'),
40
+ },
41
+ }, ({ video: target, depth }) => userMessage([
42
+ `Summarize the YouTube video ${target}.`,
43
+ '',
44
+ '1. Call get_video_info for the title, channel and description.',
45
+ '2. Call get_chapters to learn the structure before reading anything long.',
46
+ `3. Call get_transcript with format="timestamped"${depth === 'brief' ? ' and maxChars=8000' : ''}.`,
47
+ '',
48
+ `Write a ${depth ?? 'standard'} summary. Cite specific moments as [MM:SS] and include`,
49
+ 'a https://www.youtube.com/watch?v=...&t=...s link for each key claim, so every point',
50
+ 'can be checked against the source.',
51
+ ].join('\n')));
52
+ server.registerPrompt('extract_skill', {
53
+ title: 'Extract a reusable skill',
54
+ description: 'Turn a how-to or tutorial video into a step-by-step procedure someone could follow without watching it.',
55
+ argsSchema: { video },
56
+ }, ({ video: target }) => userMessage([
57
+ `Extract the practical technique taught in ${target} as a reusable procedure.`,
58
+ '',
59
+ 'Read the transcript with get_transcript, using get_chapters first if the video has them.',
60
+ 'Produce: prerequisites, numbered steps, the specific commands or settings mentioned,',
61
+ 'and the mistakes the author warns about. Omit anecdotes and filler.',
62
+ '',
63
+ 'Keep a [MM:SS] reference on each step so it can be checked against the video.',
64
+ ].join('\n')));
65
+ server.registerPrompt('compare_videos', {
66
+ title: 'Compare several videos',
67
+ description: 'Compare how multiple videos treat the same topic, and where they disagree.',
68
+ argsSchema: {
69
+ videos: z.string().describe('Comma-separated video IDs or URLs'),
70
+ focus: z.string().optional().describe('A specific question to compare them on'),
71
+ },
72
+ }, ({ videos, focus }) => userMessage([
73
+ `Compare these videos: ${videos}`,
74
+ '',
75
+ 'Call get_transcripts once with all of them rather than fetching each separately.',
76
+ focus === undefined ? '' : `Focus on: ${focus}`,
77
+ '',
78
+ 'Report where they agree, where they genuinely disagree (not just differ in emphasis),',
79
+ 'and what each covers that the others do not. Attribute every claim to a specific video.',
80
+ ]
81
+ .filter(Boolean)
82
+ .join('\n')));
83
+ server.registerPrompt('research_topic', {
84
+ title: 'Research a topic on YouTube',
85
+ description: 'Search for videos on a topic, survey them cheaply, then read the ones worth reading.',
86
+ argsSchema: {
87
+ topic: z.string().describe('What to research'),
88
+ depth: z
89
+ .enum(['survey', 'deep'])
90
+ .optional()
91
+ .describe('survey reads metadata only; deep reads transcripts. Default: survey'),
92
+ },
93
+ }, ({ topic, depth }) => userMessage([
94
+ `Research "${topic}" on YouTube.`,
95
+ '',
96
+ '1. search_videos to find candidates, and search_channels for authoritative sources.',
97
+ '2. Judge relevance from titles, durations and view counts before fetching anything large.',
98
+ depth === 'deep'
99
+ ? '3. get_transcripts for the shortlist, then search_transcript to locate specific claims.'
100
+ : '3. get_video_info and get_chapters for the shortlist. Only read a transcript if a video looks essential.',
101
+ '',
102
+ 'Report what the consensus is, where sources disagree, and which video best answers the question.',
103
+ ].join('\n')));
104
+ server.registerPrompt('channel_deep_dive', {
105
+ title: 'Survey a channel',
106
+ description: "Characterize a channel's output and identify its most substantial videos.",
107
+ argsSchema: {
108
+ channel: z.string().describe('Channel URL, @handle, or name'),
109
+ limit: z.string().optional().describe('How many videos to survey. Default: 20'),
110
+ },
111
+ }, ({ channel, limit }) => userMessage([
112
+ `Survey the YouTube channel ${channel}.`,
113
+ '',
114
+ `1. get_channel_info for context, then digest_playlist with limit=${limit ?? '20'}.`,
115
+ '2. Identify recurring themes, the format the channel favours, and how it has changed over time.',
116
+ '3. Name the three videos most worth watching and say why.',
117
+ ].join('\n')));
118
+ server.registerPrompt('clip_from_quote', {
119
+ title: 'Clip a moment from a quote',
120
+ description: 'Find a phrase in a video and cut a clip around it — the search-then-extract workflow.',
121
+ argsSchema: {
122
+ video,
123
+ quote: z.string().describe('Words spoken in the video, roughly'),
124
+ padding: z
125
+ .string()
126
+ .optional()
127
+ .describe('Seconds of context to keep either side. Default: 5'),
128
+ },
129
+ }, ({ video: target, quote, padding }) => {
130
+ const pad = padding ?? '5';
131
+ return userMessage([
132
+ `Find where "${quote}" is said in ${target} and cut a clip around it.`,
133
+ '',
134
+ `1. search_transcript with query="${quote}" to get the timestamp.`,
135
+ `2. If several moments match, report them and ask which one before cutting.`,
136
+ `3. extract_clip starting ${pad}s before the match and ending ${pad}s after the sentence finishes.`,
137
+ '',
138
+ 'Report the clip path and the timestamp it came from.',
139
+ ].join('\n'));
140
+ });
141
+ // Library prompts only exist where the library does.
142
+ if (mode !== 'stdio')
143
+ return;
144
+ server.registerPrompt('review_library', {
145
+ title: 'Review the knowledge library',
146
+ description: 'Survey what is saved locally on a topic and synthesize it.',
147
+ argsSchema: {
148
+ // Completion over real tags, so the client can offer what actually exists.
149
+ tag: completableOptional(z.string().describe('Restrict to this tag'), async (value) => {
150
+ const prefix = (value ?? '').toLowerCase();
151
+ const tags = await listTags();
152
+ return tags.filter((candidate) => candidate.toLowerCase().startsWith(prefix));
153
+ }),
154
+ },
155
+ }, ({ tag }) => userMessage([
156
+ tag === undefined
157
+ ? 'Review everything saved in the YouTube knowledge library.'
158
+ : `Review the library entries tagged "${tag}".`,
159
+ '',
160
+ '1. list_library to see what is there.',
161
+ '2. get_library_item for the relevant entries, or search_library if you have a specific question.',
162
+ '',
163
+ 'Synthesize the themes across them, note where saved notes contradict each other,',
164
+ 'and point out gaps worth filling.',
165
+ ].join('\n')));
166
+ }
167
+ //# sourceMappingURL=prompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ /**
3
+ * Saved notes and cached transcripts, exposed as MCP resources.
4
+ *
5
+ * A client can attach these directly as context rather than spending a tool call
6
+ * to fetch them, which is what resources are for. Library resources are only
7
+ * registered in stdio mode, matching the tools that write them.
8
+ */
9
+ export declare function registerResources(server: McpServer, mode: 'stdio' | 'http'): void;
10
+ //# sourceMappingURL=resources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMzE;;;;;;GAMG;AAEH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAyEjF"}
@@ -0,0 +1,72 @@
1
+ import { ResourceTemplate } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import { getLibraryItem, listLibrary } from './utils/storage.js';
3
+ import { getTranscript } from './utils/youtube.js';
4
+ import { segmentsToTimestamped } from './utils/transcript.js';
5
+ /**
6
+ * Saved notes and cached transcripts, exposed as MCP resources.
7
+ *
8
+ * A client can attach these directly as context rather than spending a tool call
9
+ * to fetch them, which is what resources are for. Library resources are only
10
+ * registered in stdio mode, matching the tools that write them.
11
+ */
12
+ export function registerResources(server, mode) {
13
+ server.registerResource('transcript', new ResourceTemplate('youtube://transcript/{videoId}', { list: undefined }), {
14
+ title: 'Video transcript',
15
+ description: 'Timestamped transcript for a YouTube video, fetched and cached on first read.',
16
+ mimeType: 'text/plain',
17
+ }, async (uri, { videoId }) => {
18
+ const id = Array.isArray(videoId) ? videoId[0] : videoId;
19
+ const transcript = await getTranscript(id ?? '');
20
+ return {
21
+ contents: [
22
+ {
23
+ uri: uri.href,
24
+ mimeType: 'text/plain',
25
+ text: segmentsToTimestamped(transcript.segments),
26
+ },
27
+ ],
28
+ };
29
+ });
30
+ if (mode !== 'stdio')
31
+ return;
32
+ server.registerResource('library-item', new ResourceTemplate('youtube://library/{videoId}/{contentType}', {
33
+ // Enumerate what is actually saved, so a client can browse the library.
34
+ list: async () => {
35
+ const items = await listLibrary();
36
+ return {
37
+ resources: items.flatMap((item) => [
38
+ ...(item.hasSummary
39
+ ? [
40
+ {
41
+ uri: `youtube://library/${item.videoId}/summary`,
42
+ name: `${item.title} (summary)`,
43
+ mimeType: 'text/markdown',
44
+ },
45
+ ]
46
+ : []),
47
+ ...(item.hasSkill
48
+ ? [
49
+ {
50
+ uri: `youtube://library/${item.videoId}/skill`,
51
+ name: `${item.title} (skill)`,
52
+ mimeType: 'text/markdown',
53
+ },
54
+ ]
55
+ : []),
56
+ ]),
57
+ };
58
+ },
59
+ }), {
60
+ title: 'Saved library note',
61
+ description: 'A summary or skill note previously saved to the local knowledge library.',
62
+ mimeType: 'text/markdown',
63
+ }, async (uri, { videoId, contentType }) => {
64
+ const id = Array.isArray(videoId) ? videoId[0] : videoId;
65
+ const type = Array.isArray(contentType) ? contentType[0] : contentType;
66
+ const wanted = type === 'skill' ? 'skill' : 'summary';
67
+ const item = await getLibraryItem(id ?? '', wanted);
68
+ const text = (wanted === 'skill' ? item.skill : item.summary) ?? '';
69
+ return { contents: [{ uri: uri.href, mimeType: 'text/markdown', text }] };
70
+ });
71
+ }
72
+ //# sourceMappingURL=resources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,326 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Output schemas.
4
+ *
5
+ * Every tool declares one, so a client receives typed `structuredContent`
6
+ * alongside the readable text rather than having to parse prose. The domain
7
+ * shapes live here because several tools return the same ones.
8
+ */
9
+ export declare const paginationShape: {
10
+ total: z.ZodNumber;
11
+ count: z.ZodNumber;
12
+ offset: z.ZodNumber;
13
+ hasMore: z.ZodBoolean;
14
+ nextOffset: z.ZodOptional<z.ZodNumber>;
15
+ };
16
+ export declare const videoSummarySchema: z.ZodObject<{
17
+ id: z.ZodString;
18
+ title: z.ZodString;
19
+ durationSeconds: z.ZodNumber;
20
+ durationFormatted: z.ZodString;
21
+ url: z.ZodString;
22
+ channel: z.ZodOptional<z.ZodString>;
23
+ viewCount: z.ZodOptional<z.ZodNumber>;
24
+ uploadDate: z.ZodOptional<z.ZodString>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ url: string;
27
+ title: string;
28
+ id: string;
29
+ durationFormatted: string;
30
+ durationSeconds: number;
31
+ channel?: string | undefined;
32
+ uploadDate?: string | undefined;
33
+ viewCount?: number | undefined;
34
+ }, {
35
+ url: string;
36
+ title: string;
37
+ id: string;
38
+ durationFormatted: string;
39
+ durationSeconds: number;
40
+ channel?: string | undefined;
41
+ uploadDate?: string | undefined;
42
+ viewCount?: number | undefined;
43
+ }>;
44
+ export declare const videoInfoSchema: z.ZodObject<{
45
+ id: z.ZodString;
46
+ title: z.ZodString;
47
+ channel: z.ZodString;
48
+ durationSeconds: z.ZodNumber;
49
+ durationFormatted: z.ZodString;
50
+ uploadDate: z.ZodString;
51
+ description: z.ZodString;
52
+ tags: z.ZodArray<z.ZodString, "many">;
53
+ url: z.ZodString;
54
+ thumbnailUrl: z.ZodString;
55
+ viewCount: z.ZodNumber;
56
+ likeCount: z.ZodNumber;
57
+ commentCount: z.ZodNumber;
58
+ }, "strip", z.ZodTypeAny, {
59
+ url: string;
60
+ description: string;
61
+ title: string;
62
+ channel: string;
63
+ id: string;
64
+ uploadDate: string;
65
+ thumbnailUrl: string;
66
+ tags: string[];
67
+ durationFormatted: string;
68
+ viewCount: number;
69
+ likeCount: number;
70
+ commentCount: number;
71
+ durationSeconds: number;
72
+ }, {
73
+ url: string;
74
+ description: string;
75
+ title: string;
76
+ channel: string;
77
+ id: string;
78
+ uploadDate: string;
79
+ thumbnailUrl: string;
80
+ tags: string[];
81
+ durationFormatted: string;
82
+ viewCount: number;
83
+ likeCount: number;
84
+ commentCount: number;
85
+ durationSeconds: number;
86
+ }>;
87
+ export declare const chapterSchema: z.ZodObject<{
88
+ title: z.ZodString;
89
+ startSeconds: z.ZodNumber;
90
+ startFormatted: z.ZodString;
91
+ endSeconds: z.ZodNumber;
92
+ endFormatted: z.ZodString;
93
+ url: z.ZodString;
94
+ }, "strip", z.ZodTypeAny, {
95
+ url: string;
96
+ title: string;
97
+ startSeconds: number;
98
+ startFormatted: string;
99
+ endSeconds: number;
100
+ endFormatted: string;
101
+ }, {
102
+ url: string;
103
+ title: string;
104
+ startSeconds: number;
105
+ startFormatted: string;
106
+ endSeconds: number;
107
+ endFormatted: string;
108
+ }>;
109
+ export declare const commentSchema: z.ZodObject<{
110
+ author: z.ZodString;
111
+ text: z.ZodString;
112
+ likeCount: z.ZodNumber;
113
+ isPinned: z.ZodBoolean;
114
+ }, "strip", z.ZodTypeAny, {
115
+ text: string;
116
+ likeCount: number;
117
+ author: string;
118
+ isPinned: boolean;
119
+ }, {
120
+ text: string;
121
+ likeCount: number;
122
+ author: string;
123
+ isPinned: boolean;
124
+ }>;
125
+ export declare const channelInfoSchema: z.ZodObject<{
126
+ name: z.ZodString;
127
+ channelId: z.ZodString;
128
+ handle: z.ZodString;
129
+ subscriberCount: z.ZodNumber;
130
+ channelUrl: z.ZodString;
131
+ description: z.ZodString;
132
+ }, "strip", z.ZodTypeAny, {
133
+ description: string;
134
+ name: string;
135
+ handle: string;
136
+ channelUrl: string;
137
+ channelId: string;
138
+ subscriberCount: number;
139
+ }, {
140
+ description: string;
141
+ name: string;
142
+ handle: string;
143
+ channelUrl: string;
144
+ channelId: string;
145
+ subscriberCount: number;
146
+ }>;
147
+ export declare const playlistInfoSchema: z.ZodObject<{
148
+ id: z.ZodString;
149
+ title: z.ZodString;
150
+ channel: z.ZodString;
151
+ handle: z.ZodString;
152
+ channelUrl: z.ZodString;
153
+ videoCount: z.ZodNumber;
154
+ lastModified: z.ZodString;
155
+ url: z.ZodString;
156
+ description: z.ZodString;
157
+ }, "strip", z.ZodTypeAny, {
158
+ url: string;
159
+ lastModified: string;
160
+ description: string;
161
+ title: string;
162
+ channel: string;
163
+ id: string;
164
+ handle: string;
165
+ channelUrl: string;
166
+ videoCount: number;
167
+ }, {
168
+ url: string;
169
+ lastModified: string;
170
+ description: string;
171
+ title: string;
172
+ channel: string;
173
+ id: string;
174
+ handle: string;
175
+ channelUrl: string;
176
+ videoCount: number;
177
+ }>;
178
+ export declare const videoFormatSchema: z.ZodObject<{
179
+ formatId: z.ZodString;
180
+ ext: z.ZodString;
181
+ resolution: z.ZodString;
182
+ fps: z.ZodOptional<z.ZodNumber>;
183
+ vcodec: z.ZodString;
184
+ acodec: z.ZodString;
185
+ filesizeBytes: z.ZodOptional<z.ZodNumber>;
186
+ note: z.ZodString;
187
+ kind: z.ZodEnum<["video+audio", "video-only", "audio-only"]>;
188
+ }, "strip", z.ZodTypeAny, {
189
+ formatId: string;
190
+ ext: string;
191
+ resolution: string;
192
+ vcodec: string;
193
+ acodec: string;
194
+ note: string;
195
+ kind: "video+audio" | "video-only" | "audio-only";
196
+ fps?: number | undefined;
197
+ filesizeBytes?: number | undefined;
198
+ }, {
199
+ formatId: string;
200
+ ext: string;
201
+ resolution: string;
202
+ vcodec: string;
203
+ acodec: string;
204
+ note: string;
205
+ kind: "video+audio" | "video-only" | "audio-only";
206
+ fps?: number | undefined;
207
+ filesizeBytes?: number | undefined;
208
+ }>;
209
+ export declare const transcriptSegmentSchema: z.ZodObject<{
210
+ startSeconds: z.ZodNumber;
211
+ endSeconds: z.ZodNumber;
212
+ text: z.ZodString;
213
+ }, "strip", z.ZodTypeAny, {
214
+ text: string;
215
+ startSeconds: number;
216
+ endSeconds: number;
217
+ }, {
218
+ text: string;
219
+ startSeconds: number;
220
+ endSeconds: number;
221
+ }>;
222
+ export declare const transcriptMatchSchema: z.ZodObject<{
223
+ startSeconds: z.ZodNumber;
224
+ startFormatted: z.ZodString;
225
+ text: z.ZodString;
226
+ url: z.ZodString;
227
+ }, "strip", z.ZodTypeAny, {
228
+ url: string;
229
+ text: string;
230
+ startSeconds: number;
231
+ startFormatted: string;
232
+ }, {
233
+ url: string;
234
+ text: string;
235
+ startSeconds: number;
236
+ startFormatted: string;
237
+ }>;
238
+ export declare const libraryMetadataSchema: z.ZodObject<{
239
+ videoId: z.ZodString;
240
+ title: z.ZodString;
241
+ channel: z.ZodString;
242
+ url: z.ZodString;
243
+ tags: z.ZodArray<z.ZodString, "many">;
244
+ dateSaved: z.ZodString;
245
+ hasTranscript: z.ZodBoolean;
246
+ hasSummary: z.ZodBoolean;
247
+ hasSkill: z.ZodBoolean;
248
+ }, "strip", z.ZodTypeAny, {
249
+ url: string;
250
+ title: string;
251
+ channel: string;
252
+ videoId: string;
253
+ tags: string[];
254
+ dateSaved: string;
255
+ hasTranscript: boolean;
256
+ hasSummary: boolean;
257
+ hasSkill: boolean;
258
+ }, {
259
+ url: string;
260
+ title: string;
261
+ channel: string;
262
+ videoId: string;
263
+ tags: string[];
264
+ dateSaved: string;
265
+ hasTranscript: boolean;
266
+ hasSummary: boolean;
267
+ hasSkill: boolean;
268
+ }>;
269
+ export declare const librarySearchHitSchema: z.ZodObject<{
270
+ videoId: z.ZodString;
271
+ title: z.ZodString;
272
+ kind: z.ZodString;
273
+ score: z.ZodNumber;
274
+ excerpt: z.ZodString;
275
+ }, "strip", z.ZodTypeAny, {
276
+ title: string;
277
+ videoId: string;
278
+ kind: string;
279
+ score: number;
280
+ excerpt: string;
281
+ }, {
282
+ title: string;
283
+ videoId: string;
284
+ kind: string;
285
+ score: number;
286
+ excerpt: string;
287
+ }>;
288
+ export declare const clipResultSchema: z.ZodObject<{
289
+ videoId: z.ZodString;
290
+ title: z.ZodString;
291
+ filePath: z.ZodString;
292
+ startSeconds: z.ZodNumber;
293
+ endSeconds: z.ZodNumber;
294
+ durationSeconds: z.ZodNumber;
295
+ }, "strip", z.ZodTypeAny, {
296
+ title: string;
297
+ videoId: string;
298
+ filePath: string;
299
+ durationSeconds: number;
300
+ startSeconds: number;
301
+ endSeconds: number;
302
+ }, {
303
+ title: string;
304
+ videoId: string;
305
+ filePath: string;
306
+ durationSeconds: number;
307
+ startSeconds: number;
308
+ endSeconds: number;
309
+ }>;
310
+ export declare const binaryStatusSchema: z.ZodObject<{
311
+ name: z.ZodString;
312
+ installed: z.ZodBoolean;
313
+ version: z.ZodOptional<z.ZodString>;
314
+ warning: z.ZodOptional<z.ZodString>;
315
+ }, "strip", z.ZodTypeAny, {
316
+ name: string;
317
+ installed: boolean;
318
+ version?: string | undefined;
319
+ warning?: string | undefined;
320
+ }, {
321
+ name: string;
322
+ installed: boolean;
323
+ version?: string | undefined;
324
+ warning?: string | undefined;
325
+ }>;
326
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;GAMG;AAEH,eAAO,MAAM,eAAe;;;;;;CAM3B,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS7B,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc1B,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;EAOxB,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;EAKxB,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAO5B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU7B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU5B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;EAIlC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAKhC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUhC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;EAMjC,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;EAO3B,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;EAK7B,CAAC"}