@withone/cli 1.56.0 → 1.56.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/README.md +2 -2
- package/dist/index.js +54 -26
- package/package.json +1 -1
- package/skills/one/SKILL.md +1 -1
package/README.md
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
<a href="https://withone.ai/knowledge"><img src="https://img.shields.io/endpoint?url=https%3A%2F%2Fapi.withone.ai%2Fopen%2Fcount%2Ftools" alt="tools"></a>
|
|
25
25
|
</p>
|
|
26
26
|
|
|
27
|
-
One gives your AI agent authenticated access to
|
|
27
|
+
One gives your AI agent authenticated access to 750+ platforms - Gmail, Slack, Shopify, HubSpot, Stripe, Notion, and everything else - through a single interface. No API keys to juggle, no OAuth flows to build, no request formats to memorize. Connect a platform once, and your agent can search for actions, read the docs, and execute API calls in seconds.
|
|
28
28
|
|
|
29
29
|
## Install
|
|
30
30
|
|
|
@@ -250,7 +250,7 @@ Shows the connection details and asks for confirmation before deleting. Use `--f
|
|
|
250
250
|
|
|
251
251
|
### `one platforms`
|
|
252
252
|
|
|
253
|
-
Browse all
|
|
253
|
+
Browse all 750+ available platforms.
|
|
254
254
|
|
|
255
255
|
```bash
|
|
256
256
|
one platforms # all platforms
|
package/dist/index.js
CHANGED
|
@@ -1578,6 +1578,25 @@ function startCallbackServer(expectedState) {
|
|
|
1578
1578
|
tryListen();
|
|
1579
1579
|
});
|
|
1580
1580
|
}
|
|
1581
|
+
function wrapForNote(text5, width = noteWidth()) {
|
|
1582
|
+
const lines = [];
|
|
1583
|
+
for (const line of text5.split("\n")) {
|
|
1584
|
+
let rest = line;
|
|
1585
|
+
while (rest.length > width) {
|
|
1586
|
+
const space = rest.lastIndexOf(" ", width);
|
|
1587
|
+
const cut = space > 0 ? space : width;
|
|
1588
|
+
lines.push(rest.slice(0, cut));
|
|
1589
|
+
rest = rest.slice(cut).trimStart();
|
|
1590
|
+
}
|
|
1591
|
+
lines.push(rest);
|
|
1592
|
+
}
|
|
1593
|
+
return lines.join("\n");
|
|
1594
|
+
}
|
|
1595
|
+
function noteWidth() {
|
|
1596
|
+
const columns = process.stdout.columns;
|
|
1597
|
+
const usable = (typeof columns === "number" && columns > 0 ? columns : 80) - 8;
|
|
1598
|
+
return Math.max(usable, 40);
|
|
1599
|
+
}
|
|
1581
1600
|
async function browserLogin(opts) {
|
|
1582
1601
|
const state = crypto.randomUUID();
|
|
1583
1602
|
const spin = createSpinner();
|
|
@@ -1598,13 +1617,17 @@ ${authUrl}
|
|
|
1598
1617
|
`);
|
|
1599
1618
|
} else {
|
|
1600
1619
|
note(
|
|
1601
|
-
|
|
1602
|
-
|
|
1620
|
+
wrapForNote(
|
|
1621
|
+
`The consent page records this on the key, so you can find the install later.
|
|
1603
1622
|
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
"
|
|
1623
|
+
${describeInstallContext(context)}`
|
|
1624
|
+
),
|
|
1625
|
+
"This install"
|
|
1607
1626
|
);
|
|
1627
|
+
console.log();
|
|
1628
|
+
console.log(" Opening your browser. If it doesn't open, visit:");
|
|
1629
|
+
console.log(authUrl);
|
|
1630
|
+
console.log();
|
|
1608
1631
|
}
|
|
1609
1632
|
try {
|
|
1610
1633
|
await open2(authUrl);
|
|
@@ -1719,7 +1742,7 @@ async function loginCommand() {
|
|
|
1719
1742
|
console.log(pc16.cyan(" \u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"));
|
|
1720
1743
|
console.log(pc16.cyan(" \u2502"));
|
|
1721
1744
|
console.log(pc16.cyan(" \u2502 The One CLI (`one`) is now installed on this machine. It"));
|
|
1722
|
-
console.log(pc16.cyan(" \u2502 lets you interact with
|
|
1745
|
+
console.log(pc16.cyan(" \u2502 lets you interact with 750+ third-party platforms (Gmail,"));
|
|
1723
1746
|
console.log(pc16.cyan(" \u2502 Slack, Shopify, HubSpot, Stripe, GitHub, etc.) through"));
|
|
1724
1747
|
console.log(pc16.cyan(" \u2502 their APIs. Whenever you need to interact with any"));
|
|
1725
1748
|
console.log(pc16.cyan(" \u2502 third-party platform or external service, use the `one`"));
|
|
@@ -2311,7 +2334,7 @@ function printOnboardingPrompt() {
|
|
|
2311
2334
|
console.log(pc4.cyan(" \u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500"));
|
|
2312
2335
|
console.log(pc4.cyan(" \u2502"));
|
|
2313
2336
|
console.log(pc4.cyan(" \u2502 The One CLI (`one`) is now installed on this machine. It"));
|
|
2314
|
-
console.log(pc4.cyan(" \u2502 lets you interact with
|
|
2337
|
+
console.log(pc4.cyan(" \u2502 lets you interact with 750+ third-party platforms (Gmail,"));
|
|
2315
2338
|
console.log(pc4.cyan(" \u2502 Slack, Shopify, HubSpot, Stripe, GitHub, etc.) through"));
|
|
2316
2339
|
console.log(pc4.cyan(" \u2502 their APIs. Whenever you need to interact with any"));
|
|
2317
2340
|
console.log(pc4.cyan(" \u2502 third-party platform or external service, use the `one`"));
|
|
@@ -2432,18 +2455,23 @@ ${resolutionHint}`,
|
|
|
2432
2455
|
printOnboardingPrompt();
|
|
2433
2456
|
p3.outro("Done! Paste the prompt above to your AI agent.");
|
|
2434
2457
|
}
|
|
2458
|
+
function lime(text5) {
|
|
2459
|
+
if (!pc4.isColorSupported) return text5;
|
|
2460
|
+
const truecolor = process.env.COLORTERM === "truecolor" || process.env.COLORTERM === "24bit";
|
|
2461
|
+
return truecolor ? `\x1B[38;2;204;255;0m${text5}\x1B[39m` : pc4.green(text5);
|
|
2462
|
+
}
|
|
2435
2463
|
function printBanner() {
|
|
2436
2464
|
console.log();
|
|
2437
|
-
console.log(
|
|
2438
|
-
console.log(
|
|
2439
|
-
console.log(
|
|
2440
|
-
console.log(
|
|
2441
|
-
console.log(
|
|
2442
|
-
console.log(
|
|
2443
|
-
console.log(
|
|
2444
|
-
console.log(
|
|
2445
|
-
console.log(
|
|
2446
|
-
console.log(
|
|
2465
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588"));
|
|
2466
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588"));
|
|
2467
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 "));
|
|
2468
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 "));
|
|
2469
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 "));
|
|
2470
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 "));
|
|
2471
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 "));
|
|
2472
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 "));
|
|
2473
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588"));
|
|
2474
|
+
console.log(lime(" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588"));
|
|
2447
2475
|
console.log();
|
|
2448
2476
|
console.log(pc4.dim(" I N F R A S T R U C T U R E F O R A G E N T S"));
|
|
2449
2477
|
console.log();
|
|
@@ -2475,7 +2503,7 @@ async function promptConnectIntegrations(apiKey, connParams) {
|
|
|
2475
2503
|
label: i.label,
|
|
2476
2504
|
hint: i.hint
|
|
2477
2505
|
})),
|
|
2478
|
-
{ value: "more", label: "Browse all
|
|
2506
|
+
{ value: "more", label: "Browse all 750+ platforms" },
|
|
2479
2507
|
{ value: "skip", label: "Skip for now", hint: "you can always run one add later" }
|
|
2480
2508
|
];
|
|
2481
2509
|
const message = first ? "Connect your first integration?" : "Connect another?";
|
|
@@ -10660,7 +10688,7 @@ Before using any feature, read its guide section first: \`one guide actions\`, \
|
|
|
10660
10688
|
|
|
10661
10689
|
## Features
|
|
10662
10690
|
|
|
10663
|
-
### 1. Actions \u2014 Execute API calls on
|
|
10691
|
+
### 1. Actions \u2014 Execute API calls on 750+ platforms
|
|
10664
10692
|
Search for actions, read their docs, and execute them. This is the core workflow.
|
|
10665
10693
|
|
|
10666
10694
|
**Quick start:**
|
|
@@ -11885,7 +11913,7 @@ function buildStep1() {
|
|
|
11885
11913
|
nextCommand: "one onboard --step 2",
|
|
11886
11914
|
message: `# One CLI \u2014 Agent Onboarding
|
|
11887
11915
|
|
|
11888
|
-
You now have access to the One CLI. It connects you to
|
|
11916
|
+
You now have access to the One CLI. It connects you to 750+ platforms
|
|
11889
11917
|
(Gmail, Slack, Stripe, Notion, etc.) \u2014 you'll learn the details shortly.
|
|
11890
11918
|
|
|
11891
11919
|
IMPORTANT: Your only task right now is to send the message below to the
|
|
@@ -11895,7 +11923,7 @@ Do not offer demos yet. Just send this message and wait for their reply:
|
|
|
11895
11923
|
---
|
|
11896
11924
|
|
|
11897
11925
|
I just got access to the One CLI \u2014 it connects me to your platforms like
|
|
11898
|
-
Gmail, Slack, Stripe, and
|
|
11926
|
+
Gmail, Slack, Stripe, and 750+ others so I can work with them directly.
|
|
11899
11927
|
I'll show you what I can do in a moment.
|
|
11900
11928
|
|
|
11901
11929
|
First, one quick setup step: right now only this conversation knows about
|
|
@@ -11924,7 +11952,7 @@ If they declined, skip this section.
|
|
|
11924
11952
|
## One CLI \u2014 Platform Integrations
|
|
11925
11953
|
|
|
11926
11954
|
The One CLI (\`one\`) is installed and configured on this machine. It is a
|
|
11927
|
-
command-line tool that gives AI agents the ability to interact with
|
|
11955
|
+
command-line tool that gives AI agents the ability to interact with 750+
|
|
11928
11956
|
third-party platforms (Gmail, Slack, Shopify, HubSpot, Stripe, GitHub,
|
|
11929
11957
|
Notion, Salesforce, etc.) through a single, unified interface.
|
|
11930
11958
|
|
|
@@ -12019,7 +12047,7 @@ function buildStep3(connections) {
|
|
|
12019
12047
|
The user can connect any of these popular platforms:
|
|
12020
12048
|
Gmail, Google Calendar, Slack, Notion, Shopify, Stripe, HubSpot, GitHub,
|
|
12021
12049
|
Salesforce, QuickBooks, Asana, Jira, Linear, Intercom, Zendesk, Twilio,
|
|
12022
|
-
and
|
|
12050
|
+
and 750+ more. Run \`one platforms\` for the full list.`);
|
|
12023
12051
|
sections.push("## Onboarding complete!\n\nYou're all set. Use `one --agent guide` any time you need the full reference.");
|
|
12024
12052
|
return {
|
|
12025
12053
|
step: 3,
|
|
@@ -12050,7 +12078,7 @@ platform before you can start using actions. Suggest they run:
|
|
|
12050
12078
|
one add slack
|
|
12051
12079
|
one add <any-platform>
|
|
12052
12080
|
|
|
12053
|
-
Run \`one platforms\` to see all
|
|
12081
|
+
Run \`one platforms\` to see all 750+ available platforms.`;
|
|
12054
12082
|
}
|
|
12055
12083
|
const header = `## Current State
|
|
12056
12084
|
|
|
@@ -12234,7 +12262,7 @@ silenceWarningsInAgentMode();
|
|
|
12234
12262
|
var require4 = createRequire3(import.meta.url);
|
|
12235
12263
|
var { version } = require4("../package.json");
|
|
12236
12264
|
var program = new Command();
|
|
12237
|
-
program.name("one").option("--agent", "Machine-readable JSON output (no colors, spinners, or prompts)").description(`One CLI \u2014 Connect AI agents to
|
|
12265
|
+
program.name("one").option("--agent", "Machine-readable JSON output (no colors, spinners, or prompts)").description(`One CLI \u2014 Connect AI agents to 750+ platforms through one interface.
|
|
12238
12266
|
|
|
12239
12267
|
Setup:
|
|
12240
12268
|
one login Authenticate via browser; the consent page records where this CLI is installed
|
|
@@ -12306,7 +12334,7 @@ program.name("one").option("--agent", "Machine-readable JSON output (no colors,
|
|
|
12306
12334
|
-d '{"to":"j@example.com","subject":"Hello","body":"Hi!","connectionKey":"live::gmail::default::abc123"}'
|
|
12307
12335
|
|
|
12308
12336
|
Platform names are lowercase; multi-word names use dashes (e.g. hubspot, ship-station, google-calendar).
|
|
12309
|
-
Run 'one platforms' to browse all
|
|
12337
|
+
Run 'one platforms' to browse all 750+ available platforms.`).version(version);
|
|
12310
12338
|
var updateCheckPromise;
|
|
12311
12339
|
program.hook("preAction", (thisCommand, actionCommand) => {
|
|
12312
12340
|
const opts = program.opts();
|
package/package.json
CHANGED
package/skills/one/SKILL.md
CHANGED
|
@@ -20,7 +20,7 @@ description: |
|
|
|
20
20
|
|
|
21
21
|
# One CLI
|
|
22
22
|
|
|
23
|
-
You have access to the One CLI which lets you interact with
|
|
23
|
+
You have access to the One CLI which lets you interact with 750+ third-party platforms through their APIs. Always include the `--agent` flag right after `one` for structured JSON output.
|
|
24
24
|
|
|
25
25
|
If the user wants a separate API key / connections for a specific project (vs. their default), walk them through running `one init` from that project folder and picking the "project" scope — see `references/scoping.md`. For monorepo subprojects (where a parent already has `.git`/`package.json`), have them `mkdir .one` in the subproject first so the config is keyed to that dir, not the monorepo root.
|
|
26
26
|
|