palmier 0.9.16 → 0.9.17
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 +1 -1
- package/dist/agents/agent.d.ts +43 -14
- package/dist/agents/agent.js +104 -38
- package/dist/agents/aider.d.ts +2 -9
- package/dist/agents/aider.js +8 -20
- package/dist/agents/claude.d.ts +2 -9
- package/dist/agents/claude.js +11 -20
- package/dist/agents/cline.d.ts +2 -9
- package/dist/agents/cline.js +9 -20
- package/dist/agents/codex.d.ts +2 -9
- package/dist/agents/codex.js +11 -20
- package/dist/agents/copilot.d.ts +2 -9
- package/dist/agents/copilot.js +11 -20
- package/dist/agents/cursor.d.ts +2 -9
- package/dist/agents/cursor.js +8 -20
- package/dist/agents/deepagents.d.ts +2 -9
- package/dist/agents/deepagents.js +8 -20
- package/dist/agents/droid.d.ts +2 -9
- package/dist/agents/droid.js +9 -20
- package/dist/agents/gemini.d.ts +2 -9
- package/dist/agents/gemini.js +11 -20
- package/dist/agents/goose.d.ts +2 -9
- package/dist/agents/goose.js +8 -20
- package/dist/agents/hermes.d.ts +2 -9
- package/dist/agents/hermes.js +8 -20
- package/dist/agents/kimi.d.ts +2 -9
- package/dist/agents/kimi.js +8 -20
- package/dist/agents/kiro.d.ts +2 -9
- package/dist/agents/kiro.js +8 -20
- package/dist/agents/openclaw.d.ts +2 -9
- package/dist/agents/openclaw.js +8 -19
- package/dist/agents/opencode.d.ts +2 -9
- package/dist/agents/opencode.js +9 -20
- package/dist/agents/qoder.d.ts +2 -9
- package/dist/agents/qoder.js +9 -20
- package/dist/agents/qwen.d.ts +2 -9
- package/dist/agents/qwen.js +9 -20
- package/dist/commands/init.js +84 -15
- package/dist/commands/run.js +3 -2
- package/dist/commands/serve.js +1 -1
- package/dist/prompts.d.ts +5 -0
- package/dist/prompts.js +67 -0
- package/dist/pwa/assets/index-yaoUw47d.js +120 -0
- package/dist/pwa/assets/{web-BUi47bZi.js → web-6nrvzqi7.js} +1 -1
- package/dist/pwa/assets/{web-B66LN9cT.js → web-Btb09jZq.js} +1 -1
- package/dist/pwa/assets/{web-DQOof3g6.js → web-Dv6FIZ03.js} +1 -1
- package/dist/pwa/index.html +1 -1
- package/dist/rpc-handler.js +27 -4
- package/dist/types.d.ts +5 -2
- package/dist/update-checker.d.ts +2 -0
- package/dist/update-checker.js +20 -0
- package/package.json +1 -1
- package/dist/pwa/assets/index-rt6aPV6d.js +0 -120
package/README.md
CHANGED
|
@@ -134,7 +134,7 @@ Three ways to reach your host, ordered by setup effort:
|
|
|
134
134
|
|------|-------|---------|-------|
|
|
135
135
|
| **Local** | `http://localhost:7256` in a browser on the host machine | Not required | Loopback only. No internet needed. |
|
|
136
136
|
| **Remote (web)** | [https://app.palmier.me](https://app.palmier.me) in any browser | Required | Always goes through the cloud relay. |
|
|
137
|
-
| **Remote (app)** | [Android APK](https://github.com/caihongxu/palmier-android/releases/latest) | Required | Push notifications, device capabilities, and **auto-LAN**. |
|
|
137
|
+
| **Remote (app)** | [Android APK](https://github.com/caihongxu/palmier-android/releases/latest/download/palmier.apk) | Required | Push notifications, device capabilities, and **auto-LAN**. |
|
|
138
138
|
|
|
139
139
|
**Auto-LAN (native app only).** When the Android app is on the same network as the host, it transparently routes RPC over direct LAN HTTP (`http://<host-ip>:7256/rpc/...`) instead of through the relay — lower latency, no protocol change. Browser PWAs can't do this (Private Network Access / mixed-content restrictions) and stay on the relay.
|
|
140
140
|
|
package/dist/agents/agent.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { ParsedTask, RequiredPermission } from "../types.js";
|
|
2
2
|
export interface CommandLine {
|
|
3
|
-
command: string;
|
|
4
3
|
args: string[];
|
|
5
4
|
/** If provided, the string is written to the process's stdin and then the pipe is closed. */
|
|
6
5
|
stdin?: string;
|
|
@@ -13,27 +12,57 @@ export interface CommandLine {
|
|
|
13
12
|
}>;
|
|
14
13
|
}
|
|
15
14
|
export interface AgentTool {
|
|
16
|
-
/**
|
|
17
|
-
|
|
15
|
+
/** The agent's CLI binary name (e.g. "claude", "kiro-cli"). */
|
|
16
|
+
command: string;
|
|
17
|
+
/** Static args for a short, non-interactive prompt. The prompt is appended to the end of this list. */
|
|
18
|
+
promptCommandLineArgs: string[];
|
|
19
|
+
/** Single arg passed to `command` to probe whether the CLI is installed. Usually `"--version"`. */
|
|
20
|
+
versionCommandLineArg: string;
|
|
21
|
+
/** Whether this agent supports permission overrides (e.g. --allowedTools).
|
|
22
|
+
* When falsy, the permissions section is omitted from agent instructions. */
|
|
23
|
+
supportsPermissions?: boolean;
|
|
24
|
+
/** Whether this agent supports yolo mode (auto-approve all tools). */
|
|
25
|
+
supportsYolo?: boolean;
|
|
26
|
+
/** When true, the run loop will not listen to or persist the agent's stderr output. */
|
|
27
|
+
suppressStdErr?: boolean;
|
|
28
|
+
/** npm package that provides this agent's CLI, if installable via `npm install -g`.
|
|
29
|
+
* Used by `palmier init` to offer one-click installation when no agents are detected. */
|
|
30
|
+
npmPackage?: string;
|
|
31
|
+
/** Optional human-readable note about free-usage availability (e.g. "Free Tier").
|
|
32
|
+
* Surfaced next to the agent in the installer. */
|
|
33
|
+
freeUsage?: string;
|
|
18
34
|
/** Return the command and args used to run a task. If followupPrompt is provided, use it instead of the task's prompt,
|
|
19
35
|
* and treat it as a continuation of the original run (reuse the same session, etc).
|
|
20
36
|
* extraPermissions: pass an array of RequiredPermission for transient permissions granted for this run only,
|
|
21
37
|
* or pass `"yolo"` to enable yolo mode (auto-approve all tools, skip permission instructions). */
|
|
22
38
|
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
23
|
-
/** Whether this agent supports permission overrides (e.g. --allowedTools).
|
|
24
|
-
* If false, the permissions section is omitted from agent instructions. */
|
|
25
|
-
supportsPermissions: boolean;
|
|
26
|
-
/** Whether this agent supports yolo mode (auto-approve all tools). */
|
|
27
|
-
supportsYolo: boolean;
|
|
28
|
-
/** Detect whether the agent CLI is available and perform any agent-specific
|
|
29
|
-
* initialization. Returns true if the agent was detected and initialized successfully. */
|
|
30
|
-
init(): Promise<boolean>;
|
|
31
39
|
}
|
|
40
|
+
export declare function getPromptCommandLine(agent: AgentTool, prompt: string): CommandLine;
|
|
41
|
+
export declare function probeAgent(agent: AgentTool): Promise<boolean>;
|
|
42
|
+
/** Look up the installed version of an npm-managed agent via `npm ls -g --json`.
|
|
43
|
+
* Returns the version string, or null if the package isn't reported as installed
|
|
44
|
+
* globally. Does not gate on exit code — `npm ls` exits non-zero on extraneous
|
|
45
|
+
* deps in the global tree but still prints valid JSON to stdout. */
|
|
46
|
+
export declare function getNpmInstalledVersion(npmPackage: string): string | null;
|
|
32
47
|
export interface DetectedAgent {
|
|
33
48
|
key: string;
|
|
34
49
|
label: string;
|
|
35
|
-
supportsPermissions
|
|
36
|
-
supportsYolo
|
|
50
|
+
supportsPermissions?: boolean;
|
|
51
|
+
supportsYolo?: boolean;
|
|
52
|
+
/** npm package name, present iff the agent is installable via npm. */
|
|
53
|
+
npmPackage?: string;
|
|
54
|
+
/** Currently-installed version (resolved via `npm ls -g`) for npm-installed agents. */
|
|
55
|
+
version?: string;
|
|
56
|
+
/** True when this agent was installed by Palmier (the init wizard). Persists across detections. */
|
|
57
|
+
palmierManaged?: boolean;
|
|
58
|
+
}
|
|
59
|
+
export interface InstallableAgent {
|
|
60
|
+
key: string;
|
|
61
|
+
label: string;
|
|
62
|
+
npmPackage: string;
|
|
63
|
+
command: string;
|
|
64
|
+
freeUsage?: string;
|
|
37
65
|
}
|
|
38
|
-
export declare function
|
|
66
|
+
export declare function listInstallableAgents(): InstallableAgent[];
|
|
67
|
+
export declare function detectAgents(previous?: DetectedAgent[]): Promise<DetectedAgent[]>;
|
|
39
68
|
export declare function getAgent(name: string): AgentTool;
|
package/dist/agents/agent.js
CHANGED
|
@@ -1,38 +1,77 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
1
|
+
import { execSync } from "child_process";
|
|
2
|
+
import { SHELL } from "../platform/index.js";
|
|
3
|
+
import { claudeAgent } from "./claude.js";
|
|
4
|
+
import { geminiAgent } from "./gemini.js";
|
|
5
|
+
import { codexAgent } from "./codex.js";
|
|
6
|
+
import { droidAgent } from "./droid.js";
|
|
7
|
+
import { openClawAgent } from "./openclaw.js";
|
|
8
|
+
import { copilotAgent } from "./copilot.js";
|
|
9
|
+
import { qwenAgent } from "./qwen.js";
|
|
10
|
+
import { kimiAgent } from "./kimi.js";
|
|
11
|
+
import { gooseAgent } from "./goose.js";
|
|
12
|
+
import { openCodeAgent } from "./opencode.js";
|
|
13
|
+
import { deepAgentsAgent } from "./deepagents.js";
|
|
14
|
+
import { aiderAgent } from "./aider.js";
|
|
15
|
+
import { cursorAgent } from "./cursor.js";
|
|
16
|
+
import { kiroAgent } from "./kiro.js";
|
|
17
|
+
import { clineAgent } from "./cline.js";
|
|
18
|
+
import { qoderAgent } from "./qoder.js";
|
|
19
|
+
import { hermesAgent } from "./hermes.js";
|
|
20
|
+
export function getPromptCommandLine(agent, prompt) {
|
|
21
|
+
return { args: [...agent.promptCommandLineArgs, prompt] };
|
|
22
|
+
}
|
|
23
|
+
export async function probeAgent(agent) {
|
|
24
|
+
const probe = `${agent.command} ${agent.versionCommandLineArg}`;
|
|
25
|
+
try {
|
|
26
|
+
execSync(probe, { stdio: "ignore", shell: SHELL });
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
/** Look up the installed version of an npm-managed agent via `npm ls -g --json`.
|
|
34
|
+
* Returns the version string, or null if the package isn't reported as installed
|
|
35
|
+
* globally. Does not gate on exit code — `npm ls` exits non-zero on extraneous
|
|
36
|
+
* deps in the global tree but still prints valid JSON to stdout. */
|
|
37
|
+
export function getNpmInstalledVersion(npmPackage) {
|
|
38
|
+
const cmd = `npm ls -g ${npmPackage} --depth=0 --json`;
|
|
39
|
+
let stdout;
|
|
40
|
+
try {
|
|
41
|
+
stdout = execSync(cmd, { stdio: ["ignore", "pipe", "ignore"], shell: SHELL, encoding: "utf-8" });
|
|
42
|
+
}
|
|
43
|
+
catch (err) {
|
|
44
|
+
const e = err;
|
|
45
|
+
if (!e.stdout)
|
|
46
|
+
return null;
|
|
47
|
+
stdout = e.stdout.toString();
|
|
48
|
+
}
|
|
49
|
+
try {
|
|
50
|
+
const parsed = JSON.parse(stdout);
|
|
51
|
+
return parsed.dependencies?.[npmPackage]?.version ?? null;
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
18
57
|
const agentRegistry = {
|
|
19
|
-
claude:
|
|
20
|
-
gemini:
|
|
21
|
-
codex:
|
|
22
|
-
openclaw:
|
|
23
|
-
copilot:
|
|
24
|
-
qwen:
|
|
25
|
-
kimi:
|
|
26
|
-
droid:
|
|
27
|
-
goose:
|
|
28
|
-
opencode:
|
|
29
|
-
deepagents:
|
|
30
|
-
aider:
|
|
31
|
-
cursor:
|
|
32
|
-
kiro:
|
|
33
|
-
cline:
|
|
34
|
-
qoder:
|
|
35
|
-
hermes:
|
|
58
|
+
claude: claudeAgent,
|
|
59
|
+
gemini: geminiAgent,
|
|
60
|
+
codex: codexAgent,
|
|
61
|
+
openclaw: openClawAgent,
|
|
62
|
+
copilot: copilotAgent,
|
|
63
|
+
qwen: qwenAgent,
|
|
64
|
+
kimi: kimiAgent,
|
|
65
|
+
droid: droidAgent,
|
|
66
|
+
goose: gooseAgent,
|
|
67
|
+
opencode: openCodeAgent,
|
|
68
|
+
deepagents: deepAgentsAgent,
|
|
69
|
+
aider: aiderAgent,
|
|
70
|
+
cursor: cursorAgent,
|
|
71
|
+
kiro: kiroAgent,
|
|
72
|
+
cline: clineAgent,
|
|
73
|
+
qoder: qoderAgent,
|
|
74
|
+
hermes: hermesAgent,
|
|
36
75
|
};
|
|
37
76
|
const agentLabels = {
|
|
38
77
|
claude: "Claude Code",
|
|
@@ -53,13 +92,40 @@ const agentLabels = {
|
|
|
53
92
|
qoder: "Qoder CLI",
|
|
54
93
|
hermes: "Hermes Agent",
|
|
55
94
|
};
|
|
56
|
-
export
|
|
95
|
+
export function listInstallableAgents() {
|
|
96
|
+
const out = [];
|
|
97
|
+
for (const [key, agent] of Object.entries(agentRegistry)) {
|
|
98
|
+
if (!agent.npmPackage)
|
|
99
|
+
continue;
|
|
100
|
+
out.push({
|
|
101
|
+
key,
|
|
102
|
+
label: agentLabels[key] ?? key,
|
|
103
|
+
npmPackage: agent.npmPackage,
|
|
104
|
+
command: agent.command,
|
|
105
|
+
...(agent.freeUsage ? { freeUsage: agent.freeUsage } : {}),
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
return out;
|
|
109
|
+
}
|
|
110
|
+
export async function detectAgents(previous) {
|
|
111
|
+
const previousByKey = new Map((previous ?? []).map((a) => [a.key, a]));
|
|
57
112
|
const detected = [];
|
|
58
113
|
for (const [key, agent] of Object.entries(agentRegistry)) {
|
|
59
114
|
const label = agentLabels[key] ?? key;
|
|
60
|
-
const ok = await agent
|
|
61
|
-
if (ok)
|
|
62
|
-
|
|
115
|
+
const ok = await probeAgent(agent);
|
|
116
|
+
if (!ok)
|
|
117
|
+
continue;
|
|
118
|
+
const version = agent.npmPackage ? getNpmInstalledVersion(agent.npmPackage) ?? undefined : undefined;
|
|
119
|
+
const prevManaged = previousByKey.get(key)?.palmierManaged;
|
|
120
|
+
detected.push({
|
|
121
|
+
key,
|
|
122
|
+
label,
|
|
123
|
+
supportsPermissions: agent.supportsPermissions,
|
|
124
|
+
supportsYolo: agent.supportsYolo,
|
|
125
|
+
...(agent.npmPackage ? { npmPackage: agent.npmPackage } : {}),
|
|
126
|
+
...(version ? { version } : {}),
|
|
127
|
+
...(prevManaged ? { palmierManaged: true } : {}),
|
|
128
|
+
});
|
|
63
129
|
}
|
|
64
130
|
return detected;
|
|
65
131
|
}
|
package/dist/agents/aider.d.ts
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare class Aider implements AgentTool {
|
|
4
|
-
supportsPermissions: boolean;
|
|
5
|
-
supportsYolo: boolean;
|
|
6
|
-
getPromptCommandLine(prompt: string): CommandLine;
|
|
7
|
-
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
8
|
-
init(): Promise<boolean>;
|
|
9
|
-
}
|
|
1
|
+
import type { AgentTool } from "./agent.js";
|
|
2
|
+
export declare const aiderAgent: AgentTool;
|
package/dist/agents/aider.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
import { execSync } from "child_process";
|
|
2
1
|
import { getAgentInstructions } from "./shared-prompt.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return { command: "aider", args: ["--message", prompt] };
|
|
9
|
-
}
|
|
2
|
+
export const aiderAgent = {
|
|
3
|
+
command: "aider",
|
|
4
|
+
promptCommandLineArgs: ["--message"],
|
|
5
|
+
versionCommandLineArg: "--version",
|
|
6
|
+
supportsYolo: true,
|
|
10
7
|
getTaskRunCommandLine(task, followupPrompt, extraPermissions) {
|
|
11
8
|
const yolo = extraPermissions === "yolo";
|
|
12
9
|
const prompt = followupPrompt ?? getAgentInstructions(task);
|
|
@@ -15,15 +12,6 @@ export class Aider {
|
|
|
15
12
|
args.push("--yes-always");
|
|
16
13
|
}
|
|
17
14
|
args.push("--message", prompt);
|
|
18
|
-
return {
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
try {
|
|
22
|
-
execSync("aider --version", { stdio: "ignore", shell: SHELL });
|
|
23
|
-
}
|
|
24
|
-
catch {
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
15
|
+
return { args };
|
|
16
|
+
},
|
|
17
|
+
};
|
package/dist/agents/claude.d.ts
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare class ClaudeAgent implements AgentTool {
|
|
4
|
-
supportsPermissions: boolean;
|
|
5
|
-
supportsYolo: boolean;
|
|
6
|
-
getPromptCommandLine(prompt: string): CommandLine;
|
|
7
|
-
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
8
|
-
init(): Promise<boolean>;
|
|
9
|
-
}
|
|
1
|
+
import type { AgentTool } from "./agent.js";
|
|
2
|
+
export declare const claudeAgent: AgentTool;
|
package/dist/agents/claude.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { execSync } from "child_process";
|
|
2
1
|
import { getAgentInstructions } from "./shared-prompt.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
2
|
+
export const claudeAgent = {
|
|
3
|
+
command: "claude",
|
|
4
|
+
promptCommandLineArgs: ["-p"],
|
|
5
|
+
versionCommandLineArg: "--version",
|
|
6
|
+
supportsPermissions: true,
|
|
7
|
+
supportsYolo: true,
|
|
8
|
+
npmPackage: "@anthropic-ai/claude-code",
|
|
9
|
+
freeUsage: "Free with Claude Pro",
|
|
10
10
|
getTaskRunCommandLine(task, followupPrompt, extraPermissions) {
|
|
11
11
|
const yolo = extraPermissions === "yolo";
|
|
12
12
|
const prompt = followupPrompt ?? getAgentInstructions(task);
|
|
@@ -21,15 +21,6 @@ export class ClaudeAgent {
|
|
|
21
21
|
if (followupPrompt) {
|
|
22
22
|
args.push("-c");
|
|
23
23
|
}
|
|
24
|
-
return {
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
try {
|
|
28
|
-
execSync("claude --version", { stdio: "ignore", shell: SHELL });
|
|
29
|
-
}
|
|
30
|
-
catch {
|
|
31
|
-
return false;
|
|
32
|
-
}
|
|
33
|
-
return true;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
24
|
+
return { args, stdin: prompt };
|
|
25
|
+
},
|
|
26
|
+
};
|
package/dist/agents/cline.d.ts
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare class Cline implements AgentTool {
|
|
4
|
-
supportsPermissions: boolean;
|
|
5
|
-
supportsYolo: boolean;
|
|
6
|
-
getPromptCommandLine(prompt: string): CommandLine;
|
|
7
|
-
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
8
|
-
init(): Promise<boolean>;
|
|
9
|
-
}
|
|
1
|
+
import type { AgentTool } from "./agent.js";
|
|
2
|
+
export declare const clineAgent: AgentTool;
|
package/dist/agents/cline.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import { execSync } from "child_process";
|
|
2
1
|
import { getAgentInstructions } from "./shared-prompt.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
2
|
+
export const clineAgent = {
|
|
3
|
+
command: "cline",
|
|
4
|
+
promptCommandLineArgs: ["--yolo", "-p"],
|
|
5
|
+
versionCommandLineArg: "--version",
|
|
6
|
+
supportsYolo: true,
|
|
7
|
+
npmPackage: "cline",
|
|
10
8
|
getTaskRunCommandLine(task, followupPrompt, extraPermissions) {
|
|
11
9
|
const yolo = extraPermissions === "yolo";
|
|
12
10
|
const prompt = followupPrompt ?? getAgentInstructions(task);
|
|
@@ -15,15 +13,6 @@ export class Cline {
|
|
|
15
13
|
args.push("--yolo");
|
|
16
14
|
}
|
|
17
15
|
args.push(prompt);
|
|
18
|
-
return {
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
try {
|
|
22
|
-
execSync("cline --version", { stdio: "ignore", shell: SHELL });
|
|
23
|
-
}
|
|
24
|
-
catch {
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
16
|
+
return { args };
|
|
17
|
+
},
|
|
18
|
+
};
|
package/dist/agents/codex.d.ts
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare class CodexAgent implements AgentTool {
|
|
4
|
-
supportsPermissions: boolean;
|
|
5
|
-
supportsYolo: boolean;
|
|
6
|
-
getPromptCommandLine(prompt: string): CommandLine;
|
|
7
|
-
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
8
|
-
init(): Promise<boolean>;
|
|
9
|
-
}
|
|
1
|
+
import type { AgentTool } from "./agent.js";
|
|
2
|
+
export declare const codexAgent: AgentTool;
|
package/dist/agents/codex.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { execSync } from "child_process";
|
|
2
1
|
import { getAgentInstructions } from "./shared-prompt.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
2
|
+
export const codexAgent = {
|
|
3
|
+
command: "codex",
|
|
4
|
+
promptCommandLineArgs: ["exec", "--skip-git-repo-check"],
|
|
5
|
+
versionCommandLineArg: "--version",
|
|
6
|
+
supportsYolo: true,
|
|
7
|
+
suppressStdErr: true,
|
|
8
|
+
npmPackage: "@openai/codex",
|
|
9
|
+
freeUsage: "Free Tier",
|
|
10
10
|
getTaskRunCommandLine(task, followupPrompt, extraPermissions) {
|
|
11
11
|
const yolo = extraPermissions === "yolo";
|
|
12
12
|
const prompt = followupPrompt ?? getAgentInstructions(task);
|
|
@@ -15,15 +15,6 @@ export class CodexAgent {
|
|
|
15
15
|
args.push("resume", "--last");
|
|
16
16
|
}
|
|
17
17
|
args.push("-");
|
|
18
|
-
return {
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
try {
|
|
22
|
-
execSync("codex --version", { stdio: "ignore", shell: SHELL });
|
|
23
|
-
}
|
|
24
|
-
catch {
|
|
25
|
-
return false;
|
|
26
|
-
}
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
18
|
+
return { args, stdin: prompt, env: { RUST_LOG: "warn" } };
|
|
19
|
+
},
|
|
20
|
+
};
|
package/dist/agents/copilot.d.ts
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare class CopilotAgent implements AgentTool {
|
|
4
|
-
supportsPermissions: boolean;
|
|
5
|
-
supportsYolo: boolean;
|
|
6
|
-
getPromptCommandLine(prompt: string): CommandLine;
|
|
7
|
-
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
8
|
-
init(): Promise<boolean>;
|
|
9
|
-
}
|
|
1
|
+
import type { AgentTool } from "./agent.js";
|
|
2
|
+
export declare const copilotAgent: AgentTool;
|
package/dist/agents/copilot.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { execSync } from "child_process";
|
|
2
1
|
import { getAgentInstructions } from "./shared-prompt.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
2
|
+
export const copilotAgent = {
|
|
3
|
+
command: "copilot",
|
|
4
|
+
promptCommandLineArgs: ["-p"],
|
|
5
|
+
versionCommandLineArg: "-v",
|
|
6
|
+
supportsYolo: true,
|
|
7
|
+
suppressStdErr: true,
|
|
8
|
+
npmPackage: "@github/copilot",
|
|
9
|
+
freeUsage: "Free Tier",
|
|
10
10
|
getTaskRunCommandLine(task, followupPrompt, extraPermissions) {
|
|
11
11
|
const yolo = extraPermissions === "yolo";
|
|
12
12
|
const prompt = followupPrompt ?? getAgentInstructions(task);
|
|
@@ -21,15 +21,6 @@ export class CopilotAgent {
|
|
|
21
21
|
if (followupPrompt) {
|
|
22
22
|
args.push("--continue");
|
|
23
23
|
}
|
|
24
|
-
return {
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
try {
|
|
28
|
-
execSync("copilot -v", { stdio: "ignore", shell: SHELL });
|
|
29
|
-
}
|
|
30
|
-
catch {
|
|
31
|
-
return false;
|
|
32
|
-
}
|
|
33
|
-
return true;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
24
|
+
return { args };
|
|
25
|
+
},
|
|
26
|
+
};
|
package/dist/agents/cursor.d.ts
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare class Cursor implements AgentTool {
|
|
4
|
-
supportsPermissions: boolean;
|
|
5
|
-
supportsYolo: boolean;
|
|
6
|
-
getPromptCommandLine(prompt: string): CommandLine;
|
|
7
|
-
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
8
|
-
init(): Promise<boolean>;
|
|
9
|
-
}
|
|
1
|
+
import type { AgentTool } from "./agent.js";
|
|
2
|
+
export declare const cursorAgent: AgentTool;
|
package/dist/agents/cursor.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
import { execSync } from "child_process";
|
|
2
1
|
import { getAgentInstructions } from "./shared-prompt.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return { command: "cursor", args: ["-p", prompt] };
|
|
9
|
-
}
|
|
2
|
+
export const cursorAgent = {
|
|
3
|
+
command: "cursor",
|
|
4
|
+
promptCommandLineArgs: ["-p"],
|
|
5
|
+
versionCommandLineArg: "--version",
|
|
6
|
+
supportsYolo: true,
|
|
10
7
|
getTaskRunCommandLine(task, followupPrompt, extraPermissions) {
|
|
11
8
|
const yolo = extraPermissions === "yolo";
|
|
12
9
|
const prompt = followupPrompt ?? getAgentInstructions(task);
|
|
@@ -18,15 +15,6 @@ export class Cursor {
|
|
|
18
15
|
args.push("--continue");
|
|
19
16
|
}
|
|
20
17
|
args.push("-p", prompt);
|
|
21
|
-
return {
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
try {
|
|
25
|
-
execSync("cursor --version", { stdio: "ignore", shell: SHELL });
|
|
26
|
-
}
|
|
27
|
-
catch {
|
|
28
|
-
return false;
|
|
29
|
-
}
|
|
30
|
-
return true;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
18
|
+
return { args };
|
|
19
|
+
},
|
|
20
|
+
};
|
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare class DeepAgents implements AgentTool {
|
|
4
|
-
supportsPermissions: boolean;
|
|
5
|
-
supportsYolo: boolean;
|
|
6
|
-
getPromptCommandLine(prompt: string): CommandLine;
|
|
7
|
-
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
8
|
-
init(): Promise<boolean>;
|
|
9
|
-
}
|
|
1
|
+
import type { AgentTool } from "./agent.js";
|
|
2
|
+
export declare const deepAgentsAgent: AgentTool;
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
import { execSync } from "child_process";
|
|
2
1
|
import { getAgentInstructions } from "./shared-prompt.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
return { command: "deepagents", args: ["--non-interactive", prompt] };
|
|
9
|
-
}
|
|
2
|
+
export const deepAgentsAgent = {
|
|
3
|
+
command: "deepagents",
|
|
4
|
+
promptCommandLineArgs: ["--non-interactive"],
|
|
5
|
+
versionCommandLineArg: "--version",
|
|
6
|
+
supportsYolo: true,
|
|
10
7
|
getTaskRunCommandLine(task, followupPrompt, extraPermissions) {
|
|
11
8
|
const yolo = extraPermissions === "yolo";
|
|
12
9
|
const prompt = followupPrompt ?? getAgentInstructions(task);
|
|
@@ -18,15 +15,6 @@ export class DeepAgents {
|
|
|
18
15
|
args.push("--resume");
|
|
19
16
|
}
|
|
20
17
|
args.push("--non-interactive", prompt);
|
|
21
|
-
return {
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
try {
|
|
25
|
-
execSync("deepagents --version", { stdio: "ignore", shell: SHELL });
|
|
26
|
-
}
|
|
27
|
-
catch {
|
|
28
|
-
return false;
|
|
29
|
-
}
|
|
30
|
-
return true;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
18
|
+
return { args };
|
|
19
|
+
},
|
|
20
|
+
};
|
package/dist/agents/droid.d.ts
CHANGED
|
@@ -1,9 +1,2 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
export declare class DroidAgent implements AgentTool {
|
|
4
|
-
supportsPermissions: boolean;
|
|
5
|
-
supportsYolo: boolean;
|
|
6
|
-
getPromptCommandLine(prompt: string): CommandLine;
|
|
7
|
-
getTaskRunCommandLine(task: ParsedTask, followupPrompt?: string, extraPermissions?: RequiredPermission[] | "yolo"): CommandLine;
|
|
8
|
-
init(): Promise<boolean>;
|
|
9
|
-
}
|
|
1
|
+
import type { AgentTool } from "./agent.js";
|
|
2
|
+
export declare const droidAgent: AgentTool;
|