Skip to content

Tooling - #978

Closed
drav0011 wants to merge 7 commits into
develfrom
tooling
Closed

Tooling#978
drav0011 wants to merge 7 commits into
develfrom
tooling

Conversation

@drav0011

Copy link
Copy Markdown
Member

TDLR:

  • Remove addon template as will use cli for creation
  • Added tooling for agents to diff with vanilla tweaks packs and make initial research about pack feasibility against the latest capabilities in the game. (Note some created issues still need cleanup, deletion/reference to actual older issues created, or adding information missing from problems found ingame (eg. smaller utilities, enchating glint...) and moving the information there)

This pull request makes significant changes to the addon template by removing most of the template’s configuration, scripts, and supporting files, and by introducing new commands and configuration for Vanilla Tweaks parity checking and Bedrock feasibility research. The changes streamline the template, likely in preparation for a new or externalized approach, and add new project-level scripts and documentation to support Vanilla Tweaks diffing and issue tracking.

The most important changes are:

Vanilla Tweaks Diff and Feasibility Integration

  • Added .claude/commands/vt-diff.md with detailed instructions for running Vanilla Tweaks parity checks, Bedrock feasibility research, and issue tracking, including step-by-step guidance and reporting rules.
  • Added .mcp.json to configure the microsoft-learn MCP server for feasibility research.
  • Added new project scripts in package.json for fetching, diffing, feasibility checking, and issue planning with Vanilla Tweaks tools.

Template Cleanup and Simplification

  • Removed most template files from templates/addon, including .vscode settings, config.json, package.json, ESLint configuration, and example scripts and events, effectively stripping the template to a minimal state. [1] [2] [3] [4] [5] [6] [7] [8] [9]
  • Cleaned up .gitignore, .mcignore, and removed placeholder content from filters/.gitkeep. [1] [2] [3]

These changes collectively shift the project’s focus toward supporting Vanilla Tweaks parity and feasibility workflows, while removing the default addon template scaffolding.

drav0011 added 7 commits July 25, 2026 08:26
- Introduced `feasibility.json` to store feasibility verdicts for Vanilla Tweaks packs not shipped.
- Implemented `feasibility.mjs` to validate entries and generate research worklists for agents.
- Created `fetch.mjs` to download Vanilla Tweaks catalogs into a cache.
- Added `ignore.json` to list Vanilla Tweaks packs that will never be ported.
- Developed `issues.mjs` to manage GitHub issues related to missing packs, including creating, updating, and closing issues based on feasibility.
- Implemented `lib.mjs` for shared utility functions across the tools.
…tions

- Added entries for colored inventories (Gray, Black, Brown, Red, Orange, Yellow, Lime, Green, Cyan, Light Blue, Blue, Purple, Magenta, Pink) indicating their status as experimental in Vanilla Tweaks.
- Added corresponding entries for colored widgets, explaining the limitations of Bedrock's UI and the status of colored tooltips.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new tools/vt-diff workflow to diff Bedrock Tweaks against Vanilla Tweaks catalogs, generate feasibility research batches, and prepare an issue-management plan, while also removing most of the existing addon template scaffolding (in preparation for CLI-based creation).

Changes:

  • Added the tools/vt-diff toolchain (fetch → diff → feasibility batching/validation → issue plan/apply) plus documentation/playbooks for agent-assisted steps.
  • Added project-level scripts (vt:*) and MCP configuration to support feasibility research against Microsoft Learn.
  • Stripped the addon template directory down by removing editor config, lint/tooling config, and sample BP/RP/template assets.

Reviewed changes

Copilot reviewed 45 out of 47 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tools/vt-diff/README.md Documents vt-diff’s purpose, workflow, and usage commands.
tools/vt-diff/lib.mjs Shared helpers/constants for cache/output paths and catalog/pack normalization.
tools/vt-diff/issues.mjs Generates issue plan and optionally applies issue create/update/close via gh.
tools/vt-diff/ignore.json Records Vanilla Tweaks packs that should never be ported (per section).
tools/vt-diff/fetch.mjs Downloads Vanilla Tweaks catalogs into the tool cache.
tools/vt-diff/feasibility.mjs Generates feasibility worklists/batches and validates feasibility.json.
tools/vt-diff/diff.mjs Produces parity report (missing/matched/ignored/drift) between VT and BT.
tools/vt-diff/config.json Central vt-diff configuration (VT version, sections, labels, grouping, sources).
tools/vt-diff/aliases.json Manual mapping from Vanilla Tweaks pack keys to Bedrock Tweaks pack ids.
tools/vt-diff/AGENTS.md Agent playbook: alias reconciliation, feasibility research rubric, issue plan review rules.
tools/vt-diff/.gitignore Ignores vt-diff build artifacts (.cache/, out/).
package.json Adds vt:* scripts to run vt-diff tooling from the repo root.
.mcp.json Configures the microsoft-learn MCP server endpoint for feasibility research.
.claude/commands/vt-diff.md Adds an agent command entry describing the vt-diff procedure and reporting order.
templates/addon/yarn.lock Removes addon template lockfile.
templates/addon/tsconfig.json Removes addon template TypeScript config.
templates/addon/packs/RP/texts/languages.json Removes template RP language list.
templates/addon/packs/RP/texts/en_US.lang Removes template RP localization strings.
templates/addon/packs/RP/texts/en_GB.lang Removes template RP localization strings (GB).
templates/addon/packs/RP/manifest.json Removes template RP manifest scaffold.
templates/addon/packs/data/.gitkeep Removes template regolith data folder placeholder.
templates/addon/packs/BP/texts/languages.json Removes template BP language list.
templates/addon/packs/BP/texts/en_US.lang Removes template BP localization strings.
templates/addon/packs/BP/texts/en_GB.lang Removes template BP localization strings (GB).
templates/addon/packs/BP/scripts/Util/Scoreboard.ts Removes template scoreboard utility.
templates/addon/packs/BP/scripts/Util/index.ts Removes template util module exports.
templates/addon/packs/BP/scripts/Util/DynamicProperties.ts Removes template dynamic properties utility.
templates/addon/packs/BP/scripts/UI/index.ts Removes template UI module exports.
templates/addon/packs/BP/scripts/UI/Example.ts Removes template example UI form.
templates/addon/packs/BP/scripts/Models/index.ts Removes template models module exports.
templates/addon/packs/BP/scripts/Models/EntityTypes.ts Removes template entity types enum.
templates/addon/packs/BP/scripts/main.ts Removes template BP script entrypoint example.
templates/addon/packs/BP/scripts/Events/index.ts Removes template events module index.
templates/addon/packs/BP/scripts/Events/EntityDie.ts Removes template sample event handler.
templates/addon/packs/BP/scripts/Actions/Uninstall.ts Removes template uninstall action example.
templates/addon/packs/BP/scripts/Actions/index.ts Removes template actions module exports.
templates/addon/packs/BP/manifest.json Removes template BP manifest scaffold.
templates/addon/package.json Removes template addon package manifest and scripts.
templates/addon/filters/.gitkeep Removes template filters placeholder.
templates/addon/eslint.config.mjs Removes template ESLint configuration.
templates/addon/config.json Removes template regolith config scaffold.
templates/addon/.vscode/settings.json Removes template VS Code settings.
templates/addon/.vscode/launch.json Removes template Minecraft debugger launch config.
templates/addon/.vscode/extensions.json Removes template VS Code extension recommendations.
templates/addon/.mcignore Removes template mcignore rules.
templates/addon/.gitignore Removes template gitignore rules.

Comment thread tools/vt-diff/issues.mjs
Comment on lines +365 to +368
for (const issue of issues) {
const marker = /<!-- vt-diff:id=([^ ]+) -->/.exec(issue.body ?? '');

if (marker) byMarker.set(marker[1], issue);
console.log(`Wrote ${join(OUT_DIR, 'feasibility-batches')}/batch-NN.json`);
};

if (import.meta.filename === process.argv[1]) {
@drav0011

Copy link
Copy Markdown
Member Author

Actually not going to merge to main
Would not like a bunch of issues created with this accidentally by 3rd party, whoever needs it can find it in this branch

@drav0011 drav0011 closed this Jul 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants