agentlaunch-templates 0.4.4 → 0.4.6
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/__tests__/gaps.test.d.ts +11 -0
- package/dist/__tests__/gaps.test.d.ts.map +1 -0
- package/dist/__tests__/gaps.test.js +196 -0
- package/dist/__tests__/gaps.test.js.map +1 -0
- package/dist/__tests__/per-template.test.d.ts +8 -0
- package/dist/__tests__/per-template.test.d.ts.map +1 -0
- package/dist/__tests__/per-template.test.js +213 -0
- package/dist/__tests__/per-template.test.js.map +1 -0
- package/dist/claude-context.d.ts.map +1 -1
- package/dist/claude-context.js +1958 -211
- package/dist/claude-context.js.map +1 -1
- package/dist/people.d.ts.map +1 -1
- package/dist/people.js +2 -1
- package/dist/people.js.map +1 -1
- package/dist/templates/chat-memory.d.ts.map +1 -1
- package/dist/templates/chat-memory.js +9 -2
- package/dist/templates/chat-memory.js.map +1 -1
- package/dist/templates/consumer-commerce.js +1 -1
- package/dist/templates/custom.d.ts.map +1 -1
- package/dist/templates/custom.js +9 -2
- package/dist/templates/custom.js.map +1 -1
- package/dist/templates/data-analyzer.d.ts.map +1 -1
- package/dist/templates/data-analyzer.js +9 -2
- package/dist/templates/data-analyzer.js.map +1 -1
- package/dist/templates/gifter.d.ts.map +1 -1
- package/dist/templates/gifter.js +9 -2
- package/dist/templates/gifter.js.map +1 -1
- package/dist/templates/price-monitor.d.ts.map +1 -1
- package/dist/templates/price-monitor.js +9 -2
- package/dist/templates/price-monitor.js.map +1 -1
- package/dist/templates/research.d.ts.map +1 -1
- package/dist/templates/research.js +9 -2
- package/dist/templates/research.js.map +1 -1
- package/dist/templates/trading-bot.d.ts.map +1 -1
- package/dist/templates/trading-bot.js +9 -2
- package/dist/templates/trading-bot.js.map +1 -1
- package/package.json +1 -1
- package/dist/__tests__/genesis-integration.test.d.ts +0 -12
- package/dist/__tests__/genesis-integration.test.d.ts.map +0 -1
- package/dist/__tests__/genesis-integration.test.js +0 -143
- package/dist/__tests__/genesis-integration.test.js.map +0 -1
- package/dist/__tests__/genesis.test.d.ts +0 -16
- package/dist/__tests__/genesis.test.d.ts.map +0 -1
- package/dist/__tests__/genesis.test.js +0 -312
- package/dist/__tests__/genesis.test.js.map +0 -1
- package/dist/templates/genesis.d.ts +0 -26
- package/dist/templates/genesis.d.ts.map +0 -1
- package/dist/templates/genesis.js +0 -1319
- package/dist/templates/genesis.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"genesis-integration.test.js","sourceRoot":"","sources":["../../src/__tests__/genesis-integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tests for Genesis template and Presets system — TST-01
|
|
3
|
-
*
|
|
4
|
-
* Verifies:
|
|
5
|
-
* - Genesis template generates valid output with basic variables
|
|
6
|
-
* - All 7 presets generate valid code via generateFromTemplate("genesis", ...)
|
|
7
|
-
* - Variable substitution replaces all expected placeholders
|
|
8
|
-
* - Generated code contains required markers and imports
|
|
9
|
-
* - Commerce layers (PaymentService, PricingTable, TierManager) present
|
|
10
|
-
* - Strict mode throws on missing required variables
|
|
11
|
-
* - Default values are used when only agent_name is provided
|
|
12
|
-
* - getTemplate("genesis") returns the template metadata
|
|
13
|
-
* - listTemplates() includes genesis and it is first in the list
|
|
14
|
-
*/
|
|
15
|
-
export {};
|
|
16
|
-
//# sourceMappingURL=genesis.test.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"genesis.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/genesis.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
|
|
@@ -1,312 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tests for Genesis template and Presets system — TST-01
|
|
3
|
-
*
|
|
4
|
-
* Verifies:
|
|
5
|
-
* - Genesis template generates valid output with basic variables
|
|
6
|
-
* - All 7 presets generate valid code via generateFromTemplate("genesis", ...)
|
|
7
|
-
* - Variable substitution replaces all expected placeholders
|
|
8
|
-
* - Generated code contains required markers and imports
|
|
9
|
-
* - Commerce layers (PaymentService, PricingTable, TierManager) present
|
|
10
|
-
* - Strict mode throws on missing required variables
|
|
11
|
-
* - Default values are used when only agent_name is provided
|
|
12
|
-
* - getTemplate("genesis") returns the template metadata
|
|
13
|
-
* - listTemplates() includes genesis and it is first in the list
|
|
14
|
-
*/
|
|
15
|
-
import { describe, it } from 'node:test';
|
|
16
|
-
import assert from 'node:assert/strict';
|
|
17
|
-
import { generateFromTemplate } from '../generator.js';
|
|
18
|
-
import { getTemplate, listTemplates } from '../registry.js';
|
|
19
|
-
import { getPreset, listPresets } from '../presets.js';
|
|
20
|
-
// ---------------------------------------------------------------------------
|
|
21
|
-
// Constants
|
|
22
|
-
// ---------------------------------------------------------------------------
|
|
23
|
-
const PRESET_NAMES = [
|
|
24
|
-
'oracle',
|
|
25
|
-
'brain',
|
|
26
|
-
'analyst',
|
|
27
|
-
'coordinator',
|
|
28
|
-
'sentinel',
|
|
29
|
-
'launcher',
|
|
30
|
-
'scout',
|
|
31
|
-
];
|
|
32
|
-
// ---------------------------------------------------------------------------
|
|
33
|
-
// Genesis template registration
|
|
34
|
-
// ---------------------------------------------------------------------------
|
|
35
|
-
describe('Genesis template — registration', () => {
|
|
36
|
-
it('getTemplate("genesis") returns a valid template object', () => {
|
|
37
|
-
const tpl = getTemplate('genesis');
|
|
38
|
-
assert.ok(tpl, 'genesis template should exist in the registry');
|
|
39
|
-
assert.equal(tpl.name, 'genesis');
|
|
40
|
-
assert.ok(tpl.description, 'template should have a description');
|
|
41
|
-
assert.ok(tpl.category, 'template should have a category');
|
|
42
|
-
assert.ok(Array.isArray(tpl.variables), 'template should have variables array');
|
|
43
|
-
assert.ok(typeof tpl.code === 'string', 'template should have code string');
|
|
44
|
-
});
|
|
45
|
-
it('listTemplates() includes genesis', () => {
|
|
46
|
-
const templates = listTemplates();
|
|
47
|
-
const names = templates.map((t) => t.name);
|
|
48
|
-
assert.ok(names.includes('genesis'), `genesis should be in list: ${names.join(', ')}`);
|
|
49
|
-
});
|
|
50
|
-
it('genesis is first in the template list', () => {
|
|
51
|
-
const templates = listTemplates();
|
|
52
|
-
assert.equal(templates[0].name, 'genesis', `First template should be genesis, got: ${templates[0].name}`);
|
|
53
|
-
});
|
|
54
|
-
});
|
|
55
|
-
// ---------------------------------------------------------------------------
|
|
56
|
-
// Basic generation
|
|
57
|
-
// ---------------------------------------------------------------------------
|
|
58
|
-
describe('Genesis template — basic generation', () => {
|
|
59
|
-
it('generates valid output with agent_name', () => {
|
|
60
|
-
const result = generateFromTemplate('genesis', {
|
|
61
|
-
agent_name: 'TestAgent',
|
|
62
|
-
});
|
|
63
|
-
assert.ok(result.code, 'should produce code');
|
|
64
|
-
assert.ok(result.readme, 'should produce readme');
|
|
65
|
-
assert.ok(result.envExample, 'should produce envExample');
|
|
66
|
-
assert.ok(result.claudeMd, 'should produce claudeMd');
|
|
67
|
-
assert.ok(result.claudeSettings, 'should produce claudeSettings');
|
|
68
|
-
assert.ok(result.agentlaunchConfig, 'should produce agentlaunchConfig');
|
|
69
|
-
});
|
|
70
|
-
it('code output is non-empty Python', () => {
|
|
71
|
-
const result = generateFromTemplate('genesis', {
|
|
72
|
-
agent_name: 'TestAgent',
|
|
73
|
-
});
|
|
74
|
-
assert.ok(result.code.length > 100, 'code should be substantial');
|
|
75
|
-
// Python import check
|
|
76
|
-
assert.ok(result.code.includes('from uagents import Agent, Context'), 'code should contain uagents import');
|
|
77
|
-
});
|
|
78
|
-
it('readme mentions the agent name', () => {
|
|
79
|
-
const result = generateFromTemplate('genesis', {
|
|
80
|
-
agent_name: 'MyGenesisBot',
|
|
81
|
-
});
|
|
82
|
-
assert.ok(result.readme.includes('MyGenesisBot'), 'readme should mention agent_name');
|
|
83
|
-
});
|
|
84
|
-
it('envExample lists required environment variables', () => {
|
|
85
|
-
const result = generateFromTemplate('genesis', {
|
|
86
|
-
agent_name: 'TestAgent',
|
|
87
|
-
});
|
|
88
|
-
assert.ok(result.envExample.includes('AGENTVERSE_API_KEY'), 'envExample should include AGENTVERSE_API_KEY');
|
|
89
|
-
});
|
|
90
|
-
it('agentlaunchConfig references the genesis template', () => {
|
|
91
|
-
const result = generateFromTemplate('genesis', {
|
|
92
|
-
agent_name: 'TestAgent',
|
|
93
|
-
});
|
|
94
|
-
const config = JSON.parse(result.agentlaunchConfig);
|
|
95
|
-
assert.equal(config.template, 'genesis', 'config should reference genesis template');
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
// ---------------------------------------------------------------------------
|
|
99
|
-
// Variable substitution
|
|
100
|
-
// ---------------------------------------------------------------------------
|
|
101
|
-
describe('Genesis template — variable substitution', () => {
|
|
102
|
-
it('replaces {{agent_name}} in the code', () => {
|
|
103
|
-
const result = generateFromTemplate('genesis', {
|
|
104
|
-
agent_name: 'AlphaOracle',
|
|
105
|
-
});
|
|
106
|
-
assert.ok(result.code.includes('AlphaOracle'), 'code should contain the agent name');
|
|
107
|
-
assert.ok(!result.code.includes('{{agent_name}}'), 'code should not contain raw {{agent_name}} placeholder');
|
|
108
|
-
});
|
|
109
|
-
it('replaces {{description}} in the code', () => {
|
|
110
|
-
const result = generateFromTemplate('genesis', {
|
|
111
|
-
agent_name: 'TestBot',
|
|
112
|
-
description: 'A custom description for testing',
|
|
113
|
-
});
|
|
114
|
-
assert.ok(result.code.includes('A custom description for testing'), 'code should contain the description');
|
|
115
|
-
});
|
|
116
|
-
it('replaces {{role}} in the code', () => {
|
|
117
|
-
const result = generateFromTemplate('genesis', {
|
|
118
|
-
agent_name: 'TestBot',
|
|
119
|
-
role: 'data-oracle',
|
|
120
|
-
});
|
|
121
|
-
assert.ok(result.code.includes('data-oracle'), 'code should contain the role');
|
|
122
|
-
});
|
|
123
|
-
it('replaces {{service_price_afet}} in the code', () => {
|
|
124
|
-
const result = generateFromTemplate('genesis', {
|
|
125
|
-
agent_name: 'TestBot',
|
|
126
|
-
service_price_afet: '5000000000000000',
|
|
127
|
-
});
|
|
128
|
-
assert.ok(result.code.includes('5000000000000000'), 'code should contain the service price');
|
|
129
|
-
});
|
|
130
|
-
});
|
|
131
|
-
// ---------------------------------------------------------------------------
|
|
132
|
-
// Required code markers
|
|
133
|
-
// ---------------------------------------------------------------------------
|
|
134
|
-
describe('Genesis template — required code markers', () => {
|
|
135
|
-
it('contains YOUR SWARM LOGIC marker', () => {
|
|
136
|
-
const result = generateFromTemplate('genesis', {
|
|
137
|
-
agent_name: 'TestBot',
|
|
138
|
-
});
|
|
139
|
-
assert.ok(result.code.includes('YOUR SWARM LOGIC'), 'code should contain YOUR SWARM LOGIC marker for customization');
|
|
140
|
-
});
|
|
141
|
-
it('contains required uagents import', () => {
|
|
142
|
-
const result = generateFromTemplate('genesis', {
|
|
143
|
-
agent_name: 'TestBot',
|
|
144
|
-
});
|
|
145
|
-
assert.ok(result.code.includes('from uagents import Agent, Context'), 'code should import Agent and Context from uagents');
|
|
146
|
-
});
|
|
147
|
-
it('contains ChatAcknowledgement handler', () => {
|
|
148
|
-
const result = generateFromTemplate('genesis', {
|
|
149
|
-
agent_name: 'TestBot',
|
|
150
|
-
});
|
|
151
|
-
assert.ok(result.code.includes('ChatAcknowledgement'), 'code should include ChatAcknowledgement handler');
|
|
152
|
-
});
|
|
153
|
-
it('contains publish_manifest=True', () => {
|
|
154
|
-
const result = generateFromTemplate('genesis', {
|
|
155
|
-
agent_name: 'TestBot',
|
|
156
|
-
});
|
|
157
|
-
assert.ok(result.code.includes('publish_manifest=True'), 'code should include publish_manifest=True in agent.include()');
|
|
158
|
-
});
|
|
159
|
-
it('uses datetime.now() not datetime.utcnow()', () => {
|
|
160
|
-
const result = generateFromTemplate('genesis', {
|
|
161
|
-
agent_name: 'TestBot',
|
|
162
|
-
});
|
|
163
|
-
// Should use datetime.now()
|
|
164
|
-
assert.ok(result.code.includes('datetime.now()'), 'code should use datetime.now()');
|
|
165
|
-
// Should NOT use the deprecated datetime.utcnow()
|
|
166
|
-
assert.ok(!result.code.includes('datetime.utcnow()'), 'code should not use deprecated datetime.utcnow()');
|
|
167
|
-
});
|
|
168
|
-
});
|
|
169
|
-
// ---------------------------------------------------------------------------
|
|
170
|
-
// Commerce layers
|
|
171
|
-
// ---------------------------------------------------------------------------
|
|
172
|
-
describe('Genesis template — commerce layers', () => {
|
|
173
|
-
it('contains PaymentService', () => {
|
|
174
|
-
const result = generateFromTemplate('genesis', {
|
|
175
|
-
agent_name: 'TestBot',
|
|
176
|
-
});
|
|
177
|
-
assert.ok(result.code.includes('PaymentService'), 'code should include PaymentService class');
|
|
178
|
-
});
|
|
179
|
-
it('contains PricingTable', () => {
|
|
180
|
-
const result = generateFromTemplate('genesis', {
|
|
181
|
-
agent_name: 'TestBot',
|
|
182
|
-
});
|
|
183
|
-
assert.ok(result.code.includes('PricingTable'), 'code should include PricingTable class');
|
|
184
|
-
});
|
|
185
|
-
it('contains TierManager', () => {
|
|
186
|
-
const result = generateFromTemplate('genesis', {
|
|
187
|
-
agent_name: 'TestBot',
|
|
188
|
-
});
|
|
189
|
-
assert.ok(result.code.includes('TierManager'), 'code should include TierManager class');
|
|
190
|
-
});
|
|
191
|
-
it('contains RevenueTracker', () => {
|
|
192
|
-
const result = generateFromTemplate('genesis', {
|
|
193
|
-
agent_name: 'TestBot',
|
|
194
|
-
});
|
|
195
|
-
assert.ok(result.code.includes('RevenueTracker'), 'code should include RevenueTracker for GDP tracking');
|
|
196
|
-
});
|
|
197
|
-
});
|
|
198
|
-
// ---------------------------------------------------------------------------
|
|
199
|
-
// Strict mode
|
|
200
|
-
// ---------------------------------------------------------------------------
|
|
201
|
-
describe('Genesis template — strict mode', () => {
|
|
202
|
-
it('throws when strict is true and agent_name is missing', () => {
|
|
203
|
-
assert.throws(() => generateFromTemplate('genesis', {}, { variables: {}, strict: true }), /agent_name/i, 'should throw mentioning agent_name');
|
|
204
|
-
});
|
|
205
|
-
it('does not throw when strict is false and agent_name is missing', () => {
|
|
206
|
-
assert.doesNotThrow(() => generateFromTemplate('genesis', {}, { variables: {}, strict: false }), 'should not throw in non-strict mode');
|
|
207
|
-
});
|
|
208
|
-
it('leaves placeholder when strict is false and required var is missing', () => {
|
|
209
|
-
const result = generateFromTemplate('genesis', {}, { variables: {}, strict: false });
|
|
210
|
-
// The unresolved placeholder should remain
|
|
211
|
-
assert.ok(result.code.includes('{{agent_name}}'), 'unresolved placeholder should remain in non-strict mode');
|
|
212
|
-
});
|
|
213
|
-
});
|
|
214
|
-
// ---------------------------------------------------------------------------
|
|
215
|
-
// Default values
|
|
216
|
-
// ---------------------------------------------------------------------------
|
|
217
|
-
describe('Genesis template — default values', () => {
|
|
218
|
-
it('uses default values when only agent_name is provided', () => {
|
|
219
|
-
const result = generateFromTemplate('genesis', {
|
|
220
|
-
agent_name: 'MinimalAgent',
|
|
221
|
-
});
|
|
222
|
-
// Code should be valid (no raw {{...}} placeholders for defaulted vars)
|
|
223
|
-
// agent_name is provided, all other vars should use defaults
|
|
224
|
-
assert.ok(result.code.includes('MinimalAgent'), 'agent_name should be substituted');
|
|
225
|
-
// The code should not have unresolved required placeholders
|
|
226
|
-
// (description may have a default, role may have a default, etc.)
|
|
227
|
-
// Check that most template variables with defaults are resolved
|
|
228
|
-
const unresolvedCount = (result.code.match(/\{\{\w+\}\}/g) || []).length;
|
|
229
|
-
// Some optional vars without defaults may remain, but required ones with defaults should be resolved
|
|
230
|
-
assert.ok(unresolvedCount === 0, `Should have no unresolved placeholders, found ${unresolvedCount}: ${(result.code.match(/\{\{\w+\}\}/g) || []).join(', ')}`);
|
|
231
|
-
});
|
|
232
|
-
});
|
|
233
|
-
// ---------------------------------------------------------------------------
|
|
234
|
-
// Presets
|
|
235
|
-
// ---------------------------------------------------------------------------
|
|
236
|
-
describe('Presets — listPresets()', () => {
|
|
237
|
-
it('returns an array of presets', () => {
|
|
238
|
-
const presets = listPresets();
|
|
239
|
-
assert.ok(Array.isArray(presets), 'listPresets() should return an array');
|
|
240
|
-
assert.ok(presets.length >= 7, `should have at least 7 presets, got ${presets.length}`);
|
|
241
|
-
});
|
|
242
|
-
it('each preset has required fields', () => {
|
|
243
|
-
const presets = listPresets();
|
|
244
|
-
for (const preset of presets) {
|
|
245
|
-
assert.ok(preset.name, `preset should have name`);
|
|
246
|
-
assert.ok(preset.displayName, `preset ${preset.name} should have displayName`);
|
|
247
|
-
assert.ok(preset.symbol, `preset ${preset.name} should have symbol`);
|
|
248
|
-
assert.ok(preset.description, `preset ${preset.name} should have description`);
|
|
249
|
-
assert.ok(preset.role, `preset ${preset.name} should have role`);
|
|
250
|
-
assert.ok(preset.variables, `preset ${preset.name} should have variables`);
|
|
251
|
-
assert.ok(typeof preset.variables === 'object', `preset ${preset.name} variables should be an object`);
|
|
252
|
-
}
|
|
253
|
-
});
|
|
254
|
-
it('includes all 7 seed agent presets', () => {
|
|
255
|
-
const presets = listPresets();
|
|
256
|
-
const presetNames = presets.map((p) => p.name);
|
|
257
|
-
for (const expected of PRESET_NAMES) {
|
|
258
|
-
assert.ok(presetNames.includes(expected), `should include "${expected}" preset. Available: ${presetNames.join(', ')}`);
|
|
259
|
-
}
|
|
260
|
-
});
|
|
261
|
-
});
|
|
262
|
-
describe('Presets — getPreset()', () => {
|
|
263
|
-
it('returns a preset for each known name', () => {
|
|
264
|
-
for (const name of PRESET_NAMES) {
|
|
265
|
-
const preset = getPreset(name);
|
|
266
|
-
assert.ok(preset, `getPreset("${name}") should return a preset`);
|
|
267
|
-
assert.equal(preset.name, name);
|
|
268
|
-
}
|
|
269
|
-
});
|
|
270
|
-
it('returns undefined for an unknown preset name', () => {
|
|
271
|
-
const preset = getPreset('nonexistent-preset-xyz');
|
|
272
|
-
assert.equal(preset, undefined, 'unknown preset should return undefined');
|
|
273
|
-
});
|
|
274
|
-
it('oracle preset has expected structure', () => {
|
|
275
|
-
const oracle = getPreset('oracle');
|
|
276
|
-
assert.ok(oracle, 'oracle preset should exist');
|
|
277
|
-
assert.ok(oracle.displayName, 'oracle should have displayName');
|
|
278
|
-
assert.ok(oracle.symbol, 'oracle should have symbol');
|
|
279
|
-
assert.ok(oracle.description, 'oracle should have description');
|
|
280
|
-
assert.ok(oracle.role, 'oracle should have role');
|
|
281
|
-
assert.ok(oracle.variables.agent_name, 'oracle variables should include agent_name');
|
|
282
|
-
});
|
|
283
|
-
});
|
|
284
|
-
// ---------------------------------------------------------------------------
|
|
285
|
-
// All presets generate valid code
|
|
286
|
-
// ---------------------------------------------------------------------------
|
|
287
|
-
describe('Presets — all presets generate valid genesis code', () => {
|
|
288
|
-
for (const presetName of PRESET_NAMES) {
|
|
289
|
-
it(`preset "${presetName}" generates valid code from genesis template`, () => {
|
|
290
|
-
const preset = getPreset(presetName);
|
|
291
|
-
assert.ok(preset, `preset "${presetName}" should exist`);
|
|
292
|
-
const result = generateFromTemplate('genesis', preset.variables);
|
|
293
|
-
// Basic validity checks
|
|
294
|
-
assert.ok(result.code, `${presetName}: should produce code`);
|
|
295
|
-
assert.ok(result.code.length > 100, `${presetName}: code should be substantial`);
|
|
296
|
-
// Should contain the preset's agent name
|
|
297
|
-
assert.ok(result.code.includes(preset.variables.agent_name), `${presetName}: code should contain the agent name "${preset.variables.agent_name}"`);
|
|
298
|
-
// Should have required imports
|
|
299
|
-
assert.ok(result.code.includes('from uagents import'), `${presetName}: code should have uagents import`);
|
|
300
|
-
// No unresolved placeholders
|
|
301
|
-
const unresolved = result.code.match(/\{\{\w+\}\}/g) || [];
|
|
302
|
-
assert.equal(unresolved.length, 0, `${presetName}: should have no unresolved placeholders, found: ${unresolved.join(', ')}`);
|
|
303
|
-
// Should produce all expected files
|
|
304
|
-
assert.ok(result.readme, `${presetName}: should produce readme`);
|
|
305
|
-
assert.ok(result.envExample, `${presetName}: should produce envExample`);
|
|
306
|
-
assert.ok(result.claudeMd, `${presetName}: should produce claudeMd`);
|
|
307
|
-
assert.ok(result.claudeSettings, `${presetName}: should produce claudeSettings`);
|
|
308
|
-
assert.ok(result.agentlaunchConfig, `${presetName}: should produce agentlaunchConfig`);
|
|
309
|
-
});
|
|
310
|
-
}
|
|
311
|
-
});
|
|
312
|
-
//# sourceMappingURL=genesis.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"genesis.test.js","sourceRoot":"","sources":["../../src/__tests__/genesis.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* genesis.ts — Genesis Network template: full commerce stack for agent swarms
|
|
3
|
-
*
|
|
4
|
-
* This is the flagship template for the AgentLaunch platform. It generates a
|
|
5
|
-
* production-ready agent with an inline commerce engine: payments, pricing,
|
|
6
|
-
* tiers, revenue tracking, self-awareness (own token metrics), and cross-holdings.
|
|
7
|
-
*
|
|
8
|
-
* Layers (bottom to top):
|
|
9
|
-
* 1. Logger — structured logging with audit trail
|
|
10
|
-
* 2. Security — rate limiting, input validation
|
|
11
|
-
* 3. Health — uptime, error rate tracking
|
|
12
|
-
* 4. Cache — in-memory TTL cache
|
|
13
|
-
* 5. Revenue/Tier — PricingTable, TierManager
|
|
14
|
-
* 6. Commerce — PaymentService, WalletManager, RevenueTracker
|
|
15
|
-
* 7. SelfAware — token price/holder awareness
|
|
16
|
-
* 8. Holdings — HoldingsManager for cross-token operations
|
|
17
|
-
* 9. SwarmBusiness — YOUR LOGIC HERE
|
|
18
|
-
*
|
|
19
|
-
* Platform constants (source of truth: deployed smart contracts):
|
|
20
|
-
* - Deploy fee: 120 FET (read dynamically, can change via multi-sig)
|
|
21
|
-
* - Graduation target: 30,000 FET -> auto DEX listing
|
|
22
|
-
* - Trading fee: 2% -> 100% to protocol treasury (NO creator fee)
|
|
23
|
-
*/
|
|
24
|
-
import type { AgentTemplate } from "../registry.js";
|
|
25
|
-
export declare const template: AgentTemplate;
|
|
26
|
-
//# sourceMappingURL=genesis.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"genesis.d.ts","sourceRoot":"","sources":["../../src/templates/genesis.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAQpD,eAAO,MAAM,QAAQ,EAAE,aA2wCtB,CAAC"}
|