openmates 0.23.0-alpha.6 → 0.23.0-alpha.7

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.
@@ -24655,6 +24655,99 @@ Each object must contain 'id' (unique identifier) and 'url' (webpage URL), and c
24655
24655
  }
24656
24656
  }
24657
24657
  }
24658
+ },
24659
+ {
24660
+ "app_id": "hosting",
24661
+ "skill_id": "search_domains",
24662
+ "app_namespace_ts": "hosting",
24663
+ "skill_method_ts": "searchDomains",
24664
+ "app_namespace_py": "hosting",
24665
+ "skill_method_py": "search_domains",
24666
+ "description_key": "app_skills.hosting.search_domains.description",
24667
+ "description": "Check an exact domain name or discover available domain names through Gandi. Use one grouped request per independent name or idea. A fully qualified domain is checked exactly. Put explicitly requested suffixes in tlds and explicit tax country and currency in country and currency; defaults are DE and EUR. Use availability=prefer_available by default: show confirmed available names first and checked in-use names only to fill remaining result slots. Use available_only only when the user wants no in",
24668
+ "schema": {
24669
+ "type": "object",
24670
+ "properties": {
24671
+ "requests": {
24672
+ "type": "array",
24673
+ "minItems": 1,
24674
+ "maxItems": 5,
24675
+ "description": "One to five independent domain checks or name searches.",
24676
+ "items": {
24677
+ "type": "object",
24678
+ "properties": {
24679
+ "id": {
24680
+ "description": "Optional caller ID echoed in this group's result.",
24681
+ "oneOf": [
24682
+ {
24683
+ "type": "string"
24684
+ },
24685
+ {
24686
+ "type": "integer"
24687
+ }
24688
+ ]
24689
+ },
24690
+ "query": {
24691
+ "type": "string",
24692
+ "description": "An exact fully qualified domain (up to 253 characters), a short name, or a keyword idea (up to 100 characters).",
24693
+ "minLength": 1,
24694
+ "maxLength": 253
24695
+ },
24696
+ "tlds": {
24697
+ "type": "array",
24698
+ "maxItems": 5,
24699
+ "items": {
24700
+ "type": "string"
24701
+ },
24702
+ "description": "Optional suffixes such as .com or .net. For a short single-label name, check each exact name plus suffix before suggestions.\n"
24703
+ },
24704
+ "country": {
24705
+ "type": "string",
24706
+ "default": "DE",
24707
+ "description": "Two-letter tax country code; returned explicitly with prices."
24708
+ },
24709
+ "currency": {
24710
+ "type": "string",
24711
+ "default": "EUR",
24712
+ "enum": [
24713
+ "EUR",
24714
+ "USD"
24715
+ ],
24716
+ "description": "Supported quote currency. Unsupported currencies are rejected."
24717
+ },
24718
+ "max_results": {
24719
+ "type": "integer",
24720
+ "minimum": 1,
24721
+ "maximum": 20,
24722
+ "default": 10,
24723
+ "description": "Maximum selected results per group. Checked pool remains at most 40."
24724
+ },
24725
+ "availability": {
24726
+ "type": "string",
24727
+ "enum": [
24728
+ "prefer_available",
24729
+ "available_only",
24730
+ "all"
24731
+ ],
24732
+ "default": "prefer_available",
24733
+ "description": "prefer_available selects confirmed available first, then checked unavailable names only to fill a shortfall. available_only never fills with unavailable. all preserves ranked checked available and unavailable order. Unknown checks remain diagnostic only.\n"
24734
+ },
24735
+ "relevance_criteria": {
24736
+ "type": "string",
24737
+ "maxLength": 1e3,
24738
+ "description": "Optional natural-language goal for ranking checked candidates. Set when the user states a material brand, name-fit, renewal-price, term, premium, or restriction preference that should change order. Copy the goal faithfully; omit for neutral lookup or discovery. Ranking uses only evidenced provider facts and drops scores below 1.\n"
24739
+ }
24740
+ },
24741
+ "required": [
24742
+ "query"
24743
+ ]
24744
+ }
24745
+ }
24746
+ },
24747
+ "required": [
24748
+ "requests"
24749
+ ]
24750
+ }
24658
24751
  }
24659
24752
  ];
24660
24753
  var AiAppSkills = class {
@@ -25337,6 +25430,20 @@ var WorkflowsAppSkills = class {
25337
25430
  return this.runSkill("workflows", "search", input, options);
25338
25431
  }
25339
25432
  };
25433
+ var HostingAppSkills = class {
25434
+ runSkill;
25435
+ constructor(runSkill) {
25436
+ this.runSkill = runSkill;
25437
+ }
25438
+ /**
25439
+ * Check an exact domain name or discover available domain names through Gandi. Use one grouped request per independent name or idea. A fully qualified domain is checked exactly. Put explicitly requested suffixes in tlds and explicit tax country and currency in country and currency; defaults are DE and EUR. Use availability=prefer_available by default: show confirmed available names first and checked in-use names only to fill remaining result slots. Use available_only only when the user wants no in
25440
+ * Description key: app_skills.hosting.search_domains.description
25441
+ * Skill: hosting/search_domains
25442
+ */
25443
+ async searchDomains(input, options) {
25444
+ return this.runSkill("hosting", "search_domains", input, options);
25445
+ }
25446
+ };
25340
25447
  var GeneratedAppSkills = class {
25341
25448
  constructor(runSkill) {
25342
25449
  this.ai = new AiAppSkills(runSkill);
@@ -25350,6 +25457,7 @@ var GeneratedAppSkills = class {
25350
25457
  this.fitness = new FitnessAppSkills(runSkill);
25351
25458
  this.health = new HealthAppSkills(runSkill);
25352
25459
  this.home = new HomeAppSkills(runSkill);
25460
+ this.hosting = new HostingAppSkills(runSkill);
25353
25461
  this.images = new ImagesAppSkills(runSkill);
25354
25462
  this.mail = new MailAppSkills(runSkill);
25355
25463
  this.maps = new MapsAppSkills(runSkill);
@@ -25383,6 +25491,7 @@ var GeneratedAppSkills = class {
25383
25491
  fitness;
25384
25492
  health;
25385
25493
  home;
25494
+ hosting;
25386
25495
  images;
25387
25496
  mail;
25388
25497
  maps;
@@ -56398,6 +56507,14 @@ Only output the final Markdown table. Do NOT include explanations, notes, or any
56398
56507
  }
56399
56508
  }
56400
56509
  },
56510
+ hosting: {
56511
+ search_domains: {
56512
+ text: "Search domains",
56513
+ description: {
56514
+ text: "Check domain availability and indicative registration and renewal prices."
56515
+ }
56516
+ }
56517
+ },
56401
56518
  images: {
56402
56519
  view: {
56403
56520
  text: "Image",
@@ -57194,6 +57311,20 @@ Only output the final Markdown table. Do NOT include explanations, notes, or any
57194
57311
  text: "Research posts and community comments."
57195
57312
  }
57196
57313
  },
57314
+ hosting: {
57315
+ text: "Hosting",
57316
+ description: {
57317
+ text: "Find domain names and check availability and prices."
57318
+ },
57319
+ skills: {
57320
+ search_domains: {
57321
+ text: "Search domains",
57322
+ description: {
57323
+ text: "Check domain availability and indicative registration and renewal prices."
57324
+ }
57325
+ }
57326
+ }
57327
+ },
57197
57328
  web: {
57198
57329
  text: "Web",
57199
57330
  description: {
@@ -58784,6 +58915,179 @@ Only output the final Markdown table. Do NOT include explanations, notes, or any
58784
58915
  }
58785
58916
  }
58786
58917
  },
58918
+ chat_settings: {
58919
+ plan: {
58920
+ text: "Plan"
58921
+ },
58922
+ recipient_decrypting: {
58923
+ text: "Decrypting chat\u2026"
58924
+ },
58925
+ recipient_password_title: {
58926
+ text: "Password Required"
58927
+ },
58928
+ recipient_password_detail: {
58929
+ text: "This shared chat is protected with a password."
58930
+ },
58931
+ recipient_password_placeholder: {
58932
+ text: "Enter password"
58933
+ },
58934
+ recipient_access: {
58935
+ text: "Access Chat"
58936
+ },
58937
+ recipient_unavailable_title: {
58938
+ text: "Unable to Load Chat"
58939
+ },
58940
+ recipient_unavailable_detail: {
58941
+ text: "This shared chat is no longer available or the link is invalid."
58942
+ },
58943
+ recipient_expired: {
58944
+ text: "This shared chat link has expired."
58945
+ },
58946
+ recipient_invalid_password: {
58947
+ text: "Incorrect password. Please try again."
58948
+ },
58949
+ recipient_short_disabled: {
58950
+ text: "This shared chat link is disabled."
58951
+ },
58952
+ recipient_lock_symbol: {
58953
+ text: "\u{1F512}"
58954
+ },
58955
+ recipient_warning_symbol: {
58956
+ text: "\u26A0\uFE0F"
58957
+ },
58958
+ summary_empty: {
58959
+ text: "No summary available yet."
58960
+ },
58961
+ loading_plans: {
58962
+ text: "Loading chat plans..."
58963
+ },
58964
+ loading_tasks: {
58965
+ text: "Loading chat tasks..."
58966
+ },
58967
+ no_plan: {
58968
+ text: "No plan is linked to this chat yet."
58969
+ },
58970
+ no_shared_plan: {
58971
+ text: "No shared plan is available for this chat."
58972
+ },
58973
+ no_tasks: {
58974
+ text: "No tasks are linked to this chat yet."
58975
+ },
58976
+ no_shared_tasks: {
58977
+ text: "No shared tasks are available for this chat."
58978
+ },
58979
+ create_task: {
58980
+ text: "Create task"
58981
+ },
58982
+ creating: {
58983
+ text: "Creating..."
58984
+ },
58985
+ task_title: {
58986
+ text: "What should happen next?"
58987
+ },
58988
+ task_context: {
58989
+ text: "Optional task context"
58990
+ },
58991
+ shared_readonly: {
58992
+ text: "This is a shared chat. Details are read-only for everyone except the owner."
58993
+ },
58994
+ share_readonly: {
58995
+ text: "This shared chat is read-only. Only the owner can change password, expiration, community sharing, or stop sharing."
58996
+ },
58997
+ files: {
58998
+ text: "Files"
58999
+ },
59000
+ download_files: {
59001
+ text: "Download files"
59002
+ },
59003
+ downloadable_empty: {
59004
+ text: "No downloadable files yet"
59005
+ },
59006
+ downloadable_one: {
59007
+ text: "{count} downloadable item"
59008
+ },
59009
+ downloadable_many: {
59010
+ text: "{count} downloadable items"
59011
+ },
59012
+ no_files: {
59013
+ text: "No downloadable files found for this chat yet."
59014
+ },
59015
+ community: {
59016
+ text: "Share with community"
59017
+ },
59018
+ community_detail: {
59019
+ text: "Allow this shared chat to appear in community surfaces."
59020
+ },
59021
+ password: {
59022
+ text: "Password protection"
59023
+ },
59024
+ password_detail: {
59025
+ text: "Require a short password before opening the shared chat."
59026
+ },
59027
+ auto_expire: {
59028
+ text: "Auto expire"
59029
+ },
59030
+ expire_detail: {
59031
+ text: "Expire the share link after 10 minutes."
59032
+ },
59033
+ show_qr: {
59034
+ text: "Show QR code"
59035
+ },
59036
+ hide_qr: {
59037
+ text: "Hide QR code"
59038
+ },
59039
+ show_url: {
59040
+ text: "Show URL"
59041
+ },
59042
+ hide_url: {
59043
+ text: "Hide URL"
59044
+ },
59045
+ stop_sharing: {
59046
+ text: "Stop sharing"
59047
+ },
59048
+ download_chat: {
59049
+ text: "Download chat"
59050
+ },
59051
+ download_zip: {
59052
+ text: "Download chat zip"
59053
+ },
59054
+ link_unavailable: {
59055
+ text: "The original share link is not stored on this device. Open the chat from its share link again to save it here."
59056
+ },
59057
+ short_fallback: {
59058
+ text: "Short link unavailable. Using a long encrypted link."
59059
+ },
59060
+ share_failed: {
59061
+ text: "Could not create share link."
59062
+ },
59063
+ stop_failed: {
59064
+ text: "Could not stop sharing."
59065
+ },
59066
+ password_invalid: {
59067
+ text: "Use a password between 1 and 10 characters."
59068
+ },
59069
+ export_failed: {
59070
+ text: "Could not download chat data."
59071
+ },
59072
+ usage_empty: {
59073
+ text: "No usage entries available for this chat yet."
59074
+ },
59075
+ download_usage: {
59076
+ text: "Download usage data"
59077
+ },
59078
+ share_created: {
59079
+ text: "Share link created."
59080
+ },
59081
+ ten_minutes: {
59082
+ text: "10 minutes"
59083
+ },
59084
+ never: {
59085
+ text: "never"
59086
+ },
59087
+ progress: {
59088
+ text: "{percent}% complete"
59089
+ }
59090
+ },
58787
59091
  chats: {
58788
59092
  chat: {
58789
59093
  welcome: {
@@ -66576,7 +66880,7 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
66576
66880
  text: "Web, search, and content retrieval (only when you use a web or search skill)"
66577
66881
  },
66578
66882
  description: {
66579
- text: "These providers are only used when you invoke a web, videos, news, web-read, or design icon search skill. They see the content of what you search for, the URLs you ask to read, or the public icon identifiers you ask to preview, but no user identifier \u2014 they do not know which OpenMates user made each request."
66883
+ text: "These providers are used only when you use web, media, icon, or domain search and reading skills. They may receive your query, requested URL, or domain name, but no OpenMates user identifier."
66580
66884
  },
66581
66885
  brave: {
66582
66886
  heading: {
@@ -66603,6 +66907,9 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
66603
66907
  }
66604
66908
  },
66605
66909
  webshare: {
66910
+ domain_fallback: {
66911
+ text: "For domain searches, Webshare is a fallback when the direct Gandi request fails. It sees the Gandi host and connection metadata, but cannot read the HTTPS-encrypted domain query or an OpenMates user identifier."
66912
+ },
66606
66913
  heading: {
66607
66914
  text: "Webshare (rotating proxy)"
66608
66915
  },
@@ -66610,6 +66917,14 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
66610
66917
  text: "Webshare provides a rotating proxy for requests to services that would otherwise block us. We route YouTube transcript requests (for the videos get-transcript skill) and doctor appointment searches (for the health search-appointments skill \u2014 see Group H) through Webshare. Webshare sees the URLs we route through it."
66611
66918
  }
66612
66919
  },
66920
+ gandi: {
66921
+ heading: {
66922
+ text: "Gandi (domain search)"
66923
+ },
66924
+ description: {
66925
+ text: "Gandi receives domain names or search keywords, country and currency when you use Hosting's domain search. OpenMates sends requests from its server over HTTPS without your OpenMates user identifier or Gandi credentials. Prices are indicative; no registration is performed."
66926
+ }
66927
+ },
66613
66928
  google_maps: {
66614
66929
  heading: {
66615
66930
  text: "Google Maps Platform (places search)"
@@ -70398,6 +70713,51 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
70398
70713
  }
70399
70714
  },
70400
70715
  app_settings_memories: {
70716
+ validation_key_length: {
70717
+ text: "Key must be {limit} characters or fewer"
70718
+ },
70719
+ validation_value_length: {
70720
+ text: "Value must be {limit} characters or fewer"
70721
+ },
70722
+ validation_required: {
70723
+ text: "{field} is required"
70724
+ },
70725
+ validation_length: {
70726
+ text: "{field} must be {limit} characters or fewer"
70727
+ },
70728
+ validation_integer: {
70729
+ text: "{field} must be an integer"
70730
+ },
70731
+ validation_number: {
70732
+ text: "{field} must be a number"
70733
+ },
70734
+ validation_boolean: {
70735
+ text: "{field} must be true or false"
70736
+ },
70737
+ validation_json: {
70738
+ text: "{field} must contain valid JSON"
70739
+ },
70740
+ validation_json_array: {
70741
+ text: "{field} must contain a JSON array"
70742
+ },
70743
+ validation_json_object: {
70744
+ text: "{field} must contain a JSON object"
70745
+ },
70746
+ validation_unsupported_type: {
70747
+ text: "Unsupported field type: {type}"
70748
+ },
70749
+ validation_allowed_value: {
70750
+ text: "{field} must be one of the allowed values"
70751
+ },
70752
+ validation_minimum: {
70753
+ text: "{field} must be at least {limit}"
70754
+ },
70755
+ validation_maximum: {
70756
+ text: "{field} must be at most {limit}"
70757
+ },
70758
+ validation_invalid_type: {
70759
+ text: "{field} contains an invalid value"
70760
+ },
70401
70761
  text: "Memories",
70402
70762
  item_key_required: {
70403
70763
  text: "Entry key is required"
@@ -71023,6 +71383,16 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
71023
71383
  }
71024
71384
  },
71025
71385
  app_store_examples: {
71386
+ hosting: {
71387
+ search_domains: {
71388
+ "1": {
71389
+ text: "Check if example.com is available"
71390
+ },
71391
+ "2": {
71392
+ text: "Find available domain names for a coffee shop"
71393
+ }
71394
+ }
71395
+ },
71026
71396
  web: {
71027
71397
  search: {
71028
71398
  "1": {
@@ -77021,6 +77391,88 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
77021
77391
  }
77022
77392
  },
77023
77393
  workflows: {
77394
+ sidebar: {
77395
+ loading: {
77396
+ text: "Loading workflows..."
77397
+ },
77398
+ empty: {
77399
+ text: "No workflows yet."
77400
+ },
77401
+ manual: {
77402
+ text: "Manual"
77403
+ }
77404
+ },
77405
+ home: {
77406
+ greeting: {
77407
+ text: "Hey {name}!"
77408
+ },
77409
+ fallback_name: {
77410
+ text: "there"
77411
+ },
77412
+ subtitle: {
77413
+ text: "What do you want to automate next?"
77414
+ },
77415
+ show_all: {
77416
+ text: "Show all"
77417
+ },
77418
+ back_to_recent: {
77419
+ text: "Back to recent"
77420
+ },
77421
+ search: {
77422
+ text: "Search"
77423
+ },
77424
+ search_unavailable: {
77425
+ text: "Workflow search is coming soon."
77426
+ },
77427
+ retention_none: {
77428
+ text: "No durable run content"
77429
+ },
77430
+ retention_last5: {
77431
+ text: "Keep latest 5 encrypted runs"
77432
+ },
77433
+ badge_new: {
77434
+ text: "New"
77435
+ },
77436
+ badge_enabled: {
77437
+ text: "Enabled"
77438
+ },
77439
+ badge_paused: {
77440
+ text: "Paused"
77441
+ },
77442
+ starter_badge: {
77443
+ text: "Starter"
77444
+ },
77445
+ starter_rain_title: {
77446
+ text: "Daily weather and news"
77447
+ },
77448
+ starter_rain_summary: {
77449
+ text: "Rain timing and the latest articles in a new chat"
77450
+ },
77451
+ starter_news_title: {
77452
+ text: "Weekly AI events"
77453
+ },
77454
+ starter_news_summary: {
77455
+ text: "Discover AI events for the upcoming week"
77456
+ },
77457
+ starter_apartments_title: {
77458
+ text: "Find new apartments every hour"
77459
+ },
77460
+ starter_apartments_summary: {
77461
+ text: "Only previously undelivered listings"
77462
+ },
77463
+ inspiration_phrase: {
77464
+ text: "A useful workflow starts with one trigger, one decision, and one visible result."
77465
+ },
77466
+ inspiration_title: {
77467
+ text: "Design a Workflow Trigger"
77468
+ },
77469
+ inspiration_feature_title: {
77470
+ text: "Workflow planning tip"
77471
+ },
77472
+ inspiration_feature_description: {
77473
+ text: "Start automation with a clear trigger."
77474
+ }
77475
+ },
77024
77476
  template_share: {
77025
77477
  title: {
77026
77478
  text: "Share as template"
@@ -77036,6 +77488,81 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
77036
77488
  },
77037
77489
  revoked: {
77038
77490
  text: "Template access revoked."
77491
+ },
77492
+ owner_description: {
77493
+ text: "Recipients import a disabled copy and reconnect their own accounts, schedules, permissions, and notification preferences."
77494
+ },
77495
+ preparing: {
77496
+ text: "Preparing..."
77497
+ },
77498
+ copy_short: {
77499
+ text: "Copy short link"
77500
+ },
77501
+ copy_offline: {
77502
+ text: "Copy offline link"
77503
+ },
77504
+ revoke: {
77505
+ text: "Revoke template access"
77506
+ },
77507
+ restore: {
77508
+ text: "Restore template access"
77509
+ },
77510
+ link_created: {
77511
+ text: "Short template link created."
77512
+ },
77513
+ link_copied: {
77514
+ text: "Link copied."
77515
+ },
77516
+ access_restored: {
77517
+ text: "Template access restored. Create a new short link to share it again."
77518
+ },
77519
+ preview_label: {
77520
+ text: "Workflow template"
77521
+ },
77522
+ import_disabled: {
77523
+ text: "Imported workflows start disabled."
77524
+ },
77525
+ preview_step_summary: {
77526
+ text: "{count} steps. Imported workflows start disabled."
77527
+ },
77528
+ importing: {
77529
+ text: "Importing..."
77530
+ },
77531
+ complete_before_enable: {
77532
+ text: "Complete before enabling"
77533
+ },
77534
+ binding_explanation: {
77535
+ text: "This imported workflow remains disabled until these recipient-owned bindings are confirmed."
77536
+ },
77537
+ binding_schedule: {
77538
+ text: "Choose your schedule and timezone"
77539
+ },
77540
+ binding_app_skill: {
77541
+ text: "Connect"
77542
+ },
77543
+ binding_notifications: {
77544
+ text: "Choose notification preferences"
77545
+ },
77546
+ binding_other: {
77547
+ text: "Complete requirement"
77548
+ },
77549
+ mark_complete: {
77550
+ text: "Mark complete"
77551
+ },
77552
+ completed: {
77553
+ text: "Completed"
77554
+ },
77555
+ enabling: {
77556
+ text: "Enabling..."
77557
+ },
77558
+ enable: {
77559
+ text: "Enable workflow"
77560
+ },
77561
+ import_done: {
77562
+ text: "Workflow imported disabled. Complete its binding requirements before enabling it."
77563
+ },
77564
+ binding_done: {
77565
+ text: "Binding requirement completed."
77039
77566
  }
77040
77567
  },
77041
77568
  version_history: {
@@ -77105,7 +77632,7 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
77105
77632
  text: "New"
77106
77633
  },
77107
77634
  ai_edit_placeholder: {
77108
- text: "Describe a change to this workflow"
77635
+ text: "Describe workflow change."
77109
77636
  },
77110
77637
  ai_edit_submit: {
77111
77638
  text: "Update workflow"
@@ -77603,7 +78130,7 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
77603
78130
  text: "Chat title"
77604
78131
  },
77605
78132
  message_placeholder: {
77606
- text: "Enter the message here. Type @ to add a variable from an earlier step, or select one below."
78133
+ text: "Enter the message here. Type @ to add a variable from an earlier step."
77607
78134
  },
77608
78135
  only_new_results: {
77609
78136
  text: "Only results not previously sent"
@@ -77884,6 +78411,12 @@ As of mid-2026, the severe supply shocks from the 2024\u20132025 avian flu have
77884
78411
  file_binding_failed: {
77885
78412
  text: "Could not confirm this binding."
77886
78413
  },
78414
+ ai_create_submit: {
78415
+ text: "Create workflow"
78416
+ },
78417
+ ai_create_submitting: {
78418
+ text: "Creating..."
78419
+ },
77887
78420
  website_text: {
77888
78421
  text: "Page text"
77889
78422
  },
package/dist/cli.js CHANGED
@@ -19,7 +19,7 @@ import {
19
19
  serializeToYaml,
20
20
  shouldRequireTrustedAccountGuard,
21
21
  waitForWorkflowRun
22
- } from "./chunk-MV74J4GG.js";
22
+ } from "./chunk-NFIFSGES.js";
23
23
  import "./chunk-IWKP55ZB.js";
24
24
  import "./chunk-BBKJZ23O.js";
25
25
  export {
package/dist/index.d.ts CHANGED
@@ -4313,6 +4313,84 @@ declare const APP_SKILL_METADATA: readonly [{
4313
4313
  };
4314
4314
  };
4315
4315
  };
4316
+ }, {
4317
+ readonly app_id: "hosting";
4318
+ readonly skill_id: "search_domains";
4319
+ readonly app_namespace_ts: "hosting";
4320
+ readonly skill_method_ts: "searchDomains";
4321
+ readonly app_namespace_py: "hosting";
4322
+ readonly skill_method_py: "search_domains";
4323
+ readonly description_key: "app_skills.hosting.search_domains.description";
4324
+ readonly description: "Check an exact domain name or discover available domain names through Gandi. Use one grouped request per independent name or idea. A fully qualified domain is checked exactly. Put explicitly requested suffixes in tlds and explicit tax country and currency in country and currency; defaults are DE and EUR. Use availability=prefer_available by default: show confirmed available names first and checked in-use names only to fill remaining result slots. Use available_only only when the user wants no in";
4325
+ readonly schema: {
4326
+ readonly type: "object";
4327
+ readonly properties: {
4328
+ readonly requests: {
4329
+ readonly type: "array";
4330
+ readonly minItems: 1;
4331
+ readonly maxItems: 5;
4332
+ readonly description: "One to five independent domain checks or name searches.";
4333
+ readonly items: {
4334
+ readonly type: "object";
4335
+ readonly properties: {
4336
+ readonly id: {
4337
+ readonly description: "Optional caller ID echoed in this group's result.";
4338
+ readonly oneOf: readonly [{
4339
+ readonly type: "string";
4340
+ }, {
4341
+ readonly type: "integer";
4342
+ }];
4343
+ };
4344
+ readonly query: {
4345
+ readonly type: "string";
4346
+ readonly description: "An exact fully qualified domain (up to 253 characters), a short name, or a keyword idea (up to 100 characters).";
4347
+ readonly minLength: 1;
4348
+ readonly maxLength: 253;
4349
+ };
4350
+ readonly tlds: {
4351
+ readonly type: "array";
4352
+ readonly maxItems: 5;
4353
+ readonly items: {
4354
+ readonly type: "string";
4355
+ };
4356
+ readonly description: "Optional suffixes such as .com or .net. For a short single-label name, check each exact name plus suffix before suggestions.\n";
4357
+ };
4358
+ readonly country: {
4359
+ readonly type: "string";
4360
+ readonly default: "DE";
4361
+ readonly description: "Two-letter tax country code; returned explicitly with prices.";
4362
+ };
4363
+ readonly currency: {
4364
+ readonly type: "string";
4365
+ readonly default: "EUR";
4366
+ readonly enum: readonly ["EUR", "USD"];
4367
+ readonly description: "Supported quote currency. Unsupported currencies are rejected.";
4368
+ };
4369
+ readonly max_results: {
4370
+ readonly type: "integer";
4371
+ readonly minimum: 1;
4372
+ readonly maximum: 20;
4373
+ readonly default: 10;
4374
+ readonly description: "Maximum selected results per group. Checked pool remains at most 40.";
4375
+ };
4376
+ readonly availability: {
4377
+ readonly type: "string";
4378
+ readonly enum: readonly ["prefer_available", "available_only", "all"];
4379
+ readonly default: "prefer_available";
4380
+ readonly description: "prefer_available selects confirmed available first, then checked unavailable names only to fill a shortfall. available_only never fills with unavailable. all preserves ranked checked available and unavailable order. Unknown checks remain diagnostic only.\n";
4381
+ };
4382
+ readonly relevance_criteria: {
4383
+ readonly type: "string";
4384
+ readonly maxLength: 1000;
4385
+ readonly description: "Optional natural-language goal for ranking checked candidates. Set when the user states a material brand, name-fit, renewal-price, term, premium, or restriction preference that should change order. Copy the goal faithfully; omit for neutral lookup or discovery. Ranking uses only evidenced provider facts and drops scores below 1.\n";
4386
+ };
4387
+ };
4388
+ readonly required: readonly ["query"];
4389
+ };
4390
+ };
4391
+ };
4392
+ readonly required: readonly ["requests"];
4393
+ };
4316
4394
  }];
4317
4395
  declare class AiAppSkills {
4318
4396
  private readonly runSkill;
@@ -4808,6 +4886,16 @@ declare class WorkflowsAppSkills {
4808
4886
  */
4809
4887
  search<T = unknown>(input: SkillInput, options?: AppSkillRunOptions): Promise<T>;
4810
4888
  }
4889
+ declare class HostingAppSkills {
4890
+ private readonly runSkill;
4891
+ constructor(runSkill: AppSkillRunner);
4892
+ /**
4893
+ * Check an exact domain name or discover available domain names through Gandi. Use one grouped request per independent name or idea. A fully qualified domain is checked exactly. Put explicitly requested suffixes in tlds and explicit tax country and currency in country and currency; defaults are DE and EUR. Use availability=prefer_available by default: show confirmed available names first and checked in-use names only to fill remaining result slots. Use available_only only when the user wants no in
4894
+ * Description key: app_skills.hosting.search_domains.description
4895
+ * Skill: hosting/search_domains
4896
+ */
4897
+ searchDomains<T = unknown>(input: SkillInput, options?: AppSkillRunOptions): Promise<T>;
4898
+ }
4811
4899
  declare class GeneratedAppSkills {
4812
4900
  constructor(runSkill: AppSkillRunner);
4813
4901
  readonly ai: AiAppSkills;
@@ -4821,6 +4909,7 @@ declare class GeneratedAppSkills {
4821
4909
  readonly fitness: FitnessAppSkills;
4822
4910
  readonly health: HealthAppSkills;
4823
4911
  readonly home: HomeAppSkills;
4912
+ readonly hosting: HostingAppSkills;
4824
4913
  readonly images: ImagesAppSkills;
4825
4914
  readonly mail: MailAppSkills;
4826
4915
  readonly maps: MapsAppSkills;
package/dist/index.js CHANGED
@@ -43,7 +43,7 @@ import {
43
43
  selectAssistantMessagesForSpeech,
44
44
  serializeToYaml,
45
45
  summarizeAssistantSpeech
46
- } from "./chunk-MV74J4GG.js";
46
+ } from "./chunk-NFIFSGES.js";
47
47
  import "./chunk-IWKP55ZB.js";
48
48
  import "./chunk-BBKJZ23O.js";
49
49
  export {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openmates",
3
- "version": "0.23.0-alpha.6",
3
+ "version": "0.23.0-alpha.7",
4
4
  "description": "OpenMates CLI and SDK",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",