create-theokit 1.25.3 → 2.0.0-next.1
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/cli.js +53 -54
- package/dist/cli.js.map +1 -1
- package/package.json +8 -1
- package/templates/_bot-preset/{agents → src/server/agents}/tools/publish.ts +1 -1
- package/templates/_bot-preset/{server → src/server}/crons/daily-research.ts +2 -2
- package/templates/default/AGENTS.md.tmpl +58 -0
- package/templates/default/CLAUDE.md +4 -4
- package/templates/default/README.md.tmpl +56 -30
- package/templates/default/docs/ARCHITECTURE.md +103 -58
- package/templates/default/docs/CUSTOMIZATION.md +10 -10
- package/templates/default/docs/ENVIRONMENT.md +6 -6
- package/templates/default/dot-claude/skills/theokit-frontend/SKILL.md +1 -1
- package/templates/default/dot-claude/skills/theokit-gateways/SKILL.md +1 -1
- package/templates/default/dot-claude/skills/theokit-routes/SKILL.md +1 -1
- package/templates/default/dot-claude/skills/theokit-ui/SKILL.md +1 -1
- package/templates/default/dot-theokit/THEO.md +54 -0
- package/templates/default/dot-theokit/personalities/README.md +35 -0
- package/templates/default/dot-theokit/personalities/concise.md +14 -0
- package/templates/default/dot-theokit/personalities/teacher.md +17 -0
- package/templates/default/dot-theokit/rules/README.md +30 -0
- package/templates/default/dot-theokit/rules/server-routes.md +16 -0
- package/templates/default/package.json.tmpl +2 -2
- package/templates/default/{agents → src/server/agents}/chat.ts +6 -0
- package/templates/default/src/server/agents/hooks/tool-audit.ts +75 -0
- package/templates/default/theo.config.ts +18 -1
- package/templates/default/tsconfig.json +4 -5
- /package/templates/_bot-preset/{agents → src/server/agents}/lib/bot-scope.ts +0 -0
- /package/templates/_bot-preset/{agents → src/server/agents}/lib/sandbox.ts +0 -0
- /package/templates/_bot-preset/{agents → src/server/agents}/publisher.ts +0 -0
- /package/templates/_bot-preset/{agents → src/server/agents}/researcher.ts +0 -0
- /package/templates/_bot-preset/{agents → src/server/agents}/tools/read-notes.ts +0 -0
- /package/templates/_bot-preset/{agents → src/server/agents}/tools/write-note.ts +0 -0
- /package/templates/_bot-preset/{server → src/server}/delivery.ts +0 -0
- /package/templates/default/{app → src/app}/about/page.tsx +0 -0
- /package/templates/default/{app → src/app}/components/ChatPanel.tsx +0 -0
- /package/templates/default/{app → src/app}/components/Composer.tsx +0 -0
- /package/templates/default/{app → src/app}/components/Header.tsx +0 -0
- /package/templates/default/{app → src/app}/components/Nav.tsx +0 -0
- /package/templates/default/{app → src/app}/error.tsx +0 -0
- /package/templates/default/{app → src/app}/hooks/use-transcript.test.ts +0 -0
- /package/templates/default/{app → src/app}/hooks/use-transcript.ts +0 -0
- /package/templates/default/{app → src/app}/layout.tsx +0 -0
- /package/templates/default/{app → src/app}/lib/constants.ts +0 -0
- /package/templates/default/{app → src/app}/lib/renderable.ts +0 -0
- /package/templates/default/{app → src/app}/loading.tsx +0 -0
- /package/templates/default/{app → src/app}/not-found.tsx +0 -0
- /package/templates/default/{app → src/app}/page.test.tsx +0 -0
- /package/templates/default/{app → src/app}/page.tsx +0 -0
- /package/templates/default/{agents → src/server/agents}/prompts/instructions.ts +0 -0
- /package/templates/default/{agents → src/server/agents}/skills/daily-briefing.ts +0 -0
- /package/templates/default/{agents → src/server/agents}/tools/current-time.ts +0 -0
- /package/templates/default/{agents → src/server/agents}/tools/send-notification.ts +0 -0
- /package/templates/default/{agents → src/server/agents}/tools/weather.ts +0 -0
- /package/templates/default/{server → src/server}/routes/health.ts +0 -0
- /package/templates/default/{shared → src/shared}/agent.ts +0 -0
package/dist/cli.js
CHANGED
|
@@ -2,9 +2,23 @@
|
|
|
2
2
|
|
|
3
3
|
// src/cli.ts
|
|
4
4
|
import { execSync } from "child_process";
|
|
5
|
-
import { readFileSync as readFileSync6, unlinkSync as unlinkSync5,
|
|
5
|
+
import { readFileSync as readFileSync6, unlinkSync as unlinkSync5, existsSync as existsSync6, rmSync as rmSync5 } from "fs";
|
|
6
6
|
import { resolve as resolve5 } from "path";
|
|
7
7
|
|
|
8
|
+
// src/alias-paths.ts
|
|
9
|
+
var DOMAIN_ROOTS = Object.freeze({
|
|
10
|
+
server: "./src/server/*",
|
|
11
|
+
app: "./src/app/*"
|
|
12
|
+
});
|
|
13
|
+
function aliasPaths(importAlias) {
|
|
14
|
+
const prefix = importAlias.replace("/*", "");
|
|
15
|
+
return {
|
|
16
|
+
[`${prefix}/*`]: ["./src/*"],
|
|
17
|
+
[`${prefix}/server/*`]: [DOMAIN_ROOTS.server],
|
|
18
|
+
[`${prefix}/app/*`]: [DOMAIN_ROOTS.app]
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
|
|
8
22
|
// src/clone-example.ts
|
|
9
23
|
import { execFileSync } from "child_process";
|
|
10
24
|
import { rmSync } from "fs";
|
|
@@ -77,7 +91,6 @@ var DEFAULTS = {
|
|
|
77
91
|
typescript: true,
|
|
78
92
|
eslint: true,
|
|
79
93
|
tailwind: true,
|
|
80
|
-
srcDir: false,
|
|
81
94
|
aliases: true,
|
|
82
95
|
agentsMd: true
|
|
83
96
|
};
|
|
@@ -123,10 +136,9 @@ async function runPrompts(projectName) {
|
|
|
123
136
|
const typescript = await ask(rl, "Would you like to use TypeScript?", true);
|
|
124
137
|
const eslint = await ask(rl, "Would you like to use ESLint?", true);
|
|
125
138
|
const tailwind = await ask(rl, "Would you like to use Tailwind CSS?", true);
|
|
126
|
-
const srcDir = await ask(rl, "Would you like your code inside a `src/` directory?", false);
|
|
127
139
|
const aliases = await ask(rl, "Would you like to use import alias (@/*)?", true);
|
|
128
140
|
const agentsMd = await ask(rl, "Would you like to include AGENTS.md for coding agents?", true);
|
|
129
|
-
return { projectName, typescript, eslint, tailwind,
|
|
141
|
+
return { projectName, typescript, eslint, tailwind, aliases, agentsMd };
|
|
130
142
|
} finally {
|
|
131
143
|
rl.close();
|
|
132
144
|
}
|
|
@@ -301,7 +313,7 @@ var __dirname2 = dirname2(fileURLToPath2(import.meta.url));
|
|
|
301
313
|
var VALID_SURFACES = ["web", "tui", "desktop"];
|
|
302
314
|
var WEB_ONLY_DEPS = ["@theokit/ui", "@usetheo/ui", "lucide-react"];
|
|
303
315
|
var WEB_ONLY_DEV_DEPS = ["tailwindcss", "@tailwindcss/vite", "tailwindcss-animate"];
|
|
304
|
-
var WEB_ONLY_FILES = ["app", "index.html", "tailwind.config.ts", "postcss.config.js"];
|
|
316
|
+
var WEB_ONLY_FILES = ["src/app", "index.html", "tailwind.config.ts", "postcss.config.js"];
|
|
305
317
|
var SURFACE_CONFIG = {
|
|
306
318
|
tui: {
|
|
307
319
|
fragment: "tui",
|
|
@@ -337,9 +349,10 @@ var SURFACE_CONFIG = {
|
|
|
337
349
|
tsconfigInclude: [
|
|
338
350
|
"tui/**/*.ts",
|
|
339
351
|
"tui/**/*.tsx",
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
"
|
|
352
|
+
// `src/server/**` covers the agents too: they live at `src/server/agents` now, because an
|
|
353
|
+
// agent is an entry point of this backend rather than a second one beside it.
|
|
354
|
+
"src/server/**/*.ts",
|
|
355
|
+
"src/shared/**/*.ts"
|
|
343
356
|
]
|
|
344
357
|
},
|
|
345
358
|
desktop: {
|
|
@@ -380,9 +393,10 @@ var SURFACE_CONFIG = {
|
|
|
380
393
|
"sidecar/**/*.ts",
|
|
381
394
|
"frontend/src/**/*.ts",
|
|
382
395
|
"frontend/src/**/*.tsx",
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
"
|
|
396
|
+
// `src/server/**` covers the agents too: they live at `src/server/agents` now, because an
|
|
397
|
+
// agent is an entry point of this backend rather than a second one beside it.
|
|
398
|
+
"src/server/**/*.ts",
|
|
399
|
+
"src/shared/**/*.ts"
|
|
386
400
|
]
|
|
387
401
|
}
|
|
388
402
|
};
|
|
@@ -461,6 +475,10 @@ function dropKeys(record, keys) {
|
|
|
461
475
|
return Object.fromEntries(Object.entries(record ?? {}).filter(([k]) => !keys.includes(k)));
|
|
462
476
|
}
|
|
463
477
|
|
|
478
|
+
// src/tailwind-css-import.ts
|
|
479
|
+
var TAILWIND_CSS_IMPORT = `@import 'tailwindcss';
|
|
480
|
+
`;
|
|
481
|
+
|
|
464
482
|
// src/version.ts
|
|
465
483
|
import { createRequire } from "module";
|
|
466
484
|
function readVersion() {
|
|
@@ -520,19 +538,19 @@ function applyBareTransform(targetDir, options = {}) {
|
|
|
520
538
|
writeScaffoldFile(pkgPath, `${JSON.stringify(pkg, null, 2)}
|
|
521
539
|
`);
|
|
522
540
|
}
|
|
523
|
-
const pagePath = join4(targetDir, "app/page.tsx");
|
|
541
|
+
const pagePath = join4(targetDir, "src/app/page.tsx");
|
|
524
542
|
if (existsSync3(pagePath)) {
|
|
525
543
|
writeScaffoldFile(pagePath, HELLO_PAGE);
|
|
526
544
|
}
|
|
527
|
-
const layoutPath = join4(targetDir, "app/layout.tsx");
|
|
545
|
+
const layoutPath = join4(targetDir, "src/app/layout.tsx");
|
|
528
546
|
if (existsSync3(layoutPath)) {
|
|
529
547
|
writeScaffoldFile(layoutPath, BARE_LAYOUT);
|
|
530
548
|
}
|
|
531
|
-
const chatPath = join4(targetDir, "agents/chat.ts");
|
|
549
|
+
const chatPath = join4(targetDir, "src/server/agents/chat.ts");
|
|
532
550
|
if (existsSync3(chatPath)) {
|
|
533
551
|
unlinkSync3(chatPath);
|
|
534
552
|
}
|
|
535
|
-
for (const dir of ["app/components", "app/hooks", "app/lib", "app/about"]) {
|
|
553
|
+
for (const dir of ["src/app/components", "src/app/hooks", "src/app/lib", "src/app/about"]) {
|
|
536
554
|
const p = join4(targetDir, dir);
|
|
537
555
|
if (existsSync3(p)) rmSync3(p, { recursive: true, force: true });
|
|
538
556
|
}
|
|
@@ -551,15 +569,15 @@ import { cpSync as cpSync3, existsSync as existsSync4, readFileSync as readFileS
|
|
|
551
569
|
import { dirname as dirname3, join as join5, resolve as resolve3 } from "path";
|
|
552
570
|
import { fileURLToPath as fileURLToPath3 } from "url";
|
|
553
571
|
var PRESET_FILES = [
|
|
554
|
-
"agents/researcher.ts",
|
|
555
|
-
"agents/publisher.ts",
|
|
556
|
-
"agents/lib/bot-scope.ts",
|
|
557
|
-
"agents/lib/sandbox.ts",
|
|
558
|
-
"agents/tools/read-notes.ts",
|
|
559
|
-
"agents/tools/write-note.ts",
|
|
560
|
-
"agents/tools/publish.ts",
|
|
561
|
-
"server/delivery.ts",
|
|
562
|
-
"server/crons/daily-research.ts"
|
|
572
|
+
"src/server/agents/researcher.ts",
|
|
573
|
+
"src/server/agents/publisher.ts",
|
|
574
|
+
"src/server/agents/lib/bot-scope.ts",
|
|
575
|
+
"src/server/agents/lib/sandbox.ts",
|
|
576
|
+
"src/server/agents/tools/read-notes.ts",
|
|
577
|
+
"src/server/agents/tools/write-note.ts",
|
|
578
|
+
"src/server/agents/tools/publish.ts",
|
|
579
|
+
"src/server/delivery.ts",
|
|
580
|
+
"src/server/crons/daily-research.ts"
|
|
563
581
|
];
|
|
564
582
|
function presetRoot() {
|
|
565
583
|
return resolve3(dirname3(fileURLToPath3(import.meta.url)), "../templates/_bot-preset");
|
|
@@ -606,7 +624,7 @@ curl -X POST localhost:3000/api/agents/researcher \\
|
|
|
606
624
|
|
|
607
625
|
### What to change first
|
|
608
626
|
|
|
609
|
-
**\`server/delivery.ts\`** prints to the console. That is the honest local behaviour and the reason
|
|
627
|
+
**\`src/server/delivery.ts\`** prints to the console. That is the honest local behaviour and the reason
|
|
610
628
|
the scaffold runs before you configure anything \u2014 but a bot whose approvals only print is a bot
|
|
611
629
|
nobody can approve. Point it at a channel you actually read; one commented example is in the file.
|
|
612
630
|
|
|
@@ -662,10 +680,11 @@ function scaffold(targetDir, projectName, templateName = "default", options = {}
|
|
|
662
680
|
renameSync(src, join6(targetDir, to));
|
|
663
681
|
}
|
|
664
682
|
}
|
|
665
|
-
const
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
683
|
+
for (const name of ["claude", "theokit"]) {
|
|
684
|
+
const src = join6(targetDir, `dot-${name}`);
|
|
685
|
+
if (existsSync5(src)) {
|
|
686
|
+
renameSync(src, join6(targetDir, `.${name}`));
|
|
687
|
+
}
|
|
669
688
|
}
|
|
670
689
|
for (const entry of readdirSync3(targetDir)) {
|
|
671
690
|
if (!entry.endsWith(".tmpl")) continue;
|
|
@@ -736,7 +755,7 @@ function showHelp() {
|
|
|
736
755
|
--import-alias=<alias> Import alias (default: "@/*")
|
|
737
756
|
--example=<github-url> Bootstrap from a GitHub repository
|
|
738
757
|
--biome Use Biome instead of ESLint
|
|
739
|
-
--agents-md
|
|
758
|
+
--no-agents-md Skip AGENTS.md (included by default)
|
|
740
759
|
|
|
741
760
|
Examples:
|
|
742
761
|
npx create-theokit my-app --yes
|
|
@@ -790,6 +809,7 @@ async function main() {
|
|
|
790
809
|
const useDefaults = hasFlag(args, "yes");
|
|
791
810
|
const disableGit = hasFlag(args, "disable-git");
|
|
792
811
|
const useBiome = hasFlag(args, "biome");
|
|
812
|
+
const noAgentsMd = hasFlag(args, "no-agents-md");
|
|
793
813
|
const exampleFlag = getFlag(args, "example");
|
|
794
814
|
const importAlias = getFlag(args, "import-alias") ?? "@/*";
|
|
795
815
|
let pkgManagerOverride;
|
|
@@ -856,6 +876,7 @@ Cloning example "${exampleFlag}" into ${projectName}...
|
|
|
856
876
|
} else {
|
|
857
877
|
options = await runPrompts(projectName);
|
|
858
878
|
}
|
|
879
|
+
if (noAgentsMd) options.agentsMd = false;
|
|
859
880
|
try {
|
|
860
881
|
const suffix = bare ? " [--bare]" : "";
|
|
861
882
|
const surfaceSuffix = surface !== "web" ? ` [surface: ${surface}]` : "";
|
|
@@ -909,7 +930,6 @@ function applySurfaceStep(targetDir, projectName, surface, options) {
|
|
|
909
930
|
Original error: ${original}`);
|
|
910
931
|
}
|
|
911
932
|
options.tailwind = false;
|
|
912
|
-
options.srcDir = false;
|
|
913
933
|
}
|
|
914
934
|
function applyOptions(targetDir, options, opts) {
|
|
915
935
|
const pkgPath = resolve5(targetDir, "package.json");
|
|
@@ -959,23 +979,7 @@ function applyOptions(targetDir, options, opts) {
|
|
|
959
979
|
const cssDir = existsSync6(resolve5(targetDir, "src/app")) ? "src/app" : "app";
|
|
960
980
|
const cssPath = resolve5(targetDir, `${cssDir}/globals.css`);
|
|
961
981
|
const existing = existsSync6(cssPath) ? readFileSync6(cssPath, "utf-8") : "";
|
|
962
|
-
writeScaffoldFile(cssPath,
|
|
963
|
-
}
|
|
964
|
-
if (options.srcDir) {
|
|
965
|
-
const srcDir = resolve5(targetDir, "src");
|
|
966
|
-
mkdirSync(srcDir, { recursive: true });
|
|
967
|
-
for (const dir of ["app", "server"]) {
|
|
968
|
-
const from = resolve5(targetDir, dir);
|
|
969
|
-
const to = resolve5(srcDir, dir);
|
|
970
|
-
if (existsSync6(from)) renameSync2(from, to);
|
|
971
|
-
}
|
|
972
|
-
const configFrom = resolve5(targetDir, "theo.config.ts");
|
|
973
|
-
if (existsSync6(configFrom)) renameSync2(configFrom, resolve5(srcDir, "theo.config.ts"));
|
|
974
|
-
const tscPath2 = resolve5(targetDir, "tsconfig.json");
|
|
975
|
-
const tsc2 = JSON.parse(readFileSync6(tscPath2, "utf-8"));
|
|
976
|
-
tsc2.compilerOptions.baseUrl = "src";
|
|
977
|
-
tsc2.include = ["src/**/*.ts", "src/**/*.tsx"];
|
|
978
|
-
writeScaffoldFile(tscPath2, JSON.stringify(tsc2, null, 2) + "\n");
|
|
982
|
+
writeScaffoldFile(cssPath, TAILWIND_CSS_IMPORT + existing);
|
|
979
983
|
}
|
|
980
984
|
const tscPath = resolve5(targetDir, "tsconfig.json");
|
|
981
985
|
const tsc = JSON.parse(readFileSync6(tscPath, "utf-8"));
|
|
@@ -983,12 +987,7 @@ function applyOptions(targetDir, options, opts) {
|
|
|
983
987
|
delete tsc.compilerOptions.baseUrl;
|
|
984
988
|
delete tsc.compilerOptions.paths;
|
|
985
989
|
} else if (opts.importAlias !== "@/*") {
|
|
986
|
-
|
|
987
|
-
tsc.compilerOptions.paths = {
|
|
988
|
-
[`${prefix}/*`]: ["./*"],
|
|
989
|
-
[`${prefix}/server/*`]: ["./server/*"],
|
|
990
|
-
[`${prefix}/app/*`]: ["./app/*"]
|
|
991
|
-
};
|
|
990
|
+
tsc.compilerOptions.paths = aliasPaths(opts.importAlias);
|
|
992
991
|
}
|
|
993
992
|
writeScaffoldFile(tscPath, JSON.stringify(tsc, null, 2) + "\n");
|
|
994
993
|
if (!options.agentsMd) {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/cli.ts","../src/clone-example.ts","../src/install.ts","../src/pkg-manager.ts","../src/preflight-node.ts","../src/prompts.ts","../src/scaffold-services.ts","../src/write-file.ts","../src/scaffold-surface.ts","../src/version.ts","../src/index.ts","../src/bare-transform.ts","../src/bot-preset.ts"],"mappings":"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","names":["readFileSync","unlinkSync","renameSync","existsSync","rmSync","resolve","resolve","join","join","cpSync","existsSync","readdirSync","readFileSync","rmSync","statSync","unlinkSync","dirname","join","resolve","fileURLToPath","__dirname","dirname","fileURLToPath","resolve","substituteTmpls","readdirSync","join","statSync","readFileSync","unlinkSync","existsSync","cpSync","rmSync","require","existsSync","cpSync","readFileSync","unlinkSync","readdirSync","rmSync","statSync","resolve","join","dirname","fileURLToPath","existsSync","readFileSync","unlinkSync","rmSync","join","join","existsSync","readFileSync","unlinkSync","rmSync","cpSync","existsSync","readFileSync","dirname","join","resolve","fileURLToPath","__dirname","dirname","fileURLToPath","resolve","existsSync","readdirSync","cpSync","join","statSync","readFileSync","unlinkSync","rmSync","resolve","rmSync","existsSync","unlinkSync","readFileSync","renameSync","tscPath","tsc"]}
|
|
1
|
+
{"version":3,"sources":["../src/cli.ts","../src/alias-paths.ts","../src/clone-example.ts","../src/install.ts","../src/pkg-manager.ts","../src/preflight-node.ts","../src/prompts.ts","../src/scaffold-services.ts","../src/write-file.ts","../src/scaffold-surface.ts","../src/tailwind-css-import.ts","../src/version.ts","../src/index.ts","../src/bare-transform.ts","../src/bot-preset.ts"],"mappings":"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","names":["readFileSync","unlinkSync","existsSync","rmSync","resolve","resolve","join","join","cpSync","existsSync","readdirSync","readFileSync","rmSync","statSync","unlinkSync","dirname","join","resolve","fileURLToPath","__dirname","dirname","fileURLToPath","resolve","substituteTmpls","readdirSync","join","statSync","readFileSync","unlinkSync","existsSync","cpSync","rmSync","require","existsSync","cpSync","readFileSync","unlinkSync","readdirSync","rmSync","statSync","resolve","join","dirname","fileURLToPath","existsSync","readFileSync","unlinkSync","rmSync","join","join","existsSync","readFileSync","unlinkSync","rmSync","cpSync","existsSync","readFileSync","dirname","join","resolve","fileURLToPath","__dirname","dirname","fileURLToPath","resolve","existsSync","readdirSync","cpSync","join","statSync","readFileSync","unlinkSync","rmSync","resolve","rmSync","existsSync","unlinkSync","readFileSync"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-theokit",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0-next.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Scaffold a new TheoKit project",
|
|
6
6
|
"repository": {
|
|
@@ -30,6 +30,13 @@
|
|
|
30
30
|
"engines": {
|
|
31
31
|
"node": ">=22.12.0"
|
|
32
32
|
},
|
|
33
|
+
"keywords": [
|
|
34
|
+
"theokit",
|
|
35
|
+
"create",
|
|
36
|
+
"scaffold",
|
|
37
|
+
"new",
|
|
38
|
+
"project"
|
|
39
|
+
],
|
|
33
40
|
"scripts": {
|
|
34
41
|
"build": "tsup",
|
|
35
42
|
"test": "vitest run",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineCron } from 'theokit/server/cron'
|
|
2
2
|
|
|
3
|
-
import { botScope } from '
|
|
4
|
-
import { workspaceSandbox } from '
|
|
3
|
+
import { botScope } from '../agents/lib/bot-scope.js'
|
|
4
|
+
import { workspaceSandbox } from '../agents/lib/sandbox.js'
|
|
5
5
|
import { deliver } from '../delivery.js'
|
|
6
6
|
|
|
7
7
|
/**
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# {{name}}
|
|
2
|
+
|
|
3
|
+
Context for coding agents working **on this repository** — Cursor, Copilot, Claude Code and
|
|
4
|
+
TheoKit itself all read this file. It sits at the root and is discovered from any subdirectory, so
|
|
5
|
+
it is the right place for what someone needs to know before changing code here.
|
|
6
|
+
|
|
7
|
+
> **Not the same file as `.theokit/THEO.md`.** This one describes the codebase, for agents that
|
|
8
|
+
> write it. That one describes your product, for the agent that talks to your users. Two audiences,
|
|
9
|
+
> two files — see the table at the bottom.
|
|
10
|
+
|
|
11
|
+
## Commands
|
|
12
|
+
|
|
13
|
+
| What | Command |
|
|
14
|
+
| -------------------- | --------------------------------------- |
|
|
15
|
+
| Run in development | `npm run dev` |
|
|
16
|
+
| Build for production | `npm run build` |
|
|
17
|
+
| Serve the build | `npm start` |
|
|
18
|
+
| Tests | `npm test` |
|
|
19
|
+
| Types | `npm run typecheck` |
|
|
20
|
+
| Lint / format | `npm run lint` · `npm run format:check` |
|
|
21
|
+
|
|
22
|
+
Run `typecheck` and `test` before proposing a change is finished. `format:check` runs in the same
|
|
23
|
+
suite, so a formatting slip fails the build rather than surfacing in review.
|
|
24
|
+
|
|
25
|
+
## Layout
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
src/app/ frontend — the only half that reaches a browser
|
|
29
|
+
src/server/ backend — never leaves the machine
|
|
30
|
+
agents/ the agent, its tools, prompts, skills and hooks
|
|
31
|
+
routes/ file-based HTTP
|
|
32
|
+
src/shared/ contracts both sides import
|
|
33
|
+
.theokit/ agent context read at runtime (no rebuild)
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
The paths are declared in `theo.config.ts`. Move them there if you move them at all — the framework
|
|
37
|
+
reads that file, not a convention.
|
|
38
|
+
|
|
39
|
+
## Conventions
|
|
40
|
+
|
|
41
|
+
- **An agent is a file.** `src/server/agents/chat.ts` is served at `POST /api/agents/chat`. Adding
|
|
42
|
+
a second agent means adding a second file, not registering anything.
|
|
43
|
+
- **Sub-folders under `agents/` are semantic, not routes.** `tools/`, `skills/`, `prompts/` and
|
|
44
|
+
`hooks/` are skipped by the route scanner, so `tools/weather.ts` never becomes an endpoint.
|
|
45
|
+
- **Validate at the boundary.** A route validates input with Zod once, then trusts it.
|
|
46
|
+
- **Side effects get a human.** A tool that touches the real world is gated with `.approval(...)`
|
|
47
|
+
in `chat.ts`, not with a check buried inside the tool.
|
|
48
|
+
|
|
49
|
+
## The two context files
|
|
50
|
+
|
|
51
|
+
| | `AGENTS.md` (this file) | `.theokit/THEO.md` |
|
|
52
|
+
| -------- | ------------------------------------------- | ------------------------------------ |
|
|
53
|
+
| Audience | agents that **write** this code | the agent your **users** talk to |
|
|
54
|
+
| Content | commands, layout, conventions | product facts, domain vocabulary |
|
|
55
|
+
| Read by | many tools (root, walks up to the git root) | TheoKit only, this directory |
|
|
56
|
+
| Priority | 10 — anything else can override it | 60 — the strongest file-layer source |
|
|
57
|
+
|
|
58
|
+
Because `THEO.md` wins conflicts, keep facts there and preferences here.
|
|
@@ -8,12 +8,12 @@ This project includes TheoKit-aware skills that activate automatically when you
|
|
|
8
8
|
|
|
9
9
|
| Skill | Triggers when editing | What it provides |
|
|
10
10
|
| ---------------- | ---------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
11
|
-
| theokit-routes | `server/routes/**`
|
|
12
|
-
| theokit-gateways | `server/routes/**`, `**/*webhook*`
|
|
11
|
+
| theokit-routes | `src/server/routes/**` | the route() builder, Zod validation, HTTP methods, dynamic params |
|
|
12
|
+
| theokit-gateways | `src/server/routes/**`, `**/*webhook*` | handleChannelWebhook, the `@theokit/gateway-*` adapters, signature validation, the onMessage seam |
|
|
13
13
|
| theokit-agents | `**/*agent*`, `**/*tool*`, `**/*Agent*`, `**/*Tool*` | @Agent, @Tool, @Toolbox decorators, LLM integration |
|
|
14
14
|
| theokit-database | `**/*schema*`, `**/*db*`, `**/drizzle*`, `**/*migration*`, `**/*seed*` | Drizzle ORM, SQLite, schema patterns, migrations |
|
|
15
|
-
| theokit-frontend | `app/**`
|
|
16
|
-
| theokit-ui | `app/**`, `**/*Chat*`, `**/*Sidebar*`, `**/*Theme*`
|
|
15
|
+
| theokit-frontend | `src/app/**` | File-based routing, layouts, theoFetch, useAgent |
|
|
16
|
+
| theokit-ui | `src/app/**`, `**/*Chat*`, `**/*Sidebar*`, `**/*Theme*` | @theokit/ui AI components: ChatThread, ChatMessage, ToolCallCard, theming (generic primitives like CodeBlock/Sidebar come from @usetheo/ui) |
|
|
17
17
|
| theokit-config | `theo.config*`, `**/*config*` | the config() builder, plugins, security, storage |
|
|
18
18
|
|
|
19
19
|
### Settings
|
|
@@ -19,7 +19,7 @@ cp .env.example .env && $EDITOR .env
|
|
|
19
19
|
pnpm dev
|
|
20
20
|
```
|
|
21
21
|
|
|
22
|
-
Open the app and chat. Edit `agents/chat.ts` to change the model, add tools, or
|
|
22
|
+
Open the app and chat. Edit `src/server/agents/chat.ts` to change the model, add tools, or
|
|
23
23
|
swap the persona — `@theokit/sdk` is the runtime and resolves the provider from
|
|
24
24
|
your environment.
|
|
25
25
|
|
|
@@ -27,29 +27,55 @@ your environment.
|
|
|
27
27
|
|
|
28
28
|
```
|
|
29
29
|
{{name}}/
|
|
30
|
-
├──
|
|
31
|
-
│ ├──
|
|
32
|
-
│ ├──
|
|
33
|
-
│ ├──
|
|
34
|
-
│
|
|
35
|
-
├──
|
|
36
|
-
│
|
|
37
|
-
│ ├──
|
|
38
|
-
│ ├──
|
|
39
|
-
│ ├──
|
|
40
|
-
│
|
|
41
|
-
├──
|
|
42
|
-
│
|
|
43
|
-
|
|
30
|
+
├── src/
|
|
31
|
+
│ ├── app/ # Frontend — the only half that ships to a browser
|
|
32
|
+
│ │ ├── page.tsx # the `/` route — composition root
|
|
33
|
+
│ │ ├── layout.tsx # root layout
|
|
34
|
+
│ │ ├── components/ # presentational UI
|
|
35
|
+
│ │ ├── hooks/ # custom hooks — where state lives
|
|
36
|
+
│ │ └── lib/ # app modules / config
|
|
37
|
+
│ ├── server/ # Backend — everything that never leaves the machine
|
|
38
|
+
│ │ ├── agents/ # the agent, and what composes it
|
|
39
|
+
│ │ │ ├── chat.ts # the agent → POST /api/agents/chat
|
|
40
|
+
│ │ │ ├── prompts/ # system prompts / personas
|
|
41
|
+
│ │ │ ├── tools/ # tools the agent can call (weather, current-time, …)
|
|
42
|
+
│ │ │ ├── skills/ # procedures the model loads on demand
|
|
43
|
+
│ │ │ └── hooks/ # lifecycle interception (audit every tool call)
|
|
44
|
+
│ │ └── routes/health.ts # GET /api/health
|
|
45
|
+
│ └── shared/agent.ts # Branding (name, model, greeting) — one source of truth
|
|
46
|
+
├── .theokit/ # Agent context — DATA, edited without a rebuild
|
|
47
|
+
│ ├── THEO.md # facts true on every turn
|
|
48
|
+
│ ├── rules/ # instructions scoped to file globs
|
|
49
|
+
│ └── personalities/ # swappable system prompts (usePersonality)
|
|
44
50
|
├── docs/ # ARCHITECTURE · CUSTOMIZATION · ENVIRONMENT
|
|
45
|
-
├── theo.config.ts # TheoKit configuration
|
|
51
|
+
├── theo.config.ts # TheoKit configuration — declares the three paths above
|
|
46
52
|
└── .env.example # Environment variables
|
|
47
53
|
```
|
|
48
54
|
|
|
55
|
+
**Code and data are the two halves.** `src/server/agents/` is what you compile — agents, tools,
|
|
56
|
+
skills, hooks. `.theokit/` is what the agent reads at runtime — context, rules, personalities. You
|
|
57
|
+
change the second without a rebuild, and that is the point of the split: tone and domain facts move
|
|
58
|
+
at a different speed than code, and shipping a deploy to reword a system prompt is a bad trade.
|
|
59
|
+
|
|
60
|
+
| You want to change | Edit | Rebuild? |
|
|
61
|
+
| ----------------------------------- | -------------------------- | -------- |
|
|
62
|
+
| what the agent can DO | `src/server/agents/tools/` | yes |
|
|
63
|
+
| what it always knows | `.theokit/THEO.md` | no |
|
|
64
|
+
| how it behaves near certain files | `.theokit/rules/` | no |
|
|
65
|
+
| how it talks, switchable at runtime | `.theokit/personalities/` | no |
|
|
66
|
+
|
|
67
|
+
**Why agents live under `server/`.** An agent reads your API keys, calls tools that touch the
|
|
68
|
+
network, and runs where the server runs. Every rule that applies to `server/` applies to it, so it
|
|
69
|
+
is a part of the backend rather than a third thing beside it — and `src/app/` stays exactly what it
|
|
70
|
+
claims to be: the only code that reaches a browser.
|
|
71
|
+
|
|
72
|
+
The three paths are declared in `theo.config.ts`, not assumed by the framework. Move them wherever
|
|
73
|
+
your project wants and update that file; nothing else needs to know.
|
|
74
|
+
|
|
49
75
|
## Key Concepts
|
|
50
76
|
|
|
51
|
-
- **An agent is a file.** `agents/chat.ts` is served at `POST /api/agents/chat` —
|
|
52
|
-
nothing to register. Add a second agent as another `agents/<name>.ts`.
|
|
77
|
+
- **An agent is a file.** `src/server/agents/chat.ts` is served at `POST /api/agents/chat` —
|
|
78
|
+
nothing to register. Add a second agent as another `src/server/agents/<name>.ts`.
|
|
53
79
|
- **`AgentBuilder`** is the authoring surface. The chain accumulates type-state, so
|
|
54
80
|
`.build()` without `.model()` is a compile error, not a runtime surprise:
|
|
55
81
|
|
|
@@ -66,8 +92,8 @@ your environment.
|
|
|
66
92
|
|
|
67
93
|
- **A tool is a file too** — `tool('name').describe(…).input(z.object({…})).execute(…).build()`.
|
|
68
94
|
Pure metadata plus a handler; it never calls an LLM.
|
|
69
|
-
- **The sub-folders under `agents/` are semantic, not routes.** `prompts/`, `tools/`,
|
|
70
|
-
`skills/` and friends are skipped by the scanner, so `agents/tools/weather.ts`
|
|
95
|
+
- **The sub-folders under `src/server/agents/` are semantic, not routes.** `prompts/`, `tools/`,
|
|
96
|
+
`skills/` and friends are skipped by the scanner, so `src/server/agents/tools/weather.ts`
|
|
71
97
|
never becomes a phantom `/api/agents/tools/weather` endpoint.
|
|
72
98
|
- **`useAgent`** binds the client to the agent and hands you the transcript:
|
|
73
99
|
`const { thread, send, status, reset, error } = useAgent('/api/agents/chat')`.
|
|
@@ -84,9 +110,9 @@ customization and environment variables have their own pages beside it.
|
|
|
84
110
|
Two component libraries come with this template, and the split is by **what a component is for**,
|
|
85
111
|
not by how generic it looks:
|
|
86
112
|
|
|
87
|
-
| You need
|
|
88
|
-
|
|
|
89
|
-
| Agent surfaces — chat, streaming, tool calls, approvals | **`@theokit/ui`** | `ChatThread`, `ChatMessage`, `ChatComposer`, `ToolCallCard`, `AgentStream`
|
|
113
|
+
| You need | Import from | Examples |
|
|
114
|
+
| ------------------------------------------------------- | ----------------- | ---------------------------------------------------------------------------------------------------------------------- |
|
|
115
|
+
| Agent surfaces — chat, streaming, tool calls, approvals | **`@theokit/ui`** | `ChatThread`, `ChatMessage`, `ChatComposer`, `ToolCallCard`, `AgentStream` |
|
|
90
116
|
| App chrome — shell, navigation, tables, forms, feedback | **`@usetheo/ui`** | `Sidebar`, `PageShell`, `DataTable`, `Select`, `FormField`, `Badge`, `EmptyState`, `Alert`, `Dialog`, `CommandPalette` |
|
|
91
117
|
|
|
92
118
|
This template uses a handful of them. The rest are installed and waiting — **check before you write
|
|
@@ -99,15 +125,15 @@ carries the routing table above in full.
|
|
|
99
125
|
|
|
100
126
|
## Adding a screen
|
|
101
127
|
|
|
102
|
-
Routing is file-based: a screen is a folder under `app/` with a `page.tsx`.
|
|
128
|
+
Routing is file-based: a screen is a folder under `src/app/` with a `page.tsx`.
|
|
103
129
|
|
|
104
|
-
| You want
|
|
105
|
-
|
|
106
|
-
| a `/settings` screen | `app/settings/page.tsx`
|
|
107
|
-
| a nested screen
|
|
108
|
-
| a dynamic screen
|
|
130
|
+
| You want | Create | Serves |
|
|
131
|
+
| -------------------- | ----------------------------------- | ------------------- |
|
|
132
|
+
| a `/settings` screen | `src/app/settings/page.tsx` | `/settings` |
|
|
133
|
+
| a nested screen | `src/app/settings/billing/page.tsx` | `/settings/billing` |
|
|
134
|
+
| a dynamic screen | `src/app/users/[id]/page.tsx` | `/users/:id` |
|
|
109
135
|
|
|
110
|
-
Or run `theokit generate page settings`, then link it from `app/components/Nav.tsx`.
|
|
136
|
+
Or run `theokit generate page settings`, then link it from `src/app/components/Nav.tsx`.
|
|
111
137
|
|
|
112
138
|
## Other scaffolds
|
|
113
139
|
|