-
Notifications
You must be signed in to change notification settings - Fork 0
Comparing changes
Open a pull request
base repository: TMHSDigital/Developer-Tools-Directory
base: v1.9
head repository: TMHSDigital/Developer-Tools-Directory
compare: v1.16
- 19 commits
- 38 files changed
- 4 contributors
Commits on May 23, 2026
-
chore: broaden scaffold test output gitignore (#59)
Add _scaffold*/ glob to cover _scaffold_output/ and any future underscore-prefixed scaffold output directories. The existing output/ entry was too narrow and did not match the _scaffold_output/ name produced by local scaffold test runs. Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 765d320 - Browse repository at this point
Copy the full SHA 765d320View commit details -
docs: reconcile narrative docs with v1.9.5 reality (#60)
- Update standards-doc count to 18 in .cursorrules, AGENTS.md, CLAUDE.md, and CONTRIBUTING.md (was 9 or 17 depending on file) - docs/index.html: standards grid expanded from 8 to 18 cards matching standards/README.md order; footer version updated from v1.5.0 to v1.9.5; standards count badge corrected to 18 - ROADMAP.md: Current Status updated to v1.9.5 with accurate prior-milestone list; Release Plan table updated with six Released range rows for v1.7.x through v1.9.x; speculative v1.7.0, v1.8.0, v1.9.0 narrative sections replaced with accurate content derived from git history and release notes; new sections added for v1.7.1-v1.7.5, v1.8.1-v1.8.5, and v1.9.1-v1.9.5 Patch range rows in the Release Plan table are deliberate: they group closely related patch series by theme rather than listing each patch individually. This is not a per-patch policy but a readability choice for series that shipped in rapid succession. standards/drift-checker.config.json intentionally left unstaged (Windows CRLF phantom, no content change). Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 73affd8 - Browse repository at this point
Copy the full SHA 73affd8View commit details -
feat: add required-workflows drift check and bump VERSION to 1.10.0 (#62
) Adds RequiredWorkflowsCheck to the drift checker. The check reads required_workflows lists from drift-checker.config.json per repo type (cursor-plugin, mcp-server) and emits an error finding for each absent workflow. Policy is additive across config tiers (globals -> type -> repo); extra workflows are never flagged; skip_checks suppresses the check entirely. New files: - scripts/drift_check/checks/required_workflows.py - tests/test_required_workflows.py (9 tests, all pass) Changed files: - types.py: adds required_workflows to RepoConfig, present_workflows to RepoSnapshot, and tier-union logic in DriftConfig.resolve() - snapshot.py: discovers .github/workflows/ filenames into present_workflows - cli.py: wires RequiredWorkflowsCheck into the check pipeline - checks/__init__.py: exports RequiredWorkflowsCheck - standards/drift-checker.config.json: adds required_workflows arrays for cursor-plugin and mcp-server types On first run the check correctly flags two real gaps: - steam-mcp: missing stale.yml (known from the prior manual audit) - Mobile-App-Developer-Tools: missing stale.yml (caught by the check; missed by the manual audit) Both are follow-up fix: PRs in their respective repos. They are not suppressed here; the check is working as intended. file=None findings render cleanly in both markdown and gh-summary renderers (both use `if f.file else "-"`). Signed-off-by: fOuttaMyPaint <tmhospitalitystrategies@gmail.com> Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 063ae7a - Browse repository at this point
Copy the full SHA 063ae7aView commit details -
docs: clarify core vs optional workflows and add MCP-server variation…
…s to ci-cd.md (#61) * docs: clarify core vs optional workflows and add MCP-server variations to ci-cd.md Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> * docs: clarify validate.yml not required for mcp-server in ci-cd.md The MCP-server Variations section opened with "follow the same core requirement as cursor-plugin repos," implying validate.yml was required. It is not. All validate.yml checks assume plugin.json; mcp-server repos have no plugin.json. Rewrites the section to state the three required workflows explicitly (drift-check.yml, stale.yml, publish.yml) and explains why validate.yml is absent. Also updates the doc intro to distinguish cursor-plugin (four required) from mcp-server (three required). This brings the prose into exact agreement with the machine-readable config in standards/drift-checker.config.json. Signed-off-by: fOuttaMyPaint <tmhospitalitystrategies@gmail.com> Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> --------- Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> Signed-off-by: fOuttaMyPaint <tmhospitalitystrategies@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 063e150 - Browse repository at this point
Copy the full SHA 063e150View commit details
Commits on May 24, 2026
-
ci: run drift_check tests in validate.yml (#63)
Adds a test-drift-check job to validate.yml that installs pytest from the new requirements-test.txt and runs pytest tests/ -v on every PR and push to main. The 9 tests in tests/test_required_workflows.py are pytest-discoverable as-is (functions named test_*). No conversion needed. The test file adds scripts/ to sys.path so no PYTHONPATH config is required. Signed-off-by: fOuttaMyPaint <tmhospitalitystrategies@gmail.com> Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 5053e7a - Browse repository at this point
Copy the full SHA 5053e7aView commit details -
chore(deps): bump actions/dependency-review-action from 4 to 5 (#58)
Bumps [actions/dependency-review-action](https://github.com/actions/dependency-review-action) from 4 to 5. - [Release notes](https://github.com/actions/dependency-review-action/releases) - [Commits](actions/dependency-review-action@v4...v5) --- updated-dependencies: - dependency-name: actions/dependency-review-action dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 6434174 - Browse repository at this point
Copy the full SHA 6434174View commit details -
chore(deps): bump actions/setup-python from 5 to 6 (#57)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](actions/setup-python@v5...v6) --- updated-dependencies: - dependency-name: actions/setup-python dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for a0ead02 - Browse repository at this point
Copy the full SHA a0ead02View commit details -
chore(deps): bump actions/checkout from 5 to 6 (#56)
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@v5...v6) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 5d5e14f - Browse repository at this point
Copy the full SHA 5d5e14fView commit details -
feat: register developer-tools-mcp in ecosystem registry (#64)
* feat: register developer-tools-mcp in ecosystem registry Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> * chore: bump VERSION to 1.11.0 for feat/register-developer-tools-mcp Signed-off-by: fOuttaMyPaint <tmhospitalitystrategies@gmail.com> Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> --------- Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> Signed-off-by: fOuttaMyPaint <tmhospitalitystrategies@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 03a9f42 - Browse repository at this point
Copy the full SHA 03a9f42View commit details -
chore: ignore Windows NUL device artifact in .gitignore (#65)
The name `nul` is a Windows reserved device that appears as an untracked entry in git status when shells redirect to it. Adding it to .gitignore suppresses the noise without touching anything committed. Signed-off-by: fOuttaMyPaint <tmhospitalitystrategies@gmail.com> Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 44aacdc - Browse repository at this point
Copy the full SHA 44aacdcView commit details -
feat: decouple STANDARDS_VERSION from meta release VERSION (#66)
* feat: decouple STANDARDS_VERSION from meta release VERSION Add STANDARDS_VERSION file (1.10.0) as the single source of truth for the ecosystem standards surface. The drift checker and scaffold now read this file instead of VERSION, so registry additions and other meta-repo releases no longer force a fleet-wide re-stamp. - Add STANDARDS_VERSION at repo root containing 1.10.0 - Update scripts/drift_check/cli.py to read STANDARDS_VERSION - Update scaffold/create-tool.py to stamp from STANDARDS_VERSION - Update standards/versioning.md to define both files and when each moves - Bump VERSION to 1.12.0 Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> * fix: update test fixtures to write STANDARDS_VERSION instead of VERSION Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> --------- Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 56e9d80 - Browse repository at this point
Copy the full SHA 56e9d80View commit details -
feat: add Phase 1 stamper scripts (add_frontmatter.py, add_comment_ma…
…rker.py) (#67) * feat: add add_frontmatter.py and add_comment_marker.py Phase 1 stamper scripts These scripts are called by cli.py --fix to apply standards-version updates in-place. add_frontmatter.py targets YAML-frontmatter files (SKILL.md, .mdc), add_comment_marker.py targets HTML-comment marker files (CLAUDE.md, AGENTS.md). Interface: python <script> <file_path> <new_version> Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> * chore: bump VERSION to 1.13.0 for feat: add Phase 1 stamper scripts Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> --------- Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Configuration menu - View commit details
-
Copy full SHA for 6b1edb9 - Browse repository at this point
Copy the full SHA 6b1edb9View commit details -
feat: update developer-tools-mcp registry entry to v0.2.0 (#68)
* feat: update developer-tools-mcp registry entry to v0.2.0 - mcpTools: 4 -> 7 (added restampRepo, syncRegistry, createTool) - version: 0.1.0 -> 0.2.0 - status: experimental -> active - pagesType: none -> static - homepage: set to https://tmhsdigital.github.io/Developer-Tools-MCP/ - description: updated to reflect write surface Regenerated README.md, CLAUDE.md, docs/index.html via sync_from_registry.py. Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> * chore: bump VERSION to 1.14.0 Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> --------- Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 459bd0e - Browse repository at this point
Copy the full SHA 459bd0eView commit details -
feat: register cfx-mcp in ecosystem registry (#69)
Add TMHSDigital/cfx-mcp as mcp-server entry (experimental, v0.1.0). Bump VERSION to 1.15.0. Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for b3614c9 - Browse repository at this point
Copy the full SHA b3614c9View commit details -
fix(scaffold): add mcp-server type templates and branch workflow gene…
…ration (#70) * fix(scaffold): add mcp-server type templates and branch workflow generation Scaffold was generating cursor-plugin workflows unconditionally for all repo types. An mcp-server scaffold produced: an empty validate.yml jobs block, a release.yml that required .cursor-plugin/plugin.json, and a pages.yml that invoked build_site.py. Add six new templates for the mcp-server type path: - validate.mcp.yml.j2: required-files check (README, CHANGELOG, AGENTS, CLAUDE, mcp-tools.json, site.json, LICENSE) - release.mcp.yml.j2: simplified tag-from-package.json release workflow - pages.mcp.yml.j2: static docs/ artifact deploy (no build_site.py) - publish.yml.j2: npm publish on release event - package.json.j2: parametrized Node package manifest - docs/index.mcp.html.j2: placeholder GitHub Pages landing page Branch create-tool.py workflow generation on args.type so mcp-server repos get the four mcp-server workflows and cursor-plugin repos continue to get validate, release, pages unchanged. Also generate package.json and docs/index.html for mcp-server type repos. Verified: freshly scaffolded mcp-server passes YAML validation for all seven workflow files and is mutually consistent with zero hand-fixing. Cursor-plugin output is byte-for-byte unchanged. Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> * chore: bump VERSION to 1.15.1 Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> --------- Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 9be7979 - Browse repository at this point
Copy the full SHA 9be7979View commit details
Commits on Jun 13, 2026
-
feat: register Blender Developer Tools in directory (#71)
Onboard Blender-Developer-Tools to the registry as a Plugin: 12 skills, 6 rules, 2 templates, 17 snippets (0 MCP tools), version 0.2.3. Derived artifacts (README tools table/descriptions/stats, CLAUDE catalog/ totals, docs/index.html embedded registry) regenerated via scripts/sync_from_registry.py rather than hand-edited. Bumps VERSION 1.15.1 -> 1.16.0 (feat) per the version-bump-check guard. Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 65a7729 - Browse repository at this point
Copy the full SHA 65a7729View commit details -
fix(scaffold): derive meta-repo action pins from VERSION (#72)
Workflow action refs in generated tool repos were hardcoded literals (drift-check@v1.9, release-doc-sync@v1), so every newly scaffolded repo was born pinned to a stale meta-repo train. Hand-correcting one repo (Blender @v1.9 -> @v1.15) treated the symptom; the source kept minting stale refs. Derive all three pins from the live meta VERSION at generation time: - drift-check -> @v{MAJOR}.{MINOR} (MAJOR.MINOR train) - release-doc-sync -> @v{MAJOR} (MAJOR train) - meta-repo-ref -> v{MAJOR}.{MINOR}.{PATCH} (full current release tag) A repo scaffolded after any future meta release is now born current instead of stale. The validate.yml scaffold regression checks and the ci-cd.md drift-check pin example are likewise derive-from-current rather than hardcoded. Also fixes a stale test that asserted the release-doc-sync default was v1.0 (it is v1, the floating-major train, since #43). Scope: newly generated repos only; existing-repo ref bumps remain the periodic standards re-stamp's job. Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for d9f1ef7 - Browse repository at this point
Copy the full SHA d9f1ef7View commit details
Commits on Jun 14, 2026
-
fix(registry): remove unmaintainable per-tool version field (#73)
registry.json hardcoded a patch-level `version` per tool (Blender showed 0.2.3, live was 0.2.4). Tool repos auto-bump patch on every content merge, so the catalog re-staled on each tool's next content PR. Bumping a single entry by hand just resets a clock that keeps running. The field had zero consumers: it is not read by scripts/sync_from_registry.py, not displayed by docs/script.js, and not used by the drift checker (which reads agent-file standards-version markers and the meta VERSION, not the registry entry version). It only rode along passively inside the embedded registry blob in docs/index.html. Remove it everywhere so a tool's patch bump can never again create catalog drift: - drop `version` from all 12 registry.json entries - drop `version` from the validate.yml registry schema - regenerate docs/index.html (embedded blob no longer carries version) - update the schema docs (.cursorrules, AGENTS.md, CLAUDE.md) with a one-line note on why the field is gone, so it is not reintroduced Do not reintroduce patch precision. The catalog tracks tools by repo and homepage, not by version. Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for 3be50f3 - Browse repository at this point
Copy the full SHA 3be50f3View commit details -
fix: scaffold emits type-correct workflow set and derives stale liter…
…als (#74) mcp-server repos no longer get the cursor-plugin-specific validate.yml and release.yml. Per standards/ci-cd.md, validate.yml's checks all assume a plugin.json and publish.yml replaces release.yml, so the emitted set now matches standards/drift-checker.config.json exactly (drift-check, stale, publish) plus the optional-for-both pages and label-sync. Also derive the LICENSE copyright year from the current UTC year instead of a hardcoded 2026, make plugin.json keywords type-aware (drop the stock "mcp" keyword unless the repo has an MCP server), add PyYAML to the CI test environment so the YAML-validating tests stop silently importorskip-ing, and add a born-green integration test that renders each type and asserts detected type, empty drift, current markers/pins, README counts, and the exact workflow set. Bumps VERSION 1.16.2 -> 1.16.3. Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com> Co-authored-by: Cursor <cursoragent@cursor.com>
Configuration menu - View commit details
-
Copy full SHA for b7b9e7d - Browse repository at this point
Copy the full SHA b7b9e7dView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v1.9...v1.16