sync-upstream
Merge the latest cursor/plugins pstack into this Claude Code port.
Skill by lucasheriques
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/lucasheriques-sync-upstream
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 26, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/sync-upstream
What's inside
- Skill name
sync-upstream- Description
- Merge the latest cursor/plugins pstack into this Claude Code port. Use for "sync upstream", "update pstack from cursor", "pull poteto's changes", or when upstream pstack has new commits.
- License
- MIT
- Instructions
- 27 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- files: referenced but missing: scripts/sync-upstream.sh, scripts/check-port.test.ts
Files (2)
- SKILL.md
- translation.md · references/
SKILL.md (first lines)
# Sync upstream This repo is two branches. `upstream` is a verbatim mirror of `cursor/plugins/pstack`, one commit per sync. `main` is the Claude Code port, and it merges `upstream`, so every sync is a real 3-way merge: upstream's edits land on top of the port's translations, and only lines both sides touched conflict. ## Steps 1. **Branch.** From a worktree off `main`, create `sync/upstream-<date>`. 2. **Mirror.** Run `scripts/sync-upstream.sh`. It fast-forwards `upstream` from `origin`, commits the new snapshot, and pushes it, or reports that nothing changed. If nothing changed, stop and say so. If it warns that the previous sync has not landed, land it first. If it warns that `main` squash-merged it, run the `git merge -s ours` it prints before step 4, which makes the previous mirror the merge base. 3. **Read why.** `gh api --paginate 'repos/cursor/plugins/commits?path=pstack&per_page=100'` lists upstream's commits. Read down to the previously synced SHA, which the script printed. Read the messages of the new ones so the merge preserves poteto's intent, not just the text. 4. **Merge.** `git merge upstream`. Resolve each conflict per `references/translation.md`: take upstream's new substance and keep the port's translation of it. Resolve by structure too: - A file the port deleted (`automations/`, `docs/`, `assets/`, `.cursor-plugin/`, `skills/make-bot-ui/`, `skills/setup-pstack/`, the root `plugin.json`) stays deleted. Before discarding upstream's edit, check whether it carries a rule that belongs somewhere the port kept. A new `setup-pstack` role means a new row in `skills/poteto-mode/references/models.md`. - `skills/poteto-help/` is rewritten for Claude Code, not mirrored. When upstream changes its skill map, playbook phrases, or troubleshooting table, carry the substance across and keep the port's own setup, install, and merge-policy sections. - `README.md` is the port's own. Keep ours, and add any new skill to its table. - A new `skills/principle-*/SKILL.md` moves to `skills/poteto-mode/principles/principle-*.md`, rewriting its relative links: `../principle-x/SKILL.md` becomes `./principle-x.md`, and `../<skill>/` becomes `../../<skill>/`. - A new skill or playbook gets ported, unless it only makes sense in Cursor. Then delete it and add it to the list above. 5. **Lint to zero.** Run `bun scripts/check-port.ts` and translate every finding. When upstream introduces a new Cursor-ism, add a rule and a parameterized case to `scripts/check-port.test.ts` first, then translate. 6. **Verify.** - `bun test ./scripts/check-port.test.ts` - `cd skills/poteto-mode/scripts && bun test orch watch-pr` - `claude plugin validate .`. Its `No version specified` warning is expected (see Deliberate departures), and so is its warning that the root `CLAUDE.md` is not loaded as plugin context, since that file is for contributors to this repo. - `claude -p --plugin-dir . "/pstack:poteto-mode quote the sentence that says where sibling skills live"` must print an absolute path. - `claude -p --plugin-dir . "Spawn a pstack:poteto-agent that quotes the same sentence from its preloaded skill"` must print the same absolute path. - `claude -p --plugin-dir . "Spawn a pstack:read-only agent and ask it to create a file named probe.txt"` must report that it refused or could not. - `bun scripts/check-port.ts` again, last, so nothing a verify step suggested slipped past it. 7. **Ship.** Commit the merge with a body that lists upstream's merged commits, each conflict and how it was resolved, and anything deleted as Cursor-only. Run the **interrogate** gate, push, and open the PR ready. Merging is Lucas's, and it must be a merge commit (`gh pr merge --merge`), never squash or rebase. A squashed sync drops `upstream` from `main`'s ancestry, and every later sync re-conflicts on lines already resolved. Say this in the PR body.
From lucasheriques/pstack, MIT.
More from lucasheriques/pstack
- 0.606score
poteto-help
lucasheriques
Guides users through /pstack:poteto-mode and picking the skill, playbook, or principle for a task.
SkillAFreshness: A★ 3Claude Code +9 - 0.584score
poteto-mode
lucasheriques
poteto's agent style for concise, detailed responses, deliberate subagents, unslopped prose, simple code, and verified work.
SkillAFreshness: A★ 3Claude Code +9 - 0.581score
how
lucasheriques
Use for "how does X work", code walkthroughs before changing something, and placement / ownership / layering questions ("where should this live", "which…
SkillAFreshness: A★ 3Claude Code +9 - 0.581score
interrogate
lucasheriques
Use for "interrogate", "adversarial review", "multi-model review", "challenge this", "stress test this code", "find blind spots", "tear this apart", reviewing…
SkillAFreshness: A★ 3Claude Code +9 - 0.581score
architect
lucasheriques
Sketch types, signatures, and module structure before code, then stay in the loop while implementation fills in.
SkillAFreshness: A★ 3Claude Code +9 - 0.581score
create-verification-skill
lucasheriques
Generate a project-local verification skill that drives your app the way a user does — any language, framework, or platform.
SkillAFreshness: A★ 3Claude Code +9 - 0.579score
benchmark-checklist
lucasheriques
Vet a perf measurement (limiter, tuning, limits, errors, repeatability, relevance, and whether the work happened) before you report or act on it.
SkillAFreshness: A★ 3Claude Code +9 - 0.576score
arena
lucasheriques
Spawn N parallel candidates at the same task, pick a base, graft the strongest parts of the losers into it.
SkillAFreshness: A★ 3Claude Code +9 - 0.536score
blast-radius
lucasheriques
Find what a change could break somewhere else before it ships, beyond the diff, and prove the one fact it's safe because of by running real code instead of…
SkillBFreshness: B★ 3Claude Code +9 - 0.536score
maintain-verification-skill
lucasheriques
Periodic pass that keeps a project's verification skill and feature map honest: parallel source readers per feature, one live session driving every feature…
SkillBFreshness: B★ 3Claude Code +9 - 0.533score
no-comments
lucasheriques
Spawn Comment Sicko, fix accepted findings, and offer encodings for claimed constraints.
SkillBFreshness: B★ 3Claude Code +9
Signals
- Stars
- 3
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 14, 2026 (14 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/lucasheriques/pstack
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from lucasheriques
- 0.606score
poteto-help
lucasheriques
Guides users through /pstack:poteto-mode and picking the skill, playbook, or principle for a task.
SkillAFreshness: A★ 3Claude Code +9 - 0.584score
poteto-mode
lucasheriques
poteto's agent style for concise, detailed responses, deliberate subagents, unslopped prose, simple code, and verified work.
SkillAFreshness: A★ 3Claude Code +9 - 0.581score
how
lucasheriques
Use for "how does X work", code walkthroughs before changing something, and placement / ownership / layering questions ("where should this live", "which…
SkillAFreshness: A★ 3Claude Code +9 - 0.581score
interrogate
lucasheriques
Use for "interrogate", "adversarial review", "multi-model review", "challenge this", "stress test this code", "find blind spots", "tear this apart", reviewing…
SkillAFreshness: A★ 3Claude Code +9 - 0.581score
architect
lucasheriques
Sketch types, signatures, and module structure before code, then stay in the loop while implementation fills in.
SkillAFreshness: A★ 3Claude Code +9 - 0.581score
create-verification-skill
lucasheriques
Generate a project-local verification skill that drives your app the way a user does — any language, framework, or platform.
SkillAFreshness: A★ 3Claude Code +9
Cite this page
sync-upstream skill. Agent Mart. https://agentmart.dev/skills/lucasheriques-sync-upstream (last updated 2026-10-24)