git-repokit 0.9.10__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. git_repokit-0.9.10.dist-info/METADATA +422 -0
  2. git_repokit-0.9.10.dist-info/RECORD +174 -0
  3. git_repokit-0.9.10.dist-info/WHEEL +5 -0
  4. git_repokit-0.9.10.dist-info/entry_points.txt +2 -0
  5. git_repokit-0.9.10.dist-info/licenses/LICENSE +9 -0
  6. git_repokit-0.9.10.dist-info/top_level.txt +1 -0
  7. repokit/__init__.py +8 -0
  8. repokit/__main__.py +12 -0
  9. repokit/__version__.py +4 -0
  10. repokit/_vendor/__init__.py +0 -0
  11. repokit/_vendor/ailib/__init__.py +1 -0
  12. repokit/_vendor/ailib/analyzer.py +177 -0
  13. repokit/_vendor/ailib/backend.py +95 -0
  14. repokit/_vendor/ailib/cache.py +97 -0
  15. repokit/_vendor/ailib/parsers.py +52 -0
  16. repokit/_vendor/ailib/transports/__init__.py +16 -0
  17. repokit/_vendor/ailib/transports/cli.py +312 -0
  18. repokit/_vendor/ailib/transports/openai_compat.py +383 -0
  19. repokit/_vendor/ailib/transports/prompt_file.py +41 -0
  20. repokit/_vendor/ailib/types.py +224 -0
  21. repokit/auth_integration.py +244 -0
  22. repokit/badges.py +183 -0
  23. repokit/branch_utils.py +364 -0
  24. repokit/cli.py +2997 -0
  25. repokit/common_kit.py +202 -0
  26. repokit/config.py +686 -0
  27. repokit/defaults.py +220 -0
  28. repokit/directory_analyzer.py +1244 -0
  29. repokit/directory_profiles.py +423 -0
  30. repokit/git_config.py +370 -0
  31. repokit/github_create.py +142 -0
  32. repokit/github_setup.py +248 -0
  33. repokit/guardrails.py +707 -0
  34. repokit/history_cleaner.py +449 -0
  35. repokit/history_protection.py +434 -0
  36. repokit/hooks/pre-commit-guardrails +122 -0
  37. repokit/hooks/pre-commit-template +28 -0
  38. repokit/layers.py +510 -0
  39. repokit/licenses/0bsd.txt +14 -0
  40. repokit/licenses/LICENSES.md +27 -0
  41. repokit/licenses/__init__.py +142 -0
  42. repokit/licenses/agpl-3.0.txt +661 -0
  43. repokit/licenses/all-rights-reserved.txt +10 -0
  44. repokit/licenses/apache-2.0.txt +201 -0
  45. repokit/licenses/bsd-2-clause.txt +24 -0
  46. repokit/licenses/bsd-3-clause.txt +28 -0
  47. repokit/licenses/bsl-1.0.txt +23 -0
  48. repokit/licenses/cc-by-4.0.txt +395 -0
  49. repokit/licenses/cc-by-sa-4.0.txt +427 -0
  50. repokit/licenses/cc0-1.0.txt +121 -0
  51. repokit/licenses/epl-2.0.txt +277 -0
  52. repokit/licenses/gpl-2.0.txt +339 -0
  53. repokit/licenses/gpl-3.0.txt +674 -0
  54. repokit/licenses/isc.txt +15 -0
  55. repokit/licenses/lgpl-2.1.txt +504 -0
  56. repokit/licenses/lgpl-3.0.txt +165 -0
  57. repokit/licenses/mit.txt +21 -0
  58. repokit/licenses/mpl-2.0.txt +373 -0
  59. repokit/licenses/unlicense.txt +24 -0
  60. repokit/readme_blocks.py +112 -0
  61. repokit/remote_integration.py +627 -0
  62. repokit/repo_manager.py +2796 -0
  63. repokit/template_engine.py +391 -0
  64. repokit/templates/ai/claude/CLAUDE-nested.md.template +25 -0
  65. repokit/templates/ai/claude/CLAUDE.md.template +98 -0
  66. repokit/templates/ai/claude/instructions/step1_context_rebuilder.md +33 -0
  67. repokit/templates/ai/claude/instructions/step2_dev_workflow_process.md +67 -0
  68. repokit/templates/ai/claude/instructions/step3_context_bridge.md +52 -0
  69. repokit/templates/common/CHANGELOG.md.template +15 -0
  70. repokit/templates/common/CONTRIBUTING.md.template +31 -0
  71. repokit/templates/common/README.md.template +30 -0
  72. repokit/templates/common/gitattributes.template +17 -0
  73. repokit/templates/common/gitignore.template +141 -0
  74. repokit/templates/extras/FUNDING.yml.template +13 -0
  75. repokit/templates/extras/ROADMAP.md.template +17 -0
  76. repokit/templates/extras/dependabot.yml.template +22 -0
  77. repokit/templates/extras/one-offs-README.md.template +28 -0
  78. repokit/templates/extras/platform-support.md.template +11 -0
  79. repokit/templates/extras/pull_request_template.md.template +25 -0
  80. repokit/templates/extras/release-template.md.template +34 -0
  81. repokit/templates/extras/settings.json.template +11 -0
  82. repokit/templates/extras/stale.yml.template +14 -0
  83. repokit/templates/github/CODEOWNERS.template +11 -0
  84. repokit/templates/github/ISSUE_TEMPLATE/bug-report.md.template +29 -0
  85. repokit/templates/github/ISSUE_TEMPLATE/feature-request.md.template +19 -0
  86. repokit/templates/github/issues/notes.md.template +18 -0
  87. repokit/templates/github/issues/roadmap.md.template +15 -0
  88. repokit/templates/hooks/pre-commit.template +64 -0
  89. repokit/templates/layers/archetypes/any/claude-plugin/.claude-plugin/marketplace.json +20 -0
  90. repokit/templates/layers/archetypes/any/claude-plugin/plugin/.claude-plugin/plugin.json +15 -0
  91. repokit/templates/layers/archetypes/any/claude-plugin/plugin/README.md +28 -0
  92. repokit/templates/layers/archetypes/c-cpp/cmake-app/.github/workflows/ci-c-cpp.yml +24 -0
  93. repokit/templates/layers/archetypes/c-cpp/cmake-app/.repokit-common.toml.rkappend +4 -0
  94. repokit/templates/layers/archetypes/c-cpp/cmake-app/.vscode/launch.json +29 -0
  95. repokit/templates/layers/archetypes/c-cpp/cmake-app/.vscode/tasks.json +26 -0
  96. repokit/templates/layers/archetypes/c-cpp/cmake-app/CMakeLists.txt +47 -0
  97. repokit/templates/layers/archetypes/c-cpp/cmake-app/CMakePresets.json +23 -0
  98. repokit/templates/layers/archetypes/c-cpp/cmake-app/cmake/GenerateStamp.cmake +45 -0
  99. repokit/templates/layers/archetypes/c-cpp/cmake-app/src/main.cpp +27 -0
  100. repokit/templates/layers/archetypes/c-cpp/cmake-app/tests/test_version.cpp +20 -0
  101. repokit/templates/layers/archetypes/c-cpp/cmake-app/vcpkg.json +5 -0
  102. repokit/templates/layers/archetypes/c-cpp/minimal/.vscode/launch.json +27 -0
  103. repokit/templates/layers/archetypes/c-cpp/minimal/Makefile +10 -0
  104. repokit/templates/layers/archetypes/c-cpp/minimal/build.bat +7 -0
  105. repokit/templates/layers/archetypes/c-cpp/minimal/src/__RK_SNAKE__.c +26 -0
  106. repokit/templates/layers/archetypes/c-cpp/msbuild/.vscode/launch.json +17 -0
  107. repokit/templates/layers/archetypes/c-cpp/msbuild/.vscode/tasks.json +20 -0
  108. repokit/templates/layers/archetypes/c-cpp/msbuild/__RK_PROJECT__.sln +19 -0
  109. repokit/templates/layers/archetypes/c-cpp/msbuild/__RK_PROJECT__.vcxproj +41 -0
  110. repokit/templates/layers/archetypes/c-cpp/msbuild/src/main.cpp +26 -0
  111. repokit/templates/layers/archetypes/js-ts/claude-plugin/.repokit-common.toml +28 -0
  112. repokit/templates/layers/archetypes/js-ts/claude-plugin/.vscode/launch.json +34 -0
  113. repokit/templates/layers/archetypes/js-ts/claude-plugin/plugin/hooks/hooks.json +15 -0
  114. repokit/templates/layers/archetypes/js-ts/claude-plugin/plugin/hooks/scripts/session-start.mjs +23 -0
  115. repokit/templates/layers/archetypes/js-ts/claude-plugin/plugin/tests/manifest.test.js +30 -0
  116. repokit/templates/layers/archetypes/js-ts/node/.repokit-common.toml.rkappend +6 -0
  117. repokit/templates/layers/archetypes/js-ts/node/package.json +13 -0
  118. repokit/templates/layers/archetypes/js-ts/node-package/.github/workflows/release.yml +39 -0
  119. repokit/templates/layers/archetypes/js-ts/node-package/package.json +32 -0
  120. repokit/templates/layers/archetypes/js-ts/node-package/src/index.ts +13 -0
  121. repokit/templates/layers/archetypes/js-ts/node-package/tests/index.test.ts +11 -0
  122. repokit/templates/layers/archetypes/js-ts/script/.vscode/launch.json +34 -0
  123. repokit/templates/layers/archetypes/js-ts/script/__RK_PROJECT__.js +37 -0
  124. repokit/templates/layers/archetypes/js-ts/script/tests/version.test.js +26 -0
  125. repokit/templates/layers/archetypes/js-ts/ts/package.json +18 -0
  126. repokit/templates/layers/archetypes/js-ts/ts/tsconfig.json +15 -0
  127. repokit/templates/layers/archetypes/python/claude-plugin/.github/workflows/ci-python.yml +44 -0
  128. repokit/templates/layers/archetypes/python/claude-plugin/.repokit-common.toml +21 -0
  129. repokit/templates/layers/archetypes/python/claude-plugin/.vscode/launch.json +33 -0
  130. repokit/templates/layers/archetypes/python/claude-plugin/VERSION +1 -0
  131. repokit/templates/layers/archetypes/python/claude-plugin/plugin/hooks/hooks.json +15 -0
  132. repokit/templates/layers/archetypes/python/claude-plugin/plugin/hooks/scripts/run-hook.mjs +42 -0
  133. repokit/templates/layers/archetypes/python/claude-plugin/plugin/hooks/scripts/session_start.py +31 -0
  134. repokit/templates/layers/archetypes/python/claude-plugin/plugin/tests/test_manifest.py +42 -0
  135. repokit/templates/layers/archetypes/python/pypi/.github/workflows/release.yml +63 -0
  136. repokit/templates/layers/archetypes/python/pypi/.vscode/launch.json +43 -0
  137. repokit/templates/layers/archetypes/python/pypi/__RK_SNAKE__/__init__.py +5 -0
  138. repokit/templates/layers/archetypes/python/pypi/__RK_SNAKE__/__main__.py +6 -0
  139. repokit/templates/layers/archetypes/python/pypi/__RK_SNAKE__/_version.py +96 -0
  140. repokit/templates/layers/archetypes/python/pypi/__RK_SNAKE__/cli.py +18 -0
  141. repokit/templates/layers/archetypes/python/pypi/pyproject.toml +71 -0
  142. repokit/templates/layers/archetypes/python/pypi/tests/conftest.py +11 -0
  143. repokit/templates/layers/archetypes/python/pypi/tests/test_version.py +50 -0
  144. repokit/templates/layers/archetypes/python/script/.github/workflows/ci-python.yml +43 -0
  145. repokit/templates/layers/archetypes/python/script/.repokit-common.toml +14 -0
  146. repokit/templates/layers/archetypes/python/script/.vscode/launch.json +33 -0
  147. repokit/templates/layers/archetypes/python/script/VERSION +1 -0
  148. repokit/templates/layers/archetypes/python/script/__RK_PROJECT__.py +40 -0
  149. repokit/templates/layers/archetypes/python/script/tests/test_version.py +25 -0
  150. repokit/templates/layers/archetypes/python/setuppy/requirements.txt +8 -0
  151. repokit/templates/layers/archetypes/python/setuppy/setup.py +23 -0
  152. repokit/templates/layers/languages/c-cpp/.gitignore.rkappend +20 -0
  153. repokit/templates/layers/languages/c-cpp/.repokit-common.toml +7 -0
  154. repokit/templates/layers/languages/c-cpp/include/__RK_SNAKE__/version.h +20 -0
  155. repokit/templates/layers/languages/c-cpp/src/app.rc +25 -0
  156. repokit/templates/layers/languages/js-ts/.editorconfig +15 -0
  157. repokit/templates/layers/languages/js-ts/.github/workflows/ci-js-ts.yml +41 -0
  158. repokit/templates/layers/languages/js-ts/.gitignore.rkappend +13 -0
  159. repokit/templates/layers/languages/js-ts/.repokit-common.toml +19 -0
  160. repokit/templates/layers/languages/js-ts/.vscode/launch.json +24 -0
  161. repokit/templates/layers/languages/js-ts/VERSION +1 -0
  162. repokit/templates/layers/languages/python/.github/workflows/ci-python.yml +76 -0
  163. repokit/templates/layers/languages/python/.gitignore.rkappend +15 -0
  164. repokit/templates/layers/languages/python/.vscode/launch.json +33 -0
  165. repokit/templates/layers/manifest.toml +302 -0
  166. repokit/templates/vault/CLAUDE.md +29 -0
  167. repokit/templates/vault/claude/_maps/MOC-project.md +15 -0
  168. repokit/templates/vault/claude/_oracle/backlinks.md +3 -0
  169. repokit/templates/vault/claude/_oracle/concepts.md +12 -0
  170. repokit/templates/vault/claude/_oracle/manifest.md +10 -0
  171. repokit/templates/vault/claude/_todo/ACTIVE-WORK.md +18 -0
  172. repokit/templates/vault/claude/_todo/OPEN-LOOPS.md +14 -0
  173. repokit/utils.py +316 -0
  174. repokit/vault.py +248 -0
@@ -0,0 +1,422 @@
1
+ Metadata-Version: 2.4
2
+ Name: git-repokit
3
+ Version: 0.9.10
4
+ Summary: Create standardized Git repositories: language presets, licences, GitHub setup, and a private notes vault
5
+ Author: Dustin Darcy
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/DazzleTools/git-repokit
8
+ Project-URL: Repository, https://github.com/DazzleTools/git-repokit
9
+ Project-URL: Issues, https://github.com/DazzleTools/git-repokit/issues
10
+ Project-URL: Changelog, https://github.com/DazzleTools/git-repokit/blob/main/CHANGELOG.md
11
+ Keywords: git,repository,scaffolding,template,project-generator,github
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Environment :: Console
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Operating System :: OS Independent
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.10
18
+ Classifier: Programming Language :: Python :: 3.11
19
+ Classifier: Programming Language :: Python :: 3.12
20
+ Classifier: Programming Language :: Python :: 3.13
21
+ Classifier: Topic :: Software Development :: Version Control :: Git
22
+ Requires-Python: >=3.10
23
+ Description-Content-Type: text/markdown
24
+ License-File: LICENSE
25
+ Requires-Dist: requests>=2.25.0
26
+ Requires-Dist: tomli>=1.1; python_version < "3.11"
27
+ Provides-Extra: test
28
+ Requires-Dist: pytest>=7.0.0; extra == "test"
29
+ Requires-Dist: python-dotenv>=1.0.0; extra == "test"
30
+ Requires-Dist: pyyaml>=6.0; extra == "test"
31
+ Requires-Dist: build>=1.0; extra == "test"
32
+ Provides-Extra: dev
33
+ Requires-Dist: pytest>=7.0.0; extra == "dev"
34
+ Requires-Dist: python-dotenv>=1.0.0; extra == "dev"
35
+ Requires-Dist: pyyaml>=6.0; extra == "dev"
36
+ Requires-Dist: build>=1.0; extra == "dev"
37
+ Requires-Dist: black>=23.0.0; extra == "dev"
38
+ Requires-Dist: flake8>=6.0.0; extra == "dev"
39
+ Requires-Dist: mypy>=1.0.0; extra == "dev"
40
+ Dynamic: license-file
41
+
42
+ # RepoKit
43
+
44
+ [![GitHub Workflow Status](https://github.com/djdarcy/git-repokit/actions/workflows/main.yml/badge.svg)](https://github.com/djdarcy/git-repokit/actions)
45
+ [![Version](https://img.shields.io/badge/version-0.6.0-blue)](https://github.com/djdarcy/git-repokit/releases)
46
+ [![Python](https://img.shields.io/badge/python-%3E%3D3.7-darkgreen)](https://python.org/downloads)
47
+ [![License](https://img.shields.io/badge/license-MIT-orange)](https://github.com/djdarcy/git-repokit/blob/main/LICENSE)
48
+ [![GitHub Discussions](https://img.shields.io/badge/discussions-Welcome-lightgrey)](https://github.com/djdarcy/git-repokit/discussions)
49
+
50
+ **Transform chaotic code folders into professional, organized repositories that work seamlessly with GitHub and teams.**
51
+
52
+ RepoKit automates the creation of standardized Git repositories with professional structure, worktree-based and branching workflows, and GitHub/Gitlab/etc deployment pipelines. Whether you're starting fresh or organizing existing code, RepoKit provides the structure and tools for professional development.
53
+
54
+ ## Why RepoKit?
55
+
56
+ **Before**: Scattered files, no organization, deployment nightmares
57
+ **After**: Professional structure, team-ready, GitHub-ready, portfolio-worthy
58
+
59
+ > **New to RepoKit?** Read [Why RepoKit Exists](docs/Why-RepoKit-Exists.md) for the complete picture.
60
+
61
+ ## Features
62
+
63
+ ### Core Capabilities
64
+ - **Universal Bootstrap System**: Analyze and migrate ANY project to RepoKit structure
65
+ - **Standardized Repository Structure**: Consistent directory layout with standard folders
66
+ - **Branch Strategies**: a single `main` branch with private notes kept out of git, or the multi-branch model (main, dev, staging, test, live, and a local-only private branch)
67
+ - **Worktree Management**: Git worktrees for efficient branch isolation and parallel development
68
+ - **Private Content Protection**: Secure local-only content that never gets pushed
69
+ - **GitHub/GitLab Integration**: Automated repository creation and deployment
70
+ - **AI Development Integration**: Built-in Claude AI assistance with workflow documentation
71
+ - **Two template systems**: the structure every project gets, then the code type on top -- a language layer and, below it, layers named by the choice they answer (how it is built, what it uses, what it is), composed with `--with` or taken whole as a preset (`--language python,c-cpp`, `--with c-cpp/cmake-app`, `--with cmake-lib,qt`); `repokit list` shows them; a new language is a folder and a manifest entry, not code
72
+ - **Comprehensive Test Framework**: Unit, integration, and end-to-end testing
73
+
74
+ ### Universal Project Support
75
+ - **Empty Projects**: Start fresh with optimal structure
76
+ - **Existing Code**: Preserve your files while adding RepoKit benefits
77
+ - **Git Repositories**: Maintain full history while upgrading workflow
78
+ - **Complex Projects**: Handle multi-branch, multi-contributor scenarios
79
+ - **Legacy Codebases**: Safe migration with conflict resolution
80
+
81
+ ## 📦 Installation
82
+
83
+ Python 3.10 or newer. The command is `repokit`.
84
+
85
+ ```bash
86
+ # From PyPI
87
+ pip install git-repokit
88
+
89
+ # From source
90
+ git clone https://github.com/DazzleTools/git-repokit.git
91
+ cd git-repokit
92
+ pip install -e ".[dev]" # with the test and lint tools
93
+ ```
94
+
95
+ ## 🎯 Quick Start
96
+
97
+ ### Create a New Project
98
+ ```bash
99
+ # Basic project creation
100
+ repokit create my-awesome-project --language python
101
+
102
+ # A C/C++ project: the language's layer plus its default archetype (cmake-app)
103
+ repokit create my-tool --language c-cpp
104
+
105
+ # A preset names its language; several languages stack in the order given
106
+ repokit create my-tool --with c-cpp/msbuild
107
+ repokit create my-tool --language python,c-cpp
108
+
109
+ # Compose layers below the language (bare names when unique; the tool orders them)
110
+ repokit create my-tool --with setuppy
111
+ repokit list # every language's presets and layers, one screen
112
+
113
+ # Create and deploy to GitHub in one command
114
+ repokit create my-project --language python --publish-to github --private-repo
115
+
116
+ # Create with AI integration
117
+ repokit create my-project --ai claude --publish-to github
118
+ ```
119
+
120
+ ### Languages and archetypes (the code-type layers)
121
+
122
+ Every project gets the same structure (README, CONTRIBUTING, `.github/`, `.gitignore`, the vault, repokit-common). `--language` adds the code type on top, from `repokit/templates/layers/`: each language has a layer and a default archetype, and an archetype (`--with LANG/NAME`) adds its own layer and implies its language. With several languages and no `--with`, the first language is the primary one and only its default archetype applies (two archetypes would both claim the settings and build files); the other languages add their language layers. A later layer's file replaces an earlier one; a file named `<name>.rkappend` is appended instead (so each language adds its lines to `.gitignore`); `__RK_NAME__` tokens in file names and contents become the project's names (`my-tool`, `my_tool`, `MY_TOOL`, `MyTool`, the author, the year, a GUID). Workflow files are copied unchanged. Files are written byte for byte, so a header's BOM or a `.sln`'s line endings are what the layer holds. `repokit list` prints the known languages, presets and layers; an unknown name, or one whose layer is not built yet, stops before anything is created and names what is known. `generic` (the default) adds no code-type files.
123
+
124
+ `--with` takes a list. A token is a preset (`python/pypi`, the tested lists in the table below), a layer qualified by its language (`c-cpp/qt`), or a bare name when only one language has it (`setuppy`; `qt` is refused naming both). Every layer belongs to a **facet**, the question it answers -- where it runs, which dialect, how it is built or packaged, what it uses, what it is -- and the tool orders a list by facet, fills in what a layer implies (its language at least), and refuses two answers to a one-answer question (`pypi,setuppy`). A list that equals a preset is recorded as that preset in `.repokit.json`; any other list is assembled by the rules and noted once as not a tested preset. `.repokit.json` records `layers`, every layer in the order applied.
125
+
126
+ CI comes from the layers too: `ci-python.yml` with the Python layer (a matrix of pytest runs and a build), `ci-c-cpp.yml` with the cmake-app archetype (CMake, CTest on three operating systems); the README's workflow badge names the file that exists, and a project with no CI has no workflow badge. The structure writes `.gitattributes` (line-ending normalisation, and `scripts/repokit-common/** linguist-vendored` so GitHub does not count the vendored tooling as the project's language) and a `CHANGELOG.md` with the first version's heading and links, which git-repokit-common's version tool expects.
127
+
128
+ | Language | Default archetype | Archetypes |
129
+ |---|---|---|
130
+ | `python` | `python/pypi` (`pyproject.toml` with a dynamic version, the package with `cli.py` and `_version.py`, tests, the publish-on-release workflow -- the shape of git-repokit-template's projects) | `python/setuppy` (`setup.py` + `requirements.txt`, the output before 0.7.1); `python/script` (one module reading `VERSION`, its own small CI, no packaging -- the simple-projects floor); `python/claude-plugin` (a Claude Code plugin whose hooks are Python, run through a small node launcher; pytest tests; the same nested shape and shared manifests as the js-ts plugin, which stays the default for a bare `--with claude-plugin`); `python/comfyui`, `python/django`, `python/qt` announced |
131
+ | `c-cpp` | `c-cpp/cmake-app` (CMake presets, a vcpkg manifest, CTest, a build-time version stamp, CI) | `c-cpp/msbuild` (a Visual Studio solution), `c-cpp/minimal` (one source file, `Makefile` + `build.bat`); `c-cpp/cmake-lib` and `c-cpp/qt` announced. All three build as generated with Visual Studio 2022's tools (`tests/test_layers_c_cpp.py`); the version lives in `include/<name>/version.h`, which CMake, the `.rc` resource and the code all read |
132
+ | `js-ts` | `js-ts/node-package` (an npm package in TypeScript: `package.json` with an exports map, `tsconfig.json`, `src/index.ts`, `node:test` tests, publish-on-release; the layers `node`, `ts`, `node-package`) | `js-ts/script` (one `.js` run with node, reading `VERSION`, no build step -- the floor); `js-ts/claude-plugin` (a Claude Code plugin in `plugin/` with its own manifest, a SessionStart hook, `node:test` tests and the marketplace README, the marketplace manifest at the root; add `ts` for TypeScript); `js-ts/web-vite-react`, `js-ts/obsidian-plugin`, `js-ts/browser-extension`, `js-ts/comfyui-frontend` announced. The version lives in `VERSION`; the vendored version tool keeps `package.json` in step |
133
+
134
+ ### Adopt an Existing Project
135
+ ```bash
136
+ # Analyze what RepoKit will do
137
+ repokit analyze .
138
+
139
+ # Adopt in-place with safe strategy
140
+ repokit adopt . --publish-to github --private-repo
141
+
142
+ # Migrate to new structure (creates copy)
143
+ repokit migrate ./old-project ./new-project
144
+ ```
145
+
146
+ ## 🔧 Common Use Cases
147
+
148
+ ### 1. Brand New Python Project
149
+ ```bash
150
+ # Create project with GitHub deployment
151
+ repokit create awesome-api \
152
+ --language python \
153
+ --description "My awesome Python API" \
154
+ --publish-to github \
155
+ --private-repo \
156
+ --ai claude
157
+ ```
158
+
159
+ ### 2. Existing Project Migration
160
+ ```bash
161
+ # First, analyze your project
162
+ cd existing-project
163
+ repokit analyze .
164
+
165
+ # Then adopt with recommended settings
166
+ repokit adopt . \
167
+ --migration-strategy safe \
168
+ --publish-to github \
169
+ --organization my-company
170
+ ```
171
+
172
+ ### 3. Legacy Project Modernization
173
+ ```bash
174
+ # Analyze complex project
175
+ repokit analyze ./legacy-app
176
+
177
+ # Adopt with careful conflict handling
178
+ repokit adopt ./legacy-app \
179
+ --strategy safe \
180
+ --branch-strategy gitflow \
181
+ --dry-run # Preview changes first
182
+ ```
183
+
184
+ ### 4. Multi-Language Monorepo
185
+ ```bash
186
+ # Create with custom structure
187
+ repokit create platform \
188
+ --language generic \
189
+ --directories "backend,frontend,shared,docs,infra" \
190
+ --branches "main,develop,release,hotfix" \
191
+ --publish-to github
192
+ ```
193
+
194
+ ## 📊 Project Analysis
195
+
196
+ RepoKit can analyze any project and provide migration recommendations:
197
+
198
+ ```bash
199
+ repokit analyze /path/to/project
200
+
201
+ # Output includes:
202
+ # - Project type (empty, source_no_git, git_with_history, etc.)
203
+ # - Detected primary language
204
+ # - Migration complexity (low/medium/high)
205
+ # - Recommended migration strategy
206
+ # - Recommended branch strategy
207
+ # - Step-by-step migration plan
208
+ ```
209
+
210
+ ## 🌳 Branch Strategies
211
+
212
+ RepoKit supports multiple branching strategies.
213
+
214
+ ### Main-only (the default)
215
+ ```
216
+ main
217
+ ```
218
+ `repokit create my-project` makes the project folder the repository, on `main`, with:
219
+ - `private/` as **its own git repository** (ignored by the project; linked into every worktree);
220
+ - [git-repokit-common](https://github.com/DazzleTools/git-repokit-common) vendored at `scripts/repokit-common/`, with its hooks installed (version sync, private-content checks, test gating).
221
+
222
+ `--no-common` skips git-repokit-common; `--private-mode branch` keeps private work on a private branch only.
223
+
224
+ `--license <id>` writes `LICENSE` from the catalogue (the SPDX set GitHub and GitLab offer, plus `gpl-3.0-or-later` and the like, and `all-rights-reserved`), `--license file=<path>` copies a text as it is, `--license none` writes none; a licence is required, so with no flag the global config must name `license` (and `license_private` for `--private-repo`), and otherwise the create refuses and lists the catalogue. `--extras funding,dependabot,stale,pr-template,release-template,roadmap,platform-support,vscode-settings,placeholders` (or `all`) adds the optional files the old template carried; they are off unless named here or in the global config's `extras` list, and `--no-extras` turns them off. The house style, then, is a `~/.repokit/config.json` such as:
225
+
226
+ ```json
227
+ {"license": "gpl-3.0", "license_private": "all-rights-reserved",
228
+ "extras": ["funding", "dependabot", "stale", "pr-template", "release-template", "roadmap", "placeholders"],
229
+ "github": {"username": "you", "organization": "your-org"}}
230
+ ```
231
+
232
+ With it, `repokit create NAME --language python` reproduces the project tree git-repokit-template gave, which `tests/test_template_parity.py` keeps true; the same licence and extras land for `--language c-cpp` and `--language js-ts`.
233
+
234
+ ### The private-branch model
235
+
236
+ These keep your working history on a local-only `private` branch (repository in `<name>/local/`, `main` in `<name>/github/`) and move finished work to the public branches -- squashed, fast-forwarded, or selectively. A valid workflow, and RepoKit's original one, but more involved: hooks refuse private files on public branches to keep mistakes from leaking. See [docs/Branch-Strategies.md](docs/Branch-Strategies.md).
237
+
238
+ With `--with-common`, these strategies also get git-repokit-common's hooks, configured to refuse private files on the public branches. `repokit setup-guardrails` installs the same hooks in an existing project.
239
+
240
+ ### Standard
241
+ ```
242
+ private → dev → main → test → staging → live
243
+ ```
244
+
245
+ ### Simple
246
+ ```
247
+ private → dev → main
248
+ ```
249
+
250
+ ### GitFlow
251
+ ```
252
+ private → feature/* → develop → release/* → main
253
+ ↘ ↗
254
+ hotfix/* → → → ↗
255
+ ```
256
+
257
+ ### GitHub Flow
258
+ ```
259
+ private → feature/* → main
260
+ ```
261
+
262
+ ### Custom
263
+ ```bash
264
+ repokit create my-project \
265
+ --branches "main,develop,qa,production" \
266
+ --worktrees "main,develop"
267
+ ```
268
+
269
+ ## 🔐 GitHub/GitLab Integration
270
+
271
+ ### With the gh CLI (simplest)
272
+
273
+ ```bash
274
+ gh auth login # once
275
+ repokit create my-project --github # private repo under your account, main pushed
276
+ repokit create my-project --github --public --org MyOrg
277
+ ```
278
+
279
+ git-repokit uses gh's login, so no token is configured here. Only public branches are pushed; a private branch never leaves your machine.
280
+
281
+ ### Through the REST API with a token
282
+
283
+ ### Initial Setup
284
+ ```bash
285
+ # Store GitHub credentials (one time)
286
+ repokit store-credentials --publish-to github --token YOUR_TOKEN
287
+
288
+ # Or use environment variable
289
+ export GITHUB_TOKEN=YOUR_TOKEN
290
+ ```
291
+
292
+ ### Automatic Deployment
293
+ ```bash
294
+ # Create and deploy in one command
295
+ repokit create my-project --publish-to github --private-repo
296
+
297
+ # Deploy to organization
298
+ repokit create team-project \
299
+ --publish-to github \
300
+ --organization my-company \
301
+ --private-repo
302
+ ```
303
+
304
+ ## 🤖 AI Integration
305
+
306
+ RepoKit includes Claude AI integration for enhanced development:
307
+
308
+ ```bash
309
+ # Create project with AI assistance
310
+ repokit create my-project --ai claude
311
+
312
+ # This adds:
313
+ # - CLAUDE.md with project context
314
+ # - Development workflow instructions
315
+ # - Problem-solving methodology (The Process)
316
+ # - Private documentation structure
317
+ ```
318
+
319
+ ## 📁 Directory Structure
320
+
321
+ RepoKit creates an organized project structure:
322
+
323
+ ```
324
+ my-project/
325
+ ├── local/ # Main repository (private branch)
326
+ │ ├── docs/ # Documentation
327
+ │ ├── tests/ # Test files
328
+ │ ├── scripts/ # Utility scripts
329
+ │ ├── private/ # Local-only content
330
+ │ │ └── claude/ # AI assistance docs
331
+ │ └── ...
332
+ ├── github/ # Main branch worktree
333
+ └── dev/ # Development branch worktree
334
+ ```
335
+
336
+ ## 🧪 Testing
337
+
338
+ RepoKit includes a comprehensive test framework:
339
+
340
+ ```bash
341
+ # Run all tests
342
+ python tests/run_tests.py
343
+
344
+ # Run specific test categories
345
+ python tests/run_tests.py --unit # Fast unit tests
346
+ python tests/run_tests.py --integration # CLI integration tests
347
+ python tests/run_tests.py --github # GitHub API tests (live; requires token)
348
+
349
+ # Check test environment
350
+ python tests/run_tests.py --check
351
+ ```
352
+
353
+ Every run is isolated from your git config, home directory and tokens; see `tests/README.md` (and `python -m pytest` works too). A `git push` runs the unit class through the vendored pre-push hook (`test-command` in `pyproject.toml`, about four seconds); the complete suite runs in CI, and before a tag run it yourself: `python -m pytest -q` (about seven minutes).
354
+
355
+ ## 📚 Documentation
356
+
357
+ ### Getting Started
358
+ - **[Documentation Guide](docs/README.md)** - Start here for navigation
359
+ - **[Why RepoKit Exists](docs/Why-RepoKit-Exists.md)** - Understand the problem and solution
360
+ - **[Adoption Guide](docs/Adoption-Guide.md)** - Step-by-step tutorials for existing projects
361
+
362
+ ### Reference Guides
363
+ - **[Recipes and How-Tos](docs/Recipes-And-Howtos.md)** - Copy-paste commands for common scenarios
364
+ - **[Branch Strategies](docs/Branch-Strategies.md)** - Branching workflows explained
365
+ - **[Migration Guide](docs/Migration-Guide.md)** - Universal bootstrap scenarios
366
+ - **[Auth Guide](docs/Auth-Guide.md)** - Authentication and credentials
367
+ - **[Workflow Guide](docs/Workflow-Guide.md)** - Development workflows
368
+ - **[Deployment Demo](docs/Deployment-Demo.md)** - Step-by-step deployment examples
369
+ - **[Test Framework](tests/README.md)** - Comprehensive testing documentation
370
+
371
+ > **💡 Pro Tip**: Start with the [Documentation Guide](docs) for easier perusal and recommended reading order.
372
+
373
+ ## 🛠️ Configuration
374
+
375
+ RepoKit uses hierarchical configuration:
376
+
377
+ 1. **Default values** (built-in)
378
+ 2. **Global config** (`~/.repokit/config.json`)
379
+ 3. **Project config** (`./.repokit.json`)
380
+ 4. **Environment variables** (`REPOKIT_*`)
381
+ 5. **CLI arguments** (highest priority)
382
+
383
+ ### Example Configuration
384
+ ```json
385
+ {
386
+ "name": "my-project",
387
+ "language": "python",
388
+ "branches": ["main", "develop", "staging"],
389
+ "worktrees": ["main", "develop"],
390
+ "user": {
391
+ "name": "Your Name",
392
+ "email": "your.email@example.com"
393
+ },
394
+ "github": true,
395
+ "private_repo": true
396
+ }
397
+ ```
398
+
399
+ ## Contributing
400
+
401
+ Contributions are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and guidelines. Please feel free to open issues or submit pull requests.
402
+
403
+ Like the project?
404
+
405
+ [!["Buy Me A Coffee"](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/djdarcy)
406
+
407
+
408
+ ## License
409
+
410
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
411
+
412
+ ## Acknowledgments
413
+
414
+ - Inspired by modern DevOps practices and GitOps workflows
415
+ - https://nvie.com/posts/a-successful-git-branching-model/
416
+ - https://trunkbaseddevelopment.com/
417
+ - https://docs.github.com/en/get-started/quickstart/github-flow
418
+ - https://martinfowler.com/articles/continuousIntegration.html
419
+ - https://www.atlassian.com/continuous-delivery
420
+ - https://www.perforce.com/blog/vcs/best-branching-strategies-high-velocity-development
421
+ - Built for developers who value consistency and automation
422
+ - Special thanks to the open-source community
@@ -0,0 +1,174 @@
1
+ git_repokit-0.9.10.dist-info/licenses/LICENSE,sha256=3NkKtgRWvVTMlNVpZOTOWVn5W5kJ0v2Q-2AGKRNq1j8,1076
2
+ repokit/__init__.py,sha256=kw0XYxYZr_DDFly7aiJ0gLdddFM5JDQKeHoKWA0idAM,220
3
+ repokit/__main__.py,sha256=fSAtA0wPraxZt3rodp6Y5W_4RvNVYPvqVT0GoYa9khU,188
4
+ repokit/__version__.py,sha256=2M2tOO9WGeCO2KhvqPtmpyxnAt__Ksfv0fgQ-8b3UgA,133
5
+ repokit/auth_integration.py,sha256=6uVhUEhFAvNYXOKDqmoQe4_lAjcmWdrLv-Savji1Qug,7775
6
+ repokit/badges.py,sha256=zSL-B-UkVzprxqfPyBQ8jnQdOnHoBg1NyHcThvXlj_8,10106
7
+ repokit/branch_utils.py,sha256=t-PATAnjAxtiZm2kjouC3NvtPzKAL-Qb3_0BC8Vb_ic,13665
8
+ repokit/cli.py,sha256=2kbBSlmJxzhDLeH7P8PLy8n4QoT8bUc_7tyDQhr156c,109581
9
+ repokit/common_kit.py,sha256=f50K6GSYRm3fuFEH-vqK3SpdOpMASS_mbRN1W6wX6Go,8854
10
+ repokit/config.py,sha256=NZTOkTueXrtSunNQSNi2Oo9b-FRRN3IwOfxzaH94Ry4,24717
11
+ repokit/defaults.py,sha256=iOjbmu-ifcnFdCzdztj-cnODevNWVpZxfaMnwNxnA10,7252
12
+ repokit/directory_analyzer.py,sha256=98AbhBuulmtppFRhYoout7T0oKivdLSgzOQGqYeLKPw,44148
13
+ repokit/directory_profiles.py,sha256=XNsJE86QWOzkbZhY7L3onthOnj5lsw26yrbvTNthETg,15493
14
+ repokit/git_config.py,sha256=w0M-ZYwcnim3RZbGJHskKbs3QNhz0Vc0ccCrM4OE-e8,13251
15
+ repokit/github_create.py,sha256=zsok8hTYnSsUP4tlFDGfykLVQA__BrJkxePwuDEHB3A,6215
16
+ repokit/github_setup.py,sha256=JRlOYIFlksv70qSs5TwgZOUEapRJ1JZ_q47F03NPV0k,11967
17
+ repokit/guardrails.py,sha256=GwWoWuyt_TLDyn-nye5AZ0Le1z26L_rtF8gsuA-ENhw,28638
18
+ repokit/history_cleaner.py,sha256=9ojhhyyBG4Tc5sr15l66cSGVMv1DPBIxk6OKtX-hPKI,15635
19
+ repokit/history_protection.py,sha256=Gjw3iVNW90xeMq9OweyBjVVbA334bFVtVXucJhOOfD4,14413
20
+ repokit/layers.py,sha256=_tZVmQlboOb9wm2aSyUDCn8SxnUsUbAssIKE4JRAm3M,23199
21
+ repokit/readme_blocks.py,sha256=ut68nZwGnuT2ANRXPhpoUZ-QzgZbSm7LmnWSQWD08dk,5679
22
+ repokit/remote_integration.py,sha256=Aro3cqSCX0OYhrlLvHZuJCuMqNEwExjEs5WTYjHdJDc,24527
23
+ repokit/repo_manager.py,sha256=4QiWuukbQ_mta5xT4dtV8qsXDVmt-YsThO8u7JEKEHE,131929
24
+ repokit/template_engine.py,sha256=pCV56qxT_y74U2GdRi5zJP0FMlxqa0it5B_oOIpMu4c,15707
25
+ repokit/utils.py,sha256=S04UbUt4pRUn7481IHftzQNKMyEz5N9jknVdFaTRLqE,9371
26
+ repokit/vault.py,sha256=Bu3deR1hsnL0tVE5KbUMDi2FaLYpDEYh5agAuzLYz78,10834
27
+ repokit/_vendor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
28
+ repokit/_vendor/ailib/__init__.py,sha256=-YAqxvTdkRv3fRoJQzVr-1QTR70CEvYllCff1pdYv6c,61
29
+ repokit/_vendor/ailib/analyzer.py,sha256=YDPR_7JToDQPUZnZvJVsnT0EUJe6UUIWarNGO2i0HEI,7120
30
+ repokit/_vendor/ailib/backend.py,sha256=nPvfaiQ9Ycq-Nsrw87tgGXub2wtyhw9bbN_saIBKd-4,3183
31
+ repokit/_vendor/ailib/cache.py,sha256=lmB5zgH_ng80KRSyqdqVN_2C3IUchUosH7TSsHiGyc0,3816
32
+ repokit/_vendor/ailib/parsers.py,sha256=Ef8p2NdtDO4uOLJMJSL51bqjEUa3DhKUQgk609kg-wA,1871
33
+ repokit/_vendor/ailib/types.py,sha256=19s7LO3Xe0xQUFHFVXEEf01Iml-oizBfl7iuBNY8zqA,10647
34
+ repokit/_vendor/ailib/transports/__init__.py,sha256=L7vkVTmmQXbeDBEAbU9lITRvXNO6WYliSW2j2pE73Jg,847
35
+ repokit/_vendor/ailib/transports/cli.py,sha256=OUbDT7Sycu86MX3wrwm0BnjMH-W0pofD5Z80zct9c1o,14920
36
+ repokit/_vendor/ailib/transports/openai_compat.py,sha256=TlYk4IA9VkIPUAdnZjxEc7Z1UzVdARdErIXTdoVBQ38,18612
37
+ repokit/_vendor/ailib/transports/prompt_file.py,sha256=efWQwjjWbwf5Hs12SLZ0SlrC90vbFocIelZSTsZF31s,1837
38
+ repokit/hooks/pre-commit-guardrails,sha256=dvZhuaopJ0zqoPs1cg4P5p8HyHAPEHBlbTd2wm5G3M8,3984
39
+ repokit/hooks/pre-commit-template,sha256=TNYnr8yBHCKFYVXEp3JmboKh3NQ6ZCVHQhYeX1zStP8,829
40
+ repokit/licenses/0bsd.txt,sha256=5B2_X4qkDtUC6kq0Aj3iF5XVVtmjQXNPLSSHLcSXPQw,673
41
+ repokit/licenses/LICENSES.md,sha256=-Neh8VLUVIhHx-uD0g092E9L5AX1OeTFIoh8H1U8vpE,4791
42
+ repokit/licenses/__init__.py,sha256=rTjQNKUydESad1h3MMPYAcKAEBBECARR2TYCOyTatYc,6386
43
+ repokit/licenses/agpl-3.0.txt,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
44
+ repokit/licenses/all-rights-reserved.txt,sha256=ECW6Xx9NWlWDtQ6lEaqYaqVXsaQX75L1L-Bpa05VZck,541
45
+ repokit/licenses/apache-2.0.txt,sha256=erPR7Kd9ac9gyx5WN5-pphm2_DABVZBOH4U57mFV6cQ,11350
46
+ repokit/licenses/bsd-2-clause.txt,sha256=_Cn0L1uEaK-jgRpyHsHdXGKfcl4EeFWX_0tyGYh_6Y4,1309
47
+ repokit/licenses/bsd-3-clause.txt,sha256=9dH8aPvAbChqERJRVHhLCyH6sGahV0op-Sj3xWTshGE,1507
48
+ repokit/licenses/bsl-1.0.txt,sha256=yb_3VziSIZPmf6cm-iJVNYcNKqEFn5FFLEEXNihK1WY,1338
49
+ repokit/licenses/cc-by-4.0.txt,sha256=9bdF75gIf1MecZ7oymqWgJREVz7McXPG-mjqrTmzzD8,18658
50
+ repokit/licenses/cc-by-sa-4.0.txt,sha256=IAOCnPZD1hsAp2CI3TG7EbgClUbyTFazn9SSrbkoFIM,20139
51
+ repokit/licenses/cc0-1.0.txt,sha256=ogEPNDSH0_dhiv_lT3ifVIdgIzHAqNA_SemnxUfPBJk,7048
52
+ repokit/licenses/epl-2.0.txt,sha256=jDSfgHZNBkjmRfQe8jdypwyZWgkktSNfc19KPQnfEnw,14197
53
+ repokit/licenses/gpl-2.0.txt,sha256=gXf5dRMhNSbfLPYYTY_5hsZ1r7UU1OaKQEAQUhuIBkM,18092
54
+ repokit/licenses/gpl-3.0.txt,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
55
+ repokit/licenses/isc.txt,sha256=SRqD8sV0NNuOl1ZexoChKZYHg-8sXBDTwblzS_C07nk,751
56
+ repokit/licenses/lgpl-2.1.txt,sha256=IMF9i4xIpgCADf0U-V1cuf9HBmqWQd3qtI3FSuyW4zE,26526
57
+ repokit/licenses/lgpl-3.0.txt,sha256=46mU2C5kSwOnkqkw9XQAJlhBL2JAf1_uCD8lVcXyMRg,7652
58
+ repokit/licenses/mit.txt,sha256=46Cpw5RINDkYqLy78txaC843zQqTcEXvbuuGllP8Dsc,1077
59
+ repokit/licenses/mpl-2.0.txt,sha256=Pz2eACSxkhsGfW9_iN60pgy-enjnbGTj8df8O3ebnQQ,16726
60
+ repokit/licenses/unlicense.txt,sha256=awOCsWJ58m_2kBQwBUGWejVqZm6wuRtCL2hi9rfa0X4,1211
61
+ repokit/templates/ai/claude/CLAUDE-nested.md.template,sha256=odu5ODgj7lkXB4am-Td7M9q7zQBSclUuU5pBYJ6zJC8,635
62
+ repokit/templates/ai/claude/CLAUDE.md.template,sha256=urwq0XK2IJ2BCbDn1uKZKNpeko5xlDADUMMXRVacW3M,2878
63
+ repokit/templates/ai/claude/instructions/step1_context_rebuilder.md,sha256=pJHoWOCsxsqdH54GMnltUIBEh5zcpKkWz--uD3HgPYo,1418
64
+ repokit/templates/ai/claude/instructions/step2_dev_workflow_process.md,sha256=I682kmeP975gzu499sTZI1ggOSKI4ni7roXBtTo3_oE,1962
65
+ repokit/templates/ai/claude/instructions/step3_context_bridge.md,sha256=qFKtX19w5mCwH7a0vwd3xPyxIXJ7-AVd1K66xSiyJ5g,1218
66
+ repokit/templates/common/CHANGELOG.md.template,sha256=GAevPfamWWJaHu48b0RHiopEm0aBL94Xn6rHDl3plXU,490
67
+ repokit/templates/common/CONTRIBUTING.md.template,sha256=35Vn24g6T1Z-wkdtXYDAuhNOdUBGC8rMZ4Wb5isgv_g,697
68
+ repokit/templates/common/README.md.template,sha256=o53gAc4xFS0AOtKMG0S7LTtvfuwgMEOukiA0tloDEnE,364
69
+ repokit/templates/common/gitattributes.template,sha256=hvpDQ31tX3y7KY9SoGRrrptJERA4SFuVyKVKqRvm_xs,485
70
+ repokit/templates/common/gitignore.template,sha256=0P2PN9CQpNmOMb7u2wc4t7DkAxhiYs5v_yEe8pa94R8,1806
71
+ repokit/templates/extras/FUNDING.yml.template,sha256=z1gWMzp0r9sWJDVbPhos65pZ34mGw9TCO8Q5Pty75bs,213
72
+ repokit/templates/extras/ROADMAP.md.template,sha256=6fYsZo_K8YjqrXamHyqRcVNbx-SykmomXIBLNmPr4m4,394
73
+ repokit/templates/extras/dependabot.yml.template,sha256=bu0ShQa3mw1XSHK4V5cv9t4ozvqdjpwtRwqEXM0LM1A,471
74
+ repokit/templates/extras/one-offs-README.md.template,sha256=30rJM-gJC3rpBzdLa8Rsk8DOAUu2KlQAzosUnwDtdeY,1263
75
+ repokit/templates/extras/platform-support.md.template,sha256=tKsumtZza1XeRCfg5jdBHrkoJ994TUf4IaZeII8wi6s,505
76
+ repokit/templates/extras/pull_request_template.md.template,sha256=f3FqKuXdVC_sZTJ03DM9JHCxIegwS4xhyJVN6RaozyA,596
77
+ repokit/templates/extras/release-template.md.template,sha256=f6afl4KW1ToUYfiuBPzFc1BLiPqmb-ej3KS96tcFb28,351
78
+ repokit/templates/extras/settings.json.template,sha256=tEqkNQ7Z9KhA4KVy4itEP_PqhVUb5mduiABKnDMCkLI,243
79
+ repokit/templates/extras/stale.yml.template,sha256=g2wUl_OrOCHbLs7QWkvhR-0wqMC4Y_NRTGrz7A--GNY,194
80
+ repokit/templates/github/CODEOWNERS.template,sha256=VAPXgKdZA3Q0j_k7KsHeCSTCgzO9zqBrOzj7W6wza_E,316
81
+ repokit/templates/github/ISSUE_TEMPLATE/bug-report.md.template,sha256=_4gk8ePO828jXeSPIEO65DyZ8K3ZMhBNURR9RWHTJdk,527
82
+ repokit/templates/github/ISSUE_TEMPLATE/feature-request.md.template,sha256=PDRMuJzr__oyvtYQ22cHVQgDp9xZ1bPKaI5ULI79TXw,577
83
+ repokit/templates/github/issues/notes.md.template,sha256=plUJv98pPxFJ8DW7C3sxQT64o4aMBjKgkJHzXHJs1VY,344
84
+ repokit/templates/github/issues/roadmap.md.template,sha256=o-DzT7AGw0NcjPWEljp1nPR7Cdb7SZpYRQczkUcHMos,353
85
+ repokit/templates/hooks/pre-commit.template,sha256=TTbJhYyLwx4HaCtlq7CB07sxrBHrre8IDwPxROCzJHk,2070
86
+ repokit/templates/layers/manifest.toml,sha256=H-BgDlHeH3P130T17R61FWmmyPDs51lIHJzoMdmQbco,10823
87
+ repokit/templates/layers/archetypes/any/claude-plugin/.claude-plugin/marketplace.json,sha256=052PuYCAZ_h3VWh9c0Yz--_bPZMZ89fgVzdNOzgvFlg,421
88
+ repokit/templates/layers/archetypes/any/claude-plugin/plugin/README.md,sha256=ZD4jpqEpxXDwZsqiIhLLtpdpCkPPI6i6zsjz5KKFsIg,955
89
+ repokit/templates/layers/archetypes/any/claude-plugin/plugin/.claude-plugin/plugin.json,sha256=uz9lNFcdIt3CqCaKxVY5kbttEbtKRgt4bNqvG_RgYfE,490
90
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/.repokit-common.toml.rkappend,sha256=jbsX7rfPX88abupBc1U3xBhas7-bxfFMaun1cDfepc4,84
91
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/CMakeLists.txt,sha256=J_IGuyZmefVt7FNeEO0WLHUo7kbTCEDtVaewb0YodWc,1822
92
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/CMakePresets.json,sha256=tc6ybSr5P96QTj_o-4ZfOHgIpfcJa296wZAwWAtdjZo,598
93
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/vcpkg.json,sha256=r4xpAECydoB-pYz515qJ9nIZ3HS7TWj7VJKwfoJYbX4,82
94
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/.github/workflows/ci-c-cpp.yml,sha256=2q5d2X9nZaNPPDMz1yKEoHYBaVd2DKloyiKoZWrBh4o,684
95
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/.vscode/launch.json,sha256=1bTH_Dg6GTe4vrOBV5KU8A1XKc_dfSOA1pOVaqjRr_s,809
96
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/.vscode/tasks.json,sha256=L0a4b-DYxcSOMB70LxyKkjpMW0BvufKfNmiScRRvMTE,752
97
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/cmake/GenerateStamp.cmake,sha256=6nd_a773GsRrlOQKm3TKUcQXq1ElrsAm2rmDInS7T6c,1740
98
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/src/main.cpp,sha256=B6a_NErc67Dtt_Sp86CUXK-tKe8QMjfWM1xzjgFpQ5c,921
99
+ repokit/templates/layers/archetypes/c-cpp/cmake-app/tests/test_version.cpp,sha256=ylSkORm51waiY7sRyPwo-CsFXxZGOjhCp79SKsK0OI8,782
100
+ repokit/templates/layers/archetypes/c-cpp/minimal/Makefile,sha256=aiVf_ZazwPs1fmGiN5zir9B_1c6isOnNMNphGDJitD4,206
101
+ repokit/templates/layers/archetypes/c-cpp/minimal/build.bat,sha256=EcrtHXHi9e22QaJzWhiu9O39zQTHEWn2E4Rzd6Nsw48,325
102
+ repokit/templates/layers/archetypes/c-cpp/minimal/.vscode/launch.json,sha256=33JxDsIvsyZlxukIUkdG0KqF-djNii3vNshHEm8hQX0,761
103
+ repokit/templates/layers/archetypes/c-cpp/minimal/src/__RK_SNAKE__.c,sha256=kkNYT7ffBtcdEauBO5h3GViyDQAAAPlfpBEvE7sM484,817
104
+ repokit/templates/layers/archetypes/c-cpp/msbuild/__RK_PROJECT__.sln,sha256=fQJ1XCsyB40H4uWl_h-d2lmAsEIdUbP34zSTHvlNO7A,728
105
+ repokit/templates/layers/archetypes/c-cpp/msbuild/__RK_PROJECT__.vcxproj,sha256=kLmiy_V-dp9ApD7-DBV4YYb97o5XtgQnaPXnAgpQs8c,1785
106
+ repokit/templates/layers/archetypes/c-cpp/msbuild/.vscode/launch.json,sha256=GhOqw6tkSitgOe0_b1MLqcAc8CecwQ7EoatSvABPK40,432
107
+ repokit/templates/layers/archetypes/c-cpp/msbuild/.vscode/tasks.json,sha256=yqO_UfJcrgbA1gGihGEGzNud5APqLYaBtQZR6Bajwqc,596
108
+ repokit/templates/layers/archetypes/c-cpp/msbuild/src/main.cpp,sha256=tIRHVRnS7AGLPdeGYVMoEpQK_HzDQ_oMt3m2fm2-xxM,857
109
+ repokit/templates/layers/archetypes/js-ts/claude-plugin/.repokit-common.toml,sha256=_gganSyGmITG064-SqwxbUYdDdEHbfmFVsho6fuz2Yg,1175
110
+ repokit/templates/layers/archetypes/js-ts/claude-plugin/.vscode/launch.json,sha256=4tbmHOK6q-7nT_fAAXV4XF9qGb4NawrHeRSynNRmhsw,956
111
+ repokit/templates/layers/archetypes/js-ts/claude-plugin/plugin/hooks/hooks.json,sha256=gypfpR2xJliijf2r6zDXZ4VCElPTAa0U53_Na6Q52vg,264
112
+ repokit/templates/layers/archetypes/js-ts/claude-plugin/plugin/hooks/scripts/session-start.mjs,sha256=mmZQa3ZpTeK0_ob9VDjwBp8YITXEFOy1NQLwmrb-S2k,785
113
+ repokit/templates/layers/archetypes/js-ts/claude-plugin/plugin/tests/manifest.test.js,sha256=GkIkS4s3DBXuia7ekErV7TWmPrUR5lJ5Ie2V0mI_ybw,1514
114
+ repokit/templates/layers/archetypes/js-ts/node/.repokit-common.toml.rkappend,sha256=hHa-dVaTpJpP3OBuaMdaD8WmCNGNfrscNpEzirUiCaA,169
115
+ repokit/templates/layers/archetypes/js-ts/node/package.json,sha256=FaJXXUGXXA7nBGRC92-2dHzwMfFd5Vh9sssHWffr5VM,216
116
+ repokit/templates/layers/archetypes/js-ts/node-package/package.json,sha256=-0GQwvPYW1Wpvllk8WiQyNF-tenViUeJkKqTUIu_940,632
117
+ repokit/templates/layers/archetypes/js-ts/node-package/.github/workflows/release.yml,sha256=10rrIyeSCPPIT1xnDwL28u9fsU8IWszVYgqCzwJ76NE,929
118
+ repokit/templates/layers/archetypes/js-ts/node-package/src/index.ts,sha256=MCjG4cZ57Zp9zpyadJhSQw3GPo79sBqKBAIaHt9dtIM,345
119
+ repokit/templates/layers/archetypes/js-ts/node-package/tests/index.test.ts,sha256=9fSjaWQ2RzH1C5Xg2ZX0XdS9qVTqW46077uUWCZN-7k,305
120
+ repokit/templates/layers/archetypes/js-ts/script/__RK_PROJECT__.js,sha256=4ZqP0nlsNw-sFb8vYIDinONn29i1oOm8yzrPr_LW0FI,1155
121
+ repokit/templates/layers/archetypes/js-ts/script/.vscode/launch.json,sha256=zed6p7z3dSW_Uzwk-CHMe62vfnBBTLd74EDmmwg4SNo,874
122
+ repokit/templates/layers/archetypes/js-ts/script/tests/version.test.js,sha256=4WGsh94AnF9-e-AibO93LkUcs4iJxCWRzgWAM26qOs8,948
123
+ repokit/templates/layers/archetypes/js-ts/ts/package.json,sha256=Y-7OR5OmCAfHrkL8ROgtQ_9PsPSBtNR1nveSP0SFyoo,346
124
+ repokit/templates/layers/archetypes/js-ts/ts/tsconfig.json,sha256=WaLvw0jpQekoiNR47LencNL-o5O0xrIa6WY1xydwzQE,312
125
+ repokit/templates/layers/archetypes/python/claude-plugin/.repokit-common.toml,sha256=wFh25MXouFKNvQJmz8RrV2XSU8t9MkWPMflyLVutHEE,844
126
+ repokit/templates/layers/archetypes/python/claude-plugin/VERSION,sha256=6d2FB_S_DG9CRY5BrqgzrQvT9hJycjNe7pv01YVB7Wc,6
127
+ repokit/templates/layers/archetypes/python/claude-plugin/.github/workflows/ci-python.yml,sha256=PnStApVsUwoifIdZTzcFUEku0c2jS7yVVgJjEDqZkkI,1098
128
+ repokit/templates/layers/archetypes/python/claude-plugin/.vscode/launch.json,sha256=Be3ig0g6DHdetyqyIwcxSKQp-_DhH740T-418fjwFIM,890
129
+ repokit/templates/layers/archetypes/python/claude-plugin/plugin/hooks/hooks.json,sha256=alZNrSrq0gCGJpX2hvJ9h7vlx4KMKy_qwyR8u3MRsI0,276
130
+ repokit/templates/layers/archetypes/python/claude-plugin/plugin/hooks/scripts/run-hook.mjs,sha256=g-nZ8Zbq0q49zru0YjuSk_eGnryHf-G1_lNc5lA4ABo,1765
131
+ repokit/templates/layers/archetypes/python/claude-plugin/plugin/hooks/scripts/session_start.py,sha256=sEVV0FaBy-Ve2TKtSe3YXya1kKi--hxDPawEtSae1Yw,922
132
+ repokit/templates/layers/archetypes/python/claude-plugin/plugin/tests/test_manifest.py,sha256=uwkO2-qpMAiqf5Zsy8Xcx76BRsUdXS2PNQsV3-cT4tk,1741
133
+ repokit/templates/layers/archetypes/python/pypi/pyproject.toml,sha256=Ci9c9Bii-15EI77lxvH0miHBTYBlUo0W77mtfrtBmCU,2164
134
+ repokit/templates/layers/archetypes/python/pypi/.github/workflows/release.yml,sha256=r8HaRI9tIyzEQUVHfo9qsqXfYaHlVO4JZyD7canHZ7s,1477
135
+ repokit/templates/layers/archetypes/python/pypi/.vscode/launch.json,sha256=tHJZdbsnwoueFbhYMhrHpr8qf3UGTvfsS7FSKn1IvKM,1030
136
+ repokit/templates/layers/archetypes/python/pypi/__RK_SNAKE__/__init__.py,sha256=wWm7GQ-7SDWO0FgTN9Z8bfoF8mF26XhNpkZNVVYlRWc,162
137
+ repokit/templates/layers/archetypes/python/pypi/__RK_SNAKE__/__main__.py,sha256=6lefwpJeARIHcEZoMN5tl6DEuzTggBNKQHMkYpcsd9I,127
138
+ repokit/templates/layers/archetypes/python/pypi/__RK_SNAKE__/_version.py,sha256=v-yLE_ze-QWc2jYqtfWNYJ_yiICbu6yOAvy-q5AtZRI,3017
139
+ repokit/templates/layers/archetypes/python/pypi/__RK_SNAKE__/cli.py,sha256=WEqD88Tx_c5LxEEyd3_U4VRT0V4yw23ofpIXk5nKd7c,627
140
+ repokit/templates/layers/archetypes/python/pypi/tests/conftest.py,sha256=5akFlUECU22EcZwwFcEjnGDVNriauwtQTkOmsC9-dNw,261
141
+ repokit/templates/layers/archetypes/python/pypi/tests/test_version.py,sha256=YPKRe_IhVxRpqjpcrlkqJCIiGh7B1TK0A8CW9y5JkSg,1274
142
+ repokit/templates/layers/archetypes/python/script/.repokit-common.toml,sha256=04oRmMCmYX5UIH8HvVeK1znm1HjGewKbJ0AfS0gCsG0,512
143
+ repokit/templates/layers/archetypes/python/script/VERSION,sha256=6d2FB_S_DG9CRY5BrqgzrQvT9hJycjNe7pv01YVB7Wc,6
144
+ repokit/templates/layers/archetypes/python/script/__RK_PROJECT__.py,sha256=7F7_IT-RYdQZB7pzcz-hldY_m2HbCE6FDLOiVS2aj0k,1236
145
+ repokit/templates/layers/archetypes/python/script/.github/workflows/ci-python.yml,sha256=PAeGcHBEyvAKXFdMkOA677DeiiRHStpBKxmhPcoChn0,1049
146
+ repokit/templates/layers/archetypes/python/script/.vscode/launch.json,sha256=ntfQ5O7s7ARPh1-fLOr2eTFO85cuMbPfLMza0-Gq78w,796
147
+ repokit/templates/layers/archetypes/python/script/tests/test_version.py,sha256=Vt4ixugAxx1zyVmAFqcdxtesEamJfYnDKYkM6V8_DB4,727
148
+ repokit/templates/layers/archetypes/python/setuppy/requirements.txt,sha256=fBHwrQ_xA1Sh4IZobsAdcniXdIjOPY1Cwn39OCfGEUo,134
149
+ repokit/templates/layers/archetypes/python/setuppy/setup.py,sha256=FQB6NKpGnge33S9hIz4p2zcIGUnX4hP1PdmDk66SzoY,681
150
+ repokit/templates/layers/languages/c-cpp/.gitignore.rkappend,sha256=eQ9C6y14OIjxLYQF7YyWp54PbIMCkcqOhlvnIfQUUiI,174
151
+ repokit/templates/layers/languages/c-cpp/.repokit-common.toml,sha256=wJaFg6N65wt1Y05Z1Jj4wpjh0fNBEjBOovXijJGIMcA,217
152
+ repokit/templates/layers/languages/c-cpp/include/__RK_SNAKE__/version.h,sha256=1swe6YzLbF7zZpIAm9OSBXslz9sqtClw5qC7-kyvLWI,943
153
+ repokit/templates/layers/languages/c-cpp/src/app.rc,sha256=U7Rv3E5eR3NPrpvwAsR-q_hBv6fawWo3cuOpZMJq1P0,842
154
+ repokit/templates/layers/languages/js-ts/.editorconfig,sha256=TSNnBxHvdyc5NVNv4PNASHei68wV7bf7N0JRz7kbE-4,212
155
+ repokit/templates/layers/languages/js-ts/.gitignore.rkappend,sha256=dxtmiKKQPCgzIkJk0sBG8Kg6EV2PeOwpAEYfH4Q7i3M,160
156
+ repokit/templates/layers/languages/js-ts/.repokit-common.toml,sha256=oul5g6XKrYmYhOAFFiLVw0OKSfDt8lMB3tQtPxsftJg,1094
157
+ repokit/templates/layers/languages/js-ts/VERSION,sha256=6d2FB_S_DG9CRY5BrqgzrQvT9hJycjNe7pv01YVB7Wc,6
158
+ repokit/templates/layers/languages/js-ts/.github/workflows/ci-js-ts.yml,sha256=kejLAPhxrUSVSJGlpPziRZwVkZV4u9OVB9J-ZkZ5VBg,974
159
+ repokit/templates/layers/languages/js-ts/.vscode/launch.json,sha256=NmBRLkqn7ylpM1sLxHweG-QfKSN-1bL3nUUDoZn4lOw,564
160
+ repokit/templates/layers/languages/python/.gitignore.rkappend,sha256=tw_PPiMlJpiIibHRMjzHtAfgOqcOdiMprZ9gc-Tf9t4,167
161
+ repokit/templates/layers/languages/python/.github/workflows/ci-python.yml,sha256=AHuSibMCQZyH6Fv-wSY2Hfl7a6-tNoVOFE84_Y-gMc0,2304
162
+ repokit/templates/layers/languages/python/.vscode/launch.json,sha256=zodtZXBhrSELJQCU7y7HLiBhI-Bf70mkphkW3tb0N9A,762
163
+ repokit/templates/vault/CLAUDE.md,sha256=hFyuY8UM-0bt32e5_dfQ521F3C_cCxK3PBq1YGBreK8,1673
164
+ repokit/templates/vault/claude/_maps/MOC-project.md,sha256=-VwmiviWjtZl1adqXKMZIVunxSZp8LXHzHUiI7jp7lw,279
165
+ repokit/templates/vault/claude/_oracle/backlinks.md,sha256=y8nP5zlGB9vnJ0ashYOVBtbikf3Nk1MLiKvATKZ4ru0,110
166
+ repokit/templates/vault/claude/_oracle/concepts.md,sha256=mT2pEuHHi45WG6qXw2uLF7SsR1-iJ2-pS1hHmMtVN88,220
167
+ repokit/templates/vault/claude/_oracle/manifest.md,sha256=Qo6Ujku2h5gaK_Rd7uhhBc49DVREBuIViMrC7DltPvA,159
168
+ repokit/templates/vault/claude/_todo/ACTIVE-WORK.md,sha256=Iim30i1CXrsHJf3ZWTswvEYZhC6gRL-8F0vSLaTaPjo,358
169
+ repokit/templates/vault/claude/_todo/OPEN-LOOPS.md,sha256=I-ItrKXMO1EZp186ut_abAMuDcyYFpRas0aJ2UIN08s,221
170
+ git_repokit-0.9.10.dist-info/METADATA,sha256=bUdRnm0C6bsch8wY1CYafHBEg_tmoFzl5z35Jh9guNE,20206
171
+ git_repokit-0.9.10.dist-info/WHEEL,sha256=mOdXR9C3wMVov7cSY8PY-XCzo3SmmWCHvGQr5csJoao,91
172
+ git_repokit-0.9.10.dist-info/entry_points.txt,sha256=X4XW4S_R9-Nlkjx_C0bPSJs2iKlevdNsWrm52CRd2Ic,45
173
+ git_repokit-0.9.10.dist-info/top_level.txt,sha256=c79ekcHN_vJ3n1hacoTiibweqhIA_-36Mz8ASUvXllY,8
174
+ git_repokit-0.9.10.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (84.2.1)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ repokit = repokit.cli:main
@@ -0,0 +1,9 @@
1
+ MIT License
2
+
3
+ Copyright (C) 2025 Dustin Darcy
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
+
7
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8
+
9
+ THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1 @@
1
+ repokit
repokit/__init__.py ADDED
@@ -0,0 +1,8 @@
1
+ """
2
+ RepoKit: Repository Template Generator
3
+
4
+ A tool for setting up standardized Git repositories with complex branching
5
+ strategies and worktree-based workflows.
6
+ """
7
+
8
+ from .__version__ import __version__, __version_info__