@thorrangonak/kanka 0.1.0 → 0.2.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/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,iCAAiC,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,uBAAuB,MAAM,iCAAiC,CAAC;AACtE,OAAO,kBAAkB,MAAM,4BAA4B,CAAC;AAE5D,uEAAuE;AACvE,MAAM,OAAO,GAAG,OAAO,CAAC;AAExB;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,IAAc;IAC3C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IACC,GAAG,KAAK,UAAU;YAClB,GAAG,KAAK,UAAU;YAClB,GAAG,KAAK,IAAI;YACZ,GAAG,KAAK,QAAQ;YAChB,GAAG,KAAK,IAAI,EACX,CAAC;YACF,OAAO,QAAQ,CAAC;QACjB,CAAC;QACD,IACC,GAAG,KAAK,YAAY;YACpB,GAAG,KAAK,WAAW;YACnB,GAAG,KAAK,IAAI,EACX,CAAC;YACF,OAAO,UAAU,CAAC;QACnB,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC;AAED;;GAEG;AACH,SAAS,YAAY;IACpB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BZ,CAAC,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ;IACtB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,uDAAuD;IACvD,MAAM,IAAI,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACvB,WAAW,CAAC,OAAO,CAAC,CAAC;QACrB,YAAY,EAAE,CAAC;QACf,OAAO;IACR,CAAC;IACD,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;QACjC,OAAO;IACR,CAAC;IAED,yDAAyD;IACzD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;IACpF,IAAI,UAAU,EAAE,CAAC;QAChB,WAAW,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;IAED,4DAA4D;IAC5D,+EAA+E;IAC/E,IAAI,CAAC;QACJ,MAAM,IAAI,CAAC,IAAI,EAAE;YAChB,kBAAkB,EAAE,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;SACjE,CAAC,CAAC;IACJ,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;AACF,CAAC;AAED,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;IAC/B,MAAM,KAAK,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,KAAK,CAAC,6BAA6B,KAAK,IAAI,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Agent discovery and configuration (kanka edition)
3
+ *
4
+ * Pi-mono'nun örneğinden farklı olarak:
5
+ * 1. Paketin içindeki bundled agent'ları (Türkçe) otomatik yükler.
6
+ * 2. Kullanıcının ~/.kanka/agents/ klasörünü tarar (kendi agent'ları).
7
+ * 3. Hala ~/.pi/agent/agents/ pi-uyumluluğu için tarar (kullanıcı pi'den geçiyorsa).
8
+ */
9
+ /** Paket içindeki bundled workflow prompt'ları dizini */
10
+ export declare function getBundledPromptsDir(): string;
11
+ export type AgentScope = "user" | "project" | "both";
12
+ export interface AgentConfig {
13
+ name: string;
14
+ description: string;
15
+ tools?: string[];
16
+ model?: string;
17
+ systemPrompt: string;
18
+ source: "user" | "project";
19
+ filePath: string;
20
+ }
21
+ export interface AgentDiscoveryResult {
22
+ agents: AgentConfig[];
23
+ projectAgentsDir: string | null;
24
+ }
25
+ export declare function discoverAgents(cwd: string, scope: AgentScope): AgentDiscoveryResult;
26
+ export declare function formatAgentList(agents: AgentConfig[], maxItems: number): {
27
+ text: string;
28
+ remaining: number;
29
+ };
30
+ //# sourceMappingURL=agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/subagent/agents.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAqBH,yDAAyD;AACzD,wBAAgB,oBAAoB,IAAI,MAAM,CAG7C;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;AAErD,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACpC,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAyED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,oBAAoB,CAgCnF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAQ5G"}
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Agent discovery and configuration (kanka edition)
3
+ *
4
+ * Pi-mono'nun örneğinden farklı olarak:
5
+ * 1. Paketin içindeki bundled agent'ları (Türkçe) otomatik yükler.
6
+ * 2. Kullanıcının ~/.kanka/agents/ klasörünü tarar (kendi agent'ları).
7
+ * 3. Hala ~/.pi/agent/agents/ pi-uyumluluğu için tarar (kullanıcı pi'den geçiyorsa).
8
+ */
9
+ import * as fs from "node:fs";
10
+ import * as os from "node:os";
11
+ import * as path from "node:path";
12
+ import { fileURLToPath } from "node:url";
13
+ import { getAgentDir, parseFrontmatter } from "@earendil-works/pi-coding-agent";
14
+ /** kanka kullanıcı konfig dizini: ~/.kanka/ */
15
+ function getKankaUserDir() {
16
+ return path.join(os.homedir(), ".kanka");
17
+ }
18
+ /** Paket içindeki bundled agent dizini */
19
+ function getBundledAgentsDir() {
20
+ // __dirname yok ESM'de, import.meta.url'den çözümlüyoruz
21
+ const here = path.dirname(fileURLToPath(import.meta.url));
22
+ // dist/subagent/agents.js → dist/bundled-agents/
23
+ return path.resolve(here, "..", "bundled-agents");
24
+ }
25
+ /** Paket içindeki bundled workflow prompt'ları dizini */
26
+ export function getBundledPromptsDir() {
27
+ const here = path.dirname(fileURLToPath(import.meta.url));
28
+ return path.resolve(here, "..", "bundled-prompts");
29
+ }
30
+ function loadAgentsFromDir(dir, source) {
31
+ const agents = [];
32
+ if (!fs.existsSync(dir)) {
33
+ return agents;
34
+ }
35
+ let entries;
36
+ try {
37
+ entries = fs.readdirSync(dir, { withFileTypes: true });
38
+ }
39
+ catch {
40
+ return agents;
41
+ }
42
+ for (const entry of entries) {
43
+ if (!entry.name.endsWith(".md"))
44
+ continue;
45
+ if (!entry.isFile() && !entry.isSymbolicLink())
46
+ continue;
47
+ const filePath = path.join(dir, entry.name);
48
+ let content;
49
+ try {
50
+ content = fs.readFileSync(filePath, "utf-8");
51
+ }
52
+ catch {
53
+ continue;
54
+ }
55
+ const { frontmatter, body } = parseFrontmatter(content);
56
+ if (!frontmatter.name || !frontmatter.description) {
57
+ continue;
58
+ }
59
+ const tools = frontmatter.tools
60
+ ?.split(",")
61
+ .map((t) => t.trim())
62
+ .filter(Boolean);
63
+ agents.push({
64
+ name: frontmatter.name,
65
+ description: frontmatter.description,
66
+ tools: tools && tools.length > 0 ? tools : undefined,
67
+ model: frontmatter.model,
68
+ systemPrompt: body,
69
+ source,
70
+ filePath,
71
+ });
72
+ }
73
+ return agents;
74
+ }
75
+ function isDirectory(p) {
76
+ try {
77
+ return fs.statSync(p).isDirectory();
78
+ }
79
+ catch {
80
+ return false;
81
+ }
82
+ }
83
+ function findNearestProjectAgentsDir(cwd) {
84
+ let currentDir = cwd;
85
+ while (true) {
86
+ const candidate = path.join(currentDir, ".pi", "agents");
87
+ if (isDirectory(candidate))
88
+ return candidate;
89
+ const parentDir = path.dirname(currentDir);
90
+ if (parentDir === currentDir)
91
+ return null;
92
+ currentDir = parentDir;
93
+ }
94
+ }
95
+ export function discoverAgents(cwd, scope) {
96
+ const bundledDir = getBundledAgentsDir();
97
+ const kankaUserDir = path.join(getKankaUserDir(), "agents");
98
+ const piUserDir = path.join(getAgentDir(), "agents");
99
+ const projectAgentsDir = findNearestProjectAgentsDir(cwd);
100
+ // Bundled agent'lar her zaman yüklenir (paket içinde, Türkçe default ekip)
101
+ const bundledAgents = loadAgentsFromDir(bundledDir, "user");
102
+ // Kullanıcının kendi agent'ları (önce kanka, sonra pi uyumluluğu için)
103
+ const kankaUserAgents = scope === "project" ? [] : loadAgentsFromDir(kankaUserDir, "user");
104
+ const piUserAgents = scope === "project" ? [] : loadAgentsFromDir(piUserDir, "user");
105
+ const projectAgents = scope === "user" || !projectAgentsDir ? [] : loadAgentsFromDir(projectAgentsDir, "project");
106
+ const agentMap = new Map();
107
+ // Öncelik sırası (sonra gelen önceki yi ezer):
108
+ // 1. bundled (en düşük öncelik, varsayılan)
109
+ // 2. pi user dir (eğer kullanıcı pi'den geçiyorsa, mevcut agent'ları korunsun)
110
+ // 3. kanka user dir (kullanıcının kanka'ya özel agent'ları)
111
+ // 4. project (en yüksek öncelik)
112
+ if (scope === "project") {
113
+ for (const agent of projectAgents)
114
+ agentMap.set(agent.name, agent);
115
+ }
116
+ else {
117
+ for (const agent of bundledAgents)
118
+ agentMap.set(agent.name, agent);
119
+ for (const agent of piUserAgents)
120
+ agentMap.set(agent.name, agent);
121
+ for (const agent of kankaUserAgents)
122
+ agentMap.set(agent.name, agent);
123
+ if (scope === "both") {
124
+ for (const agent of projectAgents)
125
+ agentMap.set(agent.name, agent);
126
+ }
127
+ }
128
+ return { agents: Array.from(agentMap.values()), projectAgentsDir };
129
+ }
130
+ export function formatAgentList(agents, maxItems) {
131
+ if (agents.length === 0)
132
+ return { text: "none", remaining: 0 };
133
+ const listed = agents.slice(0, maxItems);
134
+ const remaining = agents.length - listed.length;
135
+ return {
136
+ text: listed.map((a) => `${a.name} (${a.source}): ${a.description}`).join("; "),
137
+ remaining,
138
+ };
139
+ }
140
+ //# sourceMappingURL=agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/subagent/agents.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEhF,+CAA+C;AAC/C,SAAS,eAAe;IACvB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,0CAA0C;AAC1C,SAAS,mBAAmB;IAC3B,yDAAyD;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,iDAAiD;IACjD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;AACnD,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,oBAAoB;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC;AACpD,CAAC;AAmBD,SAAS,iBAAiB,CAAC,GAAW,EAAE,MAA0B;IACjE,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,IAAI,OAAoB,CAAC;IACzB,IAAI,CAAC;QACJ,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,MAAM,CAAC;IACf,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE;YAAE,SAAS;QAEzD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,OAAe,CAAC;QACpB,IAAI,CAAC;YACJ,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACR,SAAS;QACV,CAAC;QAED,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAyB,OAAO,CAAC,CAAC;QAEhF,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YACnD,SAAS;QACV,CAAC;QAED,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK;YAC9B,EAAE,KAAK,CAAC,GAAG,CAAC;aACX,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAC5B,MAAM,CAAC,OAAO,CAAC,CAAC;QAElB,MAAM,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YACpD,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,YAAY,EAAE,IAAI;YAClB,MAAM;YACN,QAAQ;SACR,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,CAAS;IAC7B,IAAI,CAAC;QACJ,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC;AAED,SAAS,2BAA2B,CAAC,GAAW;IAC/C,IAAI,UAAU,GAAG,GAAG,CAAC;IACrB,OAAO,IAAI,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QACzD,IAAI,WAAW,CAAC,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QAE7C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,SAAS,KAAK,UAAU;YAAE,OAAO,IAAI,CAAC;QAC1C,UAAU,GAAG,SAAS,CAAC;IACxB,CAAC;AACF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,KAAiB;IAC5D,MAAM,UAAU,GAAG,mBAAmB,EAAE,CAAC;IACzC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,2BAA2B,CAAC,GAAG,CAAC,CAAC;IAE1D,2EAA2E;IAC3E,MAAM,aAAa,GAAG,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC5D,uEAAuE;IACvE,MAAM,eAAe,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC3F,MAAM,YAAY,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACrF,MAAM,aAAa,GAAG,KAAK,KAAK,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;IAElH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;IAEhD,+CAA+C;IAC/C,8CAA8C;IAC9C,iFAAiF;IACjF,8DAA8D;IAC9D,mCAAmC;IACnC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzB,KAAK,MAAM,KAAK,IAAI,aAAa;YAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;SAAM,CAAC;QACP,KAAK,MAAM,KAAK,IAAI,aAAa;YAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnE,KAAK,MAAM,KAAK,IAAI,YAAY;YAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAClE,KAAK,MAAM,KAAK,IAAI,eAAe;YAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrE,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACtB,KAAK,MAAM,KAAK,IAAI,aAAa;gBAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpE,CAAC;IACF,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAqB,EAAE,QAAgB;IACtE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACzC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAChD,OAAO;QACN,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/E,SAAS;KACT,CAAC;AACH,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Subagent Tool - Delegate tasks to specialized agents
3
+ *
4
+ * Spawns a separate `pi` process for each subagent invocation,
5
+ * giving it an isolated context window.
6
+ *
7
+ * Supports three modes:
8
+ * - Single: { agent: "name", task: "..." }
9
+ * - Parallel: { tasks: [{ agent: "name", task: "..." }, ...] }
10
+ * - Chain: { chain: [{ agent: "name", task: "... {previous} ..." }, ...] }
11
+ *
12
+ * Uses JSON mode to capture structured output from subagents.
13
+ */
14
+ import { type ExtensionAPI } from "@earendil-works/pi-coding-agent";
15
+ export default function (pi: ExtensionAPI): void;
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/subagent/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AASH,OAAO,EAAE,KAAK,YAAY,EAA2C,MAAM,iCAAiC,CAAC;AA4b7G,MAAM,CAAC,OAAO,WAAW,EAAE,EAAE,YAAY,QAwjBxC"}