@phnx-labs/agents-cli 1.20.4 → 1.20.6

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 (207) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +49 -18
  3. package/dist/commands/browser.js +31 -4
  4. package/dist/commands/cli.js +1 -1
  5. package/dist/commands/cloud.js +1 -1
  6. package/dist/commands/commands.js +2 -0
  7. package/dist/commands/computer.js +10 -2
  8. package/dist/commands/defaults.d.ts +7 -0
  9. package/dist/commands/defaults.js +89 -0
  10. package/dist/commands/doctor.js +1 -1
  11. package/dist/commands/exec.js +73 -19
  12. package/dist/commands/hooks.js +6 -6
  13. package/dist/commands/inspect.d.ts +26 -0
  14. package/dist/commands/inspect.js +590 -0
  15. package/dist/commands/mcp.js +17 -16
  16. package/dist/commands/models.js +1 -1
  17. package/dist/commands/packages.js +6 -4
  18. package/dist/commands/permissions.js +13 -12
  19. package/dist/commands/plugins.d.ts +13 -0
  20. package/dist/commands/plugins.js +100 -11
  21. package/dist/commands/prune.js +3 -2
  22. package/dist/commands/pull.d.ts +12 -5
  23. package/dist/commands/pull.js +26 -422
  24. package/dist/commands/push.d.ts +14 -0
  25. package/dist/commands/push.js +30 -0
  26. package/dist/commands/repo.d.ts +1 -1
  27. package/dist/commands/repo.js +155 -112
  28. package/dist/commands/resource-view.d.ts +2 -0
  29. package/dist/commands/resource-view.js +12 -3
  30. package/dist/commands/routines.js +32 -7
  31. package/dist/commands/rules.js +4 -4
  32. package/dist/commands/secrets.js +46 -9
  33. package/dist/commands/sessions.js +1 -0
  34. package/dist/commands/setup.d.ts +3 -3
  35. package/dist/commands/setup.js +17 -17
  36. package/dist/commands/skills.js +6 -5
  37. package/dist/commands/subagents.js +5 -4
  38. package/dist/commands/sync.d.ts +18 -5
  39. package/dist/commands/sync.js +251 -65
  40. package/dist/commands/teams.js +109 -11
  41. package/dist/commands/tmux.d.ts +25 -0
  42. package/dist/commands/tmux.js +415 -0
  43. package/dist/commands/trash.d.ts +2 -2
  44. package/dist/commands/trash.js +1 -1
  45. package/dist/commands/versions.js +2 -2
  46. package/dist/commands/view.d.ts +12 -1
  47. package/dist/commands/view.js +128 -40
  48. package/dist/commands/workflows.js +4 -3
  49. package/dist/commands/worktree.d.ts +4 -5
  50. package/dist/commands/worktree.js +4 -4
  51. package/dist/index.js +106 -41
  52. package/dist/lib/agents.d.ts +23 -10
  53. package/dist/lib/agents.js +88 -25
  54. package/dist/lib/auto-pull-worker.d.ts +1 -1
  55. package/dist/lib/auto-pull-worker.js +2 -2
  56. package/dist/lib/auto-pull.d.ts +1 -1
  57. package/dist/lib/auto-pull.js +1 -1
  58. package/dist/lib/beta.d.ts +1 -1
  59. package/dist/lib/beta.js +1 -1
  60. package/dist/lib/browser/chrome.d.ts +10 -0
  61. package/dist/lib/browser/chrome.js +84 -3
  62. package/dist/lib/capabilities.js +2 -0
  63. package/dist/lib/commands.d.ts +28 -1
  64. package/dist/lib/commands.js +125 -20
  65. package/dist/lib/doctor-diff.js +2 -2
  66. package/dist/lib/exec.d.ts +14 -0
  67. package/dist/lib/exec.js +59 -5
  68. package/dist/lib/fuzzy.d.ts +12 -2
  69. package/dist/lib/fuzzy.js +29 -4
  70. package/dist/lib/git.js +8 -1
  71. package/dist/lib/hooks.d.ts +2 -2
  72. package/dist/lib/hooks.js +97 -10
  73. package/dist/lib/mcp.js +32 -2
  74. package/dist/lib/migrate.d.ts +51 -0
  75. package/dist/lib/migrate.js +233 -5
  76. package/dist/lib/models.js +62 -15
  77. package/dist/lib/permissions.d.ts +59 -2
  78. package/dist/lib/permissions.js +299 -7
  79. package/dist/lib/plugin-marketplace.d.ts +98 -40
  80. package/dist/lib/plugin-marketplace.js +196 -93
  81. package/dist/lib/plugins.d.ts +21 -4
  82. package/dist/lib/plugins.js +130 -49
  83. package/dist/lib/profiles-presets.js +12 -12
  84. package/dist/lib/project-launch.d.ts +70 -0
  85. package/dist/lib/project-launch.js +404 -0
  86. package/dist/lib/pty-client.js +1 -1
  87. package/dist/lib/pty-server.d.ts +1 -1
  88. package/dist/lib/pty-server.js +8 -5
  89. package/dist/lib/refresh.d.ts +26 -0
  90. package/dist/lib/refresh.js +315 -0
  91. package/dist/lib/resource-patterns.d.ts +1 -1
  92. package/dist/lib/resource-patterns.js +1 -1
  93. package/dist/lib/resources/commands.js +2 -2
  94. package/dist/lib/resources/hooks.d.ts +1 -1
  95. package/dist/lib/resources/hooks.js +1 -1
  96. package/dist/lib/resources/mcp.d.ts +1 -1
  97. package/dist/lib/resources/mcp.js +5 -6
  98. package/dist/lib/resources/permissions.js +5 -2
  99. package/dist/lib/resources/rules.js +3 -2
  100. package/dist/lib/resources/skills.js +3 -2
  101. package/dist/lib/resources/types.d.ts +1 -1
  102. package/dist/lib/resources.d.ts +2 -0
  103. package/dist/lib/resources.js +4 -3
  104. package/dist/lib/rotate.d.ts +1 -1
  105. package/dist/lib/rotate.js +7 -19
  106. package/dist/lib/routines.d.ts +16 -4
  107. package/dist/lib/routines.js +67 -17
  108. package/dist/lib/rules/compile.js +22 -10
  109. package/dist/lib/rules/rules.js +3 -3
  110. package/dist/lib/run-config.d.ts +9 -0
  111. package/dist/lib/run-config.js +35 -0
  112. package/dist/lib/run-defaults.d.ts +42 -0
  113. package/dist/lib/run-defaults.js +180 -0
  114. package/dist/lib/runner.js +16 -3
  115. package/dist/lib/scheduler.js +15 -1
  116. package/dist/lib/secrets/Agents CLI.app/Contents/CodeResources +0 -0
  117. package/dist/lib/secrets/Agents CLI.app/Contents/MacOS/Agents CLI +0 -0
  118. package/dist/lib/secrets/Agents CLI.app/Contents/_CodeSignature/CodeResources +9 -1
  119. package/dist/lib/secrets/Agents CLI.app/Contents/embedded.provisionprofile +0 -0
  120. package/dist/lib/secrets/install-helper.d.ts +11 -3
  121. package/dist/lib/secrets/install-helper.js +48 -6
  122. package/dist/lib/secrets/linux.d.ts +56 -9
  123. package/dist/lib/secrets/linux.js +327 -59
  124. package/dist/lib/session/db.js +15 -2
  125. package/dist/lib/session/discover.js +118 -3
  126. package/dist/lib/session/parse.js +3 -0
  127. package/dist/lib/session/types.d.ts +1 -1
  128. package/dist/lib/session/types.js +1 -1
  129. package/dist/lib/shims.d.ts +18 -9
  130. package/dist/lib/shims.js +133 -50
  131. package/dist/lib/skills.d.ts +1 -1
  132. package/dist/lib/skills.js +10 -9
  133. package/dist/lib/staleness/detectors/commands.d.ts +3 -0
  134. package/dist/lib/staleness/detectors/commands.js +46 -0
  135. package/dist/lib/staleness/detectors/hooks.d.ts +3 -0
  136. package/dist/lib/staleness/detectors/hooks.js +44 -0
  137. package/dist/lib/staleness/detectors/mcp.d.ts +3 -0
  138. package/dist/lib/staleness/detectors/mcp.js +31 -0
  139. package/dist/lib/staleness/detectors/permissions.d.ts +3 -0
  140. package/dist/lib/staleness/detectors/permissions.js +201 -0
  141. package/dist/lib/staleness/detectors/plugins.d.ts +8 -0
  142. package/dist/lib/staleness/detectors/plugins.js +23 -0
  143. package/dist/lib/staleness/detectors/rules.d.ts +3 -0
  144. package/dist/lib/staleness/detectors/rules.js +34 -0
  145. package/dist/lib/staleness/detectors/skills.d.ts +3 -0
  146. package/dist/lib/staleness/detectors/skills.js +71 -0
  147. package/dist/lib/staleness/detectors/subagents.d.ts +3 -0
  148. package/dist/lib/staleness/detectors/subagents.js +50 -0
  149. package/dist/lib/staleness/detectors/types.d.ts +22 -0
  150. package/dist/lib/staleness/detectors/types.js +1 -0
  151. package/dist/lib/staleness/detectors/workflows.d.ts +3 -0
  152. package/dist/lib/staleness/detectors/workflows.js +28 -0
  153. package/dist/lib/staleness/registry.d.ts +26 -0
  154. package/dist/lib/staleness/registry.js +123 -0
  155. package/dist/lib/staleness/writers/commands.d.ts +3 -0
  156. package/dist/lib/staleness/writers/commands.js +111 -0
  157. package/dist/lib/staleness/writers/hooks.d.ts +3 -0
  158. package/dist/lib/staleness/writers/hooks.js +47 -0
  159. package/dist/lib/staleness/writers/kinds.d.ts +10 -0
  160. package/dist/lib/staleness/writers/kinds.js +15 -0
  161. package/dist/lib/staleness/writers/lazy-map.d.ts +13 -0
  162. package/dist/lib/staleness/writers/lazy-map.js +19 -0
  163. package/dist/lib/staleness/writers/mcp.d.ts +10 -0
  164. package/dist/lib/staleness/writers/mcp.js +19 -0
  165. package/dist/lib/staleness/writers/permissions.d.ts +13 -0
  166. package/dist/lib/staleness/writers/permissions.js +26 -0
  167. package/dist/lib/staleness/writers/plugins.d.ts +7 -0
  168. package/dist/lib/staleness/writers/plugins.js +31 -0
  169. package/dist/lib/staleness/writers/rules.d.ts +7 -0
  170. package/dist/lib/staleness/writers/rules.js +55 -0
  171. package/dist/lib/staleness/writers/skills.d.ts +3 -0
  172. package/dist/lib/staleness/writers/skills.js +81 -0
  173. package/dist/lib/staleness/writers/sources.d.ts +16 -0
  174. package/dist/lib/staleness/writers/sources.js +72 -0
  175. package/dist/lib/staleness/writers/subagents.d.ts +3 -0
  176. package/dist/lib/staleness/writers/subagents.js +53 -0
  177. package/dist/lib/staleness/writers/types.d.ts +36 -0
  178. package/dist/lib/staleness/writers/types.js +1 -0
  179. package/dist/lib/staleness/writers/workflows.d.ts +7 -0
  180. package/dist/lib/staleness/writers/workflows.js +31 -0
  181. package/dist/lib/state.d.ts +34 -11
  182. package/dist/lib/state.js +58 -13
  183. package/dist/lib/subagents.d.ts +0 -2
  184. package/dist/lib/subagents.js +6 -6
  185. package/dist/lib/teams/agents.js +1 -1
  186. package/dist/lib/teams/api.d.ts +67 -0
  187. package/dist/lib/teams/api.js +78 -0
  188. package/dist/lib/teams/parsers.d.ts +1 -1
  189. package/dist/lib/tmux/binary.d.ts +67 -0
  190. package/dist/lib/tmux/binary.js +141 -0
  191. package/dist/lib/tmux/index.d.ts +8 -0
  192. package/dist/lib/tmux/index.js +8 -0
  193. package/dist/lib/tmux/paths.d.ts +17 -0
  194. package/dist/lib/tmux/paths.js +30 -0
  195. package/dist/lib/tmux/session.d.ts +122 -0
  196. package/dist/lib/tmux/session.js +305 -0
  197. package/dist/lib/types.d.ts +73 -13
  198. package/dist/lib/types.js +1 -1
  199. package/dist/lib/usage.js +1 -1
  200. package/dist/lib/versions.d.ts +4 -4
  201. package/dist/lib/versions.js +138 -496
  202. package/dist/lib/workflows.d.ts +2 -4
  203. package/dist/lib/workflows.js +3 -4
  204. package/package.json +6 -3
  205. package/scripts/postinstall.js +16 -63
  206. package/dist/commands/status.d.ts +0 -9
  207. package/dist/commands/status.js +0 -25
@@ -6,8 +6,6 @@
6
6
  * are composed at runtime by `agents run <workflow>`.
7
7
  */
8
8
  import type { AgentId } from './types.js';
9
- /** Agents that support running workflows via `agents run`. */
10
- export declare const WORKFLOW_CAPABLE_AGENTS: AgentId[];
11
9
  /** Parsed WORKFLOW.md frontmatter. */
12
10
  export interface WorkflowFrontmatter {
13
11
  name: string;
@@ -32,7 +30,7 @@ export interface DiscoveredWorkflow {
32
30
  frontmatter: WorkflowFrontmatter;
33
31
  subagentCount: number;
34
32
  }
35
- /** A workflow in central storage (~/.agents/workflows/ or ~/.agents-system/workflows/). */
33
+ /** A workflow in central storage (~/.agents/workflows/ or ~/.agents/.system/workflows/). */
36
34
  export interface InstalledWorkflow {
37
35
  name: string;
38
36
  path: string;
@@ -58,7 +56,7 @@ export declare function resolveWorkflowRef(ref: string, cwd?: string): string |
58
56
  export declare function discoverWorkflowsFromRepo(repoPath: string): DiscoveredWorkflow[];
59
57
  /**
60
58
  * List all workflows in central storage.
61
- * User layer (~/.agents/workflows/) wins over system (~/.agents-system/workflows/).
59
+ * User layer (~/.agents/workflows/) wins over system (~/.agents/.system/workflows/).
62
60
  */
63
61
  export declare function listInstalledWorkflows(): Map<string, InstalledWorkflow>;
64
62
  /** Copy a workflow directory into user central storage (~/.agents/workflows/<name>/). */
@@ -8,10 +8,9 @@
8
8
  import * as fs from 'fs';
9
9
  import * as path from 'path';
10
10
  import * as yaml from 'yaml';
11
+ import { capableAgents } from './capabilities.js';
11
12
  import { getProjectAgentsDir, getSystemWorkflowsDir, getUserWorkflowsDir, getTrashWorkflowsDir, getEnabledExtraRepos, } from './state.js';
12
13
  import { listInstalledVersions, getVersionHomePath } from './versions.js';
13
- /** Agents that support running workflows via `agents run`. */
14
- export const WORKFLOW_CAPABLE_AGENTS = ['claude'];
15
14
  /** Parse WORKFLOW.md frontmatter from a workflow directory. Returns null if invalid. */
16
15
  export function parseWorkflowFrontmatter(workflowDir) {
17
16
  const workflowMdPath = path.join(workflowDir, 'WORKFLOW.md');
@@ -144,7 +143,7 @@ export function discoverWorkflowsFromRepo(repoPath) {
144
143
  }
145
144
  /**
146
145
  * List all workflows in central storage.
147
- * User layer (~/.agents/workflows/) wins over system (~/.agents-system/workflows/).
146
+ * User layer (~/.agents/workflows/) wins over system (~/.agents/.system/workflows/).
148
147
  */
149
148
  export function listInstalledWorkflows() {
150
149
  const result = new Map();
@@ -261,7 +260,7 @@ export function removeWorkflowFromVersion(agent, version, name) {
261
260
  /** Iterate all installed (agent, version) pairs that support workflows. */
262
261
  export function iterWorkflowsCapableVersions(filter) {
263
262
  const result = [];
264
- for (const agentId of WORKFLOW_CAPABLE_AGENTS) {
263
+ for (const agentId of capableAgents('workflows')) {
265
264
  if (filter?.agent && filter.agent !== agentId)
266
265
  continue;
267
266
  const versions = listInstalledVersions(agentId);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phnx-labs/agents-cli",
3
- "version": "1.20.4",
3
+ "version": "1.20.6",
4
4
  "description": "One CLI for all your AI coding agents - versions, config, cloud dispatch, sessions, and teams (now with first-class Grok Build CLI support)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -31,7 +31,7 @@
31
31
  "LICENSE"
32
32
  ],
33
33
  "publishConfig": {
34
- "provenance": false
34
+ "provenance": true
35
35
  },
36
36
  "repository": {
37
37
  "type": "git",
@@ -73,7 +73,11 @@
73
73
  "node": ">=22.5.0",
74
74
  "npm": ">=9"
75
75
  },
76
+ "trustedDependencies": [
77
+ "@homebridge/node-pty-prebuilt-multiarch"
78
+ ],
76
79
  "dependencies": {
80
+ "@homebridge/node-pty-prebuilt-multiarch": "0.13.1",
77
81
  "@inquirer/prompts": "8.5.2",
78
82
  "@types/proper-lockfile": "4.1.4",
79
83
  "@xterm/headless": "6.0.0",
@@ -84,7 +88,6 @@
84
88
  "diff": "9.0.0",
85
89
  "marked": "15.0.12",
86
90
  "marked-terminal": "7.3.0",
87
- "node-pty": "1.1.0",
88
91
  "ora": "9.4.0",
89
92
  "proper-lockfile": "4.1.2",
90
93
  "simple-git": "3.36.0",
@@ -11,9 +11,11 @@ import { spawnSync } from 'child_process';
11
11
  import { fileURLToPath } from 'url';
12
12
 
13
13
  const HOME = os.homedir();
14
- const SHIMS_DIR = path.join(HOME, '.agents', '.cache', 'shims');
15
- const SYSTEM_DIR = path.join(HOME, '.agents-system');
16
14
  const USER_DIR = path.join(HOME, '.agents');
15
+ const SHIMS_DIR = path.join(USER_DIR, '.cache', 'shims');
16
+ // System repo lives inside the user repo (folded in v1.21). Legacy installs at
17
+ // ~/.agents-system/ are migrated by src/lib/migrate.ts on first CLI invocation.
18
+ const SYSTEM_DIR = path.join(USER_DIR, '.system');
17
19
  const AGENTS_BIN = fileURLToPath(new URL('../dist/index.js', import.meta.url));
18
20
  const INSTALL_HELPER_SCRIPT = fileURLToPath(new URL('./install-helper.js', import.meta.url));
19
21
 
@@ -43,73 +45,24 @@ To complete setup, run: npx agents setup
43
45
  process.exit(0);
44
46
  }
45
47
 
46
- // Create directories
47
- fs.mkdirSync(SHIMS_DIR, { recursive: true });
48
- fs.mkdirSync(SYSTEM_DIR, { recursive: true });
48
+ // Create directories. The full migration (legacy ~/.agents-system/ fold,
49
+ // runtime-state bucket moves, etc.) runs from src/lib/migrate.ts on the first
50
+ // CLI invocation we don't duplicate it here.
51
+ //
52
+ // SYSTEM_DIR is intentionally NOT pre-created: if a legacy ~/.agents-system/
53
+ // exists, the migrator's fast-path rename needs SYSTEM_DIR to be absent so it
54
+ // can move the legacy tree in one shot (including .git). Pre-creating an empty
55
+ // skeleton forces the slower merge path AND can leave the new dir without
56
+ // `.git`, which makes ensureInitialized() exit "not set up" before the
57
+ // migrator runs. The migrator + first `agents setup` create SYSTEM_DIR as
58
+ // needed.
49
59
  fs.mkdirSync(USER_DIR, { recursive: true, mode: 0o700 });
60
+ fs.mkdirSync(SHIMS_DIR, { recursive: true });
50
61
 
51
62
  // Copy the signed macOS Keychain helper to a stable user path so its trusted-app
52
63
  // ACLs survive future npm publishes (which re-sign the bundle).
53
64
  installKeychainHelper();
54
65
 
55
- // One-shot idempotent migrations
56
- function runMigrations() {
57
- // 1. Move agents.yaml from system to user repo
58
- const src = path.join(SYSTEM_DIR, 'agents.yaml');
59
- const dest = path.join(USER_DIR, 'agents.yaml');
60
- if (fs.existsSync(src) && !fs.existsSync(dest)) {
61
- try { fs.renameSync(src, dest); } catch { /* best-effort */ }
62
- }
63
-
64
- // 2. Delete dead prompts.json
65
- const promptsJson = path.join(SYSTEM_DIR, 'prompts.json');
66
- if (fs.existsSync(promptsJson)) {
67
- try { fs.unlinkSync(promptsJson); } catch { /* best-effort */ }
68
- }
69
-
70
- // 3. Move legacy config.json to ~/.agents/teams/config.json
71
- const configSrc = path.join(SYSTEM_DIR, 'config.json');
72
- const configDest = path.join(USER_DIR, 'teams', 'config.json');
73
- if (fs.existsSync(configSrc) && !fs.existsSync(configDest)) {
74
- try {
75
- fs.mkdirSync(path.dirname(configDest), { recursive: true });
76
- fs.copyFileSync(configSrc, configDest);
77
- fs.unlinkSync(configSrc);
78
- } catch { /* best-effort */ }
79
- }
80
-
81
- // 4. Move installed agent versions from ~/.agents/versions/ -> ~/.agents-system/versions/
82
- // Pre-split layout put binaries under the user repo. Post-split, listInstalledVersions
83
- // only scans the system root, so legacy installs become invisible without this move.
84
- const userVersions = path.join(USER_DIR, 'versions');
85
- const sysVersions = path.join(SYSTEM_DIR, 'versions');
86
- if (fs.existsSync(userVersions)) {
87
- try {
88
- let moved = 0;
89
- let skipped = 0;
90
- for (const agent of fs.readdirSync(userVersions, { withFileTypes: true })) {
91
- if (!agent.isDirectory()) continue;
92
- const srcAgentDir = path.join(userVersions, agent.name);
93
- const dstAgentDir = path.join(sysVersions, agent.name);
94
- try { fs.mkdirSync(dstAgentDir, { recursive: true }); } catch {}
95
- for (const ver of fs.readdirSync(srcAgentDir, { withFileTypes: true })) {
96
- if (!ver.isDirectory()) continue;
97
- const src = path.join(srcAgentDir, ver.name);
98
- const dst = path.join(dstAgentDir, ver.name);
99
- if (fs.existsSync(dst)) { skipped++; continue; }
100
- try { fs.renameSync(src, dst); moved++; } catch {}
101
- }
102
- try { if (fs.readdirSync(srcAgentDir).length === 0) fs.rmdirSync(srcAgentDir); } catch {}
103
- }
104
- try { if (fs.readdirSync(userVersions).length === 0) fs.rmdirSync(userVersions); } catch {}
105
- if (moved > 0) console.log(` Migrated ${moved} agent version dir(s) to ~/.agents-system/versions/`);
106
- if (skipped > 0) console.log(` Kept ${skipped} legacy version dir(s) at ~/.agents/versions/ (already present in system root)`);
107
- } catch { /* best-effort */ }
108
- }
109
- }
110
-
111
- runMigrations();
112
-
113
66
  const shellName = path.basename(process.env.SHELL || '/bin/bash');
114
67
 
115
68
  function getShellRc() {
@@ -1,9 +0,0 @@
1
- /**
2
- * Deprecated status command.
3
- *
4
- * Registers the `agents status` command as a backward-compatible alias
5
- * for `agents view`. Prints a deprecation notice and delegates to viewAction.
6
- */
7
- import type { Command } from 'commander';
8
- /** Register the deprecated `agents status` command (alias for `agents view`). */
9
- export declare function registerStatusCommand(program: Command): void;
@@ -1,25 +0,0 @@
1
- /**
2
- * Deprecated status command.
3
- *
4
- * Registers the `agents status` command as a backward-compatible alias
5
- * for `agents view`. Prints a deprecation notice and delegates to viewAction.
6
- */
7
- import chalk from 'chalk';
8
- import { viewAction } from './view.js';
9
- /** Register the deprecated `agents status` command (alias for `agents view`). */
10
- export function registerStatusCommand(program) {
11
- // Deprecated: use `agents view` instead
12
- program
13
- .command('status [agent]')
14
- .description('Show installed agents and resources')
15
- .action(async (agentFilter) => {
16
- console.log(chalk.red('Deprecated: "agents status" is now "agents view"\n'));
17
- // If agent specified without version, default to @default for backwards compatibility
18
- if (agentFilter && !agentFilter.includes('@')) {
19
- await viewAction(`${agentFilter}@default`);
20
- }
21
- else {
22
- await viewAction(agentFilter);
23
- }
24
- });
25
- }