@gurulu/cli 1.5.0 → 1.5.2
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.js +15583 -361
- package/dist/index.d.ts +1 -1
- package/dist/index.js +15583 -361
- package/dist/lib/detect.d.ts +32 -0
- package/dist/lib/detect.d.ts.map +1 -1
- package/dist/lib/detect.js +82 -3
- package/dist/lib/editor-mcp.d.ts +5 -0
- package/dist/lib/editor-mcp.d.ts.map +1 -1
- package/dist/lib/inject.d.ts +5 -4
- package/dist/lib/inject.d.ts.map +1 -1
- package/dist/lib/install-plan.d.ts +16 -0
- package/dist/lib/install-plan.d.ts.map +1 -1
- package/dist/lib/install-plan.js +37 -1
- package/dist/wizard/agent-native.d.ts +22 -0
- package/dist/wizard/agent-native.d.ts.map +1 -0
- package/dist/wizard/agent.d.ts.map +1 -1
- package/dist/wizard/augment.d.ts +7 -0
- package/dist/wizard/augment.d.ts.map +1 -0
- package/dist/wizard/context.d.ts.map +1 -1
- package/dist/wizard/plan.d.ts +2 -0
- package/dist/wizard/plan.d.ts.map +1 -1
- package/dist/wizard/run.d.ts.map +1 -1
- package/package.json +2 -1
package/dist/lib/detect.d.ts
CHANGED
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
export type Framework = 'next' | 'react' | 'vue' | 'nuxt' | 'svelte' | 'astro' | 'vite' | 'express' | 'fastify' | 'hono' | 'koa' | 'node-server' | 'unknown';
|
|
2
2
|
export type Runtime = 'browser' | 'node' | 'unknown';
|
|
3
3
|
export type LlmFramework = 'openai' | 'anthropic' | 'langchain' | 'google-genai' | 'vercel-ai' | 'cohere' | 'mistral' | 'ollama';
|
|
4
|
+
export type Competitor = 'posthog' | 'mixpanel' | 'amplitude' | 'segment' | 'ga4' | 'heap';
|
|
5
|
+
/** Rakip analytics SDK'larını package.json'dan tespit eder (augmentation için). */
|
|
6
|
+
export declare function detectCompetitors(pkg: PackageJsonShape | null): Competitor[];
|
|
4
7
|
export type PackageManager = 'bun' | 'pnpm' | 'yarn' | 'npm';
|
|
8
|
+
export type ModuleType = 'esm' | 'cjs';
|
|
9
|
+
export type Language = 'js' | 'python' | 'go' | 'unknown';
|
|
10
|
+
/** Proje dilini dosya sinyallerinden tespit et (package.json öncelikli — JS). */
|
|
11
|
+
export declare function detectLanguage(dir: string): Language;
|
|
5
12
|
export interface DetectedProject {
|
|
6
13
|
dir: string;
|
|
7
14
|
hasPackageJson: boolean;
|
|
@@ -11,13 +18,38 @@ export interface DetectedProject {
|
|
|
11
18
|
packageJson: PackageJsonShape | null;
|
|
12
19
|
/** M46 (K31) — tespit edilen LLM/AI bağımlılıkları (boş = yok). */
|
|
13
20
|
llmFrameworks: LlmFramework[];
|
|
21
|
+
/** import vs require — snippet varyantı için (pkg.type==='module' → esm). */
|
|
22
|
+
moduleType: ModuleType;
|
|
23
|
+
/** Workspace root (lockfile dizini); cwd ile aynıysa monorepo değil. */
|
|
24
|
+
rootDir: string;
|
|
25
|
+
/** cwd bir monorepo paketi mi (root farklı + workspaces sinyali). */
|
|
26
|
+
isMonorepo: boolean;
|
|
27
|
+
/** Tespit edilen rakip analytics SDK'ları (augmentation/twin için, boş = yok). */
|
|
28
|
+
competitors: Competitor[];
|
|
29
|
+
/** Proje dili — JS dışında (python/go) non-JS install+snippet yolu izlenir. */
|
|
30
|
+
language: Language;
|
|
14
31
|
}
|
|
15
32
|
interface PackageJsonShape {
|
|
16
33
|
name?: string;
|
|
17
34
|
type?: 'module' | 'commonjs';
|
|
18
35
|
dependencies?: Record<string, string>;
|
|
19
36
|
devDependencies?: Record<string, string>;
|
|
37
|
+
/** npm/yarn/bun workspaces (pnpm ayrı dosyada — root tespitinde ele alınır). */
|
|
38
|
+
workspaces?: string[] | {
|
|
39
|
+
packages?: string[];
|
|
40
|
+
};
|
|
20
41
|
}
|
|
42
|
+
/** import vs require kararı — pkg.type==='module' → ESM, aksi Node default CJS. */
|
|
43
|
+
export declare function detectModuleType(pkg: PackageJsonShape | null): ModuleType;
|
|
44
|
+
/**
|
|
45
|
+
* Workspace root'unu bul: lockfile VEYA workspaces tanımı taşıyan en yakın üst dizin.
|
|
46
|
+
* Bulunamazsa cwd döner (monorepo değil). Monorepo'da .env + framework root'tan da
|
|
47
|
+
* kontrol edilir (apps/web/ minimal package.json sorununu çözer).
|
|
48
|
+
*/
|
|
49
|
+
export declare function findWorkspaceRoot(dir: string): {
|
|
50
|
+
root: string;
|
|
51
|
+
isMonorepo: boolean;
|
|
52
|
+
};
|
|
21
53
|
/**
|
|
22
54
|
* Walk up the directory tree (max 6 levels) looking for a lockfile.
|
|
23
55
|
* Monorepo workspaces typically have the lockfile at the repo root.
|
package/dist/lib/detect.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/lib/detect.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,OAAO,GACP,KAAK,GACL,MAAM,GACN,QAAQ,GACR,OAAO,GACP,MAAM,GACN,SAAS,GACT,SAAS,GACT,MAAM,GACN,KAAK,GACL,aAAa,GACb,SAAS,CAAC;AAEd,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAGrD,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,WAAW,GACX,WAAW,GACX,cAAc,GACd,WAAW,GACX,QAAQ,GACR,SAAS,GACT,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../src/lib/detect.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,OAAO,GACP,KAAK,GACL,MAAM,GACN,QAAQ,GACR,OAAO,GACP,MAAM,GACN,SAAS,GACT,SAAS,GACT,MAAM,GACN,KAAK,GACL,aAAa,GACb,SAAS,CAAC;AAEd,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAGrD,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,WAAW,GACX,WAAW,GACX,cAAc,GACd,WAAW,GACX,QAAQ,GACR,SAAS,GACT,QAAQ,CAAC;AAIb,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;AAkB3F,mFAAmF;AACnF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,GAAG,UAAU,EAAE,CAM5E;AAeD,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;AAE7D,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,KAAK,CAAC;AAIvC,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,GAAG,SAAS,CAAC;AAE1D,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAYpD;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,mEAAmE;IACnE,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,6EAA6E;IAC7E,UAAU,EAAE,UAAU,CAAC;IACvB,wEAAwE;IACxE,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,UAAU,EAAE,OAAO,CAAC;IACpB,kFAAkF;IAClF,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,+EAA+E;IAC/E,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAED,UAAU,gBAAgB;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gFAAgF;IAChF,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACjD;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,GAAG,UAAU,CAEzE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CA0BpF;AAiBD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAchE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAmBpF;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAmBvD;AAED,8EAA8E;AAC9E,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,GAAG,YAAY,EAAE,CAMhF;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAgC1D"}
|
package/dist/lib/detect.js
CHANGED
|
@@ -1,6 +1,29 @@
|
|
|
1
1
|
// src/lib/detect.ts
|
|
2
2
|
import { existsSync, readFileSync } from "node:fs";
|
|
3
3
|
import { dirname, join, parse } from "node:path";
|
|
4
|
+
var COMPETITOR_DEP_MAP = {
|
|
5
|
+
"posthog-js": "posthog",
|
|
6
|
+
"posthog-node": "posthog",
|
|
7
|
+
"mixpanel-browser": "mixpanel",
|
|
8
|
+
mixpanel: "mixpanel",
|
|
9
|
+
"@amplitude/analytics-browser": "amplitude",
|
|
10
|
+
"@amplitude/analytics-node": "amplitude",
|
|
11
|
+
"amplitude-js": "amplitude",
|
|
12
|
+
"@segment/analytics-next": "segment",
|
|
13
|
+
"analytics-node": "segment",
|
|
14
|
+
"react-ga4": "ga4",
|
|
15
|
+
"react-ga": "ga4",
|
|
16
|
+
"ga-gtag": "ga4",
|
|
17
|
+
"heap-js": "heap"
|
|
18
|
+
};
|
|
19
|
+
function detectCompetitors(pkg) {
|
|
20
|
+
const found = new Set;
|
|
21
|
+
for (const [dep, comp] of Object.entries(COMPETITOR_DEP_MAP)) {
|
|
22
|
+
if (hasDep(pkg, dep))
|
|
23
|
+
found.add(comp);
|
|
24
|
+
}
|
|
25
|
+
return [...found];
|
|
26
|
+
}
|
|
4
27
|
var LLM_DEP_MAP = {
|
|
5
28
|
openai: "openai",
|
|
6
29
|
"@anthropic-ai/sdk": "anthropic",
|
|
@@ -12,6 +35,43 @@ var LLM_DEP_MAP = {
|
|
|
12
35
|
"@mistralai/mistralai": "mistral",
|
|
13
36
|
ollama: "ollama"
|
|
14
37
|
};
|
|
38
|
+
function detectLanguage(dir) {
|
|
39
|
+
if (existsSync(join(dir, "package.json")))
|
|
40
|
+
return "js";
|
|
41
|
+
if (existsSync(join(dir, "pyproject.toml")) || existsSync(join(dir, "requirements.txt")) || existsSync(join(dir, "setup.py")) || existsSync(join(dir, "Pipfile"))) {
|
|
42
|
+
return "python";
|
|
43
|
+
}
|
|
44
|
+
if (existsSync(join(dir, "go.mod")))
|
|
45
|
+
return "go";
|
|
46
|
+
return "unknown";
|
|
47
|
+
}
|
|
48
|
+
function detectModuleType(pkg) {
|
|
49
|
+
return pkg?.type === "module" ? "esm" : "cjs";
|
|
50
|
+
}
|
|
51
|
+
function findWorkspaceRoot(dir) {
|
|
52
|
+
const start = dir;
|
|
53
|
+
const fsRoot = parse(dir).root;
|
|
54
|
+
let cur = dir;
|
|
55
|
+
for (let i = 0;i < 8; i++) {
|
|
56
|
+
const pkg = readPackageJson(cur);
|
|
57
|
+
const hasWorkspaces = Boolean(pkg?.workspaces);
|
|
58
|
+
const hasPnpmWs = existsSync(join(cur, "pnpm-workspace.yaml"));
|
|
59
|
+
const hasLock = existsSync(join(cur, "bun.lock")) || existsSync(join(cur, "bun.lockb")) || existsSync(join(cur, "pnpm-lock.yaml")) || existsSync(join(cur, "yarn.lock")) || existsSync(join(cur, "package-lock.json"));
|
|
60
|
+
if ((hasWorkspaces || hasPnpmWs) && cur !== start) {
|
|
61
|
+
return { root: cur, isMonorepo: true };
|
|
62
|
+
}
|
|
63
|
+
if (hasLock) {
|
|
64
|
+
return { root: cur, isMonorepo: cur !== start };
|
|
65
|
+
}
|
|
66
|
+
if (cur === fsRoot)
|
|
67
|
+
break;
|
|
68
|
+
const parent = dirname(cur);
|
|
69
|
+
if (parent === cur)
|
|
70
|
+
break;
|
|
71
|
+
cur = parent;
|
|
72
|
+
}
|
|
73
|
+
return { root: start, isMonorepo: false };
|
|
74
|
+
}
|
|
15
75
|
function readPackageJson(dir) {
|
|
16
76
|
const p = join(dir, "package.json");
|
|
17
77
|
if (!existsSync(p))
|
|
@@ -107,7 +167,17 @@ function detectLlmFrameworks(pkg) {
|
|
|
107
167
|
}
|
|
108
168
|
function detectProject(dir) {
|
|
109
169
|
const pkg = readPackageJson(dir);
|
|
110
|
-
|
|
170
|
+
let framework = detectFramework(pkg, dir);
|
|
171
|
+
const { root, isMonorepo } = findWorkspaceRoot(dir);
|
|
172
|
+
let effectivePkg = pkg;
|
|
173
|
+
if (framework === "unknown" && isMonorepo && root !== dir) {
|
|
174
|
+
const rootPkg = readPackageJson(root);
|
|
175
|
+
const rootFw = detectFramework(rootPkg, root);
|
|
176
|
+
if (rootFw !== "unknown") {
|
|
177
|
+
framework = rootFw;
|
|
178
|
+
effectivePkg = pkg ?? rootPkg;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
111
181
|
return {
|
|
112
182
|
dir,
|
|
113
183
|
hasPackageJson: pkg !== null,
|
|
@@ -115,13 +185,22 @@ function detectProject(dir) {
|
|
|
115
185
|
runtime: frameworkRuntime(framework),
|
|
116
186
|
packageManager: detectPackageManager(dir),
|
|
117
187
|
packageJson: pkg,
|
|
118
|
-
llmFrameworks: detectLlmFrameworks(pkg)
|
|
188
|
+
llmFrameworks: detectLlmFrameworks(pkg),
|
|
189
|
+
moduleType: detectModuleType(effectivePkg),
|
|
190
|
+
rootDir: root,
|
|
191
|
+
isMonorepo,
|
|
192
|
+
competitors: detectCompetitors(pkg),
|
|
193
|
+
language: detectLanguage(dir)
|
|
119
194
|
};
|
|
120
195
|
}
|
|
121
196
|
export {
|
|
122
197
|
frameworkRuntime,
|
|
198
|
+
findWorkspaceRoot,
|
|
123
199
|
detectProject,
|
|
124
200
|
detectPackageManager,
|
|
201
|
+
detectModuleType,
|
|
125
202
|
detectLlmFrameworks,
|
|
126
|
-
|
|
203
|
+
detectLanguage,
|
|
204
|
+
detectFramework,
|
|
205
|
+
detectCompetitors
|
|
127
206
|
};
|
package/dist/lib/editor-mcp.d.ts
CHANGED
|
@@ -29,6 +29,11 @@ interface EditorSpec {
|
|
|
29
29
|
gitignorePath?: string;
|
|
30
30
|
}
|
|
31
31
|
export declare const EDITORS: Record<EditorId, EditorSpec>;
|
|
32
|
+
/**
|
|
33
|
+
* Kurulu AI-editörleri tespit et (agent-native onboarding) — config dizini/işareti
|
|
34
|
+
* varsa o editöre MCP otomatik kurulur.
|
|
35
|
+
*/
|
|
36
|
+
export declare function detectInstalledEditors(cwd: string): EditorId[];
|
|
32
37
|
/** gurulu server'ı config'e ekle (diğerlerini koru). Pure. */
|
|
33
38
|
export declare function mergeMcpConfig(existing: Record<string, unknown>, serverConfig: McpServerConfig, key: string): Record<string, unknown>;
|
|
34
39
|
/** gurulu server'ı config'ten çıkar. Pure. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-mcp.d.ts","sourceRoot":"","sources":["../../src/lib/editor-mcp.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAUnE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,QAAQ;IACvB,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAID,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,QAAQ,EACf,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5B,eAAe,CAYjB;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9B,8FAA8F;IAC9F,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,UAAU,CAmBhD,CAAC;AAEF,8DAA8D;AAC9D,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,YAAY,EAAE,eAAe,EAC7B,GAAG,EAAE,MAAM,GACV,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAED,8CAA8C;AAC9C,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,GAAG,EAAE,MAAM,GACV,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB;AA4BD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,uFAAuF;IACvF,YAAY,EAAE,OAAO,CAAC;IACtB,iFAAiF;IACjF,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,CAgBrF;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,CAcvE"}
|
|
1
|
+
{"version":3,"file":"editor-mcp.d.ts","sourceRoot":"","sources":["../../src/lib/editor-mcp.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;AAUnE,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC7B;AAED,MAAM,WAAW,QAAQ;IACvB,4DAA4D;IAC5D,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAID,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,QAAQ,EACf,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5B,eAAe,CAYjB;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IAC9B,8FAA8F;IAC9F,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,UAAU,CAmBhD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,EAAE,CAS9D;AAED,8DAA8D;AAC9D,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,YAAY,EAAE,eAAe,EAC7B,GAAG,EAAE,MAAM,GACV,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAED,8CAA8C;AAC9C,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,GAAG,EAAE,MAAM,GACV,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIzB;AA4BD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,uFAAuF;IACvF,YAAY,EAAE,OAAO,CAAC;IACtB,iFAAiF;IACjF,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,CAgBrF;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,CAcvE"}
|
package/dist/lib/inject.d.ts
CHANGED
|
@@ -13,11 +13,10 @@ export interface InjectTextResult {
|
|
|
13
13
|
output: string;
|
|
14
14
|
reason: InjectTextReason;
|
|
15
15
|
}
|
|
16
|
-
/**
|
|
17
|
-
* Kaynağa import + init enjekte eder (idempotent). marker zaten varsa dokunmaz.
|
|
18
|
-
*/
|
|
19
16
|
export declare function injectInit(source: string, pieces: InjectPieces): InjectTextResult;
|
|
20
|
-
export declare function webPieces(workspaceKey: string, framework: Framework
|
|
17
|
+
export declare function webPieces(workspaceKey: string, framework: Framework, opts?: {
|
|
18
|
+
activation?: boolean;
|
|
19
|
+
}): InjectPieces;
|
|
21
20
|
export type InjectStrategy = 'prepend-entry' | 'create-module' | 'manual';
|
|
22
21
|
export declare function chooseStrategy(framework: Framework): InjectStrategy;
|
|
23
22
|
/** İlk var olan entry dosyası (cwd-relative) ya da null. */
|
|
@@ -38,6 +37,8 @@ export interface ApplyInjectionOptions {
|
|
|
38
37
|
/** create-module/manual fallback için hazır snippet (install-plan.initSnippet). */
|
|
39
38
|
snippet: string;
|
|
40
39
|
placementHint: string;
|
|
40
|
+
/** K37 Activation seçildi mi — prepend-entry'de runActivation deterministik eklenir. */
|
|
41
|
+
activation?: boolean;
|
|
41
42
|
}
|
|
42
43
|
/**
|
|
43
44
|
* Deterministik enjeksiyon: web plain → entry prepend; next/nuxt/... → init modülü
|
package/dist/lib/inject.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../../src/lib/inject.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"inject.d.ts","sourceRoot":"","sources":["../../src/lib/inject.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE9D,MAAM,WAAW,YAAY;IAC3B,iEAAiE;IACjE,UAAU,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,QAAQ,EAAE,MAAM,CAAC;IACjB,0FAA0F;IAC1F,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,iBAAiB,CAAC;AAE9D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AA2GD,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,gBAAgB,CAqBjF;AAQD,wBAAgB,SAAS,CACvB,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,SAAS,EACpB,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,YAAY,CAWd;AAID,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,eAAe,GAAG,QAAQ,CAAC;AAE1E,wBAAgB,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,cAAc,CAcnE;AAiBD,4DAA4D;AAC5D,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKxD;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,cAAc,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,kEAAkE;IAClE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,gBAAgB,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC7D,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,eAAe,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,wFAAwF;IACxF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,eAAe,CAgD3E"}
|
|
@@ -27,5 +27,21 @@ export interface InstallPlan {
|
|
|
27
27
|
placementHint: string;
|
|
28
28
|
framework: Framework;
|
|
29
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* ESM init snippet'ini CommonJS'e çevir (CJS projelerinde `import` çalışmaz).
|
|
32
|
+
* `import gurulu from 'x'` → `const gurulu = require('x')`;
|
|
33
|
+
* `import { a, b } from 'x'` → `const { a, b } = require('x')`. Browser/JSX
|
|
34
|
+
* snippet'leri (Next/web) bundle edildiği için dönüştürülmez — yalnız node SDK.
|
|
35
|
+
*/
|
|
36
|
+
export declare function cjsifySnippet(snippet: string): string;
|
|
37
|
+
export interface NonJsPlan {
|
|
38
|
+
language: 'python' | 'go';
|
|
39
|
+
sdk: string;
|
|
40
|
+
installCommand: string;
|
|
41
|
+
initSnippet: string;
|
|
42
|
+
envKey: string;
|
|
43
|
+
}
|
|
44
|
+
/** Non-JS dil için install komutu + init snippet (AI-wire yerine kopyala-yapıştır). */
|
|
45
|
+
export declare function buildNonJsPlan(language: 'python' | 'go', writeKey: string): NonJsPlan;
|
|
30
46
|
export declare function buildInstallPlan(detected: DetectedProject, ctx?: InstallPlanContext): InstallPlan;
|
|
31
47
|
//# sourceMappingURL=install-plan.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-plan.d.ts","sourceRoot":"","sources":["../../src/lib/install-plan.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE9E,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,cAAc,CAAC;AAExD,MAAM,WAAW,kBAAkB;IACjC,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,UAAU,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACpE,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;CACtB;AAqND,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,eAAe,EACzB,GAAG,GAAE,kBAAuB,GAC3B,WAAW,
|
|
1
|
+
{"version":3,"file":"install-plan.d.ts","sourceRoot":"","sources":["../../src/lib/install-plan.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE9E,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,cAAc,CAAC;AAExD,MAAM,WAAW,kBAAkB;IACjC,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,UAAU,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACpE,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;CACtB;AAqND;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAIrD;AAID,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,uFAAuF;AACvF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,CA0BrF;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,eAAe,EACzB,GAAG,GAAE,kBAAuB,GAC3B,WAAW,CAiBb"}
|
package/dist/lib/install-plan.js
CHANGED
|
@@ -187,19 +187,55 @@ function envKeysFor(sdk, framework) {
|
|
|
187
187
|
{ key: `${prefix}_ENDPOINT`, example: "https://ingest.gurulu.io", required: false }
|
|
188
188
|
];
|
|
189
189
|
}
|
|
190
|
+
function cjsifySnippet(snippet) {
|
|
191
|
+
return snippet.replace(/^import\s+\{([^}]+)\}\s+from\s+(['"][^'"]+['"]);?$/gm, "const {$1} = require($2);").replace(/^import\s+(\w+)\s+from\s+(['"][^'"]+['"]);?$/gm, "const $1 = require($2);");
|
|
192
|
+
}
|
|
193
|
+
function buildNonJsPlan(language, writeKey) {
|
|
194
|
+
if (language === "python") {
|
|
195
|
+
return {
|
|
196
|
+
language,
|
|
197
|
+
sdk: "gurulu (PyPI)",
|
|
198
|
+
installCommand: "pip install gurulu",
|
|
199
|
+
initSnippet: `import os
|
|
200
|
+
from gurulu import Gurulu
|
|
201
|
+
|
|
202
|
+
gurulu = Gurulu(write_key=os.environ.get("GURULU_WRITE_KEY", "${writeKey}"))
|
|
203
|
+
|
|
204
|
+
gurulu.track("purchase_completed", {"order_id": "o_123", "total": 49.99})`,
|
|
205
|
+
envKey: "GURULU_WRITE_KEY"
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
return {
|
|
209
|
+
language,
|
|
210
|
+
sdk: "gurulu.io/sdk (Go)",
|
|
211
|
+
installCommand: "go get gurulu.io/sdk",
|
|
212
|
+
initSnippet: `import gurulu "gurulu.io/sdk"
|
|
213
|
+
|
|
214
|
+
client := gurulu.New(os.Getenv("GURULU_WRITE_KEY")) // fallback: "${writeKey}"
|
|
215
|
+
|
|
216
|
+
client.Track("purchase_completed", map[string]any{"order_id": "o_123", "total": 49.99})`,
|
|
217
|
+
envKey: "GURULU_WRITE_KEY"
|
|
218
|
+
};
|
|
219
|
+
}
|
|
190
220
|
function buildInstallPlan(detected, ctx = {}) {
|
|
191
221
|
const sdk = sdkFor(detected.framework);
|
|
192
222
|
const workspaceKey = ctx.writeKey ?? "pk_xxxxxxxxxxxx";
|
|
223
|
+
let initSnippet = initSnippetFor(detected.framework, sdk, workspaceKey, ctx.autocaptureJsError);
|
|
224
|
+
if (sdk === "@gurulu/node" && detected.moduleType === "cjs") {
|
|
225
|
+
initSnippet = cjsifySnippet(initSnippet);
|
|
226
|
+
}
|
|
193
227
|
return {
|
|
194
228
|
sdk,
|
|
195
229
|
packageManager: detected.packageManager,
|
|
196
230
|
installCommand: installCmdFor(detected.packageManager, sdk),
|
|
197
|
-
initSnippet
|
|
231
|
+
initSnippet,
|
|
198
232
|
envKeys: envKeysFor(sdk, detected.framework),
|
|
199
233
|
placementHint: placementHintFor(detected.framework),
|
|
200
234
|
framework: detected.framework
|
|
201
235
|
};
|
|
202
236
|
}
|
|
203
237
|
export {
|
|
238
|
+
cjsifySnippet,
|
|
239
|
+
buildNonJsPlan,
|
|
204
240
|
buildInstallPlan
|
|
205
241
|
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface AgentNativeContext {
|
|
2
|
+
cwd: string;
|
|
3
|
+
workspaceId: string;
|
|
4
|
+
endpoint: string;
|
|
5
|
+
apiKey: string;
|
|
6
|
+
writeKey: string;
|
|
7
|
+
language: string;
|
|
8
|
+
installCommand: string;
|
|
9
|
+
snippet: string;
|
|
10
|
+
envKey: string;
|
|
11
|
+
events: string[];
|
|
12
|
+
competitors: string[];
|
|
13
|
+
}
|
|
14
|
+
/** IDE coding-agent için Markdown handoff — tek dosyada tüm bağlam + adımlar. */
|
|
15
|
+
export declare function buildImplementationDoc(ctx: AgentNativeContext): string;
|
|
16
|
+
export interface AgentNativeResult {
|
|
17
|
+
editors: string[];
|
|
18
|
+
docWritten: boolean;
|
|
19
|
+
}
|
|
20
|
+
/** Kurulu editörlere MCP kur + handoff doc yaz. Hiç editör yoksa sadece doc. */
|
|
21
|
+
export declare function setupAgentNative(ctx: AgentNativeContext): AgentNativeResult;
|
|
22
|
+
//# sourceMappingURL=agent-native.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-native.d.ts","sourceRoot":"","sources":["../../src/wizard/agent-native.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,iFAAiF;AACjF,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,kBAAkB,GAAG,MAAM,CA+CtE;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,gFAAgF;AAChF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,kBAAkB,GAAG,iBAAiB,CAuB3E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/wizard/agent.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAuC/D,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,OAAO,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,uEAAuE;IACvE,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrF;AAuBD,kEAAkE;AAClE,wBAAsB,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/wizard/agent.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAuC/D,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,OAAO,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,uEAAuE;IACvE,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrF;AAuBD,kEAAkE;AAClE,wBAAsB,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CA+C1F;AAED,sDAAsD;AACtD,wBAAgB,qBAAqB,IAAI,MAAM,CAsB9C;AAED,0EAA0E;AAC1E,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EAAE,EACtB,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,KAAK,EAAE,MAAM,EAAE,EACf,UAAU,GAAE,MAAM,EAAO,GACxB,MAAM,CA2BR"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Competitor } from '../lib/detect.ts';
|
|
2
|
+
/**
|
|
3
|
+
* Tespit edilen rakipler için wire-agent'a verilecek twin görevini üretir.
|
|
4
|
+
* Boş competitors → null (görev yok).
|
|
5
|
+
*/
|
|
6
|
+
export declare function buildAugmentTask(competitors: Competitor[]): string | null;
|
|
7
|
+
//# sourceMappingURL=augment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"augment.d.ts","sourceRoot":"","sources":["../../src/wizard/augment.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAYnD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,GAAG,IAAI,CAYzE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/wizard/context.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,sEAAsE;IACtE,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAsBD,oFAAoF;AACpF,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAWrD;
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/wizard/context.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,sEAAsE;IACtE,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAsBD,oFAAoF;AACpF,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAWrD;AAqGD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,GAAG,WAAW,CAwC9D"}
|
package/dist/wizard/plan.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { ApiClient, EventClass, EventPlan, PlannedEvent } from '../lib/api.ts';
|
|
2
2
|
import type { CodeContext } from './context.ts';
|
|
3
|
+
/** Plan hatasını sınıflandır — fallback gerekçesi kullanıcıya net gösterilsin. */
|
|
4
|
+
export declare function classifyPlanError(err: unknown): string;
|
|
3
5
|
export interface FetchPlanInput {
|
|
4
6
|
framework: string;
|
|
5
7
|
sector?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/wizard/plan.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/wizard/plan.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAWtD;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,yEAAyE;AACzE,wBAAsB,SAAS,CAC7B,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAc3B;AAUD,0EAA0E;AAC1E,wBAAgB,YAAY,CAC1B,MAAM,EAAE,YAAY,EAAE,GACrB,KAAK,CAAC;IAAE,GAAG,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,YAAY,EAAE,CAAA;CAAE,CAAC,CAKpD;AAED,4DAA4D;AAC5D,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAYlD;AAED,oFAAoF;AACpF,wBAAsB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,CAQhF"}
|
package/dist/wizard/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/wizard/run.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/wizard/run.ts"],"names":[],"mappings":"AAqCA,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4CAA4C;IAC5C,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,sFAAsF;IACtF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AA6BD,wBAAsB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAkalE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gurulu/cli",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "BUSL-1.1",
|
|
6
6
|
"publishConfig": {
|
|
@@ -55,6 +55,7 @@
|
|
|
55
55
|
"clean": "rm -rf dist .turbo"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
+
"@babel/parser": "^7.26.0",
|
|
58
59
|
"@clack/prompts": "^0.7.0",
|
|
59
60
|
"citty": "^0.1.6",
|
|
60
61
|
"open": "^10.1.0",
|