skills/lwy-project-skill-installer/SKILL.md
Use this skill when the user wants to install, add, or configure a skill in a project. Analyze the project's tech stack and workflow, then recommend and install the best-matching skill. Triggers: 'install skill', 'add skill', 'configure skill', 'set up skill', 'enable skill', 'use skill in project', 'project skill', or when the user asks how to bring an existing skill capability into the current workspace.
npx skillsauth add learnwy/skills lwy-project-skill-installerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Analyze the project's tech stack, workflow, and pain points, then recommend the best skills to install. Always confirm with the user via AskUserQuestion before installing anything.
Core principle: First understand the project, then recommend, and install only after the user confirms.
Shared principle: This skill shares the 5 common writer disciplines with
project-skill-writer/project-agent-writer/project-rules-writer. See ../project-skill-writer/references/writer-discipline.md for details.
Trigger when:
Do not trigger when:
project-skill-writer)project-agent-writer)project-rules-writer)find-skills or trae-skill-finder skillnpx skills add find-skills -g -y[L1: Understand the goal]
↓
[L2: Project analysis]
↓
[L3: Skill discovery]
↓
[L4: Recommend] ← AskUserQuestion (confirmation required)
↓
[L5: Install]
↓
[L6: Verify]
Extract the user's needs—do not ask "what skill do you want?" but understand:
| What the user says | Real need | |----------|----------| | "install a skill" | Vague—proceed to L2 analysis to find gaps | | "find a skill for testing" | Specific domain—search for testing skills | | "set up this project with skills" | Full audit—analyze the project and recommend a suite | | "I keep doing X manually" | Automation gap—find a skill that solves X |
Scan the project to build a tech profile. Use search tools in parallel:
| Signal | What to look for | Tool |
|------|----------|------|
| Language | File extensions (.ts, .py, .swift, .go) | Glob |
| Framework | package.json dependencies, Podfile, go.mod, Cargo.toml | Read |
| Build tools | Makefile, webpack.config, vite.config, Bazel | Glob |
| Testing | jest.config, pytest.ini, XCTest, go test | Glob |
| CI/CD | .github/workflows/, Jenkinsfile, .gitlab-ci.yml | Glob |
| Existing skills | .agents/skills/, .trae/skills/, .cursor/skills/ | Glob |
| Existing rules | .agents/rules/, .trae/rules/ | Glob |
Project: {name}
Language: TypeScript, Swift
Framework: React 18, UIKit
Build: Vite, Bazel
Testing: Jest, XCTest
CI: GitHub Actions
Existing skills: [list]
Existing rules: [list]
Based on the tech profile and the user's goal, search for matching skills:
npx skills find "<user_query>"npx skills find "react", npx skills find "swift"npx skills find "testing"~/.trae/skills/ and ~/.trae-cn/skills/npx skills find "<query>" — search the skills.sh marketplacenpx @tiktok-fe/skills find "<query>" — search the internal registry (if available)Reject skills that:
Critical: Present recommendations via AskUserQuestion before installing any skill.
For each recommended skill, prepare:
Skill: {name}
Purpose: {what it does, one sentence}
Reason: {why it fits this project}
Install: {command}
Use AskUserQuestion:
{
"questions": [{
"question": "Based on your {language/framework} project, I recommend these skills. Which would you like to install?",
"header": "Skills",
"multiSelect": true,
"options": [
{
"label": "{skill-1-name} (Recommended)",
"description": "{one sentence: what it does + why it fits}"
},
{
"label": "{skill-2-name}",
"description": "{one sentence: what it does + why it fits}"
},
{
"label": "Skip",
"description": "Don't install any skills right now"
}
]
}]
}
Rules:
multiSelect: true to allow multiple installsAfter the user confirms which skills to install:
Use path discovery to determine the project-relative install path:
.agents/skills/ exists in the project root.agents/skills/ (no longer write to .trae/, .cursor/, .claude/—those are IDE-managed)# Community skills (skills.sh)
npx skills add <package-name> --path <project-root>/.agents/skills/
# Bytedance internal skills
npx @tiktok-fe/skills add <package-name> --path <project-root>/.agents/skills/
~/.trae/skills/, ~/.claude/skills/, or other global paths.trae/, .claude/, .cursor/—those are IDE-written directoriesVerify after installation:
Report to the user:
Installed {N} skills:
✓ {skill-1} → {path}
✓ {skill-2} → {path}
Usage: Just describe your need, and the skill activates automatically.
| Problem | Solution |
|------|----------|
| find-skills unavailable | Prompt: npx skills add find-skills -g -y |
| No skill matches the query | Suggest creating a custom skill via project-skill-writer |
| User requests a global install | Reject, explain the project-scope limitation, offer a project-relative alternative |
| User requests creating an agent/rule | Route to project-agent-writer or project-rules-writer |
| Install command fails | Show the error, suggest manual npx skills add <name> --path <path> |
| Skill conflicts with an existing one | Show a comparison, ask the user which to keep |
This skill handles only:
This skill does not handle:
project-skill-writerproject-agent-writerproject-rules-writertools
Fallback skill when no project-specific one matches. Provides 10 battle-tested software-engineering methodology agents: problem-definer (Weinberg), story-mapper (Patton), spec-by-example (Adzic), domain-modeler (DDD/Evans), responsibility-modeler (CRC/Wirfs-Brock), architecture-advisor (Bass), tdd-coach (Beck), refactoring-guide (Fowler), legacy-surgeon (Feathers), test-strategist (Crispin). Use when user asks about DDD, TDD, refactoring, story mapping, test strategy, or software-architecture quality attributes.
development
Use when the user wants to build, implement, or develop a feature. Orchestrates evidence-driven Spec-Driven Development. Default lifecycle is `lite` (INIT → IMPLEMENTING → TESTING → DONE); auto-promote to `standard` or `full` when scope, risk, or AC traceability demands it. Triggers: 'develop feature', 'implement this', 'build feature', 'add module', 'fix bug', '开发功能', '实现这个'.
documentation
当用户需要创建、更新或设计项目级技能(.agents/skills/*/SKILL.md)时使用此技能。Analyzes the user's problem and project context to design reusable skill solutions. 触发词:'创建技能'、'编写技能'、'构建技能'、'添加技能'、'更新技能'、'项目技能'、'新建技能'、'设计技能', or when the user describes a repetitive workflow that should be captured as a reusable AI skill.
development
Use when the user wants to create or update project-level AI rules (written to .agents/rules/*.md) that constrain AI behaviour. The rule format is the common frontmatter+markdown convention used by Trae / Cursor / Windsurf — not Trae-specific. Good for: code-style enforcement, naming conventions, commit-message format, or making the AI consistently follow a project pattern. NOT for skills (use project-skill-writer) or agents (use project-agent-writer). Triggers: '创建规则', '添加规则', '设置代码风格', '强制约定', '配置 AI 行为', 'AI 规则', '始终做 X', or any 'always do X' / 'never do Y' AI-behaviour request that should persist across sessions.