sim-setup 1.0.0-dev.15.1 → 1.0.0-dev.22.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.js +376 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1546,6 +1546,7 @@ var init_env_capabilities = __esm(() => {
|
|
|
1546
1546
|
"google-forms",
|
|
1547
1547
|
"google-groups",
|
|
1548
1548
|
"google-meet",
|
|
1549
|
+
"google-chat",
|
|
1549
1550
|
"vertex-ai"
|
|
1550
1551
|
]);
|
|
1551
1552
|
MICROSOFT_OAUTH_SERVICES = new Set([
|
|
@@ -1565,7 +1566,7 @@ var init_env_capabilities = __esm(() => {
|
|
|
1565
1566
|
var integrations_default;
|
|
1566
1567
|
var init_integrations = __esm(() => {
|
|
1567
1568
|
integrations_default = {
|
|
1568
|
-
updatedAt: "2026-08-
|
|
1569
|
+
updatedAt: "2026-08-21",
|
|
1569
1570
|
integrations: [
|
|
1570
1571
|
{
|
|
1571
1572
|
type: "onepassword",
|
|
@@ -1626,6 +1627,305 @@ var init_integrations = __esm(() => {
|
|
|
1626
1627
|
integrationType: "security",
|
|
1627
1628
|
tags: ["secrets-management", "identity"]
|
|
1628
1629
|
},
|
|
1630
|
+
{
|
|
1631
|
+
type: "affinity",
|
|
1632
|
+
slug: "affinity",
|
|
1633
|
+
name: "Affinity",
|
|
1634
|
+
description: "Read and write companies, people, lists, notes, and relationships in Affinity",
|
|
1635
|
+
longDescription: "Integrates the Affinity v2 API into the workflow. Read and search companies, people, and opportunities, page the rows of any list or saved view, read and write field values one at a time or a hundred at once, write and reply to notes, create reminders, follow logged calls, emails, meetings, and transcripts, find warm introductions through shared work and investment history, search notes and files by keyword, find companies from a description in plain language, and follow the field-value change feed for delta sync. What each operation can reach depends on the permissions granted to the API key.",
|
|
1636
|
+
bgColor: "#1B1C1E",
|
|
1637
|
+
iconName: "AffinityIcon",
|
|
1638
|
+
docsUrl: "https://docs.sim.ai/integrations/affinity",
|
|
1639
|
+
operations: [
|
|
1640
|
+
{
|
|
1641
|
+
name: "List Companies",
|
|
1642
|
+
description: "Page through companies. Companies come back without field data unless Field IDs or Field Types asks for it."
|
|
1643
|
+
},
|
|
1644
|
+
{
|
|
1645
|
+
name: "Get Company",
|
|
1646
|
+
description: "Look up one company by ID. Field data is returned only for the Field IDs or Field Types asked for."
|
|
1647
|
+
},
|
|
1648
|
+
{
|
|
1649
|
+
name: "Search Companies",
|
|
1650
|
+
description: 'Search companies by filters, sorts, and a free-text term. Requires the "Export All Organizations directory" permission.'
|
|
1651
|
+
},
|
|
1652
|
+
{
|
|
1653
|
+
name: "List People",
|
|
1654
|
+
description: "Page through persons. Persons come back without field data unless Field IDs or Field Types asks for it."
|
|
1655
|
+
},
|
|
1656
|
+
{
|
|
1657
|
+
name: "Get Person",
|
|
1658
|
+
description: "Look up one person by ID. Field data is returned only for the Field IDs or Field Types asked for."
|
|
1659
|
+
},
|
|
1660
|
+
{
|
|
1661
|
+
name: "Search People",
|
|
1662
|
+
description: 'Search persons by filters, sorts, and a free-text term. Requires the "Export All People directory" permission.'
|
|
1663
|
+
},
|
|
1664
|
+
{
|
|
1665
|
+
name: "List Opportunities",
|
|
1666
|
+
description: "Page through opportunities. Field data lives on the list entry, not here — read it through the list or saved view the opportunity belongs to."
|
|
1667
|
+
},
|
|
1668
|
+
{
|
|
1669
|
+
name: "Get Opportunity",
|
|
1670
|
+
description: "Read one opportunity and the list it belongs to. Its field data lives on the list entry."
|
|
1671
|
+
},
|
|
1672
|
+
{
|
|
1673
|
+
name: "List Notes On Entity",
|
|
1674
|
+
description: "List the notes relevant to one company, person, or opportunity — directly attached notes plus notes reaching it through its people and meetings."
|
|
1675
|
+
},
|
|
1676
|
+
{
|
|
1677
|
+
name: "List Lists Holding Entity",
|
|
1678
|
+
description: "List every list a company or person appears on that the caller can view."
|
|
1679
|
+
},
|
|
1680
|
+
{
|
|
1681
|
+
name: "List Rows Holding Entity",
|
|
1682
|
+
description: "Page through a company's or person's rows across every list, each carrying that list's field values and when the entity was added."
|
|
1683
|
+
},
|
|
1684
|
+
{
|
|
1685
|
+
name: "List Entity Relationships",
|
|
1686
|
+
description: "List who knows a company or person, scored 0.0 to 1.0 by how much the two actually interact. Strongest first by default."
|
|
1687
|
+
},
|
|
1688
|
+
{
|
|
1689
|
+
name: "List Field Metadata",
|
|
1690
|
+
description: "List the non-list company or person fields, with the value type, filter operators, and sort support of each. Start here to find the Field IDs the read and write tools take."
|
|
1691
|
+
},
|
|
1692
|
+
{
|
|
1693
|
+
name: "List Field Dropdown Options",
|
|
1694
|
+
description: "List the selectable options on a dropdown or ranked-dropdown company or person field. Writing such a field needs the option ID, not its text."
|
|
1695
|
+
},
|
|
1696
|
+
{
|
|
1697
|
+
name: "List Entity Field Values",
|
|
1698
|
+
description: "Page through a company's or person's non-list field values. List fields are not returned here — read those through the list entry."
|
|
1699
|
+
},
|
|
1700
|
+
{
|
|
1701
|
+
name: "Get Entity Field Value",
|
|
1702
|
+
description: "Read one non-list field value from a company or person."
|
|
1703
|
+
},
|
|
1704
|
+
{
|
|
1705
|
+
name: "Update Entity Field Value",
|
|
1706
|
+
description: "Write one non-list field value on a company or person. The value type must match how the field is defined."
|
|
1707
|
+
},
|
|
1708
|
+
{
|
|
1709
|
+
name: "Batch Update Entity Fields",
|
|
1710
|
+
description: "Write up to 100 non-list field values on one company or person in a single request."
|
|
1711
|
+
},
|
|
1712
|
+
{
|
|
1713
|
+
name: "List Lists",
|
|
1714
|
+
description: "Page through the lists in the organization that the caller can view."
|
|
1715
|
+
},
|
|
1716
|
+
{
|
|
1717
|
+
name: "Create List",
|
|
1718
|
+
description: "Create a list. Its type fixes which entities it can hold, and the API key holder becomes its creator and owner."
|
|
1719
|
+
},
|
|
1720
|
+
{
|
|
1721
|
+
name: "Get List",
|
|
1722
|
+
description: "Read one list — its name, type, owner, and privacy setting."
|
|
1723
|
+
},
|
|
1724
|
+
{
|
|
1725
|
+
name: "List List Fields",
|
|
1726
|
+
description: "List the fields available on one list, including its list-specific columns. Use these Field IDs when reading or writing list entries."
|
|
1727
|
+
},
|
|
1728
|
+
{
|
|
1729
|
+
name: "List List Field Dropdown Options",
|
|
1730
|
+
description: "List the selectable options on a dropdown, ranked-dropdown, or status-dropdown field of a list."
|
|
1731
|
+
},
|
|
1732
|
+
{
|
|
1733
|
+
name: "Create List Field Dropdown Option",
|
|
1734
|
+
description: "Add a selectable option to a dropdown field on a list. A ranked or status option also needs a rank and a color."
|
|
1735
|
+
},
|
|
1736
|
+
{
|
|
1737
|
+
name: "Get List Field Dropdown Option",
|
|
1738
|
+
description: "Read one dropdown option on a list field."
|
|
1739
|
+
},
|
|
1740
|
+
{
|
|
1741
|
+
name: "Update List Field Dropdown Option",
|
|
1742
|
+
description: "Change a dropdown option on a list field. Every field is optional — supply only what should change, and only fields the option's kind actually has."
|
|
1743
|
+
},
|
|
1744
|
+
{
|
|
1745
|
+
name: "Delete List Field Dropdown Option",
|
|
1746
|
+
description: "Permanently delete a dropdown option on a list field. Every list entry currently set to it is cleared, and those values cannot be recovered."
|
|
1747
|
+
},
|
|
1748
|
+
{
|
|
1749
|
+
name: "List List Entries",
|
|
1750
|
+
description: "Page through the rows of a list. Rows come back without field data unless Field IDs or Field Types asks for it."
|
|
1751
|
+
},
|
|
1752
|
+
{
|
|
1753
|
+
name: "Search List Entries",
|
|
1754
|
+
description: 'Search the rows of one list by filters, sorts, and a free-text term. Requires the "Export data from Lists" permission.'
|
|
1755
|
+
},
|
|
1756
|
+
{
|
|
1757
|
+
name: "Get List Entry",
|
|
1758
|
+
description: "Read one row of a list with its entity. Field data is returned only for the Field IDs or Field Types asked for."
|
|
1759
|
+
},
|
|
1760
|
+
{
|
|
1761
|
+
name: "List List Entry Fields",
|
|
1762
|
+
description: "Page through every field value on one list row, including the list-specific columns. All fields are returned unless narrowed."
|
|
1763
|
+
},
|
|
1764
|
+
{
|
|
1765
|
+
name: "Get List Entry Field",
|
|
1766
|
+
description: "Read one field value on a list row."
|
|
1767
|
+
},
|
|
1768
|
+
{
|
|
1769
|
+
name: "Update List Entry Field",
|
|
1770
|
+
description: 'Write one field value on a list row. Requires the "Export data from Lists" permission.'
|
|
1771
|
+
},
|
|
1772
|
+
{
|
|
1773
|
+
name: "Batch Update List Entry Fields",
|
|
1774
|
+
description: 'Write up to 100 field values on one list row in a single request. Requires the "Export data from Lists" permission.'
|
|
1775
|
+
},
|
|
1776
|
+
{
|
|
1777
|
+
name: "List List Entry Field Value Changes",
|
|
1778
|
+
description: "Page through the history of one list row — who changed which field, when, and to what."
|
|
1779
|
+
},
|
|
1780
|
+
{
|
|
1781
|
+
name: "List Saved Views",
|
|
1782
|
+
description: "List the saved views on a list that the caller can view."
|
|
1783
|
+
},
|
|
1784
|
+
{
|
|
1785
|
+
name: "Get Saved View",
|
|
1786
|
+
description: "Read one saved view — its name, kind, and creation date."
|
|
1787
|
+
},
|
|
1788
|
+
{
|
|
1789
|
+
name: "List Saved View Entries",
|
|
1790
|
+
description: "Page through the rows of a saved view. The view's own filters and columns decide which rows and which field data come back."
|
|
1791
|
+
},
|
|
1792
|
+
{
|
|
1793
|
+
name: "List Notes",
|
|
1794
|
+
description: "Page through every note the caller can see. Replies are excluded."
|
|
1795
|
+
},
|
|
1796
|
+
{
|
|
1797
|
+
name: "Create Note",
|
|
1798
|
+
description: "Write a note — attached to companies, persons, and opportunities, anchored to a meeting, call, or chat message, or posted as a reply to an existing note."
|
|
1799
|
+
},
|
|
1800
|
+
{
|
|
1801
|
+
name: "Search Notes",
|
|
1802
|
+
description: "Search notes by keyword, ordered by relevance. Narrow to specific notes or to one company, or leave both unset to search the whole account."
|
|
1803
|
+
},
|
|
1804
|
+
{
|
|
1805
|
+
name: "Get Note",
|
|
1806
|
+
description: "Read one note with its body, author, mentions, and attached records."
|
|
1807
|
+
},
|
|
1808
|
+
{
|
|
1809
|
+
name: "Update Note",
|
|
1810
|
+
description: "Rewrite a note's body or replace which records it is attached to. Each list of IDs replaces that association wholesale, an empty list clears it, and omitting one leaves it untouched. A note's type cannot be changed."
|
|
1811
|
+
},
|
|
1812
|
+
{
|
|
1813
|
+
name: "Delete Note",
|
|
1814
|
+
description: "Delete a note you created. Deleting a root note also deletes its replies; deleting a reply removes only that reply."
|
|
1815
|
+
},
|
|
1816
|
+
{
|
|
1817
|
+
name: "List Note Replies",
|
|
1818
|
+
description: "Page through the replies on one note, including AI Notetaker replies."
|
|
1819
|
+
},
|
|
1820
|
+
{
|
|
1821
|
+
name: "List Note Attached Companies",
|
|
1822
|
+
description: "List the companies directly attached to one note."
|
|
1823
|
+
},
|
|
1824
|
+
{
|
|
1825
|
+
name: "List Note Attached People",
|
|
1826
|
+
description: "List the persons directly attached to one note."
|
|
1827
|
+
},
|
|
1828
|
+
{
|
|
1829
|
+
name: "List Note Attached Opportunities",
|
|
1830
|
+
description: "List the opportunities directly attached to one note."
|
|
1831
|
+
},
|
|
1832
|
+
{
|
|
1833
|
+
name: "List Calls",
|
|
1834
|
+
description: "Page through logged calls and their participants. Only calls the API key holder can see are returned."
|
|
1835
|
+
},
|
|
1836
|
+
{
|
|
1837
|
+
name: "List Chat Messages",
|
|
1838
|
+
description: "Page through logged chat messages and their participants. Only messages the API key holder can see are returned."
|
|
1839
|
+
},
|
|
1840
|
+
{
|
|
1841
|
+
name: "List Emails",
|
|
1842
|
+
description: "Page through email metadata — subject, participants, and timestamps. Affinity never exposes email bodies through the API."
|
|
1843
|
+
},
|
|
1844
|
+
{
|
|
1845
|
+
name: "List Meetings",
|
|
1846
|
+
description: "Page through past and upcoming meetings with their organizer and attendees."
|
|
1847
|
+
},
|
|
1848
|
+
{
|
|
1849
|
+
name: "List Transcripts",
|
|
1850
|
+
description: "Page through meeting transcript metadata. Read one transcript to get what was actually said."
|
|
1851
|
+
},
|
|
1852
|
+
{
|
|
1853
|
+
name: "Get Transcript",
|
|
1854
|
+
description: "Read one transcript with its first 100 fragments. Page the fragments endpoint for a longer meeting."
|
|
1855
|
+
},
|
|
1856
|
+
{
|
|
1857
|
+
name: "List Transcript Fragments",
|
|
1858
|
+
description: "Page through everything said in a meeting, segment by segment with the speaker."
|
|
1859
|
+
},
|
|
1860
|
+
{
|
|
1861
|
+
name: "List Reminders",
|
|
1862
|
+
description: "Page through the reminders the caller can see. Filter by status to surface what is overdue."
|
|
1863
|
+
},
|
|
1864
|
+
{
|
|
1865
|
+
name: "Create Reminder",
|
|
1866
|
+
description: "Create a reminder on one company, person, or opportunity. A recurring reminder resets whenever the chosen signal happens instead of firing once."
|
|
1867
|
+
},
|
|
1868
|
+
{
|
|
1869
|
+
name: "List Merges",
|
|
1870
|
+
description: "Page through the company or person merges the organization has run, with the status and the records involved in each."
|
|
1871
|
+
},
|
|
1872
|
+
{
|
|
1873
|
+
name: "Create Merge",
|
|
1874
|
+
description: 'Fold a duplicate company or person into the record you are keeping. The merge runs asynchronously — poll the returned task to see it finish. Requires the "Manage duplicates" permission and an admin role.'
|
|
1875
|
+
},
|
|
1876
|
+
{
|
|
1877
|
+
name: "Get Merge",
|
|
1878
|
+
description: "Read the status of one company or person merge, including why it failed if it did."
|
|
1879
|
+
},
|
|
1880
|
+
{
|
|
1881
|
+
name: "List Merge Tasks",
|
|
1882
|
+
description: "Page through merge tasks, each summarizing how many of its merges are in progress, succeeded, or failed."
|
|
1883
|
+
},
|
|
1884
|
+
{
|
|
1885
|
+
name: "Get Merge Task",
|
|
1886
|
+
description: "Read one merge task and how its merges are progressing. Poll this after starting a merge."
|
|
1887
|
+
},
|
|
1888
|
+
{
|
|
1889
|
+
name: "Semantic Search",
|
|
1890
|
+
description: "Find companies from a description in plain language — industry, technology, stage, or business model. Currently searches companies only."
|
|
1891
|
+
},
|
|
1892
|
+
{
|
|
1893
|
+
name: "Search Files",
|
|
1894
|
+
description: "Search files by keyword, ordered by relevance. Narrow to specific files or to one company, or leave both unset to search the whole account."
|
|
1895
|
+
},
|
|
1896
|
+
{
|
|
1897
|
+
name: "List Coworker Connections",
|
|
1898
|
+
description: "Find warm paths into a company through shared work history: who in your Affinity data once worked alongside the people you want to reach. Grouped by target, strongest first."
|
|
1899
|
+
},
|
|
1900
|
+
{
|
|
1901
|
+
name: "List Investor Executive Connections",
|
|
1902
|
+
description: "Find warm paths into a company through investment history: which investors in your Affinity data backed a company the people you want to reach once led. Grouped by target, strongest first."
|
|
1903
|
+
},
|
|
1904
|
+
{
|
|
1905
|
+
name: "List Field Value Changes",
|
|
1906
|
+
description: "Page through field value changes across the whole workspace. Built for delta sync: follow nextCursor to the end of a run, then resume from the last cursor next time."
|
|
1907
|
+
},
|
|
1908
|
+
{
|
|
1909
|
+
name: "List Users",
|
|
1910
|
+
description: 'Page through the internal users in the organization. Email addresses and roles are returned only to callers with the "Manage Users" permission.'
|
|
1911
|
+
},
|
|
1912
|
+
{
|
|
1913
|
+
name: "Get User",
|
|
1914
|
+
description: "Read one internal user. A user and their person record share the same numeric ID, so a person ID works here."
|
|
1915
|
+
},
|
|
1916
|
+
{
|
|
1917
|
+
name: "Get Current User",
|
|
1918
|
+
description: "Verify an Affinity API key and return the tenant, the user behind the key, and the scopes the grant carries."
|
|
1919
|
+
}
|
|
1920
|
+
],
|
|
1921
|
+
operationCount: 70,
|
|
1922
|
+
triggers: [],
|
|
1923
|
+
triggerCount: 0,
|
|
1924
|
+
authType: "api-key",
|
|
1925
|
+
category: "tools",
|
|
1926
|
+
integrationType: "sales",
|
|
1927
|
+
tags: ["sales-engagement", "enrichment"]
|
|
1928
|
+
},
|
|
1629
1929
|
{
|
|
1630
1930
|
type: "agentmail",
|
|
1631
1931
|
slug: "agentmail",
|
|
@@ -11718,6 +12018,77 @@ var init_integrations = __esm(() => {
|
|
|
11718
12018
|
integrationType: "devops",
|
|
11719
12019
|
tags: ["version-control", "knowledge-base"]
|
|
11720
12020
|
},
|
|
12021
|
+
{
|
|
12022
|
+
type: "harmonic",
|
|
12023
|
+
slug: "harmonic",
|
|
12024
|
+
name: "Harmonic",
|
|
12025
|
+
description: "Search and enrich private-market contacts",
|
|
12026
|
+
longDescription: "Connect a reusable Harmonic team API key, use Scout to find people with natural-language criteria, select team-visible people saved searches, and hydrate person identifiers into normalized contacts for downstream tables, CRM, scoring, and outreach workflows.",
|
|
12027
|
+
bgColor: "#FFFFFF",
|
|
12028
|
+
iconName: "HarmonicIcon",
|
|
12029
|
+
docsUrl: "https://docs.sim.ai/integrations/harmonic",
|
|
12030
|
+
operations: [
|
|
12031
|
+
{
|
|
12032
|
+
name: "Search People with Scout",
|
|
12033
|
+
description: "Ask Harmonic Scout to find people using natural language and return a stable, workflow-ready contacts table."
|
|
12034
|
+
},
|
|
12035
|
+
{
|
|
12036
|
+
name: "Enrich Person",
|
|
12037
|
+
description: "Resolve a LinkedIn profile URL or email address into a normalized Harmonic contact, queueing enrichment when the person is not yet in Harmonic."
|
|
12038
|
+
},
|
|
12039
|
+
{
|
|
12040
|
+
name: "Get Person",
|
|
12041
|
+
description: "Fetch one Harmonic person by numeric ID or URN, including any email resolved by a completed enrichment job."
|
|
12042
|
+
},
|
|
12043
|
+
{
|
|
12044
|
+
name: "Batch Get People",
|
|
12045
|
+
description: "Fetch full Harmonic person profiles for up to 500 combined numeric IDs and person URNs."
|
|
12046
|
+
},
|
|
12047
|
+
{
|
|
12048
|
+
name: "Get Company Employees",
|
|
12049
|
+
description: "List person URNs for a company, filtered by role group and employment status. Pair with Batch Get People to hydrate contacts."
|
|
12050
|
+
},
|
|
12051
|
+
{
|
|
12052
|
+
name: "List People Saved Searches",
|
|
12053
|
+
description: "List the team-shared Harmonic saved searches that target people. Use a returned ID or URN to fetch results."
|
|
12054
|
+
},
|
|
12055
|
+
{
|
|
12056
|
+
name: "Get People Saved Search Results",
|
|
12057
|
+
description: "Get one page of a Harmonic people saved search. Full records become contacts; URN-only rows are exposed for Batch Get People."
|
|
12058
|
+
},
|
|
12059
|
+
{
|
|
12060
|
+
name: "Get People Saved Search Net-New Results",
|
|
12061
|
+
description: "Get only the people newly matching a subscribed Harmonic people saved search, so a monitor does not reprocess the whole result set."
|
|
12062
|
+
},
|
|
12063
|
+
{
|
|
12064
|
+
name: "Clear People Saved Search Net-New Results",
|
|
12065
|
+
description: "Acknowledge net-new people on a saved search so the next poll returns only fresh matches. Clearing everything requires setting the scope explicitly."
|
|
12066
|
+
},
|
|
12067
|
+
{
|
|
12068
|
+
name: "Submit Email Enrichment Job",
|
|
12069
|
+
description: "Queue bulk email enrichment for up to 5,000 people, given either person URNs or LinkedIn profile URLs."
|
|
12070
|
+
},
|
|
12071
|
+
{
|
|
12072
|
+
name: "Get Email Enrichment Job",
|
|
12073
|
+
description: "Check a Harmonic bulk email enrichment job. Per-person results appear once the job is terminal; fetch the emails with Get Person or Batch Get People."
|
|
12074
|
+
},
|
|
12075
|
+
{
|
|
12076
|
+
name: "Get Email Enrichment Usage",
|
|
12077
|
+
description: "Read the team monthly email-enrichment quota. Check this before a large batch to avoid a quota rejection."
|
|
12078
|
+
},
|
|
12079
|
+
{
|
|
12080
|
+
name: "Get Enrichment Status",
|
|
12081
|
+
description: "Check enrichment jobs Harmonic queued for people it did not already have, and read the person URN each one produced."
|
|
12082
|
+
}
|
|
12083
|
+
],
|
|
12084
|
+
operationCount: 13,
|
|
12085
|
+
triggers: [],
|
|
12086
|
+
triggerCount: 0,
|
|
12087
|
+
authType: "api-key",
|
|
12088
|
+
category: "tools",
|
|
12089
|
+
integrationType: "sales",
|
|
12090
|
+
tags: ["enrichment", "automation", "agentic"]
|
|
12091
|
+
},
|
|
11721
12092
|
{
|
|
11722
12093
|
type: "hex",
|
|
11723
12094
|
slug: "hex",
|
|
@@ -35243,7 +35614,10 @@ var RETRY_AFTER_MAX_MS = 30000;
|
|
|
35243
35614
|
function truncate(str, sliceLength, suffix = "...") {
|
|
35244
35615
|
return str.length > sliceLength ? str.slice(0, sliceLength) + suffix : str;
|
|
35245
35616
|
}
|
|
35246
|
-
var
|
|
35617
|
+
var MARKDOWN_ESCAPABLE;
|
|
35618
|
+
var init_string = __esm(() => {
|
|
35619
|
+
MARKDOWN_ESCAPABLE = new Set("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");
|
|
35620
|
+
});
|
|
35247
35621
|
|
|
35248
35622
|
// src/cli-auth.ts
|
|
35249
35623
|
import { spawnSync as spawnSync5 } from "node:child_process";
|