palmier 0.9.24 → 0.9.25

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,9 @@ It is not:
29
29
  curl -fsSL https://palmier.me/install.sh | bash
30
30
  ```
31
31
 
32
- **Windows (PowerShell):**
32
+ **Windows:**
33
33
  ```powershell
34
- irm https://palmier.me/install.ps1 | iex
34
+ powershell -c "irm https://palmier.me/install.ps1 | iex"
35
35
  ```
36
36
 
37
37
  The one-liner installs Node.js 24+ if needed (via [fnm](https://github.com/Schniz/fnm) on Linux/macOS, winget on Windows), installs `palmier` globally, and runs the setup wizard. If you already have Node.js 24+ and npm:
@@ -73,6 +73,7 @@ const agentRegistry = {
73
73
  qoder: qoderAgent,
74
74
  hermes: hermesAgent,
75
75
  };
76
+ const TIER_ONE_ORDER = ["claude", "gemini", "codex", "copilot"];
76
77
  export function listInstallableAgents() {
77
78
  const out = [];
78
79
  for (const [key, agent] of Object.entries(agentRegistry)) {
@@ -86,7 +87,17 @@ export function listInstallableAgents() {
86
87
  ...(agent.freeUsage ? { freeUsage: agent.freeUsage } : {}),
87
88
  });
88
89
  }
89
- return out;
90
+ return out.sort((a, b) => {
91
+ const ai = TIER_ONE_ORDER.indexOf(a.key);
92
+ const bi = TIER_ONE_ORDER.indexOf(b.key);
93
+ if (ai !== -1 && bi !== -1)
94
+ return ai - bi;
95
+ if (ai !== -1)
96
+ return -1;
97
+ if (bi !== -1)
98
+ return 1;
99
+ return 0;
100
+ });
90
101
  }
91
102
  /** Detect agents present on PATH and resolve their version when they are
92
103
  * Palmier-managed. An agent is treated as managed if either:
@@ -27,9 +27,7 @@ export function printInstalledAgents(agents) {
27
27
  * cancelled, no installables remain, or the install failed. */
28
28
  export async function pickAndInstallAgent(current, options = {}) {
29
29
  const detectedKeys = new Set(current.map((a) => a.key));
30
- const missing = listInstallableAgents()
31
- .filter((a) => !detectedKeys.has(a.key))
32
- .sort((a, b) => a.label.localeCompare(b.label));
30
+ const missing = listInstallableAgents().filter((a) => !detectedKeys.has(a.key));
33
31
  if (missing.length === 0) {
34
32
  console.log(`\n${dim("All supported agents are already installed.")}`);
35
33
  return null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "palmier",
3
- "version": "0.9.24",
3
+ "version": "0.9.25",
4
4
  "description": "Palmier host CLI - provisions, executes tasks, and serves NATS RPC",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Hongxu Cai",