@myagentroam/marctl 0.11.8 → 0.11.9

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@myagentroam/marctl",
3
- "version": "0.11.8",
3
+ "version": "0.11.9",
4
4
  "description": "MyAgentRoam command-line interface for authorized Node access.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -57,10 +57,8 @@ Usage:
57
57
  {program} wait [<id>] [--agent <id> ...] [--mode any|all]
58
58
  [--wait-for message|completion] [--timeout <duration>] [--json]
59
59
  {program} stop <id> --execution <execution-id> [--json]
60
- {program} list [--scope children|descendants|workspace|profile]
61
- [--agent <id>]
62
- [--runner <runner>] [--query <title>] [--parent <id>]
63
- [--cursor <cursor>] [--limit <1..100>] [--json]
60
+ {program} list [--scope tree|active] [--query <title>]
61
+ [--limit <1..100>] [--json]
64
62
  {program} view [<id>] [--history] [--cursor <cursor>]
65
63
  [--limit <1..100>] [--json]
66
64
 
@@ -84,8 +82,7 @@ Management:
84
82
 
85
83
  Input and results:
86
84
  Start defaults to the current Session Runner; a terminal without a current
87
- Session must specify --runner or --parent. Profile lists configured models,
88
- not guaranteed account availability. Start returns without waiting.
85
+ Session must specify --runner or --parent. Start returns without waiting.
89
86
  Send appends by default; --steer provides timely input and --queue defers.
90
87
  --goal sets or replaces a Goal; --clear-goal clears it. Send can update a Goal
91
88
  without text; omitted Goal is unchanged. Stop clears the target Session Goal.
@@ -93,7 +90,11 @@ Input and results:
93
90
  Positive timeouts below 10s become 10s; maximum is 5m. Waiting does not stop.
94
91
  Images may be supplied without text: at most 5, 5 MiB each, 10 MiB total.
95
92
  -m and --message-file are exclusive; files use UTF-8 and - reads stdin.
96
- List exposes current identity and bounded pages; nextCursor marks more.
93
+ List defaults to the containing tree, including idle Sessions. Without a
94
+ current Session it defaults to active; explicit tree requires a Session.
95
+ Active includes running and sleeping Sessions in the current Workspace.
96
+ List returns currentAgentId (null without a Session), flat sessions and
97
+ truncated. Limit defaults to 100, maximum 100; no cursor or pagination.
97
98
  Configuration and prompt changes apply to future executions.
98
99
  Prefer --steer for timely communication or course correction.
99
100
  Use --queue only for deliberately deferred input: it is consumed after
@@ -103,7 +104,8 @@ Input and results:
103
104
 
104
105
  show --json includes session.status, session.modelId, session.effort,
105
106
  session.title, session.runId, session.recentTools, session.queuedCount and
106
- session.latestMessage. list reports latestActivity; wait may include progress.
107
+ session.latestMessage. List entries have id, parentSessionId, title, runner
108
+ and status; wait may include progress.
107
109
  Status is RUNNING/IDLE/SLEEPING. In history, segments[].items[] with
108
110
  kind === "assistant_message" expose payload.text.
109
111
 
@@ -56,10 +56,8 @@ ${configurationHelp}
56
56
  {program} wait [<id>] [--agent <id> ...] [--mode any|all]
57
57
  [--wait-for message|completion] [--timeout <duration>] [--json]
58
58
  {program} stop <id> --execution <execution-id> [--json]
59
- {program} list [--scope children|descendants|workspace|profile]
60
- [--agent <id>]
61
- [--runner <runner>] [--query <title>] [--parent <id>]
62
- [--cursor <cursor>] [--limit <1..100>] [--json]
59
+ {program} list [--scope tree|active] [--query <title>]
60
+ [--limit <1..100>] [--json]
63
61
  {program} view [<id>] [--history] [--cursor <cursor>]
64
62
  [--limit <1..100>] [--json]
65
63
 
@@ -83,21 +81,25 @@ ${configurationHelp}
83
81
 
84
82
  输入与结果:
85
83
  start 默认当前会话的 Runner;没有当前会话的终端须指定 --runner 或
86
- --parent。profile 显示已配置模型,不代表账号实时可用。start 不等待。
84
+ --parent。start 不等待。
87
85
  send 默认追加;--steer 优先补充,--queue 排队。--goal 设置或替换目标,
88
86
  --clear-goal 清除目标;send 可仅更新目标,省略则不修改。
89
87
  stop 清除目标会话的 Goal。wait 默认等待直接子会话终态 30 秒,
90
88
  0ms 为快照;正数小于 10 秒按 10 秒等待,最多 5 分钟。等待不会停止任务。
91
89
  可只传图片:最多 5 张,单张 5 MiB、总计 10 MiB。-m 与 --message-file
92
- 互斥;文件使用 UTF-8,- 从 stdin 读取。list 返回当前身份和分页结果,
93
- nextCursor 表示还有后续页面。配置和持久提示从后续执行生效。
90
+ 互斥;文件使用 UTF-8,- 从 stdin 读取。list 默认查询所在会话树,包含空闲会话;
91
+ 没有当前会话时默认 active,显式 tree 须有会话上下文。active 包含当前
92
+ Workspace 中运行及睡眠的会话。返回 currentAgentId(无会话时为 null)、
93
+ 扁平 sessions 和 truncated。limit 默认及上限均为 100,无 cursor 或分页。
94
+ 配置和持久提示从后续执行生效。
94
95
  即时沟通或纠偏优先使用 --steer。
95
96
  仅明确要延后处理的输入使用 --queue:当前工作及前面的队列项结束后才消费,
96
97
  有活动 Goal 时,必须等到该 Goal 退出才消费。已接收不保证立即处理。
97
98
 
98
99
  show --json 包含 session.status、session.modelId、session.effort、
99
100
  session.title、session.runId、session.recentTools、session.queuedCount 和
100
- session.latestMessage。list 返回 latestActivity;wait 可能包含 progress;
101
+ session.latestMessage。list 每项仅含 id、parentSessionId、title、runner 和
102
+ status;wait 可能包含 progress;
101
103
  状态为 RUNNING/IDLE/SLEEPING。历史中 segments[].items[] 的
102
104
  kind === "assistant_message" 包含 payload.text。
103
105
 
@@ -4,7 +4,7 @@ import { sessionTarget } from './session-target.mjs';
4
4
 
5
5
  const commands = {
6
6
  current: [],
7
- list: ['cursor', 'limit', 'query', 'parent', 'scope', 'agent', 'runner'],
7
+ list: ['scope', 'query', 'limit'],
8
8
  graph: ['limit'],
9
9
  show: [],
10
10
  view: ['cursor', 'limit', 'history'],
@@ -211,11 +211,7 @@ export function parseSessionArgs(argv, translate = createTranslator()) {
211
211
  if (args.waitFor !== undefined && !['message', 'completion'].includes(args.waitFor))
212
212
  throw invalid();
213
213
  if (args.mode !== undefined && !['any', 'all'].includes(args.mode)) throw invalid();
214
- if (
215
- args.scope !== undefined &&
216
- !['children', 'descendants', 'workspace', 'profile'].includes(args.scope)
217
- )
218
- throw invalid();
214
+ if (args.scope !== undefined && !['tree', 'active'].includes(args.scope)) throw invalid();
219
215
  if (
220
216
  action === 'approval.decide' &&
221
217
  (!args.runId || !args.approvalId || !['approve', 'reject'].includes(args.decision))
@@ -21,11 +21,6 @@ export async function prepareAgentNetworkRequest({ args, stdin, translate, sessi
21
21
  'executionId'
22
22
  ])
23
23
  if (args[name] !== undefined) input[name] = args[name];
24
- if (args.action === 'list' && input.parentSessionId !== undefined) {
25
- input.parent = input.parentSessionId;
26
- delete input.parentSessionId;
27
- }
28
- if (args.action === 'list' && args.agent !== undefined) input.agentId = args.agent;
29
24
  if (['send', 'stop', 'view', 'wait'].includes(args.action) && sessionId)
30
25
  input.agentId = sessionId;
31
26
  if (args.action === 'wait' && args.agentIds?.length) input.agentIds = args.agentIds;