Synthèse automatique
Produit un exemple Salesforce minimal — connexion via jsforce ou simple_salesforce, requête SOQL et cycle CRUD sur les sObjects standard Account, Contact et Lead.
Points forts
- Fournit du code exécutable en TypeScript et en Python pour le même scénario
- Déroule les cinq opérations de base (connexion/query, create, retrieve, update, destroy) étape par étape
- Inclut un tableau des erreurs SOQL courantes (INVALID_FIELD, MALFORMED_QUERY, REQUIRED_FIELD_MISSING) avec leur correctif
- Utilise des variables d'environnement pour les identifiants plutôt que des secrets en dur
Limites
- Suppose que l'authentification soit déjà configurée via le skill salesforce-install-auth et que jsforce soit installé
- Se limite aux sObjects standard et ne traite ni les relations, ni les opérations bulk, ni les limites de gouvernorat
- Le fichier fourni est tronqué sur la dernière ligne du tableau d'erreurs
À utiliser pour vérifier rapidement qu'une connexion Salesforce fonctionne ou pour découvrir les patterns de base de l'API.
À éviter si vous cherchez des patterns avancés (bulk API, relations, trigger, déploiement metadata) ou une intégration OAuth complète.
Analyse de sécurité
SûrThe skill provides a Salesforce CRUD tutorial using standard API libraries (jsforce, simple_salesforce) and environment variables for credentials. It does not instruct shell commands, exfiltration, obfuscation, or disabling safety. Deleting a test Account is part of the tutorial and explicitly recommends using a sandbox and avoiding production orgs or real customer names.
Aucun point d'attention détecté
Comment cette analyse est faiteExemples
Write a Salesforce hello world in TypeScript with jsforce: log in from env vars, run a SOQL query for 5 Accounts, then create, update, and delete one.Show me the same Salesforce example in Python using simple_salesforce — query Accounts and then do create, update, and delete.My jsforce query fails with MALFORMED_QUERY. Walk me through the salesforce quick start example and tell me what's wrong with my SOQL.name: salesforce-hello-world description: 'Create a minimal working Salesforce example with SOQL queries and sObject CRUD.
Use when starting a new Salesforce integration, testing your setup,
or learning basic Salesforce API patterns.
Trigger with phrases like "salesforce hello world", "salesforce example",
"salesforce quick start", "first salesforce query", "salesforce SOQL".
' allowed-tools: Read, Write, Edit version: 1.7.0 license: MIT author: Jeremy Longshore jeremy@intentsolutions.io tags:
- saas
- crm
- salesforce compatibility: Designed for Claude Code
Salesforce Hello World
Overview
Minimal working example: connect to Salesforce, run a SOQL query, and perform basic CRUD on standard sObjects (Account, Contact, Lead).
Prerequisites
- Completed
salesforce-install-authsetup - jsforce installed (
npm install jsforce) - Valid credentials in environment variables
Instructions
Step 1: Connect and Query Accounts
import jsforce from 'jsforce';
const conn = new jsforce.Connection({
loginUrl: process.env.SF_LOGIN_URL || 'https://login.salesforce.com',
});
await conn.login(
process.env.SF_USERNAME!,
process.env.SF_PASSWORD! + process.env.SF_SECURITY_TOKEN!
);
// Your first SOQL query — fetch 5 Accounts
const result = await conn.query(
"SELECT Id, Name, Industry, AnnualRevenue FROM Account LIMIT 5"
);
console.log(`Total records: ${result.totalSize}`);
for (const account of result.records) {
console.log(` ${account.Name} — ${account.Industry ?? 'N/A'}`);
}
Step 2: Create a Record
// Create a new Account
const newAccount = await conn.sobject('Account').create({
Name: 'Acme Corporation',
Industry: 'Technology',
Website: 'https://acme.example.com',
NumberOfEmployees: 250,
});
console.log('Created Account ID:', newAccount.id);
console.log('Success:', newAccount.success);
Step 3: Read a Record by ID
// Retrieve specific fields by record ID
const account = await conn.sobject('Account').retrieve(newAccount.id);
console.log('Account Name:', account.Name);
// Or use SOQL for more control
const result = await conn.query(
`SELECT Id, Name, Industry, CreatedDate
FROM Account
WHERE Id = '${newAccount.id}'`
);
Step 4: Update a Record
const updateResult = await conn.sobject('Account').update({
Id: newAccount.id,
Industry: 'Software',
Description: 'Updated via jsforce API',
});
console.log('Updated:', updateResult.success);
Step 5: Delete a Record
const deleteResult = await conn.sobject('Account').destroy(newAccount.id);
console.log('Deleted:', deleteResult.success);
Python Example
from simple_salesforce import Salesforce
import os
sf = Salesforce(
username=os.environ['SF_USERNAME'],
password=os.environ['SF_PASSWORD'],
security_token=os.environ['SF_SECURITY_TOKEN']
)
# SOQL query
result = sf.query("SELECT Id, Name, Industry FROM Account LIMIT 5")
for record in result['records']:
print(f" {record['Name']} — {record.get('Industry', 'N/A')}")
# Create
new_account = sf.Account.create({'Name': 'Acme Corp', 'Industry': 'Technology'})
print(f"Created: {new_account['id']}")
# Update
sf.Account.update(new_account['id'], {'Industry': 'Software'})
# Delete
sf.Account.delete(new_account['id'])
Output
- Successful SOQL query returning Account records
- Created, read, updated, and deleted an Account sObject
- Console output confirming each operation
Error Handling
| Error | Cause | Solution |
|-------|-------|----------|
| INVALID_FIELD | Field name wrong in SOQL | Check field API names in Setup > Object Manager |
| MALFORMED_QUERY | SOQL syntax error | Verify quotes, field names, WHERE clause |
| INVALID_TYPE | sObject name wrong | Use API name (e.g., Account, not Accounts) |
| REQUIRED_FIELD_MISSING | Missing required field on create | Add required fields (e.g., Name for Account) |
| ENTITY_IS_DELETED | Record already deleted | Query with isDeleted = true to find in Recycle Bin |
Examples
Run a disposable CRUD smoke test in a sandbox
Authenticate with a sandbox-only integration user, create an Account whose name includes a unique test run ID, query it by that ID, and update only a non-sensitive test field. Assert the expected result count, delete the test record, and confirm it is absent from normal SOQL results. Never aim this tutorial at a production org or use real customer names; preserve only the run ID and pass/fail result in the test log.
Resources
Next Steps
Proceed to salesforce-local-dev-loop for development workflow setup.
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/salesforce-hello-world-example-mttmx734/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/salesforce-hello-world-example-mttmx734' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/salesforce-hello-world-example-mttmx734/download' --output '.skill-downloads/salesforce-hello-world-example-mttmx734/SKILL.md.part' && mv '.skill-downloads/salesforce-hello-world-example-mttmx734/SKILL.md.part' '.skill-downloads/salesforce-hello-world-example-mttmx734/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Environnement déclaré par l’auteur : Designed for Claude Code
Outils déclarés par l’auteur (à vérifier dans votre agent) : Read, Write, Edit
Extrait original : Prerequisites
- Completed
salesforce-install-authsetup - jsforce installed (
npm install jsforce) - Valid credentials in environment variables
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
Claude Code
test -f '.skill-downloads/salesforce-hello-world-example-mttmx734/SKILL.md' && test -s '.skill-downloads/salesforce-hello-world-example-mttmx734/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/salesforce-hello-world' && cp -R '.skill-downloads/salesforce-hello-world-example-mttmx734' '.claude/skills/salesforce-hello-world'OpenSkills
OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/salesforce-hello-world-example-mttmx734'openskills read 'salesforce-hello-world-example-mttmx734'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/salesforce-hello-world-example-mttmx734/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Bonnes pratiques React Hook Form
Developpement
Maîtrisez React Hook Form : évitez les anti-patterns, gérez les abonnements, et traitez correctement reset, dirty state et entrées contrôlées.
Migration Emotion vers Mantine
Developpement
Migrer les styled-components Emotion vers des composants Mantine avec style props et modules CSS. Pour convertir .styled.tsx ou supprimer les imports @emotion.
Détecteur de dérive de périmètre
Developpement
Analyse les diffs git par rapport à une intention pour détecter la dérive de périmètre, fichiers non liés et PR trop larges, puis suggère de garder, diviser ou justifier.