Adds .gitea/workflows/init.yml — a one-shot bootstrap workflow that runs automatically on the first push to main of any repo created from this template.
What it does:
Guards via CLAUDE.md existence check — skips entirely if already initialised
Derives PROJECT_NAME and MODULE_PATH from the git remote (no manual input needed)
Substitutes __PROJECT_NAME__ and __MODULE_PATH__ in all file contents
Result: After create_project_from_template, the new repo is fully initialised and ready for git clone && claude with zero manual steps.
Prerequisite: Runner needs GITEA_TOKEN secret with write access to the repo (for the push-back step). This should already exist as a org-level secret if you have one configured, otherwise add it per-repo.
Adds `.gitea/workflows/init.yml` — a one-shot bootstrap workflow that runs automatically on the first push to `main` of any repo created from this template.
**What it does:**
1. Guards via `CLAUDE.md` existence check — skips entirely if already initialised
2. Derives `PROJECT_NAME` and `MODULE_PATH` from the git remote (no manual input needed)
3. Substitutes `__PROJECT_NAME__` and `__MODULE_PATH__` in all file contents
4. Renames `cmd/__PROJECT_NAME__/` → `cmd/$PROJECT_NAME/`
5. Runs `task context:sync` → generates `CLAUDE.md`, `AGENTS.md`, `.cursorrules`, `.context/mcp.json`
6. Deletes itself so it never runs again
7. Commits everything back to `main`
**Result:** After `create_project_from_template`, the new repo is fully initialised and ready for `git clone && claude` with zero manual steps.
**Prerequisite:** Runner needs `GITEA_TOKEN` secret with write access to the repo (for the push-back step). This should already exist as a org-level secret if you have one configured, otherwise add it per-repo.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Adds
.gitea/workflows/init.yml— a one-shot bootstrap workflow that runs automatically on the first push tomainof any repo created from this template.What it does:
CLAUDE.mdexistence check — skips entirely if already initialisedPROJECT_NAMEandMODULE_PATHfrom the git remote (no manual input needed)__PROJECT_NAME__and__MODULE_PATH__in all file contentscmd/__PROJECT_NAME__/→cmd/$PROJECT_NAME/task context:sync→ generatesCLAUDE.md,AGENTS.md,.cursorrules,.context/mcp.jsonmainResult: After
create_project_from_template, the new repo is fully initialised and ready forgit clone && claudewith zero manual steps.Prerequisite: Runner needs
GITEA_TOKENsecret with write access to the repo (for the push-back step). This should already exist as a org-level secret if you have one configured, otherwise add it per-repo.