@npow/ghostwriter 0.1.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 (113) hide show
  1. package/dist/commands/connect.d.ts +30 -0
  2. package/dist/commands/connect.d.ts.map +1 -0
  3. package/dist/commands/connect.js +442 -0
  4. package/dist/commands/connect.js.map +1 -0
  5. package/dist/commands/create/index.d.ts +6 -0
  6. package/dist/commands/create/index.d.ts.map +1 -0
  7. package/dist/commands/create/index.js +89 -0
  8. package/dist/commands/create/index.js.map +1 -0
  9. package/dist/commands/create/prompts/example-article.d.ts +3 -0
  10. package/dist/commands/create/prompts/example-article.d.ts.map +1 -0
  11. package/dist/commands/create/prompts/example-article.js +32 -0
  12. package/dist/commands/create/prompts/example-article.js.map +1 -0
  13. package/dist/commands/create/prompts/intent-parsing.d.ts +3 -0
  14. package/dist/commands/create/prompts/intent-parsing.d.ts.map +1 -0
  15. package/dist/commands/create/prompts/intent-parsing.js +45 -0
  16. package/dist/commands/create/prompts/intent-parsing.js.map +1 -0
  17. package/dist/commands/create/prompts/page-content.d.ts +3 -0
  18. package/dist/commands/create/prompts/page-content.d.ts.map +1 -0
  19. package/dist/commands/create/prompts/page-content.js +56 -0
  20. package/dist/commands/create/prompts/page-content.js.map +1 -0
  21. package/dist/commands/create/prompts/source-discovery.d.ts +3 -0
  22. package/dist/commands/create/prompts/source-discovery.d.ts.map +1 -0
  23. package/dist/commands/create/prompts/source-discovery.js +46 -0
  24. package/dist/commands/create/prompts/source-discovery.js.map +1 -0
  25. package/dist/commands/create/prompts/voice-generation.d.ts +3 -0
  26. package/dist/commands/create/prompts/voice-generation.d.ts.map +1 -0
  27. package/dist/commands/create/prompts/voice-generation.js +43 -0
  28. package/dist/commands/create/prompts/voice-generation.js.map +1 -0
  29. package/dist/commands/create/steps/assemble-config.d.ts +5 -0
  30. package/dist/commands/create/steps/assemble-config.d.ts.map +1 -0
  31. package/dist/commands/create/steps/assemble-config.js +82 -0
  32. package/dist/commands/create/steps/assemble-config.js.map +1 -0
  33. package/dist/commands/create/steps/discover-sources.d.ts +5 -0
  34. package/dist/commands/create/steps/discover-sources.d.ts.map +1 -0
  35. package/dist/commands/create/steps/discover-sources.js +53 -0
  36. package/dist/commands/create/steps/discover-sources.js.map +1 -0
  37. package/dist/commands/create/steps/fingerprint-style.d.ts +5 -0
  38. package/dist/commands/create/steps/fingerprint-style.d.ts.map +1 -0
  39. package/dist/commands/create/steps/fingerprint-style.js +46 -0
  40. package/dist/commands/create/steps/fingerprint-style.js.map +1 -0
  41. package/dist/commands/create/steps/generate-example.d.ts +4 -0
  42. package/dist/commands/create/steps/generate-example.d.ts.map +1 -0
  43. package/dist/commands/create/steps/generate-example.js +23 -0
  44. package/dist/commands/create/steps/generate-example.js.map +1 -0
  45. package/dist/commands/create/steps/generate-voice.d.ts +4 -0
  46. package/dist/commands/create/steps/generate-voice.d.ts.map +1 -0
  47. package/dist/commands/create/steps/generate-voice.js +32 -0
  48. package/dist/commands/create/steps/generate-voice.js.map +1 -0
  49. package/dist/commands/create/steps/parse-intent.d.ts +4 -0
  50. package/dist/commands/create/steps/parse-intent.d.ts.map +1 -0
  51. package/dist/commands/create/steps/parse-intent.js +16 -0
  52. package/dist/commands/create/steps/parse-intent.js.map +1 -0
  53. package/dist/commands/create/steps/resolve-connection.d.ts +5 -0
  54. package/dist/commands/create/steps/resolve-connection.d.ts.map +1 -0
  55. package/dist/commands/create/steps/resolve-connection.js +100 -0
  56. package/dist/commands/create/steps/resolve-connection.js.map +1 -0
  57. package/dist/commands/create/steps/resolve-schedule.d.ts +13 -0
  58. package/dist/commands/create/steps/resolve-schedule.d.ts.map +1 -0
  59. package/dist/commands/create/steps/resolve-schedule.js +70 -0
  60. package/dist/commands/create/steps/resolve-schedule.js.map +1 -0
  61. package/dist/commands/create/steps/setup-site.d.ts +5 -0
  62. package/dist/commands/create/steps/setup-site.d.ts.map +1 -0
  63. package/dist/commands/create/steps/setup-site.js +44 -0
  64. package/dist/commands/create/steps/setup-site.js.map +1 -0
  65. package/dist/commands/create/steps/validate-and-summary.d.ts +4 -0
  66. package/dist/commands/create/steps/validate-and-summary.d.ts.map +1 -0
  67. package/dist/commands/create/steps/validate-and-summary.js +60 -0
  68. package/dist/commands/create/steps/validate-and-summary.js.map +1 -0
  69. package/dist/commands/create/steps/validate-site-access.d.ts +4 -0
  70. package/dist/commands/create/steps/validate-site-access.d.ts.map +1 -0
  71. package/dist/commands/create/steps/validate-site-access.js +25 -0
  72. package/dist/commands/create/steps/validate-site-access.js.map +1 -0
  73. package/dist/commands/create/types.d.ts +72 -0
  74. package/dist/commands/create/types.d.ts.map +1 -0
  75. package/dist/commands/create/types.js +2 -0
  76. package/dist/commands/create/types.js.map +1 -0
  77. package/dist/commands/fingerprint.d.ts +4 -0
  78. package/dist/commands/fingerprint.d.ts.map +1 -0
  79. package/dist/commands/fingerprint.js +31 -0
  80. package/dist/commands/fingerprint.js.map +1 -0
  81. package/dist/commands/init.d.ts +2 -0
  82. package/dist/commands/init.d.ts.map +1 -0
  83. package/dist/commands/init.js +117 -0
  84. package/dist/commands/init.js.map +1 -0
  85. package/dist/commands/list.d.ts +2 -0
  86. package/dist/commands/list.d.ts.map +1 -0
  87. package/dist/commands/list.js +36 -0
  88. package/dist/commands/list.js.map +1 -0
  89. package/dist/commands/logs.d.ts +6 -0
  90. package/dist/commands/logs.d.ts.map +1 -0
  91. package/dist/commands/logs.js +49 -0
  92. package/dist/commands/logs.js.map +1 -0
  93. package/dist/commands/patterns.d.ts +6 -0
  94. package/dist/commands/patterns.d.ts.map +1 -0
  95. package/dist/commands/patterns.js +51 -0
  96. package/dist/commands/patterns.js.map +1 -0
  97. package/dist/commands/run.d.ts +6 -0
  98. package/dist/commands/run.d.ts.map +1 -0
  99. package/dist/commands/run.js +139 -0
  100. package/dist/commands/run.js.map +1 -0
  101. package/dist/commands/status.d.ts +2 -0
  102. package/dist/commands/status.d.ts.map +1 -0
  103. package/dist/commands/status.js +66 -0
  104. package/dist/commands/status.js.map +1 -0
  105. package/dist/commands/validate.d.ts +2 -0
  106. package/dist/commands/validate.d.ts.map +1 -0
  107. package/dist/commands/validate.js +83 -0
  108. package/dist/commands/validate.js.map +1 -0
  109. package/dist/index.d.ts +3 -0
  110. package/dist/index.d.ts.map +1 -0
  111. package/dist/index.js +76 -0
  112. package/dist/index.js.map +1 -0
  113. package/package.json +38 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,76 @@
1
+ #!/usr/bin/env node
2
+ import { Command } from "commander";
3
+ import { initCommand } from "./commands/init.js";
4
+ import { validateCommand } from "./commands/validate.js";
5
+ import { runCommand } from "./commands/run.js";
6
+ import { statusCommand } from "./commands/status.js";
7
+ import { listCommand } from "./commands/list.js";
8
+ import { logsCommand } from "./commands/logs.js";
9
+ import { connectCommand } from "./commands/connect.js";
10
+ import { fingerprintCommand } from "./commands/fingerprint.js";
11
+ import { createCommand } from "./commands/create/index.js";
12
+ import { patternsCommand } from "./commands/patterns.js";
13
+ const program = new Command();
14
+ program
15
+ .name("ghostwriter")
16
+ .description("Autonomous AI content engine with anti-slop quality gates")
17
+ .version("0.1.0");
18
+ program
19
+ .command("init <channel-name>")
20
+ .description("Scaffold a new channel config")
21
+ .action(initCommand);
22
+ program
23
+ .command("validate <channel-name>")
24
+ .description("Validate channel config and test API keys")
25
+ .action(validateCommand);
26
+ program
27
+ .command("run <channel-name>")
28
+ .description("Run the content pipeline for a channel")
29
+ .option("--dry-run", "Generate content without publishing", false)
30
+ .action(runCommand);
31
+ program
32
+ .command("status [channel-name]")
33
+ .description("Show pipeline status")
34
+ .action(statusCommand);
35
+ program
36
+ .command("list")
37
+ .description("List all channels")
38
+ .action(listCommand);
39
+ program
40
+ .command("logs <channel-name>")
41
+ .description("Show recent pipeline logs")
42
+ .option("-n, --lines <number>", "Number of log entries", "20")
43
+ .action(logsCommand);
44
+ program
45
+ .command("connect [platform]")
46
+ .description("Connect a publishing platform (wordpress, wordpress-com, twitter)")
47
+ .action(connectCommand);
48
+ program
49
+ .command("fingerprint <input>")
50
+ .description("Analyze writing style from a URL or file")
51
+ .option("-o, --output <format>", "Output format: json, prompt, detailed, compact", "prompt")
52
+ .action(fingerprintCommand);
53
+ program
54
+ .command("create [description...]")
55
+ .description("Create a channel from a natural language description")
56
+ .option("--interactive", "Pause for confirmation at each step", false)
57
+ .option("--no-site-setup", "Skip WordPress site configuration")
58
+ .option("--dry-run", "Show what would be created without writing", false)
59
+ .action(createCommand);
60
+ program
61
+ .command("patterns <subcommand> <channel-id>")
62
+ .description("Manage learned anti-slop patterns (list, prune)")
63
+ .option("--days <number>", "For prune: remove patterns not seen in N days", "90")
64
+ .action(patternsCommand);
65
+ program
66
+ .command("dashboard")
67
+ .description("Open the Temporal web monitoring UI")
68
+ .action(async () => {
69
+ const { exec } = await import("node:child_process");
70
+ const url = "http://localhost:8233";
71
+ console.log(`Opening Temporal UI at ${url}`);
72
+ const cmd = process.platform === "darwin" ? "open" : process.platform === "win32" ? "start" : "xdg-open";
73
+ exec(`${cmd} ${url}`);
74
+ });
75
+ program.parse();
76
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "@npow/ghostwriter",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "files": ["dist"],
6
+ "bin": {
7
+ "ghostwriter": "./dist/index.js"
8
+ },
9
+ "scripts": {
10
+ "build": "tsc",
11
+ "dev": "tsc --watch",
12
+ "test": "vitest run --passWithNoTests",
13
+ "clean": "rm -rf dist .turbo"
14
+ },
15
+ "dependencies": {
16
+ "@ghostwriter/core": "workspace:*",
17
+ "@ghostwriter/site-setup": "workspace:*",
18
+ "@ghostwriter/style-fingerprint": "workspace:*",
19
+ "@ghostwriter/database": "workspace:*",
20
+ "@ghostwriter/data-ingestion": "workspace:*",
21
+ "@ghostwriter/content-pipeline": "workspace:*",
22
+ "@ghostwriter/publishing": "workspace:*",
23
+ "@ghostwriter/orchestrator": "workspace:*",
24
+ "@ghostwriter/monitoring": "workspace:*",
25
+ "commander": "^13.0.0",
26
+ "inquirer": "^12.3.0",
27
+ "@inquirer/prompts": "^7.0.0",
28
+ "chalk": "^5.4.0",
29
+ "ora": "^8.1.0",
30
+ "cli-table3": "^0.6.5",
31
+ "yaml": "^2.7.0"
32
+ },
33
+ "devDependencies": {
34
+ "typescript": "^5.7.0",
35
+ "vitest": "^2.1.0",
36
+ "@types/node": "^22.0.0"
37
+ }
38
+ }