@outlit/tools 0.1.3 → 0.2.1

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/index.d.cts CHANGED
@@ -1,7 +1,7 @@
1
1
  type JsonSchema = {
2
2
  readonly [key: string]: unknown;
3
3
  };
4
- declare const customerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
4
+ declare const customerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
5
5
  declare const customerSourceTypes: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY"];
6
6
  declare const customerSourceTypeAliases: readonly ["CRM", "CRM_OPPORTUNITY"];
7
7
  declare const customerSourceTypeInputs: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "CRM", "CRM_OPPORTUNITY"];
@@ -373,6 +373,69 @@ declare const customerToolContracts: {
373
373
  readonly additionalProperties: false;
374
374
  };
375
375
  };
376
+ readonly outlit_list_sources: {
377
+ readonly toolName: "outlit_list_sources";
378
+ readonly description: "List concrete source records deterministically. Use this instead of semantic search when you need enumerated calls, emails, calendar events, support tickets, or opportunities.";
379
+ readonly inputSchema: {
380
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
381
+ readonly type: "object";
382
+ readonly properties: {
383
+ readonly sourceType: {
384
+ readonly description: "Generic source type to list.";
385
+ readonly type: "string";
386
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "CRM", "CRM_OPPORTUNITY"];
387
+ };
388
+ readonly customer: {
389
+ readonly description: "Customer ID, domain, or name to scope source listing.";
390
+ readonly type: "string";
391
+ readonly minLength: 1;
392
+ readonly maxLength: 200;
393
+ };
394
+ readonly after: {
395
+ readonly description: "ISO 8601 datetime lower bound.";
396
+ readonly type: "string";
397
+ readonly format: "date-time";
398
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
399
+ };
400
+ readonly before: {
401
+ readonly description: "ISO 8601 datetime upper bound.";
402
+ readonly type: "string";
403
+ readonly format: "date-time";
404
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
405
+ };
406
+ readonly participant: {
407
+ readonly description: "Participant email or name to filter source records.";
408
+ readonly type: "string";
409
+ readonly minLength: 1;
410
+ readonly maxLength: 500;
411
+ };
412
+ readonly provider: {
413
+ readonly description: "Provider identifier such as gmail, gong, or google-calendar.";
414
+ readonly type: "string";
415
+ readonly minLength: 1;
416
+ readonly maxLength: 200;
417
+ };
418
+ readonly hasTranscript: {
419
+ readonly description: "Filter call sources by transcript presence.";
420
+ readonly type: "boolean";
421
+ };
422
+ readonly limit: {
423
+ readonly description: "Results per page.";
424
+ readonly default: 50;
425
+ readonly type: "integer";
426
+ readonly minimum: 1;
427
+ readonly maximum: 100;
428
+ };
429
+ readonly cursor: {
430
+ readonly description: "Pagination cursor.";
431
+ readonly type: "string";
432
+ readonly minLength: 1;
433
+ readonly maxLength: 2000;
434
+ };
435
+ };
436
+ readonly additionalProperties: false;
437
+ };
438
+ };
376
439
  readonly outlit_search_customer_context: {
377
440
  readonly toolName: "outlit_search_customer_context";
378
441
  readonly description: "Search across all known customer context using a natural-language query. Returns grouped artifact-level results for matching sources and facts. Omit customer to search across all customers in the organization.";
@@ -468,7 +531,7 @@ declare const customerToolContracts: {
468
531
  };
469
532
  readonly outlit_send_notification: {
470
533
  readonly toolName: "outlit_send_notification";
471
- readonly description: "Send or post a Slack notification. Use only when the user explicitly asks you to send, post, or notify. The payload is rendered as a Slack code block.";
534
+ readonly description: "Send or post a notification. Use only when the user explicitly asks you to send, post, or notify. Slack is the default notifier when destinations are omitted.";
472
535
  readonly inputSchema: {
473
536
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
474
537
  readonly type: "object";
@@ -479,34 +542,18 @@ declare const customerToolContracts: {
479
542
  readonly maxLength: 160;
480
543
  readonly description: "Notification title";
481
544
  };
545
+ readonly markdown: {
546
+ readonly description: "Markdown notification body rendered for the target provider";
547
+ readonly type: "string";
548
+ readonly minLength: 1;
549
+ readonly maxLength: 100000;
550
+ };
482
551
  readonly payload: {
483
- readonly description: "JSON-compatible payload rendered in Slack as a code block. Serialized size must be 100,000 characters or fewer.";
484
- readonly anyOf: readonly [{
485
- readonly type: "string";
486
- }, {
487
- readonly type: "number";
488
- }, {
489
- readonly type: "boolean";
490
- }, {
491
- readonly type: "null";
492
- }, {
493
- readonly type: "array";
494
- readonly items: {
495
- readonly $ref: "#/$defs/__schema0";
496
- };
497
- }, {
498
- readonly type: "object";
499
- readonly propertyNames: {
500
- readonly type: "string";
501
- };
502
- readonly additionalProperties: {
503
- readonly $ref: "#/$defs/__schema0";
504
- };
505
- }];
552
+ readonly description: "Optional JSON-compatible payload. Serialized size must be 100,000 characters or fewer.";
506
553
  readonly $ref: "#/$defs/__schema0";
507
554
  };
508
555
  readonly message: {
509
- readonly description: "Optional Slack message";
556
+ readonly description: "Optional summary message";
510
557
  readonly type: "string";
511
558
  readonly minLength: 1;
512
559
  readonly maxLength: 1200;
@@ -528,8 +575,38 @@ declare const customerToolContracts: {
528
575
  readonly minLength: 1;
529
576
  readonly maxLength: 240;
530
577
  };
578
+ readonly destinations: {
579
+ readonly description: "Optional explicit notification destinations. Omit to use the default notifier.";
580
+ readonly minItems: 1;
581
+ readonly maxItems: 10;
582
+ readonly type: "array";
583
+ readonly items: {
584
+ readonly type: "object";
585
+ readonly properties: {
586
+ readonly provider: {
587
+ readonly description: "Notification provider";
588
+ readonly type: "string";
589
+ readonly enum: readonly ["slack"];
590
+ };
591
+ readonly channelId: {
592
+ readonly description: "Provider-specific destination channel ID";
593
+ readonly type: "string";
594
+ readonly minLength: 1;
595
+ readonly maxLength: 240;
596
+ };
597
+ readonly label: {
598
+ readonly description: "Optional destination label";
599
+ readonly type: "string";
600
+ readonly minLength: 1;
601
+ readonly maxLength: 120;
602
+ };
603
+ };
604
+ readonly required: readonly ["provider"];
605
+ readonly additionalProperties: false;
606
+ };
607
+ };
531
608
  };
532
- readonly required: readonly ["title", "payload"];
609
+ readonly required: readonly ["title"];
533
610
  readonly additionalProperties: false;
534
611
  readonly $defs: {
535
612
  readonly __schema0: {
@@ -570,13 +647,14 @@ declare const customerFactCategories: readonly ["MEMORY", "CUSTOM"];
570
647
  declare const customerListOrderFields: readonly ["last_activity_at", "first_seen_at", "name", "mrr_cents"];
571
648
  declare const customerIncludeSections: readonly ["users", "revenue", "recentTimeline", "behaviorMetrics"];
572
649
  declare const customerTimeframes: readonly ["7d", "14d", "30d", "90d"];
650
+ declare const notificationProviderValues: readonly ["slack"];
573
651
  declare const notificationSeverityValues: readonly ["low", "medium", "high"];
574
652
  declare const timelineChannels: readonly ["SDK", "EMAIL", "SLACK", "CALL", "CALENDAR", "CRM", "BILLING", "SUPPORT", "INTERNAL"];
575
653
  declare const timelineTimeframes: readonly ["7d", "14d", "30d", "90d", "all"];
576
654
  declare const userJourneyStages: readonly ["DISCOVERED", "SIGNED_UP", "ACTIVATED", "ENGAGED", "INACTIVE"];
577
655
  declare const userListOrderFields: readonly ["last_activity_at", "first_seen_at", "email"];
578
656
  declare const schemaTables: readonly ["activity", "customers", "users", "revenue"];
579
- declare const customerToolContractHash: "f619a7dcc1845bc494a193d11e76c6fcee66ecaa2ea60a9a30b51750feb8b11a";
657
+ declare const customerToolContractHash: "5016d146842452855bfdd9ecc8f6be1a122125d0c392ceff315aeb2e44fefc7f";
580
658
  type CustomerToolName = (typeof customerToolNames)[number];
581
659
  type CustomerSourceType = (typeof customerSourceTypes)[number];
582
660
  type CustomerSourceTypeInput = (typeof customerSourceTypeInputs)[number];
@@ -630,6 +708,6 @@ declare const actionToolNames: readonly ["outlit_send_notification"];
630
708
  declare const defaultAgentToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_send_notification"];
631
709
  declare const sqlToolNames: readonly ["outlit_schema", "outlit_query"];
632
710
  declare const analyticalAgentToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_send_notification", "outlit_schema", "outlit_query"];
633
- declare const allCustomerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
711
+ declare const allCustomerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
634
712
 
635
- export { type CustomerContextSearchInput, type CustomerSourceType, type CustomerSourceTypeInput, type CustomerToolContract, type CustomerToolName, DEFAULT_OUTLIT_API_URL, type JsonSchema, type OutlitToolsClient, type OutlitToolsClientOptions, type OutlitToolsFetch, type SearchArgsLike, actionToolNames, allCustomerToolNames, analyticalAgentToolNames, createOutlitClient, customerActivityWindows, customerBillingStatuses, customerFactCategories, customerFactIncludes, customerFactStatuses, customerFactTypes, customerIncludeSections, customerListOrderFields, customerSourceTypeAliases, customerSourceTypeInputs, customerSourceTypes, customerTimeframes, customerToolContractHash, customerToolContracts, customerToolNames, defaultAgentToolNames, getCustomerToolContract, isCustomerToolName, normalizeCustomerSourceType, notificationSeverityValues, resolveCustomerContextSearchInput, schemaTables, sqlToolNames, timelineChannels, timelineTimeframes, unsupportedCustomerFactTypes, userJourneyStages, userListOrderFields };
713
+ export { type CustomerContextSearchInput, type CustomerSourceType, type CustomerSourceTypeInput, type CustomerToolContract, type CustomerToolName, DEFAULT_OUTLIT_API_URL, type JsonSchema, type OutlitToolsClient, type OutlitToolsClientOptions, type OutlitToolsFetch, type SearchArgsLike, actionToolNames, allCustomerToolNames, analyticalAgentToolNames, createOutlitClient, customerActivityWindows, customerBillingStatuses, customerFactCategories, customerFactIncludes, customerFactStatuses, customerFactTypes, customerIncludeSections, customerListOrderFields, customerSourceTypeAliases, customerSourceTypeInputs, customerSourceTypes, customerTimeframes, customerToolContractHash, customerToolContracts, customerToolNames, defaultAgentToolNames, getCustomerToolContract, isCustomerToolName, normalizeCustomerSourceType, notificationProviderValues, notificationSeverityValues, resolveCustomerContextSearchInput, schemaTables, sqlToolNames, timelineChannels, timelineTimeframes, unsupportedCustomerFactTypes, userJourneyStages, userListOrderFields };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  type JsonSchema = {
2
2
  readonly [key: string]: unknown;
3
3
  };
4
- declare const customerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
4
+ declare const customerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
5
5
  declare const customerSourceTypes: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY"];
6
6
  declare const customerSourceTypeAliases: readonly ["CRM", "CRM_OPPORTUNITY"];
7
7
  declare const customerSourceTypeInputs: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "CRM", "CRM_OPPORTUNITY"];
@@ -373,6 +373,69 @@ declare const customerToolContracts: {
373
373
  readonly additionalProperties: false;
374
374
  };
375
375
  };
376
+ readonly outlit_list_sources: {
377
+ readonly toolName: "outlit_list_sources";
378
+ readonly description: "List concrete source records deterministically. Use this instead of semantic search when you need enumerated calls, emails, calendar events, support tickets, or opportunities.";
379
+ readonly inputSchema: {
380
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
381
+ readonly type: "object";
382
+ readonly properties: {
383
+ readonly sourceType: {
384
+ readonly description: "Generic source type to list.";
385
+ readonly type: "string";
386
+ readonly enum: readonly ["EMAIL", "CALL", "CALENDAR_EVENT", "SUPPORT_TICKET", "OPPORTUNITY", "CRM", "CRM_OPPORTUNITY"];
387
+ };
388
+ readonly customer: {
389
+ readonly description: "Customer ID, domain, or name to scope source listing.";
390
+ readonly type: "string";
391
+ readonly minLength: 1;
392
+ readonly maxLength: 200;
393
+ };
394
+ readonly after: {
395
+ readonly description: "ISO 8601 datetime lower bound.";
396
+ readonly type: "string";
397
+ readonly format: "date-time";
398
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
399
+ };
400
+ readonly before: {
401
+ readonly description: "ISO 8601 datetime upper bound.";
402
+ readonly type: "string";
403
+ readonly format: "date-time";
404
+ readonly pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$";
405
+ };
406
+ readonly participant: {
407
+ readonly description: "Participant email or name to filter source records.";
408
+ readonly type: "string";
409
+ readonly minLength: 1;
410
+ readonly maxLength: 500;
411
+ };
412
+ readonly provider: {
413
+ readonly description: "Provider identifier such as gmail, gong, or google-calendar.";
414
+ readonly type: "string";
415
+ readonly minLength: 1;
416
+ readonly maxLength: 200;
417
+ };
418
+ readonly hasTranscript: {
419
+ readonly description: "Filter call sources by transcript presence.";
420
+ readonly type: "boolean";
421
+ };
422
+ readonly limit: {
423
+ readonly description: "Results per page.";
424
+ readonly default: 50;
425
+ readonly type: "integer";
426
+ readonly minimum: 1;
427
+ readonly maximum: 100;
428
+ };
429
+ readonly cursor: {
430
+ readonly description: "Pagination cursor.";
431
+ readonly type: "string";
432
+ readonly minLength: 1;
433
+ readonly maxLength: 2000;
434
+ };
435
+ };
436
+ readonly additionalProperties: false;
437
+ };
438
+ };
376
439
  readonly outlit_search_customer_context: {
377
440
  readonly toolName: "outlit_search_customer_context";
378
441
  readonly description: "Search across all known customer context using a natural-language query. Returns grouped artifact-level results for matching sources and facts. Omit customer to search across all customers in the organization.";
@@ -468,7 +531,7 @@ declare const customerToolContracts: {
468
531
  };
469
532
  readonly outlit_send_notification: {
470
533
  readonly toolName: "outlit_send_notification";
471
- readonly description: "Send or post a Slack notification. Use only when the user explicitly asks you to send, post, or notify. The payload is rendered as a Slack code block.";
534
+ readonly description: "Send or post a notification. Use only when the user explicitly asks you to send, post, or notify. Slack is the default notifier when destinations are omitted.";
472
535
  readonly inputSchema: {
473
536
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
474
537
  readonly type: "object";
@@ -479,34 +542,18 @@ declare const customerToolContracts: {
479
542
  readonly maxLength: 160;
480
543
  readonly description: "Notification title";
481
544
  };
545
+ readonly markdown: {
546
+ readonly description: "Markdown notification body rendered for the target provider";
547
+ readonly type: "string";
548
+ readonly minLength: 1;
549
+ readonly maxLength: 100000;
550
+ };
482
551
  readonly payload: {
483
- readonly description: "JSON-compatible payload rendered in Slack as a code block. Serialized size must be 100,000 characters or fewer.";
484
- readonly anyOf: readonly [{
485
- readonly type: "string";
486
- }, {
487
- readonly type: "number";
488
- }, {
489
- readonly type: "boolean";
490
- }, {
491
- readonly type: "null";
492
- }, {
493
- readonly type: "array";
494
- readonly items: {
495
- readonly $ref: "#/$defs/__schema0";
496
- };
497
- }, {
498
- readonly type: "object";
499
- readonly propertyNames: {
500
- readonly type: "string";
501
- };
502
- readonly additionalProperties: {
503
- readonly $ref: "#/$defs/__schema0";
504
- };
505
- }];
552
+ readonly description: "Optional JSON-compatible payload. Serialized size must be 100,000 characters or fewer.";
506
553
  readonly $ref: "#/$defs/__schema0";
507
554
  };
508
555
  readonly message: {
509
- readonly description: "Optional Slack message";
556
+ readonly description: "Optional summary message";
510
557
  readonly type: "string";
511
558
  readonly minLength: 1;
512
559
  readonly maxLength: 1200;
@@ -528,8 +575,38 @@ declare const customerToolContracts: {
528
575
  readonly minLength: 1;
529
576
  readonly maxLength: 240;
530
577
  };
578
+ readonly destinations: {
579
+ readonly description: "Optional explicit notification destinations. Omit to use the default notifier.";
580
+ readonly minItems: 1;
581
+ readonly maxItems: 10;
582
+ readonly type: "array";
583
+ readonly items: {
584
+ readonly type: "object";
585
+ readonly properties: {
586
+ readonly provider: {
587
+ readonly description: "Notification provider";
588
+ readonly type: "string";
589
+ readonly enum: readonly ["slack"];
590
+ };
591
+ readonly channelId: {
592
+ readonly description: "Provider-specific destination channel ID";
593
+ readonly type: "string";
594
+ readonly minLength: 1;
595
+ readonly maxLength: 240;
596
+ };
597
+ readonly label: {
598
+ readonly description: "Optional destination label";
599
+ readonly type: "string";
600
+ readonly minLength: 1;
601
+ readonly maxLength: 120;
602
+ };
603
+ };
604
+ readonly required: readonly ["provider"];
605
+ readonly additionalProperties: false;
606
+ };
607
+ };
531
608
  };
532
- readonly required: readonly ["title", "payload"];
609
+ readonly required: readonly ["title"];
533
610
  readonly additionalProperties: false;
534
611
  readonly $defs: {
535
612
  readonly __schema0: {
@@ -570,13 +647,14 @@ declare const customerFactCategories: readonly ["MEMORY", "CUSTOM"];
570
647
  declare const customerListOrderFields: readonly ["last_activity_at", "first_seen_at", "name", "mrr_cents"];
571
648
  declare const customerIncludeSections: readonly ["users", "revenue", "recentTimeline", "behaviorMetrics"];
572
649
  declare const customerTimeframes: readonly ["7d", "14d", "30d", "90d"];
650
+ declare const notificationProviderValues: readonly ["slack"];
573
651
  declare const notificationSeverityValues: readonly ["low", "medium", "high"];
574
652
  declare const timelineChannels: readonly ["SDK", "EMAIL", "SLACK", "CALL", "CALENDAR", "CRM", "BILLING", "SUPPORT", "INTERNAL"];
575
653
  declare const timelineTimeframes: readonly ["7d", "14d", "30d", "90d", "all"];
576
654
  declare const userJourneyStages: readonly ["DISCOVERED", "SIGNED_UP", "ACTIVATED", "ENGAGED", "INACTIVE"];
577
655
  declare const userListOrderFields: readonly ["last_activity_at", "first_seen_at", "email"];
578
656
  declare const schemaTables: readonly ["activity", "customers", "users", "revenue"];
579
- declare const customerToolContractHash: "f619a7dcc1845bc494a193d11e76c6fcee66ecaa2ea60a9a30b51750feb8b11a";
657
+ declare const customerToolContractHash: "5016d146842452855bfdd9ecc8f6be1a122125d0c392ceff315aeb2e44fefc7f";
580
658
  type CustomerToolName = (typeof customerToolNames)[number];
581
659
  type CustomerSourceType = (typeof customerSourceTypes)[number];
582
660
  type CustomerSourceTypeInput = (typeof customerSourceTypeInputs)[number];
@@ -630,6 +708,6 @@ declare const actionToolNames: readonly ["outlit_send_notification"];
630
708
  declare const defaultAgentToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_send_notification"];
631
709
  declare const sqlToolNames: readonly ["outlit_schema", "outlit_query"];
632
710
  declare const analyticalAgentToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_send_notification", "outlit_schema", "outlit_query"];
633
- declare const allCustomerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
711
+ declare const allCustomerToolNames: readonly ["outlit_list_customers", "outlit_list_users", "outlit_get_customer", "outlit_get_timeline", "outlit_list_facts", "outlit_get_fact", "outlit_get_source", "outlit_list_sources", "outlit_search_customer_context", "outlit_query", "outlit_schema", "outlit_send_notification"];
634
712
 
635
- export { type CustomerContextSearchInput, type CustomerSourceType, type CustomerSourceTypeInput, type CustomerToolContract, type CustomerToolName, DEFAULT_OUTLIT_API_URL, type JsonSchema, type OutlitToolsClient, type OutlitToolsClientOptions, type OutlitToolsFetch, type SearchArgsLike, actionToolNames, allCustomerToolNames, analyticalAgentToolNames, createOutlitClient, customerActivityWindows, customerBillingStatuses, customerFactCategories, customerFactIncludes, customerFactStatuses, customerFactTypes, customerIncludeSections, customerListOrderFields, customerSourceTypeAliases, customerSourceTypeInputs, customerSourceTypes, customerTimeframes, customerToolContractHash, customerToolContracts, customerToolNames, defaultAgentToolNames, getCustomerToolContract, isCustomerToolName, normalizeCustomerSourceType, notificationSeverityValues, resolveCustomerContextSearchInput, schemaTables, sqlToolNames, timelineChannels, timelineTimeframes, unsupportedCustomerFactTypes, userJourneyStages, userListOrderFields };
713
+ export { type CustomerContextSearchInput, type CustomerSourceType, type CustomerSourceTypeInput, type CustomerToolContract, type CustomerToolName, DEFAULT_OUTLIT_API_URL, type JsonSchema, type OutlitToolsClient, type OutlitToolsClientOptions, type OutlitToolsFetch, type SearchArgsLike, actionToolNames, allCustomerToolNames, analyticalAgentToolNames, createOutlitClient, customerActivityWindows, customerBillingStatuses, customerFactCategories, customerFactIncludes, customerFactStatuses, customerFactTypes, customerIncludeSections, customerListOrderFields, customerSourceTypeAliases, customerSourceTypeInputs, customerSourceTypes, customerTimeframes, customerToolContractHash, customerToolContracts, customerToolNames, defaultAgentToolNames, getCustomerToolContract, isCustomerToolName, normalizeCustomerSourceType, notificationProviderValues, notificationSeverityValues, resolveCustomerContextSearchInput, schemaTables, sqlToolNames, timelineChannels, timelineTimeframes, unsupportedCustomerFactTypes, userJourneyStages, userListOrderFields };
package/dist/index.js CHANGED
@@ -7,6 +7,7 @@ var customerToolNames = [
7
7
  "outlit_list_facts",
8
8
  "outlit_get_fact",
9
9
  "outlit_get_source",
10
+ "outlit_list_sources",
10
11
  "outlit_search_customer_context",
11
12
  "outlit_query",
12
13
  "outlit_schema",
@@ -433,6 +434,69 @@ var customerToolContracts = {
433
434
  additionalProperties: false
434
435
  }
435
436
  },
437
+ outlit_list_sources: {
438
+ toolName: "outlit_list_sources",
439
+ description: "List concrete source records deterministically. Use this instead of semantic search when you need enumerated calls, emails, calendar events, support tickets, or opportunities.",
440
+ inputSchema: {
441
+ $schema: "https://json-schema.org/draft/2020-12/schema",
442
+ type: "object",
443
+ properties: {
444
+ sourceType: {
445
+ description: "Generic source type to list.",
446
+ type: "string",
447
+ enum: customerSourceTypeInputs
448
+ },
449
+ customer: {
450
+ description: "Customer ID, domain, or name to scope source listing.",
451
+ type: "string",
452
+ minLength: 1,
453
+ maxLength: 200
454
+ },
455
+ after: {
456
+ description: "ISO 8601 datetime lower bound.",
457
+ type: "string",
458
+ format: "date-time",
459
+ pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
460
+ },
461
+ before: {
462
+ description: "ISO 8601 datetime upper bound.",
463
+ type: "string",
464
+ format: "date-time",
465
+ pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
466
+ },
467
+ participant: {
468
+ description: "Participant email or name to filter source records.",
469
+ type: "string",
470
+ minLength: 1,
471
+ maxLength: 500
472
+ },
473
+ provider: {
474
+ description: "Provider identifier such as gmail, gong, or google-calendar.",
475
+ type: "string",
476
+ minLength: 1,
477
+ maxLength: 200
478
+ },
479
+ hasTranscript: {
480
+ description: "Filter call sources by transcript presence.",
481
+ type: "boolean"
482
+ },
483
+ limit: {
484
+ description: "Results per page.",
485
+ default: 50,
486
+ type: "integer",
487
+ minimum: 1,
488
+ maximum: 100
489
+ },
490
+ cursor: {
491
+ description: "Pagination cursor.",
492
+ type: "string",
493
+ minLength: 1,
494
+ maxLength: 2e3
495
+ }
496
+ },
497
+ additionalProperties: false
498
+ }
499
+ },
436
500
  outlit_search_customer_context: {
437
501
  toolName: "outlit_search_customer_context",
438
502
  description: "Search across all known customer context using a natural-language query. Returns grouped artifact-level results for matching sources and facts. Omit customer to search across all customers in the organization.",
@@ -531,7 +595,7 @@ var customerToolContracts = {
531
595
  },
532
596
  outlit_send_notification: {
533
597
  toolName: "outlit_send_notification",
534
- description: "Send or post a Slack notification. Use only when the user explicitly asks you to send, post, or notify. The payload is rendered as a Slack code block.",
598
+ description: "Send or post a notification. Use only when the user explicitly asks you to send, post, or notify. Slack is the default notifier when destinations are omitted.",
535
599
  inputSchema: {
536
600
  $schema: "https://json-schema.org/draft/2020-12/schema",
537
601
  type: "object",
@@ -542,41 +606,18 @@ var customerToolContracts = {
542
606
  maxLength: 160,
543
607
  description: "Notification title"
544
608
  },
609
+ markdown: {
610
+ description: "Markdown notification body rendered for the target provider",
611
+ type: "string",
612
+ minLength: 1,
613
+ maxLength: 1e5
614
+ },
545
615
  payload: {
546
- description: "JSON-compatible payload rendered in Slack as a code block. Serialized size must be 100,000 characters or fewer.",
547
- anyOf: [
548
- {
549
- type: "string"
550
- },
551
- {
552
- type: "number"
553
- },
554
- {
555
- type: "boolean"
556
- },
557
- {
558
- type: "null"
559
- },
560
- {
561
- type: "array",
562
- items: {
563
- $ref: "#/$defs/__schema0"
564
- }
565
- },
566
- {
567
- type: "object",
568
- propertyNames: {
569
- type: "string"
570
- },
571
- additionalProperties: {
572
- $ref: "#/$defs/__schema0"
573
- }
574
- }
575
- ],
616
+ description: "Optional JSON-compatible payload. Serialized size must be 100,000 characters or fewer.",
576
617
  $ref: "#/$defs/__schema0"
577
618
  },
578
619
  message: {
579
- description: "Optional Slack message",
620
+ description: "Optional summary message",
580
621
  type: "string",
581
622
  minLength: 1,
582
623
  maxLength: 1200
@@ -597,9 +638,39 @@ var customerToolContracts = {
597
638
  type: "string",
598
639
  minLength: 1,
599
640
  maxLength: 240
641
+ },
642
+ destinations: {
643
+ description: "Optional explicit notification destinations. Omit to use the default notifier.",
644
+ minItems: 1,
645
+ maxItems: 10,
646
+ type: "array",
647
+ items: {
648
+ type: "object",
649
+ properties: {
650
+ provider: {
651
+ description: "Notification provider",
652
+ type: "string",
653
+ enum: ["slack"]
654
+ },
655
+ channelId: {
656
+ description: "Provider-specific destination channel ID",
657
+ type: "string",
658
+ minLength: 1,
659
+ maxLength: 240
660
+ },
661
+ label: {
662
+ description: "Optional destination label",
663
+ type: "string",
664
+ minLength: 1,
665
+ maxLength: 120
666
+ }
667
+ },
668
+ required: ["provider"],
669
+ additionalProperties: false
670
+ }
600
671
  }
601
672
  },
602
- required: ["title", "payload"],
673
+ required: ["title"],
603
674
  additionalProperties: false,
604
675
  $defs: {
605
676
  __schema0: {
@@ -698,6 +769,7 @@ var customerIncludeSections = [
698
769
  "behaviorMetrics"
699
770
  ];
700
771
  var customerTimeframes = ["7d", "14d", "30d", "90d"];
772
+ var notificationProviderValues = ["slack"];
701
773
  var notificationSeverityValues = ["low", "medium", "high"];
702
774
  var timelineChannels = [
703
775
  "SDK",
@@ -720,7 +792,7 @@ var userJourneyStages = [
720
792
  ];
721
793
  var userListOrderFields = ["last_activity_at", "first_seen_at", "email"];
722
794
  var schemaTables = ["activity", "customers", "users", "revenue"];
723
- var customerToolContractHash = "f619a7dcc1845bc494a193d11e76c6fcee66ecaa2ea60a9a30b51750feb8b11a";
795
+ var customerToolContractHash = "5016d146842452855bfdd9ecc8f6be1a122125d0c392ceff315aeb2e44fefc7f";
724
796
  var customerToolNameSet = new Set(customerToolNames);
725
797
  var customerSourceTypeSet = new Set(customerSourceTypes);
726
798
  var customerSourceTypeAliasMap = /* @__PURE__ */ new Map([
@@ -735,11 +807,11 @@ function getCustomerToolContract(name) {
735
807
  return customerToolContracts[name];
736
808
  }
737
809
  function normalizeCustomerSourceType(value) {
738
- const normalizedValue = value.trim().toUpperCase();
739
- if (customerSourceTypeSet.has(normalizedValue)) {
740
- return normalizedValue;
810
+ const normalized = value.trim().toUpperCase();
811
+ if (customerSourceTypeSet.has(normalized)) {
812
+ return normalized;
741
813
  }
742
- return customerSourceTypeAliasMap.get(normalizedValue) ?? null;
814
+ return customerSourceTypeAliasMap.get(normalized) ?? null;
743
815
  }
744
816
  function resolveCustomerContextSearchInput(value) {
745
817
  if (!value.query) {
@@ -898,6 +970,7 @@ export {
898
970
  getCustomerToolContract,
899
971
  isCustomerToolName,
900
972
  normalizeCustomerSourceType,
973
+ notificationProviderValues,
901
974
  notificationSeverityValues,
902
975
  resolveCustomerContextSearchInput,
903
976
  schemaTables,