@kenkaiiii/ggcoder 5.60.7 → 5.60.9
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/assets/skills/evidence-led-ui/SKILL.md +12 -2
- package/assets/skills/evidence-led-ui/references/craft-rulings.md +46 -4
- package/assets/skills/evidence-led-ui/references/production-contract.md +2 -2
- package/assets/skills/evidence-led-ui/references/quality-rubric.md +3 -3
- package/dist/core/sandbox.js +4 -6
- package/dist/core/sandbox.js.map +1 -1
- package/dist/core/temp-paths.d.ts +5 -0
- package/dist/core/temp-paths.js +50 -0
- package/dist/core/temp-paths.js.map +1 -0
- package/dist/core/workspace-guard.js +2 -1
- package/dist/core/workspace-guard.js.map +1 -1
- package/dist/tools/path-utils.d.ts +4 -7
- package/dist/tools/path-utils.js +12 -7
- package/dist/tools/path-utils.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: evidence-led-ui
|
|
3
|
-
description: Use for
|
|
3
|
+
description: Use for web/mobile UI creation, redesign, visual polish, accessibility work, and UI review, including small styling fixes and changes to focus, control states, borders, or dropdown icons. Use the small-edit path for narrow changes. Exclude behavior-only wiring unrelated to visual states, copy-only changes, database/API schemas, CLI output, standalone image/SVG generation, and description-only tasks.
|
|
4
4
|
license: See LICENSES.md
|
|
5
5
|
compatibility: Full review requires filesystem inspection and rendered screenshots; web research and browser/device tooling are optional and unavailable checks must be reported honestly.
|
|
6
6
|
---
|
|
@@ -9,6 +9,15 @@ compatibility: Full review requires filesystem inspection and rendered screensho
|
|
|
9
9
|
|
|
10
10
|
Use this skill for web or mobile interface creation, redesign, implementation, styling, and review.
|
|
11
11
|
|
|
12
|
+
## Small-edit path
|
|
13
|
+
|
|
14
|
+
For a narrow styling or control-state fix, skip the broad design workflow, not verification:
|
|
15
|
+
|
|
16
|
+
1. Read the shared primitive, tokens, state rules, and affected callers. Reproduce the reported sequence before editing.
|
|
17
|
+
2. For focus, borders, glass effects, or dropdown icons, read `references/craft-rulings.md` § Control icon insets and § No sticky pointer focus. Identify the rule drawing the defect before adding an override.
|
|
18
|
+
3. Fix the shared owner, not each screen. Check affected variants and remove superseded local treatments within scope. Any supporting copy added or changed must pass § Copy must earn its space in `references/craft-rulings.md`; small edits must not accumulate redundant descriptions.
|
|
19
|
+
4. Run the applicable interaction regression matrix in the craft rulings using the project's browser checks or manual browser verification. Screenshots alone cannot pass interaction checks. Report actual evidence and any unverified platform.
|
|
20
|
+
|
|
12
21
|
## Governing rule
|
|
13
22
|
|
|
14
23
|
Inspect before inventing. Preserve the project's visual language unless the user explicitly requests a redesign. Treat corpus findings as conditional observations, not official brand truth, universal rules, or a house style.
|
|
@@ -26,7 +35,7 @@ Apply these on every UI task. Read `references/craft-rulings.md` when implementi
|
|
|
26
35
|
- **Reuse first:** Search for existing components, variants, tokens, utilities, icon wrappers, focus rings, and motion curves before creating new ones.
|
|
27
36
|
- **Purposeful feedback:** Relevant hover, focus, press, selected, expanded, loading, success, and error states need clear feedback. Avoid abrupt changes when a short transition improves continuity.
|
|
28
37
|
- **No soft semantic tint-on-tint:** Do not default badges, buttons, toasts, cards, selected states, or icon medallions to a low-opacity semantic-color background with saturated same-hue text or icons, with or without a matching border. Unless the user explicitly requests that treatment or an established system must be preserved, choose a product-specific alternative rather than imposing one universal replacement style.
|
|
29
|
-
- **
|
|
38
|
+
- **Focus is not selection or decoration:** Diagnose the actual painted layer before changing it. Reuse one shared focus treatment, separate from glass borders/reflections and selected, expanded, or error states. Do not stack local rings on it. Prevent stale pointer-originated highlights without blurring controls, suppressing keyboard focus, or removing legitimate state cues. Prefer native `:focus-visible` behavior; custom modality handling requires a reproduced platform defect and the regression matrix in `references/craft-rulings.md`.
|
|
30
39
|
- **No generic hover lift:** Do not default to `translateY`, bobbing, floating, or scale-up on hover. Prefer color, border, underline, icon fill, opacity, or restrained shadow changes.
|
|
31
40
|
- **No `transition: all`:** Name transition properties, reuse duration/easing tokens, and provide a reduced-motion path.
|
|
32
41
|
- **Intentional type:** Reuse the existing type system. For net-new web work, select an appropriate modern family or pairing; do not use Arial, Helvetica, or bare `system-ui` as the aesthetic direction.
|
|
@@ -34,6 +43,7 @@ Apply these on every UI task. Read `references/craft-rulings.md` when implementi
|
|
|
34
43
|
- **No unsupported accessibility claims:** Treat ADA as an equal-access legal obligation, not a badge earned by Lighthouse, axe, or another scanner. Never label a UI `ADA compliant` or `WCAG conformant` from source review or automated checks alone; a claim requires a defined scope, per-criterion evidence, manual keyboard and assistive-technology testing, and qualified legal or product-owner review when legal compliance is asserted.
|
|
35
44
|
- **Measured contrast:** Meet WCAG 2.2 contrast for text, controls, icons, focus, and meaningful graphics. Muted text must remain readable.
|
|
36
45
|
- **Consistent flow:** Repeated navigation and actions keep the same order, labels, icons, placement, and behavior across sections and pages.
|
|
46
|
+
- **Copy must earn its space:** Start with clear labels, controls, and relevant status, not automatic subtitles, helper paragraphs, or footer notes. Supporting text must add information needed here that the interface does not already communicate. Remove repetition, show state-specific guidance when needed, and move optional detail into contextual help. Keep essential instructions and consequences visible before action. Reduce unnecessary copy before compressing layout; verify reading effort in the rendered UI. See `references/craft-rulings.md` § Copy must earn its space.
|
|
37
47
|
- **No generated em dashes:** Do not write em dashes in user-facing UI copy unless explicitly requested or exact supplied source text must remain unchanged.
|
|
38
48
|
|
|
39
49
|
## Reference map
|
|
@@ -50,7 +50,9 @@ Test by drawing vertical guides through navigation, header, main, repeated secti
|
|
|
50
50
|
|
|
51
51
|
A select, dropdown, or combobox chevron is part of the control anatomy, not decoration pasted onto its edge. Give every trailing icon a deliberate `inset-inline-end` that follows the control's horizontal-padding token. Reserve `padding-inline-end` for the outer inset, icon width, and a readable gap so labels, selected values, placeholders, loading indicators, clear buttons, and long or localized content never collide with it. An icon at `right: 0`, touching the border, or squeezed into an unreserved text area is a craft failure.
|
|
52
52
|
|
|
53
|
-
Keep the icon optically centered and preserve the full control hit area.
|
|
53
|
+
Keep the icon optically centered and preserve the full control hit area. Native select text padding does not reliably reposition the browser-drawn arrow. Choose one path: retain native appearance and verify it on supported platforms, or reuse a shared native-select wrapper with `appearance: none` and one decorative custom chevron. Do not build a custom ARIA select merely to move an arrow.
|
|
54
|
+
|
|
55
|
+
For the custom-arrow path, the wrapper owns positioning, the select reserves `padding-inline-end`, and the icon has its own `inset-inline-end`, `pointer-events: none`, and assistive-technology hiding. Reserve at least inset + icon width + text gap using shared tokens; 40px is not a universal requirement. Remove the native indicator only with a visible replacement, including in forced-colors mode. Check that exactly one arrow renders and clicking directly on it still opens the select. Use logical inline properties and verify RTL rather than hard-coding right-side geometry.
|
|
54
56
|
|
|
55
57
|
Test every control size with the longest plausible value, 200% text zoom, narrow width, RTL, disabled/error/loading states, and both native and custom rendering paths. The trailing inset should visually belong to the same spacing rhythm as the leading content inset.
|
|
56
58
|
|
|
@@ -83,11 +85,37 @@ Default motion behavior:
|
|
|
83
85
|
|
|
84
86
|
### No sticky pointer focus
|
|
85
87
|
|
|
86
|
-
|
|
88
|
+
DOM focus can legitimately remain after a click or native popup dismissal. Having focus and painting a focus indicator are separate decisions. Text-entry controls may legitimately match `:focus-visible` after pointer activation; user/browser preferences may also require visible focus. Do not treat these as stale-ring bugs. Genuine selected, expanded, validation, and drag states must retain their own semantics and styling.
|
|
89
|
+
|
|
90
|
+
#### Diagnose the painted layer first
|
|
91
|
+
|
|
92
|
+
Reproduce the exact interaction sequence. Inspect the active element, `:focus`, `:focus-visible`, ancestor `:focus-within`, state attributes/classes, and computed styles on the control, wrapper, and `::before`/`::after`. Trace outlines, borders, box shadows (including ring utilities), backgrounds, and glass reflections to their winning rules. Record which layer draws the unwanted edge and which event leaves it visible. A screenshot cannot distinguish these causes.
|
|
93
|
+
|
|
94
|
+
Fix that owner and inspect its callers. One shared primitive or utility owns the focus indicator and its width, offset, and color tokens. Do not add a second editor-local ring, blanket ancestor highlight, specificity escalation, or `!important` patch over the shared rule. Keep material decoration and selection separate from focus. Reuse the established restrained indicator, but never force a universal hairline at the expense of visibility, contrast, forced colors, or platform requirements. Verify the combined painted result, not outline width alone.
|
|
95
|
+
|
|
96
|
+
#### Modality without keyboard regressions
|
|
97
|
+
|
|
98
|
+
Prefer native `:focus-visible` and existing accessible primitives. Add or change custom modality handling only for a reproduced supported-browser defect; use one shared policy, not per-control document listeners.
|
|
87
99
|
|
|
88
|
-
|
|
100
|
+
- Pointer interaction may hide only the inappropriate pointer-originated treatment; it must not blur the control or clear real selection.
|
|
101
|
+
- Tab and Shift+Tab reveal focus immediately. Composite widgets must also reveal focus when their supported navigation keys move it. Preserve keyboard and assistive-technology focus return after overlays and programmatic moves.
|
|
102
|
+
- Do not equate every `keydown` with navigation. Space, Enter, typing, modifier-only keys, and global shortcuts must not blindly resurrect a stale ring on the last pointer-focused control. Nor should they blindly clear an existing keyboard indicator. Keep activation and text-entry behavior intact; if a key opens a menu or moves focus, the destination still needs appropriate focus feedback.
|
|
103
|
+
- Never fix rings using blanket `outline: none`, a Tab-only global accessibility policy, prevented native key behavior, or forced blur.
|
|
89
104
|
|
|
90
|
-
|
|
105
|
+
#### Required interaction regression matrix
|
|
106
|
+
|
|
107
|
+
For changes to focus, control edges, or dropdown anatomy, run applicable rows in a real browser. Add regressions to existing browser tests where available; otherwise record manual steps and results. Do not invent a new test suite just for this check.
|
|
108
|
+
|
|
109
|
+
| Sequence or state | Required result |
|
|
110
|
+
|---|---|
|
|
111
|
+
| Pointer open → choose option or dismiss → Space/Enter or an unrelated shortcut → Tab → click blank space | No custom stale ring is resurrected merely by a keydown; native activation still works; Tab immediately reveals the correct focus target; pointer cleanup preserves genuine states. Test selection and dismissal separately. |
|
|
112
|
+
| Tab/Shift+Tab → activate → Escape/close → resume navigation | Visible focus throughout keyboard use, correct return target, no trap; supported arrow-key navigation also works. |
|
|
113
|
+
| Pointer into text input → type; keyboard into input → type | Caret, editing, and appropriate visible focus remain intact. |
|
|
114
|
+
| Selected/expanded/error control inside a glass wrapper, with and without keyboard focus | Each state remains correct; no duplicate local/shared ring or unintended container-wide edge. Inspect computed styles and rendered output. |
|
|
115
|
+
| Every affected shared-control variant, long value, narrow width, 200% text zoom, RTL | One chevron; measured inset and reserved text area do not collide; arrow hit area works. |
|
|
116
|
+
| Supported browser/webview, themes, forced colors, and touch where applicable | Focus and chevron remain visible and operable; record unavailable combinations as unverified. Native popup behavior needs native interaction, not just a programmatic value change. |
|
|
117
|
+
|
|
118
|
+
Report the reproduced cause, shared owner changed, tested sequences and browser/platform, and any remaining uncertainty. An initial-state screenshot, class-name assertion, or source review alone does not establish that interaction regressions passed.
|
|
91
119
|
|
|
92
120
|
Reuse existing motion tokens first. If none exist, begin with these restrained bands, then tune by component size and distance:
|
|
93
121
|
|
|
@@ -182,6 +210,19 @@ Do not generate em dashes in user-facing UI copy unless the user explicitly requ
|
|
|
182
210
|
|
|
183
211
|
Prefer a period, comma, colon, parentheses, or a rewritten sentence. Preserve exact quoted or legal source text. This is a product voice ruling, not a claim that em dashes are inaccessible.
|
|
184
212
|
|
|
213
|
+
### Copy must earn its space
|
|
214
|
+
|
|
215
|
+
Apply this to new UI and changed components, regardless of product, platform, or visual style. Sufficient information at the right moment is the goal, not maximum brevity.
|
|
216
|
+
|
|
217
|
+
- **Labels first:** Start with clear labels, controls, and relevant status. Do not automatically fill components with subtitles, descriptions, helper paragraphs, or footer notes simply because a slot exists.
|
|
218
|
+
- **Justify supporting text:** Include it only to resolve ambiguity, prevent a likely mistake, explain a meaningful consequence, or help recovery. Ask: “Does this text add information needed here that the interface does not already communicate?” Remove it if not.
|
|
219
|
+
- **One fact, one place:** Do not restate headings, labels, actions, status, or nearby explanations in supporting prose. Repeat only when a separate decision context genuinely requires it; accessible names and necessary instructions must remain complete.
|
|
220
|
+
- **Right information, right moment:** Show state-specific guidance in that state. Make optional setup details and troubleshooting available through discoverable, accessible contextual help. Complete states through behavior and timely feedback, not permanent paragraphs explaining every possible outcome.
|
|
221
|
+
- **Essential guidance stays visible:** Keep necessary instructions, safety warnings, costs, consent, and irreversible consequences visible at the point of decision before action. Do not hide them in tooltips or disclosures merely to simplify the screen. Preserve required legal and supplied exact wording.
|
|
222
|
+
- **Familiar words:** Describe what people can do and what happens. Use implementation details only when the audience needs them for the task; accuracy alone does not justify their presence.
|
|
223
|
+
- **Remove before compressing:** Reduce redundant content before shrinking text, squeezing spacing or hit targets, truncating necessary information, or accepting avoidable scrolling. There is no universal word limit, sentence limit, or ban on scrolling; substantive content, localization, and accessibility may require more space.
|
|
224
|
+
- **Verify in context:** Inspect the rendered screen at its intended window sizes and relevant states, including text scaling. Check repeated meaning, reading effort, and whether supporting copy delays reaching the task, not merely whether everything fits. Check that removing or relocating text has not made the next action or its consequences ambiguous. Source review alone leaves the rendered check unverified.
|
|
225
|
+
|
|
185
226
|
## Final craft check
|
|
186
227
|
|
|
187
228
|
Before calling UI work complete, verify:
|
|
@@ -197,4 +238,5 @@ Before calling UI work complete, verify:
|
|
|
197
238
|
- all text and meaningful non-text contrast is measured;
|
|
198
239
|
- no soft semantic tint-on-tint treatment was introduced without an explicit user request or required existing-system match;
|
|
199
240
|
- repeated navigation/actions remain consistent across sections and pages;
|
|
241
|
+
- supporting copy adds necessary information at the right moment, without redundant descriptions or avoidable scrolling; essential instructions and consequences remain visible;
|
|
200
242
|
- generated UI copy contains no em dashes unless explicitly allowed.
|
|
@@ -36,7 +36,7 @@ ADA is a civil-rights and equal-access obligation, not a technical certification
|
|
|
36
36
|
- Provide the required alternatives for every prerecorded or live media type, including synchronized captions, transcripts or equivalent alternatives, and audio description where the criterion requires it. Autoplaying audio needs an immediate pause, stop, or independent volume control. Do not use images of text when styled real text can communicate the same information.
|
|
37
37
|
- Give every page or screen a descriptive title. Link purpose must be clear in context; headings and labels describe topic or purpose; users have more than one way to locate pages when required. Keep repeated navigation, component identification, and help mechanisms consistent.
|
|
38
38
|
- Every function works by keyboard without a trap or timing race. Focus order follows meaning; focus is visible, not obscured, and restored after overlays. Keyboard shortcuts, character-key commands, and custom composite widgets follow the applicable WCAG and WAI-ARIA keyboard requirements.
|
|
39
|
-
- Pointer activation
|
|
39
|
+
- Pointer activation and popup dismissal must not leave a false selected or active treatment. DOM focus may remain, and text-entry controls or user/browser preferences may legitimately retain visible focus after a click. Separate focus from material decoration and genuine selected, expanded, and error states; never suppress visible keyboard focus globally. Focus/control-edge changes must pass the applicable interaction regression matrix in `craft-rulings.md`, including pointer → popup close → Space/Enter → Tab, overlay focus return, and combined border/shadow/outline inspection. Screenshots alone cannot pass this check.
|
|
40
40
|
- Meet WCAG 2.2 contrast and appearance criteria in every theme and state: at least 4.5:1 for normal text, 3:1 for large text, and 3:1 for meaningful non-text controls, state indicators, focus cues, and graphics where the criterion applies. Never use color, shape, position, sound, motion, or another single sensory cue as the only instruction or status signal.
|
|
41
41
|
- Content revealed by hover or focus must be dismissible, hoverable, and persistent where required. Text spacing overrides must not break content. Audio, animation, and visual effects cannot make text unreadable or block operation.
|
|
42
42
|
- WCAG 2.2 Target Size (Minimum) is 24 by 24 CSS pixels with defined exceptions. Default touch-oriented web controls to a 44 by 44 CSS-pixel hit area where layout permits. Native work follows its platform target guidance, such as 44 by 44 points on Apple platforms and 48 by 48 density-independent pixels in Material guidance.
|
|
@@ -55,7 +55,7 @@ Automated accessibility tooling is a defect detector, not proof of conformance.
|
|
|
55
55
|
|
|
56
56
|
- Every control has a persistent programmatic label. Associate help, units, requirements, and errors with the field; placeholder text is an example, never the only label.
|
|
57
57
|
- Use the correct input type, `autocomplete`, `inputmode`, and semantic grouping. Keep browser autofill, password-manager, paste, and native validation affordances working unless the product has a verified reason to replace them.
|
|
58
|
-
- Select, dropdown, and combobox indicators must have a deliberate logical trailing inset and reserved content padding for the icon width and gap. They fail when the indicator touches the edge, overlaps text or adjacent actions, duplicates the native indicator, or creates a dead pointer zone; verify long values, narrow widths, zoom, and
|
|
58
|
+
- Select, dropdown, and combobox indicators must have a deliberate logical trailing inset and reserved content padding for the icon width and gap. Native text padding is not proof of arrow positioning. Reuse one shared control pattern: either verified native appearance or a native select with its browser arrow removed and one correctly inset decorative replacement. They fail when the indicator touches the edge, overlaps text or adjacent actions, duplicates the native indicator, or creates a dead pointer zone; verify long values, narrow widths, zoom, RTL, forced colors, and clicking the arrow itself.
|
|
59
59
|
- Validate at a helpful time. Do not show errors before the user can reasonably act. On submit, summarize errors when the form is long, focus or link to the first problem, preserve values, and explain how to recover.
|
|
60
60
|
- Async actions expose pending, success, failure, retry, and duplicate-submission behavior. Do not silently lose work or replace the whole layout with a spinner.
|
|
61
61
|
- Match safeguards to consequence. Prefer undo for cheap reversible actions; use explicit confirmation for destructive, expensive, security-sensitive, or irreversible actions. State the object and consequence in concrete language.
|
|
@@ -29,10 +29,10 @@ Maximum: **24 points**. Ship broad UI work only at **20/24 or higher**, with no
|
|
|
29
29
|
## 2. Information hierarchy
|
|
30
30
|
|
|
31
31
|
- **0:** Primary action or reading order is ambiguous.
|
|
32
|
-
- **1:** A primary path exists, but
|
|
33
|
-
- **2:** First glance, second glance, and action sequence are deliberate;
|
|
32
|
+
- **1:** A primary path exists, but elements compete, supporting copy repeats what the interface already communicates, or unjustified descriptions add reading effort or avoidable scrolling.
|
|
33
|
+
- **2:** First glance, second glance, and action sequence are deliberate; supporting copy adds information needed at this moment, optional detail remains accessible without competing, and essential instructions and consequences remain visible before action.
|
|
34
34
|
|
|
35
|
-
**Test:** At 50% zoom or with a blurred screenshot, identify the first three attention stops.
|
|
35
|
+
**Test:** At 50% zoom or with a blurred screenshot, identify the first three attention stops. Then read the rendered UI at its intended size and relevant states. For each description, ask: “Does this text add information needed here that the interface does not already communicate?” Remove unjustified repetition or move optional detail to contextual help. Redundant or unjustified descriptions block a score of 2. Do not achieve brevity by hiding required guidance, shrinking text or targets, or forbidding necessary scrolling.
|
|
36
36
|
|
|
37
37
|
## 3. Composition
|
|
38
38
|
|
package/dist/core/sandbox.js
CHANGED
|
@@ -8,6 +8,7 @@ import { fileURLToPath } from "node:url";
|
|
|
8
8
|
import { log } from "./logger.js";
|
|
9
9
|
import { getAppPaths } from "../config.js";
|
|
10
10
|
import { DEFAULT_ALLOWED_DOMAINS } from "./sandbox-domains.js";
|
|
11
|
+
import { getTempRoots } from "./temp-paths.js";
|
|
11
12
|
/**
|
|
12
13
|
* Environment applied only to sandboxed commands.
|
|
13
14
|
*
|
|
@@ -133,7 +134,7 @@ function safeWriteRoots(target, zones) {
|
|
|
133
134
|
/** Pure policy builder, exported so the security boundary is regression-tested. */
|
|
134
135
|
export function buildSandboxSettings(cwd, policy, platform = process.platform) {
|
|
135
136
|
const workspace = path.resolve(cwd);
|
|
136
|
-
const
|
|
137
|
+
const tempRoots = getTempRoots(platform);
|
|
137
138
|
const home = os.homedir();
|
|
138
139
|
const allowedDomains = [
|
|
139
140
|
...new Set([...(policy.strictDomains ? [] : DEFAULT_ALLOWED_DOMAINS), ...policy.allowedDomains]
|
|
@@ -147,7 +148,7 @@ export function buildSandboxSettings(cwd, policy, platform = process.platform) {
|
|
|
147
148
|
// macOS, where the workspace and temp dir are usually reached via /var.
|
|
148
149
|
const writeZones = [
|
|
149
150
|
...new Set([
|
|
150
|
-
|
|
151
|
+
...tempRoots,
|
|
151
152
|
workspace,
|
|
152
153
|
...(policy.additionalRoots ?? []).map((root) => path.resolve(root)),
|
|
153
154
|
path.resolve(getAppPaths().agentDir),
|
|
@@ -156,7 +157,6 @@ export function buildSandboxSettings(cwd, policy, platform = process.platform) {
|
|
|
156
157
|
// persistence, and this list governs WRITES, so the ~/.ssh READ denial
|
|
157
158
|
// below would not stop it.
|
|
158
159
|
...(policy.allowOutsideWorkspaceWrites ? [home] : []),
|
|
159
|
-
...(platform === "win32" ? [] : ["/tmp"]),
|
|
160
160
|
// NB: the macOS /private aliases need no entry of their own — each
|
|
161
161
|
// anchor above is expanded through withRealPath, so /var/folders/… and
|
|
162
162
|
// /private/var/folders/… are both already zones. Listing bare /private
|
|
@@ -170,9 +170,7 @@ export function buildSandboxSettings(cwd, policy, platform = process.platform) {
|
|
|
170
170
|
...new Set([
|
|
171
171
|
workspace,
|
|
172
172
|
...(policy.additionalRoots ?? []).map((root) => path.resolve(root)),
|
|
173
|
-
|
|
174
|
-
// The conventional scratch dir, distinct from os.tmpdir() on macOS.
|
|
175
|
-
...(platform === "win32" ? [] : ["/tmp"]),
|
|
173
|
+
...tempRoots,
|
|
176
174
|
path.resolve(getAppPaths().agentDir),
|
|
177
175
|
...toolCacheDirs(home),
|
|
178
176
|
...(policy.allowOutsideWorkspaceWrites ? [home] : []),
|
package/dist/core/sandbox.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/core/sandbox.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sandbox.js","sourceRoot":"","sources":["../../src/core/sandbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type ResolveShellOpts } from "./shell.js";
|
|
2
|
+
/** Ask the selected Windows bash for its mount; never guess an install path. */
|
|
3
|
+
export declare function getMsysTempDir(opts?: ResolveShellOpts): string | null;
|
|
4
|
+
/** Shared by file tools and the command sandbox. */
|
|
5
|
+
export declare function getTempRoots(platform?: NodeJS.Platform): string[];
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { execFileSync } from "node:child_process";
|
|
2
|
+
import os from "node:os";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { resolveShell } from "./shell.js";
|
|
5
|
+
let cached;
|
|
6
|
+
/** Ask the selected Windows bash for its mount; never guess an install path. */
|
|
7
|
+
export function getMsysTempDir(opts = {}) {
|
|
8
|
+
if ((opts.platform ?? process.platform) !== "win32")
|
|
9
|
+
return null;
|
|
10
|
+
const shell = resolveShell("cygpath -aw /tmp", opts);
|
|
11
|
+
if (shell.isCmdFallback)
|
|
12
|
+
return null;
|
|
13
|
+
const env = opts.env ?? process.env;
|
|
14
|
+
const key = JSON.stringify([shell.file, env.TMPDIR, env.TEMP, env.TMP, env.PATH, env.Path]);
|
|
15
|
+
if (cached?.key === key)
|
|
16
|
+
return cached.directory;
|
|
17
|
+
let directory = null;
|
|
18
|
+
try {
|
|
19
|
+
const output = execFileSync(shell.file, shell.args, {
|
|
20
|
+
encoding: "utf8",
|
|
21
|
+
timeout: 3_000,
|
|
22
|
+
maxBuffer: 4096,
|
|
23
|
+
windowsHide: true,
|
|
24
|
+
cwd: os.tmpdir(),
|
|
25
|
+
env,
|
|
26
|
+
stdio: ["ignore", "pipe", "ignore"],
|
|
27
|
+
}).trim();
|
|
28
|
+
// Reject malformed output and dangerously broad mount roots.
|
|
29
|
+
if (/^[A-Za-z]:[\\/]/.test(output) && !/[\r\n\0]/.test(output)) {
|
|
30
|
+
const normalized = path.win32.normalize(output);
|
|
31
|
+
if (normalized !== path.win32.parse(normalized).root &&
|
|
32
|
+
normalized.toLowerCase() !== path.win32.normalize(os.homedir()).toLowerCase()) {
|
|
33
|
+
directory = normalized;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
// A missing/failed translator must not silently target C:\tmp instead.
|
|
39
|
+
}
|
|
40
|
+
cached = { key, directory };
|
|
41
|
+
return directory;
|
|
42
|
+
}
|
|
43
|
+
/** Shared by file tools and the command sandbox. */
|
|
44
|
+
export function getTempRoots(platform = process.platform) {
|
|
45
|
+
const msys = platform === "win32" ? getMsysTempDir({ platform }) : null;
|
|
46
|
+
return [
|
|
47
|
+
...new Set([os.tmpdir(), ...(platform === "win32" ? [] : ["/tmp"]), ...(msys ? [msys] : [])]),
|
|
48
|
+
];
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=temp-paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"temp-paths.js","sourceRoot":"","sources":["../../src/core/temp-paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAyB,MAAM,YAAY,CAAC;AAEjE,IAAI,MAA6D,CAAC;AAElE,gFAAgF;AAChF,MAAM,UAAU,cAAc,CAAC,OAAyB,EAAE;IACxD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACjE,MAAM,KAAK,GAAG,YAAY,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACrD,IAAI,KAAK,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5F,IAAI,MAAM,EAAE,GAAG,KAAK,GAAG;QAAE,OAAO,MAAM,CAAC,SAAS,CAAC;IACjD,IAAI,SAAS,GAAkB,IAAI,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;YAClD,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,KAAK;YACd,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,IAAI;YACjB,GAAG,EAAE,EAAE,CAAC,MAAM,EAAE;YAChB,GAAG;YACH,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;SACpC,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,6DAA6D;QAC7D,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAChD,IACE,UAAU,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI;gBAChD,UAAU,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,EAC7E,CAAC;gBACD,SAAS,GAAG,UAAU,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,uEAAuE;IACzE,CAAC;IACD,MAAM,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;IAC5B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,YAAY,CAAC,WAA4B,OAAO,CAAC,QAAQ;IACvE,MAAM,IAAI,GAAG,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxE,OAAO;QACL,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;KAC9F,CAAC;AACJ,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { realpathSync } from "node:fs";
|
|
|
2
2
|
import os from "node:os";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { getAppPaths } from "../config.js";
|
|
5
|
+
import { getTempRoots } from "./temp-paths.js";
|
|
5
6
|
/** True when `target` is `root` or contained within it. */
|
|
6
7
|
function isWithin(root, target) {
|
|
7
8
|
const relative = path.relative(root, target);
|
|
@@ -66,7 +67,7 @@ export function resolveWriteGuard(cwd, resolvedPath, settings) {
|
|
|
66
67
|
const allowedRoots = [
|
|
67
68
|
realResolve(cwd),
|
|
68
69
|
...extraRoots,
|
|
69
|
-
|
|
70
|
+
...getTempRoots().map(realResolve),
|
|
70
71
|
realResolve(getAppPaths().agentDir),
|
|
71
72
|
];
|
|
72
73
|
for (const root of allowedRoots) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-guard.js","sourceRoot":"","sources":["../../src/core/workspace-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-guard.js","sourceRoot":"","sources":["../../src/core/workspace-guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,13 +16,10 @@ export interface ResolvePathOpts {
|
|
|
16
16
|
* - Non-Windows platforms are left completely alone: `/c/foo` is a perfectly
|
|
17
17
|
* legitimate POSIX path on macOS/Linux and rewriting it would be a
|
|
18
18
|
* data-corrupting regression. Hence the strict platform gate.
|
|
19
|
-
* -
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
* - We do NOT shell out to `cygpath`: this sits on the hot path of every
|
|
24
|
-
* single file tool call, so it would cost a process spawn per call, and
|
|
25
|
-
* `cygpath` is not always on PATH anyway. Pure string manipulation only.
|
|
19
|
+
* - Virtual mounts are not guessed here. `resolvePath` separately handles
|
|
20
|
+
* `/tmp` using the selected shell's cached mount lookup; `/usr`, `/home`
|
|
21
|
+
* and `/bin` remain untranslated.
|
|
22
|
+
* - Drive conversion is pure string manipulation, with no process spawn.
|
|
26
23
|
*/
|
|
27
24
|
export declare function msysToWindowsPath(filePath: string, opts?: ResolvePathOpts): string;
|
|
28
25
|
export declare function resolvePath(cwd: string, filePath: string, opts?: ResolvePathOpts): string;
|
package/dist/tools/path-utils.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import fs from "node:fs/promises";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import os from "node:os";
|
|
4
|
+
import { getMsysTempDir } from "../core/temp-paths.js";
|
|
4
5
|
/**
|
|
5
6
|
* MSYS drive path → native Windows path, e.g. `/c/Users/x` → `C:\Users\x`.
|
|
6
7
|
*
|
|
@@ -15,13 +16,10 @@ import os from "node:os";
|
|
|
15
16
|
* - Non-Windows platforms are left completely alone: `/c/foo` is a perfectly
|
|
16
17
|
* legitimate POSIX path on macOS/Linux and rewriting it would be a
|
|
17
18
|
* data-corrupting regression. Hence the strict platform gate.
|
|
18
|
-
* -
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* - We do NOT shell out to `cygpath`: this sits on the hot path of every
|
|
23
|
-
* single file tool call, so it would cost a process spawn per call, and
|
|
24
|
-
* `cygpath` is not always on PATH anyway. Pure string manipulation only.
|
|
19
|
+
* - Virtual mounts are not guessed here. `resolvePath` separately handles
|
|
20
|
+
* `/tmp` using the selected shell's cached mount lookup; `/usr`, `/home`
|
|
21
|
+
* and `/bin` remain untranslated.
|
|
22
|
+
* - Drive conversion is pure string manipulation, with no process spawn.
|
|
25
23
|
*/
|
|
26
24
|
export function msysToWindowsPath(filePath, opts = {}) {
|
|
27
25
|
const platform = opts.platform ?? process.platform;
|
|
@@ -47,6 +45,13 @@ export function resolvePath(cwd, filePath, opts = {}) {
|
|
|
47
45
|
if (filePath.startsWith("~")) {
|
|
48
46
|
filePath = path.join(os.homedir(), filePath.slice(1));
|
|
49
47
|
}
|
|
48
|
+
if ((opts.platform ?? process.platform) === "win32" && /^\/tmp(?:\/|$)/.test(filePath)) {
|
|
49
|
+
const temp = getMsysTempDir(opts);
|
|
50
|
+
if (!temp) {
|
|
51
|
+
throw new Error("Cannot resolve Git Bash /tmp. Use the native Windows path reported by `cygpath -aw /tmp`.");
|
|
52
|
+
}
|
|
53
|
+
return path.win32.resolve(temp, `.${filePath.slice(4)}`);
|
|
54
|
+
}
|
|
50
55
|
return path.resolve(cwd, msysToWindowsPath(filePath, opts));
|
|
51
56
|
}
|
|
52
57
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path-utils.js","sourceRoot":"","sources":["../../src/tools/path-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"path-utils.js","sourceRoot":"","sources":["../../src/tools/path-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAOvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB,EAAE,OAAwB,EAAE;IAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACnD,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAC;IAC1C,2EAA2E;IAC3E,8EAA8E;IAC9E,2EAA2E;IAC3E,EAAE;IACF,6EAA6E;IAC7E,2EAA2E;IAC3E,8DAA8D;IAC9D,MAAM,KAAK,GAAG,iDAAiD,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/E,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAC;IAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5B,6EAA6E;IAC7E,yDAAyD;IACzD,OAAO,GAAG,KAAK,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,QAAgB,EAAE,OAAwB,EAAE;IACnF,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvF,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CACb,2FAA2F,CAC5F,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,QAAgB;IAClD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,uFAAuF;QACvF,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC;YAAE,MAAM,GAAG,CAAC;IACtF,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,WAAW,CAAC,YAAoB;IAC9C,OAAO,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAC5C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kenkaiiii/ggcoder",
|
|
3
|
-
"version": "5.60.
|
|
3
|
+
"version": "5.60.9",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "CLI coding agent with OAuth authentication for Anthropic, OpenAI, and Gemini",
|
|
6
6
|
"license": "MIT",
|
|
@@ -114,9 +114,9 @@
|
|
|
114
114
|
"typescript-language-server": "^5.3.0",
|
|
115
115
|
"wrap-ansi": "^10.0.0",
|
|
116
116
|
"zod": "^4.4.3",
|
|
117
|
-
"@kenkaiiii/gg-agent": "5.60.
|
|
118
|
-
"@kenkaiiii/gg-
|
|
119
|
-
"@kenkaiiii/gg-
|
|
117
|
+
"@kenkaiiii/gg-agent": "5.60.9",
|
|
118
|
+
"@kenkaiiii/gg-ai": "5.60.9",
|
|
119
|
+
"@kenkaiiii/gg-core": "5.60.9"
|
|
120
120
|
},
|
|
121
121
|
"optionalDependencies": {
|
|
122
122
|
"@huggingface/transformers": "4.2.0",
|