Feature: marketplace-aware external skill recommendations in planning/design flows
- Dominant language
- TypeScript
- Stars
- 133k
- Forks
- 19.9k
- Avg merge
- 18h 46m
- Merged PRs (30d)
- 26
Description
## Summary
gstack already suggests **built-in** workflow skills (`/office-hours`, `/plan-eng-review`, `/plan-design-review`, etc.), but it has no way to surface the best **external** skill when the user’s request clearly points to a specific technology ecosystem.
Examples:
- "Build a Next.js app on Vercel with Supabase auth"
- "Need Azure CLI guidance for deployment"
- "Need GitHub CLI workflow automation"
- "Use the official Supabase skill"
The external marketplace already supports search via the Agent Skills / skills.sh CLI:
- `skills search `
- `skills search --json`
That means gstack could do better inside planning/design flows by:
1. reading the original user request
2. extracting technology keywords
3. querying the marketplace
4. surfacing the top relevant external skills alongside gstack’s internal workflow suggestions
Related but distinct from #113:
- #113 = publish **gstack's own skills** to skills.sh
- this issue = let gstack **consume the marketplace** to recommend third-party skills
## Problem
Today gstack’s suggestion layer is static and in-repo. The root skill only suggests adjacent gstack stages (brainstorm -> `/office-hours`, architecture -> `/plan-eng-review`, etc.).
That works for workflow routing, but it misses a major opportunity:
- when the user mentions a vendor/platform/tool with a high-quality external skill already available
- when the best next step is not only another gstack skill, but also a specialized ecosystem skill
- when the user is in plan/design mode and would benefit from the best existing skill before implementation starts
## Proposed behavior
### Automatic recommendations in planning/design flows
When `PROACTIVE=true`, planning/design skills should automatically run marketplace lookup using a **hybrid query**:
- original user request
- extracted technology/framework keywords
Target skills:
- `/office-hours`
- `/feature-scope`
- `/plan-ceo-review`
- `/plan-eng-review`
- `/plan-design-review`
- `/design-consultation`
- `/design-review`
- `/autoplan`
The output should show the top 3 relevant external skills with:
- skill / repo name
- one-line why it matches
- install command
### Manual parity path
Add a first-class manual command such as `/find-skills ` so users can explicitly do the same marketplace search on demand.
## Safety / UX rules
- Recommendation-only for v1: **never auto-install** or auto-run third-party skills
- Respect `PROACTIVE=false`
- Gracefully degrade if the marketplace CLI is unavailable
- Pass raw user text through a temp file or safe argument path, not shell interpolation
- Suppress obvious duplicates when gstack already has a strong built-in answer
## Implementation sketch
1. Add a helper script (for example `bin/gstack-marketplace-search`) that:
- accepts a query file / query string
- extracts normalized tech keywords
- calls `skills search --json`
- falls back to `npx -y agent-skills-cli search --json` if needed
- normalizes and ranks results
- caches results in `~/.gstack/cache/`
2. Add a shared template resolver in `scripts/gen-skill-docs.ts` that injects marketplace lookup instructions into planning/design skills.
3. Add a manual `/find-skills` skill that uses the same helper.
4. Update docs / validation / host generation so the new capability works for both Claude and Codex output.
## Acceptance criteria
- gstack can query the marketplace and normalize results
- planning/design skills surface relevant external skills automatically when appropriate
- `/find-skills ` exists for manual parity
- recommendations are suggestion-only, never auto-install
- feature is configurable and respects `PROACTIVE`
- tests cover CLI fallback, ranking, prompt integration, and docs/host generation
Contributor guide
Assessment
This issue has not been assessed yet.