CLI: port webview marketplace features for full parity#94
Merged
Conversation
CLI's Ink marketplace (surfaces/cli/src/views/SkillMarket.tsx) already fetched agent/skill data via marketplaceEnv but rendered a fraction of it. Split the render layer into surfaces/cli/src/views/market/ and add: agent tier badge+gauge+ladder, earned SOL, verified GitHub repos, blog carousel, full (scrollable) comment stacks, required-skills checkmarks+prices+collect-all, full SKILL.md via an in-view scroll viewport, dispose/re-equip, firing pulse, hide-owned filter, agent wallet search, Helius RPC status+settings, live 3-phase publish progress, and a publish image field + self blog composer. No webview/vscode/core changes — marketplaceEnv already returned everything needed; only the CLI's local MarketApi type was narrower than the real object. Two items from the issue's gap table were dropped after checking the actual protocol/webview source: postNote (skill comments) and publishSkill never had image/githubLink params in the wire protocol, and the webview itself doesn't expose them either — so there was no feature to port. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
4 tasks
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.
Summary
marketplaceEnvbut rendered a fraction of it.surfaces/cli/src/views/market/(tiers.ts,ScrollView.tsx,AgentProfileView.tsx,SkillDetailView.tsx,PublishProgressView.tsx,HeliusPanel.tsx) and widenedSkillMarket.tsx'sMarketApitype to match whatmarketplaceEnvactually returns.marketplaceEnvalready exposed every method/field needed; the CLI's localMarketApiinterface was just narrower than the real object it receives.postNote(skill comments) andpublishSkillnever hadimage/githubLinkparams in the wire protocol, and the webview itself doesn't expose them either — so there was nothing to port.Test plan
tsc --noEmitonsurfaces/cli— cleanpnpm build(tsup) insurfaces/cli— succeedsgit stashdiff-test that no pre-existing behavior regressed outside this branch's changes🤖 Generated with Claude Code