一键导入
vs-internal-shared
Internal reference for vs shared conventions: artifact paths, project ID resolution, storage preference, and skill taxonomy.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Internal reference for vs shared conventions: artifact paths, project ID resolution, storage preference, and skill taxonomy.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Analyze Codex, Claude Code, or Cursor threads, transcripts, and transcriptions. Use for thread analysis, transcript review, conversation audits, agent-performance diagnosis, comparing sessions, finding loops or corrections, and extracting decisions, outcomes, evidence, and actionable improvements.
Use when asked to scan a named external repo for ideas worth porting. Produces a cited, ranked steals report.
Use when asked to QA, test this site or app, find bugs, or test and fix a user-facing interface. Runs harness-aware browser or computer-use QA, fixes issues, and re-verifies.
Use when the user wants to create/open a pull request, submit changes for review, send changes to dev, or otherwise ship local Git changes. Also use for explicit commit and push or push to main/master or the current branch requests. Requires affirmative publish intent; do not use for review/readiness-only requests. Creates and verifies a GitHub PR by default; honors explicit direct pushes and babysits only when requested.
Use when asked to watch a PR, fix CI, address review comments, or keep a branch merge-ready in a loop.
Use when the user asks how GitHub projects solve a problem, wants prior art, external code examples, ecosystem patterns, or a landscape comparison across parallel projects.
| name | vs-internal-shared |
| description | Internal reference for vs shared conventions: artifact paths, project ID resolution, storage preference, and skill taxonomy. |
| disable-model-invocation | true |
| user-invocable | false |
This skill is a reference library, not an executable workflow. Other skills skills link to sections below instead of duplicating the rules.
Skills that write session artifacts (pushback reports, specs, RFCs, QA reports,
GitHub research docs, briefs, steals, thread analyses, issue drafts) store them
under ~/.vs/$PROJECT_ID/<kind>/....
$PROJECT_ID resolves, in order:
owner-repo parsed from remote.origin.url (handles both SSH git@github.com:owner/repo.git and HTTPS https://github.com/owner/repo forms, strips .git, replaces / with -).$(basename "$PWD") when no git remote is configured.The git-slug form is stable across machines and disambiguates same-named repos under different parents (e.g. alice/foo vs bob/foo).
PROJECT_ID=$(git config --get remote.origin.url 2>/dev/null \
| sed -E 's#\.git$##; s#.*[:/]([^/]+/[^/]+)$#\1#; s#/#-#g')
[ -z "$PROJECT_ID" ] && PROJECT_ID=$(basename "$PWD")
ARTIFACTS_DIR="$HOME/.vs/$PROJECT_ID"
Paste this inline — skills must stay self-contained in case they're installed standalone outside the vs repo.
| Context | $PROJECT_ID |
|---|---|
git@github.com:vltansky/vs.git | vltansky-vs |
https://github.com/acme/foo | acme-foo |
No git remote, pwd = /tmp/scratch | scratch |
~/.vs/$PROJECT_ID/
├── pushback/ # pushback stress-test reports
├── specs/ # shape-it design docs
├── rfcs/ # rfc-research RFCs
├── qa-reports/ # qa QA reports + screenshots
├── github-research/ # github-research prior-art docs and landscape maps
├── briefs/ # brief outputs
├── verification/ # verification result summaries
├── perf/ # performance baselines and evaluator checkpoints
├── prototypes/ # prototype questions, decisions, and evidence
├── improve/ # improvement backlog plans and indexes
├── sessions/ # workflow session handoffs
├── thread-analysis/ # cross-session thread comparison reports
├── issues/ # to-issues drafts / index
└── steals/ # steal reports
Use references/rich-artifacts.md when a
skill may produce an HTMDX report or dashboard. It defines the selection gate,
single-file source contract, pinned runtime, and sensitive-data fallback.
Never write into the project tree (docs/, .context/, .octocode/) for session artifacts. Those are reserved for committed source-of-truth files: skill definitions (skills/), evals (evals/), and any RFC/spec the user explicitly asked to keep in the repo.
Each user-facing vs skill has a kind classification:
vs-shape-it, vs-improve, vs-build-it, vs-ship-it, vs-bugfix, vs-fix-pr, vs-baby-sit, vs-orchestrate)vs-tdd, vs-qa, vs-brief, vs-verify, vs-deslop, vs-perf, vs-debug-mode, vs-roast-review, vs-github-research, vs-rfc-research, vs-pushback, vs-prototype, vs-to-issues, vs-steal, vs-setup-adr, vs-decide-for-me, vs-retro, vs-try-skill)vs-internal-shared is repo-local shared reference material, not a user-facing skill kind.
Keep kind classifications in skill body text or local references, not custom top-level frontmatter.
Use references/codex-goal.md for VS workflow
goal ownership, goal-ready output shape, completion rules, and handoff wording.
Workflow skills should link to that reference instead of duplicating the goal
contract in their always-loaded body.
Use references/subagents.md for shared fanout,
context, ownership, and collection limits.
Use references/independent-advisors.md
for risk-gated cross-model review. It is an internal reusable mechanism owned
publicly by vs-pushback, not a separate user-facing skill.
When the host exposes a structured question tool — Claude Code's
AskUserQuestion, or an equivalent multiple-choice prompt UI — present
clarifying and grill questions through it instead of plain chat text. One tool
call carries the batched round; each question lists its options with the
recommended one first, labeled the default. This is the default rendering in
Claude Code.
Fall back to the plain-text Question N / Recommendation / Options: A) ...
format only when no such tool is available (for example Codex today), or when a
question is genuinely open-ended (defend/modify/counter) rather than a choice
among known options. The batching limits and the recommendation-as-default rule
are identical in both renderings — only the surface changes.
Skills chain by loading a sibling's SKILL.md directly (../vs-x/SKILL.md), not
by invoking it through the host's skill command. A disable-model-invocation
flag blocks the host command only — it must never silently degrade a workflow:
gh pr create is not
ship-it, and the user cannot tell the difference from the output alone.Every user-facing skill ends with compact Prev, Next, and Relevant lines.
On standalone completion, emit only the Next line. When composed by another
workflow, return to the caller without emitting it. Relevant is lateral,
reciprocal, and limited to two skills; it is map metadata, not runtime output.
Public building blocks should include a short Flow Contract section so workflows can consume them without copy-pasting their bodies.
Use this shape:
## Flow Contract
- **Kind:** Building block
- **Inputs:** What the calling flow must provide
- **Outputs:** Chat section, artifact path, status label, or decision log entry
- **Status:** PASS | WARN | FAIL | BLOCKED, or the skill's equivalent labels
- **Consumers:** Workflows or building blocks that call or embed this contract
- **Skip conditions:** When the caller may safely skip the building block
The contract should stay small. Detailed execution belongs in the skill body; the contract is the stable handshake between skills.