Pular para o conteúdo
Skillpedia
Código em geral48 mil · #3030

fp-pipe-ref

Faz seu agente encadear funções de forma elegante. Ajuda a construir processos complexos passo a passo, tornando o código mais legível.

O que ela faz

Essas ferramentas ajudam a organizar uma sequência de ações em seu código. `pipe` aplica uma série de transformações a um valor de uma vez. `flow` cria uma nova função que combina várias transformações para serem usadas depois.

Quando usar

  • ✓Quando você precisa aplicar várias etapas de processamento a um dado.
  • ✓Para criar uma função reutilizável que processa dados de uma forma específica.
  • ✓Ao trabalhar com bibliotecas que organizam funções em sequências.

Exemplo do que pedir para a IA

“Como eu transformo um texto removendo espaços extras, colocando em maiúsculas e depois dividindo em palavras?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/fp-pipe-ref/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/fp-pipe-ref/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A função `pipe` pega um valor inicial e o passa por uma série de funções, uma após a outra. A função `flow` junta várias funções em uma nova, que pode ser usada para processar diferentes valores da mesma maneira.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill fp-pipe-ref

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/fp-pipe-ref/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

pipe & flow - Guia Rápido

pipe - Transformar um Valor

import { pipe } from 'fp-ts/function'

// pipe(startValue, fn1, fn2, fn3)
// = fn3(fn2(fn1(startValue)))

const result = pipe(
  '  hello world  ',
  s => s.trim(),
  s => s.toUpperCase(),
  s => s.split(' ')
)
// ['HELLO', 'WORLD']

flow - Criar Pipeline Reutilizável

import { flow } from 'fp-ts/function'

// flow(fn1, fn2, fn3) returns a new function
const process = flow(
  (s: string) => s.trim(),
  s => s.toUpperCase(),
  s => s.split(' ')
)

process('  hello world  ') // ['HELLO', 'WORLD']
process('  foo bar  ')     // ['FOO', 'BAR']

Quando Usar

Usar Quando
pipe Transformar um valor específico agora
flow Criar transformação reutilizável

Com Tipos fp-ts

import * as O from 'fp-ts/Option'
import * as A from 'fp-ts/Array'

// Option chain
pipe(
  O.fromNullable(user),
  O.flatMap(u => O.fromNullable(u.email)),
  O.getOrElse(() => 'no email')
)

// Array chain
pipe(
  users,
  A.filter(u => u.active),
  A.map(u => u.name)
)

Padrão Comum

// Data last enables partial application
const getActiveNames = flow(
  A.filter((u: User) => u.active),
  A.map(u => u.name)
)

// Reuse anywhere
getActiveNames(users1)
getActiveNames(users2)

Limitações

  • Use esta habilidade apenas quando a tarefa corresponder claramente ao escopo descrito acima.
  • Não trate a saída como substituta para validação específica do ambiente, testes ou revisão de especialistas.
  • Pare e peça esclarecimentos se faltarem entradas necessárias, permissões, limites de segurança ou critérios de sucesso.

Escopo de Referência

Estes são fragmentos do fp-ts 2.x. Forneça variáveis de aplicação, tipos, validadores e importações, e verifique a versão instalada. map não captura exceções lançadas. Task não possui um canal de erro tipado; uma Promise mal encapsulada ainda pode rejeitar. Use tryCatch em limites falíveis.

API Oficial: Módulos fp-ts.

Perguntas frequentes

Qual a diferença entre `pipe` e `flow`?

`pipe` é para transformar um valor específico agora, aplicando funções em sequência. `flow` é para criar uma nova função que combina transformações, para ser usada várias vezes depois.

Para que servem `pipe` e `flow`?

Eles ajudam a encadear ou compor funções, tornando o código mais legível e organizado, especialmente quando você tem várias etapas de processamento.

Posso usar isso com qualquer tipo de dado?

Sim, desde que as funções que você usa em `pipe` ou `flow` sejam compatíveis com os tipos de dados que estão sendo passados entre elas.

Detalhes

Descrição original do autor

Quick reference for pipe and flow. Use when user needs to chain functions, compose operations, or build data pipelines in fp-ts.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3030
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas