bug-ops/claude-plugins/stack

Claude Code and agent skill by bug-ops/claude-plugins

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Language profile loader for dev-agents. Detects the project's language stack (Rust, TypeScript/JavaScript, Luau/Lua, or several) and points each agent to its binding language rules: toolchain commands plus role-specific idioms, anti-patterns, and checklists. Every dev-agents agent loads it at startup; it is not meant to be invoked by users.

Install

npx vskill@latest install bug-ops/claude-plugins/stack

SKILL.md

Stack Profile

Agents in this plugin carry process only. The language rules you apply — commands, idioms, anti-patterns, checklists — live in this skill's references. They are binding: treat them as part of your system prompt.

References directory: ${CLAUDE_SKILL_DIR}/references/ Plugin root (for knowledge skills a profile names): ${CLAUDE_PLUGIN_ROOT}

1. Detect the stack

  1. If your task prompt contains a Stack: line (e.g. Stack: rust, Stack: rust,typescript, Stack: luau), use it as given. Orchestrators always pass it.
  2. Otherwise detect from the repository root with Glob (not recursive into node_modules/, target/, or Packages/):
MarkerProfile
Cargo.tomlrust
tsconfig.json, or package.json listing typescript in any dependency blocktypescript
package.json without TypeScripttypescript, JavaScript mode — skip type-check-only steps
default.project.json or another *.project.json (Rojo), wally.toml, a pesde.toml targeting roblox, or a rokit.toml/aftman.toml/foreman.toml that pins rojoluau, Roblox mode
.luaurc, a pesde.toml targeting lune or luau, or .lune/ scripts — without Roblox markersluau, standalone Luau mode
*.rockspec, .luarc.json, .busted, or .lua sources without any Luau markerluau, Lua mode — skip type-check-only steps
  1. Monorepos: also check one level down (*/Cargo.toml, */package.json, packages/*/package.json, */default.project.json, */wally.toml) when the root has no marker.
  2. Files in your task scope (the diff under review, the files you are told to change) add their profile even when the root marker belongs to another language: .rs → rust; .ts, .tsx, .mts, .cts, .js, .jsx, .mjs, .cjs → typescript; .luau, .lua → luau (mode from the markers above). Use the nearest manifest above those files for toolchain commands.
  3. Several profiles match → polyglot. Load every matching profile and apply each one only to the files of its language.
  4. Nothing matches → continue with the generic process from your agent prompt. Never invent toolchain commands; say Stack: none detected in your handoff.

2. Read the references

For every detected profile, Read both files BEFORE the first source read or edit:

  1. ${CLAUDE_SKILL_DIR}/references/<profile>/toolchain.md — manifest, check/lint/format/test/doc/audit commands, version policy, extra knowledge skills.
  2. ${CLAUDE_SKILL_DIR}/references/<profile>/<role-file> — from the table below.
Agent / skillRole file
architectarchitect.md
developerdeveloper.md
testing-engineertesting.md
performance-engineerperformance.md
security-maintenancesecurity.md
code-reviewerreviewer.md
cicd-devopscicd.md
debuggerdebugger.md
criticcritic.md
live-testerlive-tester.md
researcherresearcher.md
arch-analystarch-inspect.md
security-analystsecurity-audit.md
release skillrelease.md
init-project skillinit.md

Available profiles: rust, typescript, luau. A profile that has no file for your role still has toolchain.md — read it.

  1. Load the profile's knowledge skills NOW, in the same startup step — not later, not "when needed":
ProfileKnowledge skillsRoles that load them
rustrust-modern-apisarchitect, developer, code-reviewer, arch-analyst
typescript——
luau——

Call Skill(skill: "dev-agents:<name>"); without the Skill tool, Read ${CLAUDE_PLUGIN_ROOT}/skills/<name>/SKILL.md instead.

Startup gate — do not read or edit project source until all three hold for every detected profile: toolchain.md read, role file read, knowledge skills for your role loaded.

3. Project rules win

Project-level instructions override profile defaults: CLAUDE.md, .claude/rules/*.md, the project's own CI workflow, and scripts in the manifest (justfile, Makefile, package.json scripts). When the project defines a CI-matching command, run that instead of the profile default.

4. Record what you loaded

Start the ## Context section of your handoff (or your final report when you write no handoff) with one line:

Stack: rust (toolchain, developer, rust-modern-apis)

List each profile, the reference files you read, and the knowledge skills you loaded. Downstream agents and the lead use it to verify that language rules were applied.

5. Memory hygiene

When you write agent memory, prefix each entry with the profile it applies to: [rust], [typescript], [luau], or [any]. Ignore remembered entries tagged for a profile that is not in the current stack.

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/bug-ops/claude-plugins/stack/badge)](https://verified-skill.com/skills/bug-ops/claude-plugins/stack)

Something wrong with this skill or its page? Tell us.