Skip to content

Releases: 3metaJun/mstack

v0.12.0

Choose a tag to compare

@github-actions github-actions released this 23 Oct 04:27
7137a57

Changes

  • Sync pstack from 11713c6 to eb4db2b. The bundle grows from 54 to 60
    skills. It adds create-formal-verification-skill,
    maintain-formal-verification-skill, statechart, in-your-own-words, and
    sharpen, and updates the guides and provenance manifests.
  • /setup-mstack now offers once to generate a formal verification skill when
    the project has none.
  • Normalize line endings for .cfg, .mmd, and .tla files in skill baseline
    digests, so a baseline recorded on a Windows checkout matches one on Linux.
  • The statechart CLI prints paths with / on every platform.
  • Record the current Claude Code, Codex CLI, OpenCode, pi, Antigravity, and
    Grok versions in the docs.
  • Add Dependabot version updates.

Upgrade notes

Reinstall mstack to receive the new skills:

npx @3metajun/mstack --harness all --replace

Verification

PR #54 passed the full Node 18/22 matrix on Linux, macOS, and Windows, plus
meta-mode, package, and strict upstream checks. The statechart tests pass on
Windows; the tests that need TLC are skipped.

v0.11.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 09:44

Changes

  • Sync pstack to 11713c6, including the new ketchup skill and refreshed guides, automations, and upstream manifests.
  • Preserve mstack portability adaptations while updating the upstream validation pin and reviewed baselines.

Upgrade notes

Reinstall mstack to receive the latest pstack content and the ketchup skill:

npx @3metajun/mstack --harness all --replace

Verification

The release PR passed the full Node 18/22 matrix on Linux, macOS, and Windows, plus meta-mode, package, and strict upstream checks.

v0.10.0

Choose a tag to compare

@github-actions github-actions released this 10 Oct 05:17
d00323a

Changes

  • Keep MCP tools out of read-only runs. run-role --read-only and the smoke
    check now pass --no-mcp to pi and --strict-mcp-config to Claude Code. A
    built-in tool allowlist alone left configured MCP servers reachable: pi 1.0.4
    and later keeps MCP tools when --tools lists plain names, and Claude Code's
    --tools selects from the built-in set only.
  • Sync mattpocock/skills from 6654f6b to 49dd158. diagnosing-bugs reads
    GLOSSARY.md after upstream's rename of CONTEXT.md, and asks for a diff
    against a pristine copy when a failing test was forced by mutating code or a
    fixture. docs/upstream-sync-matt-49dd158.md lists what was not ported.
  • Add a release workflow. When a new version lands on main it runs npm test
    and creates the v<version> GitHub Release from that version's section in
    this file. It runs only on main and warns while the version is missing from
    npm. Publishing to npm stays manual.
  • Add npm run upstream-drift and a weekly upstream-drift workflow. They
    list upstream commits that are not ancestors of the pins in
    profiles/upstreams.json and touch the adapted paths. The workflow keeps one
    "Upstream drift report" issue current.
  • Drop PowerShell CLIXML records from the smoke check's reported output, so the
    CLI's own error is visible on Windows.
  • Record in docs/harness-adapters.md that every skill stays model-invocable
    on purpose, and cover Grok and Antigravity in the README and social preview.

Upgrade notes

Reinstall skills to receive the diagnosing-bugs update. run-role --read-only
and smoke-harnesses --execute on pi now need pi 1.0.4 or newer, because older
versions reject --no-mcp. A Claude Code read-only run no longer loads MCP
servers from user or project configuration. A project that kept its domain
glossary in CONTEXT.md for diagnosing-bugs should rename it to
GLOSSARY.md. Codex documents its read-only sandbox for shell commands, and
mstack has not checked whether it limits configured MCP tools.

Verification

The pull request passed Node 18/22 CI on Linux, macOS and Windows with the
package and pinned-source checks, and an adversarial review whose four findings
were fixed before merge. The read-only live prompt passed on Windows with Claude
Code 2.1.296, Codex CLI 0.162.0, OpenCode 1.18.34 and pi 1.1.0; pi and OpenCode
ran with an explicit --model. Whether an MCP tool is actually absent in those
runs was taken from each CLI's documentation, not observed with a configured
server. The release workflow ran once on main and found the existing v0.9.0
release; this release is the first one it creates. The upstream-drift
workflow has not run on GitHub yet.

v0.9.0

Choose a tag to compare

@3metaJun 3metaJun released this 06 Oct 12:53
2220aed

Changes

  • Adapt mstack to T3 Code. docs/t3code.md explains how each T3 provider finds
    skills, the install commands per provider, $name invocation, worktrees, a
    t3.json setup recipe and T3's own safety rules. docs/session-context/T3-CODE.md
    is an opt-in routing note for sessions that have the t3-code MCP tools.
  • Add T3 host bindings. skills/meta-mode, recall and create-verification-skill
    gain references/hosts/t3code.md, and the playbooks point to it in neutral
    wording. Where T3 provides the primitive, the references bind delegation to
    delegate_task, PR watching to watch_pull_request, scheduling to
    schedule_task, thread history to t3_thread_search and t3_thread_read, and
    runtime evidence to preview_* and device_*. Shipping keeps a bounded
    merge-confirmation task because T3 does not wake a thread on merge. npm test
    now fails when a T3-only tool name appears under skills/ outside
    skills/*/references/hosts/.
  • Add antigravity and grok harnesses. Antigravity installs to
    ~/.gemini/antigravity-cli/skills (override HARNESS_SKILLS_ANTIGRAVITY_DIR)
    and Grok shares ~/.agents/skills (override HARNESS_SKILLS_GROK_DIR). Both
    have run-role and smoke-harnesses runtimes; runtime.promptArgs places
    flags that take the prompt as their value. Cursor needs no target because it
    reads ~/.agents/skills.
  • Add project-scope install: --project <repo> copies skills into each
    harness's project root (.agents/skills, .claude/skills). It refuses
    artifacts, --migrate and --environment, rejects project paths that
    resolve into a user skill root, the package, an enclosing discovery root or
    installer storage (symlinks, junctions and case variants included), and keeps
    --replace backups beside the skill roots.
  • Add provider instances and effort options to model roles. overrides.t3code
    and budgets.t3code accept <provider>/<model> (<effort>) strings or
    { provider, model, effort } objects, and model-budget sets the effort from
    a catalog's explicit option list. Harness role strings stay opaque. Reserved
    keys such as __proto__ are rejected and budget writes use own properties.
    setup-mstack reads the T3 reference on a host that lists provider instances.
  • Add the mstack-help entry skill (54 skills) for install, setup and "which
    skill fits" questions. profiles/local-skills.json lets skill-baseline
    record a wholly local skill, and --check derives upstream ownership from the
    profiles so a manifest cannot reclassify an upstream file as local.
  • Reject skill frontmatter that Cursor and Antigravity silently drop: a plain
    name or description that is invalid YAML (: , #, a leading
    indicator, malformed quoted or block scalars) or a name outside T3's chip
    pattern. A # in a plain scalar is rejected on purpose, since YAML would
    truncate the value there.
  • Detect filesystem case sensitivity for installer path keys instead of
    lowercasing on macOS, so a case-sensitive volume no longer reports distinct
    paths as overlapping.

Upgrade notes

Reinstall skills to receive mstack-help and the updated playbooks.
--harness all now also covers antigravity and grok: Antigravity gets its
own copy in ~/.gemini/antigravity-cli/skills, and Grok joins the shared
~/.agents/skills copy, so a rerun on an existing machine adds the Antigravity
copy. --project installs skills only, and a
fresh T3 worktree contains only committed files, so commit the project copy or
use the user-level install. Existing models.json files stay valid.
Contributors with skills whose plain-scalar description contains : or #
must quote it. docs/guide/07-overnight.md now mentions schedule_task.

Verification

Seven of the eight pull requests (all but the case-sensitivity fix) were
reviewed with pi (provider relay-gpt, model GPT-6.1-SOL) until the last round
returned no blocker or major findings, and every one passed Node 18/22 CI on
Linux, macOS and Windows with the package and pinned-source checks. The T3 behavior described here was checked against the T3
Code source at commit 8f75697, not against a running T3 Code session. The
merge-confirmation task, delegate_task targets and effort option resolution
were not exercised live. The agy and grok read-only arguments and
run-role calls were run against agy 1.2.16 and Grok CLI 1.0.46; agy's
--mode plan is an agent mode, not a tool restriction.

v0.8.0

Choose a tag to compare

@3metaJun 3metaJun released this 06 Oct 05:10
8611519

Changes

  • Sync pstack from f5bdd68 to 2cbf585. Add benchmark-checklist, correct and
    principle-explain-the-number (53 skills). Subagents are fresh by default,
    autopilot audit ticks run hourly, architect screens designs for agent
    mistakes, perf-issue and hillclimb follow the performance mantras, and the
    Opening a PR playbook prefers the run's built-in PR tool. The upstream model
    slug and Cursor rule edits are not ported. poteto-help is skipped because it
    needs repository docs that the installer does not ship.
  • Keep autopilots restart-safe without /goal: on the operator's go the root
    writes a program objective (queue, order, verification rule, who merges, done
    condition) to a saved program.md or the Harness goal mechanism, and every
    hourly tick re-reads it. check-plan.mjs requires the objective and hourly
    cadence in program checklists, outside fenced examples.
  • Add a Claude Code SessionStart hook to the plugin (hooks/hooks.json,
    scripts/session-hook.mjs). It routes multi-file or unknown-cause work to
    meta-mode on startup, resume, clear and compact. Turn it off with
    "sessionHook": false in ~/.config/mstack/models.json. The installer path
    ships no hook. readModelConfig now reads UTF-8 BOM and UTF-16 LE files.
    Plugin validation checks the hook, its context file and agent paths.
  • Harden check-plan.mjs: strip a UTF-8 BOM, parse fences like CommonMark
    (at most three spaces of indent), and require a box under each program task
    and under Close the program.
  • Harden worktree-audit: scan Claude, Codex (CODEX_HOME) and pi session
    stores, match Windows, UNC and JSON-escaped path spellings without matching
    sibling paths, and mark a worktree safe only when its HEAD is in origin/main
    or exactly matches a PR merged into main.
  • Add docs/guide/12-claude-code-routing.md.

Upgrade notes

Reinstall skills to receive the new and updated skills. The hook ships with the
Claude Code plugin only and needs node on PATH; the plugin and the installer
should not both be active on one machine. Plans that already use the old
/goal and 30-minute tick wording fail check-plan until they name the program
objective and the hourly cadence. Effort-level agent variants were evaluated and
not added: the Codex agent conversion rejects an effort field and a
Claude-only generated copy would be dead code.

Verification

Each of the three pull requests was reviewed with pi (provider relay-gpt, model
GPT-6.1-SOL) until its last round returned no P0 or P1 findings, and Node 18/22
CI passed on Linux, macOS and Windows with the package and pinned-source checks.
claude plugin validate . --strict passed for the hook PR on Claude Code
2.1.289. The hourly program-objective flow was not exercised through a real
restart.

v0.7.0

Choose a tag to compare

@3metaJun 3metaJun released this 03 Oct 06:26
6a91e52

Changes

  • Add a Claude Code plugin marketplace (.claude-plugin/) so
    claude plugin marketplace add 3metaJun/mstack followed by
    claude plugin install mstack@mstack installs all 50 skills and both agents,
    including the files meta-mode needs under tools/meta-mode. The plugin
    version tracks the npm version.
  • Add npm run pack-claude-skills to validate skills against Claude upload
    limits and build one zip per skill for Claude Desktop chat, Cowork, and
    claude.ai. The packer rewrites links that leave a skill, leaves code alone,
    rejects reference-style links that cannot be rewritten, applies the Agent
    Skills name rules, and checks the Skills API's 30 MB limit against
    uncompressed bytes.
  • Check the Claude plugin manifest and its version in npm test and
    npm run check-package, and skip the local .pi runtime directory in the
    private-data scan.

Upgrade notes

No skill content changed. Use either the plugin or the installer for Claude
Code on one machine, because both load and the duplicates compete for the skill
listing budget. Upload packages have not been tried against Claude Desktop or
claude.ai. Claude's skill-authoring documentation gives a 1,024-character
description limit while a Help Center article gives 200; several skills exceed
200, so shorten descriptions for the upload if one is rejected.

Verification

Both pull requests passed independent subagent review with the confirmed
findings fixed (three rounds for the packer). Node 18/22 CI passed on Linux,
macOS, and Windows, together with package checks and both pinned-source
integrity checks. claude plugin validate . --strict passes with Claude Code
2.1.287, and an isolated install loaded 50 skills and 2 agents.

v0.6.0

Choose a tag to compare

@3metaJun 3metaJun released this 03 Oct 04:04
a077e46

Changes

  • Fix autopilot owner babysitting and stack topology boundaries; start verification at code-ready and isolate replacement writers.
  • Require swarm results to match requested commit SHAs and measurement methods. Track decision-log run identity while preserving append-only history.
  • Add catalog-validated reasoning-budget effort rewrites with preview, atomic application, alias preservation, and duplicate-panel rejection.
  • Port requested upstream prompt reductions and bounded per-lane shipping build-output reuse. Dev-server lanes and lanes without saved build output must rerun; current-head checks and review remain mandatory.

Upgrade notes

Reinstall skills to receive the workflow changes. Reasoning budgets select effort variants, not spending caps. Prompt reductions apply to the shared tree; equivalent behavior across models has not been demonstrated. Upstream source pins remain unchanged for these selective reviewed ports.

Verification

Independent subagent review findings were fixed before merge. CI passed Node 18/22 on Linux, macOS, and Windows, Bun tests/typecheck, packaging, and pinned-source checks. The final local release check passed 212 tests with one Unix-only skip on Windows.

Publication

GitHub Release and source version are prepared. npm publication is intentionally left to the maintainer; this release does not assert that npm 0.6.0 has been published.

PRs: #20, #23, #24. PR #23 supersedes the closed stacked PR #21.

v0.5.0

Choose a tag to compare

@3metaJun 3metaJun released this 21 Sep 07:50

Publish as an official pi package: declare the pi manifest and tag npm with the pi-package keyword so mstack appears in the pi.dev/packages gallery. See CHANGELOG.md for details.

v0.4.2

Choose a tag to compare

@3metaJun 3metaJun released this 17 Sep 18:08

Fix CI release-tag and upstream-pin validation. See CHANGELOG.md for details.

v0.4.1

Choose a tag to compare

@3metaJun 3metaJun released this 12 Sep 06:54
5d832ea

Upgrade notes

Run npx @3metajun/mstack@0.4.1 --harness all --migrate --replace --dry-run
to inspect the migration, then repeat without --dry-run. Recognized legacy
copies are backed up outside skill discovery roots. Unrecognized local
copies stop migration before writes. SSH migration must run locally on the
target machine.

Fixes

  • Share one canonical skill copy across Codex, OpenCode and pi. Claude keeps
    its adapter and derives skill names from directories, so OpenCode skips its
    duplicate copy without changing global settings.
  • Migrate legacy copies, archived backups and interrupted stages with retained
    originals and rollback. Validate physical path aliases before writing.
  • Keep agent definitions in native directories and shared tools beside their
    skills. Deduplicate compatible explicit and remote targets.
  • Reuse target resolution in the installer and smoke checks so OpenCode and pi
    checks inspect the shared installation.

Publication

This release includes the tested npm tarball. npm publication is pending and will be performed separately by the maintainer. The upgrade command above applies after publication.

Includes #18 and the shared installer/smoke path-resolution improvement identified in #17.