@usenaive-sdk/cli 0.15.0 → 1.0.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 +43 -354
- package/dist/index.js +51775 -502
- package/package.json +22 -18
- package/dist/client.d.ts +0 -108
- package/dist/client.js +0 -458
- package/dist/client.js.map +0 -1
- package/dist/commands/account-kits.d.ts +0 -2
- package/dist/commands/account-kits.js +0 -71
- package/dist/commands/account-kits.js.map +0 -1
- package/dist/commands/aeo.d.ts +0 -2
- package/dist/commands/aeo.js +0 -451
- package/dist/commands/aeo.js.map +0 -1
- package/dist/commands/agent-profiles.d.ts +0 -11
- package/dist/commands/agent-profiles.js +0 -120
- package/dist/commands/agent-profiles.js.map +0 -1
- package/dist/commands/agents.d.ts +0 -2
- package/dist/commands/agents.js +0 -916
- package/dist/commands/agents.js.map +0 -1
- package/dist/commands/app-data.d.ts +0 -2
- package/dist/commands/app-data.js +0 -445
- package/dist/commands/app-data.js.map +0 -1
- package/dist/commands/approvals.d.ts +0 -2
- package/dist/commands/approvals.js +0 -242
- package/dist/commands/approvals.js.map +0 -1
- package/dist/commands/apps.d.ts +0 -9
- package/dist/commands/apps.js +0 -844
- package/dist/commands/apps.js.map +0 -1
- package/dist/commands/audio.d.ts +0 -9
- package/dist/commands/audio.js +0 -391
- package/dist/commands/audio.js.map +0 -1
- package/dist/commands/auth.d.ts +0 -31
- package/dist/commands/auth.js +0 -428
- package/dist/commands/auth.js.map +0 -1
- package/dist/commands/billing.d.ts +0 -2
- package/dist/commands/billing.js +0 -245
- package/dist/commands/billing.js.map +0 -1
- package/dist/commands/brain.d.ts +0 -2
- package/dist/commands/brain.js +0 -1300
- package/dist/commands/brain.js.map +0 -1
- package/dist/commands/browser.d.ts +0 -2
- package/dist/commands/browser.js +0 -378
- package/dist/commands/browser.js.map +0 -1
- package/dist/commands/business.d.ts +0 -2
- package/dist/commands/business.js +0 -566
- package/dist/commands/business.js.map +0 -1
- package/dist/commands/cards.d.ts +0 -2
- package/dist/commands/cards.js +0 -419
- package/dist/commands/cards.js.map +0 -1
- package/dist/commands/ceo.d.ts +0 -2
- package/dist/commands/ceo.js +0 -369
- package/dist/commands/ceo.js.map +0 -1
- package/dist/commands/clone.d.ts +0 -2
- package/dist/commands/clone.js +0 -203
- package/dist/commands/clone.js.map +0 -1
- package/dist/commands/companies.d.ts +0 -10
- package/dist/commands/companies.js +0 -283
- package/dist/commands/companies.js.map +0 -1
- package/dist/commands/company-data.d.ts +0 -2
- package/dist/commands/company-data.js +0 -168
- package/dist/commands/company-data.js.map +0 -1
- package/dist/commands/compute.d.ts +0 -2
- package/dist/commands/compute.js +0 -498
- package/dist/commands/compute.js.map +0 -1
- package/dist/commands/config.d.ts +0 -2
- package/dist/commands/config.js +0 -36
- package/dist/commands/config.js.map +0 -1
- package/dist/commands/connections.d.ts +0 -8
- package/dist/commands/connections.js +0 -137
- package/dist/commands/connections.js.map +0 -1
- package/dist/commands/cron-jobs.d.ts +0 -2
- package/dist/commands/cron-jobs.js +0 -245
- package/dist/commands/cron-jobs.js.map +0 -1
- package/dist/commands/domains.d.ts +0 -2
- package/dist/commands/domains.js +0 -474
- package/dist/commands/domains.js.map +0 -1
- package/dist/commands/ecommerce.d.ts +0 -2
- package/dist/commands/ecommerce.js +0 -277
- package/dist/commands/ecommerce.js.map +0 -1
- package/dist/commands/email.d.ts +0 -2
- package/dist/commands/email.js +0 -336
- package/dist/commands/email.js.map +0 -1
- package/dist/commands/employees.d.ts +0 -2
- package/dist/commands/employees.js +0 -190
- package/dist/commands/employees.js.map +0 -1
- package/dist/commands/env.d.ts +0 -7
- package/dist/commands/env.js +0 -112
- package/dist/commands/env.js.map +0 -1
- package/dist/commands/formation.d.ts +0 -2
- package/dist/commands/formation.js +0 -273
- package/dist/commands/formation.js.map +0 -1
- package/dist/commands/identity.d.ts +0 -2
- package/dist/commands/identity.js +0 -110
- package/dist/commands/identity.js.map +0 -1
- package/dist/commands/images.d.ts +0 -2
- package/dist/commands/images.js +0 -371
- package/dist/commands/images.js.map +0 -1
- package/dist/commands/init.d.ts +0 -5
- package/dist/commands/init.js +0 -43
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/jobs.d.ts +0 -2
- package/dist/commands/jobs.js +0 -144
- package/dist/commands/jobs.js.map +0 -1
- package/dist/commands/keys.d.ts +0 -2
- package/dist/commands/keys.js +0 -156
- package/dist/commands/keys.js.map +0 -1
- package/dist/commands/legacy-auth.d.ts +0 -27
- package/dist/commands/legacy-auth.js +0 -64
- package/dist/commands/legacy-auth.js.map +0 -1
- package/dist/commands/llm.d.ts +0 -2
- package/dist/commands/llm.js +0 -106
- package/dist/commands/llm.js.map +0 -1
- package/dist/commands/login.d.ts +0 -2
- package/dist/commands/login.js +0 -65
- package/dist/commands/login.js.map +0 -1
- package/dist/commands/logout.d.ts +0 -7
- package/dist/commands/logout.js +0 -55
- package/dist/commands/logout.js.map +0 -1
- package/dist/commands/logs.d.ts +0 -2
- package/dist/commands/logs.js +0 -42
- package/dist/commands/logs.js.map +0 -1
- package/dist/commands/loops.d.ts +0 -2
- package/dist/commands/loops.js +0 -260
- package/dist/commands/loops.js.map +0 -1
- package/dist/commands/media.d.ts +0 -2
- package/dist/commands/media.js +0 -183
- package/dist/commands/media.js.map +0 -1
- package/dist/commands/memory.d.ts +0 -2
- package/dist/commands/memory.js +0 -151
- package/dist/commands/memory.js.map +0 -1
- package/dist/commands/mobile.d.ts +0 -4
- package/dist/commands/mobile.js +0 -382
- package/dist/commands/mobile.js.map +0 -1
- package/dist/commands/module.d.ts +0 -8
- package/dist/commands/module.js +0 -48
- package/dist/commands/module.js.map +0 -1
- package/dist/commands/objectives.d.ts +0 -2
- package/dist/commands/objectives.js +0 -243
- package/dist/commands/objectives.js.map +0 -1
- package/dist/commands/payments.d.ts +0 -2
- package/dist/commands/payments.js +0 -131
- package/dist/commands/payments.js.map +0 -1
- package/dist/commands/people.d.ts +0 -2
- package/dist/commands/people.js +0 -197
- package/dist/commands/people.js.map +0 -1
- package/dist/commands/phone.d.ts +0 -2
- package/dist/commands/phone.js +0 -289
- package/dist/commands/phone.js.map +0 -1
- package/dist/commands/projects.d.ts +0 -13
- package/dist/commands/projects.js +0 -220
- package/dist/commands/projects.js.map +0 -1
- package/dist/commands/queue.d.ts +0 -2
- package/dist/commands/queue.js +0 -121
- package/dist/commands/queue.js.map +0 -1
- package/dist/commands/register.d.ts +0 -2
- package/dist/commands/register.js +0 -80
- package/dist/commands/register.js.map +0 -1
- package/dist/commands/report.d.ts +0 -17
- package/dist/commands/report.js +0 -109
- package/dist/commands/report.js.map +0 -1
- package/dist/commands/sandbox.d.ts +0 -2
- package/dist/commands/sandbox.js +0 -558
- package/dist/commands/sandbox.js.map +0 -1
- package/dist/commands/search.d.ts +0 -2
- package/dist/commands/search.js +0 -223
- package/dist/commands/search.js.map +0 -1
- package/dist/commands/seo.d.ts +0 -2
- package/dist/commands/seo.js +0 -528
- package/dist/commands/seo.js.map +0 -1
- package/dist/commands/sessions.d.ts +0 -6
- package/dist/commands/sessions.js +0 -109
- package/dist/commands/sessions.js.map +0 -1
- package/dist/commands/social-data.d.ts +0 -2
- package/dist/commands/social-data.js +0 -245
- package/dist/commands/social-data.js.map +0 -1
- package/dist/commands/social.d.ts +0 -2
- package/dist/commands/social.js +0 -407
- package/dist/commands/social.js.map +0 -1
- package/dist/commands/status.d.ts +0 -2
- package/dist/commands/status.js +0 -73
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/support.d.ts +0 -2
- package/dist/commands/support.js +0 -134
- package/dist/commands/support.js.map +0 -1
- package/dist/commands/tasks.d.ts +0 -2
- package/dist/commands/tasks.js +0 -409
- package/dist/commands/tasks.js.map +0 -1
- package/dist/commands/teams.d.ts +0 -69
- package/dist/commands/teams.js +0 -503
- package/dist/commands/teams.js.map +0 -1
- package/dist/commands/trading.d.ts +0 -2
- package/dist/commands/trading.js +0 -333
- package/dist/commands/trading.js.map +0 -1
- package/dist/commands/up.d.ts +0 -551
- package/dist/commands/up.js +0 -1149
- package/dist/commands/up.js.map +0 -1
- package/dist/commands/usage.d.ts +0 -2
- package/dist/commands/usage.js +0 -73
- package/dist/commands/usage.js.map +0 -1
- package/dist/commands/use.d.ts +0 -12
- package/dist/commands/use.js +0 -96
- package/dist/commands/use.js.map +0 -1
- package/dist/commands/users.d.ts +0 -10
- package/dist/commands/users.js +0 -82
- package/dist/commands/users.js.map +0 -1
- package/dist/commands/vault.d.ts +0 -2
- package/dist/commands/vault.js +0 -101
- package/dist/commands/vault.js.map +0 -1
- package/dist/commands/verification.d.ts +0 -2
- package/dist/commands/verification.js +0 -152
- package/dist/commands/verification.js.map +0 -1
- package/dist/commands/verify-email.d.ts +0 -19
- package/dist/commands/verify-email.js +0 -112
- package/dist/commands/verify-email.js.map +0 -1
- package/dist/commands/video.d.ts +0 -2
- package/dist/commands/video.js +0 -417
- package/dist/commands/video.js.map +0 -1
- package/dist/commands/voice.d.ts +0 -2
- package/dist/commands/voice.js +0 -516
- package/dist/commands/voice.js.map +0 -1
- package/dist/commands/wallet.d.ts +0 -2
- package/dist/commands/wallet.js +0 -244
- package/dist/commands/wallet.js.map +0 -1
- package/dist/commands/webhooks.d.ts +0 -13
- package/dist/commands/webhooks.js +0 -119
- package/dist/commands/webhooks.js.map +0 -1
- package/dist/commands/whoami.d.ts +0 -2
- package/dist/commands/whoami.js +0 -53
- package/dist/commands/whoami.js.map +0 -1
- package/dist/config.d.ts +0 -42
- package/dist/config.js +0 -83
- package/dist/config.js.map +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.js.map +0 -1
- package/dist/lib/brain-select.d.ts +0 -193
- package/dist/lib/brain-select.js +0 -403
- package/dist/lib/brain-select.js.map +0 -1
- package/dist/lib/cli-validation.d.ts +0 -12
- package/dist/lib/cli-validation.js +0 -46
- package/dist/lib/cli-validation.js.map +0 -1
- package/dist/lib/config-errors.d.ts +0 -4
- package/dist/lib/config-errors.js +0 -13
- package/dist/lib/config-errors.js.map +0 -1
- package/dist/lib/deprecation.d.ts +0 -158
- package/dist/lib/deprecation.js +0 -140
- package/dist/lib/deprecation.js.map +0 -1
- package/dist/lib/duration.d.ts +0 -8
- package/dist/lib/duration.js +0 -11
- package/dist/lib/duration.js.map +0 -1
- package/dist/lib/http-response.d.ts +0 -11
- package/dist/lib/http-response.js +0 -96
- package/dist/lib/http-response.js.map +0 -1
- package/dist/lib/pricing.d.ts +0 -132
- package/dist/lib/pricing.js +0 -148
- package/dist/lib/pricing.js.map +0 -1
- package/dist/lib/starter-config.d.ts +0 -13
- package/dist/lib/starter-config.js +0 -71
- package/dist/lib/starter-config.js.map +0 -1
- package/dist/lib/stream-frames.d.ts +0 -114
- package/dist/lib/stream-frames.js +0 -169
- package/dist/lib/stream-frames.js.map +0 -1
- package/dist/lib/teams-catalog.d.ts +0 -141
- package/dist/lib/teams-catalog.js +0 -841
- package/dist/lib/teams-catalog.js.map +0 -1
- package/dist/lib/unknown-command.d.ts +0 -71
- package/dist/lib/unknown-command.js +0 -132
- package/dist/lib/unknown-command.js.map +0 -1
- package/dist/lib/version-check.d.ts +0 -26
- package/dist/lib/version-check.js +0 -21
- package/dist/lib/version-check.js.map +0 -1
- package/dist/output.d.ts +0 -174
- package/dist/output.js +0 -435
- package/dist/output.js.map +0 -1
- package/dist/prompt.d.ts +0 -17
- package/dist/prompt.js +0 -70
- package/dist/prompt.js.map +0 -1
- package/dist/version.d.ts +0 -2
- package/dist/version.js +0 -14
- package/dist/version.js.map +0 -1
package/dist/commands/billing.js
DELETED
|
@@ -1,245 +0,0 @@
|
|
|
1
|
-
import { Command } from "commander";
|
|
2
|
-
import { apiRequest, handleApiError } from "../client.js";
|
|
3
|
-
import { agentOutput } from "../output.js";
|
|
4
|
-
import { CREDIT_PACKS, packInline, packPrice, packRow } from "../lib/pricing.js";
|
|
5
|
-
export const billingCmd = new Command("billing")
|
|
6
|
-
.description("Manage billing — plans, subscriptions, credit packs, upgrades")
|
|
7
|
-
.addHelpText("after", `
|
|
8
|
-
Subcommands:
|
|
9
|
-
naive billing plans List available subscription plans
|
|
10
|
-
naive billing subscribe Subscribe to a plan (returns checkout URL)
|
|
11
|
-
naive billing upgrade Upgrade to a higher plan
|
|
12
|
-
naive billing status Check subscription, credits, and billing state
|
|
13
|
-
naive billing portal Get billing management URL
|
|
14
|
-
naive billing packs List credit top-up packs with prices
|
|
15
|
-
naive billing topup Buy a credit pack (returns checkout URL)
|
|
16
|
-
|
|
17
|
-
Plans:
|
|
18
|
-
Pro $20/mo 400 credits/month All primitives, custom domains, priority support
|
|
19
|
-
|
|
20
|
-
400 credits x $0.05 = $20 — the plan is at par with pay-as-you-go, not a discount.
|
|
21
|
-
Past the included credits you spend from your credit balance; top up with a pack.
|
|
22
|
-
|
|
23
|
-
\`naive billing plans\` is the authority: it renders the API's own catalogue, and
|
|
24
|
-
\`naive billing status\` reports YOUR plan, price and monthly allowance, which for a
|
|
25
|
-
subscription bought before a repricing are its ORIGINAL terms, not the ones above.
|
|
26
|
-
|
|
27
|
-
Credit Packs (one-time purchase):
|
|
28
|
-
${CREDIT_PACKS.map(packRow).join("\n")}
|
|
29
|
-
|
|
30
|
-
New accounts get 20 free credits after verifying their email — buy more anytime with a credit pack or a plan.
|
|
31
|
-
|
|
32
|
-
Examples:
|
|
33
|
-
$ naive billing plans
|
|
34
|
-
$ naive billing subscribe --plan pro
|
|
35
|
-
$ naive billing upgrade --plan pro
|
|
36
|
-
$ naive billing status
|
|
37
|
-
$ naive billing packs
|
|
38
|
-
$ naive billing topup --pack medium
|
|
39
|
-
$ naive billing portal
|
|
40
|
-
`);
|
|
41
|
-
billingCmd
|
|
42
|
-
.command("plans")
|
|
43
|
-
.description("List available subscription plans with pricing and trial info")
|
|
44
|
-
.action(async () => {
|
|
45
|
-
const resp = await apiRequest("GET", "/v1/billing/plans");
|
|
46
|
-
handleApiError("billing.plans", resp);
|
|
47
|
-
const data = resp.data;
|
|
48
|
-
/**
|
|
49
|
-
* Every plan id here is read out of the response, never typed.
|
|
50
|
-
*
|
|
51
|
-
* These next steps used to say `--plan starter` — the plan the CLI happened to
|
|
52
|
-
* be written against. After the single-Pro repricing that id is a 400, so the
|
|
53
|
-
* command we printed as the next step could not be run. The API is the only
|
|
54
|
-
* thing that knows what it sells; taking the id from its own answer means the
|
|
55
|
-
* suggestion cannot outlive the catalogue.
|
|
56
|
-
*/
|
|
57
|
-
const offer = data.plans[0];
|
|
58
|
-
const nextSteps = [];
|
|
59
|
-
if (data.trial_eligible && offer) {
|
|
60
|
-
nextSteps.push({
|
|
61
|
-
command: `naive billing subscribe --plan ${offer.id}`,
|
|
62
|
-
description: `Start with ${offer.name} (7-day free trial)`,
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
if (data.can_upgrade && offer) {
|
|
66
|
-
nextSteps.push({
|
|
67
|
-
command: `naive billing upgrade --plan ${offer.id}`,
|
|
68
|
-
description: `Upgrade to ${offer.name}`,
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
nextSteps.push({ command: "naive billing packs", description: "See credit top-up packs" });
|
|
72
|
-
// What the caller is on, in their own numbers. Printing the bare plan id was
|
|
73
|
-
// how a subscriber ended up reading the catalogue's price as if it were theirs:
|
|
74
|
-
// the ids match across a repricing while the terms do not.
|
|
75
|
-
const mine = data.current_plan_detail;
|
|
76
|
-
agentOutput({
|
|
77
|
-
action: "billing.plans",
|
|
78
|
-
result: resp.data,
|
|
79
|
-
next_steps: nextSteps,
|
|
80
|
-
hints: [
|
|
81
|
-
mine
|
|
82
|
-
? `Current plan: ${mine.name} — ${mine.price ?? "price unavailable"}, ${mine.credits_per_month} credits/month`
|
|
83
|
-
: `Current plan: ${data.current_plan}`,
|
|
84
|
-
...(mine && !mine.is_current_offer
|
|
85
|
-
? [
|
|
86
|
-
`Your plan is no longer sold to new subscribers. It is unchanged: you keep ${mine.price ?? "your price"} and ${mine.credits_per_month} credits/month for as long as the subscription runs.`,
|
|
87
|
-
]
|
|
88
|
-
: []),
|
|
89
|
-
...(data.trial_eligible ? ["First-time subscribers get a 7-day free trial on a paid plan"] : []),
|
|
90
|
-
],
|
|
91
|
-
related_commands: ["naive billing subscribe", "naive billing upgrade", "naive billing packs", "naive billing status"],
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
billingCmd
|
|
95
|
-
.command("subscribe")
|
|
96
|
-
.description("Subscribe to a plan — returns a checkout URL")
|
|
97
|
-
// `naive billing plans` is the live list; this names the only sellable id.
|
|
98
|
-
.requiredOption("--plan <plan>", "Plan to subscribe to (pro)")
|
|
99
|
-
.action(async (opts) => {
|
|
100
|
-
const resp = await apiRequest("POST", "/v1/billing/subscribe", { plan: opts.plan });
|
|
101
|
-
handleApiError("billing.subscribe", resp);
|
|
102
|
-
const data = resp.data;
|
|
103
|
-
agentOutput({
|
|
104
|
-
action: "billing.subscribe",
|
|
105
|
-
result: resp.data,
|
|
106
|
-
next_steps: [
|
|
107
|
-
{ command: "naive billing status", description: "Check if payment completed" },
|
|
108
|
-
],
|
|
109
|
-
hints: [
|
|
110
|
-
`Open this URL to complete payment: ${data.checkout_url}`,
|
|
111
|
-
"After payment, check status with 'naive billing status'",
|
|
112
|
-
],
|
|
113
|
-
related_commands: ["naive billing status", "naive billing plans"],
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
billingCmd
|
|
117
|
-
.command("upgrade")
|
|
118
|
-
.description("Upgrade to a higher plan")
|
|
119
|
-
.requiredOption("--plan <plan>", "Plan to upgrade to (pro)")
|
|
120
|
-
.action(async (opts) => {
|
|
121
|
-
const resp = await apiRequest("POST", "/v1/billing/upgrade", { plan: opts.plan });
|
|
122
|
-
handleApiError("billing.upgrade", resp);
|
|
123
|
-
const data = resp.data;
|
|
124
|
-
const url = data.portal_url ?? data.checkout_url;
|
|
125
|
-
agentOutput({
|
|
126
|
-
action: "billing.upgrade",
|
|
127
|
-
result: resp.data,
|
|
128
|
-
next_steps: [
|
|
129
|
-
{ command: "naive billing status", description: "Check updated plan" },
|
|
130
|
-
],
|
|
131
|
-
hints: [
|
|
132
|
-
`Open this URL to ${data.portal_url ? "manage your plan" : "complete payment"}: ${url}`,
|
|
133
|
-
],
|
|
134
|
-
related_commands: ["naive billing status", "naive billing plans"],
|
|
135
|
-
});
|
|
136
|
-
});
|
|
137
|
-
billingCmd
|
|
138
|
-
.command("status")
|
|
139
|
-
.description("Check subscription, credit balance, and billing state")
|
|
140
|
-
.action(async () => {
|
|
141
|
-
const resp = await apiRequest("GET", "/v1/billing/status");
|
|
142
|
-
handleApiError("billing.status", resp);
|
|
143
|
-
const data = resp.data;
|
|
144
|
-
const sub = data.subscription;
|
|
145
|
-
const billing = data.billing;
|
|
146
|
-
const nextSteps = [...data.next_steps];
|
|
147
|
-
nextSteps.push({ command: "naive usage", description: "View credit transaction history" });
|
|
148
|
-
// The terms come from the response, so a subscription bought before a
|
|
149
|
-
// repricing prints ITS price and ITS allowance. Looking either up from a
|
|
150
|
-
// local table is how a $149 subscriber gets told they are on a $20 plan.
|
|
151
|
-
const terms = sub.price ? ` — ${sub.price}, ${sub.credits_per_month} credits/month` : "";
|
|
152
|
-
const hints = [
|
|
153
|
-
`Plan: ${sub.plan} (${sub.status})${terms}`,
|
|
154
|
-
`Credits remaining: ${sub.credits_remaining}`,
|
|
155
|
-
];
|
|
156
|
-
if (sub.price && sub.is_current_offer === false) {
|
|
157
|
-
hints.push("This plan is no longer sold to new subscribers. Yours is unchanged — same price, same monthly credits, for as long as the subscription runs.");
|
|
158
|
-
}
|
|
159
|
-
if (billing.blocked && billing.block_reason) {
|
|
160
|
-
hints.push(`Billing blocked: ${billing.block_reason.replace(/_/g, " ")}`);
|
|
161
|
-
}
|
|
162
|
-
if (billing.is_trialing && billing.trial_days_remaining !== null) {
|
|
163
|
-
hints.push(`Trial: ${billing.trial_days_remaining} days remaining`);
|
|
164
|
-
}
|
|
165
|
-
if (billing.trial_expired) {
|
|
166
|
-
hints.push("Trial has expired — subscribe to continue");
|
|
167
|
-
}
|
|
168
|
-
if (sub.current_period_end) {
|
|
169
|
-
hints.push(`Period ends: ${sub.current_period_end}`);
|
|
170
|
-
}
|
|
171
|
-
agentOutput({
|
|
172
|
-
action: "billing.status",
|
|
173
|
-
result: resp.data,
|
|
174
|
-
next_steps: nextSteps,
|
|
175
|
-
hints,
|
|
176
|
-
related_commands: ["naive billing plans", "naive billing packs", "naive billing topup", "naive usage"],
|
|
177
|
-
});
|
|
178
|
-
});
|
|
179
|
-
billingCmd
|
|
180
|
-
.command("portal")
|
|
181
|
-
.description("Get a billing portal URL to manage subscription")
|
|
182
|
-
.action(async () => {
|
|
183
|
-
const resp = await apiRequest("POST", "/v1/billing/portal");
|
|
184
|
-
handleApiError("billing.portal", resp);
|
|
185
|
-
const data = resp.data;
|
|
186
|
-
agentOutput({
|
|
187
|
-
action: "billing.portal",
|
|
188
|
-
result: resp.data,
|
|
189
|
-
next_steps: [
|
|
190
|
-
{ command: "naive billing status", description: "Check updated billing state" },
|
|
191
|
-
],
|
|
192
|
-
hints: [
|
|
193
|
-
`Open this URL to manage your subscription: ${data.portal_url}`,
|
|
194
|
-
"From the portal you can update payment method, change plan, or cancel",
|
|
195
|
-
],
|
|
196
|
-
related_commands: ["naive billing status", "naive billing plans"],
|
|
197
|
-
});
|
|
198
|
-
});
|
|
199
|
-
billingCmd
|
|
200
|
-
.command("packs")
|
|
201
|
-
.description("List credit top-up packs with prices")
|
|
202
|
-
.action(async () => {
|
|
203
|
-
const resp = await apiRequest("GET", "/v1/billing/packs");
|
|
204
|
-
handleApiError("billing.packs", resp);
|
|
205
|
-
const data = resp.data;
|
|
206
|
-
agentOutput({
|
|
207
|
-
action: "billing.packs",
|
|
208
|
-
result: resp.data,
|
|
209
|
-
// The badged packs, described from the same table `--help` prints and the
|
|
210
|
-
// API bills — never a second hand-typed "500 credits for $23".
|
|
211
|
-
next_steps: CREDIT_PACKS.filter((p) => p.badge).map((p) => ({
|
|
212
|
-
command: `naive billing topup --pack ${p.id}`,
|
|
213
|
-
description: `Buy ${p.credits} credits for ${packPrice(p)} (${p.badge})`,
|
|
214
|
-
})),
|
|
215
|
-
hints: [
|
|
216
|
-
`Credits remaining: ${data.credits_remaining}`,
|
|
217
|
-
"Larger packs are more cost-effective",
|
|
218
|
-
"Credits never expire",
|
|
219
|
-
],
|
|
220
|
-
related_commands: ["naive billing topup", "naive billing status", "naive billing plans"],
|
|
221
|
-
});
|
|
222
|
-
});
|
|
223
|
-
billingCmd
|
|
224
|
-
.command("topup")
|
|
225
|
-
.description("Purchase a credit pack — returns a checkout URL")
|
|
226
|
-
.requiredOption("--pack <pack_id>", `Pack ID: ${CREDIT_PACKS.map(packInline).join(", ")}`)
|
|
227
|
-
.action(async (opts) => {
|
|
228
|
-
const resp = await apiRequest("POST", "/v1/billing/topup", { pack_id: opts.pack });
|
|
229
|
-
handleApiError("billing.topup", resp);
|
|
230
|
-
const data = resp.data;
|
|
231
|
-
agentOutput({
|
|
232
|
-
action: "billing.topup",
|
|
233
|
-
result: resp.data,
|
|
234
|
-
next_steps: [
|
|
235
|
-
{ command: "naive billing status", description: "Check updated credit balance after payment" },
|
|
236
|
-
],
|
|
237
|
-
hints: [
|
|
238
|
-
`Open this URL to complete payment: ${data.checkout_url}`,
|
|
239
|
-
`Purchasing ${data.pack.credits} credits for ${data.pack.price}`,
|
|
240
|
-
"Credits are added immediately after payment",
|
|
241
|
-
],
|
|
242
|
-
related_commands: ["naive billing status", "naive billing packs"],
|
|
243
|
-
});
|
|
244
|
-
});
|
|
245
|
-
//# sourceMappingURL=billing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"billing.js","sourceRoot":"","sources":["../../src/commands/billing.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/brain.d.ts
DELETED