CommunityImagemgithub.com

Pixerate/pixerate-vector

Como desenhar e editar arte vetorial no editor vetorial Pixerate através de seus comandos vector.* – adicionar formas e caminhos SVG, texto (ponto, área, em um caminho, estilos, Criar Contornos), símbolos e instâncias, restrições CAD, pranchetas e quadros com restrições de redimensionamento, conectores, preenchimentos e traçados empilhados com modos de mesclagem, pinceladas com caráter de pincel e grão de papel, sombras, brilhos e desfoques, máscaras de recorte e opacidade, gradientes (linear, radial, cônico, malha, livre), alinhamento de traçado, pontas de seta, traçados de largura variável e afunilados, cantos vivos, operações booleanas e Pathfinder (unir, subtrair, dividir, aparar), Shape Builder, balde de tinta, efeitos de caminho (aparar, repetidor, zigue-zague, deslocamento), deformações de envelope e distorção livre, mesclagens e morfismo, edição de âncora (unir, suavizar, simplificar, faca, borracha), alinhar, distribuir, agrupar e importação e exportação SVG. Use ao criar um ícone, logotipo, ilustração, glifo, emblema ou arte de caminho Bezier, ou ao editar um SVG em um editor vetorial Pixerate.

O que é pixerate-vector?

A skill Pixerate/pixerate-vector fornece um conjunto abrangente de comandos `vector.*` para criar e editar arte vetorial diretamente no editor vetorial Pixerate. Ela é especialmente útil para desenvolvedores e designers que trabalham com ícones, logotipos, ilustrações, glifos e emblemas, ou que precisam editar arquivos SVG de forma precisa e programática. A skill suporta uma vasta gama de operações, desde a adição de formas básicas e caminhos Bezier até o gerenciamento de texto com estilos avançados, símbolos reutilizáveis, restrições CAD, gradientes complexos e efeitos de camada como sombras e desfoques. Seu fluxo de trabalho é orientado a comandos executados via `run_command` ou `run_commands`, permitindo o encadeamento de operações em lotes atômicos para desfazer/refazer eficientes. O documento vetorial é modelado como uma árvore de nós (caminhos, texto, instâncias e grupos), suportando máscaras, operações booleanas ao vivo, efeitos de caminho e deformações. A skill enfatiza práticas não destrutivas, incentivando o uso de operações booleanas e efeitos ao vivo até que seja necessário 'assar' (expandir) o resultado final. Para trabalhos específicos, a skill recomenda carregar skills de fluxo de trabalho complementares, como `pixerate-vector-icon-set`, `pixerate-vector-logo` e `pixerate-vector-illustration`, que fornecem metodologias detalhadas e verificações entre etapas.

Funciona com~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/Pixerate/editor/tree/HEAD/packages/core/skills/pixerate-vector

Installed? Explore more Imagem skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Perguntar na sua IA favorita

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

Documentação

Editor vetorial Pixerate

O documento vetorial é uma prancheta (largura x altura em unidades do documento, y para baixo) que contém uma árvore de nós: nós path (um ou mais subcaminhos de âncoras Bezier, com preenchimento, traçado e configurações de traçado), nós text (uma string definida como texto de ponto, texto de área ou ao longo de um caminho, pintada com os mesmos preenchimentos e traçados), nós instance (uma cópia colocada de um símbolo) e nós group. Grupos também podem ser booleanos ao vivo, mesclagens ao vivo, grupos de máscara ou carregar uma pilha de efeitos ao vivo. Todo comando é um comando vector.* executado com run_command / run_commands (veja pixerate-agent-tools para agrupamento com referências "$0.id", atomic: true e códigos de erro).

  • IDs de nós vêm de vector.list e do que as escritas retornam ({ id }, { ids }).
  • Âncoras são { nodeId, subpath, index }: número do subcaminho dentro do caminho, depois número da âncora dentro do subcaminho, ambos a partir de 0. Comandos que usam anchors usam por padrão os pontos selecionados com a ferramenta direta; aqueles que usam ids usam a seleção por padrão.
  • Paint é uma cor CSS, null para nenhum, ou um objeto gradiente { type, stops: [{ offset, color, opacity?, midpoint? }], ... }.
  • Aparência: um caminho pode empilhar vários preenchimentos e vários traçados (de baixo para cima; todos os preenchimentos desenham sob todos os traçados), cada um com seu próprio paint, opacity, blendMode e visible, e cada traçado com sua própria largura, alinhamento, tracejados, pontas, uniões, pontas de seta e perfil, ou uma pincelada (vector.addBrushstroke, vector.setBrushstroke, vector.listBrushes) pintada ao longo do contorno com um pincel seco ou úmido, um Mixer Brush, smudge ou blender, tinta gradiente, jitter semeado e grão de papel. As camadas são endereçadas por index em sua pilha, 0 na parte inferior. fill / stroke e as configurações de traçado de vector.setStyle são atalhos para a camada superior; null limpa a pilha. Qualquer nó também pode ter um blendMode e filters (sombra projetada/interna, brilho externo/interno, desfoque de camada, pena), que nunca alteram a geometria.
  • Máscaras: o primeiro filho (inferior) de um grupo de máscara é sua máscara; os filhos acima dele aparecem apenas dentro do contorno da máscara (clip), ou onde ela é brilhante (luminance) ou opaca (alpha). invert troca o que é mostrado e o que é ocultado. vector.list dá a um grupo de máscara uma mask { type, invert, maskId, contents, enabled }; uma máscara oculta (enabled: false) não mascara nada.
  • Texto tem uma font base (família, peso, itálico, tamanho, tracking, entrelinha, deslocamento de linha de base, sublinhado, tachado), execuções opcionais que substituem campos em intervalos (start / end em unidades de código UTF-16, mais um fill de intervalo), um estilo paragraph e um frame: point (x, y da primeira linha de base), area (uma caixa na qual ele se ajusta) ou path (uma linha que ele segue).
  • Símbolos são arte reutilizável mantida com o documento (vector.listSymbols), desenhados por nós instance através de uma transformação que, ao contrário de outros nós, pode escalar e distorcer. Editar um símbolo (vector.editSymbol … vector.exitSymbolEdit) altera todas as instâncias.
  • Restrições (estilo CAD) mantêm relações geométricas e dimensões entre âncoras, segmentos e caminhos redondos; elas são resolvidas após cada edição, para que movimentos posteriores as mantenham.
  • Quadros são grupos com um retângulo frame (vector.listFrames): eles desenham um fundo, recortam seus filhos e selecionam pelo seu retângulo; quadros de nível superior são pranchetas. Quando um quadro é redimensionado, seus filhos seguem suas restrições de redimensionamento (horizontal left / right / leftRight / center / scale, vertical top / bottom / topBottom / center / scale) em vez de escalar.
  • Conectores são caminhos abertos com um connector cujas extremidades são coladas a locais de outros objetos (o meio de um lado, ou o centro); eles são roteados novamente após cada edição, de modo que seguem o que conectam. Uma extremidade livre permanece onde está.
  • Grupos de simetria desenham seus filhos mais cópias espelhadas ou rotacionadas. Adicione arte a um com parentId em vector.addShape / vector.addPath; apenas os originais são armazenados e editados.
  • As coordenadas estão em unidades do documento. Um nó rotacionado armazena sua geometria em seu próprio espaço: os bounds que vector.list relata são no espaço do documento, seu d é o próprio do nó.

Detalhes dos parâmetros (campos de gradiente, parâmetros de efeito, perfis de largura, envelopes) estão em references/commands.md.

Skills de fluxo de trabalho

Para esses trabalhos, carregue a skill de fluxo de trabalho também: ela tem o método, as verificações entre etapas e as armadilhas, e usa os comandos abaixo.

  • pixerate-vector-icon-set: ícones em uma grade, um traçado e estilo, nítidos, como símbolos e SVG.
  • pixerate-vector-logo: marcas a partir de booleanos, um lockup, variantes de cor, arquivos de entrega delineados.
  • pixerate-vector-illustration: bloco inicial, gradientes e preenchimentos empilhados, máscaras, mesclagens, sombras.

Método de trabalho

  1. Leia. vector.list fornece o tamanho da prancheta, cada nó em profundidade (id, tipo, nome, limites, rotação, preenchimento, traçado, d, efeitos, informações de mesclagem e booleanas, pilhas, modo de mesclagem e filtros) e a seleção. vector.getAppearance fornece as pilhas completas e filtros de um nó.
  2. Planeje em camadas. Decida as formas, sua pilha (de baixo para cima) e seu agrupamento antes de desenhar. Comece a partir de primitivas (vector.addShape) e combine-as; escreva d bruto apenas para curvas que as primitivas não podem fazer.
  3. Escreva em lotes. Coloque uma sequência de construção em um run_commands com atomic: true e um label, encadeando ids ("$0.id", "$last.ids"), de modo que seja uma etapa de desfazer que aplica tudo ou nada.
  4. Prefira ao vivo, expanda por último. Use booleanos live: true, efeitos de caminho, envelopes, cantos e mesclagens ao vivo durante o design; asse com vector.expandAppearance, vector.expandBlend ou vector.outlineStroke apenas quando o usuário precisar de caminhos simples.
  5. Verifique. vector.list novamente: limites onde você pretendia, sem nós soltos, nomes sensatos. vector.exportSvg fornece a marcação final; revise-a, ou renderize-a se puder, antes de entregá-la.

Melhores práticas

  • Quadros para qualquer coisa que redimensione. Construa telas, cartões, botões e banners dentro de um quadro (vector.addFrame ou vector.frameSelection), defina as restrições de cada filho com vector.setResizing (fundos e divisores leftRight, ícones fixados em seu canto, títulos center), depois redimensione com vector.setFrame para produzir outros tamanhos a partir de um design. Exporte cada prancheta com vector.exportFrameSvg.
  • Símbolos para repetições. Quando a mesma arte aparece várias vezes (ícones em um conjunto, árvores em uma cena, marcadores, uma marca de logotipo), crie-a uma vez e coloque instâncias (vector.makeSymbol, depois vector.placeSymbol com x / y ou um transform), de modo que uma edição em isolamento as altere a todas. Dê a cada um um nome claro. Use vector.setInstanceOptions fill / stroke para variantes de cor e hidden para descartar uma parte, em vez de desanexar; desanexe apenas quando uma cópia deve divergir permanentemente.
  • Texto. Use texto de ponto para rótulos e títulos, texto de área (width, height) para qualquer coisa que deva ser ajustada, texto em um caminho para emblemas e selos. Verifique overflow no resumo que toda escrita de texto retorna: linhas ou caracteres ocultos significam que a caixa ou o caminho é muito pequeno. Mantenha uma ou duas famílias por design (vector.listFonts lista o que o shaper tem; uma família ausente desenha em um fallback e aparece em missingFonts). Estilize intervalos com vector.setTextStyle em vez de dividir o texto em nós separados, para que ainda edite como um parágrafo. Crie Contornos apenas para arte final ou logotipos que não devem depender de fontes; mantenha uma cópia como texto se puder mudar.
  • Caminhos, traçados, pinceladas, booleanos, gradientes, pilhas, máscaras, sombras, conectores, restrições e texto vertical: leia references/best-practices.md primeiro.
  • Não destrutivo primeiro. Booleanos ao vivo (vector.boolean com live: true), efeitos de caminho e envelopes mantêm os operandos editáveis. Um booleano destrutivo ou Pathfinder substitui suas entradas; faça isso por último, e apenas quando for solicitada saída plana.
  • Agrupamento e nomenclatura. Agrupe as partes de um objeto (vector.group com um name), nomeie caminhos que importam (name em add), e mantenha a árvore rasa.
  • Higiene SVG. Exporte com precision 2 ou 3 (padrão 3); maior apenas para pranchetas muito pequenas. Expanda efeitos, mesclagens e traçados de largura variável antes de entregar SVG a ferramentas que não leem os atributos data-vector-* do Pixerate; outros leitores veem a aparência desenhada, mas não a fonte ao vivo.

Comandos

Leitura

ComandoUse para
vector.listLer o documento: { width, height, nodes, selection, tool }. Cada nó tem id, tipo, nome, profundidade, bounds no espaço do documento, rotation (graus no sentido horário), visível, bloqueado, selecionado, e para caminhos fill, stroke, strokeWidth e d; grupos listam children, blend, liveBoolean, effects, mask. Os bounds de um grupo de máscara são seu resultado mascarado. Chame-o primeiro e após qualquer lote.
vector.shapeBuilderFacesListar as regiões em que os caminhos fornecidos dividem o plano: dados do caminho, área, um ponto dentro de cada uma e os ids dos caminhos que a preenchem. Use os pontos com vector.shapeBuilder.
vector.exportSvgObter o documento como marcação SVG independente ({ svg }); precision de 0 a 8 decimais (padrão 3).
vector.exportPdfObter um PDF vetorial pronto para impressão como uma URL de dados base64: uma página, ou uma por prancheta com pages: "artboards". Retorna { pdf, pages, bytes, notes }; verifique notes (filtros, máscaras de opacidade e texto sem fontes carregadas são omitidos).
vector.exportLottieObter o documento (ou ids) como JSON Lottie para players de animação: efeitos de caminho permanecem ao vivo como modificadores Lottie, gradientes como preenchimentos de gradiente. Retorna { lottie, notes }; leia notes para o que foi aproximado (filtros, gradientes de malha, texto sem contornos).

Criar e excluir

ComandoUse para
vector.traceImageTransformar um PNG (URL de dados) em caminhos vetoriais em um grupo: modo threshold para arte de uma cor (logotipos, digitalizações, silhuetas; channel: "alpha" para recortes), modo color para um caminho empilhado por cor (colors 2–32). Aumente tolerance para menos âncoras, cornerRoundness 0 para polígonos nítidos. Coloque com x, y, width. Retorna { id, paths }; verifique contagens de subpaths e simplifique ou exclua manchas depois.
vector.mosaicImageEstilizar um PNG como mosaico (cell px, shape quadrado / círculo, gap, colors): pixel art, murais em mosaico. Retorna { id, paths }, um caminho composto por cor.
vector.halftoneImageEstilizar um PNG como pontos de meio-tom em uma tela girada (cell, angle, ink color ou nulo para as cores da imagem): looks de quadrinhos e pop art, efeitos de impressão.
vector.lowPolyImageEstilizar um PNG como triângulos low-poly (cell, jitter, seed, colors): retratos e fundos geométricos.
vector.hatchImageEstilizar um PNG como linhas de gravação que engrossam onde é escuro (cell espaçamento, angle, ink color): looks de nota, xilogravura e line-art.
vector.addPathByDimensionsDesenhar um caminho como um usuário de CAD digita: a partir de start, cada passo { length, angle } (graus anti-horários na página: 0 direita, 90 cima), { dx, dy } ou { x, y }; closed une as extremidades. Use para contornos técnicos exatos (suportes, plantas baixas, comprimentos e ângulos fornecidos) em vez de calcular coordenadas manualmente. Retorna { id, anchors }.
vector.addShapeAdicionar um kind rect, ellipse, polygon (sides, pelo menos 3), star (points, innerRatio 0 a 1) ou line em x, y, width, height (todos obrigatórios; para uma linha, largura e altura são o deslocamento da extremidade). cornerRadius e cornerKind dão cantos vivos; qualquer campo de estilo e name se aplicam. Usa o estilo padrão do editor para o que não for fornecido. Retorna { id }.
vector.addPathAdicionar um caminho a partir de dados de caminho SVG d (M, L, H, V, C, S, Q, T, A, Z absolutos ou relativos; arcos e quadráticas tornam-se cúbicos) em unidades do documento, com name e campos de estilo; estilo não definido vem dos padrões do editor. Falha quando d não tem pontos. Retorna { id }.
vector.importSvgAdicionar as formas da marcação SVG svg no topo do documento, ou substituir o documento com replace: true. Lê caminhos, formas básicas, grupos, transformações, gradientes lineares e radiais, referências clip-path / mask (como grupos de máscara) <text> (como texto de ponto: conteúdo, fonte, âncora e preenchimento) e <use> (como instâncias de símbolos feitos a partir do que referenciam); ignora imagens e filtros estrangeiros.
vector.importLottieAdicionar um frame de uma animação Lottie (objeto ou texto) como grupos editáveis, ou substituir o documento (replace: true). Modificadores tornam-se efeitos ao vivo. Retorna { ids, notes }.
vector.deleteExcluir nós (ids).
vector.renameRenomear nó id para name (seu nome no painel Camadas). Nomeie o que você cria pelo que é; renomeie as camadas do usuário apenas quando solicitado. Retorna { id, name }.

Estilo

ComandoUse para
vector.setStyleDefinir fill, stroke, strokeWidth, strokeLinecap (butt, round, square), strokeLinejoin (miter, round, bevel), strokeDasharray, fillRule (nonzero, evenodd), strokeAlign (center, inside, outside; apenas formas fechadas), startArrow / endArrow (triangle, arrow, open, circle, square, bar, ou null), arrowAlign (extend, tip), startArrowScale / endArrowScale (múltiplos da largura do traçado, padrão 1), strokeWidthProfile em ids. Grupos se aplicam a cada caminho dentro. Passe pelo menos um campo.
vector.setGradientEditar o gradiente do preenchimento (target padrão) ou traçado de ids: type (linear, radial, conic, reflected, diamond), stops, angle (graus, 0 cima, sentido horário), cx / cy / r, start / end / width / focal explícitos, units, spread, interpolation (srgb padrão, linear, oklab), smoothness, strokeMode, aspect, reverse. Campos faltando mantêm seu valor; uma cor sólida torna-se um gradiente dela para branco. Retorna o

... (conteúdo truncado para tradução)

Individual skills in this repo

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

Pixerate/pixerate-animation-editor

How to author and edit vector animations (motion graphics, logo reveals, animated icons, explainer scenes, UI micro-interactions) in the Pixerate animation editor through its agent tools - artwork SVG with ids, shots of commands (enter, exit, draw, move, rotate, scale, fade, morph, Smart Animate match, follow a path, pulse, shake, wiggle), easing and springs, stagger, camera, beat and voiceover cues, drivers, reusable clips, checking, rendering frames and contact sheets, and exporting to Flair or Lottie. Use when animation tools such as get_animation, insert_shots or edit_animation are available, or when asked to animate, time, ease, stagger or export vector motion, and provider motion and vector effects (for example Flair) applied to nodes.

Pixerate/pixerate-brushes

How to find, describe, create, change, check and share brushes in the Pixerate brush library through list_brush_presets, describe_brush, create_brush, update_brush, duplicate_brush, remove_brush, check_brush, export_brushes, import_brushes, import_brush_pack, preview_brush, add_brush_source and list_brush_sources - brushes made of facets (kind, medium and variety or tool, tip, marks, dynamics, behaviour, light, motion, colour), image tips and tip grain made from image sources, the built-in presets, and the host profiles that say what the paint editor, image editor, canvas and vector strokes can render. Use when asked to make, design, tweak, save, copy, delete, export, import or check a brush, make a brush from an image (a scanned mark, a leaf, a texture), give a brush grain, bring in a Photoshop .abr or Procreate .brush / .brushset pack, find a brush for a medium (pencil, ink, watercolour, oil, airbrush, highlighter), or make a brush work in another editor.

Pixerate/pixerate-canvas

How to build and edit a Pixerate design canvas or node graph through its agent tools - drawing freehand pen, highlighter and dry-brush strokes (canvas.drawFreehand), annotating with hand-drawn circles, underlines, arrows, brackets, strikes, crosses and ticks (canvas.circle, canvas.arrow), adding, connecting, updating and laying out nodes (canvas_add_node, canvas_layout), reading state with get_editor_state and looking at it with view_editor, reusable components with variants, instances and overrides (create_component, add_variant, set_instance_properties), align, distribute, lock and layer order, shape boolean operations (unite, subtract, offset path, outline stroke), auto layout frames, and keyframe animation with easing and CSS export. Use when working on a canvas, whiteboard, flow chart, node graph, frame, design system, component library, button variants, layout, alignment, z-order or a canvas animation in a Pixerate editor.

Pixerate/pixerate-video-editor

How to edit video projects in the Pixerate non-linear video editor through its agent tools - adding video, audio and image assets, building a rough cut on video and audio tracks, inserting, overwriting, moving, trimming, splitting and ripple-deleting clips, slip, slide and roll edits, lift and extract of a time range, razor cuts across tracks, sync-locked tracks, keyframed opacity, volume and transform, closing gaps, titles and colour clips, fades, volume and speed, crossfade, dip and wipe transitions with handles, J and L cuts, markers, checking the project, adjustment clips over tracks, clip masks, skin-tone protected LUTs, edit plans proposed for review before they apply, provider effects (clip effects, effect clips, effect transitions), rendering frames and contact sheets, and exporting an ffmpeg command or a CMX 3600 EDL. Use when video tools such as get_video_project, add_video_clip or edit_video are available, or when asked to cut, trim, assemble, sequence or export footage on a timeline.

Habilidades Relacionadas