Receber por email
← Voltar para o catálogo

brain-share

Share a skill, agent, or rule with the team by copying it to the shared namespace

66estrelas
Atualizado há 4 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add toroleapinc/claude-brain

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/brain-share/svg)](https://www.skillteca.com.br/skills/brain-share)

Skills relacionadas

Ver todas de Desenvolvimento →

Alerta por categoria

Receba novas skills de Desenvolvimento toda segunda

1 email curto, só com as skills novas de Desenvolvimento. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Share an artifact with the team by copying it to the shared namespace.

Usage: /brain-share <type> <name>

  • type: 'skill', 'agent', or 'rule'
  • name: the filename (e.g., 'my-skill.md' or 'important-rule.md')
  • Use /brain-share --list to see what's currently shared

Arguments: $ARGUMENTS

Steps

  1. Parse arguments:

```bash ARGS=($ARGUMENTS) TYPE="${ARGS[0]:-}" NAME="${ARGS[1]:-}"

# Handle --list flag if [ "$TYPE" = "--list" ] || [ "$TYPE" = "list" ]; then echo "Delegating to /brain-shared-list..." # The agent should invoke /brain-shared-list skill instead exit 0 fi

if [ -z "$TYPE" ] || [ -z "$NAME" ]; then echo "Usage: /brain-share <type> <name>" echo " /brain-share --list" echo "Types: skill, agent, rule" echo "Example: /brain-share skill my-useful-tool.md" exit 1 fi

# Validate type case "$TYPE" in skill|agent|rule) ;; *) echo "ERROR: Type must be 'skill', 'agent', or 'rule'"; exit 1 ;; esac ```

  1. Check if the artifact exists locally:

```bash source "${CLAUDE_PLUGIN_ROOT}/scripts/common.sh"

case "$TYPE" in skill) SOURCE_FILE="${CLAUDE_DIR}/skills/${NAME}" ;; agent) SOURCE_FILE="${CLAUDE_DIR}/agents/${NAME}" ;; rule) SOURCE_FILE="${CLAUDE_DIR}/rules/${NAME}" ;; esac

if [ ! -f "$SOURCE_FILE" ]; then echo "ERROR: $TYPE '$NAME' not found at: $SOURCE_FILE" echo "" echo "Available ${TYPE}s:" case "$TYPE" in skill) ls "${CLAUDE_DIR}/skills/" 2>/dev/null || echo " (none)" ;; agent) ls "${CLAUDE_DIR}/agents/" 2>/dev/null || echo " (none)" ;; rule) ls "${CLAUDE_DIR}/rules/" 2>/dev/null || echo " (none)" ;; esac exit 1 fi ```

  1. Ask the user for confirmation before sharing:

"Share $TYPE '$NAME' with all machines in the brain network? This will be visible to all machines that sync with this brain." Wait for user to confirm before proceeding.

  1. Copy to shared namespace:

```bash # Create shared directory structure mkdir -p "${BRAIN_REPO}/shared/skills" "${BRAIN_REPO}/shared/agents" "${BRAIN_REPO}/shared/rules"

case "$TYPE" in skill) TARGET_FILE="${BRAIN_REPO}/shared/skills/${NAME}" ;; agent) TARGET_FILE="${BRAIN_REPO}/shared/agents/${NAME}" ;; rule) TARGET_FILE="${BRAIN_REPO}/shared/rules/${NAME}" ;; esac

# Copy the file cp "$SOURCE_FILE" "$TARGET_FILE" log_info "Copied $TYPE '$NAME' to shared namespace"

# Show the content preview echo "" echo "Shared $TYPE content preview:" echo "---" head -20 "$TARGET_FILE" if [ $(wc -l < "$TARGET_FILE") -gt 20 ]; then echo "... (truncated, total $(wc -l < "$TARGET_FILE") lines)" fi echo "---" ```

  1. Commit and push:

```bash cd "${BRAIN_REPO}" git add shared/ if git diff --cached --quiet 2>/dev/null; then echo "No changes to commit (file may already be shared)." else git commit -m "Share $TYPE: $NAME (from $(hostname))"

# Try to push if git push origin main 2>/dev/null; then echo "" echo "✓ $TYPE '$NAME' has been shared with the team!" echo " Team members will receive it on their next brain sync." else echo "" echo "⚠ $TYPE shared locally, but failed to push to remote." echo " Run /brain-sync to retry pushing to the team." fi fi ```

  1. Show sharing info:

``bash echo "" echo "Shared artifact location: shared/$TYPE/$NAME" echo "Team members will see this $TYPE after their next sync." ``

Compartilhar X LinkedIn