@kubbisec/ai-linux-arm64 0.1.20 → 0.1.22

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 (131) hide show
  1. package/bin/kubbisec +0 -0
  2. package/bundled/clarify/clarify-gate-state.d.ts +1 -1
  3. package/bundled/clarify/clarify-gate-state.js +3 -3
  4. package/bundled/clarify/clarify-gate.d.ts +21 -14
  5. package/bundled/clarify/clarify-gate.js +118 -111
  6. package/bundled/clarify/clarify-select-panel.d.ts +16 -9
  7. package/bundled/clarify/clarify-select-panel.js +65 -67
  8. package/bundled/clarify/clarify-ui-state.d.ts +12 -10
  9. package/bundled/clarify/clarify-ui-state.js +26 -26
  10. package/bundled/clarify/parse-clarify-answer.d.ts +29 -18
  11. package/bundled/clarify/parse-clarify-answer.js +39 -45
  12. package/bundled/clarify/question-format.d.ts +34 -23
  13. package/bundled/clarify/question-format.js +112 -119
  14. package/bundled/clarify/questionnaire-tool.d.ts +28 -17
  15. package/bundled/clarify/questionnaire-tool.js +180 -144
  16. package/bundled/clarify/scope-discovery.d.ts +8 -5
  17. package/bundled/clarify/scope-discovery.js +102 -110
  18. package/bundled/clarify/session-questionnaire.d.ts +48 -13
  19. package/bundled/clarify/session-questionnaire.js +304 -312
  20. package/bundled/clarify/session-questionnaire.types.d.ts +29 -27
  21. package/bundled/clarify/session-questionnaire.types.js +10 -10
  22. package/bundled/components/kubbisec-model-selector.d.ts +47 -34
  23. package/bundled/components/kubbisec-model-selector.js +187 -177
  24. package/bundled/config/config.d.ts +6 -6
  25. package/bundled/config/config.js +55 -55
  26. package/bundled/config/detect-local-llm-providers.d.ts +26 -16
  27. package/bundled/config/detect-local-llm-providers.js +130 -142
  28. package/bundled/config/ensure-kubbisec-project-settings.d.ts +9 -9
  29. package/bundled/config/ensure-kubbisec-project-settings.js +44 -48
  30. package/bundled/config/extended-context.d.ts +5 -6
  31. package/bundled/config/extended-context.js +23 -22
  32. package/bundled/config/feature-flags.d.ts +10 -2
  33. package/bundled/config/feature-flags.js +8 -2
  34. package/bundled/config/format-kubbisec-footer-status.d.ts +1 -1
  35. package/bundled/config/format-kubbisec-footer-status.js +26 -31
  36. package/bundled/config/kubbisec-extension-manifest.d.ts +22 -2
  37. package/bundled/config/kubbisec-extension-manifest.js +20 -20
  38. package/bundled/config/llm-config-mutations.d.ts +51 -25
  39. package/bundled/config/llm-config-mutations.js +173 -182
  40. package/bundled/config/llm-config.d.ts +54 -41
  41. package/bundled/config/llm-config.js +199 -199
  42. package/bundled/config/llm-provider-catalog.d.ts +18 -15
  43. package/bundled/config/llm-provider-catalog.js +45 -46
  44. package/bundled/config/materialize-kubbisec-pi-resources.d.ts +1 -1
  45. package/bundled/config/materialize-kubbisec-pi-resources.js +174 -183
  46. package/bundled/config/register-custom-llm-providers.d.ts +11 -5
  47. package/bundled/config/register-custom-llm-providers.js +17 -15
  48. package/bundled/config/register-kubbisec-llm-provider.d.ts +14 -10
  49. package/bundled/config/register-kubbisec-llm-provider.js +50 -42
  50. package/bundled/config/resolve-agents-context-file.d.ts +1 -1
  51. package/bundled/config/resolve-agents-context-file.js +33 -34
  52. package/bundled/config/resource-budget.d.ts +12 -12
  53. package/bundled/config/resource-budget.js +28 -28
  54. package/bundled/config/sync-kubbisec-pi-models.d.ts +6 -3
  55. package/bundled/config/sync-kubbisec-pi-models.js +58 -58
  56. package/bundled/copy/cli-reference-index.d.ts +3 -2
  57. package/bundled/copy/cli-reference-index.js +1 -1
  58. package/bundled/copy/kubbisec-shell-copy.d.ts +11 -6
  59. package/bundled/copy/kubbisec-shell-copy.js +1 -1
  60. package/bundled/extensions/cli-local-shared.d.ts +45 -26
  61. package/bundled/extensions/cli-local-shared.js +128 -118
  62. package/bundled/extensions/kubbisec-aspm-local.extension.d.ts +18 -15
  63. package/bundled/extensions/kubbisec-aspm-local.extension.js +118 -114
  64. package/bundled/extensions/kubbisec-brand.extension.d.ts +1 -1
  65. package/bundled/extensions/kubbisec-brand.extension.js +25 -25
  66. package/bundled/extensions/kubbisec-byok-provider.extension.d.ts +1 -1
  67. package/bundled/extensions/kubbisec-byok-provider.extension.js +2 -2
  68. package/bundled/extensions/kubbisec-clarify.extension.d.ts +64 -35
  69. package/bundled/extensions/kubbisec-clarify.extension.js +323 -305
  70. package/bundled/extensions/kubbisec-exit.extension.d.ts +1 -1
  71. package/bundled/extensions/kubbisec-exit.extension.js +29 -32
  72. package/bundled/extensions/kubbisec-extended-context.extension.d.ts +1 -1
  73. package/bundled/extensions/kubbisec-extended-context.extension.js +56 -43
  74. package/bundled/extensions/kubbisec-footer.extension.d.ts +14 -14
  75. package/bundled/extensions/kubbisec-footer.extension.js +205 -215
  76. package/bundled/extensions/kubbisec-github-local.extension.d.ts +26 -18
  77. package/bundled/extensions/kubbisec-github-local.extension.js +123 -116
  78. package/bundled/extensions/kubbisec-llm-config.extension.d.ts +1 -1
  79. package/bundled/extensions/kubbisec-llm-config.extension.js +200 -181
  80. package/bundled/extensions/kubbisec-memory.extension.d.ts +9 -7
  81. package/bundled/extensions/kubbisec-memory.extension.js +88 -95
  82. package/bundled/extensions/kubbisec-naus-local.extension.d.ts +18 -15
  83. package/bundled/extensions/kubbisec-naus-local.extension.js +132 -111
  84. package/bundled/extensions/kubbisec-platform-tools.extension.d.ts +31 -21
  85. package/bundled/extensions/kubbisec-platform-tools.extension.js +152 -152
  86. package/bundled/extensions/kubbisec-runtime-status.extension.d.ts +10 -8
  87. package/bundled/extensions/kubbisec-runtime-status.extension.js +15 -13
  88. package/bundled/extensions/kubbisec-scope.extension.d.ts +12 -7
  89. package/bundled/extensions/kubbisec-scope.extension.js +13 -13
  90. package/bundled/extensions/kubbisec-skill-mentions.extension.d.ts +27 -16
  91. package/bundled/extensions/kubbisec-skill-mentions.extension.js +73 -63
  92. package/bundled/extensions/kubbisec-skill-telemetry.extension.d.ts +2 -3
  93. package/bundled/extensions/kubbisec-skill-telemetry.extension.js +59 -64
  94. package/bundled/extensions/kubbisec-theme-lock.extension.d.ts +1 -1
  95. package/bundled/extensions/kubbisec-theme-lock.extension.js +33 -34
  96. package/bundled/extensions/kubbisec-ui.extension.d.ts +1 -1
  97. package/bundled/extensions/kubbisec-ui.extension.js +114 -109
  98. package/bundled/extensions/kubbisec-workflow.extension.d.ts +20 -18
  99. package/bundled/extensions/kubbisec-workflow.extension.js +138 -140
  100. package/bundled/node_modules/@aspm/shared/dist/redaction.test.d.ts +2 -0
  101. package/bundled/node_modules/@aspm/shared/dist/redaction.test.d.ts.map +1 -0
  102. package/bundled/node_modules/@aspm/shared/dist/redaction.test.js +626 -0
  103. package/bundled/node_modules/@aspm/shared/dist/redaction.test.js.map +1 -0
  104. package/bundled/resolve-bundled-dist-root.js +122 -131
  105. package/bundled/skills/at-path-mentions.d.ts +1 -1
  106. package/bundled/skills/at-path-mentions.js +146 -153
  107. package/bundled/skills/chat-mention-render.d.ts +2 -2
  108. package/bundled/skills/chat-mention-render.js +121 -126
  109. package/bundled/skills/chat-mentions.d.ts +17 -8
  110. package/bundled/skills/chat-mentions.js +76 -76
  111. package/bundled/skills/list-bundled-skills.d.ts +3 -3
  112. package/bundled/skills/list-bundled-skills.js +33 -35
  113. package/bundled/skills/skill-mention.d.ts +10 -2
  114. package/bundled/skills/skill-mention.js +10 -2
  115. package/bundled/theme/clear-terminal.d.ts +1 -1
  116. package/bundled/theme/clear-terminal.js +3 -4
  117. package/bundled/theme/footer-render-hook.d.ts +1 -1
  118. package/bundled/theme/footer-render-hook.js +3 -3
  119. package/bundled/theme/kubbisec-brand-fg.d.ts +1 -1
  120. package/bundled/theme/kubbisec-brand-fg.js +2 -2
  121. package/bundled/theme/kubbisec-menu-themes.d.ts +7 -7
  122. package/bundled/theme/kubbisec-menu-themes.js +30 -31
  123. package/bundled/theme/kubbisec-theme-name.d.ts +1 -1
  124. package/bundled/theme/kubbisec-theme-name.js +1 -1
  125. package/bundled/theme/patch-pi-settings-theme.runtime.d.ts +1 -1
  126. package/bundled/theme/patch-pi-settings-theme.runtime.js +11 -10
  127. package/bundled/theme/render-compact-header.d.ts +13 -5
  128. package/bundled/theme/render-compact-header.js +127 -129
  129. package/bundled/workflow/session-workflow-mode.d.ts +1 -1
  130. package/bundled/workflow/session-workflow-mode.js +33 -33
  131. package/package.json +1 -1
@@ -6,130 +6,137 @@ import * as fs from "node:fs";
6
6
  import * as path from "node:path";
7
7
  import { summarizeSubprocessFailure, toUserError } from "@aspm/shared/cli-user-error";
8
8
  import { Type } from "@earendil-works/pi-ai";
9
- import { EXTENDED_CONTEXT_DENY_MESSAGE, extendedContextEnabled, resolveExtendedWorkspace, } from "../config/extended-context.js";
9
+ import {
10
+ EXTENDED_CONTEXT_DENY_MESSAGE,
11
+ extendedContextEnabled,
12
+ resolveExtendedWorkspace,
13
+ } from "../config/extended-context.js";
14
+
10
15
  function resolveWorkspace() {
11
- return resolveExtendedWorkspace();
16
+ return resolveExtendedWorkspace();
12
17
  }
13
18
  function execCapture(bin, args, cwd) {
14
- return new Promise((resolve) => {
15
- const child = spawn(bin, args, {
16
- cwd,
17
- env: {
18
- ...process.env,
19
- GIT_TERMINAL_PROMPT: "0",
20
- GH_PROMPT_DISABLED: "1",
21
- },
22
- stdio: ["ignore", "pipe", "pipe"],
23
- });
24
- let stdout = "";
25
- let stderr = "";
26
- child.stdout?.on("data", (c) => {
27
- stdout += String(c);
28
- });
29
- child.stderr?.on("data", (c) => {
30
- stderr += String(c);
31
- });
32
- child.on("error", (err) => {
33
- resolve({ code: 127, stdout: "", stderr: toUserError(err).detail });
34
- });
35
- child.on("close", (code) => resolve({ code: code ?? 1, stdout, stderr }));
19
+ return new Promise((resolve) => {
20
+ const child = spawn(bin, args, {
21
+ cwd,
22
+ env: {
23
+ ...process.env,
24
+ GIT_TERMINAL_PROMPT: "0",
25
+ GH_PROMPT_DISABLED: "1",
26
+ },
27
+ stdio: ["ignore", "pipe", "pipe"],
36
28
  });
29
+ let stdout = "";
30
+ let stderr = "";
31
+ child.stdout?.on("data", (c) => {
32
+ stdout += String(c);
33
+ });
34
+ child.stderr?.on("data", (c) => {
35
+ stderr += String(c);
36
+ });
37
+ child.on("error", (err) => {
38
+ resolve({ code: 127, stdout: "", stderr: toUserError(err).detail });
39
+ });
40
+ child.on("close", (code) => resolve({ code: code ?? 1, stdout, stderr }));
41
+ });
37
42
  }
38
43
  function formatGitSummary(bin, label, result) {
39
- if (result.code === 0 && result.stdout.trim()) {
40
- return `${label}:\n${result.stdout.trim()}`;
41
- }
42
- if (result.code === 0) {
43
- return `${label}: (sem saída)`;
44
- }
45
- return summarizeSubprocessFailure({
46
- bin,
47
- code: result.code,
48
- stderr: result.stderr,
49
- stdout: result.stdout,
50
- });
44
+ if (result.code === 0 && result.stdout.trim()) {
45
+ return `${label}:\n${result.stdout.trim()}`;
46
+ }
47
+ if (result.code === 0) {
48
+ return `${label}: (sem saída)`;
49
+ }
50
+ return summarizeSubprocessFailure({
51
+ bin,
52
+ code: result.code,
53
+ stderr: result.stderr,
54
+ stdout: result.stdout,
55
+ });
51
56
  }
52
57
  function denyExtended() {
53
- return {
54
- content: [{ type: "text", text: EXTENDED_CONTEXT_DENY_MESSAGE }],
55
- };
58
+ return {
59
+ content: [{ type: "text", text: EXTENDED_CONTEXT_DENY_MESSAGE }],
60
+ };
56
61
  }
57
62
  export default function kubbisecGithubLocal(api) {
58
- api.registerTool({
59
- name: "github_local_status",
60
- label: "GitHub local status",
61
- description: "Reports gh auth and git remote on this machine (requires kubbisec chat --extended-context).",
62
- parameters: Type.Object({}),
63
- async execute() {
64
- if (!extendedContextEnabled())
65
- return denyExtended();
66
- const cwd = resolveWorkspace();
67
- const parts = [`workspace: ${cwd}`];
68
- const gh = await execCapture("gh", ["auth", "status"], cwd);
69
- if (gh.code === 0) {
70
- parts.push("GitHub CLI autenticado nesta máquina.");
71
- }
72
- else if (gh.code === 127) {
73
- parts.push("gh: not installed or not on PATH");
74
- }
75
- else {
76
- parts.push(summarizeSubprocessFailure({
77
- bin: "gh",
78
- code: gh.code,
79
- stderr: gh.stderr,
80
- stdout: gh.stdout,
81
- }));
82
- }
83
- if (fs.existsSync(path.join(cwd, ".git"))) {
84
- const remote = await execCapture("git", ["remote", "-v"], cwd);
85
- const branch = await execCapture("git", ["branch", "--show-current"], cwd);
86
- parts.push(formatGitSummary("git", "git remote", remote));
87
- const branchName = branch.stdout.trim();
88
- parts.push(`git branch: ${branchName || (branch.code === 0 ? "(detached)" : "indisponível")}`);
89
- }
90
- else {
91
- parts.push("git: no .git in workspace (clone via kubsec_github_repository + remediation flow)");
92
- }
93
- return { content: [{ type: "text", text: parts.join("\n\n") }] };
94
- },
95
- });
96
- api.registerTool({
97
- name: "github_local_repo_summary",
98
- label: "GitHub local repo summary",
99
- description: "Lists top-level files and recent git log in workspace (requires --extended-context).",
100
- parameters: Type.Object({}),
101
- async execute() {
102
- if (!extendedContextEnabled())
103
- return denyExtended();
104
- const cwd = resolveWorkspace();
105
- const entries = fs.existsSync(cwd)
106
- ? fs
107
- .readdirSync(cwd, { withFileTypes: true })
108
- .slice(0, 40)
109
- .map((e) => (e.isDirectory() ? `${e.name}/` : e.name))
110
- : [];
111
- let logOut = "";
112
- if (fs.existsSync(path.join(cwd, ".git"))) {
113
- const log = await execCapture("git", ["log", "-5", "--oneline"], cwd);
114
- if (log.code === 0 && log.stdout.trim()) {
115
- logOut = log.stdout.trim();
116
- }
117
- else if (log.code !== 0) {
118
- logOut = summarizeSubprocessFailure({
119
- bin: "git",
120
- code: log.code,
121
- stderr: log.stderr,
122
- stdout: log.stdout,
123
- });
124
- }
125
- }
126
- const text = [
127
- `workspace: ${cwd}`,
128
- `entries: ${entries.join(", ") || "(empty)"}`,
129
- logOut ? `recent commits:\n${logOut}` : "no git history",
130
- ].join("\n\n");
131
- return { content: [{ type: "text", text }] };
132
- },
133
- });
63
+ api.registerTool({
64
+ name: "github_local_status",
65
+ label: "GitHub local status",
66
+ description:
67
+ "Reports gh auth and git remote on this machine (requires kubbisec chat --extended-context).",
68
+ parameters: Type.Object({}),
69
+ async execute() {
70
+ if (!extendedContextEnabled()) return denyExtended();
71
+ const cwd = resolveWorkspace();
72
+ const parts = [`workspace: ${cwd}`];
73
+ const gh = await execCapture("gh", ["auth", "status"], cwd);
74
+ if (gh.code === 0) {
75
+ parts.push("GitHub CLI autenticado nesta máquina.");
76
+ } else if (gh.code === 127) {
77
+ parts.push("gh: not installed or not on PATH");
78
+ } else {
79
+ parts.push(
80
+ summarizeSubprocessFailure({
81
+ bin: "gh",
82
+ code: gh.code,
83
+ stderr: gh.stderr,
84
+ stdout: gh.stdout,
85
+ }),
86
+ );
87
+ }
88
+ if (fs.existsSync(path.join(cwd, ".git"))) {
89
+ const remote = await execCapture("git", ["remote", "-v"], cwd);
90
+ const branch = await execCapture("git", ["branch", "--show-current"], cwd);
91
+ parts.push(formatGitSummary("git", "git remote", remote));
92
+ const branchName = branch.stdout.trim();
93
+ parts.push(
94
+ `git branch: ${branchName || (branch.code === 0 ? "(detached)" : "indisponível")}`,
95
+ );
96
+ } else {
97
+ parts.push(
98
+ "git: no .git in workspace (clone via kubsec_github_repository + remediation flow)",
99
+ );
100
+ }
101
+ return { content: [{ type: "text", text: parts.join("\n\n") }] };
102
+ },
103
+ });
104
+ api.registerTool({
105
+ name: "github_local_repo_summary",
106
+ label: "GitHub local repo summary",
107
+ description:
108
+ "Lists top-level files and recent git log in workspace (requires --extended-context).",
109
+ parameters: Type.Object({}),
110
+ async execute() {
111
+ if (!extendedContextEnabled()) return denyExtended();
112
+ const cwd = resolveWorkspace();
113
+ const entries = fs.existsSync(cwd)
114
+ ? fs
115
+ .readdirSync(cwd, { withFileTypes: true })
116
+ .slice(0, 40)
117
+ .map((e) => (e.isDirectory() ? `${e.name}/` : e.name))
118
+ : [];
119
+ let logOut = "";
120
+ if (fs.existsSync(path.join(cwd, ".git"))) {
121
+ const log = await execCapture("git", ["log", "-5", "--oneline"], cwd);
122
+ if (log.code === 0 && log.stdout.trim()) {
123
+ logOut = log.stdout.trim();
124
+ } else if (log.code !== 0) {
125
+ logOut = summarizeSubprocessFailure({
126
+ bin: "git",
127
+ code: log.code,
128
+ stderr: log.stderr,
129
+ stdout: log.stdout,
130
+ });
131
+ }
132
+ }
133
+ const text = [
134
+ `workspace: ${cwd}`,
135
+ `entries: ${entries.join(", ") || "(empty)"}`,
136
+ logOut ? `recent commits:\n${logOut}` : "no git history",
137
+ ].join("\n\n");
138
+ return { content: [{ type: "text", text }] };
139
+ },
140
+ });
134
141
  }
135
- //# sourceMappingURL=kubbisec-github-local.extension.js.map
142
+ //# sourceMappingURL=kubbisec-github-local.extension.js.map
@@ -1,3 +1,3 @@
1
1
  import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
2
2
  export default function kubbisecLlmConfig(api: ExtensionAPI): void;
3
- //# sourceMappingURL=kubbisec-llm-config.extension.d.ts.map
3
+ //# sourceMappingURL=kubbisec-llm-config.extension.d.ts.map