@kernel.chat/kbot 3.16.0 → 3.17.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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=consultation.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consultation.test.d.ts","sourceRoot":"","sources":["../src/consultation.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,86 @@
1
+ // Tests for kbot Consultation Engine
2
+ import { describe, it, expect } from 'vitest';
3
+ import { checkDomainGuardrails, getIntakeMessage, parseIntakeAnswers, detectThreadClosure } from './consultation.js';
4
+ describe('Domain Guardrails', () => {
5
+ it('blocks legal advice requests', () => {
6
+ const result = checkDomainGuardrails('Can you give me legal advice about my lawsuit?');
7
+ expect(result.blocked).toBe(true);
8
+ expect(result.domain).toBe('legal');
9
+ expect(result.message).toBeTruthy();
10
+ expect(result.suggestedTopic).toBeTruthy();
11
+ });
12
+ it('blocks medical advice requests', () => {
13
+ const result = checkDomainGuardrails('What medication should I take for my symptoms?');
14
+ expect(result.blocked).toBe(true);
15
+ expect(result.domain).toBe('medical');
16
+ });
17
+ it('blocks financial investment advice', () => {
18
+ const result = checkDomainGuardrails('Should I invest in this stock?');
19
+ expect(result.blocked).toBe(true);
20
+ expect(result.domain).toBe('financial');
21
+ });
22
+ it('blocks tax advice', () => {
23
+ const result = checkDomainGuardrails('How should I file my tax return?');
24
+ expect(result.blocked).toBe(true);
25
+ expect(result.domain).toBe('tax');
26
+ });
27
+ it('allows business strategy questions', () => {
28
+ const result = checkDomainGuardrails('How should I price my SaaS product?');
29
+ expect(result.blocked).toBe(false);
30
+ });
31
+ it('allows technical questions', () => {
32
+ const result = checkDomainGuardrails('How do I set up a CI/CD pipeline?');
33
+ expect(result.blocked).toBe(false);
34
+ });
35
+ it('allows general business questions', () => {
36
+ const result = checkDomainGuardrails('What marketing channels should I use for my startup?');
37
+ expect(result.blocked).toBe(false);
38
+ });
39
+ });
40
+ describe('Intake System', () => {
41
+ it('generates intake questions', () => {
42
+ const msg = getIntakeMessage();
43
+ expect(msg).toContain('industry');
44
+ expect(msg).toContain('challenge');
45
+ expect(msg.length).toBeGreaterThan(100);
46
+ });
47
+ it('parses numbered intake answers', () => {
48
+ const answers = parseIntakeAnswers(`
49
+ 1. SaaS
50
+ 2. We build project management tools
51
+ 3. Customer churn is our biggest problem
52
+ 4. Reduce churn by 20% in 6 months
53
+ 5. Help with retention strategy
54
+ `);
55
+ expect(answers.industry).toBe('SaaS');
56
+ expect(answers.goals).toBeTruthy();
57
+ expect(answers.challenges).toBeTruthy();
58
+ });
59
+ it('parses paragraph-format answers', () => {
60
+ const answers = parseIntakeAnswers('I run a fintech startup that helps small businesses with payments.');
61
+ expect(answers.industry).toBe('fintech');
62
+ expect(answers.context).toBeTruthy();
63
+ });
64
+ it('handles empty input gracefully', () => {
65
+ const answers = parseIntakeAnswers('');
66
+ expect(answers).toBeTruthy();
67
+ });
68
+ });
69
+ describe('Thread Closure Detection', () => {
70
+ it('detects thank you as closure', () => {
71
+ expect(detectThreadClosure('Thanks!')).toBe(true);
72
+ expect(detectThreadClosure('Thank you so much')).toBe(true);
73
+ });
74
+ it('detects goodbye as closure', () => {
75
+ expect(detectThreadClosure('Goodbye!')).toBe(true);
76
+ expect(detectThreadClosure('Take care')).toBe(true);
77
+ });
78
+ it('does not detect long messages as closure', () => {
79
+ const longMsg = 'Thanks for the information. I have a follow-up question about the implementation timeline. Can you provide more details about the phased approach you mentioned? I want to make sure we have enough resources allocated for each phase and understand the dependencies between them.';
80
+ expect(detectThreadClosure(longMsg)).toBe(false);
81
+ });
82
+ it('does not detect questions as closure', () => {
83
+ expect(detectThreadClosure('What should I do next?')).toBe(false);
84
+ });
85
+ });
86
+ //# sourceMappingURL=consultation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consultation.test.js","sourceRoot":"","sources":["../src/consultation.test.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ export interface EmailAgentConfig {
16
16
  ollamaUrl: string;
17
17
  ollamaModel: string;
18
18
  pollInterval: number;
19
+ /** If empty, accepts ALL inbound emails (open mode) */
19
20
  agentUsers: string[];
20
21
  }
21
22
  export declare function loadCompanionMemory(email: string): CompanionMemory;
@@ -1 +1 @@
1
- {"version":3,"file":"email-agent.d.ts","sourceRoot":"","sources":["../src/email-agent.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAkDD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAmBlE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAIjE;AA+LD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AASD,wBAAgB,kBAAkB,IAAI,eAAe,CAEpD;AAID,wBAAsB,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkI7E;AAED,wBAAgB,cAAc,IAAI,IAAI,CAMrC"}
1
+ {"version":3,"file":"email-agent.d.ts","sourceRoot":"","sources":["../src/email-agent.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,uDAAuD;IACvD,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAkDD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAmBlE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAIjE;AA+LD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AASD,wBAAgB,kBAAkB,IAAI,eAAe,CAEpD;AAID,wBAAsB,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmI7E;AAED,wBAAgB,cAAc,IAAI,IAAI,CAMrC"}
@@ -311,10 +311,11 @@ export async function startEmailAgent(config) {
311
311
  async function checkAndRespond() {
312
312
  agentState.lastCheck = new Date().toISOString();
313
313
  try {
314
- const { data: messages } = await svc
315
- .from('contact_messages')
316
- .select('*')
317
- .in('from_email', config.agentUsers);
314
+ // Open mode: if no users specified, accept all inbound emails
315
+ const query = svc.from('contact_messages').select('*');
316
+ const { data: messages } = config.agentUsers.length > 0
317
+ ? await query.in('from_email', config.agentUsers)
318
+ : await query.order('created_at', { ascending: false }).limit(50);
318
319
  if (!messages || messages.length === 0)
319
320
  return;
320
321
  for (const msg of messages) {
@@ -1 +1 @@
1
- {"version":3,"file":"email-agent.js","sourceRoot":"","sources":["../src/email-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"email-agent.js","sourceRoot":"","sources":["../src/email-agent.ts"],"names":[],"mappings":"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"}
package/dist/init.d.ts ADDED
@@ -0,0 +1,23 @@
1
+ export interface KbotProjectConfig {
2
+ /** Detected project name */
3
+ name: string;
4
+ /** Detected language */
5
+ language: string;
6
+ /** Detected framework (if any) */
7
+ framework?: string;
8
+ /** Package manager */
9
+ packageManager?: string;
10
+ /** Preferred default agent */
11
+ defaultAgent: string;
12
+ /** Key files kbot should know about */
13
+ keyFiles: string[];
14
+ /** Custom commands detected from package.json/Makefile/etc */
15
+ commands: Record<string, string>;
16
+ /** Forged tools created during init */
17
+ forgedTools: string[];
18
+ /** When this config was generated */
19
+ createdAt: string;
20
+ }
21
+ export declare function initProject(root: string): Promise<KbotProjectConfig>;
22
+ export declare function formatInitReport(config: KbotProjectConfig): string;
23
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,sBAAsB;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAA;IACpB,uCAAuC;IACvC,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC,uCAAuC;IACvC,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAA;CAClB;AAyQD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAqD1E;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAkBlE"}
package/dist/init.js ADDED
@@ -0,0 +1,355 @@
1
+ // kbot init — 60-second project onboarding
2
+ //
3
+ // Scans a repo, detects stack, generates .kbot.json config,
4
+ // creates project-specific forged tools, and prints a ready message.
5
+ //
6
+ // Usage: kbot init
7
+ //
8
+ // This is the first thing a new user runs. It must be fast,
9
+ // useful, and make kbot feel like it belongs in the project.
10
+ import { existsSync, readFileSync, writeFileSync, mkdirSync, readdirSync } from 'node:fs';
11
+ import { join, basename } from 'node:path';
12
+ import { execSync } from 'node:child_process';
13
+ import { homedir } from 'node:os';
14
+ // ── Detection ──
15
+ function quickExec(cmd, timeoutMs = 2000) {
16
+ try {
17
+ return execSync(cmd, { encoding: 'utf-8', timeout: timeoutMs, stdio: ['pipe', 'pipe', 'pipe'] }).trim();
18
+ }
19
+ catch {
20
+ return '';
21
+ }
22
+ }
23
+ function detectProjectName(root) {
24
+ // Try package.json first
25
+ const pkgPath = join(root, 'package.json');
26
+ if (existsSync(pkgPath)) {
27
+ try {
28
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
29
+ if (pkg.name)
30
+ return pkg.name;
31
+ }
32
+ catch { /* ignore */ }
33
+ }
34
+ // Try Cargo.toml
35
+ const cargoPath = join(root, 'Cargo.toml');
36
+ if (existsSync(cargoPath)) {
37
+ const match = readFileSync(cargoPath, 'utf8').match(/name\s*=\s*"([^"]+)"/);
38
+ if (match)
39
+ return match[1];
40
+ }
41
+ // Try pyproject.toml
42
+ const pyPath = join(root, 'pyproject.toml');
43
+ if (existsSync(pyPath)) {
44
+ const match = readFileSync(pyPath, 'utf8').match(/name\s*=\s*"([^"]+)"/);
45
+ if (match)
46
+ return match[1];
47
+ }
48
+ // Fall back to directory name
49
+ return basename(root);
50
+ }
51
+ function detectLanguage(root) {
52
+ if (existsSync(join(root, 'tsconfig.json')))
53
+ return 'TypeScript';
54
+ if (existsSync(join(root, 'package.json')))
55
+ return 'JavaScript';
56
+ if (existsSync(join(root, 'Cargo.toml')))
57
+ return 'Rust';
58
+ if (existsSync(join(root, 'go.mod')))
59
+ return 'Go';
60
+ if (existsSync(join(root, 'pyproject.toml')) || existsSync(join(root, 'setup.py')))
61
+ return 'Python';
62
+ if (existsSync(join(root, 'build.gradle')) || existsSync(join(root, 'pom.xml')))
63
+ return 'Java';
64
+ if (existsSync(join(root, 'Package.swift')))
65
+ return 'Swift';
66
+ if (existsSync(join(root, 'mix.exs')))
67
+ return 'Elixir';
68
+ // Count file extensions in top-level src/ or root
69
+ const exts = {};
70
+ const scanDirs = [join(root, 'src'), root];
71
+ for (const dir of scanDirs) {
72
+ try {
73
+ const entries = readdirSync(dir);
74
+ for (const name of entries) {
75
+ const ext = name.split('.').pop() || '';
76
+ if (ext !== name)
77
+ exts[ext] = (exts[ext] || 0) + 1;
78
+ }
79
+ }
80
+ catch { /* dir doesn't exist */ }
81
+ }
82
+ const langMap = {
83
+ ts: 'TypeScript', tsx: 'TypeScript', js: 'JavaScript', jsx: 'JavaScript',
84
+ py: 'Python', rs: 'Rust', go: 'Go', java: 'Java', rb: 'Ruby',
85
+ swift: 'Swift', kt: 'Kotlin', cs: 'C#', cpp: 'C++', c: 'C',
86
+ };
87
+ const sorted = Object.entries(exts)
88
+ .filter(([ext]) => langMap[ext])
89
+ .sort((a, b) => b[1] - a[1]);
90
+ return sorted.length > 0 ? langMap[sorted[0][0]] : 'Unknown';
91
+ }
92
+ function detectFramework(root) {
93
+ const pkgPath = join(root, 'package.json');
94
+ if (!existsSync(pkgPath))
95
+ return undefined;
96
+ try {
97
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
98
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
99
+ if (deps.next)
100
+ return 'Next.js';
101
+ if (deps.nuxt)
102
+ return 'Nuxt';
103
+ if (deps['react-dom'])
104
+ return 'React';
105
+ if (deps.vue)
106
+ return 'Vue';
107
+ if (deps.svelte || deps['@sveltejs/kit'])
108
+ return 'Svelte';
109
+ if (deps.express)
110
+ return 'Express';
111
+ if (deps.fastify)
112
+ return 'Fastify';
113
+ if (deps.hono)
114
+ return 'Hono';
115
+ if (deps.remix || deps['@remix-run/react'])
116
+ return 'Remix';
117
+ if (deps.astro)
118
+ return 'Astro';
119
+ if (deps.nest || deps['@nestjs/core'])
120
+ return 'NestJS';
121
+ if (deps.angular || deps['@angular/core'])
122
+ return 'Angular';
123
+ if (deps.gatsby)
124
+ return 'Gatsby';
125
+ if (deps.electron)
126
+ return 'Electron';
127
+ if (deps.expo)
128
+ return 'Expo (React Native)';
129
+ if (deps['react-native'])
130
+ return 'React Native';
131
+ if (deps.vite)
132
+ return 'Vite';
133
+ }
134
+ catch { /* ignore */ }
135
+ // Python frameworks
136
+ if (existsSync(join(root, 'manage.py')))
137
+ return 'Django';
138
+ const reqPath = join(root, 'requirements.txt');
139
+ if (existsSync(reqPath)) {
140
+ const reqs = readFileSync(reqPath, 'utf8');
141
+ if (/flask/i.test(reqs))
142
+ return 'Flask';
143
+ if (/fastapi/i.test(reqs))
144
+ return 'FastAPI';
145
+ if (/django/i.test(reqs))
146
+ return 'Django';
147
+ }
148
+ // Rust frameworks
149
+ if (existsSync(join(root, 'Cargo.toml'))) {
150
+ const cargo = readFileSync(join(root, 'Cargo.toml'), 'utf8');
151
+ if (/actix/i.test(cargo))
152
+ return 'Actix';
153
+ if (/axum/i.test(cargo))
154
+ return 'Axum';
155
+ if (/rocket/i.test(cargo))
156
+ return 'Rocket';
157
+ }
158
+ return undefined;
159
+ }
160
+ function detectPackageManager(root) {
161
+ if (existsSync(join(root, 'bun.lockb')))
162
+ return 'bun';
163
+ if (existsSync(join(root, 'pnpm-lock.yaml')))
164
+ return 'pnpm';
165
+ if (existsSync(join(root, 'yarn.lock')))
166
+ return 'yarn';
167
+ if (existsSync(join(root, 'package-lock.json')))
168
+ return 'npm';
169
+ if (existsSync(join(root, 'Cargo.lock')))
170
+ return 'cargo';
171
+ if (existsSync(join(root, 'poetry.lock')))
172
+ return 'poetry';
173
+ if (existsSync(join(root, 'go.sum')))
174
+ return 'go';
175
+ if (existsSync(join(root, 'Pipfile.lock')))
176
+ return 'pipenv';
177
+ return undefined;
178
+ }
179
+ function detectKeyFiles(root) {
180
+ const candidates = [
181
+ 'package.json', 'tsconfig.json', 'Cargo.toml', 'go.mod', 'pyproject.toml',
182
+ 'Dockerfile', 'docker-compose.yml', 'Makefile',
183
+ '.env.example', '.github/workflows/ci.yml',
184
+ 'src/index.ts', 'src/main.ts', 'src/app.ts', 'src/index.js', 'src/main.js',
185
+ 'src/App.tsx', 'src/App.vue', 'src/App.svelte',
186
+ 'main.go', 'src/main.rs', 'src/lib.rs',
187
+ 'app.py', 'main.py', 'manage.py',
188
+ 'README.md', 'CLAUDE.md', '.kbot.md',
189
+ ];
190
+ return candidates.filter(f => existsSync(join(root, f)));
191
+ }
192
+ function detectCommands(root) {
193
+ const commands = {};
194
+ // From package.json scripts
195
+ const pkgPath = join(root, 'package.json');
196
+ if (existsSync(pkgPath)) {
197
+ try {
198
+ const pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
199
+ const scripts = pkg.scripts || {};
200
+ const useful = ['dev', 'start', 'build', 'test', 'lint', 'typecheck', 'deploy', 'format', 'check'];
201
+ for (const s of useful) {
202
+ if (scripts[s]) {
203
+ const pm = detectPackageManager(root) || 'npm';
204
+ commands[s] = `${pm} run ${s}`;
205
+ }
206
+ }
207
+ }
208
+ catch { /* ignore */ }
209
+ }
210
+ // From Makefile
211
+ if (existsSync(join(root, 'Makefile'))) {
212
+ try {
213
+ const makefile = readFileSync(join(root, 'Makefile'), 'utf8');
214
+ const targets = makefile.match(/^([a-zA-Z_-]+):/gm);
215
+ if (targets) {
216
+ for (const t of targets.slice(0, 8)) {
217
+ const name = t.replace(':', '');
218
+ if (!['all', 'clean', '.PHONY', 'default'].includes(name)) {
219
+ commands[name] = `make ${name}`;
220
+ }
221
+ }
222
+ }
223
+ }
224
+ catch { /* ignore */ }
225
+ }
226
+ // Cargo commands
227
+ if (existsSync(join(root, 'Cargo.toml'))) {
228
+ commands.build = commands.build || 'cargo build';
229
+ commands.test = commands.test || 'cargo test';
230
+ commands.run = commands.run || 'cargo run';
231
+ }
232
+ // Go commands
233
+ if (existsSync(join(root, 'go.mod'))) {
234
+ commands.build = commands.build || 'go build ./...';
235
+ commands.test = commands.test || 'go test ./...';
236
+ }
237
+ return commands;
238
+ }
239
+ function suggestAgent(language, framework) {
240
+ if (framework) {
241
+ const webFrameworks = ['React', 'Vue', 'Svelte', 'Next.js', 'Nuxt', 'Angular', 'Remix', 'Astro', 'Gatsby'];
242
+ if (webFrameworks.includes(framework))
243
+ return 'coder';
244
+ if (['Express', 'Fastify', 'Hono', 'NestJS'].includes(framework))
245
+ return 'coder';
246
+ if (['Django', 'Flask', 'FastAPI'].includes(framework))
247
+ return 'coder';
248
+ }
249
+ return 'kernel';
250
+ }
251
+ function generateProjectTools(config) {
252
+ const tools = [];
253
+ // Test runner
254
+ if (config.commands.test) {
255
+ tools.push({
256
+ name: 'run_tests',
257
+ description: `Run ${config.name} test suite`,
258
+ code: `const { execSync } = require('child_process'); try { return execSync('${config.commands.test}', { encoding: 'utf8', timeout: 120000, cwd: process.cwd() }).slice(-2000); } catch(e) { return 'Tests failed:\\n' + (e.stderr || e.stdout || e.message).slice(-2000); }`,
259
+ });
260
+ }
261
+ // Type checker / linter
262
+ if (config.commands.typecheck || config.commands.lint) {
263
+ const cmd = config.commands.typecheck || config.commands.lint;
264
+ tools.push({
265
+ name: 'check_code',
266
+ description: `Run type-check/lint for ${config.name}`,
267
+ code: `const { execSync } = require('child_process'); try { return execSync('${cmd}', { encoding: 'utf8', timeout: 60000, cwd: process.cwd() }).slice(-2000) || 'All checks passed.'; } catch(e) { return 'Check failed:\\n' + (e.stderr || e.stdout || e.message).slice(-2000); }`,
268
+ });
269
+ }
270
+ // Build
271
+ if (config.commands.build) {
272
+ tools.push({
273
+ name: 'build_project',
274
+ description: `Build ${config.name}`,
275
+ code: `const { execSync } = require('child_process'); try { return execSync('${config.commands.build}', { encoding: 'utf8', timeout: 120000, cwd: process.cwd() }).slice(-2000) || 'Build succeeded.'; } catch(e) { return 'Build failed:\\n' + (e.stderr || e.stdout || e.message).slice(-2000); }`,
276
+ });
277
+ }
278
+ // Dev server
279
+ if (config.commands.dev || config.commands.start) {
280
+ const cmd = config.commands.dev || config.commands.start;
281
+ tools.push({
282
+ name: 'start_dev',
283
+ description: `Start ${config.name} dev server`,
284
+ code: `const { spawn } = require('child_process'); const [bin, ...args] = '${cmd}'.split(' '); const p = spawn(bin, args, { cwd: process.cwd(), stdio: 'pipe' }); let out = ''; p.stdout?.on('data', d => out += d); p.stderr?.on('data', d => out += d); return new Promise(r => setTimeout(() => { p.kill(); r('Dev server started. Output:\\n' + out.slice(-1000)); }, 3000));`,
285
+ });
286
+ }
287
+ return tools;
288
+ }
289
+ // ── Main Init ──
290
+ export async function initProject(root) {
291
+ const name = detectProjectName(root);
292
+ const language = detectLanguage(root);
293
+ const framework = detectFramework(root);
294
+ const packageManager = detectPackageManager(root);
295
+ const keyFiles = detectKeyFiles(root);
296
+ const commands = detectCommands(root);
297
+ const defaultAgent = suggestAgent(language, framework);
298
+ const config = {
299
+ name,
300
+ language,
301
+ framework,
302
+ packageManager,
303
+ defaultAgent,
304
+ keyFiles,
305
+ commands,
306
+ forgedTools: [],
307
+ createdAt: new Date().toISOString(),
308
+ };
309
+ // Generate and save forged tools
310
+ const tools = generateProjectTools(config);
311
+ const forgeDir = join(homedir(), '.kbot', 'plugins', 'forged');
312
+ if (!existsSync(forgeDir))
313
+ mkdirSync(forgeDir, { recursive: true });
314
+ for (const tool of tools) {
315
+ const toolPath = join(forgeDir, `${tool.name}.js`);
316
+ const wrapper = `// Auto-generated by kbot init for ${name}
317
+ // ${tool.description}
318
+ module.exports = async function(args) {
319
+ ${tool.code}
320
+ };
321
+ module.exports.description = ${JSON.stringify(tool.description)};
322
+ `;
323
+ writeFileSync(toolPath, wrapper);
324
+ config.forgedTools.push(tool.name);
325
+ }
326
+ // Write .kbot.json
327
+ const configPath = join(root, '.kbot.json');
328
+ writeFileSync(configPath, JSON.stringify(config, null, 2));
329
+ // Add to .gitignore if not already there
330
+ const gitignorePath = join(root, '.gitignore');
331
+ if (existsSync(gitignorePath)) {
332
+ const gitignore = readFileSync(gitignorePath, 'utf8');
333
+ if (!gitignore.includes('.kbot.json')) {
334
+ writeFileSync(gitignorePath, gitignore.trimEnd() + '\n.kbot.json\n');
335
+ }
336
+ }
337
+ return config;
338
+ }
339
+ export function formatInitReport(config) {
340
+ const lines = [];
341
+ lines.push(` Project: ${config.name}`);
342
+ lines.push(` Language: ${config.language}${config.framework ? ` (${config.framework})` : ''}`);
343
+ if (config.packageManager)
344
+ lines.push(` Package Mgr: ${config.packageManager}`);
345
+ lines.push(` Agent: ${config.defaultAgent}`);
346
+ lines.push(` Key files: ${config.keyFiles.length} detected`);
347
+ if (Object.keys(config.commands).length > 0) {
348
+ lines.push(` Commands: ${Object.keys(config.commands).join(', ')}`);
349
+ }
350
+ if (config.forgedTools.length > 0) {
351
+ lines.push(` Tools: ${config.forgedTools.join(', ')} (auto-forged)`);
352
+ }
353
+ return lines.join('\n');
354
+ }
355
+ //# sourceMappingURL=init.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=init.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.test.d.ts","sourceRoot":"","sources":["../src/init.test.ts"],"names":[],"mappings":""}