@usenaive-sdk/cli 0.12.2 → 0.13.0
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 +76 -5
- package/dist/client.d.ts +74 -1
- package/dist/client.js +351 -17
- package/dist/client.js.map +1 -1
- package/dist/commands/aeo.js +69 -27
- package/dist/commands/aeo.js.map +1 -1
- package/dist/commands/app-data.js +29 -11
- package/dist/commands/app-data.js.map +1 -1
- package/dist/commands/apps.d.ts +7 -0
- package/dist/commands/apps.js +255 -18
- package/dist/commands/apps.js.map +1 -1
- package/dist/commands/audio.d.ts +9 -0
- package/dist/commands/audio.js +391 -0
- package/dist/commands/audio.js.map +1 -0
- package/dist/commands/auth.d.ts +31 -0
- package/dist/commands/auth.js +403 -0
- package/dist/commands/auth.js.map +1 -0
- package/dist/commands/billing.js +12 -12
- package/dist/commands/billing.js.map +1 -1
- package/dist/commands/brain.d.ts +2 -0
- package/dist/commands/brain.js +1255 -0
- package/dist/commands/brain.js.map +1 -0
- package/dist/commands/browser.js +35 -8
- package/dist/commands/browser.js.map +1 -1
- package/dist/commands/business.js +117 -16
- package/dist/commands/business.js.map +1 -1
- package/dist/commands/clone.d.ts +2 -0
- package/dist/commands/clone.js +203 -0
- package/dist/commands/clone.js.map +1 -0
- package/dist/commands/companies.d.ts +8 -0
- package/dist/commands/companies.js +137 -47
- package/dist/commands/companies.js.map +1 -1
- package/dist/commands/company-data.d.ts +2 -0
- package/dist/commands/company-data.js +168 -0
- package/dist/commands/company-data.js.map +1 -0
- package/dist/commands/compute.js +10 -3
- package/dist/commands/compute.js.map +1 -1
- package/dist/commands/config.d.ts +2 -0
- package/dist/commands/config.js +36 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/connections.d.ts +6 -0
- package/dist/commands/connections.js +29 -1
- package/dist/commands/connections.js.map +1 -1
- package/dist/commands/domains.js +1 -1
- package/dist/commands/ecommerce.js +19 -9
- package/dist/commands/ecommerce.js.map +1 -1
- package/dist/commands/email.js +56 -9
- package/dist/commands/email.js.map +1 -1
- package/dist/commands/env.d.ts +3 -3
- package/dist/commands/env.js +68 -4
- package/dist/commands/env.js.map +1 -1
- package/dist/commands/formation.js +3 -3
- package/dist/commands/identity.js +4 -3
- package/dist/commands/identity.js.map +1 -1
- package/dist/commands/images.js +87 -13
- package/dist/commands/images.js.map +1 -1
- package/dist/commands/init.d.ts +3 -0
- package/dist/commands/init.js +39 -36
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/jobs.js +1 -0
- package/dist/commands/jobs.js.map +1 -1
- package/dist/commands/keys.js +26 -3
- package/dist/commands/keys.js.map +1 -1
- package/dist/commands/legacy-auth.d.ts +27 -0
- package/dist/commands/legacy-auth.js +64 -0
- package/dist/commands/legacy-auth.js.map +1 -0
- package/dist/commands/llm.js +13 -0
- package/dist/commands/llm.js.map +1 -1
- package/dist/commands/login.js +2 -0
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/loops.d.ts +2 -0
- package/dist/commands/loops.js +260 -0
- package/dist/commands/loops.js.map +1 -0
- package/dist/commands/media.js +3 -3
- package/dist/commands/media.js.map +1 -1
- package/dist/commands/mobile.d.ts +4 -0
- package/dist/commands/mobile.js +382 -0
- package/dist/commands/mobile.js.map +1 -0
- package/dist/commands/payments.d.ts +2 -0
- package/dist/commands/payments.js +131 -0
- package/dist/commands/payments.js.map +1 -0
- package/dist/commands/people.d.ts +2 -0
- package/dist/commands/people.js +193 -0
- package/dist/commands/people.js.map +1 -0
- package/dist/commands/phone.js +3 -3
- package/dist/commands/phone.js.map +1 -1
- package/dist/commands/projects.d.ts +13 -0
- package/dist/commands/projects.js +220 -0
- package/dist/commands/projects.js.map +1 -0
- package/dist/commands/register.js +16 -8
- package/dist/commands/register.js.map +1 -1
- package/dist/commands/sandbox.d.ts +2 -0
- package/dist/commands/sandbox.js +245 -0
- package/dist/commands/sandbox.js.map +1 -0
- package/dist/commands/search.js +26 -12
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/seo.js +16 -8
- package/dist/commands/seo.js.map +1 -1
- package/dist/commands/sessions.d.ts +6 -0
- package/dist/commands/sessions.js +109 -0
- package/dist/commands/sessions.js.map +1 -0
- package/dist/commands/social-data.d.ts +2 -0
- package/dist/commands/social-data.js +244 -0
- package/dist/commands/social-data.js.map +1 -0
- package/dist/commands/social.js +8 -6
- package/dist/commands/social.js.map +1 -1
- package/dist/commands/teams.d.ts +69 -0
- package/dist/commands/teams.js +503 -0
- package/dist/commands/teams.js.map +1 -0
- package/dist/commands/up.d.ts +150 -0
- package/dist/commands/up.js +415 -15
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/usage.js +15 -4
- package/dist/commands/usage.js.map +1 -1
- package/dist/commands/use.d.ts +9 -0
- package/dist/commands/use.js +76 -11
- package/dist/commands/use.js.map +1 -1
- package/dist/commands/users.d.ts +8 -0
- package/dist/commands/users.js +28 -9
- package/dist/commands/users.js.map +1 -1
- package/dist/commands/vault.js +28 -1
- package/dist/commands/vault.js.map +1 -1
- package/dist/commands/video.js +190 -270
- package/dist/commands/video.js.map +1 -1
- package/dist/commands/voice.d.ts +2 -0
- package/dist/commands/voice.js +516 -0
- package/dist/commands/voice.js.map +1 -0
- package/dist/commands/wallet.d.ts +2 -0
- package/dist/commands/wallet.js +244 -0
- package/dist/commands/wallet.js.map +1 -0
- package/dist/commands/whoami.js +17 -1
- package/dist/commands/whoami.js.map +1 -1
- package/dist/config.d.ts +24 -1
- package/dist/config.js +36 -7
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +290 -20
- package/dist/index.js.map +1 -1
- package/dist/lib/brain-select.d.ts +193 -0
- package/dist/lib/brain-select.js +403 -0
- package/dist/lib/brain-select.js.map +1 -0
- package/dist/lib/cli-validation.d.ts +12 -0
- package/dist/lib/cli-validation.js +46 -0
- package/dist/lib/cli-validation.js.map +1 -0
- package/dist/lib/deprecation.d.ts +158 -0
- package/dist/lib/deprecation.js +140 -0
- package/dist/lib/deprecation.js.map +1 -0
- package/dist/lib/duration.d.ts +8 -0
- package/dist/lib/duration.js +11 -0
- package/dist/lib/duration.js.map +1 -0
- package/dist/lib/http-response.d.ts +11 -0
- package/dist/lib/http-response.js +96 -0
- package/dist/lib/http-response.js.map +1 -0
- package/dist/lib/pricing.d.ts +132 -0
- package/dist/lib/pricing.js +148 -0
- package/dist/lib/pricing.js.map +1 -0
- package/dist/lib/stream-frames.d.ts +114 -0
- package/dist/lib/stream-frames.js +169 -0
- package/dist/lib/stream-frames.js.map +1 -0
- package/dist/lib/teams-catalog.d.ts +141 -0
- package/dist/lib/teams-catalog.js +765 -0
- package/dist/lib/teams-catalog.js.map +1 -0
- package/dist/lib/unknown-command.d.ts +57 -0
- package/dist/lib/unknown-command.js +93 -0
- package/dist/lib/unknown-command.js.map +1 -0
- package/dist/lib/version-check.d.ts +26 -0
- package/dist/lib/version-check.js +21 -0
- package/dist/lib/version-check.js.map +1 -0
- package/dist/output.d.ts +119 -10
- package/dist/output.js +309 -15
- package/dist/output.js.map +1 -1
- package/dist/prompt.d.ts +17 -0
- package/dist/prompt.js +70 -0
- package/dist/prompt.js.map +1 -0
- package/package.json +11 -6
- package/dist/commands/billing-client.d.ts +0 -2
- package/dist/commands/billing-client.js +0 -271
- package/dist/commands/billing-client.js.map +0 -1
- package/dist/commands/crm-app.d.ts +0 -2
- package/dist/commands/crm-app.js +0 -306
- package/dist/commands/crm-app.js.map +0 -1
- package/dist/commands/crm.d.ts +0 -2
- package/dist/commands/crm.js +0 -319
- package/dist/commands/crm.js.map +0 -1
- package/dist/commands/integrations.d.ts +0 -2
- package/dist/commands/integrations.js +0 -199
- package/dist/commands/integrations.js.map +0 -1
- package/dist/commands/link.d.ts +0 -3
- package/dist/commands/link.js +0 -91
- package/dist/commands/link.js.map +0 -1
- package/dist/commands/operators.d.ts +0 -11
- package/dist/commands/operators.js +0 -120
- package/dist/commands/operators.js.map +0 -1
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, handleApiError, activeUserId } from "../client.js";
|
|
3
|
+
import { agentOutput } from "../output.js";
|
|
4
|
+
/** Resolve the user path segment — explicit --user wins, else active, else "default". */
|
|
5
|
+
function userPath(user) {
|
|
6
|
+
return `/v1/users/${user ?? activeUserId() ?? "default"}`;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Per-user MCP sessions — short-lived, revocable credentials (`nv_sess_…`)
|
|
10
|
+
* scoped to one tenant user. Docs: https://usenaive.ai/docs/getting-started/sessions
|
|
11
|
+
*/
|
|
12
|
+
export const sessionsCmd = new Command("sessions")
|
|
13
|
+
.alias("session")
|
|
14
|
+
.description("MCP sessions — mint, list, and revoke short-lived per-user MCP credentials")
|
|
15
|
+
.addHelpText("after", `
|
|
16
|
+
Subcommands:
|
|
17
|
+
naive sessions create [--user <id>] [--ttl-ms <n>] Mint a session (returns mcp.url + bearer)
|
|
18
|
+
naive sessions list [--user <id>] List sessions (tokens never returned)
|
|
19
|
+
naive sessions revoke <id> [--user <id>] Revoke immediately
|
|
20
|
+
|
|
21
|
+
Examples:
|
|
22
|
+
$ naive sessions create --ttl-ms 900000
|
|
23
|
+
$ naive sessions create --user <user_id> --ttl-ms 600000
|
|
24
|
+
$ naive sessions list --user <user_id>
|
|
25
|
+
$ naive sessions revoke <session_id> --user <user_id>
|
|
26
|
+
|
|
27
|
+
Notes:
|
|
28
|
+
- Default TTL is 15 minutes (900000 ms); max 24h
|
|
29
|
+
- Hand mcp.url + mcp.headers.Authorization to your MCP client — never put the token in the URL
|
|
30
|
+
- Scope: --user <id>, or active user from 'naive use <id>', or the workspace default user
|
|
31
|
+
`);
|
|
32
|
+
sessionsCmd
|
|
33
|
+
.command("create")
|
|
34
|
+
.description("Mint a TTL-limited MCP session for a tenant user")
|
|
35
|
+
.option("--user <id>", "Target a specific tenant user")
|
|
36
|
+
.option("--ttl-ms <ms>", "Session lifetime in milliseconds (default 900000 = 15 min, max 24h)", (v) => {
|
|
37
|
+
const n = Number(v);
|
|
38
|
+
if (!Number.isFinite(n) || n <= 0)
|
|
39
|
+
throw new Error("--ttl-ms must be a positive number");
|
|
40
|
+
return n;
|
|
41
|
+
})
|
|
42
|
+
.action(async (opts) => {
|
|
43
|
+
const body = opts.ttlMs != null ? { ttl_ms: opts.ttlMs } : {};
|
|
44
|
+
const resp = await apiRequest("POST", `${userPath(opts.user)}/sessions`, body, { userId: opts.user });
|
|
45
|
+
handleApiError("sessions.create", resp);
|
|
46
|
+
const data = resp.data;
|
|
47
|
+
agentOutput({
|
|
48
|
+
action: "sessions.create",
|
|
49
|
+
result: resp.data,
|
|
50
|
+
next_steps: [
|
|
51
|
+
{
|
|
52
|
+
command: `naive sessions list${opts.user ? ` --user ${opts.user}` : ""}`,
|
|
53
|
+
description: "List sessions for this user",
|
|
54
|
+
},
|
|
55
|
+
...(data.id
|
|
56
|
+
? [
|
|
57
|
+
{
|
|
58
|
+
command: `naive sessions revoke ${data.id}${opts.user ? ` --user ${opts.user}` : ""}`,
|
|
59
|
+
description: "Revoke this session when done",
|
|
60
|
+
},
|
|
61
|
+
]
|
|
62
|
+
: []),
|
|
63
|
+
],
|
|
64
|
+
hints: [
|
|
65
|
+
"Pass result.mcp.url and result.mcp.headers to your MCP client",
|
|
66
|
+
"The nv_sess_… token expires with the session and can be revoked early",
|
|
67
|
+
],
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
sessionsCmd
|
|
71
|
+
.command("list")
|
|
72
|
+
.description("List MCP sessions for a tenant user (tokens are never returned)")
|
|
73
|
+
.option("--user <id>", "Target a specific tenant user")
|
|
74
|
+
.action(async (opts) => {
|
|
75
|
+
const resp = await apiRequest("GET", `${userPath(opts.user)}/sessions`, undefined, { userId: opts.user });
|
|
76
|
+
handleApiError("sessions.list", resp);
|
|
77
|
+
agentOutput({
|
|
78
|
+
action: "sessions.list",
|
|
79
|
+
result: resp.data,
|
|
80
|
+
next_steps: [
|
|
81
|
+
{
|
|
82
|
+
command: `naive sessions create${opts.user ? ` --user ${opts.user}` : ""} --ttl-ms 900000`,
|
|
83
|
+
description: "Mint a new MCP session",
|
|
84
|
+
},
|
|
85
|
+
],
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
sessionsCmd
|
|
89
|
+
.command("revoke")
|
|
90
|
+
.description("Revoke an MCP session immediately")
|
|
91
|
+
.argument("<session_id>", "Session id returned by sessions create")
|
|
92
|
+
.option("--user <id>", "Target a specific tenant user")
|
|
93
|
+
.action(async (sessionId, opts) => {
|
|
94
|
+
const resp = await apiRequest("DELETE", `${userPath(opts.user)}/sessions/${sessionId}`, undefined, {
|
|
95
|
+
userId: opts.user,
|
|
96
|
+
});
|
|
97
|
+
handleApiError("sessions.revoke", resp);
|
|
98
|
+
agentOutput({
|
|
99
|
+
action: "sessions.revoke",
|
|
100
|
+
result: resp.data,
|
|
101
|
+
next_steps: [
|
|
102
|
+
{
|
|
103
|
+
command: `naive sessions list${opts.user ? ` --user ${opts.user}` : ""}`,
|
|
104
|
+
description: "Confirm the session is revoked",
|
|
105
|
+
},
|
|
106
|
+
],
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
//# sourceMappingURL=sessions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/commands/sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { apiRequest, handleApiError } from "../client.js";
|
|
3
|
+
import { agentOutput, creditCostHint } from "../output.js";
|
|
4
|
+
import { parseIntegerOption } from "../lib/cli-validation.js";
|
|
5
|
+
/**
|
|
6
|
+
* Platforms a synchronous read is offered for.
|
|
7
|
+
*
|
|
8
|
+
* The async-only four are refused locally rather than sent, because the server
|
|
9
|
+
* refuses them too: a Reddit collection took 53-219 seconds for five posts, and
|
|
10
|
+
* Instagram, TikTok and YouTube drive a headless browser per post. Catching it
|
|
11
|
+
* here turns a round trip into an immediate message naming the command to use.
|
|
12
|
+
*/
|
|
13
|
+
const SYNC_PLATFORMS = ["bluesky", "hackernews", "x"];
|
|
14
|
+
const ASYNC_ONLY_PLATFORMS = ["reddit", "instagram", "tiktok", "youtube"];
|
|
15
|
+
const ALL_PLATFORMS = [...SYNC_PLATFORMS, ...ASYNC_ONLY_PLATFORMS];
|
|
16
|
+
/** Platforms whose collect can return comment threads. */
|
|
17
|
+
const COMMENT_PLATFORMS = ["reddit", "hackernews", "instagram", "tiktok", "youtube"];
|
|
18
|
+
function assertSyncPlatform(platform, mode) {
|
|
19
|
+
if (SYNC_PLATFORMS.includes(platform))
|
|
20
|
+
return;
|
|
21
|
+
if (ASYNC_ONLY_PLATFORMS.includes(platform)) {
|
|
22
|
+
throw new Error(`${platform} reads are asynchronous only — a ${mode} takes minutes, not seconds.\n` +
|
|
23
|
+
(mode === "collect"
|
|
24
|
+
? `Use: naive social-data batch --platform ${platform} --mode collect --post-ids <ids>`
|
|
25
|
+
: `Use: naive social-data batch --platform ${platform} --query <query>`));
|
|
26
|
+
}
|
|
27
|
+
throw new Error(`--platform must be one of: ${SYNC_PLATFORMS.join(", ")} ` +
|
|
28
|
+
`(${ASYNC_ONLY_PLATFORMS.join(", ")} are batch-only)`);
|
|
29
|
+
}
|
|
30
|
+
function assertKnownPlatform(platform) {
|
|
31
|
+
if (!ALL_PLATFORMS.includes(platform)) {
|
|
32
|
+
throw new Error(`--platform must be one of: ${ALL_PLATFORMS.join(", ")}`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export const socialDataCmd = new Command("social-data")
|
|
36
|
+
.description("Social Data — read public posts, comments & engagement")
|
|
37
|
+
.addHelpText("after", `
|
|
38
|
+
Subcommands:
|
|
39
|
+
naive social-data discover Search public posts by keyword
|
|
40
|
+
naive social-data collect Fetch known posts by id, optionally with comments
|
|
41
|
+
naive social-data batch Async read (up to 1,000 posts) — the only route to reddit
|
|
42
|
+
naive social-data task <id> Check a batch task
|
|
43
|
+
naive social-data terms The acceptable-use terms this primitive binds you to
|
|
44
|
+
naive social-data erase Honour a deletion request from a post author
|
|
45
|
+
|
|
46
|
+
Platforms: bluesky, hackernews, x — plus reddit, instagram, tiktok and youtube
|
|
47
|
+
on \`batch\` only (their collection runs for minutes).
|
|
48
|
+
|
|
49
|
+
bluesky and hackernews are the platforms' own public APIs: no credential, and a
|
|
50
|
+
flat meter rather than 2x a vendor's bill — prefer them where they fit.
|
|
51
|
+
|
|
52
|
+
Capabilities differ, and an unsupported combination is refused rather than served
|
|
53
|
+
thinner at the same price:
|
|
54
|
+
--include-comments reddit, hackernews, instagram, tiktok, youtube
|
|
55
|
+
--include-transcript youtube only
|
|
56
|
+
--query means full text on x/reddit/bluesky/hackernews, a hashtag or
|
|
57
|
+
profile on instagram, a keyword search on tiktok/youtube
|
|
58
|
+
|
|
59
|
+
Cost: the scraped platforms bill 3x what the provider run really cost, so a
|
|
60
|
+
cheap read is cheap. A run that returns nothing is still billed — we are
|
|
61
|
+
invoiced for it — but a run that FAILS never is.
|
|
62
|
+
|
|
63
|
+
READ ONLY. This does not post — use \`naive social\` to connect accounts and publish.
|
|
64
|
+
`);
|
|
65
|
+
socialDataCmd
|
|
66
|
+
.command("discover")
|
|
67
|
+
.description("Search public posts by keyword")
|
|
68
|
+
.requiredOption("--platform <platform>", "bluesky, hackernews or x (reddit/instagram/tiktok/youtube are batch-only)")
|
|
69
|
+
.requiredOption("--query <query>", "Keyword or phrase, e.g. 'AI agents'")
|
|
70
|
+
.option("--date-from <iso>", "Drop posts older than this ISO date")
|
|
71
|
+
.option("--engagement-min <n>", "Minimum total likes + comments + upvotes")
|
|
72
|
+
.option("--limit <n>", "Max posts, 1-100 (above 100 use `naive social-data batch`)")
|
|
73
|
+
.option("--prefer-official", "Require the platform's own API — refused where none is wired")
|
|
74
|
+
.action(async (opts) => {
|
|
75
|
+
assertSyncPlatform(opts.platform, "discover");
|
|
76
|
+
const filters = {};
|
|
77
|
+
if (opts.dateFrom)
|
|
78
|
+
filters.date_from = opts.dateFrom;
|
|
79
|
+
if (opts.engagementMin) {
|
|
80
|
+
filters.engagement_min = parseIntegerOption(opts.engagementMin, "--engagement-min", 0);
|
|
81
|
+
}
|
|
82
|
+
const body = { query: opts.query, filters };
|
|
83
|
+
if (opts.limit)
|
|
84
|
+
body.limit = parseIntegerOption(opts.limit, "--limit", 1, 100);
|
|
85
|
+
if (opts.preferOfficial)
|
|
86
|
+
body.prefer_official = true;
|
|
87
|
+
const resp = await apiRequest("POST", `/v1/social-data/${opts.platform}/discover`, body);
|
|
88
|
+
handleApiError("social-data.discover", resp);
|
|
89
|
+
const data = resp.data;
|
|
90
|
+
const posts = data?.data?.length ?? 0;
|
|
91
|
+
agentOutput({
|
|
92
|
+
action: "social-data.discover",
|
|
93
|
+
result: resp.data,
|
|
94
|
+
next_steps: [
|
|
95
|
+
{ command: `naive social-data collect --platform ${opts.platform} --post-ids <ids> --include-comments`, description: "Pull comments for the interesting posts" },
|
|
96
|
+
],
|
|
97
|
+
hints: [
|
|
98
|
+
`${posts} post${posts === 1 ? "" : "s"} returned via ${data?.provider ?? "the default provider"}.`,
|
|
99
|
+
creditCostHint(resp.data) ?? "",
|
|
100
|
+
].filter(Boolean),
|
|
101
|
+
related_commands: ["naive social-data collect", "naive social-data batch"],
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
socialDataCmd
|
|
105
|
+
.command("collect")
|
|
106
|
+
.description("Fetch known public posts by id")
|
|
107
|
+
.requiredOption("--platform <platform>", "bluesky, hackernews or x (reddit/instagram/tiktok/youtube are batch-only)")
|
|
108
|
+
.requiredOption("--post-ids <ids>", "Comma-separated post ids (max 500)")
|
|
109
|
+
.option("--include-comments", `Include comments — ${COMMENT_PLATFORMS.join(", ")} only`)
|
|
110
|
+
.option("--prefer-official", "Require the platform's own API — refused where none is wired")
|
|
111
|
+
.action(async (opts) => {
|
|
112
|
+
assertSyncPlatform(opts.platform, "collect");
|
|
113
|
+
const postIds = String(opts.postIds)
|
|
114
|
+
.split(",")
|
|
115
|
+
.map((id) => id.trim())
|
|
116
|
+
.filter(Boolean);
|
|
117
|
+
const body = { post_ids: postIds };
|
|
118
|
+
if (opts.includeComments)
|
|
119
|
+
body.include_comments = true;
|
|
120
|
+
if (opts.preferOfficial)
|
|
121
|
+
body.prefer_official = true;
|
|
122
|
+
const resp = await apiRequest("POST", `/v1/social-data/${opts.platform}/collect`, body);
|
|
123
|
+
handleApiError("social-data.collect", resp);
|
|
124
|
+
agentOutput({
|
|
125
|
+
action: "social-data.collect",
|
|
126
|
+
result: resp.data,
|
|
127
|
+
next_steps: [
|
|
128
|
+
{ command: "naive social-data discover --platform x --query <topic>", description: "Find more posts on this topic" },
|
|
129
|
+
],
|
|
130
|
+
hints: [creditCostHint(resp.data) ?? ""].filter(Boolean),
|
|
131
|
+
related_commands: ["naive social-data discover"],
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
socialDataCmd
|
|
135
|
+
.command("batch")
|
|
136
|
+
.description("Async read — up to 1,000 posts, and the only route to reddit")
|
|
137
|
+
.requiredOption("--platform <platform>", ALL_PLATFORMS.join(", "))
|
|
138
|
+
.option("--mode <mode>", "discover (default) searches a query; collect takes --post-ids")
|
|
139
|
+
.option("--query <query>", "Keyword, phrase, #hashtag or @profile (mode discover)")
|
|
140
|
+
.option("--post-ids <ids>", "Comma-separated ids — shortcodes on instagram, video ids on tiktok/youtube")
|
|
141
|
+
.option("--include-comments", `Include comment threads (mode collect) — ${COMMENT_PLATFORMS.join(", ")} only`)
|
|
142
|
+
.option("--include-transcript", "Include the caption track — youtube only")
|
|
143
|
+
.option("--limit <n>", "Max posts, up to 1000 (mode discover)")
|
|
144
|
+
.option("--prefer-official", "Require the platform's own API — refused where none is wired")
|
|
145
|
+
.action(async (opts) => {
|
|
146
|
+
assertKnownPlatform(opts.platform);
|
|
147
|
+
const mode = (opts.mode ?? "discover");
|
|
148
|
+
if (mode !== "discover" && mode !== "collect") {
|
|
149
|
+
throw new Error("--mode must be 'discover' or 'collect'");
|
|
150
|
+
}
|
|
151
|
+
const body = { platform: opts.platform, mode };
|
|
152
|
+
if (mode === "collect") {
|
|
153
|
+
if (!opts.postIds)
|
|
154
|
+
throw new Error("--post-ids is required for --mode collect");
|
|
155
|
+
body.post_ids = String(opts.postIds).split(",").map((id) => id.trim()).filter(Boolean);
|
|
156
|
+
if (opts.includeComments)
|
|
157
|
+
body.include_comments = true;
|
|
158
|
+
if (opts.includeTranscript)
|
|
159
|
+
body.include_transcript = true;
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
if (!opts.query)
|
|
163
|
+
throw new Error("--query is required for --mode discover");
|
|
164
|
+
body.query = opts.query;
|
|
165
|
+
if (opts.limit)
|
|
166
|
+
body.limit = parseIntegerOption(opts.limit, "--limit", 1, 1000);
|
|
167
|
+
}
|
|
168
|
+
if (opts.preferOfficial)
|
|
169
|
+
body.prefer_official = true;
|
|
170
|
+
const resp = await apiRequest("POST", "/v1/social-data/tasks", body);
|
|
171
|
+
handleApiError("social-data.batch", resp);
|
|
172
|
+
const id = resp.data?.id;
|
|
173
|
+
agentOutput({
|
|
174
|
+
action: "social-data.batch",
|
|
175
|
+
result: resp.data,
|
|
176
|
+
next_steps: [
|
|
177
|
+
{ command: `naive social-data task ${id ?? "<id>"}`, description: "Check the collection status and get posts" },
|
|
178
|
+
],
|
|
179
|
+
hints: [
|
|
180
|
+
"Billed on 3x what the provider run cost, empty results included. A failed run is never billed.",
|
|
181
|
+
ASYNC_ONLY_PLATFORMS.includes(opts.platform)
|
|
182
|
+
? `${opts.platform} collection runs for minutes — poll rather than waiting on one request.`
|
|
183
|
+
: "",
|
|
184
|
+
].filter(Boolean),
|
|
185
|
+
related_commands: ["naive social-data task"],
|
|
186
|
+
});
|
|
187
|
+
});
|
|
188
|
+
socialDataCmd
|
|
189
|
+
.command("task <id>")
|
|
190
|
+
.description("Check an async collection task")
|
|
191
|
+
.action(async (id) => {
|
|
192
|
+
const resp = await apiRequest("GET", `/v1/social-data/tasks/${id}`);
|
|
193
|
+
handleApiError("social-data.task", resp);
|
|
194
|
+
agentOutput({
|
|
195
|
+
action: "social-data.task",
|
|
196
|
+
result: resp.data,
|
|
197
|
+
next_steps: [
|
|
198
|
+
{ command: `naive social-data task ${id}`, description: "Poll again if still processing" },
|
|
199
|
+
],
|
|
200
|
+
hints: [creditCostHint(resp.data) ?? ""].filter(Boolean),
|
|
201
|
+
related_commands: ["naive social-data batch"],
|
|
202
|
+
});
|
|
203
|
+
});
|
|
204
|
+
socialDataCmd
|
|
205
|
+
.command("terms")
|
|
206
|
+
.description("The acceptable-use terms this primitive binds you to (free)")
|
|
207
|
+
.action(async () => {
|
|
208
|
+
const resp = await apiRequest("GET", "/v1/social-data/terms");
|
|
209
|
+
handleApiError("social-data.terms", resp);
|
|
210
|
+
agentOutput({
|
|
211
|
+
action: "social-data.terms",
|
|
212
|
+
result: resp.data,
|
|
213
|
+
next_steps: [],
|
|
214
|
+
hints: ["Unmetered. These are the product surface of ToS Section 18."],
|
|
215
|
+
related_commands: ["naive social-data erase"],
|
|
216
|
+
});
|
|
217
|
+
});
|
|
218
|
+
// Post authors are data subjects too, so the deletion surface exists here for
|
|
219
|
+
// the same reason it does on People — see the note in commands/people.ts.
|
|
220
|
+
socialDataCmd
|
|
221
|
+
.command("erase")
|
|
222
|
+
.description("Erase everything held about one post author (free)")
|
|
223
|
+
.option("--handle <handle>", "The author's platform handle")
|
|
224
|
+
.option("--email <email>", "The author's email, if known")
|
|
225
|
+
.option("--linkedin <url>", "The author's LinkedIn URL, if known")
|
|
226
|
+
.action(async (opts) => {
|
|
227
|
+
if (!opts.handle && !opts.email && !opts.linkedin) {
|
|
228
|
+
throw new Error("Pass --handle, --email or --linkedin to identify the data subject.");
|
|
229
|
+
}
|
|
230
|
+
const resp = await apiRequest("POST", "/v1/social-data/erasure", {
|
|
231
|
+
handle: opts.handle,
|
|
232
|
+
email: opts.email,
|
|
233
|
+
linkedin: opts.linkedin,
|
|
234
|
+
});
|
|
235
|
+
handleApiError("social-data.erase", resp);
|
|
236
|
+
agentOutput({
|
|
237
|
+
action: "social-data.erase",
|
|
238
|
+
result: resp.data,
|
|
239
|
+
next_steps: [],
|
|
240
|
+
hints: ["Unmetered — honouring a deletion request is never billed."],
|
|
241
|
+
related_commands: ["naive social-data terms"],
|
|
242
|
+
});
|
|
243
|
+
});
|
|
244
|
+
//# sourceMappingURL=social-data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"social-data.js","sourceRoot":"","sources":["../../src/commands/social-data.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/social.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
2
|
import { apiRequest, handleApiError } from "../client.js";
|
|
3
3
|
import { agentOutput } from "../output.js";
|
|
4
|
+
import { FIXED_CREDIT_COSTS } from "../lib/pricing.js";
|
|
4
5
|
export const socialCmd = new Command("social")
|
|
5
6
|
.description("Social media — connect accounts, create posts, view analytics")
|
|
6
7
|
.addHelpText("after", `
|
|
@@ -36,7 +37,8 @@ Platform Tips:
|
|
|
36
37
|
Reddit: pass --platform-data '{"REDDIT":{"sr":"subreddit"}}' for subreddit
|
|
37
38
|
|
|
38
39
|
Cost:
|
|
39
|
-
- Publishing a post:
|
|
40
|
+
- Publishing a post: ${FIXED_CREDIT_COSTS.socialPost} credits, plus ${FIXED_CREDIT_COSTS.socialXPost} if it targets X
|
|
41
|
+
(${FIXED_CREDIT_COSTS.socialXPostWithLink} instead when that X post contains a link — X charges us far more for those)
|
|
40
42
|
- Drafts, analytics, account management: free
|
|
41
43
|
`);
|
|
42
44
|
socialCmd
|
|
@@ -76,7 +78,7 @@ socialCmd
|
|
|
76
78
|
.command("connect")
|
|
77
79
|
.description("Get OAuth URL to connect a social media account")
|
|
78
80
|
.requiredOption("--platform <platform>", "Platform: TWITTER, LINKEDIN, INSTAGRAM, FACEBOOK, TIKTOK, YOUTUBE, THREADS, PINTEREST, REDDIT, BLUESKY")
|
|
79
|
-
.option("--redirect-url <url>", "URL to redirect after connection", "https://usenaive.ai
|
|
81
|
+
.option("--redirect-url <url>", "URL to redirect after connection", "https://dashboard.usenaive.ai")
|
|
80
82
|
.action(async (opts) => {
|
|
81
83
|
const resp = await apiRequest("POST", "/v1/social/connect", {
|
|
82
84
|
platform: opts.platform.toUpperCase(),
|
|
@@ -100,7 +102,7 @@ socialCmd
|
|
|
100
102
|
socialCmd
|
|
101
103
|
.command("portal")
|
|
102
104
|
.description("Get a portal URL to connect multiple social media platforms at once")
|
|
103
|
-
.option("--redirect-url <url>", "URL to redirect after connection", "https://usenaive.ai
|
|
105
|
+
.option("--redirect-url <url>", "URL to redirect after connection", "https://dashboard.usenaive.ai")
|
|
104
106
|
.option("--platforms <list>", "Comma-separated platform list to show")
|
|
105
107
|
.action(async (opts) => {
|
|
106
108
|
const body = { redirect_url: opts.redirectUrl };
|
|
@@ -280,7 +282,7 @@ socialCmd
|
|
|
280
282
|
hints: [
|
|
281
283
|
data.status === "draft"
|
|
282
284
|
? "Draft created. Use 'naive social publish' to publish, or re-run with --publish."
|
|
283
|
-
: `Post ${data.status === "publishing" ? "queued for publishing" : "scheduled"}.
|
|
285
|
+
: `Post ${data.status === "publishing" ? "queued for publishing" : "scheduled"}. From ${FIXED_CREDIT_COSTS.socialPost} credits deducted (see 'naive usage').`,
|
|
284
286
|
],
|
|
285
287
|
related_commands: ["naive social posts", "naive social analytics"],
|
|
286
288
|
});
|
|
@@ -343,7 +345,7 @@ socialCmd
|
|
|
343
345
|
});
|
|
344
346
|
socialCmd
|
|
345
347
|
.command("publish <post-id>")
|
|
346
|
-
.description(
|
|
348
|
+
.description(`Publish a draft social media post (from ${FIXED_CREDIT_COSTS.socialPost} credits)`)
|
|
347
349
|
.action(async (postId) => {
|
|
348
350
|
const resp = await apiRequest("POST", `/v1/social/posts/${postId}/publish`);
|
|
349
351
|
handleApiError("social.publish", resp);
|
|
@@ -354,7 +356,7 @@ socialCmd
|
|
|
354
356
|
{ command: `naive social get ${postId}`, description: "Check post status" },
|
|
355
357
|
{ command: `naive social analytics ${postId}`, description: "View analytics" },
|
|
356
358
|
],
|
|
357
|
-
hints: [
|
|
359
|
+
hints: [`Post published (from ${FIXED_CREDIT_COSTS.socialPost} credits deducted — see 'naive usage')`],
|
|
358
360
|
});
|
|
359
361
|
});
|
|
360
362
|
socialCmd
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"social.js","sourceRoot":"","sources":["../../src/commands/social.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"social.js","sourceRoot":"","sources":["../../src/commands/social.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `naive teams` — the durable-runtime surface.
|
|
3
|
+
*
|
|
4
|
+
* This file declares NO subcommand. It walks `lib/teams-catalog.ts` and builds
|
|
5
|
+
* one commander command per row, so the 28 subcommands, their flags, their REST
|
|
6
|
+
* paths and their ActionIds all come from a single array (06 §1.4). Adding a
|
|
7
|
+
* command means adding a row.
|
|
8
|
+
*
|
|
9
|
+
* ── WHAT IS AND IS NOT TRUE ABOUT THIS SURFACE TODAY ────────────────────────
|
|
10
|
+
*
|
|
11
|
+
* 🔴 THIS HEADER USED TO SAY THE OPPOSITE OF WHAT IS TRUE, and it said it three
|
|
12
|
+
* times — here, in `runtimeSurfaceMissing` below, and in the group's `--help`.
|
|
13
|
+
* The claim was: *"there is no `app.use("/v1/teams", …)` … every command below
|
|
14
|
+
* currently reaches the API's catch-all and gets a 404."*
|
|
15
|
+
*
|
|
16
|
+
* MEASURED against `packages/api/src/server.ts` in this tree:
|
|
17
|
+
*
|
|
18
|
+
* packages/api/src/server.ts:671
|
|
19
|
+
* app.use("/v1/teams", requireSessionOrAuth, idempotency, teamsRouter);
|
|
20
|
+
*
|
|
21
|
+
* and a booted route table counts **30 live `/v1/teams/*` routes**. The mount is
|
|
22
|
+
* real and has been for the whole life of this file. Every subcommand below
|
|
23
|
+
* reaches a handler.
|
|
24
|
+
*
|
|
25
|
+
* ⚠ AND THE EVIDENCE THAT LOOKS LIKE IT CONFIRMS THIS DOES NOT. `GET /v1/teams`
|
|
26
|
+
* against a deployed API answers `401`, and so does `GET /v1/nope`, because
|
|
27
|
+
* `server.ts:712` puts `requireAuth` on the whole `/v1` prefix ahead of the 404
|
|
28
|
+
* catch-all. A 401 says nothing about whether a route exists. The booted route
|
|
29
|
+
* table is the evidence; a status code from the outside is not.
|
|
30
|
+
*
|
|
31
|
+
* ── WHAT IS ACTUALLY TRUE: IT DEPENDS ON THE TENANT'S RUNTIME ───────────────
|
|
32
|
+
*
|
|
33
|
+
* A tenant is on the durable runtime or on the frozen legacy one, and which is a
|
|
34
|
+
* single column (`company_containers.sidecar_url`). Of these 28 subcommands,
|
|
35
|
+
* **18 return real rows for a durable tenant and 12 for a hermes tenant**; the
|
|
36
|
+
* rest answer `501 not_configured` naming what is missing FOR THAT RUNTIME.
|
|
37
|
+
* `naive teams plan` reports which runtime a given tenant is on.
|
|
38
|
+
*
|
|
39
|
+
* `runtimeSurfaceMissing` below is kept, and it is no longer about this surface:
|
|
40
|
+
* it detects the API's unmounted-path catch-all, which is what a CLI built
|
|
41
|
+
* against a NEWER API than the one it is pointed at will hit. That is a real
|
|
42
|
+
* failure mode with a real remedy, and it is distinguishable from a genuine
|
|
43
|
+
* not-found — the catch-all answers `resource_not_found` with the literal
|
|
44
|
+
* message `Cannot <METHOD> <path>` (server.ts:668), which no route handler
|
|
45
|
+
* produces.
|
|
46
|
+
*/
|
|
47
|
+
import { Command } from "commander";
|
|
48
|
+
/**
|
|
49
|
+
* `--tenant` is required on every subcommand except `list`, and there is NO
|
|
50
|
+
* default. The addressing tuple is `(company, tenant, team)`; a command that
|
|
51
|
+
* guesses the tenant is a command that acts on the wrong tenant exactly once.
|
|
52
|
+
*
|
|
53
|
+
* `@self` is the one shorthand, and it resolves to the operator's own selected
|
|
54
|
+
* subject rather than to a server-side default — if nothing is selected it is an
|
|
55
|
+
* error, not `"default"`.
|
|
56
|
+
*/
|
|
57
|
+
export declare function resolveTenant(raw: string | undefined): string;
|
|
58
|
+
/**
|
|
59
|
+
* True when the response is the API's UNMOUNTED-PATH catch-all rather than a
|
|
60
|
+
* route that looked for something and did not find it.
|
|
61
|
+
*/
|
|
62
|
+
export declare function runtimeSurfaceMissing(status: number, data: unknown): boolean;
|
|
63
|
+
/**
|
|
64
|
+
* True when a plan body reports a non-empty `changes`. Absent or unreadable is
|
|
65
|
+
* FALSE — `--detailed-exitcode` must not report a diff it could not see, because
|
|
66
|
+
* a caller uses exit 2 to decide whether to run an apply.
|
|
67
|
+
*/
|
|
68
|
+
export declare function planHasChanges(data: unknown): boolean;
|
|
69
|
+
export declare const teamsCmd: Command;
|