live1,247 agents deployedbuilt by a solo devpowered by hermes
← All skillsSign up to install

git-main

General0 installsUpdated 12d ago
Curatedgardusig

>-

SKILL.md preview

---
name: git-main
description: >-
  Align local main to origin/main using the linked workflow and internal working-tree align
  library. No stash. No push. Embedded in @git-start before new branch.
---

**Normative workflow:** [`read-workflow-workflows`](../../internal/read/workflow/workflows/SKILL.md#git-main-align-workflow).

# Main (checkout `main` → fetch → match canonical remote → clean)

Normative fences / full matrix: [`write-workflow-working-tree-align`](../../internal/write/workflow/working/tree/align/SKILL.md), [`read-repo-stream`](../../internal/read/repo/stream/SKILL.md).

## Language interaction policy

Always apply [`read-safety-language-interaction-rules`](../../internal/read/safety/language-interaction-rules/SKILL.md) first. Use English by default for all assistant output, including AskQuestion prompts/options, unless the user explicitly requests another full-language response.

## Before batch

**Always run first** (sequential). Complete every applicable row in this table before execution steps in this skill. Skip a row only when its **When** column does not apply.

| Kind | Skill / library | When |
| --- | --- | --- |
| **Recommended** | [`@git-commit`](../commit/SKILL.md) · [`@git-stash`](../stash/SKILL.md) | Preserve local work before align |
| **Tooling** | `git` | Repo root |




## Required internal skills

Run after **Before batch** completes (names only; normative fences in linked libraries).

| Library | Role |
| --- | --- |
| `read-workflow-workflows` | See linked library |
| `write-workflow-working-tree-align` | See linked library |

## Skip & suggestions

| Flag / param | Role |
| --- | --- |
| **`skip=false`** | Root invocation — offer next-step suggestions after **Verification** |
| **`skip=true`** | Nested public-skill child call — no next-step prompt |
| **`SKIP_QA_GIT_MAIN=true`** | Bypass routine write gates for this skill |
| **`SKIP_QA_WRITE=true`** | Shared write-flow Q&A bypass where allowed |
| **`SKIP_SUGGESTIONS=true`** | Suppress next-step suggestions even at root |

High-risk or destructive confirmations still require explicit user confirmation when bypass flags are set.

## Do

- Follow the linked **Normative workflow** end-to-end; it owns the operational sequence for aligning local **`main`**.
- Use **`origin/main`** as the canonical main ref for alignment in this standalone workflow.
- Use **[`write-workflow-working-tree-align`](../../internal/write/workflow/working/tree/align/SKILL.md)** for dirty-tree handling, reset/clean impact, and confirmations.
- Stay in **current workspace** repo and report whether **`main`** is aligned when done.

## Do not

- **Stash**—user commits, aborts, or confirms trash per **[`write-workflow-working-tree-align`](../../internal/write/workflow/working/tree/align/SKILL.md)**.
- Publish—**[`@git-push`](../push/SKILL.md)** only.
- Perform destructive alignment without structured confirm after showing impact (see working-tree-align).
- Reorder the linked workflow.
- Run **`@git-pull`** here—feature-branch sync is **`@git-pull`**, not **`@git-main`**.

**When to use:** (1) Standalone—clean **`main`**. (2) Inside **[`@git-start`](../start/SKILL.md)** before creating the new branch.

## Workflow Ownership

- **Order and command recipe:** [`read-workflow-workflows`](../../internal/read/workflow/workflows/SKILL.md#git-main-align-workflow).
- **Dirty tree, destructive align, clean, optional cache pruning:** [`write-workflow-working-tree-align`](../../internal/write/workflow/working/tree/align/SKILL.md).

## On invoke

*`@git-main`* — Execute the linked workflow exactly once against **`origin/main`**. Do not publish from this skill.

## Verification

- [ ] **origin/main** alignment attempted or clean early-stop reported.
- [ ] Dirty-tree / destructive align had explicit confirmation when required.
- [ ] No push from this skill.

## Recommended next steps

When **`skip=false`** (root invocation) and **`SKIP_SUGGESTIONS`** is unset, delegate to **[`read-skill-su