@cydm/pie 1.0.5 → 1.0.7

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 (59) hide show
  1. package/README.md +162 -9
  2. package/dist/builtin/extensions/ask-user/index.js +10 -2911
  3. package/dist/builtin/extensions/changelog/index.js +3 -8
  4. package/dist/builtin/extensions/deploy/index.js +1 -1
  5. package/dist/builtin/extensions/document-attachments/index.js +1 -0
  6. package/dist/builtin/extensions/files/index.js +1 -1
  7. package/dist/builtin/extensions/init/index.js +1 -3
  8. package/dist/builtin/extensions/kimi-attachments/index.js +4 -3
  9. package/dist/builtin/extensions/plan-mode/index.js +96 -165
  10. package/dist/builtin/extensions/subagent/index.js +88 -10991
  11. package/dist/builtin/extensions/todo/index.js +55 -2734
  12. package/dist/builtin/skills/browser-tools/CHANGELOG.md +2 -44
  13. package/dist/builtin/skills/browser-tools/README.md +10 -99
  14. package/dist/builtin/skills/browser-tools/SKILL.md +21 -174
  15. package/dist/builtin/skills/browser-tools/package.json +6 -13
  16. package/dist/builtin/skills/browser-tools/playwright-cli.js +24 -0
  17. package/dist/builtin/skills/pie-unity-rpc/SKILL.md +121 -0
  18. package/dist/builtin/skills/pie-unity-rpc/pie-unity-rpc.js +417 -0
  19. package/dist/builtin/skills/skill-creator/SKILL.md +17 -17
  20. package/dist/builtin/skills/skill-creator/eval-viewer/generate_review.mjs +285 -0
  21. package/dist/builtin/skills/skill-creator/eval-viewer/viewer.html +1 -1
  22. package/dist/builtin/skills/skill-creator/scripts/aggregate_benchmark.mjs +271 -0
  23. package/dist/builtin/skills/skill-creator/scripts/claude_cli.mjs +115 -0
  24. package/dist/builtin/skills/skill-creator/scripts/generate_report.mjs +224 -0
  25. package/dist/builtin/skills/skill-creator/scripts/improve_description.mjs +198 -0
  26. package/dist/builtin/skills/skill-creator/scripts/package_skill.mjs +132 -0
  27. package/dist/builtin/skills/skill-creator/scripts/pie_runner.mjs +115 -0
  28. package/dist/builtin/skills/skill-creator/scripts/quick_validate.mjs +44 -0
  29. package/dist/builtin/skills/skill-creator/scripts/run_eval.mjs +169 -0
  30. package/dist/builtin/skills/skill-creator/scripts/run_loop.mjs +297 -0
  31. package/dist/builtin/skills/skill-creator/scripts/skill_metadata.mjs +134 -0
  32. package/dist/chunks/chunk-A5JSJAPK.js +9994 -0
  33. package/dist/chunks/chunk-BHNULR7U.js +7991 -0
  34. package/dist/chunks/chunk-GDTN4UPJ.js +701 -0
  35. package/dist/chunks/chunk-TG2EQLX2.js +43 -0
  36. package/dist/chunks/src-3X3HBT2G.js +12 -0
  37. package/dist/chunks/typescript-GSKWJIO4.js +210747 -0
  38. package/dist/cli.js +21519 -33379
  39. package/models.schema.json +238 -0
  40. package/package.json +36 -11
  41. package/dist/builtin/extensions/questionnaire/index.js +0 -2753
  42. package/dist/builtin/skills/browser-tools/browser-content.js +0 -103
  43. package/dist/builtin/skills/browser-tools/browser-cookies.js +0 -35
  44. package/dist/builtin/skills/browser-tools/browser-eval.js +0 -49
  45. package/dist/builtin/skills/browser-tools/browser-hn-scraper.js +0 -108
  46. package/dist/builtin/skills/browser-tools/browser-nav.js +0 -44
  47. package/dist/builtin/skills/browser-tools/browser-pick.js +0 -162
  48. package/dist/builtin/skills/browser-tools/browser-screenshot.js +0 -34
  49. package/dist/builtin/skills/browser-tools/browser-start.js +0 -86
  50. package/dist/builtin/skills/skill-creator/eval-viewer/generate_review.py +0 -471
  51. package/dist/builtin/skills/skill-creator/scripts/__init__.py +0 -0
  52. package/dist/builtin/skills/skill-creator/scripts/aggregate_benchmark.py +0 -401
  53. package/dist/builtin/skills/skill-creator/scripts/generate_report.py +0 -326
  54. package/dist/builtin/skills/skill-creator/scripts/improve_description.py +0 -247
  55. package/dist/builtin/skills/skill-creator/scripts/package_skill.py +0 -136
  56. package/dist/builtin/skills/skill-creator/scripts/quick_validate.py +0 -103
  57. package/dist/builtin/skills/skill-creator/scripts/run_eval.py +0 -310
  58. package/dist/builtin/skills/skill-creator/scripts/run_loop.py +0 -328
  59. package/dist/builtin/skills/skill-creator/scripts/utils.py +0 -47
@@ -0,0 +1,238 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cydream.tech/schemas/pie/models.schema.json",
4
+ "title": "Pie models.json",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "properties": {
8
+ "profiles": {
9
+ "type": "object",
10
+ "description": "User-defined endpoint profiles. Runtime only loads models from this map.",
11
+ "minProperties": 1,
12
+ "additionalProperties": {
13
+ "$ref": "#/$defs/profile"
14
+ }
15
+ },
16
+ "defaults": {
17
+ "type": "object",
18
+ "additionalProperties": false,
19
+ "properties": {
20
+ "provider": {
21
+ "type": "string",
22
+ "minLength": 1,
23
+ "description": "Default profile key."
24
+ },
25
+ "modelId": {
26
+ "type": "string",
27
+ "minLength": 1,
28
+ "description": "Default model id within the selected profile."
29
+ },
30
+ "modelClasses": {
31
+ "type": "object",
32
+ "additionalProperties": false,
33
+ "properties": {
34
+ "light": { "$ref": "#/$defs/modelClass" },
35
+ "balanced": { "$ref": "#/$defs/modelClass" },
36
+ "strong": { "$ref": "#/$defs/modelClass" }
37
+ }
38
+ },
39
+ "toolModels": {
40
+ "type": "object",
41
+ "additionalProperties": false,
42
+ "properties": {
43
+ "web_search": { "$ref": "#/$defs/modelClass" },
44
+ "read_file.image": { "$ref": "#/$defs/modelClass" },
45
+ "read_file.video": { "$ref": "#/$defs/modelClass" },
46
+ "read_file.audio": { "$ref": "#/$defs/modelClass" },
47
+ "read_file.document": { "$ref": "#/$defs/modelClass" }
48
+ }
49
+ }
50
+ }
51
+ }
52
+ },
53
+ "required": ["profiles"],
54
+ "$defs": {
55
+ "cost": {
56
+ "type": "object",
57
+ "additionalProperties": false,
58
+ "properties": {
59
+ "input": { "type": "number" },
60
+ "output": { "type": "number" },
61
+ "cacheRead": { "type": "number" },
62
+ "cacheWrite": { "type": "number" }
63
+ },
64
+ "required": ["input", "output", "cacheRead", "cacheWrite"]
65
+ },
66
+ "cacheCapability": {
67
+ "type": "object",
68
+ "additionalProperties": false,
69
+ "properties": {
70
+ "mode": {
71
+ "type": "string",
72
+ "enum": ["none", "session_store", "prompt_cache", "usage_only"]
73
+ },
74
+ "supported": { "type": "boolean" },
75
+ "supportsUsageMetrics": { "type": "boolean" },
76
+ "description": { "type": "string" }
77
+ },
78
+ "required": ["mode", "supported"]
79
+ },
80
+ "modelClass": {
81
+ "type": "object",
82
+ "additionalProperties": false,
83
+ "properties": {
84
+ "provider": { "type": "string", "minLength": 1 },
85
+ "modelId": { "type": "string", "minLength": 1 }
86
+ },
87
+ "required": ["provider", "modelId"]
88
+ },
89
+ "webSearch": {
90
+ "type": "object",
91
+ "additionalProperties": false,
92
+ "properties": {
93
+ "type": {
94
+ "type": "string",
95
+ "enum": ["anthropic_server_tool", "chat_completions_web_search", "openai_responses"]
96
+ },
97
+ "forceToolChoice": { "type": "boolean" },
98
+ "searchEngine": { "type": "string", "minLength": 1 },
99
+ "count": { "type": "integer", "minimum": 1 },
100
+ "contentSize": {
101
+ "type": "string",
102
+ "enum": ["low", "medium", "high"]
103
+ }
104
+ },
105
+ "required": ["type"]
106
+ },
107
+ "fileCapabilityValue": {
108
+ "oneOf": [
109
+ { "type": "boolean" },
110
+ {
111
+ "type": "object",
112
+ "additionalProperties": false,
113
+ "properties": {
114
+ "supported": { "type": "boolean" },
115
+ "formats": {
116
+ "type": "array",
117
+ "items": { "type": "string", "minLength": 1 },
118
+ "uniqueItems": true
119
+ },
120
+ "maxFileSizeMb": { "type": "number", "exclusiveMinimum": 0 },
121
+ "maxDurationSeconds": { "type": "number", "exclusiveMinimum": 0 }
122
+ }
123
+ }
124
+ ]
125
+ },
126
+ "fileCapabilities": {
127
+ "type": "object",
128
+ "additionalProperties": false,
129
+ "properties": {
130
+ "image": { "$ref": "#/$defs/fileCapabilityValue" },
131
+ "video": { "$ref": "#/$defs/fileCapabilityValue" },
132
+ "audio": { "$ref": "#/$defs/fileCapabilityValue" },
133
+ "document": { "$ref": "#/$defs/fileCapabilityValue" }
134
+ }
135
+ },
136
+ "compat": {
137
+ "type": "object",
138
+ "additionalProperties": false,
139
+ "properties": {
140
+ "supportsStore": { "type": "boolean" },
141
+ "supportsDeveloperRole": { "type": "boolean" },
142
+ "supportsReasoningEffort": { "type": "boolean" },
143
+ "supportsUsageInStreaming": { "type": "boolean" },
144
+ "maxTokensField": {
145
+ "type": "string",
146
+ "enum": ["max_completion_tokens", "max_tokens"]
147
+ },
148
+ "requiresToolResultName": { "type": "boolean" },
149
+ "requiresAssistantAfterToolResult": { "type": "boolean" },
150
+ "requiresThinkingAsText": { "type": "boolean" },
151
+ "supportsStrictMode": { "type": "boolean" },
152
+ "cacheCapability": { "$ref": "#/$defs/cacheCapability" }
153
+ }
154
+ },
155
+ "headers": {
156
+ "type": "object",
157
+ "propertyNames": {
158
+ "type": "string",
159
+ "minLength": 1
160
+ },
161
+ "additionalProperties": {
162
+ "type": "string"
163
+ }
164
+ },
165
+ "model": {
166
+ "type": "object",
167
+ "additionalProperties": false,
168
+ "properties": {
169
+ "id": { "type": "string", "minLength": 1 },
170
+ "name": { "type": "string", "minLength": 1 },
171
+ "reasoning": { "type": "boolean" },
172
+ "input": {
173
+ "type": "array",
174
+ "minItems": 1,
175
+ "uniqueItems": true,
176
+ "items": {
177
+ "type": "string",
178
+ "enum": ["text", "image", "audio", "video"]
179
+ }
180
+ },
181
+ "cost": { "$ref": "#/$defs/cost" },
182
+ "contextWindow": { "type": "integer", "minimum": 1 },
183
+ "maxTokens": { "type": "integer", "minimum": 1 },
184
+ "compat": { "$ref": "#/$defs/compat" },
185
+ "cacheCapability": { "$ref": "#/$defs/cacheCapability" },
186
+ "webSearch": { "$ref": "#/$defs/webSearch" },
187
+ "fileCapabilities": { "$ref": "#/$defs/fileCapabilities" },
188
+ "headers": { "$ref": "#/$defs/headers" },
189
+ "apiKeyEnv": { "type": "string", "minLength": 1 },
190
+ "displayName": { "type": "string", "minLength": 1 },
191
+ "filePlatform": { "type": "string", "minLength": 1 },
192
+ "attachmentPlatform": { "type": "string", "minLength": 1 }
193
+ },
194
+ "required": ["id", "input", "cost", "contextWindow", "maxTokens"]
195
+ },
196
+ "profile": {
197
+ "type": "object",
198
+ "additionalProperties": false,
199
+ "properties": {
200
+ "baseUrl": { "type": "string", "minLength": 1 },
201
+ "api": {
202
+ "type": "string",
203
+ "enum": ["openai-completions", "anthropic-messages"]
204
+ },
205
+ "apiKey": { "type": "string", "minLength": 1 },
206
+ "apiKeyEnv": { "type": "string", "minLength": 1 },
207
+ "headers": { "$ref": "#/$defs/headers" },
208
+ "displayName": { "type": "string", "minLength": 1 },
209
+ "filePlatform": { "type": "string", "minLength": 1 },
210
+ "attachmentPlatform": { "type": "string", "minLength": 1 },
211
+ "compat": { "$ref": "#/$defs/compat" },
212
+ "cacheCapability": { "$ref": "#/$defs/cacheCapability" },
213
+ "webSearch": { "$ref": "#/$defs/webSearch" },
214
+ "fileCapabilities": { "$ref": "#/$defs/fileCapabilities" },
215
+ "models": {
216
+ "type": "array",
217
+ "minItems": 1,
218
+ "items": { "$ref": "#/$defs/model" }
219
+ }
220
+ },
221
+ "required": ["api", "baseUrl", "models"],
222
+ "anyOf": [
223
+ { "required": ["apiKey"] },
224
+ { "required": ["apiKeyEnv"] },
225
+ {
226
+ "properties": {
227
+ "models": {
228
+ "contains": {
229
+ "type": "object",
230
+ "required": ["apiKeyEnv"]
231
+ }
232
+ }
233
+ }
234
+ }
235
+ ]
236
+ }
237
+ }
238
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cydm/pie",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "Pie AI Agent CLI",
5
5
  "type": "module",
6
6
  "bin": {
@@ -9,17 +9,41 @@
9
9
  "scripts": {
10
10
  "clean": "rm -rf dist",
11
11
  "build": "node scripts/build-release.mjs",
12
+ "check:types:strict": "tsc -p tsconfig.strict.json",
12
13
  "dev": "tsc -p tsconfig.json --watch --preserveWatchOutput",
13
14
  "start": "node dist/cli.js",
15
+ "init:models": "tsx scripts/init-models-config.ts",
16
+ "validate:models": "tsx scripts/validate-models-config.ts",
14
17
  "test": "npm run test:offline",
15
- "test:offline": "node --test --import tsx test/core-services.test.ts test/cli.test.ts test/attachment-resolver.test.ts test/kimi-attachment-extension.test.ts test/document-attachment-extension.test.ts test/auto-compact-overflow.test.ts test/hierarchical-command-system.test.ts test/message-queue-unit.test.ts test/mention-file-select.terminal.test.ts test/tool-partial-display.terminal.test.ts test/viewport-position-final.test.ts",
18
+ "pretest:offline": "npm run build --workspace @pie/agent-framework && npm run build --workspace @pie/shared-headless-capabilities && npm run build",
19
+ "test:offline": "node --test --import tsx test/core-services.test.ts test/cli.test.ts test/execution-state-manager.test.ts test/queued-steer-execution-state.test.ts test/architecture-boundaries.test.ts test/attachment-resolver.test.ts test/kimi-attachment-extension.test.ts test/document-attachment-extension.test.ts test/auto-compact-overflow.test.ts test/hierarchical-command-system.test.ts test/message-queue-unit.test.ts test/evals-harness.test.ts test/session-trace.test.ts test/runtime-mode-context.test.ts test/tool-policy.test.ts test/yolo-command.test.ts test/source-size-guard.test.ts test/runtime-logger.test.ts test/release-readiness.test.ts test/code-intel-typescript-provider.test.ts test/mention-file-select.terminal.test.ts test/tool-partial-display.terminal.test.ts test/tool-name-rendering.test.ts test/tools-registry.test.ts test/system-prompt-contract.test.ts test/daily-agent-smoke.terminal.test.ts test/viewport-position-final.test.ts",
20
+ "test:todo-tui": "PIE_REAL_TODO_TUI=1 node --test --import tsx test/todo-closure.terminal.test.ts",
21
+ "test:daily-tui": "npm run test:daily-tui:quick",
22
+ "test:daily-tui:quick": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_TUI_LEVEL=quick node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
23
+ "test:daily-tui:full": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_TUI_LEVEL=full node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
24
+ "test:daily-tui:quick:repeat": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_REPEAT_MODE=quick node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
25
+ "test:daily-tui:full:repeat": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_REPEAT_MODE=full node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
26
+ "test:daily-gate:quick": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_REPEAT_MODE=quick PIE_DAILY_REPEAT=1 node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
27
+ "test:daily-gate:full": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_REPEAT_MODE=full PIE_DAILY_REPEAT=1 node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
28
+ "test:daily-gate:mock": "PIE_DAILY_MOCK_GATE=1 node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
29
+ "test:daily-gate:quick:repeat:stable": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_REPEAT_MODE=quick PIE_DAILY_REPEAT=3 node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
30
+ "test:daily-gate:quick:repeat": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_REPEAT_MODE=quick node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
31
+ "test:daily-gate:full:repeat": "PIE_REAL_DAILY_TUI=1 PIE_DAILY_REPEAT_MODE=full node --test --import tsx test/daily-agent-smoke.terminal.test.ts",
16
32
  "test:kimi-smoke": "node scripts/kimi-attachment-smoke.mjs",
17
33
  "test:integration": "node --test --import tsx test/cli.test.ts test/compact-e2e.test.ts test/file-upload-test.terminal.test.ts test/human-simulation.test.ts test/interactive-integration.test.ts test/pie-cli.terminal.test.ts test/txt-upload-test.terminal.test.ts",
18
34
  "test:fixes": "tsx test-fixes.ts",
35
+ "eval": "tsx evals/runner.ts",
36
+ "eval:task": "tsx evals/runner.ts --layer=task",
37
+ "eval:dev": "tsx evals/runner.ts --layer=task --dataset=dev",
38
+ "eval:core": "tsx evals/runner.ts --layer=task --dataset=core",
39
+ "eval:dev:compare": "tsx evals/runner.ts --layer=task --dataset=dev",
40
+ "eval:core:compare": "tsx evals/runner.ts --layer=task --dataset=core",
41
+ "eval:cognitive": "tsx evals/run.ts",
19
42
  "pack:check": "npm pack --dry-run"
20
43
  },
21
44
  "files": [
22
45
  "dist/**/*",
46
+ "models.schema.json",
23
47
  "README.md"
24
48
  ],
25
49
  "publishConfig": {
@@ -38,25 +62,26 @@
38
62
  },
39
63
  "dependencies": {
40
64
  "@anthropic-ai/sdk": "^0.39.0",
41
- "@sinclair/typebox": "^0.34.0",
65
+ "@playwright/cli": "^0.1.7",
66
+ "@sinclair/typebox": "^0.34.49",
42
67
  "cli-highlight": "^2.1.11",
43
68
  "diff": "8.0.3",
44
- "koffi": "^2.15.1",
45
- "node-pty": "^1.1.0"
69
+ "jszip": "^3.10.1",
70
+ "koffi": "^2.15.6",
71
+ "yaml": "^2.8.3"
46
72
  },
47
73
  "devDependencies": {
48
74
  "@pie/agent-core": "*",
49
75
  "@pie/agent-framework": "*",
50
76
  "@pie/ai": "*",
51
- "@pie/tools-bash": "*",
52
- "@pie/tools-core": "*",
53
- "@pie/tools-fs": "*",
77
+ "@pie/shared-headless-capabilities": "*",
54
78
  "@pie/tui": "*",
55
- "@types/node": "^22.10.5",
56
79
  "@types/diff": "7.0.2",
57
- "esbuild": "^0.25.3",
80
+ "@types/node": "^22.10.5",
81
+ "esbuild": "^0.28.0",
82
+ "node-pty": "^1.1.0",
58
83
  "tsx": "^4.20.3",
59
84
  "typescript": "^5.7.3",
60
- "vitest": "^4.0.18"
85
+ "vitest": "4.0.18"
61
86
  }
62
87
  }