@thorrangonak/kanka 0.1.0 → 0.3.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.
Files changed (42) hide show
  1. package/README.md +91 -14
  2. package/dist/bundled-agents/docs-yazari.md +84 -0
  3. package/dist/bundled-agents/gozden-geciren.md +40 -0
  4. package/dist/bundled-agents/hata-avcisi.md +47 -0
  5. package/dist/bundled-agents/isci.md +43 -0
  6. package/dist/bundled-agents/kasif.md +52 -0
  7. package/dist/bundled-agents/mimar.md +54 -0
  8. package/dist/bundled-agents/planlayici.md +42 -0
  9. package/dist/bundled-agents/refactorcu.md +58 -0
  10. package/dist/bundled-agents/test-yazari.md +58 -0
  11. package/dist/bundled-prompts/debug.md +9 -0
  12. package/dist/bundled-prompts/plan-yap.md +9 -0
  13. package/dist/bundled-prompts/refactor-incele.md +10 -0
  14. package/dist/bundled-prompts/yap-ve-incele.md +10 -0
  15. package/dist/bundled-prompts/yap.md +10 -0
  16. package/dist/cli.js +42 -3
  17. package/dist/cli.js.map +1 -1
  18. package/dist/extensions/bilgi-komutlari.d.ts +10 -0
  19. package/dist/extensions/bilgi-komutlari.d.ts.map +1 -0
  20. package/dist/extensions/bilgi-komutlari.js +145 -0
  21. package/dist/extensions/bilgi-komutlari.js.map +1 -0
  22. package/dist/extensions/dusunce.d.ts +17 -0
  23. package/dist/extensions/dusunce.d.ts.map +1 -0
  24. package/dist/extensions/dusunce.js +83 -0
  25. package/dist/extensions/dusunce.js.map +1 -0
  26. package/dist/extensions/turkce-aliaslar.d.ts +27 -0
  27. package/dist/extensions/turkce-aliaslar.d.ts.map +1 -0
  28. package/dist/extensions/turkce-aliaslar.js +90 -0
  29. package/dist/extensions/turkce-aliaslar.js.map +1 -0
  30. package/dist/extensions/turkce-komutlar.d.ts +7 -8
  31. package/dist/extensions/turkce-komutlar.d.ts.map +1 -1
  32. package/dist/extensions/turkce-komutlar.js +93 -33
  33. package/dist/extensions/turkce-komutlar.js.map +1 -1
  34. package/dist/subagent/agents.d.ts +30 -0
  35. package/dist/subagent/agents.d.ts.map +1 -0
  36. package/dist/subagent/agents.js +140 -0
  37. package/dist/subagent/agents.js.map +1 -0
  38. package/dist/subagent/index.d.ts +16 -0
  39. package/dist/subagent/index.d.ts.map +1 -0
  40. package/dist/subagent/index.js +857 -0
  41. package/dist/subagent/index.js.map +1 -0
  42. package/package.json +8 -3
package/dist/cli.js CHANGED
@@ -5,12 +5,19 @@
5
5
  * Pi'nin coding-agent çekirdeğini kullanır, üzerine Türkçe kişilik,
6
6
  * Türkçe komutlar ve kanka markasını ekler.
7
7
  */
8
+ import * as fs from "node:fs";
9
+ import * as path from "node:path";
10
+ import { fileURLToPath } from "node:url";
8
11
  import { main } from "@earendil-works/pi-coding-agent";
9
12
  import { printBanner } from "./banner.js";
13
+ import bilgiKomutlariExtension from "./extensions/bilgi-komutlari.js";
14
+ import dusunceExtension from "./extensions/dusunce.js";
15
+ import turkceAliaslarExtension from "./extensions/turkce-aliaslar.js";
10
16
  import turkceKomutlarExtension from "./extensions/turkce-komutlar.js";
11
17
  import turkceModExtension from "./extensions/turkce-mod.js";
18
+ import subagentExtension from "./subagent/index.js";
12
19
  // package.json'dan versiyonu oku (build sırasında dist'e kopyalanacak)
13
- const VERSION = "0.1.0";
20
+ const VERSION = "0.3.0";
14
21
  /**
15
22
  * Komut satırı argümanlarında yardım/versiyon istenmiş mi?
16
23
  * Hem Türkçe (--yardım, --versiyon) hem İngilizce (--help, --version) bayrakları yakalar.
@@ -86,11 +93,22 @@ async function calistir() {
86
93
  if (interaktif) {
87
94
  printBanner(VERSION);
88
95
  }
96
+ // Bundled workflow prompt'larını args'a otomatik enjekte et.
97
+ // Böylece /yap, /plan-yap, /yap-ve-incele, /debug, /refactor-incele komutları her zaman aktif olur.
98
+ const bundledPromptsArgs = getBundledPromptArgs();
99
+ const genisletilmisArgs = [...bundledPromptsArgs, ...args];
89
100
  // Pi'nin main fonksiyonunu kendi extension'larımızla çağır.
90
101
  // extensionFactories listesi pi'nin extension yükleyicisine ek olarak çalışır.
91
102
  try {
92
- await main(args, {
93
- extensionFactories: [turkceModExtension, turkceKomutlarExtension],
103
+ await main(genisletilmisArgs, {
104
+ extensionFactories: [
105
+ turkceModExtension,
106
+ turkceKomutlarExtension,
107
+ turkceAliaslarExtension,
108
+ dusunceExtension,
109
+ bilgiKomutlariExtension,
110
+ subagentExtension,
111
+ ],
94
112
  });
95
113
  }
96
114
  catch (e) {
@@ -99,6 +117,27 @@ async function calistir() {
99
117
  process.exit(1);
100
118
  }
101
119
  }
120
+ /**
121
+ * Paketle birlikte gelen workflow prompt'larının yolunu döner.
122
+ * Her .md dosyası için pi'nin --prompt-template bayrağını üretir.
123
+ */
124
+ function getBundledPromptArgs() {
125
+ const here = path.dirname(fileURLToPath(import.meta.url));
126
+ const promptsDir = path.resolve(here, "bundled-prompts");
127
+ if (!fs.existsSync(promptsDir))
128
+ return [];
129
+ try {
130
+ const dosyalar = fs.readdirSync(promptsDir).filter((f) => f.endsWith(".md"));
131
+ const args = [];
132
+ for (const dosya of dosyalar) {
133
+ args.push("--prompt-template", path.join(promptsDir, dosya));
134
+ }
135
+ return args;
136
+ }
137
+ catch {
138
+ return [];
139
+ }
140
+ }
102
141
  calistir().catch((e) => {
103
142
  const mesaj = e instanceof Error ? e.message : String(e);
104
143
  console.error(`\nBeklenmeyen hata kanka: ${mesaj}\n`);
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,10 @@
1
+ /**
2
+ * Kanka-özel bilgi komutları
3
+ *
4
+ * /ekip — Kullanılabilir subagent ekibini listele
5
+ * /araçlar — Aktif tool listesi
6
+ * /bilgi — Kanka durum özeti (versiyon, model, thinking, tools, agents)
7
+ */
8
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
9
+ export default function bilgiKomutlariExtension(pi: ExtensionAPI): void;
10
+ //# sourceMappingURL=bilgi-komutlari.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bilgi-komutlari.d.ts","sourceRoot":"","sources":["../../src/extensions/bilgi-komutlari.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AA0CpE,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAAE,EAAE,YAAY,QAgH/D"}
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Kanka-özel bilgi komutları
3
+ *
4
+ * /ekip — Kullanılabilir subagent ekibini listele
5
+ * /araçlar — Aktif tool listesi
6
+ * /bilgi — Kanka durum özeti (versiyon, model, thinking, tools, agents)
7
+ */
8
+ import * as fs from "node:fs";
9
+ import * as path from "node:path";
10
+ import { fileURLToPath } from "node:url";
11
+ import { parseFrontmatter } from "@earendil-works/pi-coding-agent";
12
+ const KANKA_VERSION = "0.3.0";
13
+ /**
14
+ * Paket içindeki bundled-agents/ klasöründen agent meta bilgisini okur.
15
+ */
16
+ function bundledAgentleriOku() {
17
+ try {
18
+ const here = path.dirname(fileURLToPath(import.meta.url));
19
+ // dist/extensions/bilgi-komutlari.js → dist/bundled-agents/
20
+ const dizin = path.resolve(here, "..", "bundled-agents");
21
+ if (!fs.existsSync(dizin))
22
+ return [];
23
+ const dosyalar = fs.readdirSync(dizin).filter((f) => f.endsWith(".md"));
24
+ const agentlar = [];
25
+ for (const dosya of dosyalar) {
26
+ const icerik = fs.readFileSync(path.join(dizin, dosya), "utf-8");
27
+ const { frontmatter } = parseFrontmatter(icerik);
28
+ if (frontmatter.name && frontmatter.description) {
29
+ agentlar.push({
30
+ name: frontmatter.name,
31
+ description: frontmatter.description,
32
+ });
33
+ }
34
+ }
35
+ // İsme göre sırala (kanka'nın iş akışı sırası değil, alfabetik tutarlı liste)
36
+ agentlar.sort((a, b) => a.name.localeCompare(b.name, "tr"));
37
+ return agentlar;
38
+ }
39
+ catch {
40
+ return [];
41
+ }
42
+ }
43
+ export default function bilgiKomutlariExtension(pi) {
44
+ // /ekip — Subagent listesi
45
+ pi.registerCommand("ekip", {
46
+ description: "Kullanılabilir subagent ekibini listele",
47
+ handler: async (_args, ctx) => {
48
+ const agentlar = bundledAgentleriOku();
49
+ if (agentlar.length === 0) {
50
+ ctx.ui.notify("Henüz bundled agent yok kanka.", "warning");
51
+ return;
52
+ }
53
+ const satirlar = [
54
+ "",
55
+ "🤝 kanka ekibi — Kullanılabilir subagent'lar",
56
+ "─".repeat(60),
57
+ ...agentlar.map((a) => ` ${a.name.padEnd(18)} — ${a.description}`),
58
+ "",
59
+ "Workflow komutları:",
60
+ " /yap <görev> kasif → planlayici → isci",
61
+ " /plan-yap <görev> kasif → planlayici",
62
+ " /yap-ve-incele <görev> isci → gozden-geciren → isci",
63
+ " /debug <bug> kasif → hata-avcisi",
64
+ " /refactor-incele <hedef> kasif → refactorcu → gozden-geciren",
65
+ "",
66
+ "Manuel çağırmak için: `delege` tool'unu kullan.",
67
+ "",
68
+ ];
69
+ ctx.ui.notify(satirlar.join("\n"), "info");
70
+ },
71
+ });
72
+ // /araçlar — Tool listesi
73
+ pi.registerCommand("araçlar", {
74
+ description: "Aktif tool listesini göster",
75
+ handler: async (_args, ctx) => {
76
+ const tumToollar = pi.getAllTools();
77
+ const aktifIsimler = pi.getActiveTools();
78
+ const aktifSet = new Set(aktifIsimler);
79
+ const satirlar = ["", "🛠️ kanka araç listesi", "─".repeat(60)];
80
+ for (const tool of tumToollar) {
81
+ const isim = tool.name;
82
+ const aktif = aktifSet.has(isim) ? "✓" : "·";
83
+ const aciklama = typeof tool.description === "string"
84
+ ? tool.description.slice(0, 60)
85
+ : "";
86
+ satirlar.push(` ${aktif} ${isim.padEnd(20)} ${aciklama}`);
87
+ }
88
+ satirlar.push("");
89
+ satirlar.push(`Toplam: ${tumToollar.length} araç, ${aktifIsimler.length} aktif`);
90
+ satirlar.push("Açma/kapama: pi config veya extension üzerinden.");
91
+ satirlar.push("");
92
+ ctx.ui.notify(satirlar.join("\n"), "info");
93
+ },
94
+ });
95
+ // ASCII alias
96
+ pi.registerCommand("araclar", {
97
+ description: "Aktif tool listesi (ASCII alias)",
98
+ handler: async (_args, ctx) => {
99
+ const tumToollar = pi.getAllTools();
100
+ const aktifIsimler = pi.getActiveTools();
101
+ const aktifSet = new Set(aktifIsimler);
102
+ const satirlar = ["", "kanka arac listesi", "─".repeat(50)];
103
+ for (const tool of tumToollar) {
104
+ const aktif = aktifSet.has(tool.name) ? "[+]" : "[ ]";
105
+ satirlar.push(` ${aktif} ${tool.name}`);
106
+ }
107
+ satirlar.push(`\nToplam: ${tumToollar.length}, aktif: ${aktifIsimler.length}\n`);
108
+ ctx.ui.notify(satirlar.join("\n"), "info");
109
+ },
110
+ });
111
+ // /bilgi — Durum özeti
112
+ pi.registerCommand("bilgi", {
113
+ description: "Kanka durum özetini göster (versiyon, model, thinking, ekip)",
114
+ handler: async (_args, ctx) => {
115
+ const thinking = pi.getThinkingLevel();
116
+ const model = ctx.model;
117
+ const aktifToollar = pi.getActiveTools();
118
+ const agentlar = bundledAgentleriOku();
119
+ const usage = ctx.getContextUsage?.();
120
+ const modelMetni = model
121
+ ? `${model.provider ?? "?"}/${model.id ?? "?"}`
122
+ : "(seçilmedi — /giriş veya /model)";
123
+ const contextMetni = usage
124
+ ? `${usage.tokens ?? "?"} / ${usage.contextWindow} token${usage.percent != null ? ` (${usage.percent.toFixed(0)}%)` : ""}`
125
+ : "(bilgi yok)";
126
+ const satirlar = [
127
+ "",
128
+ "📊 kanka — Durum özeti",
129
+ "─".repeat(60),
130
+ ` Versiyon : v${KANKA_VERSION}`,
131
+ ` Model : ${modelMetni}`,
132
+ ` Düşünce : ${thinking}`,
133
+ ` Aktif araçlar : ${aktifToollar.length} (${aktifToollar.join(", ")})`,
134
+ ` Bundled agent : ${agentlar.length} (${agentlar.map((a) => a.name).join(", ")})`,
135
+ ` Context kullanım: ${contextMetni}`,
136
+ ` CWD : ${ctx.cwd}`,
137
+ "",
138
+ "Daha fazlası: /ekip, /araçlar, /düşünce, /model, /yardım",
139
+ "",
140
+ ];
141
+ ctx.ui.notify(satirlar.join("\n"), "info");
142
+ },
143
+ });
144
+ }
145
+ //# sourceMappingURL=bilgi-komutlari.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bilgi-komutlari.js","sourceRoot":"","sources":["../../src/extensions/bilgi-komutlari.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * /düşünce komutu — thinking level'ı Türkçe seçim/değiştirme
3
+ *
4
+ * Kullanım:
5
+ * /düşünce — mevcut level'ı göster
6
+ * /düşünce kapat — off
7
+ * /düşünce minimal — minimal
8
+ * /düşünce düşük — low
9
+ * /düşünce orta — medium
10
+ * /düşünce yüksek — high
11
+ * /düşünce max — xhigh
12
+ *
13
+ * Pi'nin default kısayolu: Shift+Tab (cycle)
14
+ */
15
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
16
+ export default function dusunceExtension(pi: ExtensionAPI): void;
17
+ //# sourceMappingURL=dusunce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dusunce.d.ts","sourceRoot":"","sources":["../../src/extensions/dusunce.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAoCpE,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EAAE,EAAE,YAAY,QAwDxD"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * /düşünce komutu — thinking level'ı Türkçe seçim/değiştirme
3
+ *
4
+ * Kullanım:
5
+ * /düşünce — mevcut level'ı göster
6
+ * /düşünce kapat — off
7
+ * /düşünce minimal — minimal
8
+ * /düşünce düşük — low
9
+ * /düşünce orta — medium
10
+ * /düşünce yüksek — high
11
+ * /düşünce max — xhigh
12
+ *
13
+ * Pi'nin default kısayolu: Shift+Tab (cycle)
14
+ */
15
+ const SEVIYELER = [
16
+ { turkce: ["kapat", "kapali", "kapalı", "off", "yok"], pi: "off", gosterim: "kapalı" },
17
+ { turkce: ["minimal", "min"], pi: "minimal", gosterim: "minimal" },
18
+ { turkce: ["düşük", "dusuk", "low", "az"], pi: "low", gosterim: "düşük" },
19
+ { turkce: ["orta", "medium", "med"], pi: "medium", gosterim: "orta" },
20
+ { turkce: ["yüksek", "yuksek", "high", "çok"], pi: "high", gosterim: "yüksek" },
21
+ { turkce: ["max", "xhigh", "ekstra", "en-yüksek", "en-yuksek"], pi: "xhigh", gosterim: "maksimum" },
22
+ ];
23
+ const TURKCE_GOSTERIM = {
24
+ off: "kapalı",
25
+ minimal: "minimal",
26
+ low: "düşük",
27
+ medium: "orta",
28
+ high: "yüksek",
29
+ xhigh: "maksimum",
30
+ };
31
+ function seviyeBul(input) {
32
+ const temiz = input.trim().toLowerCase();
33
+ for (const s of SEVIYELER) {
34
+ if (s.turkce.includes(temiz))
35
+ return s.pi;
36
+ }
37
+ return null;
38
+ }
39
+ export default function dusunceExtension(pi) {
40
+ pi.registerCommand("düşünce", {
41
+ description: "Thinking level'ı Türkçe yönet (kapat/min/düşük/orta/yüksek/max)",
42
+ handler: async (args, ctx) => {
43
+ const arg = args?.trim();
44
+ // Argüman yoksa mevcut seviyeyi göster
45
+ if (!arg) {
46
+ const mevcut = pi.getThinkingLevel();
47
+ const turkce = TURKCE_GOSTERIM[mevcut];
48
+ const secenekler = "kapat | minimal | düşük | orta | yüksek | max";
49
+ ctx.ui.notify(`Mevcut düşünce seviyesi: ${turkce} (${mevcut})\n\nDeğiştirmek için: /düşünce <${secenekler}>`, "info");
50
+ return;
51
+ }
52
+ // Argüman var, seviyeyi değiştir
53
+ const yeniSeviye = seviyeBul(arg);
54
+ if (!yeniSeviye) {
55
+ ctx.ui.notify(`Bilmediğim bir seviye: "${arg}".\nGeçerli: kapat, minimal, düşük, orta, yüksek, max`, "error");
56
+ return;
57
+ }
58
+ pi.setThinkingLevel(yeniSeviye);
59
+ ctx.ui.notify(`Düşünce seviyesi: ${TURKCE_GOSTERIM[yeniSeviye]} (${yeniSeviye}) ✓`, "info");
60
+ },
61
+ });
62
+ // ASCII alias
63
+ pi.registerCommand("dusunce", {
64
+ description: "Thinking level'ı yönet (ASCII alias)",
65
+ handler: async (args, ctx) => {
66
+ // Aynı handler'ı tekrar çağır
67
+ const arg = args?.trim();
68
+ if (!arg) {
69
+ const mevcut = pi.getThinkingLevel();
70
+ ctx.ui.notify(`Mevcut: ${TURKCE_GOSTERIM[mevcut]} (${mevcut})\nDegistir: /dusunce <kapat|min|dusuk|orta|yuksek|max>`, "info");
71
+ return;
72
+ }
73
+ const yeni = seviyeBul(arg);
74
+ if (!yeni) {
75
+ ctx.ui.notify(`Bilinmeyen seviye: ${arg}`, "error");
76
+ return;
77
+ }
78
+ pi.setThinkingLevel(yeni);
79
+ ctx.ui.notify(`Dusunce: ${TURKCE_GOSTERIM[yeni]} (${yeni})`, "info");
80
+ },
81
+ });
82
+ }
83
+ //# sourceMappingURL=dusunce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dusunce.js","sourceRoot":"","sources":["../../src/extensions/dusunce.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Türkçe Slash Komut Alias Extension
3
+ *
4
+ * Pi'nin dahili slash komutlarına Türkçe alias'lar ekler.
5
+ * Kullanıcı `/sıkıştır` yazınca otomatik olarak `/compact`'a dönüşür.
6
+ *
7
+ * Yaklaşım: `input` event handler ile mesaj agent'a gitmeden önce text'i
8
+ * transform ederiz. Bu sayede pi'nin dahili komut işleyicisi orijinal
9
+ * komutu görür ve normal şekilde çalıştırır.
10
+ */
11
+ import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
12
+ interface SlashAlias {
13
+ /** Türkçe komut (slash'sız) */
14
+ turkce: string;
15
+ /** Pi'nin orijinal komutu (slash'sız) */
16
+ pi: string;
17
+ /** Komut açıklaması (yardım için) */
18
+ aciklama: string;
19
+ }
20
+ /**
21
+ * Türkçe → Pi alias eşleştirmeleri.
22
+ * ASCII'siz Türkçe versiyonlar da eklendi (klavye kolaylığı).
23
+ */
24
+ export declare const SLASH_ALIASLAR: SlashAlias[];
25
+ export default function turkceAliaslarExtension(pi: ExtensionAPI): void;
26
+ export {};
27
+ //# sourceMappingURL=turkce-aliaslar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turkce-aliaslar.d.ts","sourceRoot":"","sources":["../../src/extensions/turkce-aliaslar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAEpE,UAAU,UAAU;IACnB,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,UAAU,EAyCtC,CAAC;AAuBF,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAAE,EAAE,YAAY,QAiB/D"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Türkçe Slash Komut Alias Extension
3
+ *
4
+ * Pi'nin dahili slash komutlarına Türkçe alias'lar ekler.
5
+ * Kullanıcı `/sıkıştır` yazınca otomatik olarak `/compact`'a dönüşür.
6
+ *
7
+ * Yaklaşım: `input` event handler ile mesaj agent'a gitmeden önce text'i
8
+ * transform ederiz. Bu sayede pi'nin dahili komut işleyicisi orijinal
9
+ * komutu görür ve normal şekilde çalıştırır.
10
+ */
11
+ /**
12
+ * Türkçe → Pi alias eşleştirmeleri.
13
+ * ASCII'siz Türkçe versiyonlar da eklendi (klavye kolaylığı).
14
+ */
15
+ export const SLASH_ALIASLAR = [
16
+ // Context yönetimi
17
+ { turkce: "sıkıştır", pi: "compact", aciklama: "Context'i compact et (özet çıkar, eskileri sıkıştır)" },
18
+ { turkce: "sikistir", pi: "compact", aciklama: "Context'i compact et (ASCII)" },
19
+ { turkce: "özet", pi: "compact", aciklama: "Context'i compact et (alias)" },
20
+ { turkce: "ozet", pi: "compact", aciklama: "Context'i compact et (ASCII alias)" },
21
+ // Kopyala / aktar
22
+ { turkce: "kopyala", pi: "copy", aciklama: "Son asistan mesajını panoya kopyala" },
23
+ { turkce: "aktar", pi: "export", aciklama: "Oturumu HTML'e aktar" },
24
+ { turkce: "dışaver", pi: "export", aciklama: "Oturumu HTML'e aktar (alias)" },
25
+ { turkce: "disaver", pi: "export", aciklama: "Oturumu HTML'e aktar (ASCII)" },
26
+ { turkce: "paylaş", pi: "share", aciklama: "Oturumu paylaş (gist link)" },
27
+ { turkce: "paylas", pi: "share", aciklama: "Oturumu paylaş (ASCII)" },
28
+ // Oturum yönetimi
29
+ { turkce: "çatalla", pi: "fork", aciklama: "Mevcut oturumu fork et (kopya)" },
30
+ { turkce: "catalla", pi: "fork", aciklama: "Oturumu fork et (ASCII)" },
31
+ { turkce: "klonla", pi: "clone", aciklama: "Oturumu klonla" },
32
+ { turkce: "içeal", pi: "import", aciklama: "Oturum dosyası içe al" },
33
+ { turkce: "iceal", pi: "import", aciklama: "Oturum dosyası içe al (ASCII)" },
34
+ { turkce: "devam", pi: "resume", aciklama: "Bir oturumdan devam et" },
35
+ { turkce: "ağaç", pi: "tree", aciklama: "Oturum ağacını göster (branch navigator)" },
36
+ { turkce: "agac", pi: "tree", aciklama: "Oturum ağacı (ASCII)" },
37
+ { turkce: "isim", pi: "name", aciklama: "Mevcut oturumu adlandır" },
38
+ // Auth
39
+ { turkce: "giriş", pi: "login", aciklama: "Provider'a giriş yap (OAuth veya API key)" },
40
+ { turkce: "giris", pi: "login", aciklama: "Provider'a giriş (ASCII)" },
41
+ { turkce: "çıkış", pi: "logout", aciklama: "Provider'dan çıkış yap" },
42
+ { turkce: "cikis", pi: "logout", aciklama: "Provider'dan çıkış (ASCII)" },
43
+ // Sistem
44
+ { turkce: "ayarlar", pi: "settings", aciklama: "Ayarlar TUI'sini aç" },
45
+ { turkce: "yenile", pi: "reload", aciklama: "Runtime'ı yeniden yükle (config + extension)" },
46
+ { turkce: "kısayollar", pi: "hotkeys", aciklama: "Klavye kısayollarını göster" },
47
+ { turkce: "kisayollar", pi: "hotkeys", aciklama: "Klavye kısayolları (ASCII)" },
48
+ { turkce: "değişiklikler", pi: "changelog", aciklama: "Pi changelog'unu göster" },
49
+ { turkce: "degisiklikler", pi: "changelog", aciklama: "Changelog (ASCII)" },
50
+ { turkce: "hata-ayıkla", pi: "debug", aciklama: "Debug bilgisini göster" },
51
+ { turkce: "hata-ayikla", pi: "debug", aciklama: "Debug bilgisi (ASCII)" },
52
+ ];
53
+ /**
54
+ * `/turkce` formatındaki bir komutu `/pi` formatına çevirir.
55
+ * Eşleşme yoksa orijinal metni döner.
56
+ */
57
+ function aliasCevir(text) {
58
+ if (!text.startsWith("/"))
59
+ return null;
60
+ // Slash sonrası kısmı al
61
+ const slashSonrasi = text.slice(1);
62
+ // İlk boşluğa kadar = komut, sonrası = argüman
63
+ const bosluk = slashSonrasi.indexOf(" ");
64
+ const komut = bosluk === -1 ? slashSonrasi : slashSonrasi.slice(0, bosluk);
65
+ const argumanlar = bosluk === -1 ? "" : slashSonrasi.slice(bosluk);
66
+ // Alias bul (case-sensitive, çünkü Türkçe karakterler önemli)
67
+ const alias = SLASH_ALIASLAR.find((a) => a.turkce === komut);
68
+ if (!alias)
69
+ return null;
70
+ return `/${alias.pi}${argumanlar}`;
71
+ }
72
+ export default function turkceAliaslarExtension(pi) {
73
+ // Input event'i yakala — kullanıcı bir mesaj/komut girince çalışır.
74
+ // Sadece interactive kaynaklı input'lara müdahale et (RPC veya extension'dan
75
+ // gelen mesajları zaten programatik, dönüştürmeye gerek yok).
76
+ pi.on("input", async (event) => {
77
+ if (event.source !== "interactive")
78
+ return;
79
+ const yeniMetin = aliasCevir(event.text);
80
+ if (!yeniMetin)
81
+ return;
82
+ // Komutu pi'nin orijinal versiyonuna transform et
83
+ return {
84
+ action: "transform",
85
+ text: yeniMetin,
86
+ images: event.images,
87
+ };
88
+ });
89
+ }
90
+ //# sourceMappingURL=turkce-aliaslar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turkce-aliaslar.js","sourceRoot":"","sources":["../../src/extensions/turkce-aliaslar.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,12 @@
1
1
  /**
2
- * Türkçe Komutlar Extension
2
+ * Türkçe Komutlar Extension — /yardım, /çık, /selam ve diğerleri
3
3
  *
4
- * kanka için Türkçe slash komutları:
5
- * /yardım → Komut listesi (Türkçe)
6
- * /çık → Oturumdan çık
7
- * /selam → Karşılama mesajı (paskalya yumurtası)
8
- *
9
- * Not: Pi'nin orijinal komutları (/help, /exit, /clear, /status, /sessions, /new) da
10
- * her zaman çalışmaya devam eder.
4
+ * Pi'nin orijinal slash komutlarına Türkçe alias'lar TURKCE_ALIASLAR
5
+ * extension'ında. Bu extension sadece:
6
+ * - /yardım — kapsamlı yardım metni
7
+ * - /çık — graceful shutdown
8
+ * - /selam — paskalya yumurtası
9
+ * - /yeni, /temizle, /durum vb. — pi'de direkt yok, manuel implement
11
10
  */
12
11
  import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
13
12
  export default function turkceKomutlarExtension(pi: ExtensionAPI): void;
@@ -1 +1 @@
1
- {"version":3,"file":"turkce-komutlar.d.ts","sourceRoot":"","sources":["../../src/extensions/turkce-komutlar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAkBpE,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAAE,EAAE,YAAY,QAqE/D"}
1
+ {"version":3,"file":"turkce-komutlar.d.ts","sourceRoot":"","sources":["../../src/extensions/turkce-komutlar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AA+DpE,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,EAAE,EAAE,YAAY,QAmF/D"}