@oh-my-pi/pi-coding-agent 4.4.8 → 4.5.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/CHANGELOG.md +4 -0
- package/package.json +5 -5
- package/src/core/tools/ask.ts +1 -5
- package/src/core/tools/calculator.ts +1 -1
- package/src/core/tools/complete.ts +1 -2
- package/src/core/tools/output.ts +0 -1
- package/src/core/tools/schema-validation.test.ts +0 -1
- package/src/core/tools/task/types.ts +2 -3
- package/src/core/tools/todo-write.ts +2 -2
package/CHANGELOG.md
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oh-my-pi/pi-coding-agent",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.5.0",
|
|
4
4
|
"description": "Coding agent CLI with read, bash, edit, write tools and session management",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"ompConfig": {
|
|
@@ -39,10 +39,10 @@
|
|
|
39
39
|
"prepublishOnly": "bun run generate-template && bun run clean && bun run build"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@oh-my-pi/pi-ai": "4.
|
|
43
|
-
"@oh-my-pi/pi-agent-core": "4.
|
|
44
|
-
"@oh-my-pi/pi-git-tool": "4.
|
|
45
|
-
"@oh-my-pi/pi-tui": "4.
|
|
42
|
+
"@oh-my-pi/pi-ai": "4.5.0",
|
|
43
|
+
"@oh-my-pi/pi-agent-core": "4.5.0",
|
|
44
|
+
"@oh-my-pi/pi-git-tool": "4.5.0",
|
|
45
|
+
"@oh-my-pi/pi-tui": "4.5.0",
|
|
46
46
|
"@openai/agents": "^0.3.7",
|
|
47
47
|
"@sinclair/typebox": "^0.34.46",
|
|
48
48
|
"ajv": "^8.17.1",
|
package/src/core/tools/ask.ts
CHANGED
|
@@ -36,14 +36,10 @@ const OptionItem = Type.Object({
|
|
|
36
36
|
|
|
37
37
|
const askSchema = Type.Object({
|
|
38
38
|
question: Type.String({ description: "The question to ask the user" }),
|
|
39
|
-
options: Type.Array(OptionItem, {
|
|
40
|
-
description: "Available options for the user to choose from.",
|
|
41
|
-
minItems: 1,
|
|
42
|
-
}),
|
|
39
|
+
options: Type.Array(OptionItem, { description: "Available options for the user to choose from." }),
|
|
43
40
|
multi: Type.Optional(
|
|
44
41
|
Type.Boolean({
|
|
45
42
|
description: "Allow multiple options to be selected (default: false)",
|
|
46
|
-
default: false,
|
|
47
43
|
}),
|
|
48
44
|
),
|
|
49
45
|
});
|
|
@@ -44,7 +44,7 @@ const calculatorSchema = Type.Object({
|
|
|
44
44
|
prefix: Type.String({ description: "Text to prepend to the result" }),
|
|
45
45
|
suffix: Type.String({ description: "Text to append to the result" }),
|
|
46
46
|
}),
|
|
47
|
-
{ description: "List of calculations to evaluate"
|
|
47
|
+
{ description: "List of calculations to evaluate" },
|
|
48
48
|
),
|
|
49
49
|
});
|
|
50
50
|
|
|
@@ -83,8 +83,7 @@ export function createCompleteTool(session: ToolSession) {
|
|
|
83
83
|
data: Type.Optional(dataSchema),
|
|
84
84
|
status: Type.Optional(
|
|
85
85
|
StringEnum(["success", "aborted"], {
|
|
86
|
-
|
|
87
|
-
description: "Use 'aborted' if the task cannot be completed",
|
|
86
|
+
description: "Use 'aborted' if the task cannot be completed, defaults to 'success'",
|
|
88
87
|
}),
|
|
89
88
|
),
|
|
90
89
|
error: Type.Optional(Type.String({ description: "Error message when status is 'aborted'" })),
|
package/src/core/tools/output.ts
CHANGED
|
@@ -30,7 +30,6 @@ import { getArtifactsDir } from "./task/artifacts";
|
|
|
30
30
|
const outputSchema = Type.Object({
|
|
31
31
|
ids: Type.Array(Type.String(), {
|
|
32
32
|
description: "Agent output IDs to read (e.g., ['reviewer_0', 'explore_1'])",
|
|
33
|
-
minItems: 1,
|
|
34
33
|
}),
|
|
35
34
|
format: Type.Optional(
|
|
36
35
|
StringEnum(["raw", "json", "stripped"], {
|
|
@@ -45,7 +45,6 @@ export const taskItemSchema = Type.Object({
|
|
|
45
45
|
id: Type.String({
|
|
46
46
|
description: "Short task identifier for display (max 32 chars, CamelCase, e.g. 'SessionStore', 'WebFetchFix')",
|
|
47
47
|
maxLength: 32,
|
|
48
|
-
pattern: "^[A-Za-z][A-Za-z0-9]*$",
|
|
49
48
|
}),
|
|
50
49
|
task: Type.String({ description: "Task description for the agent" }),
|
|
51
50
|
description: Type.String({ description: "Short description for UI display" }),
|
|
@@ -63,8 +62,8 @@ export const taskSchema = Type.Object({
|
|
|
63
62
|
}),
|
|
64
63
|
),
|
|
65
64
|
output: Type.Optional(
|
|
66
|
-
Type.
|
|
67
|
-
description: "JTD schema for structured subagent output
|
|
65
|
+
Type.Record(Type.String(), Type.Unknown(), {
|
|
66
|
+
description: "JTD schema for structured subagent output",
|
|
68
67
|
}),
|
|
69
68
|
),
|
|
70
69
|
tasks: Type.Array(taskItemSchema, {
|
|
@@ -19,8 +19,8 @@ const todoWriteSchema = Type.Object({
|
|
|
19
19
|
todos: Type.Array(
|
|
20
20
|
Type.Object({
|
|
21
21
|
id: Type.Optional(Type.String({ description: "Stable todo id" })),
|
|
22
|
-
content: Type.String({
|
|
23
|
-
activeForm: Type.String({
|
|
22
|
+
content: Type.String({ description: "Imperative task description (e.g., 'Run tests')" }),
|
|
23
|
+
activeForm: Type.String({ description: "Present continuous form (e.g., 'Running tests')" }),
|
|
24
24
|
status: StringEnum(["pending", "in_progress", "completed"]),
|
|
25
25
|
}),
|
|
26
26
|
{ description: "The updated todo list" },
|