lucas-riverbi

Salesforce Skill

商業營運v0.1.0
作者:lucas-riverbi更新於 2026-05-11salesforce-skill@clawhub_lucas-riverbi/salesforce-skill
CRM 管理#CRM

據 AlphaMoat 統計,截至 2026-09,Salesforce Skill 累計下載 3,373 次、獲 1 個星標,在全部 5,078 個 AI 技能中排名第 3,339 位,在「商業營運」分類(297 個)中排名第 184 位。

累計安裝
104
累計下載
3373
星標
1
全站排名
#3,339
全站前 66% · 「商業營運」前 62%
平台累計安裝累計下載星標評論
ClawHub ↗10431101-
SkillHub ↗10333731—

各平台的計數口徑不同,統計時間不一致。

這個技能是做什麼的

該指南介紹使用 SOQL 查詢聯絡人、客戶、商機、線索與案例,並透過 CLI 執行建立、更新、刪除、批次匯入匯出和物件結構查詢。相關操作可訪問敏感客戶資料,寫入或刪除會改變線上記錄;執行前應確認目標組織、許可權和查詢範圍,對修改、刪除、批次或任意 SOQL 操作取得明確確認,並優先在沙箱驗證。

資料釋出於 2026-10-29

可以用來做什麼

  • 查詢獲准訪問的 CRM 記錄並整理彙總。
  • 審閱 SOQL 查詢的物件、欄位、篩選條件和輸出範圍。
  • 瞭解透過 CLI 或 REST API 執行記錄管理的工作流。

什麼時候用

  • 需要在 Salesforce 中檢查客戶、銷售或支援記錄時。
  • 執行建立、更新、刪除、批次匯入匯出或結構發現操作前,需要確認組織與影響範圍時。
  • 處理可能含個人或商業敏感資訊的 CRM 資料時。

示例提示詞

以下是根據技能文件生成的示例,不代表實際執行結果。

先解釋這條 SOQL 會讀取哪些欄位和記錄,不執行查詢。
為這項 Salesforce 變更列出目標組織、記錄範圍和需要人工確認的寫入步驟。

月度資料趨勢

累計下載3373
2095278234682026-03 · 累計下載 21902026-05 · 累計下載 26312026-07 · 累計下載 30002026-08 · 累計下載 31332026-09 · 累計下載 337326-0326-09
星標1
0122026-03 · 星標 12026-05 · 星標 12026-07 · 星標 12026-08 · 星標 12026-09 · 星標 126-0326-09

2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。

月份累計下載環比星標
2026-093373—1
2026-083133+4.4%1
2026-073000—1
2026-052631—1
2026-032190—1

SKILL.md 原文

以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。

6.7 KB · ClawHub v0.1.0
Main skill definition with frontmatter, CLI reference, SOQL patterns

---

```yaml
---
name: salesforce
description: Manage Salesforce CRM - query records, create/update contacts, accounts, opportunities, leads, and cases. Use when the user asks about CRM data, sales pipeline, customer records, or Salesforce operations.
metadata: {"moltbot":{"emoji":"☁️","requires":{"bins":["sf"],"env":["SALESFORCE_ACCESS_TOKEN"]},"primaryEnv":"SALESFORCE_ACCESS_TOKEN","install":[{"id":"npm","kind":"node","package":"@salesforce/cli","bins":["sf"],"label":"Install Salesforce CLI (npm)"},{"id":"brew","kind":"brew","formula":"salesforce-cli","bins":["sf"],"label":"Install Salesforce CLI (brew)"}]}}
homepage: https://developer.salesforce.com/tools/salesforcecli
展開全部(共 222 行)
---
```

# Salesforce CRM Skill

Interact with Salesforce CRM using the official Salesforce CLI (`sf`) and REST API.

## Prerequisites

1. **Salesforce CLI** (`sf`) installed via npm or Homebrew
2. **Authentication** configured via one of:
    - `sf org login web` (OAuth browser flow - recommended for interactive)
    - `sf org login jwt` (JWT for headless/automated)
    - `SALESFORCE_ACCESS_TOKEN` environment variable (direct token)

## Quick Reference

### Authentication & Org Management

```bash
# Login to org (opens browser)
sf org login web --alias myorg

# Login with JWT (headless)
sf org login jwt --client-id <consumer-key> --jwt-key-file <path-to-key> --username <user> --alias myorg

# List connected orgs
sf org list

# Set default org
sf config set target-org myorg

# Display org info
sf org display --target-org myorg
```

### Query Records (SOQL)

```bash
# Query contacts
sf data query --query "SELECT Id, Name, Email, Phone FROM Contact LIMIT 10" --target-org myorg

# Query with WHERE clause
sf data query --query "SELECT Id, Name, Amount, StageName FROM Opportunity WHERE StageName = 'Prospecting'" --target-org myorg

# Query accounts by name
sf data query --query "SELECT Id, Name, Industry, Website FROM Account WHERE Name LIKE '%Acme%'" --target-org myorg

# Export to CSV
sf data query --query "SELECT Id, Name, Email FROM Contact" --result-format csv > contacts.csv

# Export to JSON
sf data query --query "SELECT Id, Name FROM Account" --result-format json
```

### Create Records

```bash
# Create a Contact
sf data create record --sobject Contact --values "FirstName='John' LastName='Doe' Email='[email protected]'" --target-org myorg

# Create an Account
sf data create record --sobject Account --values "Name='Acme Corp' Industry='Technology' Website='https://acme.com'" --target-org myorg

# Create an Opportunity
sf data create record --sobject Opportunity --values "Name='Big Deal' AccountId='001XXXXXXXXXXXXXXX' StageName='Prospecting' CloseDate='2025-06-30' Amount=50000" --target-org myorg

# Create a Lead
sf data create record --sobject Lead --values "FirstName='Jane' LastName='Smith' Company='NewCo' Email='[email protected]' Status='Open - Not Contacted'" --target-org myorg

# Create a Case
sf data create record --sobject Case --values "Subject='Support Request' Description='Customer needs help' Status='New' Priority='Medium'" --target-org myorg
```

### Update Records

```bash
# Update a Contact
sf data update record --sobject Contact --record-id 003XXXXXXXXXXXXXXX --values "Phone='555-1234' Title='VP Sales'" --target-org myorg

# Update an Opportunity stage
sf data update record --sobject Opportunity --record-id 006XXXXXXXXXXXXXXX --values "StageName='Negotiation/Review' Amount=75000" --target-org myorg

# Update Account
sf data update record --sobject Account --record-id 001XXXXXXXXXXXXXXX --values "Description='Key strategic account'" --target-org myorg
```

### Delete Records

```bash
# Delete a record
sf data delete record --sobject Contact --record-id 003XXXXXXXXXXXXXXX --target-org myorg

# Bulk delete via query (careful!)
sf data delete bulk --sobject Lead --file leads-to-delete.csv --target-org myorg
```

### Bulk Operations

```bash
# Bulk insert from CSV
sf data import bulk --sobject Contact --file contacts.csv --target-org myorg

# Bulk update from CSV
sf data upsert bulk --sobject Account --file accounts.csv --external-id Id --target-org myorg

# Check bulk job status
sf data bulk status --job-id <job-id> --target-org myorg
```

### Schema & Metadata

```bash
# Describe an object (get fields)
sf sobject describe --sobject Account --target-org myorg

# List all objects
sf sobject list --target-org myorg

# Get field details
sf sobject describe --sobject Opportunity --target-org myorg | jq '.fields[] | {name, type, label}'
```

## Common SOQL Patterns

### Pipeline Report

```sql
SELECT StageName, COUNT(Id) NumDeals, SUM(Amount) TotalValue
FROM Opportunity
WHERE IsClosed = false
GROUP BY StageName
```

### Recent Activities

```sql
SELECT Id, Subject, WhoId, WhatId, ActivityDate
FROM Task
WHERE OwnerId = '<user-id>'
AND ActivityDate >= LAST_N_DAYS:7
ORDER BY ActivityDate DESC
```

### Contacts by Account

```sql
SELECT Account.Name, Id, Name, Email, Title
FROM Contact
WHERE Account.Name = 'Acme Corp'
```

### Open Cases

```sql
SELECT Id, CaseNumber, Subject, Status, Priority, CreatedDate
FROM Case
WHERE IsClosed = false
ORDER BY Priority, CreatedDate
```

### Leads by Status

```sql
SELECT Status, COUNT(Id) Total
FROM Lead
WHERE IsConverted = false
GROUP BY Status
```

## REST API (Alternative)

For operations not covered by CLI, use curl with the REST API:

```bash
# Set variables
INSTANCE_URL="https://yourorg.salesforce.com"
ACCESS_TOKEN="$SALESFORCE_ACCESS_TOKEN"

# Query via REST
curl -s "$INSTANCE_URL/services/data/v59.0/query?q=SELECT+Id,Name+FROM+Account+LIMIT+5" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json"

# Create record via REST
curl -s "$INSTANCE_URL/services/data/v59.0/sobjects/Contact" \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"FirstName":"Test","LastName":"User","Email":"[email protected]"}'
```

## Error Handling

- **INVALID_SESSION_ID**: Token expired. Re-authenticate with `sf org login web`
- **MALFORMED_QUERY**: Check SOQL syntax. Use single quotes for strings.
- **ENTITY_IS_DELETED**: Record was deleted. Query to verify before updating.
- **REQUIRED_FIELD_MISSING**: Check object schema for required fields.

## Tips

1. **Use aliases**: Set `--alias` when logging in, then use `--target-org alias`
2. **JSON output**: Add `--json` flag for programmatic parsing
3. **Dry run**: Use `--dry-run` flag on bulk operations to preview
4. **Field names**: Use API names (e.g., `FirstName`), not labels (e.g., "First Name")
5. **Date format**: Use `YYYY-MM-DD` for dates, `YYYY-MM-DDThh:mm:ssZ` for datetimes

## Limitations

- Bulk operations have daily API limits (varies by Salesforce edition)
- Some objects (e.g., ContentDocument) have special handling requirements
- Complex queries may hit governor limits

「商業營運」分類下的熱門技能

資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。