@mind2flow/cli 0.4.0 → 0.5.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 CHANGED
@@ -29,9 +29,16 @@ m2f agents test <agentId> --cases cases.json --email me@x.com --wait # runs FO
29
29
  m2f artifacts report <agentId> --from 2026-08-01 --to 2026-08-31 # operation report
30
30
  m2f artifacts list
31
31
  m2f artifacts share <id> # public link, customers hidden
32
+
33
+ # New in 0.5.0 — phone calls (Twilio set up once in the console)
34
+ m2f voice lines # agents that answer calls
35
+ m2f voice call <agentId> +525512345678 --var nombre=Ana --wait
36
+ m2f voice calls <agentId> # outcome, credits, summary
37
+ m2f voice set <agentId> --voice Cristina --greeting "Hola, gracias por llamar."
38
+ m2f voice pause <agentId> # and resume
32
39
  ```
33
40
 
34
- `analyze`, `artifacts report` and `agents test` run an LLM on your own key and cost tokens; `agents test` also runs the agent's connected apps for real. The others only read.
41
+ `analyze`, `artifacts report` and `agents test` run an LLM on your own key and cost tokens; `agents test` also runs the agent's connected apps for real. `voice call` places a real phone call (credits + Twilio minutes). The others only read.
35
42
 
36
43
  Configuration lives in `~/.m2f/config.json`; `M2F_API_KEY` / `M2F_BASE_URL`
37
44
  environment variables override it.
@@ -0,0 +1,2 @@
1
+ import { Command } from 'commander';
2
+ export declare function registerVoiceCommands(program: Command): void;
@@ -0,0 +1,210 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerVoiceCommands = registerVoiceCommands;
4
+ const commander_1 = require("commander");
5
+ const config_1 = require("../config");
6
+ const output_1 = require("../output");
7
+ /**
8
+ * Phone calls. Twilio and the agent's number are set up once in the console
9
+ * (AI Agents → agent → Voice); everything after that works from here.
10
+ */
11
+ const collectVar = (value, acc) => {
12
+ const i = value.indexOf('=');
13
+ if (i < 1)
14
+ throw new commander_1.InvalidArgumentError(`expected key=value, got "${value}"`);
15
+ acc[value.slice(0, i)] = value.slice(i + 1);
16
+ return acc;
17
+ };
18
+ const lineRow = (l) => ({
19
+ agent: l.agentName ?? l.agentId,
20
+ number: l.phoneNumber,
21
+ state: l.enabled ? 'answering' : 'paused',
22
+ voice: l.voiceName ?? l.voice,
23
+ transfer: l.transferEnabled ? 'on' : '',
24
+ });
25
+ const callRow = (c) => ({
26
+ callSid: c.callSid,
27
+ when: c.startedAt.slice(0, 16).replace('T', ' '),
28
+ dir: c.direction === 'inbound' ? 'in' : c.direction === 'outbound' ? 'out' : '',
29
+ other: (c.direction === 'inbound' ? c.from : c.to) ?? '',
30
+ secs: c.durationSec ?? '',
31
+ credits: c.credits,
32
+ outcome: c.status === 'processing' ? 'in progress' : c.outcome ?? '',
33
+ });
34
+ function printCall(c) {
35
+ const who = c.direction === 'inbound' ? `from ${c.from}` : `to ${c.to}`;
36
+ console.log(`${c.callSid} ${c.direction ?? ''} ${who} [${c.status === 'processing' ? 'in progress' : c.callStatus ?? c.status}]`);
37
+ console.log(`Started ${c.startedAt} · ${c.durationSec ?? '?'} s (AI ${c.aiSeconds ?? '?'} s) · ${c.credits} credits${c.transferred ? ' · transferred to a person' : ''}`);
38
+ if (c.outcome)
39
+ console.log(`Outcome: ${c.outcome}`);
40
+ if (c.summary)
41
+ console.log(`\n${c.summary}`);
42
+ if (c.transcript?.length) {
43
+ console.log('');
44
+ for (const t of c.transcript) {
45
+ if (t.role === 'system')
46
+ console.log(` — ${t.content}`);
47
+ else
48
+ console.log(` ${t.role === 'user' ? '>' : '<'} ${t.content}${t.interrupted ? ' [interrupted]' : ''}`);
49
+ }
50
+ }
51
+ }
52
+ function registerVoiceCommands(program) {
53
+ const voice = program.command('voice').description('Phone calls: place calls, manage lines, read calls');
54
+ voice
55
+ .command('lines')
56
+ .description('Agents that answer phone calls')
57
+ .option('--json', 'Output raw JSON')
58
+ .action(async (opts) => {
59
+ try {
60
+ const lines = await (0, config_1.getClient)().voice.lines();
61
+ if (opts.json)
62
+ return (0, output_1.printJson)(lines);
63
+ (0, output_1.printTable)(lines.map((l) => ({ agentId: l.agentId, ...lineRow(l) })), ['agentId', 'agent', 'number', 'state', 'voice', 'transfer']);
64
+ }
65
+ catch (error) {
66
+ (0, output_1.fail)(error);
67
+ }
68
+ });
69
+ voice
70
+ .command('line <agentId>')
71
+ .description("Show an agent's phone line")
72
+ .action(async (agentId) => {
73
+ try {
74
+ (0, output_1.printJson)(await (0, config_1.getClient)().voice.getLine(agentId));
75
+ }
76
+ catch (error) {
77
+ (0, output_1.fail)(error);
78
+ }
79
+ });
80
+ voice
81
+ .command('set <agentId>')
82
+ .description('Change the voice or greeting, or move the line to another number')
83
+ .option('--voice <voice>', 'Catalog id or name (see `m2f voice voices`), or an ElevenLabs voice id')
84
+ .option('--greeting <text>', 'What the agent says when it picks up')
85
+ .option('--number <e164>', 'A number already in your Twilio account')
86
+ .action(async (agentId, opts) => {
87
+ try {
88
+ if (!opts.voice && !opts.greeting && !opts.number)
89
+ throw new Error('Pass --voice, --greeting and/or --number');
90
+ const l = await (0, config_1.getClient)().voice.updateLine(agentId, { voice: opts.voice, greeting: opts.greeting, phoneNumber: opts.number });
91
+ console.log(`Saved. ${l.phoneNumber} · ${l.voiceName ?? l.voice} · "${l.greeting}"`);
92
+ }
93
+ catch (error) {
94
+ (0, output_1.fail)(error);
95
+ }
96
+ });
97
+ voice
98
+ .command('pause <agentId>')
99
+ .description('Stop answering calls (callers hear the number is not available)')
100
+ .action(async (agentId) => {
101
+ try {
102
+ const l = await (0, config_1.getClient)().voice.pause(agentId);
103
+ console.log(`Paused: ${l.phoneNumber}`);
104
+ }
105
+ catch (error) {
106
+ (0, output_1.fail)(error);
107
+ }
108
+ });
109
+ voice
110
+ .command('resume <agentId>')
111
+ .description('Answer calls again')
112
+ .action(async (agentId) => {
113
+ try {
114
+ const l = await (0, config_1.getClient)().voice.resume(agentId);
115
+ console.log(`Answering calls at ${l.phoneNumber}`);
116
+ }
117
+ catch (error) {
118
+ (0, output_1.fail)(error);
119
+ }
120
+ });
121
+ voice
122
+ .command('call <agentId> <to>')
123
+ .description('Have the agent call a number (E.164, e.g. +525512345678)')
124
+ .option('--var <key=value>', 'Context for the agent; repeat for several', collectVar, {})
125
+ .option('--wait', 'Wait until the call ends and print the summary and transcript')
126
+ .option('--json', 'Output raw JSON')
127
+ .action(async (agentId, to, opts) => {
128
+ try {
129
+ const m2f = (0, config_1.getClient)();
130
+ const started = await m2f.voice.call({ agentId, to, variables: Object.keys(opts.var).length ? opts.var : undefined });
131
+ if (!opts.wait) {
132
+ if (opts.json)
133
+ return (0, output_1.printJson)(started);
134
+ console.log(`Calling ${started.to} from ${started.from} — ${started.callSid}`);
135
+ console.log(`Follow it with: m2f voice show ${started.callSid}`);
136
+ return;
137
+ }
138
+ if (!opts.json)
139
+ console.log(`Calling ${started.to} from ${started.from} — ${started.callSid} (waiting for it to end…)`);
140
+ const call = await m2f.voice.waitForCall(started.callSid);
141
+ if (opts.json)
142
+ return (0, output_1.printJson)(call);
143
+ console.log('');
144
+ printCall(call);
145
+ }
146
+ catch (error) {
147
+ (0, output_1.fail)(error);
148
+ }
149
+ });
150
+ voice
151
+ .command('calls <agentId>')
152
+ .description('Recent calls of an agent, newest first')
153
+ .option('--limit <n>', 'Max calls (default 20)', (v) => parseInt(v, 10))
154
+ .option('--json', 'Output raw JSON')
155
+ .action(async (agentId, opts) => {
156
+ try {
157
+ const calls = await (0, config_1.getClient)().voice.listCalls(agentId, { limit: opts.limit });
158
+ if (opts.json)
159
+ return (0, output_1.printJson)(calls);
160
+ (0, output_1.printTable)(calls.map(callRow), ['callSid', 'when', 'dir', 'other', 'secs', 'credits', 'outcome']);
161
+ }
162
+ catch (error) {
163
+ (0, output_1.fail)(error);
164
+ }
165
+ });
166
+ voice
167
+ .command('show <callSid>')
168
+ .description('One call: outcome, summary and transcript')
169
+ .option('--json', 'Output raw JSON')
170
+ .action(async (callSid, opts) => {
171
+ try {
172
+ const call = await (0, config_1.getClient)().voice.getCall(callSid);
173
+ if (opts.json)
174
+ return (0, output_1.printJson)(call);
175
+ printCall(call);
176
+ }
177
+ catch (error) {
178
+ (0, output_1.fail)(error);
179
+ }
180
+ });
181
+ voice
182
+ .command('voices')
183
+ .description('The voice catalog')
184
+ .option('--json', 'Output raw JSON')
185
+ .action(async (opts) => {
186
+ try {
187
+ const list = await (0, config_1.getClient)().voice.voices();
188
+ if (opts.json)
189
+ return (0, output_1.printJson)(list);
190
+ (0, output_1.printTable)(list.map((v) => ({ id: v.id, name: v.name + (v.recommended ? ' ★' : ''), accent: v.accent, gender: v.gender, provider: v.provider, style: v.style.slice(0, 44) })), ['id', 'name', 'accent', 'gender', 'provider', 'style']);
191
+ }
192
+ catch (error) {
193
+ (0, output_1.fail)(error);
194
+ }
195
+ });
196
+ voice
197
+ .command('pricing')
198
+ .description('What a call costs in credits')
199
+ .action(async () => {
200
+ try {
201
+ const p = await (0, config_1.getClient)().voice.pricing();
202
+ console.log(`${p.creditsPerBlock} credit(s) every ${p.blockSeconds} s of AI talk time (≈ ${p.creditsPerMinute}/min).`);
203
+ console.log(`${p.billedOn}. Twilio bills minutes and numbers to your own Twilio account.`);
204
+ }
205
+ catch (error) {
206
+ (0, output_1.fail)(error);
207
+ }
208
+ });
209
+ }
210
+ //# sourceMappingURL=voice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"voice.js","sourceRoot":"","sources":["../../src/commands/voice.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@ const mcp_1 = require("./commands/mcp");
14
14
  const knowledge_1 = require("./commands/knowledge");
15
15
  const organization_1 = require("./commands/organization");
16
16
  const artifacts_1 = require("./commands/artifacts");
17
+ const voice_1 = require("./commands/voice");
17
18
  const program = new commander_1.Command();
18
19
  const { version } = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(__dirname, '..', 'package.json'), 'utf8'));
19
20
  program
@@ -30,5 +31,6 @@ program
30
31
  (0, knowledge_1.registerKnowledgeCommands)(program);
31
32
  (0, organization_1.registerOrganizationCommands)(program);
32
33
  (0, artifacts_1.registerArtifactCommands)(program);
34
+ (0, voice_1.registerVoiceCommands)(program);
33
35
  program.parseAsync(process.argv);
34
36
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,qCAAuC;AACvC,yCAAiC;AACjC,yCAAoC;AACpC,0CAAuD;AACvD,8CAA0D;AAC1D,4CAAwD;AACxD,gDAA4D;AAC5D,4CAAwD;AACxD,4CAAwD;AACxD,wCAAqD;AACrD,oDAAiE;AACjE,0DAAuE;AACvE,oDAAgE;AAEhE,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAC5B,IAAA,sBAAY,EAAC,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CACrC,CAAC;AAEzB,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,oEAAoE,CAAC;KACjF,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,IAAA,2BAAoB,EAAC,OAAO,CAAC,CAAC;AAC9B,IAAA,8BAAqB,EAAC,OAAO,CAAC,CAAC;AAC/B,IAAA,4BAAoB,EAAC,OAAO,CAAC,CAAC;AAC9B,IAAA,gCAAsB,EAAC,OAAO,CAAC,CAAC;AAChC,IAAA,4BAAoB,EAAC,OAAO,CAAC,CAAC;AAC9B,IAAA,4BAAoB,EAAC,OAAO,CAAC,CAAC;AAC9B,IAAA,yBAAmB,EAAC,OAAO,CAAC,CAAC;AAC7B,IAAA,qCAAyB,EAAC,OAAO,CAAC,CAAC;AACnC,IAAA,2CAA4B,EAAC,OAAO,CAAC,CAAC;AACtC,IAAA,oCAAwB,EAAC,OAAO,CAAC,CAAC;AAElC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,qCAAuC;AACvC,yCAAiC;AACjC,yCAAoC;AACpC,0CAAuD;AACvD,8CAA0D;AAC1D,4CAAwD;AACxD,gDAA4D;AAC5D,4CAAwD;AACxD,4CAAwD;AACxD,wCAAqD;AACrD,oDAAiE;AACjE,0DAAuE;AACvE,oDAAgE;AAChE,4CAAyD;AAEzD,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAC5B,IAAA,sBAAY,EAAC,IAAA,gBAAI,EAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CACrC,CAAC;AAEzB,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,oEAAoE,CAAC;KACjF,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,IAAA,2BAAoB,EAAC,OAAO,CAAC,CAAC;AAC9B,IAAA,8BAAqB,EAAC,OAAO,CAAC,CAAC;AAC/B,IAAA,4BAAoB,EAAC,OAAO,CAAC,CAAC;AAC9B,IAAA,gCAAsB,EAAC,OAAO,CAAC,CAAC;AAChC,IAAA,4BAAoB,EAAC,OAAO,CAAC,CAAC;AAC9B,IAAA,4BAAoB,EAAC,OAAO,CAAC,CAAC;AAC9B,IAAA,yBAAmB,EAAC,OAAO,CAAC,CAAC;AAC7B,IAAA,qCAAyB,EAAC,OAAO,CAAC,CAAC;AACnC,IAAA,2CAA4B,EAAC,OAAO,CAAC,CAAC;AACtC,IAAA,oCAAwB,EAAC,OAAO,CAAC,CAAC;AAClC,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC;AAE/B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mind2flow/cli",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "Command-line interface for the Mind2Flow AI agents platform",
5
5
  "keywords": [
6
6
  "ai",
@@ -33,7 +33,7 @@
33
33
  "node": ">=18"
34
34
  },
35
35
  "dependencies": {
36
- "@mind2flow/agents-sdk": "^0.4.0",
36
+ "@mind2flow/agents-sdk": "^0.5.0",
37
37
  "commander": "^12.0.0"
38
38
  },
39
39
  "devDependencies": {