contribute-upstreamlisted
Install: claude install-skill dagonet/claude-code-toolkit
# Contribute Upstream
Push improvements from the current project back to the claude-code-toolkit template.
**Requires:** `template-sync-tools` MCP server registered and running.
## Workflow
### 1. Load Manifest and Find Candidates
Call `template_load_manifest(project_path=".")`. If errors, stop.
Call `template_compute_status(project_path=".")`.
Collect files where `locally_modified` is true. Skip `PROJECT_CONTEXT.md` (always project-specific).
If no candidates: "No locally modified template files. Nothing to contribute."
Present the list:
```
Locally modified template files:
1. .claude/agents/architect.md
2. CLAUDE.md
3. .claude/agents/code-reviewer.md
```
### 2. Diff and Classify Each Candidate
For each candidate file:
1. Call `template_get_diff(project_path=".", file_path=F, diff_type="local_changes")`
2. Show the diff to the user
3. Ask: **Generalizable** (benefits any project using this variant) or **Project-specific** (unique to this project)?
Do NOT auto-classify. Always confirm with the user.
### 3. Reverse Placeholders
For each file confirmed as generalizable:
1. Call `template_reverse_placeholders(project_path=".", file_path=F)`
2. Show the `replacements_made` list so the user can verify placeholders were restored correctly
3. Show the `reversed_content` (or a relevant excerpt) for confirmation
4. If the user spots issues, they can provide corrected content
### 4. Check Cross-Variant Propagation
For each confirmed file:
1. Call `template_check_cros