Communitygithub.com

opensource-pipeline

Pipeline de código aberto: faça fork, sanitize e empacote projetos privados para lançamento público seguro. Encadeia 3 agentes (forker, sanitizer, packager). Gatilhos:

O que é opensource-pipeline?

O skill opensource-pipeline é uma ferramenta especializada para preparar projetos de software privados para lançamento público como código aberto de forma segura. Ele orquestra um pipeline de três estágios — Fork (cópia e remoção de segredos), Sanitize (verificação de limpeza) e Package (geração de documentação e scripts de configuração) — utilizando três agentes distintos (opensource-forker, opensource-sanitizer, opensource-packager). O skill suporta comandos como `/opensource fork`, `/opensource verify` e `/opensource package`, e mantém um diretório de staging em `$HOME/opensource-staging/`. Durante o processo, ele remove credenciais, substitui referências internas, gera arquivos essenciais como CLAUDE.md, setup.sh, README.md e LICENSE, e realiza verificações rigorosas de segurança (secrets, PII, referências internas, arquivos perigosos). Se a sanitização falhar, o usuário pode corrigir e re-escanear (até 3 tentativas). Ao final, o skill oferece a opção de publicar automaticamente no GitHub via `gh repo create`. Ideal para desenvolvedores que precisam abrir projetos privados com segurança e eficiência, suportando plataformas como Claude Code e Cursor.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/everything-claude-code/tree/main/skills/opensource-pipeline

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Habilidade de Pipeline Open-Source

Torne qualquer projeto open-source com segurança através de um pipeline de 3 estágios: Fork (remover segredos) → Sanitize (verificar limpeza) → Package (CLAUDE.md + setup.sh + README).

Quando Ativar

  • O usuário diz "torne este projeto open-source" ou "torne isto público"
  • O usuário deseja preparar um repositório privado para lançamento público
  • O usuário precisa remover segredos antes de enviar para o GitHub
  • O usuário invoca /opensource fork, /opensource verify ou /opensource package

Comandos

ComandoAção
/opensource fork PROJETOPipeline completo: fork + sanitize + package
/opensource verify PROJETOExecutar sanitizador em repositório existente
/opensource package PROJETOGerar CLAUDE.md + setup.sh + README
/opensource listMostrar todos os projetos em preparação
/opensource status PROJETOMostrar relatórios de um projeto em preparação

Protocolo

/opensource fork PROJETO

Pipeline completo — o fluxo de trabalho principal.

Passo 1: Coletar Parâmetros

Resolva o caminho do projeto. Se PROJETO contiver /, trate como caminho (absoluto ou relativo). Caso contrário, verifique: diretório de trabalho atual, $HOME/PROJETO, depois pergunte ao usuário.

SOURCE_PATH="<caminho absoluto resolvido>"
STAGING_PATH="$HOME/opensource-staging/${NOME_DO_PROJETO}"

Pergunte ao usuário:

  1. "Qual projeto?" (se não encontrado)
  2. "Licença? (MIT / Apache-2.0 / GPL-3.0 / BSD-3-Clause)"
  3. "Organização ou nome de usuário do GitHub?" (padrão: detectar via gh api user -q .login)
  4. "Nome do repositório no GitHub?" (padrão: nome do projeto)
  5. "Descrição para o README?" (analisar o projeto para sugestão)

Passo 2: Criar Diretório de Preparação

mkdir -p $HOME/opensource-staging/

Passo 3: Executar Agente Forker

Inicie o agente opensource-forker:

Agent(
  description="Fork {PROJETO} para open-source",
  subagent_type="opensource-forker",
  prompt="""
Fork projeto para lançamento open-source.

Origem: {SOURCE_PATH}
Destino: {STAGING_PATH}
Licença: {licenca_escolhida}

Siga o protocolo completo de fork:
1. Copie arquivos (exclua .git, node_modules, __pycache__, .venv)
2. Remova todos os segredos e credenciais
3. Substitua referências internas por placeholders
4. Gere .env.example
5. Limpe o histórico do git
6. Gere FORK_REPORT.md em {STAGING_PATH}/FORK_REPORT.md
"""
)

Aguarde a conclusão. Leia {STAGING_PATH}/FORK_REPORT.md.

Passo 4: Executar Agente Sanitizador

Inicie o agente opensource-sanitizer:

Agent(
  description="Verificar sanitização de {PROJETO}",
  subagent_type="opensource-sanitizer",
  prompt="""
Verificar sanitização do fork open-source.

Projeto: {STAGING_PATH}
Origem (para referência): {SOURCE_PATH}

Execute TODAS as categorias de varredura:
1. Varredura de segredos (CRÍTICO)
2. Varredura de PII (CRÍTICO)
3. Varredura de referências internas (CRÍTICO)
4. Verificação de arquivos perigosos (CRÍTICO)
5. Completude da configuração (AVISO)
6. Auditoria do histórico do git

Gere SANITIZATION_REPORT.md dentro de {STAGING_PATH}/ com veredito PASS/FAIL.
"""
)

Aguarde a conclusão. Leia {STAGING_PATH}/SANITIZATION_REPORT.md.

Se FAIL: Mostre as descobertas ao usuário. Pergunte: "Corrigir estes e reescanear, ou abortar?"

  • Se corrigir: Aplique correções, reexecute o sanitizador (máximo 3 tentativas — após 3 FAILs, apresente todas as descobertas e peça ao usuário para corrigir manualmente)
  • Se abortar: Limpe o diretório de preparação

Se PASS ou PASS COM AVISOS: Continue para o Passo 5.

Passo 5: Executar Agente Empacotador

Inicie o agente opensource-packager:

Agent(
  description="Empacotar {PROJETO} para open-source",
  subagent_type="opensource-packager",
  prompt="""
Gerar empacotamento open-source para o projeto.

Projeto: {STAGING_PATH}
Licença: {licenca_escolhida}
Nome do projeto: {NOME_DO_PROJETO}
Descrição: {descricao}
Repositório GitHub: {github_repo}

Gerar:
1. CLAUDE.md (comandos, arquitetura, arquivos-chave)
2. setup.sh (bootstrap em um comando, tornar executável)
3. README.md (ou melhorar o existente)
4. LICENSE
5. CONTRIBUTING.md
6. .github/ISSUE_TEMPLATE/ (bug_report.md, feature_request.md)
"""
)

Passo 6: Revisão Final

Apresente ao usuário:

Fork Open-Source Pronto: {NOME_DO_PROJETO}

Localização: {STAGING_PATH}
Licença: {licenca}
Arquivos gerados:
  - CLAUDE.md
  - setup.sh (executável)
  - README.md
  - LICENSE
  - CONTRIBUTING.md
  - .env.example ({N} variáveis)

Sanitização: {veredito_sanitizacao}

Próximos passos:
  1. Revisão: cd {STAGING_PATH}
  2. Criar repositório: gh repo create {github_org}/{github_repo} --public
  3. Enviar: git remote add origin ... && git push -u origin main

Prosseguir com a criação no GitHub? (sim/não/revisar primeiro)

Passo 7: Publicar no GitHub (após aprovação do usuário)

cd "{STAGING_PATH}"
gh repo create "{github_org}/{github_repo}" --public --source=. --push --description "{descricao}"

/opensource verify PROJETO

Execute o sanitizador independentemente. Resolva o caminho: se PROJETO contiver /, trate como caminho. Caso contrário, verifique $HOME/opensource-staging/PROJETO, depois $HOME/PROJETO, depois o diretório atual.

Agent(
  subagent_type="opensource-sanitizer",
  prompt="Verificar sanitização de: {caminho_resolvido}. Execute todas as 6 categorias de varredura e gere SANITIZATION_REPORT.md."
)

/opensource package PROJETO

Execute o empacotador independentemente. Pergunte "Licença?" e "Descrição?", então:

Agent(
  subagent_type="opensource-packager",
  prompt="Empacotar: {caminho_resolvido} ..."
)

/opensource list

ls -d $HOME/opensource-staging/*/

Mostre cada projeto com seu progresso no pipeline (presença de FORK_REPORT.md, SANITIZATION_REPORT.md, CLAUDE.md).


/opensource status PROJETO

cat $HOME/opensource-staging/${PROJETO}/SANITIZATION_REPORT.md
cat $HOME/opensource-staging/${PROJETO}/FORK_REPORT.md

Estrutura de Preparação

$HOME/opensource-staging/
  meu-projeto/
    FORK_REPORT.md           # Do agente forker
    SANITIZATION_REPORT.md   # Do agente sanitizador
    CLAUDE.md                # Do agente empacotador
    setup.sh                 # Do agente empacotador
    README.md                # Do agente empacotador
    .env.example             # Do agente forker
    ...                      # Arquivos do projeto sanitizado

Anti-Padrões

  • Nunca envie para o GitHub sem aprovação do usuário
  • Nunca pule o sanitizador — ele é a barreira de segurança
  • Nunca prossiga após um FAIL do sanitizador sem corrigir todas as descobertas críticas
  • Nunca deixe .env, *.pem ou credentials.json no diretório de preparação

Melhores Práticas

  • Sempre execute o pipeline completo (fork → sanitize → package) para novos lançamentos
  • O diretório de preparação persiste até ser explicitamente limpo — use-o para revisão
  • Reexecute o sanitizador após quaisquer correções manuais antes de publicar
  • Parametrize segredos em vez de excluí-los — preserve a funcionalidade do projeto

Habilidades Relacionadas

Consulte security-review para padrões de detecção de segredos usados pelo sanitizador.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/claude-api

Anthropic Claude API patterns for Python and TypeScript. Covers Messages API, streaming, tool use, vision, extended thinking, batches, prompt caching, and Claude Agent SDK. Use when building applications with the Claude API or Anthropic SDKs.

affaan-m/everything-claude-code

End-to-end marketing campaign planning and execution. Covers audience research, positioning, campaign angle definition, landing page copy, email sequences, social posts, ad copy, short-form video scripts, and content calendars. Use as the orchestration layer for multi-channel product launches. Use when planning or executing a multi-channel product launch, or producing landing page, email, social, or ad copy.

affaan-m/everything-claude-code

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/everything-claude-code-conventions

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use when the user asks to build web components, pages, or applications and the visual direction matters as much as the code quality.

affaan-m/gget

gget CLI and Python workflow for quick genomic database queries, sequence lookup, BLAST-style searches, enrichment checks, and reproducible bioinformatics evidence logs.

affaan-m/literature-review

Systematic literature-review workflow for academic, biomedical, technical, and scientific topics, including search planning, source screening, synthesis, citation checks, and evidence logging.

affaan-m/motion-ui

Production-ready UI motion system for React/Next.js. Use when implementing animations, transitions, or motion patterns.

affaan-m/project-guidelines-example

Example project-specific skill template based on a real production application.

affaan-m/pubmed-database

Direct PubMed and NCBI E-utilities search workflows for biomedical literature, MeSH queries, PMID lookup, citation retrieval, and API-backed literature monitoring.

affaan-m/scholar-evaluation

Structured scholarly-work evaluation for papers, proposals, literature reviews, methods sections, evidence quality, citation support, and research-writing feedback.

affaan-m/uspto-database

USPTO patent and trademark data workflow for official record lookup, PatentSearch queries, TSDR checks, assignment data, and reproducible IP research logs.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

Habilidades Relacionadas