@onesi/genesis-cli 0.2.2 → 0.2.4

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 CHANGED
@@ -3,7 +3,7 @@
3
3
  `genesis`, the OneOS command line. It works against the Genesis API at `https://os.one.ml/api`.
4
4
 
5
5
  ```sh
6
- npx -y @onesi/genesis-cli@0.2.2 --help
6
+ npx -y @onesi/genesis-cli@0.2.4 --help
7
7
  ```
8
8
 
9
9
  ## First run
package/dist/index.js CHANGED
@@ -7,7 +7,7 @@ import { registerIamDirectory } from './iam-directory.js';
7
7
  import { registerOperationCommands, registerProducts } from './products.js';
8
8
  import { registerOrgs } from './orgs.js';
9
9
  import { Command, CommanderError } from 'commander';
10
- import { Genesis, GenesisError, errorBody, errorCatalog, errorOutcome, isMindsOperation, HivesOperationError, HivesQueueOperationError, MindsAgentError, MindsOwnerError, hivesResponseBytes, MAX_FUNCTION_BODY_BYTES, MAX_FUNCTION_JSON_BYTES, DEFAULT_BASE_URL, requireSecureUrl } from '@onesi/genesis';
10
+ import { Genesis, GenesisError, errorBody, errorCatalog, errorOutcome, isMindsOperation, HivesOperationError, HivesQueueOperationError, MindsAgentError, MindsOwnerError, hivesResponseBytes, MAX_FUNCTION_BODY_BYTES, MAX_FUNCTION_JSON_BYTES, DEFAULT_BASE_URL, requireSecureUrl, redactUserinfo } from '@onesi/genesis';
11
11
  import { authConfig, completeLogin, selectSavedContext, savedLoginProvider, startLogin } from './auth.js';
12
12
  import { completeDeviceLogin, startDeviceLogin } from './device-login.js';
13
13
  import { keychainStore } from './store.js';
@@ -40,7 +40,7 @@ export function buildProgram(deps = {}) {
40
40
  const auth = { ...authConfig(env, f), sleep: deps.sleep };
41
41
  const program = new Command('genesis')
42
42
  .description('One CLI for every Genesis service.')
43
- .version('0.2.2')
43
+ .version('0.2.4')
44
44
  .option('--json', 'machine-readable JSON output')
45
45
  .option('--api-key <key>', 'use this API key (default: GENESIS_API_KEY, then your `genesis login`)')
46
46
  .option('--base-url <url>', 'gateway URL (default: GENESIS_BASE_URL or https://os.one.ml/api)')
@@ -48,7 +48,7 @@ export function buildProgram(deps = {}) {
48
48
  .option('--org <org_id>', 'organization to act on')
49
49
  .showHelpAfterError()
50
50
  .exitOverride()
51
- .configureOutput({ writeOut: (s) => out.log(s.trimEnd()), writeErr: (s) => out.err(s.trimEnd()) });
51
+ .configureOutput({ writeOut: (s) => out.log(s.trimEnd()), writeErr: (s) => out.err(redactUserinfo(s.trimEnd())) });
52
52
  const g = () => program.opts();
53
53
  const client = async (hivesTransport = false) => {
54
54
  const o = g();
@@ -56,7 +56,7 @@ export function buildProgram(deps = {}) {
56
56
  const opts = {
57
57
  apiKey: o.apiKey ?? env.GENESIS_API_KEY, token: env.GENESIS_TOKEN,
58
58
  baseUrl: o.baseUrl ?? env.GENESIS_BASE_URL, routing: o.direct || env.GENESIS_ROUTING === 'direct' ? 'direct' : 'gateway',
59
- fetch: f, userAgent: 'genesis-cli/0.2.2',
59
+ fetch: f, userAgent: 'genesis-cli/0.2.4',
60
60
  credentials: store ? savedLoginProvider(auth, store) : undefined,
61
61
  };
62
62
  return new Genesis(hivesTransport ? { ...opts, fetch: createHivesNodeTransport(opts, deps.signal) } : opts);
@@ -277,7 +277,7 @@ export function buildProgram(deps = {}) {
277
277
  if (!key)
278
278
  throw new Error('Give the enrollment key with --key-file, --key-stdin or GENESIS_ENROLLMENT_KEY; it is never accepted as an argument.');
279
279
  const body = await readFunctionJson(o.bodyFile, 16 * 1024);
280
- const result = await new Genesis({ baseUrl: g().baseUrl ?? env.GENESIS_BASE_URL, fetch: f, userAgent: 'genesis-cli/0.2.2' }).iam.agents.enroll(key, body);
280
+ const result = await new Genesis({ baseUrl: g().baseUrl ?? env.GENESIS_BASE_URL, fetch: f, userAgent: 'genesis-cli/0.2.4' }).iam.agents.enroll(key, body);
281
281
  emit(result, () => JSON.stringify(result, null, 2));
282
282
  });
283
283
  // ---- auth ------------------------------------------------------------
@@ -810,7 +810,7 @@ export function buildProgram(deps = {}) {
810
810
  const url = `${base.href.replace(/\/+$/, '')}/v1/status`;
811
811
  let response;
812
812
  try {
813
- response = await f(url, { method: 'GET', headers: { accept: 'application/json', 'user-agent': 'genesis-cli/0.2.2' }, signal: AbortSignal.timeout(15_000) });
813
+ response = await f(url, { method: 'GET', headers: { accept: 'application/json', 'user-agent': 'genesis-cli/0.2.4' }, signal: AbortSignal.timeout(15_000) });
814
814
  }
815
815
  catch (e) {
816
816
  throw new Error(`Gateway unreachable at ${safe(url)}: ${safe(e.message)}`);
@@ -823,7 +823,7 @@ export function buildProgram(deps = {}) {
823
823
  const rows = report.services;
824
824
  emit(report, () => [
825
825
  table(rows.map((s) => ({ service: s.service, state: s.state, http_status: s.http_status, latency_ms: s.latency_ms, reason: s.reason })), ['service', 'state', 'http_status', 'latency_ms', 'reason']),
826
- ...(report.checked_at ? [c.dim(`checked ${safe(report.checked_at)} via ${safe(url)}`)] : []),
826
+ ...(report.checked_at ? [c.dim(`checked ${safe(report.checked_at)} via ${safe(redactUserinfo(url))}`)] : []),
827
827
  ].join('\n'));
828
828
  });
829
829
  return program;
package/dist/products.js CHANGED
@@ -176,6 +176,13 @@ export const PRODUCT_COMMANDS = {
176
176
  'reporting request-logs': 'foundry_listRequestLogs', 'reporting provider-credentials': 'foundry_getProviderCredentialSummary',
177
177
  'activity list': 'foundry_getActivity', 'activity export': 'foundry_exportActivity', 'analytics meta': 'foundry_getAnalyticsMeta', 'analytics query': 'foundry_queryAnalytics',
178
178
  'batches create': 'foundry_createBatch', 'batches get': 'foundry_getBatch',
179
+ 'files list': 'foundry_listFiles', 'files upload': 'foundry_uploadFile', 'files get': 'foundry_getFile', 'files download': 'foundry_downloadFile', 'files delete': 'foundry_deleteFile',
180
+ 'fine-tuning providers': 'foundry_listFineTuningProviders', 'fine-tuning jobs': 'foundry_listFineTuningJobs', 'fine-tuning create': 'foundry_createFineTuningJob',
181
+ 'fine-tuning get': 'foundry_getFineTuningJob', 'fine-tuning delete': 'foundry_deleteFineTuningJob', 'fine-tuning cancel': 'foundry_cancelFineTuningJob',
182
+ 'fine-tuning events': 'foundry_listFineTuningEvents', 'fine-tuning checkpoints': 'foundry_listFineTuningCheckpoints',
183
+ 'fine-tuning models': 'foundry_listFineTunedPrivateModels', 'fine-tuning model': 'foundry_getFineTunedPrivateModel',
184
+ 'provider-keys list': 'foundry_listProviderKeys', 'provider-keys create': 'foundry_createProviderKey', 'provider-keys update': 'foundry_updateProviderKey',
185
+ 'provider-keys delete': 'foundry_deleteProviderKey', 'credential-policies list': 'foundry_listProviderCredentialPolicies', 'credential-policies set': 'foundry_setProviderCredentialPolicy',
179
186
  infer: 'foundry_createInference', 'infer-stream': 'foundry_streamInference', classify: 'foundry_classifyText', detect: 'foundry_detectObjects',
180
187
  segment: 'foundry_segmentImage', embed: 'foundry_embedTexts', 'transcribe-audio': 'foundry_transcribeAudio', speak: 'foundry_synthesizeSpeech',
181
188
  'generate-image': 'foundry_generateImage', predict: 'foundry_predictTabular', forecast: 'foundry_forecastSeries', recommend: 'foundry_recommendItems',
@@ -229,7 +236,7 @@ export const PRODUCT_COMMANDS = {
229
236
  } },
230
237
  // `genesis minds engine <family> <verb> <mind_id> [params]`: every Minds engine route, generated from the grant table.
231
238
  minds: { description: 'Minds: your Sandbox Minds (One account login)', commands: mindsEngineCommands },
232
- boxes: { description: 'Boxes: mail, docs, files, sheets, slides, calendar and identity (org API key; GET boxes:read, writes boxes:write)', commands: {
239
+ boxes: { description: 'Boxes: mail, docs, files, sheets, slides, calendar and identity (org API key; GET boxes:read, writes boxes:write, mail domains boxes:admin)', commands: {
233
240
  // boxes:begin
234
241
  'mail addresses create': 'boxes_mail_addresses_create',
235
242
  'mail addresses list': 'boxes_mail_addresses_list',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onesi/genesis-cli",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/l1felabs/genesis-api.git",
@@ -33,7 +33,7 @@
33
33
  "dependencies": {
34
34
  "commander": "^14.0.0",
35
35
  "undici": "6.29.0",
36
- "@onesi/genesis": "0.2.2"
36
+ "@onesi/genesis": "0.2.4"
37
37
  },
38
38
  "optionalDependencies": {
39
39
  "@napi-rs/keyring": "^1.2.0"