Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #652 +/- ##
==========================================
- Coverage 40.32% 39.25% -1.08%
==========================================
Files 30 38 +8
Lines 1758 2621 +863
==========================================
+ Hits 709 1029 +320
- Misses 1049 1592 +543 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
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
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.
Resolves: #653
Overview
This PR adds a CLI to the garden-sdk for CRUD operations on gardens and functions. It is setup for easy use by humans as well as LLM agents. The driving goal is is to have a programmatic interface to garden that will allow users and their agent of choice to more easily interact with the garden service.
Screen.Recording.2026-02-26.at.1.24.04.PM.mov
There are new commands and sub-commands that follow this pattern:
garden-ai garden [list|show|create|update|delete]Screen.Recording.2026-02-26.at.1.24.40.PM.mov
Where:
listlists the users gardensshowdisplays detailed information about a gardenCRUD commands are self explanatory.
The
garden-ai garden add-functionssub-command adds deployed functions to existing gardens.There is also a
garden-ai garden searchcommand that hits the full-text search route on the backend.Screen.Recording.2026-02-26.at.1.25.52.PM.mov
Function sub-commands follow a similar pattern:
garden-ai function [modal|hpc] [list|show|deploy|update|delete]For the agents out there, the commands that display information about an entity have
--jsonflags that dumps the full json blob we get from the backend. This makes it easier for agents to get full context on a garden or function.Discussion
There is quite a bit of new code here, but the bulk of it is declarative in nature, API schemas, CLI commands and options,
uv.lock, etc. Most of the new CLI commands just take the user's input and turn it into requests for the backend. Most of the actual logic is just printing stuff nicely.There is a little bit of logic for parsing groundhog functions out of a file, but it's pretty minimal.
The
BackendClienthas a handful of new methods to hit the CRUD routes.There were a decent number of new vulnerabilities found by
safety check. The bulk were resolved by runninguv lock --upgradebut there were a couple I couldn't fix easily. I added ignores to the.safety-policyto make the CI happy for now since I don't think the issues will affect users. I created new issues to try and update the newer versions of the affected packages: #654, #655Testing
Manual testing, and testing with the Gardener skill.
There are a few new unit tests for the groundhog parsing logic, but nothing crazy.
I figure since we are mostly just sending requests to the backend, and the backend is well-tested, we should be pretty well covered here.
Documentation
Added a new page to the docs for a CLI reference.
📚 Documentation preview 📚: https://garden-ai--652.org.readthedocs.build/en/652/