agentsclimarketplace

Lf push

Skill twinfo-io/lifters-skills/skills/lf-push

Pushes the current branch and creates or updates a PR against the project's base/staging branch (auto-detected, overridable), filling the body from the repo's PR template if present — falling back to a minimal template otherwise — with type/ticket already resolved, and automatically comments the PR link on the linked issue-tracker ticket (Linear or GitHub Issues) once the PR is created. Always confirms before pushing or creating/updating the PR. Use when the user asks to push the branch, open a PR, or says something like 'push this'/'abre o PR'. If there are uncommitted changes, suggests /lf-commit first.From its SKILL.md

Install
npx -y skills add twinfo-io/lifters-skills --skill lf-push

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

6.2 KB, ~1.6k tokens by cl100k_base, as published. Nobody here has run it

Você é responsável por levar a branch atual do commit local até um PR revisável. Nunca dê push nem crie/atualize um PR sem confirmação explícita do usuário. Nunca faça merge, aprove review, aplique label do tracker de issues ou dispare deploy — esta skill só cria/atualiza o PR e o vínculo com o tracker.


PASSO 0 — Verificar pré-condições

Rode git status --short e git branch --show-current.

  • Mudanças não commitadas presentes: informe e pergunte se quer rodar /lf-commit antes, ou seguir mesmo assim (o push só levará o que já está commitado).
  • Branch atual é a branch base/default do repo (ex.: main, master, ou a branch de staging identificada no Passo 1): não há o que abrir de PR a partir daqui — informe e encerre.
  • Rode git log --oneline @{u}.. 2>/dev/null || git log --oneline -20 pra saber quantos commits existem pra subir. Se não houver nenhum commit à frente do que já foi pushado, informe que não há nada novo pra subir/atualizar (mas ainda pode haver um PR existente a checar — não encerre, siga pro Passo 4 se quiser só reportar o estado).

PASSO 1 — Resolver a base branch

Detecte a branch-base mais provável, nesta ordem:

  1. Se o projeto documentar a convenção de branches (ex.: CLAUDE.md, CONTRIBUTING.md, docs/agents/), prefira o que estiver documentado.
  2. Senão, veja quais branches remotas de staging existem (git branch -r), nesta ordem de preferência: environments/staging, staging, develop, dev.
  3. Se nenhuma existir, use a branch default do repositório (gh repo view --json defaultBranchRef -q .defaultBranchRef.name, ou git remote show origin | grep 'HEAD branch').

Apresente o valor detectado:

PR vai ser aberto/atualizado contra: <base detectada>

Quer mudar a base?

Aguarde confirmação (aceitar o padrão também é uma resposta válida). Se o usuário pedir outra base, use a informada.


PASSO 2 — Resolver tipo e ticket

Mesma lógica do /lf-commit (Passos 1 e 2, incluindo a detecção/pergunta de qual issue tracker o projeto usa) — reutilize o resultado se essa branch já foi resolvida nesta sessão (por /lf-commit ou por uma chamada anterior desta própria skill).


PASSO 3 — Push

Apresente a branch e o remote de destino, aguarde confirmação, então:

git push -u origin <branch>

PASSO 4 — Criar ou atualizar o PR

Rode gh pr list --head <branch> --json number,url,state --state open.

Se já existir um PR aberto: informe a URL existente e não poste comentário no tracker neste passo (isso já deve ter acontecido na criação) — pule direto pro Passo 6. Se o título/corpo estiverem visivelmente desatualizados em relação aos commits novos, ofereça atualizar via gh pr edit (só com confirmação).

Se não existir: monte o PR antes de criar.

  • Título: TIPO(PREFIXO-XXX): descrição em inglês (ou sem ticket se ticket-less; vocabulário mais livre pra mudanças ad-hoc, mesma regra do /lf-commit). A descrição em inglês é sobre o que o diff faz — nunca uma tradução literal do título da issue do tracker (que pode estar em outro idioma por convenção do projeto).

  • Corpo: procure um template de PR do projeto, nesta ordem: .github/pull_request_template.md, .github/PULL_REQUEST_TEMPLATE.md, docs/pull_request_template.md.

    • Se encontrar um template: preencha cada seção que ele define. Tipicamente isso inclui:

      • Descrição: resumo do quê/porquê, a partir dos commits e do diff.
      • Tipo de mudança: marque o checkbox correspondente ao TIPO resolvido (feat → Nova feature, fix → Correção de bug; para tipos ad-hoc, marque o mais próximo — docs→Documentação, chore/infra→Infra, etc.).
      • Mudanças feitas: uma bullet por commit relevante de git log <base>..HEAD --oneline, em ordem cronológica.
      • Como testar: pergunte ao usuário quais passos concretos alguém deveria seguir pra validar a mudança manualmente, e use a resposta literal — não invente passos não verificados.
      • Checklist: deixe todos os itens desmarcados — quem revisar/o autor marca depois.
      • Issues relacionadas: link do ticket se houver (use a URL retornada pela própria chamada ao tracker — mcp__linear__get_issue/mcp__linear__save_issue já trazem a URL; para GitHub Issues, #<numero> já autolinkeia); se ticket-less, deixe a nota padrão do template (vínculo manual).
    • Se não encontrar nenhum template: use um corpo mínimo:

      ## Descrição
      <resumo do quê/porquê, a partir dos commits e do diff>
      
      ## Mudanças feitas
      - <bullet por commit relevante>
      
      ## Como testar
      <passos literais informados pelo usuário>
      
      ## Issues relacionadas
      <link do ticket, se houver>
      

    Apresente o título e corpo montados para confirmação antes de criar.

  • Crie com:

    gh pr create --base <base> --head <branch> --title "<título>" --body "<corpo>"
    

PASSO 5 — Comentar o link da PR no tracker

Só quando o PR foi criado agora (não numa atualização de um PR já existente) e há um ticket resolvido:

  • Linear: mcp__linear__save_comment issueId=<PREFIXO-XXX> body="PR aberto: <url do PR>"
  • GitHub Issues: gh issue comment <numero> --body "PR aberto: <url do PR>"

Se ticket-less, pule este passo silenciosamente (nada pra vincular) — não é um erro.


PASSO 6 — Reportar

PR: <url> → base: <base>
<Tracker: comentário postado no ticket / sem ticket vinculado, nada comentado>

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 625,150. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.