@vandeepunk/pi-coding-agent 0.0.2 → 0.0.3
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 +9 -0
- package/README.md +6 -6
- package/dist/config.d.ts +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +2 -2
- package/dist/config.js.map +1 -1
- package/dist/core/extensions/loader.d.ts.map +1 -1
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/package-manager.d.ts +1 -1
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js +12 -12
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/prompt-templates.d.ts +3 -3
- package/dist/core/prompt-templates.d.ts.map +1 -1
- package/dist/core/prompt-templates.js +15 -15
- package/dist/core/prompt-templates.js.map +1 -1
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +6 -6
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/settings-manager.d.ts +2 -2
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +4 -4
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +1 -1
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/migrations.d.ts.map +1 -1
- package/dist/migrations.js +11 -11
- package/dist/migrations.js.map +1 -1
- package/dist/modes/interactive/components/config-selector.d.ts +1 -1
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/config-selector.js +6 -6
- package/dist/modes/interactive/components/config-selector.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +2 -2
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/docs/packages.md +3 -3
- package/docs/prompt-templates.md +6 -6
- package/docs/rpc.md +1 -1
- package/docs/sdk.md +5 -3
- package/docs/settings.md +2 -2
- package/examples/extensions/subagent/README.md +4 -4
- package/examples/sdk/08-prompt-templates.ts +2 -2
- package/package.json +1 -1
- /package/examples/extensions/subagent/{prompts → commands}/implement-and-review.md +0 -0
- /package/examples/extensions/subagent/{prompts → commands}/implement.md +0 -0
- /package/examples/extensions/subagent/{prompts → commands}/scout-and-plan.md +0 -0
package/docs/packages.md
CHANGED
|
@@ -87,7 +87,7 @@ Add a `pi` manifest to `package.json` or use conventional directories. Include t
|
|
|
87
87
|
"pi": {
|
|
88
88
|
"extensions": ["./extensions"],
|
|
89
89
|
"skills": ["./skills"],
|
|
90
|
-
"
|
|
90
|
+
"commands": ["./commands"],
|
|
91
91
|
"themes": ["./themes"]
|
|
92
92
|
}
|
|
93
93
|
}
|
|
@@ -124,7 +124,7 @@ If no `pi` manifest is present, pi auto-discovers resources from these directori
|
|
|
124
124
|
|
|
125
125
|
- `extensions/` loads `.ts` and `.js` files
|
|
126
126
|
- `skills/` recursively finds `SKILL.md` folders and loads top-level `.md` files as skills
|
|
127
|
-
- `
|
|
127
|
+
- `commands/` loads `.md` files
|
|
128
128
|
- `themes/` loads `.json` files
|
|
129
129
|
|
|
130
130
|
## Dependencies
|
|
@@ -162,7 +162,7 @@ Filter what a package loads using the object form in settings:
|
|
|
162
162
|
"source": "npm:my-package",
|
|
163
163
|
"extensions": ["extensions/*.ts", "!extensions/legacy.ts"],
|
|
164
164
|
"skills": [],
|
|
165
|
-
"
|
|
165
|
+
"commands": ["commands/review.md"],
|
|
166
166
|
"themes": ["+themes/legacy.json"]
|
|
167
167
|
}
|
|
168
168
|
]
|
package/docs/prompt-templates.md
CHANGED
|
@@ -8,10 +8,10 @@ Prompt templates are Markdown snippets that expand into full prompts. Type `/nam
|
|
|
8
8
|
|
|
9
9
|
Pi loads prompt templates from:
|
|
10
10
|
|
|
11
|
-
- Global: `~/.pi/agent/
|
|
12
|
-
- Project: `.pi/
|
|
13
|
-
- Packages: `
|
|
14
|
-
- Settings: `
|
|
11
|
+
- Global: `~/.pi/agent/commands/*.md`
|
|
12
|
+
- Project: `.pi/commands/*.md`
|
|
13
|
+
- Packages: `commands/` directories or `pi.commands` entries in `package.json`
|
|
14
|
+
- Settings: `commands` array with files or directories
|
|
15
15
|
- CLI: `--prompt-template <path>` (repeatable)
|
|
16
16
|
|
|
17
17
|
Disable discovery with `--no-prompt-templates`.
|
|
@@ -63,5 +63,5 @@ Usage: `/component Button "onClick handler" "disabled support"`
|
|
|
63
63
|
|
|
64
64
|
## Loading Rules
|
|
65
65
|
|
|
66
|
-
- Template discovery in `
|
|
67
|
-
- If you want templates in subdirectories, add them explicitly via `
|
|
66
|
+
- Template discovery in `commands/` is non-recursive.
|
|
67
|
+
- If you want templates in subdirectories, add them explicitly via `commands` settings or a package manifest.
|
package/docs/rpc.md
CHANGED
|
@@ -665,7 +665,7 @@ Response:
|
|
|
665
665
|
"data": {
|
|
666
666
|
"commands": [
|
|
667
667
|
{"name": "session-name", "description": "Set or clear session name", "source": "extension", "path": "/home/user/.pi/agent/extensions/session.ts"},
|
|
668
|
-
{"name": "fix-tests", "description": "Fix failing tests", "source": "prompt", "location": "project", "path": "/home/user/myproject/.pi/agent/
|
|
668
|
+
{"name": "fix-tests", "description": "Fix failing tests", "source": "prompt", "location": "project", "path": "/home/user/myproject/.pi/agent/commands/fix-tests.md"},
|
|
669
669
|
{"name": "skill:brave-search", "description": "Web search via Brave API", "source": "skill", "location": "user", "path": "/home/user/.pi/agent/skills/brave-search/SKILL.md"}
|
|
670
670
|
]
|
|
671
671
|
}
|
package/docs/sdk.md
CHANGED
|
@@ -259,14 +259,14 @@ const { session } = await createAgentSession({
|
|
|
259
259
|
`cwd` is used by `DefaultResourceLoader` for:
|
|
260
260
|
- Project extensions (`.pi/extensions/`)
|
|
261
261
|
- Project skills (`.pi/skills/`)
|
|
262
|
-
- Project prompts (`.pi/
|
|
262
|
+
- Project prompts (`.pi/commands/`)
|
|
263
263
|
- Context files (`AGENTS.md` walking up from cwd)
|
|
264
264
|
- Session directory naming
|
|
265
265
|
|
|
266
266
|
`agentDir` is used by `DefaultResourceLoader` for:
|
|
267
267
|
- Global extensions (`extensions/`)
|
|
268
268
|
- Global skills (`skills/`)
|
|
269
|
-
- Global prompts (`
|
|
269
|
+
- Global prompts (`commands/`)
|
|
270
270
|
- Global context file (`AGENTS.md`)
|
|
271
271
|
- Settings (`settings.json`)
|
|
272
272
|
- Custom models (`models.json`)
|
|
@@ -580,6 +580,8 @@ const loader = new DefaultResourceLoader({
|
|
|
580
580
|
});
|
|
581
581
|
await loader.reload();
|
|
582
582
|
|
|
583
|
+
const { session } = await createAgentSession({ resourceLoader: loader });
|
|
584
|
+
|
|
583
585
|
const { session } = await createAgentSession({ resourceLoader: loader });
|
|
584
586
|
```
|
|
585
587
|
|
|
@@ -704,7 +706,7 @@ Project overrides global. Nested objects merge keys. Setters modify global setti
|
|
|
704
706
|
|
|
705
707
|
## ResourceLoader
|
|
706
708
|
|
|
707
|
-
Use `DefaultResourceLoader` to discover extensions, skills,
|
|
709
|
+
Use `DefaultResourceLoader` to discover extensions, skills, commands, themes, and context files.
|
|
708
710
|
|
|
709
711
|
```typescript
|
|
710
712
|
import {
|
package/docs/settings.md
CHANGED
|
@@ -134,7 +134,7 @@ When a provider requests a retry delay longer than `maxDelayMs` (e.g., Google's
|
|
|
134
134
|
|
|
135
135
|
### Resources
|
|
136
136
|
|
|
137
|
-
These settings define where to load extensions, skills,
|
|
137
|
+
These settings define where to load extensions, skills, commands, and themes from.
|
|
138
138
|
|
|
139
139
|
Paths in `~/.pi/agent/settings.json` resolve relative to `~/.pi/agent`. Paths in `.pi/settings.json` resolve relative to `.pi`. Absolute paths and `~` are supported.
|
|
140
140
|
|
|
@@ -143,7 +143,7 @@ Paths in `~/.pi/agent/settings.json` resolve relative to `~/.pi/agent`. Paths in
|
|
|
143
143
|
| `packages` | array | `[]` | npm/git packages to load resources from |
|
|
144
144
|
| `extensions` | string[] | `[]` | Local extension file paths or directories |
|
|
145
145
|
| `skills` | string[] | `[]` | Local skill file paths or directories |
|
|
146
|
-
| `
|
|
146
|
+
| `commands` | string[] | `[]` | Local command template paths or directories |
|
|
147
147
|
| `themes` | string[] | `[]` | Local theme file paths or directories |
|
|
148
148
|
| `enableSkillCommands` | boolean | `true` | Register skills as `/skill:name` commands |
|
|
149
149
|
|
|
@@ -23,7 +23,7 @@ subagent/
|
|
|
23
23
|
│ ├── planner.md # Creates implementation plans
|
|
24
24
|
│ ├── reviewer.md # Code review
|
|
25
25
|
│ └── worker.md # General-purpose (full capabilities)
|
|
26
|
-
└──
|
|
26
|
+
└── commands/ # Workflow presets (prompt templates)
|
|
27
27
|
├── implement.md # scout -> planner -> worker
|
|
28
28
|
├── scout-and-plan.md # scout -> planner (no implementation)
|
|
29
29
|
└── implement-and-review.md # worker -> reviewer -> worker
|
|
@@ -46,9 +46,9 @@ for f in packages/coding-agent/examples/extensions/subagent/agents/*.md; do
|
|
|
46
46
|
done
|
|
47
47
|
|
|
48
48
|
# Symlink workflow prompts
|
|
49
|
-
mkdir -p ~/.pi/agent/
|
|
50
|
-
for f in packages/coding-agent/examples/extensions/subagent/
|
|
51
|
-
ln -sf "$(pwd)/$f" ~/.pi/agent/
|
|
49
|
+
mkdir -p ~/.pi/agent/commands
|
|
50
|
+
for f in packages/coding-agent/examples/extensions/subagent/commands/*.md; do
|
|
51
|
+
ln -sf "$(pwd)/$f" ~/.pi/agent/commands/$(basename "$f")
|
|
52
52
|
done
|
|
53
53
|
```
|
|
54
54
|
|
|
@@ -16,7 +16,7 @@ const deployTemplate: PromptTemplate = {
|
|
|
16
16
|
name: "deploy",
|
|
17
17
|
description: "Deploy the application",
|
|
18
18
|
source: "path",
|
|
19
|
-
filePath: "/virtual/
|
|
19
|
+
filePath: "/virtual/commands/deploy.md",
|
|
20
20
|
content: `# Deploy Instructions
|
|
21
21
|
|
|
22
22
|
1. Build: npm run build
|
|
@@ -32,7 +32,7 @@ const loader = new DefaultResourceLoader({
|
|
|
32
32
|
});
|
|
33
33
|
await loader.reload();
|
|
34
34
|
|
|
35
|
-
// Discover templates from cwd/.pi/
|
|
35
|
+
// Discover templates from cwd/.pi/commands/ and ~/.pi/agent/commands/
|
|
36
36
|
const discovered = loader.getPrompts().prompts;
|
|
37
37
|
console.log("Discovered prompt templates:");
|
|
38
38
|
for (const template of discovered) {
|
package/package.json
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|