Receber por email
← Voltar para o catálogo

sync-credentials

Sync credential IDs from the live n8n instance. Two modes — list (default) reports IDs + TypeScript snippets, fix-workflows rewrites stale credential IDs in local `.workflow.ts` files by joining on credential name. Use after n8n migration, when setting up a new instance, or in response to a credential-freshness auto-reaction signal.

17estrelas
Atualizado há 3 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add neurawork-git/n8n-autopilot

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/sync-credentials/svg)](https://www.skillteca.com.br/skills/sync-credentials)

Alerta por categoria

Receba novas skills de Design e Frontend toda segunda

1 email curto, só com as skills novas de Design e Frontend. 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

Sync Credentials from n8n Instance

All work happens in scripts/ (colocated). The skill body is short on purpose — the scripts are the source of truth.

Modes

Default — list live credentials

node "$CLAUDE_PLUGIN_ROOT/skills/sync-credentials/scripts/list.js"

Prints a table of all credentials on the active n8n instance plus ready-to-paste TypeScript snippets. Read-only.

--fix-workflows — rewrite stale credential IDs

node "$CLAUDE_PLUGIN_ROOT/skills/sync-credentials/scripts/fix-workflows.js" [--dry-run] [--all-projects]

Walks workflows/**/*.workflow.ts, finds every credentials: { <type>: { id: '…', name: '…' } } block, joins by credential name against the live instance filtered to the workspace-pinned project, and rewrites the id value where the live ID differs from the local one. Order of id / name inside the block is tolerated; type mismatches and orphans are reported and NOT auto-rewritten.

Project scoping (default): credentials owned by projects other than the active workspace project are dropped from the candidate pool. This prevents cross-project ID injection that would push fine but fail at runtime ("credential not accessible"). Use --all-projects to disable the filter (rare).

Add --dry-run to preview without writing files.

This is what the SessionStart credential-freshness auto-reaction triggers:

AUTOPILOT_ACTION_REQUIRED: /n8n-autopilot:sync-credentials --fix-workflows

Companion scripts

  • scripts/list.js — fetches credentials via npx n8nac credential list --json, prints table + snippets
  • scripts/fix-workflows.js — the rewrite logic. Self-contained Node script, tolerant block-parsing regex, surgical id: replacement inside each matched block (never global), conflict + orphan reporting.

Prerequisites

  • n8nac workspace bound. Check via npx n8nac workspace status --json. If not bound, run npx n8nac setup --mode connect-existing first.
  • At least one credential configured on the live instance (or create one via npx n8nac credentials ensure <recipeId> from the shared recipe catalogue).

Error Handling

  • n8nac credential list fails → script exits 1 with a hint to check workspace status.
  • No .workflow.ts files → script exits 2 with a hint.
  • Type mismatch (workflow says openAiApi, live credential with that name is openRouterApi) → reported as conflict, NOT rewritten.
  • Duplicate name on instance (same credential name appears twice live) → reported as conflict, NOT rewritten — user must rename one on the instance.
  • Orphan (workflow references a name that does not exist on live instance) → reported, NOT rewritten — user creates the credential or removes the reference.

When to auto-trigger this skill

The SessionStart hook scripts/check-credential-freshness.sh (plugin-wide, not in this skill folder — it is a generic plugin hook) emits the auto-reaction line above when it detects local workflow files referencing credential IDs that do not exist on the live instance. Run with --fix-workflows in that case — list alone does not resolve the underlying problem.

Compartilhar X LinkedIn