sf-compact-cli 0.3.0 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +26 -12
  2. package/install.js +1 -1
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -161,11 +161,12 @@ sf-compact config show
161
161
  Default config after `config init`:
162
162
 
163
163
  ```yaml
164
- default_format: yaml
164
+ default_format: json
165
165
  formats:
166
- Flow: yaml-ordered
167
- FlexiPage: yaml-ordered
168
- Layout: yaml-ordered
166
+ Profile: yaml
167
+ PermissionSet: yaml
168
+ PermissionSetGroup: yaml
169
+ # ... other order-insensitive types get yaml for readability
169
170
  skip: []
170
171
  ```
171
172
 
@@ -208,7 +209,7 @@ Run `sf-compact pack` to update.
208
209
  sf-compact lint [source...] [-o packed-dir] [--include pattern]
209
210
  ```
210
211
 
211
- Check that compact files are up-to-date. Exits with code 1 if any files are stale. Use in CI pipelines.
212
+ Check that compact files are up-to-date. Exits with code 1 if any files are stale, new, or orphaned. Use in CI pipelines.
212
213
 
213
214
  ### Changes (track modified compact files)
214
215
  ```bash
@@ -237,11 +238,23 @@ This exposes `sf_compact_pack`, `sf_compact_unpack`, `sf_compact_stats`, `sf_com
237
238
 
238
239
  ### AI Instructions
239
240
 
240
- Generate a provider-agnostic markdown file with usage instructions for any AI tool:
241
+ Inject a compact directive block into your AI tool's instruction file. Auto-detects which AI tools are configured in the project and writes to all of them.
241
242
 
242
243
  ```bash
244
+ # Auto-detect AI tools and inject into all found instruction files
243
245
  sf-compact init instructions
244
- sf-compact init instructions --name SALESFORCE.md
246
+
247
+ # Inject only into a specific tool's file
248
+ sf-compact init instructions --target claude # CLAUDE.md
249
+ sf-compact init instructions --target cursor # .cursorrules
250
+ sf-compact init instructions --target copilot # .github/copilot-instructions.md
251
+ sf-compact init instructions --target codex # AGENTS.md
252
+
253
+ # Remove sf-compact blocks from all AI instruction files
254
+ sf-compact init instructions --remove
255
+
256
+ # Legacy: create standalone reference file
257
+ sf-compact init instructions --name SF_COMPACT.md
245
258
  ```
246
259
 
247
260
  ### Manifest
@@ -254,19 +267,20 @@ sf-compact manifest
254
267
 
255
268
  ## Supported Metadata Types
256
269
 
257
- 76 file extensions mapping to Salesforce metadata types across 9 categories:
270
+ 76 file extensions mapping to Salesforce metadata types across 10 categories:
258
271
 
259
272
  | Category | Types |
260
273
  |----------|-------|
261
274
  | **Security** | Profile, PermissionSet, PermissionSetGroup, RemoteSiteSetting, CspTrustedSite, ConnectedApp, SharingRules, CustomPermission, Role, Group, AuthProvider, SamlSsoConfig, Certificate |
262
- | **Schema** | CustomObject, CustomField, ValidationRule, CustomMetadata, GlobalValueSet, StandardValueSet, RecordType, MatchingRule, DuplicateRule, CustomIndex, TopicsForObjects, CustomObjectTranslation, CustomFieldTranslation, FieldSet |
275
+ | **Schema** | CustomObject, CustomField, ValidationRule, CustomMetadata, GlobalValueSet, StandardValueSet, RecordType, MatchingRule, DuplicateRule, CustomIndex, FieldSet |
263
276
  | **Code** | ApexClass, ApexTrigger, ApexComponent, ApexPage, LightningComponentBundle (js/css/html/xml), AuraDefinitionBundle (cmp/evt), StaticResource |
264
277
  | **Automation** | Flow*, Workflow, WorkflowRule, AssignmentRules, AutoResponseRules, EscalationRules |
265
278
  | **UI** | Layout*, CustomLabels, CustomApplication, CustomTab, FlexiPage*, CustomSite, QuickAction, PathAssistant, ListView, CompactLayout, WebLink, HomePageLayout, AppMenu, Community, Letterhead |
266
279
  | **Analytics** | ReportType, Report, Dashboard |
267
- | **Integration** | ExternalServiceRegistration, NamedCredential, ExternalCredential, InstalledPackage |
268
- | **Notifications** | CustomNotificationType, NotificationTypeConfig, LightningMessageChannel, PlatformEventChannelMember |
269
- | **Content** | EmailTemplate, ManagedContentType, CleanDataService, IframeWhiteListUrlSettings, Settings |
280
+ | **Integration** | ExternalServiceRegistration, NamedCredential, ExternalCredential |
281
+ | **Config** | Settings, InstalledPackage, TopicsForObjects, CustomNotificationType, CleanDataService, NotificationTypeConfig, PlatformEventChannelMember |
282
+ | **Translation** | CustomObjectTranslation, CustomFieldTranslation |
283
+ | **Content** | EmailTemplate, ManagedContentType, IframeWhiteListUrlSettings, LightningMessageChannel |
270
284
 
271
285
  \* Order-sensitive types — `config init` defaults these to `yaml-ordered` to preserve element order.
272
286
 
package/install.js CHANGED
@@ -6,7 +6,7 @@ const path = require("path");
6
6
  const https = require("https");
7
7
  const http = require("http");
8
8
 
9
- const VERSION = "0.3.0";
9
+ const VERSION = "0.3.2";
10
10
  const REPO = "vradko/sf-compact";
11
11
 
12
12
  const PLATFORMS = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sf-compact-cli",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "Convert Salesforce metadata XML to compact AI-friendly formats (YAML/JSON). Semantically lossless roundtrip.",
5
5
  "license": "MIT",
6
6
  "repository": {