一键导入
git
missense-kinase-toolkit-specific git conventions; extends my central `git` skill. Use when creating commits, branches, or pull requests.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
missense-kinase-toolkit-specific git conventions; extends my central `git` skill. Use when creating commits, branches, or pull requests.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
missense-kinase-toolkit Sphinx docs; extends my central `docs` skill. Use when adding/removing public API, fixing docstrings, or regenerating the docs/generated stubs (then rebuild with make clean && make html).
missense-kinase-toolkit-specific testing conventions; extends my central `tests` skill. Use when adding or running tests, or debugging test failures.
How the Streamlit app and the reusable mkt.databases.app package fit together (SequenceAlignment, StructureConfig/Visualizer, PropertyTables) and the schema → databases → app dependency chain. Use when editing the Streamlit app or the mkt.databases.app modules, or wiring visualization logic between them.
How to add or modify a database/API client in mkt.databases (the APIClient hierarchy in api_schema.py, query datetime + cache provenance stamping, requests caching, token handling). Use when integrating a new data source (REST/Swagger/GraphQL) or editing an existing client like cbioportal, oncokb, uniprot, chembl, open_targets, hgnc, pfam, ncbi, protvar, cancer_hotspots.
missense-kinase-toolkit-specific CI/CD layout; extends my central `ci` skill. Use when editing .github/workflows, adding a sub-package, changing the test env, or debugging CI failures.
missense-kinase-toolkit-specific Python style; extends my central `formatting` skill. Use whenever writing or editing any Python code in this repo.
| name | git |
| description | missense-kinase-toolkit-specific git conventions; extends my central `git` skill. Use when creating commits, branches, or pull requests. |
Apply my canonical git conventions (branch first, scoped imperative commits,
Claude attribution, PR-template handling) before the repo-specific notes below.
WebFetch and follow:
https://raw.githubusercontent.com/jessicaw9910/skills/main/.claude/skills/git/SKILL.md
If the fetch fails (no network / non-200), tell me the central git skill
could not be retrieved and confirm how to proceed — do not silently skip the
baseline.
schema/,
databases/, ml/, app/) where practical — CI workflows are path-filtered
per sub-package (see the ci skill).mainI keep long-lived topic branches (e.g. databases, ml, app, schema,
docs, cbioportal, oncokb, pkis, notebooks) that can sit untouched for
months. When I pick one up to develop a feature, I want it synced with main
accepting all incoming changes from main on conflict (I stash unsaved work
first).
Use:
git switch <topic-branch>
git stash # if there are unsaved changes
git fetch origin
git merge -X theirs origin/main
git stash pop # if you stashed
-X theirs favors the incoming branch (main). During a merge while on
the topic branch, ours = the topic branch and theirs = main — so
theirs is correct for "take main's version." This only forces main's
version on conflicting hunks; non-conflicting topic-branch work is kept.
It resolves binary-file conflicts (e.g. KinaseInfo.tar.gz) cleanly by taking
main's blob.main happens later via a PR.When I ask you to open a PR for work committed on a topic branch (schema,
databases, ml, etc.), push that topic branch and open the <branch> →
main PR directly. Do not ask me whether to use a clean branch off main, and
do not create one.
main, but I squash-and-merge every topic-branch PR — the whole branch
collapses to a single commit on main. The PR's commit list looks long; the
merged diff is exactly the branch's net change vs. main. A large
ahead-of-main count is expected and is not a reason to hesitate, warn,
or propose an alternative.main first if it's stale (see the section above), then
git push origin <branch> and gh pr create --base main --head <branch>.main for a standalone fix that genuinely belongs to no
existing topic branch — and even then, don't carve a fix out of a topic
branch it's already committed on.When one working tree has uncommitted changes spanning several sub-packages and
each belongs on a different stale topic branch, don't try to carry them across
git switch (stale branches diverge and the switch will conflict or refuse).
Instead, patch each set onto its freshly-synced branch:
git diff -- <subpkg> > <subpkg>.patch.git checkout -- <paths> (untracked WIP files stay
put and travel harmlessly across switches — confirm they aren't tracked on
the target branch first).git switch <branch>, refresh from main (see above), then
git apply --3way <subpkg>.patch, and commit.Stage with git add -u <subpkg> (not git add <subpkg>, which also stages
untracked WIP files) so pre-commit only lints what you're committing.