@clien-ai/mcp 0.1.10 → 0.1.11
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 +3 -3
- package/dist/tools/personas.js +158 -4
- package/dist/tools/personas.js.map +1 -1
- package/dist/tools/registry.js +19 -3
- package/dist/tools/registry.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -72,9 +72,9 @@ the top 3 threats", etc.
|
|
|
72
72
|
|
|
73
73
|
`clien_research` is the hero — the recommended default for validating an idea
|
|
74
74
|
end to end. Alongside it, the server exposes granular primitives (`create_persona`,
|
|
75
|
-
`
|
|
76
|
-
`
|
|
77
|
-
checks.
|
|
75
|
+
`generate_persona`, `interview_persona`, `scan_competitors`, `search_forums`,
|
|
76
|
+
`list_projects` / `create_project`, `list_reports` / `get_report`,
|
|
77
|
+
`clien_research_status`) you can sequence for targeted, cheaper checks.
|
|
78
78
|
|
|
79
79
|
See [`docs/recipes/`](../docs/recipes/) for the supported compositions:
|
|
80
80
|
|
package/dist/tools/personas.js
CHANGED
|
@@ -17,10 +17,11 @@
|
|
|
17
17
|
* (FUL-21). `ephemeral: true` sets `include_in_insights=false` so a
|
|
18
18
|
* scratch persona is excluded from the project's aggregate insights.
|
|
19
19
|
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
20
|
+
* Companion tool: `generate_persona` (FUL-67) — the AI generate-from-brief path
|
|
21
|
+
* over `POST /api/personas/ai-generate`. It debits one `generate_persona` credit
|
|
22
|
+
* (FUL-20 cost table) and persists via the same `createPersonaRecord` path, so
|
|
23
|
+
* `source='mcp'` + `ephemeral` behave identically to the explicit create here.
|
|
24
|
+
* Enrich-existing-persona is deferred (folds into a future `update_persona`).
|
|
24
25
|
*
|
|
25
26
|
* Error mapping mirrors `projects.ts`: 401 → invalidate the cached session and
|
|
26
27
|
* surface a re-auth message; 404 → the project isn't owned by the caller;
|
|
@@ -189,4 +190,157 @@ export async function createPersona(input, deps) {
|
|
|
189
190
|
_meta: { persona },
|
|
190
191
|
};
|
|
191
192
|
}
|
|
193
|
+
// ---------------------------------------------------------------------------
|
|
194
|
+
// generate_persona (FUL-67) — AI generate-from-brief + per-tool credit debit
|
|
195
|
+
// ---------------------------------------------------------------------------
|
|
196
|
+
const GENERATE_PERSONA_FETCH_TIMEOUT_MS = 60_000;
|
|
197
|
+
// Local cap, kept in sync with GeneratePersonaSchema in
|
|
198
|
+
// app/api/personas/ai-generate/route.ts. The server re-validates regardless.
|
|
199
|
+
const ADDITIONAL_CONTEXT_MAX = 2000;
|
|
200
|
+
export const GeneratePersonaInputSchema = z.object({
|
|
201
|
+
projectId: z
|
|
202
|
+
.string()
|
|
203
|
+
.uuid()
|
|
204
|
+
.describe('UUID of the project this persona belongs to. Get it from `list_projects` ' +
|
|
205
|
+
'(or `create_project`). Rejected with a 404 if you do not own the project.'),
|
|
206
|
+
name: z
|
|
207
|
+
.string()
|
|
208
|
+
.trim()
|
|
209
|
+
.min(1, 'name must be non-empty')
|
|
210
|
+
.max(NAME_MAX, `name too long (max ${NAME_MAX} chars)`)
|
|
211
|
+
.describe('The persona\'s name (e.g. "Priya, the pragmatic PM"). Required.'),
|
|
212
|
+
role: z
|
|
213
|
+
.string()
|
|
214
|
+
.trim()
|
|
215
|
+
.min(1, 'role must be non-empty')
|
|
216
|
+
.max(ROLE_MAX, `role too long (max ${ROLE_MAX} chars)`)
|
|
217
|
+
.describe('The persona\'s job title or role (e.g. "Senior Product Manager"). Required.'),
|
|
218
|
+
company: z
|
|
219
|
+
.string()
|
|
220
|
+
.max(COMPANY_MAX, `company too long (max ${COMPANY_MAX} chars)`)
|
|
221
|
+
.optional()
|
|
222
|
+
.describe('Optional company/organisation. When omitted the AI invents a realistic one from the role.'),
|
|
223
|
+
industry: z
|
|
224
|
+
.string()
|
|
225
|
+
.max(INDUSTRY_MAX, `industry too long (max ${INDUSTRY_MAX} chars)`)
|
|
226
|
+
.optional()
|
|
227
|
+
.describe('Optional industry (e.g. "Fintech"). When omitted the AI infers one.'),
|
|
228
|
+
companySize: z
|
|
229
|
+
.string()
|
|
230
|
+
.max(COMPANY_SIZE_MAX, `companySize too long (max ${COMPANY_SIZE_MAX} chars)`)
|
|
231
|
+
.optional()
|
|
232
|
+
.describe('Optional company size (e.g. "11-50"). When omitted the AI infers one.'),
|
|
233
|
+
additionalContext: z
|
|
234
|
+
.string()
|
|
235
|
+
.max(ADDITIONAL_CONTEXT_MAX, `additionalContext too long (max ${ADDITIONAL_CONTEXT_MAX} chars)`)
|
|
236
|
+
.optional()
|
|
237
|
+
.describe('Optional free-form brief to steer generation — goals, constraints, the product being ' +
|
|
238
|
+
'validated, or anything that should shape the persona\'s background and pain points.'),
|
|
239
|
+
ephemeral: z
|
|
240
|
+
.boolean()
|
|
241
|
+
.optional()
|
|
242
|
+
.default(false)
|
|
243
|
+
.describe('Set true for a scratch/throwaway persona that should NOT count toward the project\'s ' +
|
|
244
|
+
'aggregate insights (sets include_in_insights=false).'),
|
|
245
|
+
});
|
|
246
|
+
/**
|
|
247
|
+
* Map a non-ok POST /api/personas/ai-generate response to a PersonaToolError.
|
|
248
|
+
* The 402 branch mirrors scoped-research.ts's handleScopedStartError so an
|
|
249
|
+
* insufficient-credit stop surfaces balance/required/buy-url guidance.
|
|
250
|
+
*/
|
|
251
|
+
async function throwForGenerateResponse(response, deps) {
|
|
252
|
+
const text = await response.text().catch(() => '');
|
|
253
|
+
let parsed = null;
|
|
254
|
+
try {
|
|
255
|
+
parsed = JSON.parse(text);
|
|
256
|
+
}
|
|
257
|
+
catch {
|
|
258
|
+
// non-JSON body — fall back to the raw text below.
|
|
259
|
+
}
|
|
260
|
+
const status = response.status;
|
|
261
|
+
if (status === 402 || parsed?.code === 'INSUFFICIENT_CREDITS') {
|
|
262
|
+
const balance = typeof parsed?.balance === 'number' ? parsed.balance : null;
|
|
263
|
+
const required = typeof parsed?.required === 'number' ? parsed.required : null;
|
|
264
|
+
const buyUrl = typeof parsed?.buy_url === 'string' && parsed.buy_url.length > 0
|
|
265
|
+
? parsed.buy_url
|
|
266
|
+
: 'https://clien.ai/app/billing';
|
|
267
|
+
if (balance !== null && required !== null) {
|
|
268
|
+
const needed = Math.max(required - balance, 1);
|
|
269
|
+
throw new PersonaToolError(`Insufficient credits to generate a persona — you have ${balance}, this needs ${required} ` +
|
|
270
|
+
`(${needed} more). Buy credits at ${buyUrl}.`);
|
|
271
|
+
}
|
|
272
|
+
throw new PersonaToolError(`Insufficient credits to generate a persona. Buy more at ${buyUrl}.`);
|
|
273
|
+
}
|
|
274
|
+
const category = categorizeFetchError(status);
|
|
275
|
+
if (category === 'auth') {
|
|
276
|
+
if (response.refreshError?.kind !== 'transient')
|
|
277
|
+
deps.invalidateSession?.();
|
|
278
|
+
throw new PersonaToolError('Session expired. Re-run any Clien.ai tool to re-authenticate, then try again.');
|
|
279
|
+
}
|
|
280
|
+
if (status === 404) {
|
|
281
|
+
throw new PersonaToolError('Could not generate persona — project not found, or you don\'t own it. ' +
|
|
282
|
+
'Call list_projects to confirm the projectId.');
|
|
283
|
+
}
|
|
284
|
+
const detail = parsed?.error ? truncate(parsed.error, 200) : truncate(text, 200);
|
|
285
|
+
if (status === 400) {
|
|
286
|
+
throw new PersonaToolError(`Could not generate persona — ${detail}`);
|
|
287
|
+
}
|
|
288
|
+
if (status === 502 || status === 503) {
|
|
289
|
+
throw new PersonaToolError(`Persona generation is temporarily unavailable (HTTP ${status})${detail ? `: ${detail}` : ''}. ` +
|
|
290
|
+
'Try again in a moment — no credits were charged.');
|
|
291
|
+
}
|
|
292
|
+
throw new PersonaToolError(`Failed to generate persona (HTTP ${status}): ${detail}`);
|
|
293
|
+
}
|
|
294
|
+
export async function generatePersona(input, deps) {
|
|
295
|
+
const parsed = GeneratePersonaInputSchema.safeParse(input);
|
|
296
|
+
if (!parsed.success) {
|
|
297
|
+
throw new PersonaToolError(`Invalid input — ${formatZodError(parsed.error)}`);
|
|
298
|
+
}
|
|
299
|
+
const { projectId, name, role, company, industry, companySize, additionalContext, ephemeral } = parsed.data;
|
|
300
|
+
const ctx = makeCtx(deps);
|
|
301
|
+
const body = { projectId, name, role, ephemeral };
|
|
302
|
+
if (company !== undefined)
|
|
303
|
+
body.company = company;
|
|
304
|
+
if (industry !== undefined)
|
|
305
|
+
body.industry = industry;
|
|
306
|
+
if (companySize !== undefined)
|
|
307
|
+
body.companySize = companySize;
|
|
308
|
+
if (additionalContext !== undefined)
|
|
309
|
+
body.additionalContext = additionalContext;
|
|
310
|
+
let response;
|
|
311
|
+
try {
|
|
312
|
+
response = await apiCall(ctx, 'POST', '/api/personas/ai-generate', {
|
|
313
|
+
body,
|
|
314
|
+
timeoutMs: GENERATE_PERSONA_FETCH_TIMEOUT_MS,
|
|
315
|
+
});
|
|
316
|
+
}
|
|
317
|
+
catch (err) {
|
|
318
|
+
const e = err;
|
|
319
|
+
if (e.name === 'AbortError' || e.name === 'TimeoutError') {
|
|
320
|
+
throw new PersonaToolError(`Generating the persona timed out after ${GENERATE_PERSONA_FETCH_TIMEOUT_MS / 1000}s. ` +
|
|
321
|
+
'It may or may not have been created — call list_projects / check the project before retrying.');
|
|
322
|
+
}
|
|
323
|
+
throw err;
|
|
324
|
+
}
|
|
325
|
+
if (!response.ok)
|
|
326
|
+
await throwForGenerateResponse(response, deps);
|
|
327
|
+
const json = (await response.json().catch(() => null));
|
|
328
|
+
const persona = json?.persona;
|
|
329
|
+
if (!persona?.id) {
|
|
330
|
+
throw new PersonaToolError('Persona generation returned no persona id; the operation may not have succeeded.');
|
|
331
|
+
}
|
|
332
|
+
const insightsNote = ephemeral
|
|
333
|
+
? ' Marked ephemeral — excluded from project insights.'
|
|
334
|
+
: '';
|
|
335
|
+
return {
|
|
336
|
+
content: [
|
|
337
|
+
{
|
|
338
|
+
type: 'text',
|
|
339
|
+
text: `Generated persona "${persona.name ?? name}" (${persona.role ?? role}, id: ${persona.id}) ` +
|
|
340
|
+
`in project ${projectId} — debited 1 credit.${insightsNote}`,
|
|
341
|
+
},
|
|
342
|
+
],
|
|
343
|
+
_meta: { persona },
|
|
344
|
+
};
|
|
345
|
+
}
|
|
192
346
|
//# sourceMappingURL=personas.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"personas.js","sourceRoot":"","sources":["../../src/tools/personas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"personas.js","sourceRoot":"","sources":["../../src/tools/personas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EACL,OAAO,EACP,oBAAoB,EACpB,QAAQ,GAGT,MAAM,eAAe,CAAA;AAEtB,MAAM,yBAAyB,GAAG,MAAM,CAAA;AAExC,8EAA8E;AAC9E,kFAAkF;AAClF,gFAAgF;AAChF,+EAA+E;AAC/E,+BAA+B;AAC/B,MAAM,QAAQ,GAAG,GAAG,CAAA;AACpB,MAAM,QAAQ,GAAG,GAAG,CAAA;AACpB,MAAM,WAAW,GAAG,GAAG,CAAA;AACvB,MAAM,eAAe,GAAG,IAAI,CAAA;AAC5B,MAAM,gBAAgB,GAAG,GAAG,CAAA;AAC5B,MAAM,YAAY,GAAG,GAAG,CAAA;AACxB,MAAM,YAAY,GAAG,GAAG,CAAA;AAExB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,CACP,2EAA2E;QACzE,4EAA4E;QAC5E,mEAAmE,CACtE;IACH,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;SAChC,GAAG,CAAC,QAAQ,EAAE,sBAAsB,QAAQ,SAAS,CAAC;SACtD,QAAQ,CACP,iFAAiF,CAClF;IACH,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;SAChC,GAAG,CAAC,QAAQ,EAAE,sBAAsB,QAAQ,SAAS,CAAC;SACtD,QAAQ,CACP,6EAA6E,CAC9E;IACH,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,CAAC,WAAW,EAAE,yBAAyB,WAAW,SAAS,CAAC;SAC/D,QAAQ,EAAE;SACV,QAAQ,CAAC,wDAAwD,CAAC;IACrE,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,eAAe,EAAE,6BAA6B,eAAe,SAAS,CAAC;SAC3E,QAAQ,EAAE;SACV,QAAQ,CACP,yEAAyE;QACvE,iFAAiF,CACpF;IACH,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,gBAAgB,EAAE,6BAA6B,gBAAgB,SAAS,CAAC;SAC7E,QAAQ,EAAE;SACV,QAAQ,CAAC,qDAAqD,CAAC;IAClE,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,YAAY,EAAE,0BAA0B,YAAY,SAAS,CAAC;SAClE,QAAQ,EAAE;SACV,QAAQ,CAAC,mDAAmD,CAAC;IAChE,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,YAAY,EAAE,0BAA0B,YAAY,SAAS,CAAC;SAClE,QAAQ,EAAE;SACV,QAAQ,CAAC,6CAA6C,CAAC;IAC1D,SAAS,EAAE,CAAC;SACT,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,4EAA4E;QAC1E,8EAA8E;QAC9E,gFAAgF,CACnF;CACJ,CAAC,CAAA;AA+BF,MAAM,OAAO,gBAAiB,SAAQ,SAAS;CAAG;AAElD,SAAS,cAAc,CAAC,KAAiB;IACvC,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC3F,CAAC;AAED,SAAS,OAAO,CAAC,IAAqB;IACpC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK,EAAE,CAAA;AACnF,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,gBAAgB,CAC7B,QAAqB,EACrB,IAAqB,EACrB,MAAc;IAEd,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACtD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,IAAI,QAAQ,CAAC,YAAY,EAAE,IAAI,KAAK,WAAW;YAAE,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAA;QAC3E,MAAM,IAAI,gBAAgB,CACxB,+EAA+E,CAChF,CAAA;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC5B,MAAM,IAAI,gBAAgB,CACxB,aAAa,MAAM,6CAA6C;YAC9D,8CAA8C,CACjD,CAAA;IACH,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;IAClD,IAAI,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAsC,CAAA;QACpE,IAAI,MAAM,EAAE,KAAK;YAAE,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;IACxF,CAAC;IAAC,MAAM,CAAC;QACP,sDAAsD;IACxD,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC5B,MAAM,IAAI,gBAAgB,CAAC,aAAa,MAAM,MAAM,MAAM,EAAE,CAAC,CAAA;IAC/D,CAAC;IACD,MAAM,IAAI,gBAAgB,CAAC,aAAa,MAAM,UAAU,QAAQ,CAAC,MAAM,MAAM,MAAM,EAAE,CAAC,CAAA;AACxF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,KAAc,EACd,IAAqB;IAErB,MAAM,MAAM,GAAG,wBAAwB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IACxD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/E,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,GAC/F,MAAM,CAAC,IAAI,CAAA;IACb,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEzB,MAAM,IAAI,GAUN,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;IACxC,IAAI,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACjD,IAAI,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAC7D,IAAI,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAC7D,IAAI,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IACpD,IAAI,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAEpD,IAAI,QAAqB,CAAA;IACzB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE;YACrD,IAAI;YACJ,SAAS,EAAE,yBAAyB;SACrC,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,GAAwB,CAAA;QAClC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACzD,MAAM,IAAI,gBAAgB,CACxB,wCAAwC,yBAAyB,GAAG,IAAI,kGAAkG,CAC3K,CAAA;QACH,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAA;IAE1E,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAiC,CAAA;IACtF,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,CAAA;IAC7B,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,gBAAgB,CACxB,gFAAgF,CACjF,CAAA;IACH,CAAC;IAED,MAAM,YAAY,GAAG,SAAS;QAC5B,CAAC,CAAC,qDAAqD;QACvD,CAAC,CAAC,EAAE,CAAA;IACN,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EACF,oBAAoB,OAAO,CAAC,IAAI,IAAI,IAAI,MAAM,OAAO,CAAC,IAAI,IAAI,IAAI,SAAS,OAAO,CAAC,EAAE,IAAI;oBACzF,cAAc,SAAS,IAAI,YAAY,EAAE;aAC5C;SACF;QACD,KAAK,EAAE,EAAE,OAAO,EAAE;KACnB,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAE9E,MAAM,iCAAiC,GAAG,MAAM,CAAA;AAEhD,wDAAwD;AACxD,6EAA6E;AAC7E,MAAM,sBAAsB,GAAG,IAAI,CAAA;AAEnC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,CACP,2EAA2E;QACzE,2EAA2E,CAC9E;IACH,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;SAChC,GAAG,CAAC,QAAQ,EAAE,sBAAsB,QAAQ,SAAS,CAAC;SACtD,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,EAAE,wBAAwB,CAAC;SAChC,GAAG,CAAC,QAAQ,EAAE,sBAAsB,QAAQ,SAAS,CAAC;SACtD,QAAQ,CAAC,6EAA6E,CAAC;IAC1F,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,CAAC,WAAW,EAAE,yBAAyB,WAAW,SAAS,CAAC;SAC/D,QAAQ,EAAE;SACV,QAAQ,CACP,2FAA2F,CAC5F;IACH,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,YAAY,EAAE,0BAA0B,YAAY,SAAS,CAAC;SAClE,QAAQ,EAAE;SACV,QAAQ,CAAC,qEAAqE,CAAC;IAClF,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,gBAAgB,EAAE,6BAA6B,gBAAgB,SAAS,CAAC;SAC7E,QAAQ,EAAE;SACV,QAAQ,CAAC,uEAAuE,CAAC;IACpF,iBAAiB,EAAE,CAAC;SACjB,MAAM,EAAE;SACR,GAAG,CAAC,sBAAsB,EAAE,mCAAmC,sBAAsB,SAAS,CAAC;SAC/F,QAAQ,EAAE;SACV,QAAQ,CACP,uFAAuF;QACrF,qFAAqF,CACxF;IACH,SAAS,EAAE,CAAC;SACT,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,uFAAuF;QACrF,sDAAsD,CACzD;CACJ,CAAC,CAAA;AAYF;;;;GAIG;AACH,KAAK,UAAU,wBAAwB,CACrC,QAAqB,EACrB,IAAqB;IAErB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;IAClD,IAAI,MAAM,GAA6B,IAAI,CAAA;IAC3C,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAsB,CAAA;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,mDAAmD;IACrD,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA;IAE9B,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,EAAE,IAAI,KAAK,sBAAsB,EAAE,CAAC;QAC9D,MAAM,OAAO,GAAG,OAAO,MAAM,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;QAC3E,MAAM,QAAQ,GAAG,OAAO,MAAM,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAA;QAC9E,MAAM,MAAM,GACV,OAAO,MAAM,EAAE,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAC9D,CAAC,CAAC,MAAM,CAAC,OAAO;YAChB,CAAC,CAAC,8BAA8B,CAAA;QACpC,IAAI,OAAO,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,OAAO,EAAE,CAAC,CAAC,CAAA;YAC9C,MAAM,IAAI,gBAAgB,CACxB,yDAAyD,OAAO,gBAAgB,QAAQ,GAAG;gBACzF,IAAI,MAAM,0BAA0B,MAAM,GAAG,CAChD,CAAA;QACH,CAAC;QACD,MAAM,IAAI,gBAAgB,CAAC,2DAA2D,MAAM,GAAG,CAAC,CAAA;IAClG,CAAC;IAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC7C,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,IAAI,QAAQ,CAAC,YAAY,EAAE,IAAI,KAAK,WAAW;YAAE,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAA;QAC3E,MAAM,IAAI,gBAAgB,CACxB,+EAA+E,CAChF,CAAA;IACH,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,MAAM,IAAI,gBAAgB,CACxB,wEAAwE;YACtE,8CAA8C,CACjD,CAAA;IACH,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAChF,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,MAAM,IAAI,gBAAgB,CAAC,gCAAgC,MAAM,EAAE,CAAC,CAAA;IACtE,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACrC,MAAM,IAAI,gBAAgB,CACxB,uDAAuD,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI;YAC9F,kDAAkD,CACrD,CAAA;IACH,CAAC;IACD,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,MAAM,MAAM,MAAM,EAAE,CAAC,CAAA;AACtF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,KAAc,EACd,IAAqB;IAErB,MAAM,MAAM,GAAG,0BAA0B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC/E,CAAC;IACD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAC3F,MAAM,CAAC,IAAI,CAAA;IACb,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEzB,MAAM,IAAI,GASN,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;IACxC,IAAI,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACjD,IAAI,QAAQ,KAAK,SAAS;QAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IACpD,IAAI,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAC7D,IAAI,iBAAiB,KAAK,SAAS;QAAE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;IAE/E,IAAI,QAAqB,CAAA;IACzB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,2BAA2B,EAAE;YACjE,IAAI;YACJ,SAAS,EAAE,iCAAiC;SAC7C,CAAC,CAAA;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,GAAwB,CAAA;QAClC,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACzD,MAAM,IAAI,gBAAgB,CACxB,0CAA0C,iCAAiC,GAAG,IAAI,KAAK;gBACrF,+FAA+F,CAClG,CAAA;QACH,CAAC;QACD,MAAM,GAAG,CAAA;IACX,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,wBAAwB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAEhE,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAiC,CAAA;IACtF,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,CAAA;IAC7B,IAAI,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,gBAAgB,CACxB,kFAAkF,CACnF,CAAA;IACH,CAAC;IAED,MAAM,YAAY,GAAG,SAAS;QAC5B,CAAC,CAAC,qDAAqD;QACvD,CAAC,CAAC,EAAE,CAAA;IACN,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EACF,sBAAsB,OAAO,CAAC,IAAI,IAAI,IAAI,MAAM,OAAO,CAAC,IAAI,IAAI,IAAI,SAAS,OAAO,CAAC,EAAE,IAAI;oBAC3F,cAAc,SAAS,uBAAuB,YAAY,EAAE;aAC/D;SACF;QACD,KAAK,EAAE,EAAE,OAAO,EAAE;KACnB,CAAA;AACH,CAAC"}
|
package/dist/tools/registry.js
CHANGED
|
@@ -16,7 +16,7 @@ import { zodToInputSchema } from './schema.js';
|
|
|
16
16
|
import { ResearchInputSchema, runResearch } from './research.js';
|
|
17
17
|
import { StatusInputSchema, getResearchStatus } from './status.js';
|
|
18
18
|
import { ListProjectsInputSchema, CreateProjectInputSchema, listProjects, createProject, } from './projects.js';
|
|
19
|
-
import { CreatePersonaInputSchema, createPersona } from './personas.js';
|
|
19
|
+
import { CreatePersonaInputSchema, createPersona, GeneratePersonaInputSchema, generatePersona, } from './personas.js';
|
|
20
20
|
import { ListReportsInputSchema, GetReportInputSchema, listReports, getReport, } from './reports.js';
|
|
21
21
|
import { InterviewPersonaInputSchema, interviewPersona } from './interview.js';
|
|
22
22
|
import { ScanCompetitorsInputSchema, scanCompetitors, SearchForumsInputSchema, searchForums, } from './scoped-research.js';
|
|
@@ -144,11 +144,27 @@ export const TOOLS = [
|
|
|
144
144
|
'Compose with `interview_persona` to validate a NEW MARKET cheaply: create a persona ' +
|
|
145
145
|
'representing that market, then interview it (see docs/recipes/new-market-persona-validation.md). ' +
|
|
146
146
|
'For a FULL validation report on the new market rather than a targeted probe, prefer `clien_research`. ' +
|
|
147
|
-
'This is a free, no-credit create for explicit fields — AI
|
|
148
|
-
'
|
|
147
|
+
'This is a free, no-credit create for explicit fields you already know — if you want the AI to ' +
|
|
148
|
+
'generate the background/company/industry from just a name + role, use `generate_persona` instead ' +
|
|
149
|
+
'(that path debits 1 credit).',
|
|
149
150
|
zodSchema: CreatePersonaInputSchema,
|
|
150
151
|
handler: (args, deps) => createPersona(args, deps),
|
|
151
152
|
}),
|
|
153
|
+
defineTool({
|
|
154
|
+
name: 'generate_persona',
|
|
155
|
+
description: 'AI-generate a persona from a short brief and save it to a Clien.ai project. Supply at minimum ' +
|
|
156
|
+
'`projectId`, `name`, and `role`; the model fills a believable background, company, industry, ' +
|
|
157
|
+
'company size, and location. Add `company`, `industry`, or `companySize` to pin those yourself, ' +
|
|
158
|
+
'and `additionalContext` (a free-form brief) to steer the persona toward the product/market you ' +
|
|
159
|
+
'are validating. Set `ephemeral: true` for a scratch persona excluded from the project\'s ' +
|
|
160
|
+
'aggregate insights. Returns the created persona (including its `id`) in `_meta.persona`. ' +
|
|
161
|
+
'This DEBITS 1 credit per generated persona (the explicit, no-AI `create_persona` is free — use ' +
|
|
162
|
+
'that when you already know the fields). On insufficient credits the tool returns a clear error ' +
|
|
163
|
+
'with your balance and a top-up link, and nothing is charged. A failed generation is never ' +
|
|
164
|
+
'charged, so a surfaced error is safe to retry.',
|
|
165
|
+
zodSchema: GeneratePersonaInputSchema,
|
|
166
|
+
handler: (args, deps) => generatePersona(args, deps),
|
|
167
|
+
}),
|
|
152
168
|
defineTool({
|
|
153
169
|
name: 'list_reports',
|
|
154
170
|
description: 'List the caller\'s past `clien_research` runs (newest first, paginated by `limit`). ' +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAqB,MAAM,eAAe,CAAA;AACnF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAClE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,YAAY,EACZ,aAAa,GACd,MAAM,eAAe,CAAA;AACtB,OAAO,
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAqB,MAAM,eAAe,CAAA;AACnF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAClE,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,YAAY,EACZ,aAAa,GACd,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,wBAAwB,EACxB,aAAa,EACb,0BAA0B,EAC1B,eAAe,GAChB,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,SAAS,GACV,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,2BAA2B,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAC9E,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,uBAAuB,EACvB,YAAY,GACb,MAAM,sBAAsB,CAAA;AA8B7B,SAAS,UAAU,CACjB,GAAuC;IAEvC,OAAO,EAAE,GAAG,GAAG,EAAE,UAAU,EAAE,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAA;AAChE,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAqB;IACrC,UAAU,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,uFAAuF;YACvF,+EAA+E;YAC/E,uFAAuF;YACvF,0CAA0C;YAC1C,6FAA6F;YAC7F,qGAAqG;YACrG,+FAA+F;YAC/F,iFAAiF;YACjF,2EAA2E;YAC3E,wGAAwG;YACxG,uFAAuF;YACvF,uGAAuG;YACvG,6FAA6F;YAC7F,6FAA6F;QAC/F,SAAS,EAAE,mBAAmB;QAC9B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC;KACjD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,2EAA2E;YAC3E,gFAAgF;YAChF,iFAAiF;YACjF,sFAAsF;YACtF,2FAA2F;YAC3F,oFAAoF;YACpF,6CAA6C;YAC7C,wFAAwF;YACxF,sFAAsF;YACtF,wFAAwF;YACxF,2FAA2F;YAC3F,oEAAoE;YACpE,6CAA6C;QAC/C,SAAS,EAAE,iBAAiB;QAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC;KACvD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,gGAAgG;YAChG,8FAA8F;YAC9F,+FAA+F;YAC/F,gGAAgG;YAChG,mGAAmG;YACnG,2BAA2B;YAC3B,yFAAyF;YACzF,0FAA0F;YAC1F,0FAA0F;YAC1F,mFAAmF;YACnF,8FAA8F;YAC9F,8FAA8F;YAC9F,qEAAqE;YACrE,gGAAgG;YAChG,iGAAiG;YACjG,2CAA2C;YAC3C,gGAAgG;YAChG,kGAAkG;YAClG,8EAA8E;QAChF,SAAS,EAAE,0BAA0B;QACrC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC;KACrD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,+FAA+F;YAC/F,oGAAoG;YACpG,8FAA8F;YAC9F,iGAAiG;YACjG,4FAA4F;YAC5F,6FAA6F;YAC7F,oBAAoB;YACpB,+FAA+F;YAC/F,iGAAiG;YACjG,6FAA6F;YAC7F,4FAA4F;YAC5F,kGAAkG;YAClG,+CAA+C;YAC/C,iGAAiG;YACjG,iGAAiG;YACjG,mEAAmE;YACnE,+EAA+E;YAC/E,6CAA6C;YAC7C,gGAAgG;YAChG,kGAAkG;YAClG,2EAA2E;QAC7E,SAAS,EAAE,uBAAuB;QAClC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;KAClD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,+EAA+E;YAC/E,+EAA+E;YAC/E,kFAAkF;YAClF,wFAAwF;YACxF,6CAA6C;QAC/C,SAAS,EAAE,uBAAuB;QAClC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC;KAClD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,+EAA+E;YAC/E,oFAAoF;YACpF,uFAAuF;YACvF,uFAAuF;YACvF,qFAAqF;YACrF,qEAAqE;QACvE,SAAS,EAAE,wBAAwB;QACnC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC;KACnD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,+EAA+E;YAC/E,+EAA+E;YAC/E,oFAAoF;YACpF,6EAA6E;YAC7E,sFAAsF;YACtF,qFAAqF;YACrF,mFAAmF;YACnF,sFAAsF;YACtF,mGAAmG;YACnG,wGAAwG;YACxG,gGAAgG;YAChG,mGAAmG;YACnG,8BAA8B;QAChC,SAAS,EAAE,wBAAwB;QACnC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC;KACnD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,gGAAgG;YAChG,+FAA+F;YAC/F,iGAAiG;YACjG,iGAAiG;YACjG,2FAA2F;YAC3F,2FAA2F;YAC3F,iGAAiG;YACjG,iGAAiG;YACjG,4FAA4F;YAC5F,gDAAgD;QAClD,SAAS,EAAE,0BAA0B;QACrC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC;KACrD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,sFAAsF;YACtF,yFAAyF;YACzF,sFAAsF;YACtF,qFAAqF;YACrF,oFAAoF;YACpF,yFAAyF;YACzF,0DAA0D;YAC1D,6CAA6C;QAC/C,SAAS,EAAE,sBAAsB;QACjC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC;KACjD,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,YAAY;QAClB,WAAW,EACT,yFAAyF;YACzF,wFAAwF;YACxF,uFAAuF;YACvF,yFAAyF;YACzF,kFAAkF;YAClF,yFAAyF;YACzF,6EAA6E;YAC7E,2FAA2F;YAC3F,6CAA6C;QAC/C,SAAS,EAAE,oBAAoB;QAC/B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC;KAC/C,CAAC;IACF,UAAU,CAAC;QACT,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,qFAAqF;YACrF,2FAA2F;YAC3F,yFAAyF;YACzF,2FAA2F;YAC3F,8FAA8F;YAC9F,8FAA8F;YAC9F,+FAA+F;YAC/F,kGAAkG;YAClG,iGAAiG;YACjG,4FAA4F;YAC5F,4FAA4F;YAC5F,+FAA+F;YAC/F,qDAAqD;QACvD,SAAS,EAAE,2BAA2B;QACtC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC;KACtD,CAAC;CACH,CAAA"}
|