create-cogenta 0.0.3 → 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.
- package/dist/bin.d.ts +3 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +17 -0
- package/dist/bin.js.map +1 -0
- package/dist/blueprints/association.d.ts +73 -0
- package/dist/blueprints/association.d.ts.map +1 -0
- package/dist/blueprints/association.js +176 -0
- package/dist/blueprints/association.js.map +1 -0
- package/dist/blueprints/blog.d.ts +211 -0
- package/dist/blueprints/blog.d.ts.map +1 -0
- package/dist/blueprints/blog.js +297 -0
- package/dist/blueprints/blog.js.map +1 -0
- package/dist/blueprints/content-pack.d.ts +54 -0
- package/dist/blueprints/content-pack.d.ts.map +1 -0
- package/dist/blueprints/content-pack.js +40 -0
- package/dist/blueprints/content-pack.js.map +1 -0
- package/dist/blueprints/content-packs.d.ts +10 -0
- package/dist/blueprints/content-packs.d.ts.map +1 -0
- package/dist/blueprints/content-packs.js +26 -0
- package/dist/blueprints/content-packs.js.map +1 -0
- package/dist/blueprints/documentation.d.ts +71 -0
- package/dist/blueprints/documentation.d.ts.map +1 -0
- package/dist/blueprints/documentation.js +153 -0
- package/dist/blueprints/documentation.js.map +1 -0
- package/dist/blueprints/magazine.d.ts +79 -0
- package/dist/blueprints/magazine.d.ts.map +1 -0
- package/dist/blueprints/magazine.js +163 -0
- package/dist/blueprints/magazine.js.map +1 -0
- package/dist/blueprints/portfolio.d.ts +73 -0
- package/dist/blueprints/portfolio.d.ts.map +1 -0
- package/dist/blueprints/portfolio.js +171 -0
- package/dist/blueprints/portfolio.js.map +1 -0
- package/dist/blueprints/registry.d.ts +23 -0
- package/dist/blueprints/registry.d.ts.map +1 -0
- package/dist/blueprints/registry.js +42 -0
- package/dist/blueprints/registry.js.map +1 -0
- package/dist/blueprints/restaurant.d.ts +79 -0
- package/dist/blueprints/restaurant.d.ts.map +1 -0
- package/dist/blueprints/restaurant.js +175 -0
- package/dist/blueprints/restaurant.js.map +1 -0
- package/dist/blueprints/saas.d.ts +66 -0
- package/dist/blueprints/saas.d.ts.map +1 -0
- package/dist/blueprints/saas.js +165 -0
- package/dist/blueprints/saas.js.map +1 -0
- package/dist/blueprints/vitrine.d.ts +100 -0
- package/dist/blueprints/vitrine.d.ts.map +1 -0
- package/dist/blueprints/vitrine.js +214 -0
- package/dist/blueprints/vitrine.js.map +1 -0
- package/dist/config-file.d.ts +13 -0
- package/dist/config-file.d.ts.map +1 -0
- package/dist/config-file.js +93 -0
- package/dist/config-file.js.map +1 -0
- package/dist/environment.d.ts +27 -0
- package/dist/environment.d.ts.map +1 -0
- package/dist/environment.js +91 -0
- package/dist/environment.js.map +1 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +79 -0
- package/dist/index.js.map +1 -0
- package/dist/llm-setup.d.ts +39 -0
- package/dist/llm-setup.d.ts.map +1 -0
- package/dist/llm-setup.js +47 -0
- package/dist/llm-setup.js.map +1 -0
- package/dist/playground-reset.d.ts +27 -0
- package/dist/playground-reset.d.ts.map +1 -0
- package/dist/playground-reset.js +40 -0
- package/dist/playground-reset.js.map +1 -0
- package/dist/prompts.d.ts +30 -0
- package/dist/prompts.d.ts.map +1 -0
- package/dist/prompts.js +63 -0
- package/dist/prompts.js.map +1 -0
- package/dist/recap.d.ts +19 -0
- package/dist/recap.d.ts.map +1 -0
- package/dist/recap.js +74 -0
- package/dist/recap.js.map +1 -0
- package/dist/scaffold.d.ts +49 -0
- package/dist/scaffold.d.ts.map +1 -0
- package/dist/scaffold.js +170 -0
- package/dist/scaffold.js.map +1 -0
- package/dist/skin-flow.d.ts +35 -0
- package/dist/skin-flow.d.ts.map +1 -0
- package/dist/skin-flow.js +56 -0
- package/dist/skin-flow.js.map +1 -0
- package/dist/skin-preview.d.ts +8 -0
- package/dist/skin-preview.d.ts.map +1 -0
- package/dist/skin-preview.js +130 -0
- package/dist/skin-preview.js.map +1 -0
- package/dist/types.d.ts +19 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +13 -0
- package/dist/types.js.map +1 -0
- package/dist/wizard.d.ts +17 -0
- package/dist/wizard.d.ts.map +1 -0
- package/dist/wizard.js +157 -0
- package/dist/wizard.js.map +1 -0
- package/package.json +45 -6
- package/README.md +0 -39
package/dist/wizard.js
ADDED
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { BLUEPRINT_CONTENT_PACKS } from './blueprints/content-packs.js';
|
|
2
|
+
import { BLUEPRINTS, resolveBlueprint } from './blueprints/registry.js';
|
|
3
|
+
import { loadConfigFile } from './config-file.js';
|
|
4
|
+
import { checkEnvironment } from './environment.js';
|
|
5
|
+
import { createProviderClient, LLM_PROVIDERS, validateApiKey, } from './llm-setup.js';
|
|
6
|
+
import { printRecap } from './recap.js';
|
|
7
|
+
import { scaffoldSite } from './scaffold.js';
|
|
8
|
+
import { chooseSkin } from './skin-flow.js';
|
|
9
|
+
import { defaultAnswers } from './types.js';
|
|
10
|
+
async function collectAnswers(prompter, targetDir, siteName, detectedDatabases) {
|
|
11
|
+
const defaults = defaultAnswers(targetDir, siteName);
|
|
12
|
+
const name = await prompter.text('Site name', defaults.siteName);
|
|
13
|
+
const url = await prompter.text('Site URL', defaults.siteUrl);
|
|
14
|
+
const locale = await prompter.text('Primary language (locale code)', defaults.defaultLocale);
|
|
15
|
+
const blueprintId = await prompter.choice('Site type', BLUEPRINTS.map((entry) => ({ label: entry.label, value: entry.id })), 0);
|
|
16
|
+
const databaseChoices = [
|
|
17
|
+
{ label: 'SQLite (default — you can change this later)', value: 'sqlite' },
|
|
18
|
+
...(detectedDatabases.postgres
|
|
19
|
+
? [{ label: 'Postgres (detected)', value: 'postgres' }]
|
|
20
|
+
: []),
|
|
21
|
+
...(detectedDatabases.mysql ? [{ label: 'MySQL (detected)', value: 'mysql' }] : []),
|
|
22
|
+
];
|
|
23
|
+
const databaseDriver = await prompter.choice('Database', databaseChoices, 0);
|
|
24
|
+
const llmChoice = await prompter.choice('LLM provider', LLM_PROVIDERS.map((entry) => ({ label: entry.label, value: entry.id })), 0);
|
|
25
|
+
let llmModel;
|
|
26
|
+
let llmApiKey;
|
|
27
|
+
let siteDescription;
|
|
28
|
+
if (llmChoice !== 'none') {
|
|
29
|
+
const option = LLM_PROVIDERS.find((entry) => entry.id === llmChoice);
|
|
30
|
+
llmModel = await prompter.text('Model', option?.defaultModel ?? '');
|
|
31
|
+
llmApiKey = await prompter.text('API key', '');
|
|
32
|
+
siteDescription = await prompter.text('Site description for AI skin generation (sector, mood, audience, brand colours — leave blank to skip and keep the default skin)', '');
|
|
33
|
+
}
|
|
34
|
+
const adminEmail = await prompter.text('Admin email', defaults.adminEmail);
|
|
35
|
+
return {
|
|
36
|
+
...defaults,
|
|
37
|
+
siteName: name,
|
|
38
|
+
siteUrl: url,
|
|
39
|
+
defaultLocale: locale,
|
|
40
|
+
blueprintId,
|
|
41
|
+
databaseDriver,
|
|
42
|
+
llmProvider: llmChoice,
|
|
43
|
+
...(llmModel === undefined || llmModel === '' ? {} : { llmModel }),
|
|
44
|
+
...(llmApiKey === undefined || llmApiKey === '' ? {} : { llmApiKey }),
|
|
45
|
+
...(siteDescription === undefined || siteDescription === '' ? {} : { siteDescription }),
|
|
46
|
+
adminEmail,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* The whole ten-step wizard, orchestrated. Returns a process exit code: `0`
|
|
51
|
+
* a working site, `1` the environment or the install failed, `2` a `--config`
|
|
52
|
+
* file was invalid.
|
|
53
|
+
*/
|
|
54
|
+
export async function runWizard(options) {
|
|
55
|
+
const { out, prompter } = options;
|
|
56
|
+
const env = options.env ?? process.env;
|
|
57
|
+
const environment = await checkEnvironment({ targetDir: options.targetDir, env });
|
|
58
|
+
out.heading('Environment');
|
|
59
|
+
for (const check of environment.checks) {
|
|
60
|
+
if (check.status === 'ok')
|
|
61
|
+
out.ok(check.message);
|
|
62
|
+
else if (check.status === 'warn')
|
|
63
|
+
out.warn(check.message);
|
|
64
|
+
else
|
|
65
|
+
out.bad(check.message);
|
|
66
|
+
}
|
|
67
|
+
if (!environment.ok) {
|
|
68
|
+
out.line();
|
|
69
|
+
out.line('Fix the problem above and run this again.');
|
|
70
|
+
prompter.close();
|
|
71
|
+
return 1;
|
|
72
|
+
}
|
|
73
|
+
let answers;
|
|
74
|
+
if (options.configPath !== undefined) {
|
|
75
|
+
try {
|
|
76
|
+
answers = await loadConfigFile(options.configPath, options.targetDir);
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
out.bad(error instanceof Error ? error.message : String(error));
|
|
80
|
+
prompter.close();
|
|
81
|
+
return 2;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
answers = await collectAnswers(prompter, options.targetDir, options.siteName, {
|
|
86
|
+
postgres: environment.detectedDatabases.includes('postgres'),
|
|
87
|
+
mysql: environment.detectedDatabases.includes('mysql'),
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
const resolvedBlueprint = resolveBlueprint(answers.blueprintId);
|
|
91
|
+
let keyValidation;
|
|
92
|
+
let llmModel = '';
|
|
93
|
+
if (answers.llmProvider !== 'none' &&
|
|
94
|
+
answers.llmApiKey !== undefined &&
|
|
95
|
+
answers.llmApiKey !== '') {
|
|
96
|
+
const option = LLM_PROVIDERS.find((entry) => entry.id === answers.llmProvider);
|
|
97
|
+
llmModel = answers.llmModel ?? option?.defaultModel ?? '';
|
|
98
|
+
keyValidation = await validateApiKey({
|
|
99
|
+
provider: answers.llmProvider,
|
|
100
|
+
apiKey: answers.llmApiKey,
|
|
101
|
+
model: llmModel,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
// "Aperçu proposé sur trois pages types, avec possibilité de régénérer ou
|
|
105
|
+
// d'ajuster" (L9 task 7) needs the prompter, so it stays open until here —
|
|
106
|
+
// only a blueprint with a real content pack writes a `theme.tokens.json` a
|
|
107
|
+
// generated skin could replace.
|
|
108
|
+
let skinOutcome;
|
|
109
|
+
if (BLUEPRINT_CONTENT_PACKS[resolvedBlueprint.blueprint.id] !== undefined &&
|
|
110
|
+
answers.llmProvider !== 'none' &&
|
|
111
|
+
answers.llmApiKey !== undefined &&
|
|
112
|
+
answers.llmApiKey !== '' &&
|
|
113
|
+
keyValidation?.valid === true &&
|
|
114
|
+
answers.siteDescription !== undefined &&
|
|
115
|
+
answers.siteDescription !== '') {
|
|
116
|
+
out.heading('Skin generation');
|
|
117
|
+
skinOutcome = await chooseSkin({
|
|
118
|
+
prompter,
|
|
119
|
+
out,
|
|
120
|
+
client: createProviderClient({
|
|
121
|
+
provider: answers.llmProvider,
|
|
122
|
+
apiKey: answers.llmApiKey,
|
|
123
|
+
model: llmModel,
|
|
124
|
+
}),
|
|
125
|
+
model: llmModel,
|
|
126
|
+
description: answers.siteDescription,
|
|
127
|
+
blueprintLabel: resolvedBlueprint.blueprint.label,
|
|
128
|
+
siteName: answers.siteName,
|
|
129
|
+
targetDir: answers.targetDir,
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
prompter.close();
|
|
133
|
+
const scaffold = await scaffoldSite({
|
|
134
|
+
targetDir: answers.targetDir,
|
|
135
|
+
siteName: answers.siteName,
|
|
136
|
+
siteUrl: answers.siteUrl,
|
|
137
|
+
defaultLocale: answers.defaultLocale,
|
|
138
|
+
databaseDriver: answers.databaseDriver,
|
|
139
|
+
...(answers.databaseUrl === undefined ? {} : { databaseUrl: answers.databaseUrl }),
|
|
140
|
+
...(answers.llmProvider === 'none'
|
|
141
|
+
? {}
|
|
142
|
+
: { llm: { provider: answers.llmProvider, model: answers.llmModel ?? '' } }),
|
|
143
|
+
adminEmail: answers.adminEmail,
|
|
144
|
+
blueprintId: resolvedBlueprint.blueprint.id,
|
|
145
|
+
...(skinOutcome?.kind === 'generated' ? { skinTokens: skinOutcome.tokens } : {}),
|
|
146
|
+
}, env);
|
|
147
|
+
printRecap({
|
|
148
|
+
answers,
|
|
149
|
+
environment,
|
|
150
|
+
resolvedBlueprint,
|
|
151
|
+
scaffold,
|
|
152
|
+
...(keyValidation === undefined ? {} : { keyValidation }),
|
|
153
|
+
...(skinOutcome === undefined ? {} : { skinOutcome }),
|
|
154
|
+
}, out);
|
|
155
|
+
return scaffold.migrateExitCode === 0 && scaffold.usersExitCode === 0 ? 0 : 1;
|
|
156
|
+
}
|
|
157
|
+
//# sourceMappingURL=wizard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wizard.js","sourceRoot":"","sources":["../src/wizard.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,51 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-cogenta",
|
|
3
|
-
"version": "0.0
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "The Cogenta installer wizard — npm create cogenta.",
|
|
5
5
|
"license": "MPL-2.0",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"sideEffects": false,
|
|
8
|
+
"bin": {
|
|
9
|
+
"create-cogenta": "./dist/bin.js"
|
|
10
|
+
},
|
|
11
|
+
"exports": {
|
|
12
|
+
".": {
|
|
13
|
+
"types": "./dist/index.d.ts",
|
|
14
|
+
"default": "./dist/index.js"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist"
|
|
19
|
+
],
|
|
20
|
+
"engines": {
|
|
21
|
+
"node": ">=22.11.0"
|
|
22
|
+
},
|
|
23
|
+
"publishConfig": {
|
|
24
|
+
"access": "public",
|
|
25
|
+
"provenance": true
|
|
26
|
+
},
|
|
6
27
|
"repository": {
|
|
7
28
|
"type": "git",
|
|
8
|
-
"url": "git+https://github.com/cogenta-cms/cogenta.git"
|
|
29
|
+
"url": "git+https://github.com/cogenta-cms/cogenta.git",
|
|
30
|
+
"directory": "packages/create-cogenta"
|
|
31
|
+
},
|
|
32
|
+
"scripts": {
|
|
33
|
+
"build": "tsc -p tsconfig.json",
|
|
34
|
+
"typecheck": "tsc -p tsconfig.typecheck.json",
|
|
35
|
+
"test": "vitest run --passWithNoTests"
|
|
36
|
+
},
|
|
37
|
+
"dependencies": {
|
|
38
|
+
"@cogenta/agents": "workspace:*",
|
|
39
|
+
"@cogenta/auth": "workspace:*",
|
|
40
|
+
"@cogenta/blocks": "workspace:*",
|
|
41
|
+
"@cogenta/cli": "workspace:*",
|
|
42
|
+
"@cogenta/core": "workspace:*",
|
|
43
|
+
"@cogenta/render": "workspace:*",
|
|
44
|
+
"@cogenta/schema": "workspace:*",
|
|
45
|
+
"@cogenta/theme-canonical": "workspace:*"
|
|
9
46
|
},
|
|
10
|
-
"
|
|
11
|
-
|
|
12
|
-
|
|
47
|
+
"devDependencies": {
|
|
48
|
+
"typescript": "catalog:",
|
|
49
|
+
"vitest": "catalog:"
|
|
50
|
+
}
|
|
51
|
+
}
|
package/README.md
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
# create-cogenta
|
|
2
|
-
|
|
3
|
-
Project scaffolder for **Cogenta**, an agentic CMS built on Node.js.
|
|
4
|
-
|
|
5
|
-
> 🚧 **Work in progress.** This package currently reserves the name.
|
|
6
|
-
> The installer ships with the first usable release.
|
|
7
|
-
|
|
8
|
-
## What is Cogenta?
|
|
9
|
-
|
|
10
|
-
Cogenta is a content management system whose multi-agent runtime is part of the
|
|
11
|
-
core, not a plugin. Agents watch the site's own dependencies and correlate
|
|
12
|
-
published CVEs, audit SEO on every publish, track Core Web Vitals, and draft
|
|
13
|
-
content — each with declared tool permissions, a memory, a budget, and an
|
|
14
|
-
explicit autonomy level, under human review and with an append-only audit log.
|
|
15
|
-
|
|
16
|
-
The CMS remains fully functional without any AI provider configured. Agents
|
|
17
|
-
accelerate; they are never a single point of failure.
|
|
18
|
-
|
|
19
|
-
## Planned highlights
|
|
20
|
-
|
|
21
|
-
- **Type-safe end to end** — content schema lives in TypeScript, versioned in git.
|
|
22
|
-
A theme referencing a removed field fails at build time, not in production.
|
|
23
|
-
- **Semantic blocks** — content stores meaning, never HTML or CSS classes, so
|
|
24
|
-
switching themes never breaks a page.
|
|
25
|
-
- **Three delivery targets** — static, Node SSR, or edge, from the same content
|
|
26
|
-
and the same theme.
|
|
27
|
-
- **No hard infrastructure dependencies** — Redis, Docker, S3 and persistent
|
|
28
|
-
workers are all optional, each with a degraded driver.
|
|
29
|
-
- **Isolated third-party plugins** — no filesystem, network or secret access
|
|
30
|
-
beyond the capabilities their manifest declares and the user approves.
|
|
31
|
-
|
|
32
|
-
## Status
|
|
33
|
-
|
|
34
|
-
Pre-alpha. Follow development at
|
|
35
|
-
[github.com/cogenta-cms/cogenta](https://github.com/cogenta-cms/cogenta).
|
|
36
|
-
|
|
37
|
-
## License
|
|
38
|
-
|
|
39
|
-
[MPL-2.0](https://www.mozilla.org/en-US/MPL/2.0/)
|