ワンクリックで
wire-shared-package
Use when you need to wire a shared Python package as an editable dependency across projects.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Use when you need to wire a shared Python package as an editable dependency across projects.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Use when you need to audit a research project against the init-project-research template.
Use when you need to validate a paper's bibliography — cross-references \cite{} keys against .bib files or embedded \bibitem entries, finds missing/unused/typo'd keys, and checks every key against the Paperpile library via the local resolver. Deep verification mode spawns parallel agents for DOI/metadata validation at scale. Fix mode rekeys drifted keys to canonical and stages missing entries for Paperpile.
Use when you need to bootstrap a full research project with directory scaffold and Overleaf symlink.
Use when you need to create a preprint / working-paper variant of a paper currently in conference or journal format. Forks the existing Overleaf project — adds a `preprint/` subfolder using the user's `your-template` Template, ports the body content from the source paper. The preprint is accessed locally via the existing `paper-{venue}/paper/preprint/` path (subfolder under the conference paper's symlink); no separate `paper-wp/` directory. Trigger on "set up a working paper", "create a preprint", "WP version", "arXiv-ready version", "ready to preprint". Never creates a new top-level Overleaf project — always nests inside the existing one. Never uses the conference's own style (.sty / .cls); always swaps to `your-template`.
Use when you need academic proofreading of a LaTeX paper (11 check categories).
Use when you need to assemble, anonymize, or audit a replication package.
SOC 職業分類に基づく
| name | wire-shared-package |
| description | Use when you need to wire a shared Python package as an editable dependency across projects. |
| allowed-tools | Read, Write, Edit, Glob, Grep, Bash(uv*), Bash(ls*), Bash(mkdir*), AskUserQuestion |
| argument-hint | <package-path> [--downstream project1,project2,...] [--tier 1|2] |
Wire a shared Python package as an editable local dependency across multiple research projects. Handles pyproject.toml creation, CLAUDE.md documentation, and Atlas infrastructure tracking.
/computational-experiments scaffold modeIdentify the shared package:
pyproject.toml to get name, version, and what it providesCLAUDE.md or README.md for module inventoryuv pip install -e ".[dev]"Identify downstream projects:
| Tier | Meaning | Action |
|---|---|---|
| 1 — Direct | Uses the package's core modules in active code | Full wiring: pyproject.toml + CLAUDE.md + Atlas |
| 2 — Partial | Will use specific modules when code work begins | CLAUDE.md note + Atlas only (no pyproject.toml yet) |
| 3 — Pattern only | Borrows design patterns, no code dependency | Atlas note only |
pyproject.toml? (Tier 1 projects need one)CLAUDE.md? (all tiers need one)project_path in frontmatter)For each Tier 1 downstream project:
pyproject.tomlIf no pyproject.toml exists, create one:
[project]
name = "{project-kebab-name}"
version = "0.1.0"
description = "{one-line from CLAUDE.md}"
requires-python = ">=3.11"
dependencies = [
"{shared-package-name}",
]
[project.optional-dependencies]
dev = [
"pytest>=8.0",
"ruff>=0.3",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/{project_underscored_name}"]
[tool.ruff]
line-length = 99
target-version = "py311"
[tool.uv.sources]
{shared-package-name} = { path = "{relative-path-to-package}", editable = true }
If pyproject.toml already exists, add the dependency to [project] dependencies and add the [tool.uv.sources] entry.
Key: The [tool.uv.sources] section tells uv to resolve the package from a local path instead of PyPI. The relative path must be correct from the downstream project to the shared package (typically ../package-name).
Add a "Shared Package Dependency" section under ## Setup:
### Shared Package Dependency
- **`{package-name}`** installed as editable dependency from `{relative-path}/`
- Provides: {list key modules this project uses}
- Install: `uv pip install -e ".[dev]"` (resolves {package-name} via `[tool.uv.sources]`)
- Project-specific code goes in `src/{project_name}/` — shared simulation code stays in {package-name}
cd "{project-path}" && uv pip install -e ".[dev]"
Then verify imports:
uv run python -c "from {package_module} import {key_class}; print('OK')"
For each Tier 2 downstream project, add to CLAUDE.md under ## Setup:
### Shared Package Dependency (Tier 2)
- **`{package-name}`** at `{relative-path}/` — provides {what this project will use}
- When code work begins, add `{package-name}` as editable dependency via `[tool.uv.sources]` in `pyproject.toml`
- This project will extend the framework with {project-specific extensions}
No pyproject.toml changes — the dependency is documented but not yet wired.
For each downstream project that has an Atlas topic file, add a ## Shared Infrastructure section between the Description and Key References sections:
## Shared Infrastructure
- **`{package-name}`** (Tier {N} — {direct reuse|partial reuse|pattern only}): {what components are used}
- Location: `{theme}/{package-dir}/`
{if Tier 1:}
- Install: editable dependency via `pyproject.toml` `[tool.uv.sources]`
Placement: After ## Description (or ## Portfolio Bridge if present), before ## Key References.
Finding the right topic file: Search Atlas by project_path frontmatter field:
grep -rl "project_path.*{project-folder}" ~/vault/atlas/
If the shared package has a CLAUDE.md or README.md, update its downstream project table to reflect all wired projects:
## Downstream Projects
| Project | Tier | Uses |
|---------|------|------|
| {Project Name} | {1/2/3} | {components used} |
uv pip install -e . on the shared package first.pyproject.toml for Tier 2 projects. They don't have active code yet — premature wiring creates broken installs.[tool.uv.sources]. Always use relative paths from the downstream project.src/.After completing all phases:
## Shared Infrastructure sectionQuick check: grep -rl "{package-name}" ~/vault/atlas/ should return all expected topic files.
| Setting | Default | Override |
|---|---|---|
| Build backend | hatchling | Specify in args |
| Python version | >=3.11 | Match shared package |
| Source layout | src/ | Match shared package |
| Relative path | ../package-name | Auto-detect from directory structure |
| Atlas section placement | After Description, before Key References | — |