@melihmucuk/pi-crew 1.0.15 → 1.0.17
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 +8 -8
- package/agents/code-reviewer.md +32 -102
- package/agents/oracle.md +23 -29
- package/agents/planner.md +35 -116
- package/agents/quality-reviewer.md +39 -124
- package/agents/scout.md +21 -38
- package/agents/worker.md +27 -72
- package/extension/agent-catalog.ts +369 -0
- package/extension/agent-config-fields.ts +359 -0
- package/extension/agent-discovery.ts +49 -717
- package/extension/bootstrap-session.ts +2 -2
- package/extension/index.ts +5 -3
- package/extension/integration/crew-tool-actions.ts +306 -0
- package/extension/integration/crew-tool-executor.ts +109 -0
- package/extension/integration/register-renderers.ts +2 -2
- package/extension/integration/register-tools.ts +11 -3
- package/extension/integration/tool-presentation.ts +3 -23
- package/extension/integration/tools/crew-abort.ts +14 -84
- package/extension/integration/tools/crew-done.ts +7 -26
- package/extension/integration/tools/crew-list.ts +5 -61
- package/extension/integration/tools/crew-respond.ts +8 -29
- package/extension/integration/tools/crew-spawn.ts +16 -57
- package/extension/message-delivery-policy.ts +22 -0
- package/extension/runtime/crew-runtime.ts +60 -223
- package/extension/runtime/overflow-recovery.ts +1 -1
- package/extension/runtime/{delivery-coordinator.ts → owner-session-coordinator.ts} +44 -37
- package/extension/runtime/subagent-lifecycle.ts +203 -0
- package/extension/runtime/subagent-registry.ts +50 -6
- package/extension/runtime/subagent-transitions.ts +100 -0
- package/extension/status-widget.ts +2 -2
- package/extension/subagent-messages.ts +9 -17
- package/package.json +13 -11
- package/prompts/pi-crew-plan.md +34 -137
- package/prompts/pi-crew-review.md +36 -112
- package/skills/pi-crew/REFERENCE.md +82 -0
- package/skills/pi-crew/SKILL.md +33 -104
- package/extension/integration/tools/tool-deps.ts +0 -16
- package/extension/integration.ts +0 -13
- package/extension/runtime/subagent-state.ts +0 -59
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
ExtensionAPI,
|
|
3
|
-
ExtensionContext,
|
|
4
|
-
} from "@mariozechner/pi-coding-agent";
|
|
5
|
-
import type { AgentDiscoveryWarning } from "../../agent-discovery.js";
|
|
6
|
-
import type { CrewRuntime } from "../../runtime/crew-runtime.js";
|
|
7
|
-
|
|
8
|
-
export interface CrewToolDeps {
|
|
9
|
-
pi: ExtensionAPI;
|
|
10
|
-
crew: CrewRuntime;
|
|
11
|
-
extensionDir: string;
|
|
12
|
-
notifyDiscoveryWarnings: (
|
|
13
|
-
ctx: ExtensionContext,
|
|
14
|
-
warnings: AgentDiscoveryWarning[],
|
|
15
|
-
) => void;
|
|
16
|
-
}
|
package/extension/integration.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { ExtensionAPI } from "@mariozechner/pi-coding-agent";
|
|
2
|
-
import type { CrewRuntime } from "./runtime/crew-runtime.js";
|
|
3
|
-
import { registerCrewMessageRenderers } from "./integration/register-renderers.js";
|
|
4
|
-
import { registerCrewTools } from "./integration/register-tools.js";
|
|
5
|
-
|
|
6
|
-
export function registerCrewIntegration(
|
|
7
|
-
pi: ExtensionAPI,
|
|
8
|
-
crew: CrewRuntime,
|
|
9
|
-
extensionDir: string,
|
|
10
|
-
): void {
|
|
11
|
-
registerCrewTools(pi, crew, extensionDir);
|
|
12
|
-
registerCrewMessageRenderers(pi);
|
|
13
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { randomBytes } from "node:crypto";
|
|
2
|
-
import type { AgentSession } from "@mariozechner/pi-coding-agent";
|
|
3
|
-
import type { AgentConfig } from "../agent-discovery.js";
|
|
4
|
-
import type { SubagentStatus } from "../subagent-messages.js";
|
|
5
|
-
|
|
6
|
-
export interface SubagentState {
|
|
7
|
-
id: string;
|
|
8
|
-
agentConfig: AgentConfig;
|
|
9
|
-
task: string;
|
|
10
|
-
status: SubagentStatus;
|
|
11
|
-
ownerSessionId: string;
|
|
12
|
-
session: AgentSession | null;
|
|
13
|
-
turns: number;
|
|
14
|
-
contextTokens: number;
|
|
15
|
-
model: string | undefined;
|
|
16
|
-
error?: string;
|
|
17
|
-
result?: string;
|
|
18
|
-
promptAbortController?: AbortController;
|
|
19
|
-
unsubscribe?: () => void;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export interface ActiveAgentSummary {
|
|
23
|
-
id: string;
|
|
24
|
-
agentName: string;
|
|
25
|
-
status: SubagentStatus;
|
|
26
|
-
turns: number;
|
|
27
|
-
contextTokens: number;
|
|
28
|
-
model: string | undefined;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export function generateId(name: string, existingIds: Set<string>): string {
|
|
32
|
-
for (let i = 0; i < 10; i++) {
|
|
33
|
-
const id = `${name}-${randomBytes(4).toString("hex")}`;
|
|
34
|
-
if (!existingIds.has(id)) return id;
|
|
35
|
-
}
|
|
36
|
-
return `${name}-${randomBytes(8).toString("hex")}`;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
// Status may change externally via abort(). Standalone function avoids TS narrowing.
|
|
40
|
-
export function isAborted(state: SubagentState): boolean {
|
|
41
|
-
return state.status === "aborted";
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export function isAbortableStatus(status: SubagentStatus): boolean {
|
|
45
|
-
return status === "running" || status === "waiting";
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
export function buildActiveAgentSummary(
|
|
49
|
-
state: SubagentState,
|
|
50
|
-
): ActiveAgentSummary {
|
|
51
|
-
return {
|
|
52
|
-
id: state.id,
|
|
53
|
-
agentName: state.agentConfig.name,
|
|
54
|
-
status: state.status,
|
|
55
|
-
turns: state.turns,
|
|
56
|
-
contextTokens: state.contextTokens,
|
|
57
|
-
model: state.model,
|
|
58
|
-
};
|
|
59
|
-
}
|