@bexelbie/phone-a-friend 0.2.2 → 0.3.0
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 +2 -6
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/util.d.ts +0 -1
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +0 -19
- package/dist/util.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -105,13 +105,9 @@ The tool description tells the calling agent what it needs to know, but in short
|
|
|
105
105
|
|
|
106
106
|
### Available models
|
|
107
107
|
|
|
108
|
-
The
|
|
108
|
+
The models available to you depend on your GitHub Copilot subscription. To see your personal model list, start an interactive Copilot CLI session and type `/model`. When using Phone a Friend, tell your agent which model to use — or provide a list of models in your prompt so it can choose appropriately.
|
|
109
109
|
|
|
110
|
-
|
|
111
|
-
- `gemini-3-pro-preview`
|
|
112
|
-
- `gpt-5.3-codex`, `gpt-5.2-codex`, `gpt-5.2`, `gpt-5.1-codex-max`, `gpt-5.1-codex`, `gpt-5.1`, `gpt-5.1-codex-mini`, `gpt-5-mini`, `gpt-4.1`
|
|
113
|
-
|
|
114
|
-
You can direct the model to pass any model name directly — GitHub Copilot CLI validates it at runtime.
|
|
110
|
+
You can pass any model name — GitHub Copilot CLI validates it at runtime.
|
|
115
111
|
|
|
116
112
|
## Tool Parameters
|
|
117
113
|
|
package/dist/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import { createRequire } from "node:module";
|
|
|
6
6
|
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
7
7
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
8
8
|
import { z } from "zod";
|
|
9
|
-
import { RESPONSE_FILENAME,
|
|
9
|
+
import { RESPONSE_FILENAME, TOOL_MODES, wrapPrompt, generateWorktreePath, promptSizeWarning, } from "./util.js";
|
|
10
10
|
import { isGitRepo, getGitRoot, createWorktree, removeWorktree, runCopilotCli, getHeadSha, captureChanges, readAndRemoveResponse, } from "./git.js";
|
|
11
11
|
const require = createRequire(import.meta.url);
|
|
12
12
|
const { version } = require("../package.json");
|
|
@@ -46,7 +46,9 @@ server.registerTool("phone_a_friend", {
|
|
|
46
46
|
"that are relevant, include those file contents in this prompt."),
|
|
47
47
|
model: z
|
|
48
48
|
.string()
|
|
49
|
-
.describe(
|
|
49
|
+
.describe("The AI model to use (e.g. claude-sonnet-4.5, gpt-5-mini). " +
|
|
50
|
+
"Pass any model supported by GitHub Copilot CLI — available " +
|
|
51
|
+
"models vary by subscription."),
|
|
50
52
|
working_directory: z
|
|
51
53
|
.string()
|
|
52
54
|
.describe("The git repository directory to work in. Must be inside a git " +
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,uEAAuE;AACvE,yEAAyE;AAEzE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/util.d.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
export declare const TOOL_MODES: readonly ["default", "query"];
|
|
2
2
|
export type ToolMode = (typeof TOOL_MODES)[number];
|
|
3
3
|
export declare const RESPONSE_FILENAME = ".paf-response.md";
|
|
4
|
-
export declare const AVAILABLE_MODELS: readonly ["claude-sonnet-4.6", "claude-sonnet-4.5", "claude-haiku-4.5", "claude-opus-4.6", "claude-opus-4.6-fast", "claude-opus-4.5", "claude-sonnet-4", "gemini-3-pro-preview", "gpt-5.3-codex", "gpt-5.2-codex", "gpt-5.2", "gpt-5.1-codex-max", "gpt-5.1-codex", "gpt-5.1", "gpt-5.1-codex-mini", "gpt-5-mini", "gpt-4.1"];
|
|
5
4
|
/**
|
|
6
5
|
* Wraps the user's prompt with instructions for the subagent about
|
|
7
6
|
* the message-in-a-bottle response file and operating constraints.
|
package/dist/util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,+BAAgC,CAAC;AACxD,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,+BAAgC,CAAC;AACxD,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,eAAO,MAAM,iBAAiB,qBAAqB,CAAC;AAGpD;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,GAAE,QAAoB,GAAG,MAAM,CAgCjF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAI5D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED,eAAO,MAAM,6BAA6B,QAAY,CAAC;AAIvD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY/D"}
|
package/dist/util.js
CHANGED
|
@@ -3,25 +3,6 @@
|
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
export const TOOL_MODES = ["default", "query"];
|
|
5
5
|
export const RESPONSE_FILENAME = ".paf-response.md";
|
|
6
|
-
export const AVAILABLE_MODELS = [
|
|
7
|
-
"claude-sonnet-4.6",
|
|
8
|
-
"claude-sonnet-4.5",
|
|
9
|
-
"claude-haiku-4.5",
|
|
10
|
-
"claude-opus-4.6",
|
|
11
|
-
"claude-opus-4.6-fast",
|
|
12
|
-
"claude-opus-4.5",
|
|
13
|
-
"claude-sonnet-4",
|
|
14
|
-
"gemini-3-pro-preview",
|
|
15
|
-
"gpt-5.3-codex",
|
|
16
|
-
"gpt-5.2-codex",
|
|
17
|
-
"gpt-5.2",
|
|
18
|
-
"gpt-5.1-codex-max",
|
|
19
|
-
"gpt-5.1-codex",
|
|
20
|
-
"gpt-5.1",
|
|
21
|
-
"gpt-5.1-codex-mini",
|
|
22
|
-
"gpt-5-mini",
|
|
23
|
-
"gpt-4.1",
|
|
24
|
-
];
|
|
25
6
|
/**
|
|
26
7
|
* Wraps the user's prompt with instructions for the subagent about
|
|
27
8
|
* the message-in-a-bottle response file and operating constraints.
|
package/dist/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,mFAAmF;AAEnF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,OAAO,CAAU,CAAC;AAGxD,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,mFAAmF;AAEnF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,OAAO,CAAU,CAAC;AAGxD,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAGpD;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,UAAkB,EAAE,OAAiB,SAAS;IACvE,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO;;;;;iFAKsE,iBAAiB;;;;2BAIvE,iBAAiB;;;;EAI1C,UAAU,EAAE,CAAC;IACb,CAAC;IAED,OAAO;;;;;iFAKwE,iBAAiB;;;;2BAIvE,iBAAiB;;;;EAI1C,UAAU,EAAE,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,SAAS,IAAI,MAAM,EAAE,CAAC,CAAC;AACnE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,CAAS;IACnC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,QAAQ;AAEhE,MAAM,eAAe,GAAG,mDAAmD,CAAC;AAE5E;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,IAAI,MAAM,CAAC,MAAM,GAAG,6BAA6B,EAAE,CAAC;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAChD,OAAO,CACL,kEAAkE,MAAM,MAAM;QAC9E,+EAA+E;QAC/E,6EAA6E;QAC7E,gFAAgF;QAChF,YAAY,eAAe,EAAE,CAC9B,CAAC;AACJ,CAAC"}
|