@vncsleal/quillby 0.3.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 (61) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +140 -0
  3. package/bin/quillby-mcp +12 -0
  4. package/config/context.json +1 -0
  5. package/config/memory.json +1 -0
  6. package/config/rss_sources.txt +2 -0
  7. package/dist/agent.d.ts +21 -0
  8. package/dist/agent.js +61 -0
  9. package/dist/agent.js.map +1 -0
  10. package/dist/agents/compose.d.ts +2 -0
  11. package/dist/agents/compose.js +40 -0
  12. package/dist/agents/compose.js.map +1 -0
  13. package/dist/agents/discover.d.ts +15 -0
  14. package/dist/agents/discover.js +39 -0
  15. package/dist/agents/discover.js.map +1 -0
  16. package/dist/agents/harvest.d.ts +31 -0
  17. package/dist/agents/harvest.js +100 -0
  18. package/dist/agents/harvest.js.map +1 -0
  19. package/dist/agents/onboard.d.ts +14 -0
  20. package/dist/agents/onboard.js +88 -0
  21. package/dist/agents/onboard.js.map +1 -0
  22. package/dist/agents/seeds.d.ts +34 -0
  23. package/dist/agents/seeds.js +64 -0
  24. package/dist/agents/seeds.js.map +1 -0
  25. package/dist/cli.d.ts +44 -0
  26. package/dist/cli.js +233 -0
  27. package/dist/cli.js.map +1 -0
  28. package/dist/config.d.ts +22 -0
  29. package/dist/config.js +44 -0
  30. package/dist/config.js.map +1 -0
  31. package/dist/extractors/content.d.ts +13 -0
  32. package/dist/extractors/content.js +93 -0
  33. package/dist/extractors/content.js.map +1 -0
  34. package/dist/extractors/reddit.d.ts +7 -0
  35. package/dist/extractors/reddit.js +69 -0
  36. package/dist/extractors/reddit.js.map +1 -0
  37. package/dist/extractors/rss.d.ts +4 -0
  38. package/dist/extractors/rss.js +58 -0
  39. package/dist/extractors/rss.js.map +1 -0
  40. package/dist/index.d.ts +1 -0
  41. package/dist/index.js +139 -0
  42. package/dist/index.js.map +1 -0
  43. package/dist/init.d.ts +1 -0
  44. package/dist/init.js +192 -0
  45. package/dist/init.js.map +1 -0
  46. package/dist/llm.d.ts +2 -0
  47. package/dist/llm.js +11 -0
  48. package/dist/llm.js.map +1 -0
  49. package/dist/mcp/server.d.ts +1 -0
  50. package/dist/mcp/server.js +1278 -0
  51. package/dist/mcp/server.js.map +1 -0
  52. package/dist/output/feedback.d.ts +51 -0
  53. package/dist/output/feedback.js +78 -0
  54. package/dist/output/feedback.js.map +1 -0
  55. package/dist/output/structures.d.ts +5 -0
  56. package/dist/output/structures.js +121 -0
  57. package/dist/output/structures.js.map +1 -0
  58. package/dist/types.d.ts +305 -0
  59. package/dist/types.js +74 -0
  60. package/dist/types.js.map +1 -0
  61. package/package.json +63 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Feedback storage + pattern extraction for GRIST's reinforcement loop.
3
+ *
4
+ * Every time the user rates a card or a post, a FeedbackRecord is appended to
5
+ * config/feedback.json. getPreferredPatterns() aggregates those records into
6
+ * a PreferredPatterns object that the Sampling call sites inject into their
7
+ * prompts — biasing future scoring toward topics/angles that historically scored
8
+ * high and away from what repeatedly scored low.
9
+ *
10
+ * Posts rated ≥ 4 are also auto-promoted to voiceExamples in the user context
11
+ * by the grist_rate_post handler, closing the voice-learning loop without any
12
+ * explicit user action.
13
+ */
14
+ export interface FeedbackRecord {
15
+ id: string;
16
+ timestamp: string;
17
+ type: "card" | "post";
18
+ rating: number;
19
+ cardId?: number;
20
+ platform?: string;
21
+ /** Full post text — stored only when type === "post" */
22
+ postContent?: string;
23
+ whatWorked?: string;
24
+ whatDidntWork?: string;
25
+ /** From the card at rating time */
26
+ trendTags?: string[];
27
+ usedAngle?: string;
28
+ usedHook?: string;
29
+ /** User's topics at rating time — snapshot so patterns survive context changes */
30
+ topics?: string[];
31
+ }
32
+ export interface PreferredPatterns {
33
+ /** Topics that appear most often in high-rated (≥4) records */
34
+ topics: string[];
35
+ /** Trend tags that appear most often in high-rated records */
36
+ trendTags: string[];
37
+ /** Specific angles that scored high (from usedAngle field) */
38
+ angles: string[];
39
+ /** Specific hooks that scored high (from usedHook field) */
40
+ hooks: string[];
41
+ /** Post content from records rated ≥4, newest/highest first, capped at 10 */
42
+ voiceExamples: string[];
43
+ }
44
+ export declare function loadFeedback(): FeedbackRecord[];
45
+ export declare function appendFeedback(record: FeedbackRecord): void;
46
+ /**
47
+ * Aggregate high-rated feedback records into actionable preferred patterns.
48
+ * Only records with rating >= 4 contribute to the signal.
49
+ */
50
+ export declare function getPreferredPatterns(feedback: FeedbackRecord[]): PreferredPatterns;
51
+ export declare function feedbackSummary(feedback: FeedbackRecord[]): Record<string, unknown>;
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Feedback storage + pattern extraction for GRIST's reinforcement loop.
3
+ *
4
+ * Every time the user rates a card or a post, a FeedbackRecord is appended to
5
+ * config/feedback.json. getPreferredPatterns() aggregates those records into
6
+ * a PreferredPatterns object that the Sampling call sites inject into their
7
+ * prompts — biasing future scoring toward topics/angles that historically scored
8
+ * high and away from what repeatedly scored low.
9
+ *
10
+ * Posts rated ≥ 4 are also auto-promoted to voiceExamples in the user context
11
+ * by the grist_rate_post handler, closing the voice-learning loop without any
12
+ * explicit user action.
13
+ */
14
+ import * as fs from "fs";
15
+ import * as path from "path";
16
+ // ─── Storage ──────────────────────────────────────────────────────────────────
17
+ const FEEDBACK_PATH = path.join("config", "feedback.json");
18
+ export function loadFeedback() {
19
+ try {
20
+ if (!fs.existsSync(FEEDBACK_PATH))
21
+ return [];
22
+ return JSON.parse(fs.readFileSync(FEEDBACK_PATH, "utf8"));
23
+ }
24
+ catch {
25
+ return [];
26
+ }
27
+ }
28
+ export function appendFeedback(record) {
29
+ const existing = loadFeedback();
30
+ existing.push(record);
31
+ fs.mkdirSync(path.dirname(FEEDBACK_PATH), { recursive: true });
32
+ fs.writeFileSync(FEEDBACK_PATH, JSON.stringify(existing, null, 2));
33
+ }
34
+ // ─── Pattern extraction ───────────────────────────────────────────────────────
35
+ function countOccurrences(items) {
36
+ const m = new Map();
37
+ for (const item of items)
38
+ m.set(item, (m.get(item) ?? 0) + 1);
39
+ return m;
40
+ }
41
+ function topByCount(m, n) {
42
+ return [...m.entries()].sort((a, b) => b[1] - a[1]).slice(0, n).map(([k]) => k);
43
+ }
44
+ /**
45
+ * Aggregate high-rated feedback records into actionable preferred patterns.
46
+ * Only records with rating >= 4 contribute to the signal.
47
+ */
48
+ export function getPreferredPatterns(feedback) {
49
+ const highRated = feedback.filter((r) => r.rating >= 4);
50
+ const topics = topByCount(countOccurrences(highRated.flatMap((r) => r.topics ?? [])), 8);
51
+ const trendTags = topByCount(countOccurrences(highRated.flatMap((r) => r.trendTags ?? [])), 10);
52
+ const angles = topByCount(countOccurrences(highRated.filter((r) => r.usedAngle).map((r) => r.usedAngle)), 5);
53
+ const hooks = topByCount(countOccurrences(highRated.filter((r) => r.usedHook).map((r) => r.usedHook)), 5);
54
+ // Post-type records with content, sorted by rating desc then recency desc
55
+ const voiceExamples = highRated
56
+ .filter((r) => r.type === "post" && !!r.postContent)
57
+ .sort((a, b) => b.rating - a.rating ||
58
+ new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime())
59
+ .slice(0, 10)
60
+ .map((r) => r.postContent);
61
+ return { topics, trendTags, angles, hooks, voiceExamples };
62
+ }
63
+ // ─── Summary for grist_feedback_stats ────────────────────────────────────────
64
+ export function feedbackSummary(feedback) {
65
+ const total = feedback.length;
66
+ const postsRated = feedback.filter((r) => r.type === "post").length;
67
+ const cardsRated = feedback.filter((r) => r.type === "card").length;
68
+ const avgRating = total > 0
69
+ ? +(feedback.reduce((s, r) => s + r.rating, 0) / total).toFixed(1)
70
+ : null;
71
+ const byRating = [1, 2, 3, 4, 5].map((r) => ({
72
+ rating: r,
73
+ count: feedback.filter((f) => f.rating === r).length,
74
+ }));
75
+ const preferredPatterns = getPreferredPatterns(feedback);
76
+ return { total, avgRating, postsRated, cardsRated, byRating, preferredPatterns };
77
+ }
78
+ //# sourceMappingURL=feedback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback.js","sourceRoot":"","sources":["../../src/output/feedback.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { type HarvestBundle, type CardInput } from "../types.js";
2
+ export declare function saveHarvestOutput(rawCards: CardInput[], seenUrls: Set<string>): string;
3
+ export declare function loadLatestHarvest(): HarvestBundle;
4
+ export declare function latestHarvestExists(): boolean;
5
+ export declare function saveDraft(content: string, platform: string, cardId?: number): string;
@@ -0,0 +1,121 @@
1
+ import * as fs from "fs";
2
+ import * as path from "path";
3
+ import { CONFIG, ensureDir } from "../config.js";
4
+ import { HarvestBundleSchema, CardInputSchema } from "../types.js";
5
+ import { saveSeenUrls } from "../extractors/rss.js";
6
+ const CACHE_DIR = ".cache";
7
+ const LATEST_HARVEST_POINTER = path.join(CACHE_DIR, "latest_harvest_path.txt");
8
+ function createTimestampedOutputDir() {
9
+ const timestamp = new Date().toISOString().replace(/[:.]/g, "-").slice(0, -5);
10
+ const outputDir = path.join(CONFIG.FILES.OUTPUT_DIR, timestamp);
11
+ ensureDir(outputDir);
12
+ const latestLink = path.join(CONFIG.FILES.OUTPUT_DIR, "latest");
13
+ try {
14
+ if (fs.existsSync(latestLink))
15
+ fs.unlinkSync(latestLink);
16
+ fs.symlinkSync(timestamp, latestLink);
17
+ }
18
+ catch {
19
+ // Non-critical on filesystems that do not support symlinks.
20
+ }
21
+ return outputDir;
22
+ }
23
+ export function saveHarvestOutput(rawCards, seenUrls) {
24
+ // Only persist if the caller actually passed URLs — calling with new Set()
25
+ // would silently wipe the cache. Seen URLs should be saved by the fetch step.
26
+ if (seenUrls.size > 0)
27
+ saveSeenUrls(seenUrls);
28
+ const outputDir = createTimestampedOutputDir();
29
+ const dateLabel = new Date().toLocaleDateString("en-US", {
30
+ year: "numeric",
31
+ month: "short",
32
+ day: "numeric",
33
+ });
34
+ // Assign IDs and default references — host provides all other fields.
35
+ const cards = rawCards.map((raw, index) => ({
36
+ ...CardInputSchema.parse(raw),
37
+ id: index + 1,
38
+ references: [],
39
+ }));
40
+ const bundle = {
41
+ generatedAt: new Date().toISOString(),
42
+ dateLabel,
43
+ cards,
44
+ };
45
+ fs.writeFileSync(path.join(outputDir, "structures.json"), JSON.stringify(bundle, null, 2));
46
+ const markdown = buildMarkdown(cards, dateLabel);
47
+ fs.writeFileSync(path.join(outputDir, "structures.md"), markdown + "\n");
48
+ ensureDir(CACHE_DIR);
49
+ fs.writeFileSync(LATEST_HARVEST_POINTER, path.join(outputDir, "structures.json"));
50
+ return outputDir;
51
+ }
52
+ function buildMarkdown(cards, dateLabel) {
53
+ return [
54
+ `# Quillby Harvest — ${dateLabel}`,
55
+ "",
56
+ `> ${cards.length} structure card${cards.length === 1 ? "" : "s"}, sorted by relevance`,
57
+ "",
58
+ ...cards.flatMap((card) => [
59
+ `## Card ${card.id}: ${card.title}`,
60
+ `- **Relevance:** ${card.relevanceScore}/10 — ${card.relevanceReason}`,
61
+ `- **Source:** ${card.source}`,
62
+ `- **Link:** ${card.link}`,
63
+ `- **Thesis:** ${card.thesis}`,
64
+ "",
65
+ "### Key Insights",
66
+ ...(card.keyInsights.length
67
+ ? card.keyInsights.map((v, i) => `${i + 1}. ${v}`)
68
+ : ["_(none)_"]),
69
+ "",
70
+ "### Takes",
71
+ ...(card.takeOptions.length
72
+ ? card.takeOptions.map((v, i) => `${i + 1}. ${v}`)
73
+ : ["_(none)_"]),
74
+ "",
75
+ "### Angles",
76
+ ...(card.angleOptions.length
77
+ ? card.angleOptions.map((v, i) => `${i + 1}. ${v}`)
78
+ : ["_(none)_"]),
79
+ "",
80
+ "### Hooks",
81
+ ...(card.hookOptions.length
82
+ ? card.hookOptions.map((v, i) => `${i + 1}. ${v}`)
83
+ : ["_(none)_"]),
84
+ ...(card.transposabilityHint
85
+ ? ["", "### Transposability", card.transposabilityHint]
86
+ : []),
87
+ "",
88
+ "---",
89
+ "",
90
+ ]),
91
+ ].join("\n");
92
+ }
93
+ export function loadLatestHarvest() {
94
+ if (!fs.existsSync(LATEST_HARVEST_POINTER)) {
95
+ throw new Error("No harvest found. Run quillby_fetch_articles then quillby_save_cards first.");
96
+ }
97
+ const bundlePath = fs.readFileSync(LATEST_HARVEST_POINTER, "utf-8").trim();
98
+ if (!bundlePath || !fs.existsSync(bundlePath)) {
99
+ throw new Error("Latest harvest pointer is invalid. Re-run quillby_fetch_articles.");
100
+ }
101
+ const raw = JSON.parse(fs.readFileSync(bundlePath, "utf-8"));
102
+ return HarvestBundleSchema.parse(raw);
103
+ }
104
+ export function latestHarvestExists() {
105
+ if (!fs.existsSync(LATEST_HARVEST_POINTER))
106
+ return false;
107
+ const bundlePath = fs.readFileSync(LATEST_HARVEST_POINTER, "utf-8").trim();
108
+ return Boolean(bundlePath) && fs.existsSync(bundlePath);
109
+ }
110
+ export function saveDraft(content, platform, cardId) {
111
+ const bundlePath = fs.existsSync(LATEST_HARVEST_POINTER)
112
+ ? fs.readFileSync(LATEST_HARVEST_POINTER, "utf-8").trim()
113
+ : null;
114
+ const outputDir = bundlePath ? path.dirname(bundlePath) : CONFIG.FILES.OUTPUT_DIR;
115
+ ensureDir(outputDir);
116
+ const suffix = cardId != null ? `_card${cardId}` : "";
117
+ const filePath = path.join(outputDir, `${platform.toLowerCase()}${suffix}.md`);
118
+ fs.writeFileSync(filePath, content + "\n");
119
+ return filePath;
120
+ }
121
+ //# sourceMappingURL=structures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structures.js","sourceRoot":"","sources":["../../src/output/structures.ts"],"names":[],"mappings":"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"}