@markus-global/cli 0.7.3-rc.2 → 0.7.3

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 (109) hide show
  1. package/dist/commands/agent.d.ts.map +1 -1
  2. package/dist/commands/agent.js +2 -149
  3. package/dist/commands/agent.js.map +1 -1
  4. package/dist/commands/doctor.js +1 -1
  5. package/dist/commands/doctor.js.map +1 -1
  6. package/dist/commands/init.js +2 -2
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/commands/install-agent.d.ts.map +1 -1
  9. package/dist/commands/install-agent.js +4 -5
  10. package/dist/commands/install-agent.js.map +1 -1
  11. package/dist/commands/system.d.ts.map +1 -1
  12. package/dist/commands/system.js +3 -124
  13. package/dist/commands/system.js.map +1 -1
  14. package/dist/index.js +4 -57
  15. package/dist/index.js.map +1 -1
  16. package/dist/markus.mjs +580 -3213
  17. package/dist/tray.js +6 -2
  18. package/dist/tray.js.map +1 -1
  19. package/dist/tray.mjs +4 -2
  20. package/dist/utils/logger.d.ts +1 -1
  21. package/dist/utils/logger.js +1 -1
  22. package/dist/web-ui/assets/{browser-CIXBeJ4H.js → browser-hOSqGAXu.js} +1 -1
  23. package/dist/web-ui/assets/index-ThJZw2FP.js +706 -0
  24. package/dist/web-ui/assets/index-r_zg4Nsa.css +1 -0
  25. package/dist/web-ui/index.html +2 -2
  26. package/package.json +1 -1
  27. package/templates/skills/markus-admin-cli/SKILL.md +23 -96
  28. package/dist/commands/approval.d.ts +0 -3
  29. package/dist/commands/approval.d.ts.map +0 -1
  30. package/dist/commands/approval.js +0 -59
  31. package/dist/commands/approval.js.map +0 -1
  32. package/dist/commands/audit.d.ts +0 -3
  33. package/dist/commands/audit.d.ts.map +0 -1
  34. package/dist/commands/audit.js +0 -92
  35. package/dist/commands/audit.js.map +0 -1
  36. package/dist/commands/builder.d.ts +0 -3
  37. package/dist/commands/builder.d.ts.map +0 -1
  38. package/dist/commands/builder.js +0 -85
  39. package/dist/commands/builder.js.map +0 -1
  40. package/dist/commands/channel.d.ts +0 -3
  41. package/dist/commands/channel.d.ts.map +0 -1
  42. package/dist/commands/channel.js +0 -259
  43. package/dist/commands/channel.js.map +0 -1
  44. package/dist/commands/connect.d.ts +0 -3
  45. package/dist/commands/connect.d.ts.map +0 -1
  46. package/dist/commands/connect.js +0 -267
  47. package/dist/commands/connect.js.map +0 -1
  48. package/dist/commands/deliverable.d.ts +0 -3
  49. package/dist/commands/deliverable.d.ts.map +0 -1
  50. package/dist/commands/deliverable.js +0 -127
  51. package/dist/commands/deliverable.js.map +0 -1
  52. package/dist/commands/external-agent.d.ts +0 -3
  53. package/dist/commands/external-agent.d.ts.map +0 -1
  54. package/dist/commands/external-agent.js +0 -79
  55. package/dist/commands/external-agent.js.map +0 -1
  56. package/dist/commands/gateway.d.ts +0 -3
  57. package/dist/commands/gateway.d.ts.map +0 -1
  58. package/dist/commands/gateway.js +0 -91
  59. package/dist/commands/gateway.js.map +0 -1
  60. package/dist/commands/key.d.ts +0 -3
  61. package/dist/commands/key.d.ts.map +0 -1
  62. package/dist/commands/key.js +0 -68
  63. package/dist/commands/key.js.map +0 -1
  64. package/dist/commands/project.d.ts +0 -3
  65. package/dist/commands/project.d.ts.map +0 -1
  66. package/dist/commands/project.js +0 -164
  67. package/dist/commands/project.js.map +0 -1
  68. package/dist/commands/report.d.ts +0 -3
  69. package/dist/commands/report.d.ts.map +0 -1
  70. package/dist/commands/report.js +0 -99
  71. package/dist/commands/report.js.map +0 -1
  72. package/dist/commands/requirement.d.ts +0 -3
  73. package/dist/commands/requirement.d.ts.map +0 -1
  74. package/dist/commands/requirement.js +0 -197
  75. package/dist/commands/requirement.js.map +0 -1
  76. package/dist/commands/review.d.ts +0 -3
  77. package/dist/commands/review.d.ts.map +0 -1
  78. package/dist/commands/review.js +0 -71
  79. package/dist/commands/review.js.map +0 -1
  80. package/dist/commands/role.d.ts +0 -3
  81. package/dist/commands/role.d.ts.map +0 -1
  82. package/dist/commands/role.js +0 -39
  83. package/dist/commands/role.js.map +0 -1
  84. package/dist/commands/settings.d.ts +0 -3
  85. package/dist/commands/settings.d.ts.map +0 -1
  86. package/dist/commands/settings.js +0 -53
  87. package/dist/commands/settings.js.map +0 -1
  88. package/dist/commands/skill.d.ts +0 -3
  89. package/dist/commands/skill.d.ts.map +0 -1
  90. package/dist/commands/skill.js +0 -136
  91. package/dist/commands/skill.js.map +0 -1
  92. package/dist/commands/task.d.ts +0 -3
  93. package/dist/commands/task.d.ts.map +0 -1
  94. package/dist/commands/task.js +0 -510
  95. package/dist/commands/task.js.map +0 -1
  96. package/dist/commands/team.d.ts +0 -3
  97. package/dist/commands/team.d.ts.map +0 -1
  98. package/dist/commands/team.js +0 -312
  99. package/dist/commands/team.js.map +0 -1
  100. package/dist/commands/template.d.ts +0 -3
  101. package/dist/commands/template.d.ts.map +0 -1
  102. package/dist/commands/template.js +0 -77
  103. package/dist/commands/template.js.map +0 -1
  104. package/dist/commands/user.d.ts +0 -3
  105. package/dist/commands/user.d.ts.map +0 -1
  106. package/dist/commands/user.js +0 -68
  107. package/dist/commands/user.js.map +0 -1
  108. package/dist/web-ui/assets/index-BUO-8jKv.js +0 -706
  109. package/dist/web-ui/assets/index-DxTg9YFr.css +0 -1
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  name: markus-admin-cli
3
- description: System administration via markus CLI — system controls, audit, users, settings, gateway.
3
+ description: System administration via markus CLI — system status, emergency stop, version, and updates.
4
4
  ---
5
5
 
6
6
  # System Administration via CLI
7
7
 
8
- > **NOTE**: Most admin CLI commands have no built-in tool equivalent CLI is the primary interface for system administration. Use `package_install`/`package_list` for package management when available.
8
+ > **NOTE**: The CLI is intentionally minimal. Most operations should be done through built-in agent tools or the Web UI. The CLI is reserved for infrastructure bootstrap, human-agent communication, and emergency operations.
9
9
 
10
10
  ## How to invoke
11
11
 
@@ -17,115 +17,42 @@ markus admin system status --json
17
17
 
18
18
  **Always use `--json` when parsing results programmatically.** The CLI connects to `http://localhost:8056` by default. Override with `--server <url>` or `MARKUS_API_URL`. For authenticated access use `--api-key <key>` or `MARKUS_API_KEY`.
19
19
 
20
- ## System Controls
20
+ ## Available Admin Commands
21
21
 
22
22
  ```bash
23
23
  markus admin system status --json
24
24
  markus admin system version --json
25
25
  markus admin system update
26
26
  markus admin system update --dry-run
27
- markus admin system pause-all --reason "Deploying updates"
28
- markus admin system resume-all
29
27
  markus admin system emergency-stop
30
- markus admin system storage --json
31
- markus admin system orphans --json
32
- markus admin system announce --title "Maintenance" --content "Downtime at 2am" --priority high
33
- markus admin system policy --json
34
- markus admin system policy --set --body '{"defaultApproval":"manager"}'
35
28
  ```
36
29
 
37
- | Command | Key Options |
30
+ | Command | Description |
38
31
  |---------|-------------|
39
- | `admin system status` | |
40
- | `admin system version` | Shows current version, git info, and whether updates are available |
41
- | `admin system update` | `--dry-run` (preview without applying). Pulls latest code, installs deps, rebuilds |
42
- | `admin system pause-all` | `--reason` |
43
- | `admin system resume-all` | |
44
- | `admin system emergency-stop` | |
45
- | `admin system storage` | |
46
- | `admin system orphans` | |
47
- | `admin system announce` | `--title` `--content` `--priority` `--type` `--expires-at` |
48
- | `admin system policy` | `--set <json>` (update mode) |
32
+ | `admin system status` | System and health status |
33
+ | `admin system version` | Current version, git info, and whether updates are available |
34
+ | `admin system update` | Pull latest code, install deps, rebuild. `--dry-run` to preview |
35
+ | `admin system emergency-stop` | Immediately stop all agents |
49
36
 
50
- **Update workflow**: When updating the platform, always: (1) confirm with the user, (2) pause all agents first (`pause-all`), (3) run `update`, (4) restart the service (`markus start`), (5) resume agents (`resume-all`).
37
+ ## Update Workflow
51
38
 
52
- ## Audit (nested under admin system)
39
+ When updating the platform: (1) confirm with the user, (2) run `markus admin system update`, (3) restart the service with `markus start`.
53
40
 
54
- ```bash
55
- markus admin system audit log --json --limit 50
56
- markus admin system audit log --type llm_request --agent-id agt_xxx
57
- markus admin system audit summary --json
58
- markus admin system audit tokens --json
59
- ```
60
-
61
- ## Users
62
-
63
- ```bash
64
- markus admin user list --json
65
- markus admin user add --name "John" --role admin --email john@example.com
66
- markus admin user delete usr_xxx
67
- ```
68
-
69
- ## API Keys
70
-
71
- ```bash
72
- markus admin key list --json
73
- markus admin key create --name "CI Key"
74
- markus admin key delete key_xxx
75
- ```
76
-
77
- ## Roles
78
-
79
- ```bash
80
- markus admin role list --json
81
- markus admin role get developer --json
82
- ```
83
-
84
- ## Templates
85
-
86
- ```bash
87
- markus admin template list --json
88
- markus admin template get Developer --json
89
- markus admin template instantiate --template-id Developer --name "New Agent" --org-id default
90
- ```
91
-
92
- ## Builder Artifacts
93
-
94
- ```bash
95
- markus admin builder list --json
96
- markus admin builder get agent my-agent --json
97
- markus admin builder install agent my-agent
98
- markus admin builder uninstall agent my-agent
99
- ```
100
-
101
- ## Settings
102
-
103
- ```bash
104
- markus admin settings llm --json
105
- markus admin settings env-models --json
106
- markus admin settings oauth-status --json
107
- ```
108
-
109
- ## Gateway (External Agent Access)
110
-
111
- ```bash
112
- markus admin gateway info --json
113
- markus admin gateway register --agent-id ext_001 --agent-name "CI Bot" --org default
114
- markus admin gateway auth --agent-id ext_001 --org default --secret <secret>
115
- markus admin gateway message --text "Status update" --token <bearer-token>
116
- markus admin gateway status --token <bearer-token>
117
- markus admin gateway manual --token <bearer-token>
118
- markus admin gateway team --token <bearer-token>
119
- ```
120
-
121
- ## External Agents
41
+ ## Other CLI Commands (non-admin)
122
42
 
123
43
  ```bash
124
- markus admin external-agent list --json
125
- markus admin external-agent register --name "CI Bot" --type ci
126
- markus admin external-agent delete ext_xxx
44
+ markus start # Start the server
45
+ markus doctor # Diagnose configuration
46
+ markus model # Configure LLM providers
47
+ markus models [provider] # List available models
48
+ markus auth list|add|remove # Manage API credentials
49
+ markus install <platform> # Install external agent platform
50
+ markus agent list # List agents
51
+ markus agent get <id> # Get agent details
52
+ markus agent chat <id> # Interactive chat
53
+ markus agent message <id> # Send one-shot message
127
54
  ```
128
55
 
129
- ## Permissions Note
56
+ ## Prefer Built-in Tools
130
57
 
131
- Most admin commands require owner or admin role. Agent-level operations require the agent to be part of your organization.
58
+ For project, task, requirement, deliverable, team, and skill management, **always use built-in agent tools** (`task_create`, `list_projects`, `requirement_propose`, `team_list`, etc.) instead of CLI commands. The CLI does not provide these commands — they are agent-only operations.
@@ -1,3 +0,0 @@
1
- import type { Command } from 'commander';
2
- export declare function registerApprovalCommands(program: Command): void;
3
- //# sourceMappingURL=approval.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"approval.d.ts","sourceRoot":"","sources":["../../src/commands/approval.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWzC,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,QA6CxD"}
@@ -1,59 +0,0 @@
1
- import { createClient, ApiError } from '../api-client.js';
2
- import { table, success, fail, extractRows } from '../output.js';
3
- function parseApproved(v) {
4
- const s = String(v).toLowerCase();
5
- if (s === 'true' || s === '1' || s === 'yes')
6
- return true;
7
- if (s === 'false' || s === '0' || s === 'no')
8
- return false;
9
- fail('--approved must be true or false');
10
- }
11
- export function registerApprovalCommands(program) {
12
- const root = program.command('approval').description('Approvals');
13
- root
14
- .command('list')
15
- .option('--status <s>')
16
- .action(async (opts, cmd) => {
17
- const g = cmd.optsWithGlobals();
18
- const client = createClient(g);
19
- const out = { json: !!g.json };
20
- try {
21
- const data = await client.get('/approvals', opts.status ? { status: opts.status } : undefined);
22
- const rows = extractRows(data);
23
- table(rows, [
24
- { key: 'id', header: 'ID', width: 28 },
25
- { key: 'type', header: 'Type', width: 14 },
26
- { key: 'status', header: 'Status', width: 10 },
27
- { key: 'description', header: 'Description', width: 30 },
28
- ], { ...out, title: 'Approvals' });
29
- }
30
- catch (e) {
31
- if (e instanceof ApiError)
32
- fail(e.message);
33
- throw e;
34
- }
35
- });
36
- root
37
- .command('respond <id>')
38
- .requiredOption('--approved <bool>', 'true or false')
39
- .option('--responded-by <id>')
40
- .action(async (id, opts, cmd) => {
41
- const g = cmd.optsWithGlobals();
42
- const client = createClient(g);
43
- const out = { json: !!g.json };
44
- const approved = parseApproved(opts.approved);
45
- try {
46
- const data = await client.post(`/approvals/${encodeURIComponent(id)}`, {
47
- approved,
48
- ...(opts.respondedBy && { respondedBy: opts.respondedBy }),
49
- });
50
- success('Response recorded', data, out);
51
- }
52
- catch (e) {
53
- if (e instanceof ApiError)
54
- fail(e.message);
55
- throw e;
56
- }
57
- });
58
- }
59
- //# sourceMappingURL=approval.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"approval.js","sourceRoot":"","sources":["../../src/commands/approval.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { Command } from 'commander';
2
- export declare function registerAuditCommands(program: Command): void;
3
- //# sourceMappingURL=audit.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/commands/audit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,QAoFrD"}
@@ -1,92 +0,0 @@
1
- import { createClient, ApiError } from '../api-client.js';
2
- import { table, detail, fail, extractRows } from '../output.js';
3
- export function registerAuditCommands(program) {
4
- const root = program.command('audit').description('Audit log and usage');
5
- root
6
- .command('log')
7
- .option('--org-id <id>')
8
- .option('--agent-id <id>')
9
- .option('--type <t>')
10
- .option('--limit <n>')
11
- .option('--since <iso>')
12
- .action(async (opts, cmd) => {
13
- const g = cmd.optsWithGlobals();
14
- const client = createClient(g);
15
- const out = { json: !!g.json };
16
- try {
17
- const data = await client.get('/audit', {
18
- orgId: opts.orgId,
19
- agentId: opts.agentId,
20
- type: opts.type,
21
- limit: opts.limit,
22
- since: opts.since,
23
- });
24
- const rows = extractRows(data);
25
- table(rows, [
26
- { key: 'orgId', header: 'orgId', width: 7 },
27
- { key: 'agentId', header: 'agentId', width: 28 },
28
- { key: 'type', header: 'type', width: 11 },
29
- { key: 'action', header: 'action', width: 16 },
30
- { key: 'durationMs', header: 'durationMs', width: 10 },
31
- { key: 'success', header: 'success', width: 7 },
32
- { key: 'id', header: 'id', width: 15 },
33
- { key: 'timestamp', header: 'timestamp', width: 24 },
34
- ], { ...out, title: 'Audit log' });
35
- }
36
- catch (e) {
37
- if (e instanceof ApiError)
38
- fail(e.message);
39
- throw e;
40
- }
41
- });
42
- root
43
- .command('summary')
44
- .option('--org-id <id>')
45
- .option('--agent-id <id>')
46
- .action(async (opts, cmd) => {
47
- const g = cmd.optsWithGlobals();
48
- const client = createClient(g);
49
- const out = { json: !!g.json };
50
- try {
51
- const data = await client.get('/audit/summary', {
52
- orgId: opts.orgId,
53
- agentId: opts.agentId,
54
- });
55
- detail(data, { ...out, title: 'Audit summary' });
56
- }
57
- catch (e) {
58
- if (e instanceof ApiError)
59
- fail(e.message);
60
- throw e;
61
- }
62
- });
63
- root
64
- .command('tokens')
65
- .option('--org-id <id>')
66
- .action(async (opts, cmd) => {
67
- const g = cmd.optsWithGlobals();
68
- const client = createClient(g);
69
- const out = { json: !!g.json };
70
- try {
71
- const data = await client.get('/audit/tokens', opts.orgId ? { orgId: opts.orgId } : undefined);
72
- if (out.json) {
73
- console.log(JSON.stringify(data, null, 2));
74
- return;
75
- }
76
- if (data && typeof data === 'object' && !Array.isArray(data)) {
77
- detail(data, { title: 'Token audit' });
78
- }
79
- else {
80
- const rows = Array.isArray(data) ? data : [];
81
- const keys = rows[0] ? Object.keys(rows[0]).slice(0, 12) : [];
82
- table(rows, keys.map(k => ({ key: k, header: k })), { title: 'Token audit' });
83
- }
84
- }
85
- catch (e) {
86
- if (e instanceof ApiError)
87
- fail(e.message);
88
- throw e;
89
- }
90
- });
91
- }
92
- //# sourceMappingURL=audit.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/commands/audit.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { Command } from 'commander';
2
- export declare function registerBuilderCommands(program: Command): void;
3
- //# sourceMappingURL=builder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/commands/builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQzC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,QAyEvD"}
@@ -1,85 +0,0 @@
1
- import { createClient, ApiError } from '../api-client.js';
2
- import { table, detail, success, fail, extractRows } from '../output.js';
3
- function seg(s) {
4
- return encodeURIComponent(s);
5
- }
6
- export function registerBuilderCommands(program) {
7
- const root = program.command('builder').description('Builder artifacts');
8
- root.command('list').action(async (_opts, cmd) => {
9
- const g = cmd.optsWithGlobals();
10
- const client = createClient(g);
11
- const out = { json: !!g.json };
12
- try {
13
- const data = await client.get('/builder/artifacts');
14
- const rows = extractRows(data);
15
- table(rows, [
16
- { key: 'name', header: 'Name', width: 24 },
17
- { key: 'type', header: 'Type', width: 10 },
18
- { key: 'version', header: 'Version', width: 8 },
19
- { key: 'description', header: 'Description', width: 40 },
20
- ], { ...out, title: 'Artifacts' });
21
- }
22
- catch (e) {
23
- if (e instanceof ApiError)
24
- fail(e.message);
25
- throw e;
26
- }
27
- });
28
- root.command('get <type> <name>').action(async (type, name, _opts, cmd) => {
29
- const g = cmd.optsWithGlobals();
30
- const client = createClient(g);
31
- const out = { json: !!g.json };
32
- try {
33
- const data = await client.get(`/builder/artifacts/${seg(type)}/${seg(name)}`);
34
- detail(data, { ...out, title: `${type}/${name}` });
35
- }
36
- catch (e) {
37
- if (e instanceof ApiError)
38
- fail(e.message);
39
- throw e;
40
- }
41
- });
42
- root.command('install <type> <name>').action(async (type, name, _opts, cmd) => {
43
- const g = cmd.optsWithGlobals();
44
- const client = createClient(g);
45
- const out = { json: !!g.json };
46
- try {
47
- const data = await client.post(`/builder/artifacts/${seg(type)}/${seg(name)}/install`);
48
- success('Installed', data, out);
49
- }
50
- catch (e) {
51
- if (e instanceof ApiError)
52
- fail(e.message);
53
- throw e;
54
- }
55
- });
56
- root.command('uninstall <type> <name>').action(async (type, name, _opts, cmd) => {
57
- const g = cmd.optsWithGlobals();
58
- const client = createClient(g);
59
- const out = { json: !!g.json };
60
- try {
61
- const data = await client.post(`/builder/artifacts/${seg(type)}/${seg(name)}/uninstall`);
62
- success('Uninstalled', data, out);
63
- }
64
- catch (e) {
65
- if (e instanceof ApiError)
66
- fail(e.message);
67
- throw e;
68
- }
69
- });
70
- root.command('delete <type> <name>').action(async (type, name, _opts, cmd) => {
71
- const g = cmd.optsWithGlobals();
72
- const client = createClient(g);
73
- const out = { json: !!g.json };
74
- try {
75
- const data = await client.delete(`/builder/artifacts/${seg(type)}/${seg(name)}`);
76
- success('Deleted', data, out);
77
- }
78
- catch (e) {
79
- if (e instanceof ApiError)
80
- fail(e.message);
81
- throw e;
82
- }
83
- });
84
- }
85
- //# sourceMappingURL=builder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/commands/builder.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { Command } from 'commander';
2
- export declare function registerChannelCommand(program: Command): void;
3
- //# sourceMappingURL=channel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../src/commands/channel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqRzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,QAuCtD"}