@trikhub/cli 0.6.0 → 0.7.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/README.md +102 -200
- package/dist/commands/info.d.ts.map +1 -1
- package/dist/commands/info.js +35 -0
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +104 -27
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +4 -1
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/lint.d.ts.map +1 -1
- package/dist/commands/lint.js +20 -1
- package/dist/commands/lint.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +18 -1
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +2 -8
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/publish.d.ts.map +1 -1
- package/dist/commands/publish.js.map +1 -1
- package/dist/lib/registry.d.ts.map +1 -1
- package/dist/lib/registry.js +4 -14
- package/dist/lib/registry.js.map +1 -1
- package/dist/templates/python.d.ts +1 -24
- package/dist/templates/python.d.ts.map +1 -1
- package/dist/templates/python.js +2 -262
- package/dist/templates/python.js.map +1 -1
- package/dist/templates/typescript.d.ts +13 -11
- package/dist/templates/typescript.d.ts.map +1 -1
- package/dist/templates/typescript.js +219 -173
- package/dist/templates/typescript.js.map +1 -1
- package/package.json +5 -8
- package/dist/lib/validator.d.ts +0 -33
- package/dist/lib/validator.d.ts.map +0 -1
- package/dist/lib/validator.js +0 -133
- package/dist/lib/validator.js.map +0 -1
package/dist/lib/registry.js
CHANGED
|
@@ -77,16 +77,6 @@ function apiToTrikVersion(api) {
|
|
|
77
77
|
runtime: extractRuntime(api.manifest),
|
|
78
78
|
};
|
|
79
79
|
}
|
|
80
|
-
/**
|
|
81
|
-
* Build a trik path from full name (e.g., "@Molefas/article-search" -> "@Molefas/article-search")
|
|
82
|
-
* Used to construct API paths with scope and name as separate segments
|
|
83
|
-
*/
|
|
84
|
-
function trikPath(fullName) {
|
|
85
|
-
// fullName format: @scope/name
|
|
86
|
-
// We need to return: @scope/name (scope and name as path segments)
|
|
87
|
-
// The URL will be: /api/v1/triks/@scope/name
|
|
88
|
-
return fullName;
|
|
89
|
-
}
|
|
90
80
|
/**
|
|
91
81
|
* Registry client class
|
|
92
82
|
*/
|
|
@@ -188,7 +178,7 @@ export class RegistryClient {
|
|
|
188
178
|
async getTrik(fullName) {
|
|
189
179
|
try {
|
|
190
180
|
// Use path directly - routes expect /api/v1/triks/:scope/:trikName
|
|
191
|
-
const result = await this.fetch(`/api/v1/triks/${
|
|
181
|
+
const result = await this.fetch(`/api/v1/triks/${fullName}`);
|
|
192
182
|
const versions = result.versions.map((v) => apiToTrikVersion(v));
|
|
193
183
|
return apiToTrikInfo(result, versions);
|
|
194
184
|
}
|
|
@@ -240,7 +230,7 @@ export class RegistryClient {
|
|
|
240
230
|
async reportDownload(fullName, version) {
|
|
241
231
|
try {
|
|
242
232
|
// Use path directly - routes expect /api/v1/triks/:scope/:trikName/download
|
|
243
|
-
await fetch(`${this.baseUrl}/api/v1/triks/${
|
|
233
|
+
await fetch(`${this.baseUrl}/api/v1/triks/${fullName}/download`, {
|
|
244
234
|
method: 'POST',
|
|
245
235
|
headers: { 'Content-Type': 'application/json' },
|
|
246
236
|
body: JSON.stringify({ version }),
|
|
@@ -346,7 +336,7 @@ export class RegistryClient {
|
|
|
346
336
|
throw new Error('Not authenticated. Please run `trik login`');
|
|
347
337
|
}
|
|
348
338
|
// Use path directly - routes expect /api/v1/triks/:scope/:trikName/versions
|
|
349
|
-
const result = await this.fetch(`/api/v1/triks/${
|
|
339
|
+
const result = await this.fetch(`/api/v1/triks/${fullName}/versions`, {
|
|
350
340
|
method: 'POST',
|
|
351
341
|
body: JSON.stringify(data),
|
|
352
342
|
});
|
|
@@ -359,7 +349,7 @@ export class RegistryClient {
|
|
|
359
349
|
if (!this.authToken) {
|
|
360
350
|
throw new Error('Not authenticated. Please run `trik login`');
|
|
361
351
|
}
|
|
362
|
-
await this.fetch(`/api/v1/triks/${
|
|
352
|
+
await this.fetch(`/api/v1/triks/${fullName}`, {
|
|
363
353
|
method: 'DELETE',
|
|
364
354
|
});
|
|
365
355
|
}
|
package/dist/lib/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/lib/registry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;GAEG;AACH,MAAM,aAAa,GAAG;IACpB,UAAU,EAAE,yBAAyB;IACrC,WAAW,EAAE,uBAAuB;CAC5B,CAAC;AAEX;;;GAGG;AACH,SAAS,cAAc;IACrB,2DAA2D;IAC3D,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjC,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACtC,CAAC;IAED,wCAAwC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,CAAC;IACrD,OAAO,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC;AACtE,CAAC;AA0CD;;GAEG;AACH,SAAS,aAAa,CAAC,GAAgB,EAAE,WAA0B,EAAE;IACnE,OAAO;QACL,QAAQ,EAAE,GAAG,CAAC,IAAI;QAClB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,IAAI,EAAE,GAAG,CAAC,SAAS;QACnB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,UAAU,EAAE,GAAG,CAAC,UAAoC;QACpD,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,SAAS,EAAE,GAAG,CAAC,cAAc;QAC7B,KAAK,EAAE,GAAG,CAAC,WAAW;QACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,cAAc,EAAE,sBAAsB,GAAG,CAAC,UAAU,cAAc;QAClE,QAAQ;QACR,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,SAAS,EAAE,GAAG,CAAC,SAAS;KACzB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,QAAiB;IACvC,IACE,QAAQ;QACR,OAAO,QAAQ,KAAK,QAAQ;QAC5B,OAAO,IAAI,QAAQ;QACnB,QAAQ,CAAC,KAAK;QACd,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ;QAClC,SAAS,IAAI,QAAQ,CAAC,KAAK,EAC3B,CAAC;QACD,MAAM,OAAO,GAAI,QAAQ,CAAC,KAA8B,CAAC,OAAO,CAAC;QACjE,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC/C,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IACD,gEAAgE;IAChE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,GAAmB;IAC3C,OAAO;QACL,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC;KACtC,CAAC;AACJ,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/lib/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* Python Trik Template Generator
|
|
3
|
-
*
|
|
4
|
-
* Generates all files needed for a Python trik project.
|
|
5
|
-
*/
|
|
6
|
-
import { TrikCategory } from '../types.js';
|
|
7
|
-
export interface PyTemplateConfig {
|
|
8
|
-
name: string;
|
|
9
|
-
displayName: string;
|
|
10
|
-
description: string;
|
|
11
|
-
authorName: string;
|
|
12
|
-
authorGithub: string;
|
|
13
|
-
category: TrikCategory;
|
|
14
|
-
enableStorage: boolean;
|
|
15
|
-
enableConfig: boolean;
|
|
16
|
-
}
|
|
17
|
-
export interface GeneratedFile {
|
|
18
|
-
path: string;
|
|
19
|
-
content: string;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Generate all files for a Python trik project
|
|
23
|
-
*/
|
|
24
|
-
export declare function generatePythonProject(config: PyTemplateConfig): GeneratedFile[];
|
|
1
|
+
export {};
|
|
25
2
|
//# sourceMappingURL=python.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../src/templates/python.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../src/templates/python.ts"],"names":[],"mappings":""}
|
package/dist/templates/python.js
CHANGED
|
@@ -1,263 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
*
|
|
4
|
-
* Generates all files needed for a Python trik project.
|
|
5
|
-
*/
|
|
6
|
-
/**
|
|
7
|
-
* Convert trik name to Python package name (dashes to underscores)
|
|
8
|
-
*/
|
|
9
|
-
function toPackageName(name) {
|
|
10
|
-
return name.replace(/-/g, '_');
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Generate all files for a Python trik project
|
|
14
|
-
*/
|
|
15
|
-
export function generatePythonProject(config) {
|
|
16
|
-
const files = [];
|
|
17
|
-
const pkgName = toPackageName(config.name);
|
|
18
|
-
files.push({ path: 'trikhub.json', content: generateTrikhubJson(config) });
|
|
19
|
-
files.push({ path: 'pyproject.toml', content: generatePyproject(config, pkgName) });
|
|
20
|
-
files.push({ path: 'test.py', content: generateTestPy(pkgName) });
|
|
21
|
-
files.push({ path: 'README.md', content: generateReadme(config) });
|
|
22
|
-
files.push({ path: '.gitignore', content: generateGitignore() });
|
|
23
|
-
files.push({ path: `${pkgName}/__init__.py`, content: generateInitPy() });
|
|
24
|
-
files.push({ path: `${pkgName}/manifest.json`, content: generateManifest(config) });
|
|
25
|
-
files.push({ path: `${pkgName}/graph.py`, content: generateGraphPy(config) });
|
|
26
|
-
return files;
|
|
27
|
-
}
|
|
28
|
-
function generateManifest(config) {
|
|
29
|
-
const manifest = {
|
|
30
|
-
schemaVersion: 1,
|
|
31
|
-
id: config.name,
|
|
32
|
-
name: config.displayName,
|
|
33
|
-
description: config.description,
|
|
34
|
-
version: '0.1.0',
|
|
35
|
-
actions: {
|
|
36
|
-
hello: {
|
|
37
|
-
description: 'Say hello to someone',
|
|
38
|
-
inputSchema: {
|
|
39
|
-
type: 'object',
|
|
40
|
-
properties: {
|
|
41
|
-
name: { type: 'string', description: 'Name to greet' },
|
|
42
|
-
},
|
|
43
|
-
required: ['name'],
|
|
44
|
-
},
|
|
45
|
-
responseMode: 'template',
|
|
46
|
-
agentDataSchema: {
|
|
47
|
-
type: 'object',
|
|
48
|
-
properties: {
|
|
49
|
-
template: { type: 'string', enum: ['success'] },
|
|
50
|
-
greeting: { type: 'string', maxLength: 200, pattern: '^.{1,200}$' },
|
|
51
|
-
},
|
|
52
|
-
required: ['template', 'greeting'],
|
|
53
|
-
},
|
|
54
|
-
responseTemplates: {
|
|
55
|
-
success: { text: '{{greeting}}' },
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
},
|
|
59
|
-
capabilities: {
|
|
60
|
-
tools: [],
|
|
61
|
-
},
|
|
62
|
-
limits: {
|
|
63
|
-
maxExecutionTimeMs: 5000,
|
|
64
|
-
},
|
|
65
|
-
entry: {
|
|
66
|
-
module: './graph.py',
|
|
67
|
-
export: 'graph',
|
|
68
|
-
runtime: 'python',
|
|
69
|
-
},
|
|
70
|
-
};
|
|
71
|
-
// Add storage capability if enabled
|
|
72
|
-
if (config.enableStorage) {
|
|
73
|
-
manifest.capabilities.storage = {
|
|
74
|
-
enabled: true,
|
|
75
|
-
maxSizeBytes: 1048576,
|
|
76
|
-
persistent: true,
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
// Add config if enabled
|
|
80
|
-
if (config.enableConfig) {
|
|
81
|
-
manifest.config = {
|
|
82
|
-
required: [
|
|
83
|
-
{ key: 'API_KEY', description: 'Your API key' },
|
|
84
|
-
],
|
|
85
|
-
optional: [],
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
return JSON.stringify(manifest, null, 2) + '\n';
|
|
89
|
-
}
|
|
90
|
-
function generateTrikhubJson(config) {
|
|
91
|
-
const trikhub = {
|
|
92
|
-
displayName: config.displayName,
|
|
93
|
-
shortDescription: config.description,
|
|
94
|
-
categories: [config.category],
|
|
95
|
-
keywords: [config.name],
|
|
96
|
-
author: {
|
|
97
|
-
name: config.authorName,
|
|
98
|
-
github: config.authorGithub,
|
|
99
|
-
},
|
|
100
|
-
repository: `https://github.com/${config.authorGithub}/${config.name}`,
|
|
101
|
-
};
|
|
102
|
-
return JSON.stringify(trikhub, null, 2) + '\n';
|
|
103
|
-
}
|
|
104
|
-
function generatePyproject(config, pkgName) {
|
|
105
|
-
return `[build-system]
|
|
106
|
-
requires = ["hatchling"]
|
|
107
|
-
build-backend = "hatchling.build"
|
|
108
|
-
|
|
109
|
-
[project]
|
|
110
|
-
name = "${config.name}"
|
|
111
|
-
version = "0.1.0"
|
|
112
|
-
description = "${config.description}"
|
|
113
|
-
readme = "README.md"
|
|
114
|
-
requires-python = ">=3.10"
|
|
115
|
-
license = {text = "MIT"}
|
|
116
|
-
authors = [
|
|
117
|
-
{ name = "${config.authorName}" }
|
|
118
|
-
]
|
|
119
|
-
dependencies = []
|
|
120
|
-
|
|
121
|
-
[project.urls]
|
|
122
|
-
Repository = "https://github.com/${config.authorGithub}/${config.name}"
|
|
123
|
-
|
|
124
|
-
[tool.hatch.build.targets.wheel]
|
|
125
|
-
packages = ["${pkgName}"]
|
|
126
|
-
|
|
127
|
-
[tool.hatch.build.targets.sdist]
|
|
128
|
-
include = [
|
|
129
|
-
"${pkgName}/**",
|
|
130
|
-
"README.md",
|
|
131
|
-
]
|
|
132
|
-
`;
|
|
133
|
-
}
|
|
134
|
-
function generateGraphPy(config) {
|
|
135
|
-
const storageType = config.enableStorage ? ', storage: dict | None = None' : '';
|
|
136
|
-
const configType = config.enableConfig ? ', config: dict | None = None' : '';
|
|
137
|
-
return `"""
|
|
138
|
-
${config.displayName}
|
|
139
|
-
|
|
140
|
-
${config.description}
|
|
141
|
-
"""
|
|
142
|
-
|
|
143
|
-
from __future__ import annotations
|
|
144
|
-
|
|
145
|
-
from typing import Any
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
class ${toPascalCase(config.name)}Graph:
|
|
149
|
-
"""Main graph for the ${config.displayName} trik."""
|
|
150
|
-
|
|
151
|
-
async def invoke(self, input_data: dict[str, Any]) -> dict[str, Any]:
|
|
152
|
-
"""
|
|
153
|
-
Main entry point called by the TrikHub gateway.
|
|
154
|
-
|
|
155
|
-
Args:
|
|
156
|
-
input_data: Contains action, input${config.enableStorage ? ', storage' : ''}${config.enableConfig ? ', config' : ''}
|
|
157
|
-
|
|
158
|
-
Returns:
|
|
159
|
-
Response with responseMode and agentData/userContent
|
|
160
|
-
"""
|
|
161
|
-
action = input_data.get("action")
|
|
162
|
-
action_input = input_data.get("input", {})${config.enableStorage ? '\n storage = input_data.get("storage")' : ''}${config.enableConfig ? '\n config = input_data.get("config")' : ''}
|
|
163
|
-
|
|
164
|
-
if action == "hello":
|
|
165
|
-
name = action_input.get("name", "World")
|
|
166
|
-
return {
|
|
167
|
-
"responseMode": "template",
|
|
168
|
-
"agentData": {
|
|
169
|
-
"template": "success",
|
|
170
|
-
"greeting": f"Hello, {name}!",
|
|
171
|
-
},
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
return {
|
|
175
|
-
"responseMode": "template",
|
|
176
|
-
"agentData": {
|
|
177
|
-
"template": "error",
|
|
178
|
-
"message": f"Unknown action: {action}",
|
|
179
|
-
},
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
# Export the graph instance
|
|
184
|
-
graph = ${toPascalCase(config.name)}Graph()
|
|
185
|
-
`;
|
|
186
|
-
}
|
|
187
|
-
function generateInitPy() {
|
|
188
|
-
return `"""${''} Package init """
|
|
189
|
-
`;
|
|
190
|
-
}
|
|
191
|
-
function generateTestPy(pkgName) {
|
|
192
|
-
return `"""
|
|
193
|
-
Local test script
|
|
194
|
-
|
|
195
|
-
Run with: python test.py
|
|
196
|
-
"""
|
|
197
|
-
|
|
198
|
-
import asyncio
|
|
199
|
-
from ${pkgName}.graph import graph
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
async def main():
|
|
203
|
-
result = await graph.invoke({
|
|
204
|
-
"action": "hello",
|
|
205
|
-
"input": {"name": "World"},
|
|
206
|
-
})
|
|
207
|
-
print(result)
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
if __name__ == "__main__":
|
|
211
|
-
asyncio.run(main())
|
|
212
|
-
`;
|
|
213
|
-
}
|
|
214
|
-
function generateReadme(config) {
|
|
215
|
-
return `# ${config.displayName}
|
|
216
|
-
|
|
217
|
-
${config.description}
|
|
218
|
-
|
|
219
|
-
## Development
|
|
220
|
-
|
|
221
|
-
\`\`\`bash
|
|
222
|
-
python test.py
|
|
223
|
-
\`\`\`
|
|
224
|
-
|
|
225
|
-
## Actions
|
|
226
|
-
|
|
227
|
-
### hello
|
|
228
|
-
|
|
229
|
-
Say hello to someone.
|
|
230
|
-
|
|
231
|
-
**Input:**
|
|
232
|
-
- \`name\` (string, required): Name to greet
|
|
233
|
-
|
|
234
|
-
## Publishing
|
|
235
|
-
|
|
236
|
-
\`\`\`bash
|
|
237
|
-
trik publish
|
|
238
|
-
\`\`\`
|
|
239
|
-
`;
|
|
240
|
-
}
|
|
241
|
-
function generateGitignore() {
|
|
242
|
-
return `__pycache__/
|
|
243
|
-
*.py[cod]
|
|
244
|
-
*$py.class
|
|
245
|
-
*.so
|
|
246
|
-
.Python
|
|
247
|
-
build/
|
|
248
|
-
dist/
|
|
249
|
-
*.egg-info/
|
|
250
|
-
.eggs/
|
|
251
|
-
*.egg
|
|
252
|
-
.venv/
|
|
253
|
-
venv/
|
|
254
|
-
.DS_Store
|
|
255
|
-
`;
|
|
256
|
-
}
|
|
257
|
-
function toPascalCase(str) {
|
|
258
|
-
return str
|
|
259
|
-
.split('-')
|
|
260
|
-
.map((part) => part.charAt(0).toUpperCase() + part.slice(1))
|
|
261
|
-
.join('');
|
|
262
|
-
}
|
|
1
|
+
export {};
|
|
2
|
+
// Stub — Python scaffold template not yet implemented
|
|
263
3
|
//# sourceMappingURL=python.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"python.js","sourceRoot":"","sources":["../../src/templates/python.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"python.js","sourceRoot":"","sources":["../../src/templates/python.ts"],"names":[],"mappings":";AAAA,sDAAsD"}
|
|
@@ -1,25 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* TypeScript
|
|
2
|
+
* v2 TypeScript scaffold template.
|
|
3
3
|
*
|
|
4
|
-
* Generates
|
|
4
|
+
* Generates a complete v2 trik project structure using the
|
|
5
|
+
* agent-based handoff architecture with wrapAgent() from @trikhub/sdk.
|
|
5
6
|
*/
|
|
6
|
-
|
|
7
|
-
export interface TsTemplateConfig {
|
|
7
|
+
export interface InitConfig {
|
|
8
8
|
name: string;
|
|
9
9
|
displayName: string;
|
|
10
10
|
description: string;
|
|
11
11
|
authorName: string;
|
|
12
12
|
authorGithub: string;
|
|
13
|
-
category:
|
|
13
|
+
category: string;
|
|
14
14
|
enableStorage: boolean;
|
|
15
15
|
enableConfig: boolean;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
agentMode: 'conversational' | 'tool';
|
|
17
|
+
handoffDescription: string;
|
|
18
|
+
domainTags: string[];
|
|
19
|
+
toolNames: string[];
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
22
|
-
* Generate
|
|
22
|
+
* Generate a complete v2 TypeScript trik project.
|
|
23
|
+
*
|
|
24
|
+
* @returns Map of { relativePath: fileContent } for all project files.
|
|
23
25
|
*/
|
|
24
|
-
export declare function generateTypescriptProject(config:
|
|
26
|
+
export declare function generateTypescriptProject(config: InitConfig): Record<string, string>;
|
|
25
27
|
//# sourceMappingURL=typescript.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../src/templates/typescript.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"typescript.d.ts","sourceRoot":"","sources":["../../src/templates/typescript.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IAEtB,SAAS,EAAE,gBAAgB,GAAG,MAAM,CAAC;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAiUD;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAsBpF"}
|