-
Notifications
You must be signed in to change notification settings - Fork 0
update marc-romu/chat branch from dev #173
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Branch Update This PR updates `dev` with changes from `main` for the path `.github`. ### ℹ️ Protected Branch This PR was created because `dev` is a protected branch that requires changes through pull requests. ### Instructions 1. Review the changes 2. Approve and merge the changes This PR was automatically created by the Branch Update workflow.
## Description This PR introduces a new Grasshopper component `GhRetrieveComponents` and its AI tool counterpart `ghretrievecomponents`. They provide a unified way to enumerate all installed Grasshopper components, returning for each: - Name, GUID, category, subcategory, description, keywords - Detailed lists of input and output parameters (name, description, data type, access) This enhancement enables AI-driven workflows and script-based discovery of component metadata and parameter signatures. ## Breaking Changes None. ## Testing Done - Manual validation in Grasshopper: `GhRetrieveComponents` lists components correctly. - AI script invocation of `ghretrievecomponents` returns valid JSON with expected fields. - Added unit tests for parameter introspection via `GHParameterUtils`. ## Checklist - [x] This PR is focused on a single feature or bug fix - [x] Version in Solution.props was updated, if necessary, and follows semantic versioning - [x] CHANGELOG.md has been updated - [x] PR title follows [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format - [x] PR description follows [Pull Request Description Template](#pull-request-description-template)
… subcategories of components (#167) ## Description - Introduces a new `ghcategories` AI tool in [GhTools](cci:2://file:///c:/Users/Marc%20Roca/source/repos/architects-toolkit/SmartHopper/src/SmartHopper.Core.Grasshopper/Tools/GhTools.cs:31:4-536:5) that lists all Grasshopper component categories and their subcategories. - Adds an optional `"filter"` parameter: normalizes the input (removes `,;_-`), splits by space, and performs a case‑insensitive “soft” match against category and subcategory names. - Updates the `ghretrievecomponents` tool’s `categoryFilter` description to point users to `ghcategories` for a full list of available categories. ## Breaking Changes None. ## Testing Done RH8.18 on windows, using AiChat. ## Checklist - [x] This PR is focused on a single feature or bug fix - [x] Version in Solution.props was updated, if necessary, and follows semantic versioning - [x] CHANGELOG.md has been updated - [x] PR title follows [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format - [x] PR description follows [Pull Request Description Template](#pull-request-description-template)
…ew (#168) ## Description Introduces a new `ghtogglepreview` tool in `GhVisTools` allowing users to programmatically turn Grasshopper component preview on or off by GUID. Utilizes `GHCanvasUtils.FindInstance` and `GHComponentUtils.SetComponentPreview` with debug logging for tracing. ## Breaking Changes None. ## Testing Done - Manually invoked `ghtogglepreview` via AIChatComponent with valid component GUIDs. - Verified preview state toggles and canvas redraw occurs without errors. - Checked debug output to confirm object lookup and state changes. ## Checklist - [x] This PR is focused on a single feature or bug fix - [x] Version in Solution.props was updated, if necessary, and follows semantic versioning - [x] CHANGELOG.md has been updated - [x] PR title follows [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format - [x] PR description follows [Pull Request Description Template](#pull-request-description-template)
…abled) of components in canvas (#169) ## Description Introduces a new `ghtogglelocked` tool in `GhObjTools` allowing users to programmatically turn Grasshopper component on or off by GUID (enabling and disabling(. Utilizes `GHCanvasUtils.FindInstance` and `GHComponentUtils.SetComponentLock` with debug logging for tracing. ## Breaking Changes None ## Testing Done Tried in RH8.18 on windows, with the AiChat interface. ## Checklist - [x] This PR is focused on a single feature or bug fix - [x] Version in Solution.props was updated, if necessary, and follows semantic versioning - [x] CHANGELOG.md has been updated - [x] PR title follows [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format - [x] PR description follows [Pull Request Description Template](#pull-request-description-template)
…#170) ## Description - Introduces [MoveInstance(Guid, PointF, bool, bool)](cci:1://file:///c:/Users/Marc%20Roca/source/repos/architects-toolkit/SmartHopper/src/SmartHopper.Core.Grasshopper/Tools/GhObjTools.cs:170:8-198:9) in `GHCanvasUtils` to reposition existing canvas objects by GUID, supporting absolute or relative offsets and optional live redraw. - Adds `ghmoveobj` AI tool in [GhObjTools](cci:2://file:///c:/Users/Marc%20Roca/source/repos/architects-toolkit/SmartHopper/src/SmartHopper.Core.Grasshopper/Tools/GhObjTools.cs:25:4-201:5) to invoke [MoveInstance](cci:1://file:///c:/Users/Marc%20Roca/source/repos/architects-toolkit/SmartHopper/src/SmartHopper.Core.Grasshopper/Tools/GhObjTools.cs:170:8-198:9) via JSON parameters (`guids`, `position.x`, `position.y`, `relative`, `live`). - Updates [CHANGELOG.md](cci:7://file:///c:/Users/Marc%20Roca/source/repos/architects-toolkit/SmartHopper/CHANGELOG.md:0:0-0:0) under **Unreleased → Added** to document both the new tool and utility method. ## Breaking Changes None ## Testing Done - Manually invoked `ghmoveobj` in Grasshopper chat to move components by GUID (absolute and relative), verified pivot updates on canvas. ## Checklist - [ ] This PR is focused on a single feature or bug fix - [ ] Version in Solution.props was updated, if necessary, and follows semantic versioning - [ ] CHANGELOG.md has been updated - [ ] PR title follows [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format - [ ] PR description follows [Pull Request Description Template](#pull-request-description-template)
## Description This PR tightens security around provider management. From now on, every provider assembly must be signed with the same key as the main project; unsigned or differently signed assemblies will be rejected. This prevents malicious providers from being loaded. Because it’s a major change, it breaks compatibility with all previously compiled modules. Accordingly, we are increasing to version 0.3!!! ## Breaking Changes Providers built with earlier versions will no longer load. All assemblies must be built with the identical signing certificate, so downloaded and locally generated providers will not interoperate. ## Testing Done RH8.18 on windows. ## Checklist - [x] This PR is focused on a single feature or bug fix - [x] Version in Solution.props was updated, if necessary, and follows semantic versioning - [x] CHANGELOG.md has been updated - [x] PR title follows [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format - [x] PR description follows [Pull Request Description Template](#pull-request-description-template)
This PR updates the version badge in the README.md to match the current version in Solution.props. This is an automated PR created by the Update Version Badge workflow.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.