{"id":"8689dc84-8498-4b26-8645-b6c5263bd17d","shortId":"QB989q","kind":"skill","title":"Refresh Cookiecutter-based repositories from their upstream template without losing local answers","tagline":"Use Cruft when an agent needs to pull new changes from a Cookiecutter template into an existing generated repository without redoing the project from scratch. The agent tracks the template origin, previews the diff, applies the update, and preserves the repository's saved answers","description":"# Refresh Cookiecutter-based repositories from their upstream template without losing local answers\n\nUse Cruft when an agent needs to pull new changes from a Cookiecutter template into an existing generated repository without redoing the project from scratch. The agent tracks the template origin, previews the diff, applies the update, and preserves the repository's saved answers and local customizations as carefully as possible.\n\n## Prerequisites\n\nPython plus Cruft and a repository generated from a Cookiecutter template\n\n## Installation\n\nRequirements and caveats from upstream:\n- [![License](https://img.shields.io/github/license/mashape/apistatus.svg)](https://pypi.python.org/pypi/cruft/)\n- To get started - install cruft using a Python package manager:\n- cruft create https://github.com/timothycrosley/cookiecutter-python/\n\nBasic usage or getting-started notes:\n- [![Build Status](https://github.com/cruft/cruft/workflows/Run%20tests/badge.svg)](https://github.com/cruft/cruft/actions?query=workflow%3A%22Run+tests%22+branch%3Amaster)\n- ![Example Usage New Project](https://raw.githubusercontent.com/cruft/cruft/master/art/example.gif)\n- ![Example Usage New Project](https://raw.githubusercontent.com/cruft/cruft/master/art/example_update.gif)\n\n- Source: https://github.com/cruft/cruft\n- Extracted from upstream docs: https://raw.githubusercontent.com/cruft/cruft/HEAD/README.md\n\n## Documentation\n\n- https://cruft.github.io/cruft/\n\n## Source\n\n- [Agent Skill Exchange](https://agentskillexchange.com/skills/refresh-cookiecutter-based-repositories-from-upstream-template/)","tags":["refresh","cookiecutter","based","repositories","from","upstream","template","skills","agentskillexchange","agent-skills","ai-agents","ai-tools"],"capabilities":["skill","source-agentskillexchange","skill-refresh-cookiecutter-based-repositories-from-upstream-template","topic-agent-skills","topic-ai-agents","topic-ai-tools","topic-awesome-list","topic-claude-code","topic-codex","topic-cursor","topic-llm","topic-mcp","topic-npx-skills","topic-openclaw","topic-skills-catalog"],"categories":["skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/agentskillexchange/skills/refresh-cookiecutter-based-repositories-from-upstream-template","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add agentskillexchange/skills","source_repo":"https://github.com/agentskillexchange/skills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (1,579 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:12:03.443Z","embedding":null,"createdAt":"2026-05-18T13:18:48.233Z","updatedAt":"2026-05-18T19:12:03.443Z","lastSeenAt":"2026-05-18T19:12:03.443Z","tsv":"'/cruft/':199 '/cruft/cruft':188 '/cruft/cruft/head/readme.md':195 '/cruft/cruft/master/art/example.gif)':177 '/cruft/cruft/master/art/example_update.gif)':184 '/cruft/cruft/workflows/run%20tests/badge.svg)](https://github.com/cruft/cruft/actions?query=workflow%3a%22run+tests%22+branch%3amaster)':170 '/github/license/mashape/apistatus.svg)](https://pypi.python.org/pypi/cruft/)':143 '/skills/refresh-cookiecutter-based-repositories-from-upstream-template/)':206 '/timothycrosley/cookiecutter-python/':158 'agent':18,40,75,97,201 'agentskillexchange.com':205 'agentskillexchange.com/skills/refresh-cookiecutter-based-repositories-from-upstream-template/)':204 'answer':13,57,70,114 'appli':48,105 'base':4,61 'basic':159 'build':166 'care':119 'caveat':137 'chang':23,80 'cookiecutt':3,26,60,83,132 'cookiecutter-bas':2,59 'creat':155 'cruft':15,72,125,148,154 'cruft.github.io':198 'cruft.github.io/cruft/':197 'custom':117 'diff':47,104 'doc':192 'document':196 'exampl':171,178 'exchang':203 'exist':30,87 'extract':189 'generat':31,88,129 'get':145,163 'getting-start':162 'github.com':157,169,187 'github.com/cruft/cruft':186 'github.com/cruft/cruft/workflows/run%20tests/badge.svg)](https://github.com/cruft/cruft/actions?query=workflow%3a%22run+tests%22+branch%3amaster)':168 'github.com/timothycrosley/cookiecutter-python/':156 'img.shields.io':142 'img.shields.io/github/license/mashape/apistatus.svg)](https://pypi.python.org/pypi/cruft/)':141 'instal':134,147 'licens':140 'local':12,69,116 'lose':11,68 'manag':153 'need':19,76 'new':22,79,173,180 'note':165 'origin':44,101 'packag':152 'plus':124 'possibl':121 'prerequisit':122 'preserv':52,109 'preview':45,102 'project':36,93,174,181 'pull':21,78 'python':123,151 'raw.githubusercontent.com':176,183,194 'raw.githubusercontent.com/cruft/cruft/head/readme.md':193 'raw.githubusercontent.com/cruft/cruft/master/art/example.gif)':175 'raw.githubusercontent.com/cruft/cruft/master/art/example_update.gif)':182 'redo':34,91 'refresh':1,58 'repositori':5,32,54,62,89,111,128 'requir':135 'save':56,113 'scratch':38,95 'skill':202 'skill-refresh-cookiecutter-based-repositories-from-upstream-template' 'sourc':185,200 'source-agentskillexchange' 'start':146,164 'status':167 'templat':9,27,43,66,84,100,133 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-tools' 'topic-awesome-list' 'topic-claude-code' 'topic-codex' 'topic-cursor' 'topic-llm' 'topic-mcp' 'topic-npx-skills' 'topic-openclaw' 'topic-skills-catalog' 'track':41,98 'updat':50,107 'upstream':8,65,139,191 'usag':160,172,179 'use':14,71,149 'without':10,33,67,90","prices":[{"id":"bf58da97-abde-4cd2-99e4-98d4471a12c0","listingId":"8689dc84-8498-4b26-8645-b6c5263bd17d","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"agentskillexchange","category":"skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:18:48.233Z"}],"sources":[{"listingId":"8689dc84-8498-4b26-8645-b6c5263bd17d","source":"github","sourceId":"agentskillexchange/skills/refresh-cookiecutter-based-repositories-from-upstream-template","sourceUrl":"https://github.com/agentskillexchange/skills/tree/main/skills/refresh-cookiecutter-based-repositories-from-upstream-template","isPrimary":false,"firstSeenAt":"2026-05-18T13:18:48.233Z","lastSeenAt":"2026-05-18T19:12:03.443Z"}],"details":{"listingId":"8689dc84-8498-4b26-8645-b6c5263bd17d","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"agentskillexchange","slug":"refresh-cookiecutter-based-repositories-from-upstream-template","github":{"repo":"agentskillexchange/skills","stars":8,"topics":["agent-skills","ai-agents","ai-tools","awesome-list","claude-code","codex","cursor","llm","mcp","npx-skills","openclaw","skills-catalog"],"license":"mit","html_url":"https://github.com/agentskillexchange/skills","pushed_at":"2026-05-18T19:02:17Z","description":"The open catalog of AI agent skills — 2,000+ security-scanned skills for Claude Code, Cursor, Codex, and more.","skill_md_sha":"f678abe0154694f292863b84fa447a0c52869072","skill_md_path":"skills/refresh-cookiecutter-based-repositories-from-upstream-template/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/agentskillexchange/skills/tree/main/skills/refresh-cookiecutter-based-repositories-from-upstream-template"},"layout":"multi","source":"github","category":"skills","frontmatter":{"name":"Refresh Cookiecutter-based repositories from their upstream template without losing local answers","description":"Use Cruft when an agent needs to pull new changes from a Cookiecutter template into an existing generated repository without redoing the project from scratch. The agent tracks the template origin, previews the diff, applies the update, and preserves the repository's saved answers and local customizations as carefully as possible."},"skills_sh_url":"https://skills.sh/agentskillexchange/skills/refresh-cookiecutter-based-repositories-from-upstream-template"},"updatedAt":"2026-05-18T19:12:03.443Z"}}