@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.
Files changed (278) hide show
  1. package/README.md +43 -354
  2. package/dist/index.js +51775 -502
  3. package/package.json +22 -18
  4. package/dist/client.d.ts +0 -108
  5. package/dist/client.js +0 -458
  6. package/dist/client.js.map +0 -1
  7. package/dist/commands/account-kits.d.ts +0 -2
  8. package/dist/commands/account-kits.js +0 -71
  9. package/dist/commands/account-kits.js.map +0 -1
  10. package/dist/commands/aeo.d.ts +0 -2
  11. package/dist/commands/aeo.js +0 -451
  12. package/dist/commands/aeo.js.map +0 -1
  13. package/dist/commands/agent-profiles.d.ts +0 -11
  14. package/dist/commands/agent-profiles.js +0 -120
  15. package/dist/commands/agent-profiles.js.map +0 -1
  16. package/dist/commands/agents.d.ts +0 -2
  17. package/dist/commands/agents.js +0 -916
  18. package/dist/commands/agents.js.map +0 -1
  19. package/dist/commands/app-data.d.ts +0 -2
  20. package/dist/commands/app-data.js +0 -445
  21. package/dist/commands/app-data.js.map +0 -1
  22. package/dist/commands/approvals.d.ts +0 -2
  23. package/dist/commands/approvals.js +0 -242
  24. package/dist/commands/approvals.js.map +0 -1
  25. package/dist/commands/apps.d.ts +0 -9
  26. package/dist/commands/apps.js +0 -844
  27. package/dist/commands/apps.js.map +0 -1
  28. package/dist/commands/audio.d.ts +0 -9
  29. package/dist/commands/audio.js +0 -391
  30. package/dist/commands/audio.js.map +0 -1
  31. package/dist/commands/auth.d.ts +0 -31
  32. package/dist/commands/auth.js +0 -428
  33. package/dist/commands/auth.js.map +0 -1
  34. package/dist/commands/billing.d.ts +0 -2
  35. package/dist/commands/billing.js +0 -245
  36. package/dist/commands/billing.js.map +0 -1
  37. package/dist/commands/brain.d.ts +0 -2
  38. package/dist/commands/brain.js +0 -1300
  39. package/dist/commands/brain.js.map +0 -1
  40. package/dist/commands/browser.d.ts +0 -2
  41. package/dist/commands/browser.js +0 -378
  42. package/dist/commands/browser.js.map +0 -1
  43. package/dist/commands/business.d.ts +0 -2
  44. package/dist/commands/business.js +0 -566
  45. package/dist/commands/business.js.map +0 -1
  46. package/dist/commands/cards.d.ts +0 -2
  47. package/dist/commands/cards.js +0 -419
  48. package/dist/commands/cards.js.map +0 -1
  49. package/dist/commands/ceo.d.ts +0 -2
  50. package/dist/commands/ceo.js +0 -369
  51. package/dist/commands/ceo.js.map +0 -1
  52. package/dist/commands/clone.d.ts +0 -2
  53. package/dist/commands/clone.js +0 -203
  54. package/dist/commands/clone.js.map +0 -1
  55. package/dist/commands/companies.d.ts +0 -10
  56. package/dist/commands/companies.js +0 -283
  57. package/dist/commands/companies.js.map +0 -1
  58. package/dist/commands/company-data.d.ts +0 -2
  59. package/dist/commands/company-data.js +0 -168
  60. package/dist/commands/company-data.js.map +0 -1
  61. package/dist/commands/compute.d.ts +0 -2
  62. package/dist/commands/compute.js +0 -498
  63. package/dist/commands/compute.js.map +0 -1
  64. package/dist/commands/config.d.ts +0 -2
  65. package/dist/commands/config.js +0 -36
  66. package/dist/commands/config.js.map +0 -1
  67. package/dist/commands/connections.d.ts +0 -8
  68. package/dist/commands/connections.js +0 -137
  69. package/dist/commands/connections.js.map +0 -1
  70. package/dist/commands/cron-jobs.d.ts +0 -2
  71. package/dist/commands/cron-jobs.js +0 -245
  72. package/dist/commands/cron-jobs.js.map +0 -1
  73. package/dist/commands/domains.d.ts +0 -2
  74. package/dist/commands/domains.js +0 -474
  75. package/dist/commands/domains.js.map +0 -1
  76. package/dist/commands/ecommerce.d.ts +0 -2
  77. package/dist/commands/ecommerce.js +0 -277
  78. package/dist/commands/ecommerce.js.map +0 -1
  79. package/dist/commands/email.d.ts +0 -2
  80. package/dist/commands/email.js +0 -336
  81. package/dist/commands/email.js.map +0 -1
  82. package/dist/commands/employees.d.ts +0 -2
  83. package/dist/commands/employees.js +0 -190
  84. package/dist/commands/employees.js.map +0 -1
  85. package/dist/commands/env.d.ts +0 -7
  86. package/dist/commands/env.js +0 -112
  87. package/dist/commands/env.js.map +0 -1
  88. package/dist/commands/formation.d.ts +0 -2
  89. package/dist/commands/formation.js +0 -273
  90. package/dist/commands/formation.js.map +0 -1
  91. package/dist/commands/identity.d.ts +0 -2
  92. package/dist/commands/identity.js +0 -110
  93. package/dist/commands/identity.js.map +0 -1
  94. package/dist/commands/images.d.ts +0 -2
  95. package/dist/commands/images.js +0 -371
  96. package/dist/commands/images.js.map +0 -1
  97. package/dist/commands/init.d.ts +0 -5
  98. package/dist/commands/init.js +0 -43
  99. package/dist/commands/init.js.map +0 -1
  100. package/dist/commands/jobs.d.ts +0 -2
  101. package/dist/commands/jobs.js +0 -144
  102. package/dist/commands/jobs.js.map +0 -1
  103. package/dist/commands/keys.d.ts +0 -2
  104. package/dist/commands/keys.js +0 -156
  105. package/dist/commands/keys.js.map +0 -1
  106. package/dist/commands/legacy-auth.d.ts +0 -27
  107. package/dist/commands/legacy-auth.js +0 -64
  108. package/dist/commands/legacy-auth.js.map +0 -1
  109. package/dist/commands/llm.d.ts +0 -2
  110. package/dist/commands/llm.js +0 -106
  111. package/dist/commands/llm.js.map +0 -1
  112. package/dist/commands/login.d.ts +0 -2
  113. package/dist/commands/login.js +0 -65
  114. package/dist/commands/login.js.map +0 -1
  115. package/dist/commands/logout.d.ts +0 -7
  116. package/dist/commands/logout.js +0 -55
  117. package/dist/commands/logout.js.map +0 -1
  118. package/dist/commands/logs.d.ts +0 -2
  119. package/dist/commands/logs.js +0 -42
  120. package/dist/commands/logs.js.map +0 -1
  121. package/dist/commands/loops.d.ts +0 -2
  122. package/dist/commands/loops.js +0 -260
  123. package/dist/commands/loops.js.map +0 -1
  124. package/dist/commands/media.d.ts +0 -2
  125. package/dist/commands/media.js +0 -183
  126. package/dist/commands/media.js.map +0 -1
  127. package/dist/commands/memory.d.ts +0 -2
  128. package/dist/commands/memory.js +0 -151
  129. package/dist/commands/memory.js.map +0 -1
  130. package/dist/commands/mobile.d.ts +0 -4
  131. package/dist/commands/mobile.js +0 -382
  132. package/dist/commands/mobile.js.map +0 -1
  133. package/dist/commands/module.d.ts +0 -8
  134. package/dist/commands/module.js +0 -48
  135. package/dist/commands/module.js.map +0 -1
  136. package/dist/commands/objectives.d.ts +0 -2
  137. package/dist/commands/objectives.js +0 -243
  138. package/dist/commands/objectives.js.map +0 -1
  139. package/dist/commands/payments.d.ts +0 -2
  140. package/dist/commands/payments.js +0 -131
  141. package/dist/commands/payments.js.map +0 -1
  142. package/dist/commands/people.d.ts +0 -2
  143. package/dist/commands/people.js +0 -197
  144. package/dist/commands/people.js.map +0 -1
  145. package/dist/commands/phone.d.ts +0 -2
  146. package/dist/commands/phone.js +0 -289
  147. package/dist/commands/phone.js.map +0 -1
  148. package/dist/commands/projects.d.ts +0 -13
  149. package/dist/commands/projects.js +0 -220
  150. package/dist/commands/projects.js.map +0 -1
  151. package/dist/commands/queue.d.ts +0 -2
  152. package/dist/commands/queue.js +0 -121
  153. package/dist/commands/queue.js.map +0 -1
  154. package/dist/commands/register.d.ts +0 -2
  155. package/dist/commands/register.js +0 -80
  156. package/dist/commands/register.js.map +0 -1
  157. package/dist/commands/report.d.ts +0 -17
  158. package/dist/commands/report.js +0 -109
  159. package/dist/commands/report.js.map +0 -1
  160. package/dist/commands/sandbox.d.ts +0 -2
  161. package/dist/commands/sandbox.js +0 -558
  162. package/dist/commands/sandbox.js.map +0 -1
  163. package/dist/commands/search.d.ts +0 -2
  164. package/dist/commands/search.js +0 -223
  165. package/dist/commands/search.js.map +0 -1
  166. package/dist/commands/seo.d.ts +0 -2
  167. package/dist/commands/seo.js +0 -528
  168. package/dist/commands/seo.js.map +0 -1
  169. package/dist/commands/sessions.d.ts +0 -6
  170. package/dist/commands/sessions.js +0 -109
  171. package/dist/commands/sessions.js.map +0 -1
  172. package/dist/commands/social-data.d.ts +0 -2
  173. package/dist/commands/social-data.js +0 -245
  174. package/dist/commands/social-data.js.map +0 -1
  175. package/dist/commands/social.d.ts +0 -2
  176. package/dist/commands/social.js +0 -407
  177. package/dist/commands/social.js.map +0 -1
  178. package/dist/commands/status.d.ts +0 -2
  179. package/dist/commands/status.js +0 -73
  180. package/dist/commands/status.js.map +0 -1
  181. package/dist/commands/support.d.ts +0 -2
  182. package/dist/commands/support.js +0 -134
  183. package/dist/commands/support.js.map +0 -1
  184. package/dist/commands/tasks.d.ts +0 -2
  185. package/dist/commands/tasks.js +0 -409
  186. package/dist/commands/tasks.js.map +0 -1
  187. package/dist/commands/teams.d.ts +0 -69
  188. package/dist/commands/teams.js +0 -503
  189. package/dist/commands/teams.js.map +0 -1
  190. package/dist/commands/trading.d.ts +0 -2
  191. package/dist/commands/trading.js +0 -333
  192. package/dist/commands/trading.js.map +0 -1
  193. package/dist/commands/up.d.ts +0 -551
  194. package/dist/commands/up.js +0 -1149
  195. package/dist/commands/up.js.map +0 -1
  196. package/dist/commands/usage.d.ts +0 -2
  197. package/dist/commands/usage.js +0 -73
  198. package/dist/commands/usage.js.map +0 -1
  199. package/dist/commands/use.d.ts +0 -12
  200. package/dist/commands/use.js +0 -96
  201. package/dist/commands/use.js.map +0 -1
  202. package/dist/commands/users.d.ts +0 -10
  203. package/dist/commands/users.js +0 -82
  204. package/dist/commands/users.js.map +0 -1
  205. package/dist/commands/vault.d.ts +0 -2
  206. package/dist/commands/vault.js +0 -101
  207. package/dist/commands/vault.js.map +0 -1
  208. package/dist/commands/verification.d.ts +0 -2
  209. package/dist/commands/verification.js +0 -152
  210. package/dist/commands/verification.js.map +0 -1
  211. package/dist/commands/verify-email.d.ts +0 -19
  212. package/dist/commands/verify-email.js +0 -112
  213. package/dist/commands/verify-email.js.map +0 -1
  214. package/dist/commands/video.d.ts +0 -2
  215. package/dist/commands/video.js +0 -417
  216. package/dist/commands/video.js.map +0 -1
  217. package/dist/commands/voice.d.ts +0 -2
  218. package/dist/commands/voice.js +0 -516
  219. package/dist/commands/voice.js.map +0 -1
  220. package/dist/commands/wallet.d.ts +0 -2
  221. package/dist/commands/wallet.js +0 -244
  222. package/dist/commands/wallet.js.map +0 -1
  223. package/dist/commands/webhooks.d.ts +0 -13
  224. package/dist/commands/webhooks.js +0 -119
  225. package/dist/commands/webhooks.js.map +0 -1
  226. package/dist/commands/whoami.d.ts +0 -2
  227. package/dist/commands/whoami.js +0 -53
  228. package/dist/commands/whoami.js.map +0 -1
  229. package/dist/config.d.ts +0 -42
  230. package/dist/config.js +0 -83
  231. package/dist/config.js.map +0 -1
  232. package/dist/index.d.ts +0 -3
  233. package/dist/index.js.map +0 -1
  234. package/dist/lib/brain-select.d.ts +0 -193
  235. package/dist/lib/brain-select.js +0 -403
  236. package/dist/lib/brain-select.js.map +0 -1
  237. package/dist/lib/cli-validation.d.ts +0 -12
  238. package/dist/lib/cli-validation.js +0 -46
  239. package/dist/lib/cli-validation.js.map +0 -1
  240. package/dist/lib/config-errors.d.ts +0 -4
  241. package/dist/lib/config-errors.js +0 -13
  242. package/dist/lib/config-errors.js.map +0 -1
  243. package/dist/lib/deprecation.d.ts +0 -158
  244. package/dist/lib/deprecation.js +0 -140
  245. package/dist/lib/deprecation.js.map +0 -1
  246. package/dist/lib/duration.d.ts +0 -8
  247. package/dist/lib/duration.js +0 -11
  248. package/dist/lib/duration.js.map +0 -1
  249. package/dist/lib/http-response.d.ts +0 -11
  250. package/dist/lib/http-response.js +0 -96
  251. package/dist/lib/http-response.js.map +0 -1
  252. package/dist/lib/pricing.d.ts +0 -132
  253. package/dist/lib/pricing.js +0 -148
  254. package/dist/lib/pricing.js.map +0 -1
  255. package/dist/lib/starter-config.d.ts +0 -13
  256. package/dist/lib/starter-config.js +0 -71
  257. package/dist/lib/starter-config.js.map +0 -1
  258. package/dist/lib/stream-frames.d.ts +0 -114
  259. package/dist/lib/stream-frames.js +0 -169
  260. package/dist/lib/stream-frames.js.map +0 -1
  261. package/dist/lib/teams-catalog.d.ts +0 -141
  262. package/dist/lib/teams-catalog.js +0 -841
  263. package/dist/lib/teams-catalog.js.map +0 -1
  264. package/dist/lib/unknown-command.d.ts +0 -71
  265. package/dist/lib/unknown-command.js +0 -132
  266. package/dist/lib/unknown-command.js.map +0 -1
  267. package/dist/lib/version-check.d.ts +0 -26
  268. package/dist/lib/version-check.js +0 -21
  269. package/dist/lib/version-check.js.map +0 -1
  270. package/dist/output.d.ts +0 -174
  271. package/dist/output.js +0 -435
  272. package/dist/output.js.map +0 -1
  273. package/dist/prompt.d.ts +0 -17
  274. package/dist/prompt.js +0 -70
  275. package/dist/prompt.js.map +0 -1
  276. package/dist/version.d.ts +0 -2
  277. package/dist/version.js +0 -14
  278. package/dist/version.js.map +0 -1
@@ -1,152 +0,0 @@
1
- import { Command } from "commander";
2
- import { apiRequest, handleApiError, handlePendingApproval } from "../client.js";
3
- import { agentOutput } from "../output.js";
4
- export const verificationCmd = new Command("verification")
5
- .description("Identity verification (KYC) for company founders/members via Footprint")
6
- .addHelpText("after", `
7
- Subcommands:
8
- naive verification start --members <json> Start KYC for a set of members
9
- naive verification list List all verification requests
10
- naive verification status <id> Get verification + member statuses
11
- naive verification complete <memberId> --token <token> Submit validation token
12
- naive verification resend <memberId> Resend a member's KYC link
13
-
14
- Members JSON format:
15
- [{"first_name":"Alice","last_name":"Smith","email":"alice@example.com",
16
- "ownership_percentage":60,"role":"primary","is_responsible_party":true},
17
- {"first_name":"Bob","last_name":"Jones","email":"bob@example.com",
18
- "ownership_percentage":40,"role":"secondary","is_responsible_party":false}]
19
-
20
- Rules:
21
- - Exactly one member must have role "primary"
22
- - Exactly one member must have is_responsible_party = true
23
- - Ownership percentages must sum to 100
24
- - Primary member receives their KYC link immediately
25
- - Secondary members are emailed their KYC links
26
-
27
- Governance:
28
- Starting KYC is SENSITIVE (handles PII) and may require human approval. If so,
29
- 'verification start' returns status "pending_approval" and KYC begins only
30
- after 'naive approvals approve <id>'.
31
- `);
32
- verificationCmd
33
- .command("start")
34
- .description("Start identity verification for a set of members")
35
- .requiredOption("--members <json>", "JSON array of members")
36
- .action(async (opts) => {
37
- let members;
38
- try {
39
- members = JSON.parse(opts.members);
40
- }
41
- catch {
42
- console.log(JSON.stringify({ success: false, error: "Invalid JSON for --members" }));
43
- process.exit(1);
44
- }
45
- const resp = await apiRequest("POST", "/v1/verification", { members });
46
- handleApiError("verification.start", resp);
47
- if (handlePendingApproval("verification.start", resp))
48
- return;
49
- const data = resp.data;
50
- agentOutput({
51
- action: "verification.start",
52
- result: resp.data,
53
- next_steps: [
54
- ...(data.primary_link
55
- ? [{ command: `Open ${data.primary_link}`, description: "Primary member: complete KYC in browser" }]
56
- : []),
57
- { command: `naive verification status ${data.id}`, description: "Check verification progress" },
58
- ],
59
- hints: [
60
- `Verification ${data.id} created with ${data.members.length} member(s)`,
61
- "Secondary members have been emailed their verification links",
62
- "Use 'naive verification status' to monitor progress",
63
- ],
64
- related_commands: ["naive verification list", "naive verification status", "naive verification resend"],
65
- });
66
- });
67
- verificationCmd
68
- .command("list")
69
- .description("List all identity verification requests")
70
- .action(async () => {
71
- const resp = await apiRequest("GET", "/v1/verification");
72
- handleApiError("verification.list", resp);
73
- const data = resp.data;
74
- agentOutput({
75
- action: "verification.list",
76
- result: resp.data,
77
- next_steps: data.verifications.length > 0
78
- ? [{ command: `naive verification status ${data.verifications[0].id}`, description: "View details of the latest verification" }]
79
- : [{ command: "naive verification start --members '<json>'", description: "Start a new verification" }],
80
- hints: [`Found ${data.verifications.length} verification(s)`],
81
- related_commands: ["naive verification start", "naive verification status"],
82
- });
83
- });
84
- verificationCmd
85
- .command("status <id>")
86
- .description("Get verification status with all member details")
87
- .action(async (id) => {
88
- const resp = await apiRequest("GET", `/v1/verification/${id}`);
89
- handleApiError("verification.status", resp);
90
- const data = resp.data;
91
- const pending = data.members.filter((m) => m.status !== "pass");
92
- agentOutput({
93
- action: "verification.status",
94
- result: resp.data,
95
- next_steps: [
96
- ...pending.map((m) => ({
97
- command: `naive verification resend ${m.id}`,
98
- description: `Resend link to ${m.email} (status: ${m.status})`,
99
- when: "member hasn't completed verification",
100
- })),
101
- ],
102
- hints: [
103
- `Status: ${data.status}`,
104
- `Ready for formation: ${data.ready_for_formation}`,
105
- `${data.members.filter((m) => m.status === "pass").length}/${data.members.length} members verified`,
106
- ],
107
- related_commands: ["naive verification list", "naive verification resend"],
108
- });
109
- });
110
- verificationCmd
111
- .command("complete <memberId>")
112
- .description("Submit a Footprint validation token for a member")
113
- .requiredOption("--token <token>", "Footprint validation token from onComplete callback")
114
- .action(async (memberId, opts) => {
115
- const resp = await apiRequest("POST", `/v1/verification/members/${memberId}/complete`, {
116
- validation_token: opts.token,
117
- });
118
- handleApiError("verification.complete", resp);
119
- const data = resp.data;
120
- agentOutput({
121
- action: "verification.complete",
122
- result: resp.data,
123
- next_steps: [
124
- { command: "naive verification list", description: "Check overall verification progress" },
125
- ],
126
- hints: [`Member ${data.email ?? memberId} status: ${data.status}`],
127
- related_commands: ["naive verification status", "naive verification list"],
128
- });
129
- });
130
- verificationCmd
131
- .command("resend <memberId>")
132
- .description("Resend/regenerate a KYC link for a member")
133
- .action(async (memberId) => {
134
- const resp = await apiRequest("POST", `/v1/verification/members/${memberId}/resend`);
135
- handleApiError("verification.resend", resp);
136
- const data = resp.data;
137
- agentOutput({
138
- action: "verification.resend",
139
- result: resp.data,
140
- next_steps: [
141
- ...(data.link
142
- ? [{ command: `Open ${data.link}`, description: "Member can complete KYC at this link" }]
143
- : []),
144
- { command: "naive verification list", description: "Check verification progress" },
145
- ],
146
- hints: [
147
- "New verification link generated and emailed to the member",
148
- ],
149
- related_commands: ["naive verification status", "naive verification list"],
150
- });
151
- });
152
- //# sourceMappingURL=verification.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../src/commands/verification.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import { Command } from "commander";
2
- /**
3
- * EMAIL VERIFICATION, FROM THE SURFACE THE ACCOUNT WAS CREATED ON.
4
- *
5
- * `naive register` creates an account with a ZERO balance; the 20 free credits
6
- * are released when the email is verified. Until this command existed the only
7
- * way to finish that was to leave the terminal, open a mail client, and click a
8
- * link into the web app — from a tool whose whole premise is that an agent can
9
- * run it unattended. An agent could create an account it could never fund.
10
- *
11
- * `naive verification` is a different thing entirely (Footprint KYC for company
12
- * founders) and the collision is why this is `verify`, not a subcommand there.
13
- *
14
- * The token is the one in the emailed link. `POST /v1/auth/session/verify` takes
15
- * it unauthenticated and by design — possession of a 32-byte token mailed to the
16
- * address IS the proof, and requiring a session on top would put the browser
17
- * back in the loop this command exists to remove.
18
- */
19
- export declare const verifyEmailCmd: Command;
@@ -1,112 +0,0 @@
1
- import { Command } from "commander";
2
- import { apiRequest, handleApiError } from "../client.js";
3
- import { agentOutput } from "../output.js";
4
- /**
5
- * EMAIL VERIFICATION, FROM THE SURFACE THE ACCOUNT WAS CREATED ON.
6
- *
7
- * `naive register` creates an account with a ZERO balance; the 20 free credits
8
- * are released when the email is verified. Until this command existed the only
9
- * way to finish that was to leave the terminal, open a mail client, and click a
10
- * link into the web app — from a tool whose whole premise is that an agent can
11
- * run it unattended. An agent could create an account it could never fund.
12
- *
13
- * `naive verification` is a different thing entirely (Footprint KYC for company
14
- * founders) and the collision is why this is `verify`, not a subcommand there.
15
- *
16
- * The token is the one in the emailed link. `POST /v1/auth/session/verify` takes
17
- * it unauthenticated and by design — possession of a 32-byte token mailed to the
18
- * address IS the proof, and requiring a session on top would put the browser
19
- * back in the loop this command exists to remove.
20
- */
21
- export const verifyEmailCmd = new Command("verify-email")
22
- .description("Verify the account's email and release the 20 free signup credits")
23
- .argument("[token]", "The token from the verification email (the ?token=... in the link)")
24
- .option("--resend", "Send the verification email again to the account's own address")
25
- .addHelpText("after", `
26
- Examples:
27
- $ naive verify-email --resend Re-send the email, then read the token out of it
28
- $ naive verify-email uZMX0So46cVO... Verify and receive the 20 free credits
29
-
30
- Where the token comes from:
31
- The verification email contains a link ending in ?token=<token>. Pass that
32
- value. The whole link also works — the token is extracted from it.
33
-
34
- Why this matters:
35
- A new account starts at 0 credits and every billable call is refused with
36
- insufficient_credits until the email is verified. This is the step that
37
- turns a registered account into a usable one.
38
-
39
- Notes:
40
- - The token is single-use and expires 24 hours after it is sent.
41
- - --resend replaces any previous token, so use the newest email.
42
- - --resend always goes to the account owner's own address; it cannot be
43
- pointed at a different inbox.
44
- `)
45
- .action(async (token, opts) => {
46
- if (opts.resend) {
47
- const resp = await apiRequest("POST", "/v1/auth/resend-verification", {});
48
- handleApiError("verify-email --resend", resp);
49
- const data = resp.data;
50
- agentOutput({
51
- action: "verify-email --resend",
52
- result: data,
53
- next_steps: data.already_verified
54
- ? [{ command: "naive status", description: "Confirm the credit balance" }]
55
- : [
56
- {
57
- command: "naive verify-email <token>",
58
- description: `Open the email at ${data.email ?? "the account address"} and pass the token from the link`,
59
- },
60
- ],
61
- hints: [
62
- data.already_verified
63
- ? "This account is already verified; the signup credits have been granted."
64
- : "Check the inbox for a link ending in ?token=<token> and pass that token to 'naive verify-email'.",
65
- ],
66
- });
67
- return;
68
- }
69
- if (!token) {
70
- // A bare `naive verify` is the most likely way someone arrives here, so it
71
- // answers with the route forward rather than a usage error.
72
- agentOutput({
73
- action: "verify-email",
74
- result: { error: "missing_token", detail: "A verification token is required." },
75
- next_steps: [
76
- { command: "naive verify-email --resend", description: "Send the verification email again" },
77
- { command: "naive verify-email <token>", description: "Verify with the token from the email link" },
78
- ],
79
- hints: [
80
- "The token is the ?token=... value in the verification email. If the email never arrived, run 'naive verify-email --resend' first.",
81
- ],
82
- });
83
- process.exitCode = 1;
84
- return;
85
- }
86
- // Accept a pasted URL as well as a bare token. People copy the link, not the
87
- // query parameter, and failing them for it would be a refusal over
88
- // formatting.
89
- const extracted = token.includes("token=")
90
- ? (token.split("token=")[1] ?? "").split("&")[0] ?? token
91
- : token;
92
- const resp = await apiRequest("POST", "/v1/auth/session/verify", { token: extracted.trim() });
93
- handleApiError("verify-email", resp);
94
- const data = resp.data;
95
- agentOutput({
96
- action: "verify-email",
97
- result: {
98
- verified: data.ok === true,
99
- credits_granted: data.credits_granted ?? 0,
100
- message: data.message,
101
- },
102
- next_steps: [
103
- { command: "naive status", description: "Confirm the balance and account state" },
104
- { command: "naive billing topup", description: "Buy more credits once the free ones are spent" },
105
- ],
106
- hints: [
107
- `Email verified. ${data.credits_granted ?? 20} free credits are now on the account and billable calls will succeed.`,
108
- ],
109
- help_markdown: `### Email Verified\n\n**${data.credits_granted ?? 20} free credits** have been granted.\n\nBefore this, every billable call was refused with \`insufficient_credits\` — a new account starts at 0 on purpose. Run \`naive status\` to see the balance.`,
110
- });
111
- });
112
- //# sourceMappingURL=verify-email.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"verify-email.js","sourceRoot":"","sources":["../../src/commands/verify-email.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC;KACtD,WAAW,CAAC,mEAAmE,CAAC;KAChF,QAAQ,CAAC,SAAS,EAAE,oEAAoE,CAAC;KACzF,MAAM,CAAC,UAAU,EAAE,gEAAgE,CAAC;KACpF,WAAW,CAAC,OAAO,EAAE;;;;;;;;;;;;;;;;;;;CAmBvB,CAAC;KACC,MAAM,CAAC,KAAK,EAAE,KAAyB,EAAE,IAA0B,EAAE,EAAE;IACtE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,8BAA8B,EAAE,EAAE,CAAC,CAAC;QAC1E,cAAc,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAwE,CAAC;QAE3F,WAAW,CAAC;YACV,MAAM,EAAE,uBAAuB;YAC/B,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI,CAAC,gBAAgB;gBAC/B,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,4BAA4B,EAAE,CAAC;gBAC1E,CAAC,CAAC;oBACE;wBACE,OAAO,EAAE,4BAA4B;wBACrC,WAAW,EAAE,qBAAqB,IAAI,CAAC,KAAK,IAAI,qBAAqB,mCAAmC;qBACzG;iBACF;YACL,KAAK,EAAE;gBACL,IAAI,CAAC,gBAAgB;oBACnB,CAAC,CAAC,yEAAyE;oBAC3E,CAAC,CAAC,kGAAkG;aACvG;SACF,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,2EAA2E;QAC3E,4DAA4D;QAC5D,WAAW,CAAC;YACV,MAAM,EAAE,cAAc;YACtB,MAAM,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,mCAAmC,EAAE;YAC/E,UAAU,EAAE;gBACV,EAAE,OAAO,EAAE,6BAA6B,EAAE,WAAW,EAAE,mCAAmC,EAAE;gBAC5F,EAAE,OAAO,EAAE,4BAA4B,EAAE,WAAW,EAAE,2CAA2C,EAAE;aACpG;YACD,KAAK,EAAE;gBACL,mIAAmI;aACpI;SACF,CAAC,CAAC;QACH,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,6EAA6E;IAC7E,mEAAmE;IACnE,cAAc;IACd,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACxC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK;QACzD,CAAC,CAAC,KAAK,CAAC;IAEV,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,yBAAyB,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9F,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAErC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAoE,CAAC;IAEvF,WAAW,CAAC;QACV,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE;YACN,QAAQ,EAAE,IAAI,CAAC,EAAE,KAAK,IAAI;YAC1B,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,CAAC;YAC1C,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB;QACD,UAAU,EAAE;YACV,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,uCAAuC,EAAE;YACjF,EAAE,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,+CAA+C,EAAE;SACjG;QACD,KAAK,EAAE;YACL,mBAAmB,IAAI,CAAC,eAAe,IAAI,EAAE,uEAAuE;SACrH;QACD,aAAa,EAAE,2BAA2B,IAAI,CAAC,eAAe,IAAI,EAAE,mMAAmM;KACxQ,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- import { Command } from "commander";
2
- export declare const videoCmd: Command;