-
Notifications
You must be signed in to change notification settings - Fork 3
Enable system group functionalities #38
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
Conversation
|
Thanks for the PR, @renner. I think the next tool to add would be I think for now, these 2 tools would be sufficient. For later, we can consider adding/removing systems to groups, or managing groups, but since they're not daily/repeat operations, I wouldn't clutter the toolset with them for now. Just one suggestion for docstring tool descriptions moving forward: Between the current async def get_system_details(system_identifier: Union[str, int], ctx: Context):
"""Gets details of the specified system.
Args:
system_identifier: The system name (e.g., "buildhost.example.com") or system ID (e.g., 1000010000).
Prefer using numerical system IDs instead of system names when possible.
Returns:
An object that contains the following attributes of the system:
- system_id: The numerical ID of the system within Uyuni server
- system_name: The registered system name, usually its main FQDN
- last_boot: The last boot time of the system known to Uyuni server
- uuid: UUID of the system if it is a virtual instance, null otherwise.
- cpu: An object with the following CPU attributes of the system:
- family: The CPU family
- mhz: The CPU clock speed
- model: The CPU model
- vendor: The CPU vendor
- arch: The CPU architecture
- installed_product: List of installed products on the system.
You can use this field to identify what OS the system is running.
An empty object is returned if the system cannot be found.
Example:
{
"system_id": "100010001",
"system_name": "opensuse.example.local",
"last_boot": "2025-04-01T15:21:56Z",
"uuid": "a8c3f40d-c1ae-406e-9f9b-96e7d5fdf5a3",
"cpu": {
"family": "15",
"mhz": "1896.436",
"model": "QEMU Virtual CPU",
"vendor": "AuthenticAMD",
"arch": "x86_64"
}
}
"""Python type definitions don't make any sense to the LLM, because what it'll see is just JSON. So, for the "Returns:" clause, one clear natural language description including its attributes, followed by a clear JSON example works best. |
94681c3 to
f8f9640
Compare
|
Thanks @cbbayburt, I added a commit to improve the |
c263ec7 to
25b28f8
Compare
ycedres
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Also tested the changed test cases file and runs ok.
b20cd83 to
a8041b3
Compare
25b28f8 to
9635a2e
Compare
This patch is enabling some system group related functionalities, so far: