@akanjs/cli 3.0.0-beta.14 → 3.0.0-beta.16

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 (80) hide show
  1. package/.build-stamp +1 -1
  2. package/CodeAgent-zgccwajm.js +9 -0
  3. package/CodeAgentRpcHost-qvwfv0n9.js +7 -0
  4. package/CodeTui-993tx7gf.js +1103 -0
  5. package/README.md +3 -0
  6. package/{agent.command-bhwsc2aj.js → agent.command-n664dtcv.js} +6 -6
  7. package/akanCode.js +100 -0
  8. package/{application.command-436y543n.js → application.command-t5542jte.js} +6 -5
  9. package/{applicationBuildRunner-4f1wrba0.js → applicationBuildRunner-x4gbfn7y.js} +2 -2
  10. package/{applicationReleasePackager-jkjmy5ee.js → applicationReleasePackager-z61ep017.js} +1 -1
  11. package/buildBatch.proc.js +2 -2
  12. package/{capacitorApp-hqvsrec4.js → capacitorApp-shv3ajh5.js} +2 -2
  13. package/{cloud.command-3xn0xpz8.js → cloud.command-4x35k1z6.js} +9 -8
  14. package/cloud.script-3k8nbbpn.js +20 -0
  15. package/code.command-mrfb7a1g.js +147 -0
  16. package/commandManifest.json +1 -1
  17. package/consoleToStderr-h5bryj94.js +7 -0
  18. package/{context.command-hxh96cc3.js → context.command-pqsm5jrk.js} +14 -13
  19. package/context.runner-bys6ykcp.js +22 -0
  20. package/{devTui-4ted58a6.js → devTui-gy6mendg.js} +114 -8
  21. package/{devTuiView-1dj2yq7t.js → devTuiView-y1548wy6.js} +1 -1
  22. package/{guideline.command-cyw8c0m0.js → guideline.command-rpc2emw8.js} +6 -6
  23. package/guidelines/agentRule/agentRule.instruction.md +22 -2
  24. package/guidelines/conventions/conventions.instruction.md +3 -1
  25. package/incrementalBuilder.proc.js +1 -1
  26. package/{index-t8gvwcrx.js → index-018dszb3.js} +13 -4
  27. package/{index-8pkvrcv1.js → index-2pm1j01n.js} +3 -3
  28. package/{index-7f4dsf9v.js → index-3cymrzsb.js} +1 -1
  29. package/{index-1nwxbr2y.js → index-3mg4h788.js} +2 -2
  30. package/{index-em4swemt.js → index-4cvpzkq6.js} +3 -3
  31. package/index-4n4821gp.js +69 -0
  32. package/index-5405kc0x.js +2434 -0
  33. package/{index-tt6kzwj5.js → index-57p9p179.js} +3 -3
  34. package/{index-b3ae16mg.js → index-6na0sd2b.js} +1 -1
  35. package/index-7md2g9vw.js +6 -0
  36. package/index-8k16atqy.js +82 -0
  37. package/{index-fad0hhty.js → index-g9zghs4h.js} +22 -80
  38. package/index-jgrnpt6y.js +121 -0
  39. package/{index-31hmq4ys.js → index-kvzjda3v.js} +8 -8
  40. package/{index-sg1bgdhe.js → index-ns128c4q.js} +27 -105
  41. package/{index-5nyznra1.js → index-p4p9t45x.js} +3 -0
  42. package/{index-sh88vtye.js → index-qh7brn20.js} +1 -1
  43. package/{index-jwjaf9fy.js → index-qhtj9y6j.js} +44 -44
  44. package/{index-ys7dvdb3.js → index-sn7dnzq4.js} +1 -1
  45. package/index-sxg87a8f.js +727 -0
  46. package/{index-r73ha1rf.js → index-te0y1c0m.js} +4 -4
  47. package/{index-h7yw2z9n.js → index-twq9p2sp.js} +8 -8
  48. package/{index-15r9a10e.js → index-v17gj504.js} +2 -2
  49. package/{index-1mrmve4s.js → index-vpx68e4x.js} +2 -2
  50. package/index-wfwknnje.js +124 -0
  51. package/{index-9fbk3dbh.js → index-xjc7gg65.js} +4 -4
  52. package/{index-8tcj5wk8.js → index-zg0v1zte.js} +5 -5
  53. package/{index-vrwdx0zx.js → index-zn8qgeqx.js} +1 -1
  54. package/index.js +21 -20
  55. package/{library.command-1f9h2ex6.js → library.command-m8p2r1dh.js} +3 -3
  56. package/{localRegistry.command-4cbgz63s.js → localRegistry.command-tt00nwwg.js} +8 -7
  57. package/{module.command-ew0484va.js → module.command-mfzvqt0n.js} +5 -5
  58. package/{package.command-y2rh4np7.js → package.command-8sy6jjwy.js} +3 -3
  59. package/package.json +12 -2
  60. package/{page.command-e5h29fyt.js → page.command-taenb02b.js} +3 -3
  61. package/{primitive.command-50ecfzg4.js → primitive.command-7kpncmkk.js} +6 -6
  62. package/prompter-9mn3kp36.js +8 -0
  63. package/{quality.command-a2jytczs.js → quality.command-1ar94hrw.js} +2 -2
  64. package/{repair.command-c2amvt74.js → repair.command-n08t6j8p.js} +5 -5
  65. package/{scalar.command-bptz6aj6.js → scalar.command-mq8qfp4t.js} +4 -4
  66. package/skills/akan-debug/SKILL.md +42 -0
  67. package/skills/akan-deps/SKILL.md +50 -0
  68. package/skills/akan-err/SKILL.md +39 -0
  69. package/skills/akan-module/SKILL.md +45 -0
  70. package/skills/akan-scaffold/SKILL.md +76 -0
  71. package/skills/akan-scalar/SKILL.md +52 -0
  72. package/skills/akan-service/SKILL.md +34 -0
  73. package/skills/akan-store/SKILL.md +63 -0
  74. package/skills/akan-ui/SKILL.md +63 -0
  75. package/skills/akan-validate/SKILL.md +44 -0
  76. package/{subspace.command-kmemx1vm.js → subspace.command-x9897gj4.js} +4 -4
  77. package/{tunnel.command-67q8vsg5.js → tunnel.command-ht2es78c.js} +2 -2
  78. package/{workflow.command-2ze5y2xp.js → workflow.command-tvz4nm9n.js} +9 -9
  79. package/{workspace.command-2n385jkt.js → workspace.command-ayqa1rgt.js} +22 -20
  80. package/cloud.script-0a76c2g8.js +0 -19
@@ -1,12 +1,12 @@
1
1
  // @bun
2
2
  import {
3
3
  script
4
- } from "./index-b3ae16mg.js";
4
+ } from "./index-6na0sd2b.js";
5
5
  import {
6
6
  AppExecutor,
7
7
  LibExecutor,
8
8
  ModuleExecutor
9
- } from "./index-5nyznra1.js";
9
+ } from "./index-p4p9t45x.js";
10
10
  import {
11
11
  compactDiagnostics,
12
12
  createPrimitiveWriteReport,
@@ -39,10 +39,10 @@ import {
39
39
  hasSignalFactoryEntry,
40
40
  insertSignalFactoryEntry,
41
41
  addFieldUiPolicyForType
42
- } from "./index-jwjaf9fy.js";
42
+ } from "./index-qhtj9y6j.js";
43
43
  import {
44
44
  ModuleScript
45
- } from "./index-9fbk3dbh.js";
45
+ } from "./index-xjc7gg65.js";
46
46
 
47
47
  // pkgs/@akanjs/cli/primitive/primitive.script.ts
48
48
  import { capitalize } from "akanjs/common";
@@ -6,7 +6,7 @@ import {
6
6
  // pkgs/@akanjs/devkit/prompter.ts
7
7
  import fsPromise from "fs/promises";
8
8
  import { input, select } from "@inquirer/prompts";
9
- class Prompter {
9
+ class Prompter2 {
10
10
  static async#getGuidelineRoot() {
11
11
  const dirname = getDirname2(import.meta.url);
12
12
  const candidates = [`${dirname}/guidelines`, `${dirname}/../cli/guidelines`];
@@ -19,27 +19,27 @@ class Prompter {
19
19
  return candidates[0];
20
20
  }
21
21
  static async selectGuideline() {
22
- const guideNames = await Prompter.listGuidelines();
22
+ const guideNames = await Prompter2.listGuidelines();
23
23
  return await select({
24
24
  message: "Select a guideline",
25
25
  choices: guideNames.map((name) => ({ name, value: name }))
26
26
  });
27
27
  }
28
28
  static async listGuidelines() {
29
- const guidelineRoot = await Prompter.#getGuidelineRoot();
29
+ const guidelineRoot = await Prompter2.#getGuidelineRoot();
30
30
  return (await fsPromise.readdir(guidelineRoot)).filter((name) => !name.startsWith("_")).sort();
31
31
  }
32
32
  static async getGuideJson(guideName) {
33
- const guidelineRoot = await Prompter.#getGuidelineRoot();
33
+ const guidelineRoot = await Prompter2.#getGuidelineRoot();
34
34
  const filePath = `${guidelineRoot}/${guideName}/${guideName}.generate.json`;
35
35
  const guideJson = await fsPromise.readFile(filePath, "utf-8");
36
36
  return JSON.parse(guideJson);
37
37
  }
38
38
  static async getInstruction(guideName) {
39
- const guideNames = await Prompter.listGuidelines();
39
+ const guideNames = await Prompter2.listGuidelines();
40
40
  if (!guideNames.includes(guideName))
41
41
  throw new Error(`Unknown guideline "${guideName}". Available: ${guideNames.join(", ")}`);
42
- const guidelineRoot = await Prompter.#getGuidelineRoot();
42
+ const guidelineRoot = await Prompter2.#getGuidelineRoot();
43
43
  return await fsPromise.readFile(`${guidelineRoot}/${guideName}/${guideName}.instruction.md`, "utf-8");
44
44
  }
45
45
  static async getUpdateRequest(guideName) {
@@ -67,7 +67,7 @@ ${request}
67
67
  `;
68
68
  }
69
69
  async getDocumentation(guideName) {
70
- const guidelineRoot = await Prompter.#getGuidelineRoot();
70
+ const guidelineRoot = await Prompter2.#getGuidelineRoot();
71
71
  const filePath = `${guidelineRoot}/${guideName}/${guideName}.instruction.md`;
72
72
  const document = await fsPromise.readFile(filePath, "utf-8");
73
73
  return `\`\`\`markdown
@@ -77,4 +77,4 @@ ${document}
77
77
  }
78
78
  }
79
79
 
80
- export { Prompter };
80
+ export { Prompter2 };
@@ -7,7 +7,7 @@ import {
7
7
  isScannedRootEntry,
8
8
  AppExecutor,
9
9
  LibExecutor
10
- } from "./index-5nyznra1.js";
10
+ } from "./index-p4p9t45x.js";
11
11
  import {
12
12
  FileSys
13
13
  } from "./index-q0y2jq9j.js";
@@ -19,7 +19,7 @@ import {
19
19
  import {
20
20
  workflowRunArtifactPath,
21
21
  workflowSyncDir
22
- } from "./index-jwjaf9fy.js";
22
+ } from "./index-qhtj9y6j.js";
23
23
 
24
24
  // pkgs/@akanjs/devkit/akanContext.ts
25
25
  import { readdir } from "fs/promises";
@@ -2,12 +2,12 @@
2
2
  import {
3
3
  runner,
4
4
  script
5
- } from "./index-b3ae16mg.js";
5
+ } from "./index-6na0sd2b.js";
6
6
  import {
7
7
  generatedFilesForSync,
8
8
  createPassedPrimitiveReport,
9
9
  scalarChangedFiles
10
- } from "./index-jwjaf9fy.js";
10
+ } from "./index-qhtj9y6j.js";
11
11
  import {
12
12
  pluralizeName
13
13
  } from "./index-nz8prx9g.js";
@@ -0,0 +1,124 @@
1
+ // @bun
2
+ // pkgs/@akanjs/devkit/codeAgent/agent/akanCodeModel.ts
3
+ var akanCodeDefaultModel2 = { provider: "deepseek", id: "deepseek-v4-flash" };
4
+ var catalogueMissesImages = new Set(["deepseek/deepseek-v4-flash"]);
5
+ var correctInputs = (model) => {
6
+ if (!model || model.input.includes("image"))
7
+ return model;
8
+ if (!catalogueMissesImages.has(`${model.provider}/${model.id}`))
9
+ return model;
10
+ return { ...model, input: [...model.input, "image"] };
11
+ };
12
+ var akanCodeModel2 = async (registry, ref) => {
13
+ if (ref) {
14
+ const requested = registry.find(ref.provider, ref.id);
15
+ if (!requested)
16
+ throw new Error(`Unknown model: ${ref.provider}/${ref.id}`);
17
+ if (!registry.hasConfiguredAuth(requested))
18
+ throw new Error(`No API key configured for ${ref.provider}. Set ${ref.provider.toUpperCase()}_API_KEY.`);
19
+ return correctInputs(requested);
20
+ }
21
+ const fallback = registry.find(akanCodeDefaultModel2.provider, akanCodeDefaultModel2.id);
22
+ if (fallback && registry.hasConfiguredAuth(fallback))
23
+ return correctInputs(fallback);
24
+ return correctInputs(registry.getAvailable()[0]);
25
+ };
26
+ var akanCodeModelSupportsImages2 = (model) => !!model?.input.includes("image");
27
+ var akanCodeModelWarnings2 = (model, compactionFloor) => {
28
+ if (!model)
29
+ return [];
30
+ if (model.contextWindow >= compactionFloor)
31
+ return [];
32
+ return [
33
+ `${model.provider}/${model.id} declares a ${model.contextWindow}-token context window, below the ${compactionFloor} the compaction policy needs, so every turn will compact immediately. Check the model entry in ~/.akan/code/models.json.`
34
+ ];
35
+ };
36
+
37
+ // pkgs/@akanjs/devkit/codeAgent/agent/CodeAgentStreamPrinter.ts
38
+ import { codeAgentEventLabel } from "akanjs/common";
39
+ import chalk from "chalk";
40
+
41
+ class CodeAgentStreamPrinter2 {
42
+ #options;
43
+ #write;
44
+ #streaming = false;
45
+ constructor(options = {}) {
46
+ this.#options = options;
47
+ this.#write = options.write ?? ((text) => process.stdout.write(text));
48
+ }
49
+ print(event) {
50
+ if (this.#options.json)
51
+ return this.#write(`${JSON.stringify(event)}
52
+ `);
53
+ switch (event.type) {
54
+ case "text_delta":
55
+ this.#streaming = true;
56
+ return this.#write(event.text);
57
+ case "thinking_delta":
58
+ if (!this.#options.thinking)
59
+ return;
60
+ this.#streaming = true;
61
+ return this.#write(chalk.dim(event.text));
62
+ case "message":
63
+ return;
64
+ case "tool_start":
65
+ return this.#line(chalk.cyan(`\u2192 ${event.tool.title}`));
66
+ case "tool_progress":
67
+ return;
68
+ case "tool_end":
69
+ return this.#line(CodeAgentStreamPrinter2.#toolEnd(event));
70
+ case "session":
71
+ return this.#line(chalk.dim(codeAgentEventLabel(event)));
72
+ case "turn_end":
73
+ if (event.stopReason === "truncated")
74
+ return this.#line(chalk.yellow(codeAgentEventLabel(event)));
75
+ return;
76
+ case "turn_start":
77
+ case "idle":
78
+ case "queue":
79
+ case "context":
80
+ return;
81
+ case "question":
82
+ return this.#line(chalk.yellow(`? ${event.question.prompt}`));
83
+ case "approval":
84
+ return this.#line(chalk.yellow(`approve? ${event.request.summary}`));
85
+ case "notice":
86
+ return this.#line(CodeAgentStreamPrinter2.#notice(event.level, event.message));
87
+ case "error":
88
+ return this.#line(chalk.red(`error: ${event.message}`));
89
+ default:
90
+ return this.#line(chalk.dim(codeAgentEventLabel(event)));
91
+ }
92
+ }
93
+ finish() {
94
+ if (this.#streaming)
95
+ this.#write(`
96
+ `);
97
+ this.#streaming = false;
98
+ }
99
+ #line(text) {
100
+ if (this.#streaming)
101
+ this.#write(`
102
+ `);
103
+ this.#streaming = false;
104
+ this.#write(`${text}
105
+ `);
106
+ }
107
+ static #toolEnd(event) {
108
+ if (event.outcome === "ok")
109
+ return chalk.green(`\u2713 ${event.tool.title}`);
110
+ if (event.outcome === "blocked")
111
+ return chalk.yellow(`\u29B8 ${event.tool.title} \u2014 ${event.output}`);
112
+ return chalk.red(`\u2717 ${event.tool.title} \u2014 ${event.output.split(`
113
+ `)[0] ?? ""}`);
114
+ }
115
+ static #notice(level, message) {
116
+ if (level === "error")
117
+ return chalk.red(message);
118
+ if (level === "warning")
119
+ return chalk.yellow(message);
120
+ return chalk.dim(message);
121
+ }
122
+ }
123
+
124
+ export { akanCodeDefaultModel2, akanCodeModel2, akanCodeModelSupportsImages2, akanCodeModelWarnings2, CodeAgentStreamPrinter2 };
@@ -2,10 +2,10 @@
2
2
  import {
3
3
  runner,
4
4
  script
5
- } from "./index-b3ae16mg.js";
5
+ } from "./index-6na0sd2b.js";
6
6
  import {
7
7
  ModuleExecutor
8
- } from "./index-5nyznra1.js";
8
+ } from "./index-p4p9t45x.js";
9
9
  import {
10
10
  sourceFile,
11
11
  moduleSourcePaths,
@@ -13,10 +13,10 @@ import {
13
13
  createPassedPrimitiveReport,
14
14
  bilingualLabelForField,
15
15
  bilingualDescriptionForField
16
- } from "./index-jwjaf9fy.js";
16
+ } from "./index-qhtj9y6j.js";
17
17
  import {
18
18
  PageScript
19
- } from "./index-sh88vtye.js";
19
+ } from "./index-qh7brn20.js";
20
20
  import {
21
21
  pluralizeName
22
22
  } from "./index-nz8prx9g.js";
@@ -5,19 +5,19 @@ import {
5
5
  } from "./index-myj01w9r.js";
6
6
  import {
7
7
  script
8
- } from "./index-b3ae16mg.js";
8
+ } from "./index-6na0sd2b.js";
9
9
  import {
10
10
  PkgExecutor
11
- } from "./index-5nyznra1.js";
11
+ } from "./index-p4p9t45x.js";
12
12
  import {
13
13
  ApplicationScript
14
- } from "./index-sg1bgdhe.js";
14
+ } from "./index-ns128c4q.js";
15
15
  import {
16
16
  PackageScript
17
- } from "./index-t8gvwcrx.js";
17
+ } from "./index-018dszb3.js";
18
18
  import {
19
19
  CloudRunner
20
- } from "./index-tt6kzwj5.js";
20
+ } from "./index-57p9p179.js";
21
21
 
22
22
  // pkgs/@akanjs/cli/cloud/cloud.script.ts
23
23
  import { Logger } from "akanjs/common";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  AsyncDefaultExportDetector,
4
4
  resolveSsrPageEntriesForApp
5
- } from "./index-5nyznra1.js";
5
+ } from "./index-p4p9t45x.js";
6
6
  import {
7
7
  BarrelAnalyzer,
8
8
  createBarrelImportsPlugin,
package/index.js CHANGED
@@ -4,9 +4,9 @@ import {
4
4
  getTargetMetas,
5
5
  getTargetCommandNames,
6
6
  runCommands
7
- } from "./index-b3ae16mg.js";
7
+ } from "./index-6na0sd2b.js";
8
8
  import"./index-q0y2jq9j.js";
9
- import"./index-5nyznra1.js";
9
+ import"./index-p4p9t45x.js";
10
10
  import"./index-6wwzs1bc.js";
11
11
 
12
12
  // pkgs/@akanjs/cli/commandManifest.ts
@@ -14,24 +14,25 @@ import path from "path";
14
14
 
15
15
  // pkgs/@akanjs/cli/commandModules.ts
16
16
  var commandModules = {
17
- workspace: async () => (await import("./workspace.command-2n385jkt.js")).WorkspaceCommand,
18
- agent: async () => (await import("./agent.command-bhwsc2aj.js")).AgentCommand,
19
- application: async () => (await import("./application.command-436y543n.js")).ApplicationCommand,
20
- library: async () => (await import("./library.command-1f9h2ex6.js")).LibraryCommand,
21
- localRegistry: async () => (await import("./localRegistry.command-4cbgz63s.js")).LocalRegistryCommand,
22
- package: async () => (await import("./package.command-y2rh4np7.js")).PackageCommand,
23
- module: async () => (await import("./module.command-ew0484va.js")).ModuleCommand,
24
- page: async () => (await import("./page.command-e5h29fyt.js")).PageCommand,
25
- context: async () => (await import("./context.command-hxh96cc3.js")).ContextCommand,
26
- cloud: async () => (await import("./cloud.command-3xn0xpz8.js")).CloudCommand,
27
- subspace: async () => (await import("./subspace.command-kmemx1vm.js")).SubspaceCommand,
28
- guideline: async () => (await import("./guideline.command-cyw8c0m0.js")).GuidelineCommand,
29
- scalar: async () => (await import("./scalar.command-bptz6aj6.js")).ScalarCommand,
30
- primitive: async () => (await import("./primitive.command-50ecfzg4.js")).PrimitiveCommand,
31
- quality: async () => (await import("./quality.command-a2jytczs.js")).QualityCommand,
32
- repair: async () => (await import("./repair.command-c2amvt74.js")).RepairCommand,
33
- workflow: async () => (await import("./workflow.command-2ze5y2xp.js")).WorkflowCommand,
34
- tunnel: async () => (await import("./tunnel.command-67q8vsg5.js")).TunnelCommand
17
+ workspace: async () => (await import("./workspace.command-ayqa1rgt.js")).WorkspaceCommand,
18
+ agent: async () => (await import("./agent.command-n664dtcv.js")).AgentCommand,
19
+ code: async () => (await import("./code.command-mrfb7a1g.js")).CodeCommand,
20
+ application: async () => (await import("./application.command-t5542jte.js")).ApplicationCommand,
21
+ library: async () => (await import("./library.command-m8p2r1dh.js")).LibraryCommand,
22
+ localRegistry: async () => (await import("./localRegistry.command-tt00nwwg.js")).LocalRegistryCommand,
23
+ package: async () => (await import("./package.command-8sy6jjwy.js")).PackageCommand,
24
+ module: async () => (await import("./module.command-mfzvqt0n.js")).ModuleCommand,
25
+ page: async () => (await import("./page.command-taenb02b.js")).PageCommand,
26
+ context: async () => (await import("./context.command-pqsm5jrk.js")).ContextCommand,
27
+ cloud: async () => (await import("./cloud.command-4x35k1z6.js")).CloudCommand,
28
+ subspace: async () => (await import("./subspace.command-x9897gj4.js")).SubspaceCommand,
29
+ guideline: async () => (await import("./guideline.command-rpc2emw8.js")).GuidelineCommand,
30
+ scalar: async () => (await import("./scalar.command-mq8qfp4t.js")).ScalarCommand,
31
+ primitive: async () => (await import("./primitive.command-7kpncmkk.js")).PrimitiveCommand,
32
+ quality: async () => (await import("./quality.command-1ar94hrw.js")).QualityCommand,
33
+ repair: async () => (await import("./repair.command-n08t6j8p.js")).RepairCommand,
34
+ workflow: async () => (await import("./workflow.command-tvz4nm9n.js")).WorkflowCommand,
35
+ tunnel: async () => (await import("./tunnel.command-ht2es78c.js")).TunnelCommand
35
36
  };
36
37
  var commandModuleIds = Object.keys(commandModules);
37
38
 
@@ -3,13 +3,13 @@ import {
3
3
  Lib,
4
4
  Workspace,
5
5
  command
6
- } from "./index-b3ae16mg.js";
6
+ } from "./index-6na0sd2b.js";
7
7
  import"./index-q0y2jq9j.js";
8
- import"./index-5nyznra1.js";
8
+ import"./index-p4p9t45x.js";
9
9
  import"./index-6wwzs1bc.js";
10
10
  import {
11
11
  LibraryScript
12
- } from "./index-1nwxbr2y.js";
12
+ } from "./index-3mg4h788.js";
13
13
 
14
14
  // pkgs/@akanjs/cli/library/library.command.ts
15
15
  class LibraryCommand extends command("library", [LibraryScript], ({ public: target }) => ({
@@ -4,27 +4,28 @@ import {
4
4
  runner,
5
5
  script,
6
6
  command
7
- } from "./index-b3ae16mg.js";
7
+ } from "./index-6na0sd2b.js";
8
8
  import"./index-q0y2jq9j.js";
9
9
  import {
10
10
  PkgExecutor
11
- } from "./index-5nyznra1.js";
11
+ } from "./index-p4p9t45x.js";
12
12
  import"./index-6wwzs1bc.js";
13
13
  import {
14
14
  ApplicationScript
15
- } from "./index-sg1bgdhe.js";
16
- import"./index-1nwxbr2y.js";
15
+ } from "./index-ns128c4q.js";
16
+ import"./index-3mg4h788.js";
17
17
  import"./index-hwkygn9s.js";
18
+ import"./index-7md2g9vw.js";
18
19
  import"./index-myj01w9r.js";
19
20
  import {
20
21
  getNpmRegistryUrl,
21
22
  CloudRunner
22
- } from "./index-tt6kzwj5.js";
23
+ } from "./index-57p9p179.js";
23
24
  import"./index-kcxmv48c.js";
24
25
  import {
25
26
  PackageScript
26
- } from "./index-t8gvwcrx.js";
27
- import"./index-ys7dvdb3.js";
27
+ } from "./index-018dszb3.js";
28
+ import"./index-sn7dnzq4.js";
28
29
 
29
30
  // pkgs/@akanjs/cli/localRegistry/localRegistry.runner.ts
30
31
  import { mkdir, rm } from "fs/promises";
@@ -3,17 +3,17 @@ import {
3
3
  Sys,
4
4
  Module,
5
5
  command
6
- } from "./index-b3ae16mg.js";
6
+ } from "./index-6na0sd2b.js";
7
7
  import"./index-q0y2jq9j.js";
8
- import"./index-5nyznra1.js";
8
+ import"./index-p4p9t45x.js";
9
9
  import"./index-6wwzs1bc.js";
10
10
  import {
11
11
  renderPrimitiveReport
12
- } from "./index-jwjaf9fy.js";
13
- import"./index-sh88vtye.js";
12
+ } from "./index-qhtj9y6j.js";
13
+ import"./index-qh7brn20.js";
14
14
  import {
15
15
  ModuleScript
16
- } from "./index-9fbk3dbh.js";
16
+ } from "./index-xjc7gg65.js";
17
17
 
18
18
  // pkgs/@akanjs/cli/module/module.command.ts
19
19
  import { Logger, lowerlize } from "akanjs/common";
@@ -3,14 +3,14 @@ import {
3
3
  Pkg,
4
4
  Workspace,
5
5
  command
6
- } from "./index-b3ae16mg.js";
6
+ } from "./index-6na0sd2b.js";
7
7
  import"./index-q0y2jq9j.js";
8
- import"./index-5nyznra1.js";
8
+ import"./index-p4p9t45x.js";
9
9
  import"./index-6wwzs1bc.js";
10
10
  import"./index-kcxmv48c.js";
11
11
  import {
12
12
  PackageScript
13
- } from "./index-t8gvwcrx.js";
13
+ } from "./index-018dszb3.js";
14
14
 
15
15
  // pkgs/@akanjs/cli/package/package.command.ts
16
16
  class PackageCommand extends command("package", [PackageScript], ({ public: target }) => ({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@akanjs/cli",
3
- "version": "3.0.0-beta.14",
3
+ "version": "3.0.0-beta.16",
4
4
  "sourceType": "module",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -24,13 +24,21 @@
24
24
  "import": "./index.js",
25
25
  "default": "./index.js"
26
26
  },
27
+ "./code": {
28
+ "import": "./akanCode.js",
29
+ "default": "./akanCode.js"
30
+ },
27
31
  "./package.json": "./package.json"
28
32
  },
29
33
  "dependencies": {
34
+ "@earendil-works/pi-agent-core": "0.80.6",
35
+ "@earendil-works/pi-ai": "0.80.6",
36
+ "@earendil-works/pi-coding-agent": "0.80.6",
37
+ "@earendil-works/pi-tui": "0.80.6",
30
38
  "@inquirer/prompts": "^8.4.3",
31
39
  "@tailwindcss/node": "^4.3.0",
32
40
  "@trapezedev/project": "^7.1.4",
33
- "akanjs": "3.0.0-beta.14",
41
+ "akanjs": "3.0.0-beta.16",
34
42
  "chalk": "^5.6.2",
35
43
  "commander": "^14.0.3",
36
44
  "dayjs": "^1.11.20",
@@ -42,9 +50,11 @@
42
50
  "qrcode": "^1.5.4",
43
51
  "react": "19.2.7",
44
52
  "ssh2": "^1.17.0",
53
+ "string-width": "^8.2.1",
45
54
  "subset-font": "^2.5.0",
46
55
  "tailwind-scrollbar": "^4.0.2",
47
56
  "tailwindcss": "^4.3.0",
57
+ "typebox": "1.1.38",
48
58
  "typescript": "^6.0.3"
49
59
  },
50
60
  "devDependencies": {},
@@ -3,13 +3,13 @@ import {
3
3
  App,
4
4
  Module,
5
5
  command
6
- } from "./index-b3ae16mg.js";
6
+ } from "./index-6na0sd2b.js";
7
7
  import"./index-q0y2jq9j.js";
8
- import"./index-5nyznra1.js";
8
+ import"./index-p4p9t45x.js";
9
9
  import"./index-6wwzs1bc.js";
10
10
  import {
11
11
  PageScript
12
- } from "./index-sh88vtye.js";
12
+ } from "./index-qh7brn20.js";
13
13
 
14
14
  // pkgs/@akanjs/cli/page/page.command.ts
15
15
  class PageCommand extends command("page", [PageScript], ({ public: target }) => ({
@@ -2,18 +2,18 @@
2
2
  import {
3
3
  Workspace,
4
4
  command
5
- } from "./index-b3ae16mg.js";
5
+ } from "./index-6na0sd2b.js";
6
6
  import"./index-q0y2jq9j.js";
7
- import"./index-5nyznra1.js";
7
+ import"./index-p4p9t45x.js";
8
8
  import"./index-6wwzs1bc.js";
9
9
  import {
10
10
  renderPrimitiveReport
11
- } from "./index-jwjaf9fy.js";
12
- import"./index-sh88vtye.js";
13
- import"./index-9fbk3dbh.js";
11
+ } from "./index-qhtj9y6j.js";
12
+ import"./index-qh7brn20.js";
13
+ import"./index-xjc7gg65.js";
14
14
  import {
15
15
  PrimitiveScript
16
- } from "./index-r73ha1rf.js";
16
+ } from "./index-te0y1c0m.js";
17
17
 
18
18
  // pkgs/@akanjs/cli/primitive/primitive.command.ts
19
19
  import { Logger } from "akanjs/common";
@@ -0,0 +1,8 @@
1
+ // @bun
2
+ import {
3
+ Prompter2
4
+ } from "./index-twq9p2sp.js";
5
+ import"./index-6wwzs1bc.js";
6
+ export {
7
+ Prompter2 as Prompter
8
+ };
@@ -4,13 +4,13 @@ import {
4
4
  runner,
5
5
  script,
6
6
  command
7
- } from "./index-b3ae16mg.js";
7
+ } from "./index-6na0sd2b.js";
8
8
  import"./index-q0y2jq9j.js";
9
9
  import {
10
10
  rootAllowedFiles,
11
11
  rootAllowedDirs,
12
12
  isAllowedLibFacetRootFile
13
- } from "./index-5nyznra1.js";
13
+ } from "./index-p4p9t45x.js";
14
14
  import"./index-6wwzs1bc.js";
15
15
 
16
16
  // pkgs/@akanjs/devkit/qualityScanner.ts
@@ -3,16 +3,16 @@ import {
3
3
  Workspace,
4
4
  script,
5
5
  command
6
- } from "./index-b3ae16mg.js";
6
+ } from "./index-6na0sd2b.js";
7
7
  import"./index-q0y2jq9j.js";
8
- import"./index-5nyznra1.js";
8
+ import"./index-p4p9t45x.js";
9
9
  import"./index-6wwzs1bc.js";
10
10
  import"./index-by5gpp8x.js";
11
- import"./index-jwjaf9fy.js";
12
- import"./index-15r9a10e.js";
11
+ import"./index-qhtj9y6j.js";
12
+ import"./index-v17gj504.js";
13
13
  import {
14
14
  RepairRunner
15
- } from "./index-em4swemt.js";
15
+ } from "./index-4cvpzkq6.js";
16
16
 
17
17
  // pkgs/@akanjs/cli/repair/repair.script.ts
18
18
  import { Logger } from "akanjs/common";
@@ -2,16 +2,16 @@
2
2
  import {
3
3
  Sys,
4
4
  command
5
- } from "./index-b3ae16mg.js";
5
+ } from "./index-6na0sd2b.js";
6
6
  import"./index-q0y2jq9j.js";
7
- import"./index-5nyznra1.js";
7
+ import"./index-p4p9t45x.js";
8
8
  import"./index-6wwzs1bc.js";
9
9
  import {
10
10
  renderPrimitiveReport
11
- } from "./index-jwjaf9fy.js";
11
+ } from "./index-qhtj9y6j.js";
12
12
  import {
13
13
  ScalarScript
14
- } from "./index-1mrmve4s.js";
14
+ } from "./index-vpx68e4x.js";
15
15
 
16
16
  // pkgs/@akanjs/cli/scalar/scalar.command.ts
17
17
  import { Logger, lowerlize } from "akanjs/common";