diff --git a/packages/mtmharness/README.md b/packages/mtmharness/README.md index 40fa5f8..1ca95dc 100644 --- a/packages/mtmharness/README.md +++ b/packages/mtmharness/README.md @@ -7,7 +7,7 @@ The DSH plugin is assembled from coding and secondary frontend domains under one Host/Client lifecycle. Codebase Memory keeps its `codebase_memory` server namespace and `mcp__codebase_memory__*` tool names; Ponytail exposes six externally installed skills through DSH's native skill surface. The `/ponytail` command controls per-agent automatic prompt intensity; `off` suppresses that section while explicit native skill invocation remains available. The five companion names are not duplicated as host commands. The `mtm-coding` settings namespace contains the runtime extension toggles. -Modern Go Guidelines is a configured data-only package that exposes the externally installed `use-modern-go` skill. Its trusted manifest pins the JetBrains `v0.1.1` source and SHA-256; the first load downloads it into `$DSH_HOME/mtmharness/skills/modern-go`. Existing files are user-owned and are never overwritten automatically. In the default DSH `workspace-write` sandbox, follow the mounted Modern Go cache prompt and set `HOME`, `XDG_CACHE_HOME`, `GOPATH`, `GOMODCACHE`, and `GOCACHE` beneath the current workspace before the first wrapper call. +Modern Go Guidelines is a configured data-only package that exposes the externally installed `use-modern-go` skill. No manual Go or CLI installation is required; the upstream wrapper installs the pinned CLI on first use with standard `go install` and user cache behavior. Its trusted manifest pins the JetBrains `v0.1.1` source and SHA-256; the first load downloads it into `$DSH_HOME/mtmharness/skills/modern-go`. Existing files are user-owned and are never overwritten automatically. The wrapper does not modify the project or create a project-local `.mtmharness-cache`. If the active DSH file policy denies the standard Go cache write, the command reports that error instead of overriding the sandbox. RTK is an optional coding feature in the same `mtm-coding` settings namespace. `rtkMode` defaults to `auto` and provides guidance for explicitly invoking an RTK command when the executable is available. The current DSH ToolRuntime has no supported pre-dispatch input-rewrite seam, so the plugin does not register a speculative hook; `rewrite` reports `unavailable` and leaves frozen tool arguments unchanged. The pinned RTK `v0.45.0` runtime helpers remain checksum-verified for explicit integrations; there is no separate RTK skill document. RTK telemetry, tracking, and tee output are disabled for plugin-managed runs. diff --git a/packages/mtmharness/package.json b/packages/mtmharness/package.json index 6bc3ece..c369009 100644 --- a/packages/mtmharness/package.json +++ b/packages/mtmharness/package.json @@ -1,6 +1,6 @@ { "name": "mtmharness", - "version": "0.9.6", + "version": "0.9.7", "description": "Unified DeepSeek Harness Web plugin with Connect, Codebase Memory, Modern Go, Ponytail, and independent static/embed clients.", "type": "module", "engines": { "node": ">=22.19.0", "pnpm": ">=11.7.0" }, diff --git a/packages/mtmharness/src/features/coding/config.json b/packages/mtmharness/src/features/coding/config.json index 4276065..38020e8 100644 --- a/packages/mtmharness/src/features/coding/config.json +++ b/packages/mtmharness/src/features/coding/config.json @@ -15,7 +15,7 @@ "kind": "data-only", "prompt": { "order": 89, - "text": "Modern Go cache policy for DSH workspace-write shells: /home/code may be read-only. Before invoking the pinned wrapper, keep every write inside the current workspace. Linux/macOS: `cache=\"$PWD/.mtmharness-cache\"; mkdir -p \"$cache\"; env HOME=\"$cache/home\" XDG_CACHE_HOME=\"$cache/cache\" GOPATH=\"$cache/gopath\" GOMODCACHE=\"$cache/gopath/pkg/mod\" GOCACHE=\"$cache/go-build\" GOTOOLCHAIN=local sh \"/scripts/run-tool.sh\" ...`. PowerShell: `$cache = Join-Path (Get-Location) \".mtmharness-cache\"; New-Item -ItemType Directory -Force $cache | Out-Null; $env:HOME = Join-Path $cache \"home\"; $env:XDG_CACHE_HOME = Join-Path $cache \"cache\"; $env:GOPATH = Join-Path $cache \"gopath\"; $env:GOMODCACHE = Join-Path $env:GOPATH \"pkg/mod\"; $env:GOCACHE = Join-Path $cache \"go-build\"; $env:LOCALAPPDATA = Join-Path $cache \"localappdata\"; $env:GOTOOLCHAIN = \"local\"; & \"\\scripts\\run-tool.ps1\" ...`. Do not use the default HOME or request elevated sandbox access just for Go caches." + "text": "Use the upstream Modern Go Guidelines wrapper with its standard Go installation and user cache behavior. It installs the pinned CLI on first use with go install and does not modify the project. Do not create a project-local .mtmharness-cache or override HOME, XDG_CACHE_HOME, GOPATH, GOMODCACHE, GOCACHE, LOCALAPPDATA, or GOTOOLCHAIN to work around the active DSH file policy; if the selected sandbox denies the standard cache write, report the error." }, "skills": { "repository": "https://github.com/JetBrains/go-modern-guidelines", diff --git a/packages/mtmharness/tests/packed-install.test.mjs b/packages/mtmharness/tests/packed-install.test.mjs index 49e353b..d221b06 100644 --- a/packages/mtmharness/tests/packed-install.test.mjs +++ b/packages/mtmharness/tests/packed-install.test.mjs @@ -157,7 +157,6 @@ test("packed mtmharness discovers skills from its editable DSH home", async () = "plugin/skills/use-modern-go/scripts/run-tool.ps1", "plugin/skills/use-modern-go/scripts/run-tool.sh", ]); - assert.match(modernGo.prompt.text, /HOME=.*XDG_CACHE_HOME=.*GOPATH=.*GOMODCACHE=.*GOCACHE/s); const fake = createContext(); await installed.applyCoding(fake.context, {