mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-04-08 03:00:28 -04:00
These changes were part of #12206, but here they are separately for easier review. This is all primarily to make the v2 API (#11678) work possible/easier. ### Changes 🏗️ - Fix relations between `Profile`, `StoreListing`, and `AgentGraph` - Redefine `StoreSubmission` view with more efficient joins (100x speed-up on dev DB) and more consistent field names - Clean up query functions in `store/db.py` - Clean up models in `store/model.py` - Add missing fields to `StoreAgent` and `StoreSubmission` views - Rename ambiguous `agent_id` -> `graph_id` - Clean up API route definitions & docs in `store/routes.py` - Make routes more consistent - Avoid collision edge-case between `/agents/{username}/{agent_name}` and `/agents/{store_listing_version_id}/*` - Replace all usages of legacy `BackendAPI` for store endpoints with generated client - Remove scope requirements on public store endpoints in v1 external API ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Test all Marketplace views (including admin views) - [x] Download an agent from the marketplace - [x] Submit an agent to the Marketplace - [x] Approve/reject Marketplace submission
90 lines
3.2 KiB
Markdown
90 lines
3.2 KiB
Markdown
# System Store Operations
|
|
<!-- MANUAL: file_description -->
|
|
Blocks for browsing and retrieving agent details from the AutoGPT store.
|
|
<!-- END MANUAL -->
|
|
|
|
## Get Store Agent Details
|
|
|
|
### What it is
|
|
Get detailed information about an agent from the store
|
|
|
|
### How it works
|
|
<!-- MANUAL: how_it_works -->
|
|
This block retrieves detailed metadata about a specific agent from the AutoGPT store using the creator's username and agent slug. It returns the agent's name, description, categories, run count, and average rating.
|
|
|
|
The store_listing_version_id can be used with other blocks to add the agent to your library or execute it.
|
|
<!-- END MANUAL -->
|
|
|
|
### Inputs
|
|
|
|
| Input | Description | Type | Required |
|
|
|-------|-------------|------|----------|
|
|
| creator | The username of the agent creator | str | Yes |
|
|
| slug | The name of the agent | str | Yes |
|
|
|
|
### Outputs
|
|
|
|
| Output | Description | Type |
|
|
|--------|-------------|------|
|
|
| error | Error message if the operation failed | str |
|
|
| found | Whether the agent was found in the store | bool |
|
|
| store_listing_version_id | The store listing version ID | str |
|
|
| agent_name | Name of the agent | str |
|
|
| description | Description of the agent | str |
|
|
| creator | Creator of the agent | str |
|
|
| categories | Categories the agent belongs to | List[str] |
|
|
| runs | Number of times the agent has been run | int |
|
|
| rating | Average rating of the agent | float |
|
|
|
|
### Possible use case
|
|
<!-- MANUAL: use_case -->
|
|
**Agent Discovery**: Fetch details about a specific agent before adding it to your library.
|
|
|
|
**Agent Validation**: Check an agent's ratings and run count to assess quality and popularity.
|
|
|
|
**Dynamic Agent Selection**: Get agent metadata to decide which version or variant to use.
|
|
<!-- END MANUAL -->
|
|
|
|
---
|
|
|
|
## Search Store Agents
|
|
|
|
### What it is
|
|
Search for agents in the store
|
|
|
|
### How it works
|
|
<!-- MANUAL: how_it_works -->
|
|
This block searches the AutoGPT agent store using a query string. Filter results by category and sort by rating, runs, name, or recency (`updated_at`). Limit controls the maximum number of results returned.
|
|
|
|
Results include basic agent information and are output both as a list and individually for workflow iteration.
|
|
<!-- END MANUAL -->
|
|
|
|
### Inputs
|
|
|
|
| Input | Description | Type | Required |
|
|
|-------|-------------|------|----------|
|
|
| query | Search query to find agents | str | No |
|
|
| category | Filter by category | str | No |
|
|
| sort_by | How to sort the results | "rating" \| "runs" \| "name" \| "updated_at" | No |
|
|
| limit | Maximum number of results to return | int | No |
|
|
|
|
### Outputs
|
|
|
|
| Output | Description | Type |
|
|
|--------|-------------|------|
|
|
| error | Error message if the operation failed | str |
|
|
| agents | List of agents matching the search criteria | List[StoreAgent] |
|
|
| agent | Basic information of the agent | StoreAgent |
|
|
| total_count | Total number of agents found | int |
|
|
|
|
### Possible use case
|
|
<!-- MANUAL: use_case -->
|
|
**Agent Recommendation**: Search for agents that match user needs and recommend the best options.
|
|
|
|
**Marketplace Browse**: Allow users to explore available agents by category or keyword.
|
|
|
|
**Agent Orchestration**: Find and compose multiple specialized agents for complex workflows.
|
|
<!-- END MANUAL -->
|
|
|
|
---
|