@melihmucuk/pi-crew 1.0.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/LICENSE +21 -0
- package/README.md +199 -0
- package/agents/code-reviewer.md +145 -0
- package/agents/planner.md +142 -0
- package/agents/quality-reviewer.md +164 -0
- package/agents/scout.md +58 -0
- package/agents/worker.md +81 -0
- package/dist/agent-discovery.d.ts +34 -0
- package/dist/agent-discovery.js +527 -0
- package/dist/bootstrap-session.d.ts +11 -0
- package/dist/bootstrap-session.js +63 -0
- package/dist/crew-manager.d.ts +43 -0
- package/dist/crew-manager.js +235 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +27 -0
- package/dist/integration/register-command.d.ts +3 -0
- package/dist/integration/register-command.js +51 -0
- package/dist/integration/register-renderers.d.ts +2 -0
- package/dist/integration/register-renderers.js +50 -0
- package/dist/integration/register-tools.d.ts +3 -0
- package/dist/integration/register-tools.js +25 -0
- package/dist/integration/tool-presentation.d.ts +30 -0
- package/dist/integration/tool-presentation.js +29 -0
- package/dist/integration/tools/crew-abort.d.ts +2 -0
- package/dist/integration/tools/crew-abort.js +79 -0
- package/dist/integration/tools/crew-done.d.ts +2 -0
- package/dist/integration/tools/crew-done.js +28 -0
- package/dist/integration/tools/crew-list.d.ts +2 -0
- package/dist/integration/tools/crew-list.js +72 -0
- package/dist/integration/tools/crew-respond.d.ts +2 -0
- package/dist/integration/tools/crew-respond.js +30 -0
- package/dist/integration/tools/crew-spawn.d.ts +2 -0
- package/dist/integration/tools/crew-spawn.js +42 -0
- package/dist/integration/tools/tool-deps.d.ts +8 -0
- package/dist/integration/tools/tool-deps.js +1 -0
- package/dist/integration.d.ts +3 -0
- package/dist/integration.js +8 -0
- package/dist/runtime/delivery-coordinator.d.ts +17 -0
- package/dist/runtime/delivery-coordinator.js +60 -0
- package/dist/runtime/subagent-registry.d.ts +13 -0
- package/dist/runtime/subagent-registry.js +55 -0
- package/dist/runtime/subagent-state.d.ts +34 -0
- package/dist/runtime/subagent-state.js +34 -0
- package/dist/status-widget.d.ts +3 -0
- package/dist/status-widget.js +84 -0
- package/dist/subagent-messages.d.ts +30 -0
- package/dist/subagent-messages.js +58 -0
- package/dist/tool-registry.d.ts +76 -0
- package/dist/tool-registry.js +17 -0
- package/docs/architecture.md +883 -0
- package/package.json +52 -0
- package/prompts/pi-crew:review.md +168 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
declare const TOOL_FACTORIES: {
|
|
2
|
+
read: (cwd: string) => import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
3
|
+
path: import("@sinclair/typebox").TString;
|
|
4
|
+
offset: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
5
|
+
limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
6
|
+
}>, any>;
|
|
7
|
+
bash: (cwd: string) => import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
8
|
+
command: import("@sinclair/typebox").TString;
|
|
9
|
+
timeout: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
10
|
+
}>, any>;
|
|
11
|
+
edit: (cwd: string) => import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
12
|
+
path: import("@sinclair/typebox").TString;
|
|
13
|
+
edits: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
14
|
+
oldText: import("@sinclair/typebox").TString;
|
|
15
|
+
newText: import("@sinclair/typebox").TString;
|
|
16
|
+
}>>;
|
|
17
|
+
}>, any>;
|
|
18
|
+
write: (cwd: string) => import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
19
|
+
path: import("@sinclair/typebox").TString;
|
|
20
|
+
content: import("@sinclair/typebox").TString;
|
|
21
|
+
}>, any>;
|
|
22
|
+
grep: (cwd: string) => import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
23
|
+
pattern: import("@sinclair/typebox").TString;
|
|
24
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
25
|
+
glob: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
26
|
+
ignoreCase: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
27
|
+
literal: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
28
|
+
context: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
29
|
+
limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
30
|
+
}>, any>;
|
|
31
|
+
find: (cwd: string) => import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
32
|
+
pattern: import("@sinclair/typebox").TString;
|
|
33
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
34
|
+
limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
35
|
+
}>, any>;
|
|
36
|
+
ls: (cwd: string) => import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
37
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
38
|
+
limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
39
|
+
}>, any>;
|
|
40
|
+
};
|
|
41
|
+
export type SupportedToolName = keyof typeof TOOL_FACTORIES;
|
|
42
|
+
export declare const SUPPORTED_TOOL_NAMES: readonly ("read" | "bash" | "edit" | "write" | "grep" | "find" | "ls")[];
|
|
43
|
+
export declare function isSupportedToolName(name: string): name is SupportedToolName;
|
|
44
|
+
export declare function createSupportedTools(toolNames: readonly SupportedToolName[], cwd: string): (import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
45
|
+
path: import("@sinclair/typebox").TString;
|
|
46
|
+
offset: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
47
|
+
limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
48
|
+
}>, any> | import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
49
|
+
command: import("@sinclair/typebox").TString;
|
|
50
|
+
timeout: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
51
|
+
}>, any> | import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
52
|
+
path: import("@sinclair/typebox").TString;
|
|
53
|
+
edits: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
54
|
+
oldText: import("@sinclair/typebox").TString;
|
|
55
|
+
newText: import("@sinclair/typebox").TString;
|
|
56
|
+
}>>;
|
|
57
|
+
}>, any> | import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
58
|
+
path: import("@sinclair/typebox").TString;
|
|
59
|
+
content: import("@sinclair/typebox").TString;
|
|
60
|
+
}>, any> | import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
61
|
+
pattern: import("@sinclair/typebox").TString;
|
|
62
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
63
|
+
glob: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
64
|
+
ignoreCase: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
65
|
+
literal: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
66
|
+
context: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
67
|
+
limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
68
|
+
}>, any> | import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
69
|
+
pattern: import("@sinclair/typebox").TString;
|
|
70
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
71
|
+
limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
72
|
+
}>, any> | import("@mariozechner/pi-agent-core").AgentTool<import("@sinclair/typebox").TObject<{
|
|
73
|
+
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
74
|
+
limit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
75
|
+
}>, any>)[];
|
|
76
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { createBashTool, createEditTool, createFindTool, createGrepTool, createLsTool, createReadTool, createWriteTool, } from "@mariozechner/pi-coding-agent";
|
|
2
|
+
const TOOL_FACTORIES = {
|
|
3
|
+
read: (cwd) => createReadTool(cwd),
|
|
4
|
+
bash: (cwd) => createBashTool(cwd),
|
|
5
|
+
edit: (cwd) => createEditTool(cwd),
|
|
6
|
+
write: (cwd) => createWriteTool(cwd),
|
|
7
|
+
grep: (cwd) => createGrepTool(cwd),
|
|
8
|
+
find: (cwd) => createFindTool(cwd),
|
|
9
|
+
ls: (cwd) => createLsTool(cwd),
|
|
10
|
+
};
|
|
11
|
+
export const SUPPORTED_TOOL_NAMES = Object.freeze(Object.keys(TOOL_FACTORIES));
|
|
12
|
+
export function isSupportedToolName(name) {
|
|
13
|
+
return name in TOOL_FACTORIES;
|
|
14
|
+
}
|
|
15
|
+
export function createSupportedTools(toolNames, cwd) {
|
|
16
|
+
return toolNames.map((toolName) => TOOL_FACTORIES[toolName](cwd));
|
|
17
|
+
}
|