local-link/skills/fork-project/SKILL.md
Fork and set up open source projects under Lionad's GitHub account. Use when user wants to create a new project based on an existing repository that is not owned by Lionad. Triggers when git remote origin is not a Lionad repository and user wants to create their own version.
npx skillsauth add lionad-morotar/simple-local-llm-server fork-projectInstall 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.
This skill handles the workflow of forking or creating new GitHub projects under Lionad's account when working with third-party repositories. It manages repository setup, remote configuration, and documentation updates.
Run the following command to check if the current project belongs to Lionad:
git remote get-url origin
Decision:
github.com/Lionad-Morotar/ or github.com/lionad/ → Stop, this is already Lionad's projectMust consult user for the new project name.
Ask the user:
"This project is owned by [original-owner]. What would you like to name your fork under Lionad's account?"
Naming conventions:
my- or domain-specific prefix if it's a personal variantUse GitHub CLI to create the new repository:
gh repo create Lionad-Morotar/<new-name> --public --description "Fork of [original-repo]: [original-description]"
Flags:
--public or --private based on user preference (default to public for open source)--description should reference the original projectBefore pushing to the new repository, update the following files:
name field to the new package nameauthor field to Lionadrepository.url to the new GitHub URLhomepage if applicableREADME.md - Add fork attribution sectionLICENSE - Update copyright holder if changing license.github/workflows/, etc.)Commit all configuration updates:
git add -A
git commit -m "chore: update package metadata for fork"
Update Git remotes to point to the new repository:
# Rename current origin to upstream
git remote rename origin upstream
# Add new origin (Lionad's repo)
git remote add origin https://github.com/Lionad-Morotar/<new-name>.git
# Push to new origin
git push -u origin main
Add a section at the top of README.md (after the badges, before the main content) documenting the fork relationship:
> **About This Repo**
>
> This is a fork of [<upstream-owner>/<upstream-repo>](<upstream-repo-url>).(这句话格式要严格一致)
>
> This fork maintains the core functionality while publishing under the `<package-scope>` npm scope for personal use.(这句话可以适当改描述)
Dynamic values to extract:
| Placeholder | Source | Command/Field |
|-------------|--------|---------------|
| <upstream-owner> | git remote get-url upstream | Extract owner from https://github.com/<owner>/<repo>.git |
| <upstream-repo> | git remote get-url upstream | Extract repo name from upstream URL |
| <upstream-repo-url> | git remote get-url upstream | Use the full HTTPS URL (without .git suffix) |
| <package-scope> | package.json | Read name field (e.g., @lionad/openapi-to-skills → @lionad) |
Example extraction commands:
# Get upstream owner and repo
upstream_url=$(git remote get-url upstream)
# Parse: https://github.com/neutree-ai/openapi-to-skills.git
# Owner: neutree-ai, Repo: openapi-to-skills
# Get package scope from package.json
package_name=$(cat package.json | grep '"name"' | head -1 | sed 's/.*: "\([^"]*\)".*/\1/')
# Extract scope: @lionad/openapi-to-skills → @lionad
scope=$(echo "$package_name" | cut -d'/' -f1)
Commit this change:
git add README.md
git commit -m "docs: add fork attribution to README"
git push origin main
check-ownership.sh - Check if current repo belongs to Lionadsetup-remotes.sh - Configure origin and upstream remotesScenario: User is working on https://github.com/SomeAuthor/cool-lib.git
gh repo create Lionad-Morotar/my-cool-libtools
理解用户意图;listen 模式通过 grill-me 深挖任务并归档经验
development
给 VSCode(Insiders/Stable) 内置 ripgrep 加 5s 超时包装,防止搜索卡死吃满 CPU。--on 包装(幂等) / --off 还原 / 不带参数查状态。Use when VSCode 搜索卡死、rg 进程占满 CPU,或 VSCode 更新后超时保护失效需要重包。
development
为指定项目创建完全隔离的 hapi(Claude Code On the Go)实例,包括独立数据目录、LaunchAgent 持久化、zsh wrapper 和 app.hapi.run 直连 URL。与全局 ~/.hapi 互不干扰。
development
关闭承载当前 Claude Code 会话的宿主(VSCode 窗口或其终端面板),连同 claude 一起退出。通过 close-host-window 扩展触发:先 SIGTERM claude(走完 SessionEnd hooks)再关 host,不抢焦点、不丢 hooks。--host vscode 关窗口、--host terminal(默认)只关终端面板。Use when 任务结束要随宿主退出,或需精确关闭某 claude 终端所在窗口/面板。