Suggestions
How capability suggestions are ranked — built-in rules by default, and optional semantic matching through an embeddings API you configure.
The platform suggests capability packages for a prompt, a task or a project.
Built-in rules (default)
Suggestions come from technologies, keywords and categories found in the text. No text leaves the server.
POST /api/v1/orgs/:orgId/registry/suggesttakes any mix oftext,projectIdandtaskId. A project adds its name, description, knowledge and the stack its last readiness check found; a task adds its title, prompt and background.- Each suggestion comes with its reasons ("Works with Playwright", "Testing & QA") and whether it is already installed for that task, project, person or organization.
- Shared technologies weigh most, then the package's own keywords, then categories. A shared category alone is never enough. Curated packages come first.
- The dashboard shows suggestions in Capabilities → Suggested and as you write a new task.
Semantic suggestions (optional)
With an embeddings API configured, packages close in meaning to the description are suggested too, even when they share no words with it.
EMBEDDINGS_URL=https://api.openai.com/v1 # any OpenAI-compatible API, e.g. Ollama: http://localhost:11434/v1
EMBEDDINGS_API_KEY=… # when the API needs one
EMBEDDINGS_MODEL=text-embedding-3-small
EMBEDDINGS_MIN_SIMILARITY=0.4 # depends on the modelText is sent to that API
Package listings and the text someone asks suggestions for — a prompt, a task, a project description — are sent to the embeddings API. Turn this on only when that is acceptable for your data, or point it at a local model.
- What is embedded: each package's name, description, tags and the start of its readme, in the background at
startup and when a listing changes. Server → Marketplace can start a full run (
POST /admin/registry/embed). Changing the model embeds everything again. - Ranking: closeness in meaning adds to the rules' score. Curated packages still come first.
- Failure: when the API fails, suggestions fall back to the rules.
- Scale: without Atlas, the 5,000 most used public packages are compared in memory. With
REGISTRY_SEARCH=atlas, create a vector index namedcapability_embeddingsonembedding.vector.
Verification status
Tested against a fake embeddings API, not yet a real model. The Atlas vector-search path has not been run.