@audienti/cli 0.2.0-exora.11 → 0.2.0-exora.12

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/cli/audienti.mjs CHANGED
@@ -55,6 +55,8 @@ Hand tasks: hand-tasks [list [--state open|ready|done|skipped]]|show ID|done ID
55
55
  Queue: audienti queue [list]|next|claim ID [--note TEXT]|done ID [--note TEXT]|skip ID --note TEXT|release ID [--workspace ID] (start here after you connect; without --workspace an agent reads every workspace its user approved it in; done or skip again with a new --note corrects the note of a finished task)
56
56
  Attachments: audienti attachments upload FILE [--duration SECONDS] (store an image or voice note, get its id for content.attachments)
57
57
  Outcome checks: audienti outcomes report TASK_ID --file RESULTS.json (results for the people an outcomes.check task lists)
58
+ Saved posts: audienti posts list [--topic-id ID]|get ID (savedByOperationId names the tool run that saved a post; read it with audienti tools runs get ID)
59
+ Saved topics: audienti topics list|get ID|create --input FILE --request-id UUID
58
60
  Questions: audienti ask "QUESTION" [--context TEXT] [--option TEXT]... [--campaign ID] [--task ID] (questions for your user go to Operator, not chat)
59
61
  audienti questions [list] [--state open|answered|withdrawn|all] | show ID | withdraw ID | answer ID --answer TEXT
60
62
  Rooms: audienti rooms directory|inbox|ack|send|thread|threads|create|list|read|retire|restore|redact|resume|pause|profile|hook|watch|wait (audienti rooms help)
@@ -78,6 +80,7 @@ Discovery: prospects list|get ID|timeline ID [--limit N]|observation create|cita
78
80
  budgets alerts --workspace ID [--limit N]
79
81
  usage breakdown [--workspace ID] [--since month|7d|30d|90d] [--by tool|provider|model|caller|day] [--format json|csv]
80
82
  workspace usage summary|callers|calls [--after ID] [--caller user:ID|agent:ID|key:ID] [--status all|succeeded|failed|pending]|call ID [--workspace ID] (paid tool use, last 30 days, and single calls)
83
+ intent list [--workspace ID] (the closed set of message labels: name, direction, event, channels, typed detail; output is JSON)
81
84
  audit list [--workspace ID] [--since 7d] [--actor agent|person] [--category NAME] [--format json|csv]
82
85
  budgets set --workspace ID [--agent ID --cap N|none] [--new-agent-cap N|none] [--at-limit pause|ask] [--alert80 on|off] (alert80 covers Operator and email at 80%)
83
86
  Qualification: campaigns qualification submit --file INPUT.json
@@ -140,6 +143,7 @@ async function main() {
140
143
  if(args[0]==='prospects'&&args[1]==='replies'){const {accountRepliesCli}=await import('./account-replies.mjs');await accountRepliesCli(args);return;}
141
144
  if(args[0]==='prospects'&&args[1]==='contacts'){const {recipientsCli}=await import('./recipients.mjs');await recipientsCli(args);return;}
142
145
  if(args[0]==='usage'){const {usageCli}=await import('./usage.mjs');await usageCli(args);return;}
146
+ if(args[0]==='intent'){const {intentCli}=await import('./intent.mjs');await intentCli(args);return;}
143
147
  if(args[0]==='audit'){const {auditCli}=await import('./audit.mjs');await auditCli(args);return;}
144
148
  if(args[0]==='secret'||args[0]==='secrets'){const {secretsCli}=await import('./secrets.mjs');await secretsCli(args);return;}
145
149
  if(args[0]==='budgets'){const {budgetsCli}=await import('./budgets.mjs');await budgetsCli(args);return;}
package/cli/content.mjs CHANGED
@@ -22,6 +22,7 @@ export async function contentCli(argv) {
22
22
  let args = values.workspace ? { workspaceId: values.workspace } : {};
23
23
  if (verb === 'list' && positionals.length === 1) args = { ...args, cursor: values.cursor, ...(kind === 'posts' ? { topicId: values['topic-id'] } : {}) };
24
24
  else if (verb === 'get' && positionals.length === 2) args.id = id;
25
+ else if (verb === 'get') throw new Error(`Name the ${kind === 'posts' ? 'post' : 'topic'} to read: audienti ${kind} get ID.`);
25
26
  else if (kind === 'topics' && verb === 'create' && positionals.length === 1) {
26
27
  if (!values.input || !values['request-id']) throw new Error('Topic create requires --input FILE and --request-id UUID.');
27
28
  args = { ...readJsonFile(values.input, 32768, 'Topic input'), ...args, requestId: values['request-id'] };
@@ -0,0 +1,8 @@
1
+ import { z } from 'zod';
2
+ export const intentOperations = {
3
+ intent_labels_list: {
4
+ schema: z.object({ workspaceId: z.string().uuid().optional() }).strict(),
5
+ method: 'GET', path: a => `/workspaces/${a.workspaceId}/intent-labels`, scoped: true,
6
+ description: 'List the closed set of message labels: each name with its direction (inbound or outbound), the event it starts, the channels it fits, the typed detail it needs, whether it is locked or must stand alone, and whether it is only planned. Read it to learn which names exist. Recording a label is not available yet; the next release adds it.',
7
+ },
8
+ };
package/cli/intent.mjs ADDED
@@ -0,0 +1,15 @@
1
+ import { callWorkspace, configuration } from './workspaces.mjs';
2
+
3
+ export async function intentCli(args) {
4
+ const flags = {}, positions = [];
5
+ for (let i = 0; i < args.length; i++) {
6
+ const arg = args[i];
7
+ if (arg === '--json') continue;
8
+ if (!arg.startsWith('--')) { positions.push(arg); continue; }
9
+ const key = arg.slice(2);
10
+ if (!['workspace', 'profile'].includes(key) || Object.hasOwn(flags, key) || i + 1 >= args.length) throw Error(`Invalid flag --${key}.`);
11
+ flags[key] = args[++i];
12
+ }
13
+ if (positions.length !== 2 || positions[1] !== 'list') throw Error('Use intent list [--workspace ID].');
14
+ console.log(JSON.stringify(await callWorkspace('intent_labels_list', { workspaceId: flags.workspace }, configuration(flags.profile))));
15
+ }
@@ -22,6 +22,7 @@ import { recipientOperations } from './recipient-operations.mjs';
22
22
  import { suppressionOperations } from './suppression-operations.mjs';
23
23
  import { guardrailsOperations } from './guardrails-operations.mjs';
24
24
  import { auditOperations } from './audit-operations.mjs';
25
+ import { intentOperations } from './intent-operations.mjs';
25
26
  import { usageOperations } from './usage-operations.mjs';
26
27
  import { outboundOperations } from './outbound-operations.mjs';
27
28
  import { cohortOperations } from './cohort-operations.mjs';
@@ -61,6 +62,7 @@ export const operations = {
61
62
  ...suppressionOperations,
62
63
  ...guardrailsOperations,
63
64
  ...auditOperations,
65
+ ...intentOperations,
64
66
  ...usageOperations,
65
67
  ...outboundOperations,
66
68
  ...cohortOperations,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@audienti/cli",
3
- "version": "0.2.0-exora.11",
3
+ "version": "0.2.0-exora.12",
4
4
  "description": "Audienti CLI and MCP client for app.audienti.com",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "repository": "https://github.com/omalab/exora",
3
- "sourceCommit": "bdfb2ad6a10be923217ea690ac9f894c7f5c11ad",
3
+ "sourceCommit": "9673ca0c2e8c98a117672f0ba0181e66a1a5c556",
4
4
  "files": {
5
5
  "LICENSE": "220f297cfcd5c38eb64e6b4b4a77cab4ebc7f4686d4d99c6260a475d02ca11e5",
6
6
  "README.md": "7ff32cc8ac89dd54b64d7b39c0b41b1f37e154b7ea10ad5a7bceefc3df77d87f",
@@ -16,7 +16,7 @@
16
16
  "cli/attachments.mjs": "2fee6b4abbf82da9847d4a927a3d4d3ca947a198a903a78927596a2ea858cbf4",
17
17
  "cli/audience-operations.mjs": "133b72dc6b9e3a6b4f173ce28f1524163f9c7b049505b885115f83b9e4af7170",
18
18
  "cli/audiences.mjs": "3c377346efc1a8bdde432a16c2d19a3f51f34f3333d344d3a2bfa94c188a017d",
19
- "cli/audienti.mjs": "5b2dbf838cc915b4e2096de275bb5ed8fc8cc79b546cf3855cc7ca680a09151f",
19
+ "cli/audienti.mjs": "d78b513ea58026f8f2f2eb6c70f4cd00c589b6b6520be53ebd1332377a8d6a78",
20
20
  "cli/audit-operations.mjs": "afaf87d592a1e5f6bff2a8649a6a64a8f471950b7d99e98995d9205aa5910398",
21
21
  "cli/audit.mjs": "a7becaed67c58b063e668b5e66844b6dc15c11a63b428faa171b542ad922c001",
22
22
  "cli/budget-operations.mjs": "d74916551ef393e29734c6e13cf9021251e0ed126eeaa529e18cf2332146e1e0",
@@ -27,7 +27,7 @@
27
27
  "cli/cohort-operations.mjs": "91b1d1fc48e75581bb315f42d735ef94e21687dc216f352337d8a5d180bb691e",
28
28
  "cli/cohorts.mjs": "c71940903430f3e6834608f113534910b75a98b3e410a5942f04051607488485",
29
29
  "cli/connection-registry-operations.mjs": "888ea440d00ffc9ed68d4cc084ff73a5a00d0e60bd6293baba8bb4539a25ae62",
30
- "cli/content.mjs": "04141903c304cb7c911ac35ad41cd1f1d48adb230caa6d8873d6545eb017c79d",
30
+ "cli/content.mjs": "139dee5fd37fd89669c39e2120ac70a2e0286b207b055ff666f54ba3512ab061",
31
31
  "cli/discovery-operations.mjs": "cc132abae230cc84439bcd24da813e2798ee1eb83a06a7d1141202ab9c68215a",
32
32
  "cli/discovery.mjs": "34b3794ee6ca539dbbccef77ec2085fd5411023046bdfb9b83e2537414542a41",
33
33
  "cli/file-operations.mjs": "564f334dd9d52e9c56f44d58b5c3b0bda59ff72f54126b755bc472144069349e",
@@ -36,6 +36,8 @@
36
36
  "cli/guardrails.mjs": "e8b9c0a19956a9eab84475d3c56a4b6c77baf7ed9a55e8686d660ef1ad562aa8",
37
37
  "cli/hand-task-operations.mjs": "473473fe95324c8c8733e037feab5ac468c07b0658fabd739cfd7d400a7faa83",
38
38
  "cli/hand-tasks.mjs": "2c895cf6b30c594a7e27cc4ec4b7eddeb39f941cd195b9255c6e0d6b4a56371f",
39
+ "cli/intent-operations.mjs": "e3151e71e9064c8de0953e666e23e4d2c4681b1f3900ef79569b6a074d48ab8c",
40
+ "cli/intent.mjs": "3f31297a09d144204fb04b5d54f67172fc39d3d3833bf4e8ad34469295b22fea",
39
41
  "cli/json-file.mjs": "96431b18215834c2531f5901e2526875c634dd2e85a9465fcffc937fbec52150",
40
42
  "cli/kv-operations.mjs": "505d79d0d535d3441883f8a37817c30c73367216a35dddb07181f0f0e799df79",
41
43
  "cli/kv.mjs": "05783610001dd002af07a4bb8f26e64d74aa4981bbe38a2100552b810cb3bc72",
@@ -81,8 +83,8 @@
81
83
  "cli/work-feedback.mjs": "f3b77ecfd7ea1aba9c9f03c9d894137547e9c5575d9daa359ed94505ad025852",
82
84
  "cli/work-operations.mjs": "8b3a84ca15e8e4ad79ef92ced4c5adaffd5129f630e3bfc2c74a844a90867600",
83
85
  "cli/work.mjs": "751107ecc3de5a6be9db4a068cddc41f3ad8e77c87e59686eaf522862caf9e9f",
84
- "cli/workspaces.mjs": "8144874c7c0a224efc33190dccffffdecebad82f52b6a98c4e4d0f7dfa601f90",
85
- "package.json": "f42afbf827ff5fac9e8f29085a51f15cae2045f603bc87e1f4e8b24eec96bf8b",
86
+ "cli/workspaces.mjs": "0f75d41387e0dd1aa9e20a70fba5298e0d9ac6c86c04f050723c31e04479ad83",
87
+ "package.json": "b5e0afb3718de66a76c5106f1a9bef5bec9447d33f26b7d1def3e7936b6e8e6d",
86
88
  "skills/agent-rooms/SKILL.md": "08f917ff85fee1d23499a4499056ce845b39ce6727029b104819dad41ee87cc2",
87
89
  "skills/agent-rooms/references/commands.md": "ef5afa5543ca9da967a147f638774647998ea1c1a2a821959f3bf87d54c292bd",
88
90
  "skills/audienti/SKILL.md": "8f2124065bfc3a005b44e194e7dcce9bbf14062ab332e7db66d441eeccb518ed",