π― Complete Feature Reference
Explore Mode (Blue) β Querying & Data
| Feature | Description | Entry Point |
|---|---|---|
| SOQL Builder | Visual query editor with searchable objects, field suggestions, guidance engine (6 rule types), multi-tab queries, inline result editing on compatible fields, virtual table with 1000+ row support, column pinning (max 3), global search with highlighting, per-column filtering, smart view (auto-hide nulls), 5 export formats (JSON, CSV, TSV, Excel, copy), bulk grid actions (select rows → mass Update / Set-null / Delete, production-gated), and a saved query library (name, search, reload, export/import as JSON) | Workspace > Explore > SOQL |
| GraphQL Builder | Three-pane editor (query, variables, response) with CodeMirror 6 autocomplete, real-time validation, pagination support, relationship field navigation, inline edit (if enabled), export to CSV/Excel/JSON, and a saved query library (name, search, reload, export/import as JSON) | Workspace > Explore > GraphQL |
| Records | Record scanner with ID input, bulk scan (up to 200 IDs), All Fields table paginated at 100 per page, inline edit (type-aware), breadcrumb lookup navigation, pinned records (org-scoped), 25-item history, search, comparison mode, related records, CSV Import (📥 Import — insert / update / upsert / delete with mapping & preview), and a field fill-rate analyzer (📊 Fill Rate — find unused fields via batched COUNT() aggregates) | Workspace > Explore > Records |
| REST Explorer | Method selector (GET/POST/PATCH/DELETE), headers editor, body editor with syntax highlighting, environment variables, collections, request history (per org), chain mode, cURL import/export, Salesforce API catalog, sandbox selection | Workspace > Explore > REST |
| Metadata Explorer (Schema) | Search all objects by API name with case-insensitive matching, field properties (type, length, updateable, createable), validation rules, flows, permission sets, custom settings, quick Setup links | Workspace > Explore > Schema |
| User Manager | Search users by username/email, bulk update profiles/roles/language, permission matrix drill-down, session manager (sessions per user), freeze/unfreeze actions, access summary (profiles + permission sets), user comparison (up to 5 users), login as | Workspace > Explore > Users |
| Security Manager | Browse all Profiles, Permission Sets, Permission Set Groups, view assignments with drill-down, copy API name, quick Setup links, and a permission set / profile comparison (⚖ Compare — diff object CRUD + field FLS between two permission sets / profiles) | Workspace > Explore > Security |
Debug Mode (Amber) β Events & Logs
| Feature | Description | Entry Point |
|---|---|---|
| Platform Events | CometD streaming with real-time event list, event type filtering (dropdown), pause/resume controls, auto-scroll toggle, event payload viewer, log export, event search by topic/timestamp | Workspace > Debug > Platform Events |
| Debug Logs | Fetch Setup Audit Trail-style logs filtered by class/method/level (DEBUG, INFO, WARN, ERROR), search, date range filter, stack trace inspection, export to CSV/JSON | Workspace > Debug > Debug Logs |
Analyze Mode (Green) β Audit & Administration
| Feature | Description | Entry Point |
|---|---|---|
| Audit Trail | Setup Audit Trail viewer with category filter (Config, Metadata, Monitoring, etc.), date range picker, search by user/action, result count, CSV export, pagination | Workspace > Analyze > Audit |
| Org Health | Real-time org limits card (API requests, bulk API, etc.), storage breakdown (data, file, etc.), active sessions count, API usage graph, performance metrics | Workspace > Analyze > Org Health |
| Org Tools (7 Panels) | (1) Login As β sign in as any user; (2) Custom Labels β search, export all (CSV), bulk import, translate; (3) Deployments β check recent deploy status; (4) Scheduled Jobs β view, cancel, reschedule; (5) Debug Logs β fetch and view; (6) Org Limits β real-time limits; (7) Admin Utils β 15 quick setup links (profiles, permission sets, custom settings, etc.) | Workspace > Analyze > Org Tools |
| Org & Favicon | Custom favicon editor: 8 shape options (circle, square, diamond, etc.), 8 colors, 6 environment presets (prod=red, sandbox=blue, dev=green, etc.), badge label (text up to 3 chars), live tab title and logo updates | Workspace > Analyze > Org & Favicon |
In-Page Overlays (On Salesforce Pages)
| Feature | Description | How to Access |
|---|---|---|
| Show All Data | Floating panel on record detail pages: view all fields (including hidden), search by name, filter by updateable, inline edit (type-aware: text, boolean select, textarea), breadcrumb navigation to related records, copy field name/value, field history quick link | Right-click > Show All Data, floating button on record pages, or configurable keyboard shortcut |
| Sidebar | Quick-access panel on every Salesforce page: configurable shortcuts to SOQL, Schema, Records, REPL, Audit, User Manager, etc. Position: Right/Left/Bottom. Visibility toggle, width adjustment (500pxβ900px), collapse/expand | Ctrl+Shift+S or sidebar button |
| Command Palette | Global feature search: search all tabs and views by name, record ID detection (15-18 char IDs auto-launch Records), arrow key navigation, Enter to select, Escape to close, recent searches, favorites | Ctrl+K (browser may intercept) or click trigger button |
| Context Menu | Right-click on record pages for 5 quick actions: Show All Data, Field History, Sharing, SOQL Builder (pre-fill object), Copy Record ID | Right-click on record page |
| LWC Explorer | Page-side inspector: component tree view, trace filtering (All, Apex, UI API, GraphQL, Fetch/API, Errors), request/response inspection, edit code/apex links, performance metrics per component, activity feed with timestamps. Opt-in diagnostics chips built on the live network capture — Performance Profiler, Capture→Replay, Errors→Root Cause, Explain this Page (X-Ray), and a Flow & Automation trace (beta). See In-Page Diagnostics below. | Sidebar or Command Palette (Ctrl+K > "LWC") |
| LMS (Beta) | Lightning Message Service monitor: subscribe/unsubscribe to channels, publish messages with JSON payload editor, activity log with timestamps and payloads, channel list with field count badges, subscribe status indicator | LWC Explorer > LMS pill |
π©Ί In-Page Diagnostics (LWC Explorer)
New in v2.10.0, the LWC Explorer overlay adds a set of opt-in diagnostics chips built on its live network capture. They run on demand against the traffic the explorer has already captured on the current page — no extra permissions, no servers, and nothing runs until you click a chip. They are a separate layer from the existing trace-filter chips (All, Apex, UI API, GraphQL, Fetch/API, Errors), which keep working as before.
Performance Profiler
Surfaces the slowest Apex calls on the page, flags likely N+1 patterns, and breaks captured traffic down by round-trip and request type so you can see where the page actually spends its time.
Capture → Replay
Opens a captured network call as an editable request in the REST / GraphQL / SOQL builder, so you can tweak and re-run it from the workspace. Session secrets are stripped before the request is handed off.
Errors → Root Cause
Correlates a failed page action to the failing Apex / UI API / GraphQL call, the triggering component, and the readable error body — turning a vague “something went wrong” into a concrete cause.
Explain this Page (X-Ray)
Produces an inventory of which components ran on the page and the Apex / UI API / GraphQL / SOQL each one invoked — a fast map of what a Lightning page is really doing under the hood.
Flow & Automation Trace (Beta)
Shows which Flows ran on the interaction, with timing and faults. This diagnostic is in beta.
| Diagnostic | What it tells you | Entry Point |
|---|---|---|
| Performance Profiler | Slowest Apex, N+1 detection, round-trip / type breakdown | LWC Explorer → diagnostics chip |
| Capture → Replay | Open a captured call in the REST/GraphQL/SOQL builder (secrets stripped) | LWC Explorer → diagnostics chip |
| Errors → Root Cause | Failed action → failing call + component + readable error body | LWC Explorer → diagnostics chip |
| Explain this Page (X-Ray) | Inventory of components that ran and the Apex/UI API/GraphQL/SOQL they invoked | LWC Explorer → diagnostics chip |
| Flow & Automation Trace (Beta) | Which Flows ran on the interaction, with timing + faults | LWC Explorer → diagnostics chip |
π§° Data Tooling
New in v2.10.0, a set of data tools across the Records, SOQL, GraphQL, and Security surfaces. Writes are production-gated: editing or importing into a production org asks for an explicit confirmation first.
CSV Import
Import a CSV into any SObject from Records → 📥 Import. Choose an operation — Insert, Update, Upsert, or Delete — map CSV columns to fields, and preview before running. Rows are written in batched composite calls, with per-row results, a downloadable error-report CSV, and a production-write confirmation before any data is written.
Bulk Grid Actions
In the SOQL results grid, select rows and apply a mass
Update, Set-null, or Delete. The query
must include Id for the records to be addressable, and the action is
production-gated.
Saved Query Library
In the SOQL and GraphQL builders, name, search, and reload queries from a saved library, and export / import the whole library as JSON to move it between machines or share it.
Field Fill-Rate Analyzer
From Records → 📊 Fill Rate, find unused fields on any SObject. The analyzer runs batched COUNT() aggregates per field and returns a sorted, filterable, exportable list so you can spot fields no one populates.
Permission Set / Profile Comparison
From Records → Security Manager → ⚖ Compare, diff object CRUD and field FLS between two permission sets or profiles to see exactly where their access differs.
| Tool | Description | Entry Point |
|---|---|---|
| CSV Import | Insert / Update / Upsert / Delete into any SObject; mapping, preview, batched composite writes, per-row results, error-report CSV, production-write confirmation | Records → 📥 Import |
| Bulk Grid Actions | Select rows → mass Update / Set-null / Delete (requires Id), production-gated | SOQL results grid |
| Saved Query Library | Name, search, reload queries; export / import as JSON | SOQL & GraphQL builders |
| Field Fill-Rate Analyzer | Find unused fields via batched COUNT() aggregates; sorted, filterable, exportable | Records → 📊 Fill Rate |
| Permission Set / Profile Comparison | Diff object CRUD + field FLS between two permission sets / profiles | Records → Security Manager → ⚖ Compare |
ποΈ Three-Surface Model
1. Launcher Popup
Quick-access menu shown by clicking the extension icon. Appears as a compact popup (~240px wide).
- Current Org Display: Shows org name, instance URL, and favicon
- Quick Jump Buttons: SOQL, GraphQL, Records, Schema, REST, Audit, Debug Logs
- Resume Workspace: Button to open the last-used workspace tab (if exists)
- Open Full Workspace: Link to new full workspace tab
- Settings Gear: Quick link to Settings tab
2. Workspace Tab
Full-screen browser tab for serious work. URL: chrome-extension://[ID]/popup.html
- Header: Brand logo, mode pill selector (Explore/Debug/Analyze), view tabs, search bar, theme toggle
- Mode Bar: Switch between 3 modes; mode persists across sessions
- View Tabs: Per-mode tabs visible only in active mode (7 tabs in Explore, 2 in Debug, 4 in Analyze)
- Settings Drawer: Slide-over drawer (not a tab) for all configuration
- Persistence: Last-used mode and view tab remembered per session
3. In-Page Overlays
Floating panels and menus injected onto Salesforce pages via content script.
- Show All Data Panel: Floating inspector on record pages; position configurable (right/left/bottom)
- Sidebar: Floating shortcut panel (right/left/bottom), width 500pxβ900px, collapse button
- Command Palette: Modal search overlay (Ctrl+K); triggered position customizable
- Context Menu: Native right-click menu injected by chrome.contextMenus API
- LWC Explorer: Right-side dock panel (~600px wide) with tree + detail pane
- LMS Monitor: Sub-panel inside LWC Explorer dock
β¨οΈ Complete Keyboard Shortcuts
Browser-Native Shortcuts (Built-In)
| Action | Windows/Linux | macOS | Scope | Configurable |
|---|---|---|---|---|
| Show Sidebar | Ctrl+Shift+S | Cmd+Shift+S | Salesforce pages | Yes |
| Show All Data | Configurable | Configurable | Record detail pages | Yes |
| Command Palette | Ctrl+K | Cmd+K | Workspace + Salesforce pages (browser may intercept) | Yes |
| Run Query (SOQL/GraphQL/REST) | Ctrl+Enter | Cmd+Enter | Query builder tabs only | No |
| Save Settings | Ctrl+S | Cmd+S | Settings tab | No |
Customizable Shortcuts (Settings > General)
Three actions can be customized with any key combination:
- Toggle Sidebar: Default Ctrl+Shift+S β customize in Settings > General > Keyboard Shortcuts, then reset button
- Toggle Show All Data: No default shortcut β set in Settings > General > Keyboard Shortcuts. Primary access is via the floating button on record detail pages or the right-click context menu.
- Command Palette: Default Ctrl+K β customize in Settings > General > Keyboard Shortcuts, then reset button
In-Query Editor Shortcuts
- Ctrl+Space β Autocomplete (SOQL/GraphQL)
- Ctrl+/ β Toggle comment line (SOQL/GraphQL)
- Ctrl+F β Find in query (SOQL/GraphQL)
SOQL Result Table Shortcuts
- β / β β Navigate rows
- β / β β Navigate columns
- Enter β Select row or drill into linked record
- Escape β Deselect
- Space β Toggle row checkbox
- Ctrl+A β Select all visible rows
πΎ Storage Keys Reference
All user data is stored in chrome.storage.local (or browser equivalent). Keys are org-scoped to prevent cross-org data leaks.
Settings & Preferences
Org & Session Data
Workspace State
Layout & Customization
Session & Transient Data
Cache & Index
βοΈ Configuration & Settings
Settings Sub-Tabs
- Org Management: Saved orgs list with environment label and per-org inline edit toggle
- Appearance: Theme (light/dark/system), font size (12-18px)
- General: Configurable keyboard shortcuts, tab visibility toggles (show/hide per tab)
- Sidebar: Position (right/left/hidden), width (500-900px clamp), quick-tool shortcuts, Show All Data button position, Command Palette trigger position
- Layout: Result view density (Normal 38px / Compact 26px / Dense 20px), SOQL column widths (persisted per org)
- Backup: Cache management (clear cache, reset to defaults), backup/restore (JSON export/import)
Org Management Per-Org Toggles
- Org ID: 15-char or 18-char SF org ID
- Org Name: Display name from org records
- Environment: Prod, Sandbox, Dev Org, Scratch Org (label only)
- Instance: US, EU, Asia, China, etc.
- Allow Editing: Boolean toggle for inline edit protection (fail-open if not in list)
- Delete Button: Removes org from saved list
Inline Edit Protection
Inline editing is disabled by org ID. If an org ID is NOT in the tfpInlineEditDisabledOrgs map, editing is allowed.
- Check on load: Compare session org ID (both 15 and 18-char) against the map
- Show warning toast if blocked: "Inline editing is disabled for this org"
- Per-tab guards: Records, SOQL Builder, Show All Data all check the same protection
Sidebar Quick-Tool Customization
Configure shortcuts in Settings > Sidebar. Each shortcut can point to:
- A workspace feature (SOQL, Records, Schema, etc.)
- A Salesforce page (Setup, Reports, etc.)
- A saved SOQL query
- A custom command (record lookup, etc.)
ποΈ Architecture Overview
Three-Layer Extension Model
Service Worker (background.js)
Orchestrates API calls, session management, tab tracking, message routing. ES modules. Imports: bg_session_auth.js, bg_sf_api.js, bg_org_tab_tracking.js, bg_popup_windows.js, bg_context_menus.js, bg_streaming.js, bg_command_dispatch.js
Popup UI (popup.html/popup.js)
Main workspace tab. IIFE + window globals. Loads 25+ helper scripts via script tags. Renders 3-mode, 9-tab interface with settings drawer.
Content Script (content.js)
Injects overlays on Salesforce pages. IIFE. Detects SF pages, sends messages to background.js, renders Show All Data, Sidebar, LWC Explorer, context menus.
Helper Scripts
Modular task handlers (IIFE pattern). soql_helper.js, graphql_helper.js, audit_helper.js, data_explorer_helper.js, user_manager_helper.js, security_helper.js, org_tools_helper.js, settings_helper.js, etc.
Module Systems
Background (Service Worker): ES modules (import/export). Popup + Content: IIFE + window globals (no import/export).
Data Flow
- User interacts with Workspace or Salesforce page
- UI sends message via chrome.runtime.sendMessage() to background.js
- Background.js routes to appropriate handler (bg_sf_api.js, bg_org_tab_tracking.js, etc.)
- Handler calls Salesforce REST/Tooling/GraphQL API with session from bg_session_auth.js
- Result cached in chrome.storage.local (org-scoped by ID)
- Response sent back to popup or content script
Session Management
Session detected from Salesforce cookies (sid, sfdc, etc.). Flows:
- Content script detects SF page β sends session to background.js
- Background stores in orgInstanceMap (one per org)
- Popup requests session via GET_SESSION message
- Fallback: Utils.getSessionFromCookies() if service worker is crashed
Permissions
See Permissions section below.
π Permissions Explained
Required Permissions
storageβ Local storage for settings, cache, workspace statetabsβ Tab management, URL detection for Salesforce pagesscriptingβ Inject content script into Salesforce pages-
webRequest(background only) β Optional monitoring of Salesforce API calls contextMenusβ Right-click menu on record pages
Host Permissions
Why We Ask for What We Ask
- Cookies: We read browser cookies to detect Salesforce session (sid), not to track you
- Scripts: We inject the content script only on Salesforce pages to enable overlays
- Storage: All settings are stored locally in your browser, not sent to any server
- Network: We only make CORS requests to your Salesforce instance (not cross-origin)
What We DON'T Do
- We don't collect usage analytics
- We don't send your data to external servers
- We don't modify Salesforce UI without your explicit action
- We don't store API responses beyond your current session
- We don't write to your org silently — inline edits, SOQL-grid bulk actions, and CSV imports against a production org all ask for confirmation first
π Browser Compatibility
Supported Browsers
| Browser | Min Version | Notes |
|---|---|---|
| Chrome | 88+ (Jan 2021) | Full support, native MV3 |
| Edge | 88+ (Jan 2021) | Full support, native MV3 |
| Firefox | 109+ (Jan 2023) | Full support with polyfills for chrome.* APIs |
| Opera | 74+ (Jan 2021) | Full support, Chromium-based |
Known Issues by Browser
- Firefox: Content script context may invalidate during SPA navigation. Reload the Salesforce page if "Extension context invalidated" appears. Gecko ID required in manifest.json.
- Opera: No known issues. Chromium-based, full Chrome API support.
- Edge: Install from the Edge Add-ons Store. Full API support.
API Polyfills
Firefox doesn't use the chrome.* namespace natively; it uses browser.*. The extension maps chrome.* β browser.* automatically at build time via manifest build script.
π Version History & Changelog
Fix β Compare dropdown stuck on "Loadingβ¦": the Permission Set / Profile Compare picker no longer hangs if the org session is still initializing β it times out, offers a retry, and adds a β» reload button.
Guided builder starts minimized: the SOQL and GraphQL guided builders now open as a thin "Builder" rail (instead of hidden), giving the editor full width. Click the rail to expand; your choice is remembered.
Fix β query method routing: opening the SOQL builder (or routing to SOQL/GraphQL/REST) no longer lands on the previously-used method's tab. An explicit open now always shows the method you asked for.
Permission & governance toolkit + local-first AI: Four opt-in features. Permission X-Ray (Security Manager) reverse-looks-up which profiles/permission sets grant access to an object or field, plus a privileged-user finder. PSG Muting visualizer shows a Permission Set Group's net effect and exactly what its muting removed. Config Snapshot & Drift (Org Tools) baselines key metadata and shows what was added/removed/modified. AI Assistant (Settings) is an off-by-default, bring-your-own-Anthropic-key explainer that calls Anthropic directly from your browser — no TrackForcePro server, secrets redacted before send.
Salesforce API v67.0 support: The API-version selector in the workspace popup and the in-page sidebar now offers v67.0 (Summer '26), selected by default. Orgs still on an older release keep working — an automatic version-downshift falls back to a supported version if an org rejects v67.0. Internally, the default API version is now centralized into canonical per-module sources kept in lockstep by a sync test, so it can no longer drift between the background, popup, and content scripts.
Live-page diagnostics, data tooling & a security sweep: New in-page diagnostics in the LWC Explorer powered by live network capture — a Performance profiler (slowest Apex, N+1), Errors→Root-Cause, "Explain this Page" X-Ray, a Flow trace, and Capture→Replay (open a captured call in the REST/GraphQL/SOQL builder). New data tooling: generic CSV import (insert/update/upsert/delete), bulk actions on the SOQL grid, a saved query library, a field fill-rate analyzer, and permission set/profile comparison. Plus a security & correctness sweep: closed an XSS and a SOQL injection, fixed a cross-org data leak, hardened error-vs-empty and audit-completeness states, and gated SOQL-grid edits behind production confirmation.
Adoption onboarding + critical service-worker fix:
Fixed a dead background service worker in the packaged build (a module imported by
background.js was never copied into the package, killing the MV3 worker on
load) and added a regression test over the service-worker import graph. Plus the
adoption pass: post-install welcome tab, first-run coachmark with ⌘K command
palette, a local-only trust signal, teaching empty states for Audit & Records, a
default-off analytics opt-in, and a benefit-first store listing.
Security, discoverability & workspace customization: Hardened User Manager (escaped a cross-site-scripting hole in the user detail card, fixed SOQL string/LIKE escaping in user search and compare, rate-limited bulk user updates, and locked action buttons during in-flight requests) and neutralized CSV formula injection on Custom Labels export. Custom Labels are now discoverable from Schema → Metadata Explorer with a one-click deep-link into the Org Tools workbench, and the Schema Visualizer object picker became a searchable combobox. Custom Labels bulk import gained a Cancel control and a “Select all filtered” action. Tab/tool visibility was reworked: the Feature Visibility control now actually shows/hides the views you navigate (with Reset to defaults), a dead command that silently misrouted to the SOQL builder was removed, and the in-page tool catalog was unified into a single source of truth. Plus the SOQL/GraphQL guided builder now starts off by default.
Cleanup & follow-up fixes: REST Explorer Cancel now actually aborts the in-flight network request (not just the UI); GraphQL mutation field autocomplete suggests the object’s real fields; and a large amount of dead/unreachable UI code found by an internal audit was removed (orphaned GraphQL schema-suggestion and builder controls, legacy favicon status badges, a SOQL hint, and an export action with no UI entry) — smaller and cleaner, with no change to live features. Plus internal test hardening.
GraphQL mutations + reliability hardening: The GraphQL builder gains a MUTATION panel that composes create / update / delete mutations into the editor (with a one-time production-org confirmation before any mutation runs, since mutations write data). GraphQL results and variables are now properly visible with an empty state, run-status line, and the real HTTP status (200 OK / 401) alongside record count and timing. App-wide reliability fixes: stale-response races where a slower older request could overwrite a newer one (GraphQL Run, REST Send, record lookup/bulk scan, per-profile FLS); the in-page “Show All Data” inline editor now confirms before writing to production; and several silently-broken actions (REST → Records jump, SOQL builder toggle, favicon status) were restored.
Version display fix:
The version shown in chrome://extensions had drifted to an older release
while the real version advanced; it now matches, and a release check keeps them in sync.
No functional changes.
Export your entire query, not just the first page:
The SOQL results grid still shows up to 5,000 rows for speed, but the Export menu now
has
Export ALL rows (CSV) and Export ALL rows (Excel/TSV) — these
stream every record your query returns straight to a downloaded file, no matter how many
(matching, and going past, what Salesforce Inspector Reloaded does). A live progress
counter and Cancel button keep you in control, very large exports ask for confirmation
first (and fetch nothing more until you agree), and your own LIMIT is
always respected. Excel/TSV export now also correctly quotes values containing tabs.
Edit lookups by name, not Id: When you inline-edit a lookup / reference field (in the Records inspector or the in-page “Show All Data” panel), just start typing a name — TrackForcePro searches the related object and shows a dropdown of matching records (Name + Id). Pick one with the mouse or the ↑/↓ + Enter keys; the field saves the record’s Id while you see its name. Pasting a raw 15/18-char Id still works, clearing the field sets it blank, and lookups with no name field (or polymorphic lookups) fall back to the classic Id box. No more hunting for record Ids to set a lookup.
Edit any field type inline: Double-click a field value in the Records inspector or the in-page “Show All Data” panel to edit it — now with the right control for every field type: picklists and multi-select picklists as dropdowns, dates / date-times / times as native pickers, checkboxes for booleans, and validated lookups. Date-times are converted to UTC correctly (previously edited values could be rejected or saved to the wrong time), and multi-select values no longer risk being cleared. Changed fields are highlighted, and saving multiple fields shows a “review changes” confirmation (old → new) before writing. Editing live production data prompts a one-time confirmation per org. Field-level security still governs what you can edit.
See all fields at once: The Records “All Fields” inspector no longer paginates — every field renders in a single scrollable list with a sticky header, so you can scroll or Ctrl-F across the whole record, and the search / hide-empty filter now covers every field (not just the current page).
Per-profile field permissions: The Records → Field-Level Security view can now show, on demand, which profiles and permission sets grant Read or Edit on each field (not just your own access) — a one-click drill-down per field, with profiles and permission sets listed separately. Something Salesforce Inspector doesn’t offer.
In-page field inspector upgrades: The in-page “Show All Data” panel now matches the workspace inspector: field help text, a Type column, Required / Read-only / Formula badges, a direct link to each field’s Setup page, and one-click copy of a field’s API name, value, or label. Also clears the Records advanced-tools caches when you switch orgs.
Schema ERD accessibility & touch: The Schema ERD now has a List view (toggle in the toolbar) β a keyboard- and screen-reader-friendly tree of every object and its relationships, with the same expand controls as the diagram. Added two-finger pinch-zoom on touch devices and a clear keyboard focus ring on diagram nodes.
Interactive Schema ERD: The Schema Visualizer is now a real entity-relationship diagram you can pan, zoom, and expand. Click the οΌ on any object to reveal its neighbors and build a multi-object map (relationships stay on screen as you drill in). Master-detail vs lookup relationships use distinct line styles and arrows (colorblind-safe), with a legend, a relationship detail panel, and Mermaid / CSV export of the whole diagram — something Salesforce Inspector doesn’t offer.
Org-scoped caching fix: The Metadata object list and per-object Automation results are now cached per org, so switching orgs no longer briefly shows a previous org’s data (completes the schema-cache fix from v2.4.10).
Record Scanner & Schema β major upgrades: The Records “All Fields” inspector now shows field help text, required / read-only / formula badges, and richer type details, with a per-field link to its Setup definition and one-click copy of a field’s API name, value, or label. The Schema Visualizer now shows all child relationships (not just the first 20), a relationship detail panel (lookup vs master-detail, cascade), and one-click export to Mermaid ER-diagram or CSV. Also fixes a bug where the schema could show a previous org’s data after switching orgs.
UI polish, accessibility & cleanup: The LWC Explorer tree pane now resizes properly when docked (and the detail pane no longer shows a wide blank band); in-page sidebar shortcuts keep working after changing settings; keyboard focus rings, reduced-motion support, and screen-reader labels were added to the in-page surfaces. Primary buttons render their intended gradient (including dark mode). The unused popup “Quick Access” menu was removed (its tools live in the in-page sidebar), and its leftover preferences are cleaned up.
Window restore & larger trace capture: Reopening the extension after minimizing its popup/app window now restores the window instead of leaving it minimized (it previously appeared to do nothing). In the LWC Explorer, network-trace request/response payloads are now captured up to 50 KB (was 8 KB) so large Salesforce GraphQL/Aura responses render as a navigable JSON tree instead of truncated, unparseable text.
SOQL Builder generates valid queries again:
Several builder inputs produced SOQL that Salesforce rejected. "Is null" / "is not null"
filters now generate = null / != null (SOQL has no
IS NULL); child-subquery filters with IN/NOT IN
lists and null checks now match the main query; and values containing a backslash (e.g.
a Windows path) or apostrophe (e.g. O'Brien) are escaped correctly instead of
breaking the query. Recovery is friendlier too: the "Not connected" screen and a failed
GraphQL field load now offer a Retry action, and the LWC Explorer no
longer leaks a keyboard listener on each open/close.
SOQL Builder is friendly again: The #1 reason people bounced off SOQL β a failed query dumped a raw JSON error blob β is fixed. A bad query now shows a clean, human message with a hint (e.g. "No such column 'Foo' on entity 'Account'. [INVALID_FIELD]") instead of an unreadable error. Opening SOQL with no Salesforce session shows a friendly "Not connected" guide rather than a red error, the empty editor now greets you with a runnable sample query (click to insert), and queries auto-retry at a lower API version on older orgs instead of failing. Internal quality also improved (popup/settings coverage raised, a dead code path cleaned up).
LWC Explorer fixes & bug squashing:
The LWC Explorer network panel now respects dark mode (it previously stayed light on
dark Salesforce themes), internal Salesforce framework traffic (serviceComponent://
fingerprint/instrumentation calls) no longer leaks into the Fetch/API list, the
live-capture buffer is consistently capped, and a couple of live-mode glitches (an
unhandled poll error and an interval that lingered after the explorer closed) are fixed.
Also squashed four bugs surfaced by expanded testing: a GraphQL builder crash on an
empty related-object row, a favicon-preset click that threw, a SOQL result-table sort
handler that multiplied across re-renders, and SOQL field-prefix suggestions that never
appeared. Under the hood, test coverage nearly doubled (32% β 59% statements,
whole-project).
Your on-page tools are back, plus a professional refresh: Fixes a regression where the in-page tools (Show All Data, Command Palette, Setup Search, Quick Action Bar) were hidden behind a too-subtle handle for users who hadn't customized them β they are now visible by default again, and anyone who was wrongly auto-collapsed is restored. The disconnected launcher now offers an "Open Salesforce / enter your My Domain" entry so first-time users can reach their org, plus a "Recent" section surfacing pinned records and your last view. The in-product branding was refreshed to a professional product identity (maintainer credit moved to the About section), and the Chrome Web Store screenshots were replaced with current-UI captures using fictional demo data only.
UI bug fixes & a calmer first impression: Disconnected users now see a calm "Not Connected β connect to a Salesforce org" state instead of a scary red error card across Audit, Records, Platform Events, Security, and Event Logs. First run opens coherently on Explore βΊ Query (no stray background error), onboarding now walks through concrete tasks ("Run a SOQL query", "Export your audit trail") ending in a one-click "Run your first query," and the workspace header uses the full width. The command palette gained a proper focus trap, Escape-to-close, focus restore, a dark theme, and no longer duplicates on rapid re-toggle; the Settings drawer open/close race is fixed; the Quick Action Bar rebuilds correctly on change and reacts to theme switches; and your last query method (SOQL/GraphQL/REST) is now remembered. Also fixed: an OAuth token-store hang, a layout-width type bug, and removed stray debug logging from shipped code.
Leaner code, stronger tests & one-tag releases: Internal cleanup removed unshipped scaffolding/dead code (no user-facing change), and the test suite gained an org-variation matrix covering Classic vs Lightning and multiple Salesforce API versions, a coverage ratchet so quality can't silently regress, and an explicit request-timeout test. The accessibility pass is now complete (JavaScript-driven motion honors reduced-motion, and keyboard semantics were added to custom controls), and genuine first-run users start in a focused Explore view while returning users keep their last-used view β no features removed. Behind the scenes, a new tag-driven, all-store release pipeline with a mandatory changelog gate replaces manual uploads. No new permissions; no breaking changes.
Faster first load, calmer page & stickier data features: The content script now loads only in the page's top frame (no longer injected into every Salesforce iframe) and ships minified, cutting first-load cost on every page β biggest wins on iframe-heavy Setup and Lightning pages. The toolbar icon now delivers value on the first click, routing straight to your last (or primary) task instead of a meta-menu, with a clear "open a Salesforce org" state when none is detected. On-page overlays (Show All Data, Command Palette, Quick Actions) consolidate into a single unobtrusive handle by default β nothing removed. The SOQL/GraphQL Run button can no longer get stuck disabled (surfaces a "No response β retry" state), and Salesforce API-version resolution is centralized with automatic downshift so data features keep working on orgs running an older API version.
Reliability, trust & first-run improvements:
The popup never blanks out on a startup error (inline "Couldn't start β Reload"
failsafe); 30-second timeouts on SOQL/Salesforce API calls so hung requests fail
cleanly; an expired Salesforce session now shows a clear recovery banner instead of
silently failing. Data features now surface the real underlying error instead of a
misleading "no data" state, and the History Timeline date-range no longer drops valid
records. New opt-in, local-only anonymous usage metrics (no data ever leaves the device)
plus an uninstall feedback link. Accessibility baseline added (reduced-motion,
high-contrast, forced-colors, visible keyboard focus) and launcher polish. "Clear cache"
now requests the browsingData permission only when used β no new required
permissions, so existing installs are never auto-disabled on update.
Custom Labels translation safety & LWC Explorer UX polish: Translation deploys never overwrite the master English Value; destructive fallback PATCH removed and replaced with auto-downloaded deployment zip; MDAPI filename fixed in zip; IsProtected field added to label SOQL; Translations XML sample button and non-destructive contract note in Bulk Import dialog; Preview XML modal with Copy/Download in Translate dialog; protected label indicator in Custom Labels list. LWC Explorer: tree pane head condensed to single row; filterbar fade-edge overflow cue; Auto-Capture label swap when active; network panel empty state branches for filtered vs. unfiltered state.
Version Bump & Maintenance: Incremental release with version consistency updates across all documentation surfaces; continued platform hardening and multi-agent OS improvements.
LWC Explorer & Platform Hardening: LWC Explorer now auto-loads LMS
channels on activation and captures all UI API and Visualforce Remoting traffic
automatically; Lightning Setup links use encoded paths so deep links route reliably
across all setup nodes; Replaced inline DOM event handlers with CSP-safe delegation
using data-action attributes (no more inline-handler CSP violations);
Removed legacy TFPAnalytics tracking and initialization from all UI scripts; Added
multi-agent OS protocols, agent personas, workflows, and memory structure for AI-
assisted development; Icon path consistency pass across HTML surfaces.
Docs & Distribution: Added Edge Add-ons store listing link across all documentation pages; Updated browser availability cards with live Edge download link; Fixed browser store icon styling for authentic logo rendering; Added automated Heroku deployment to docs CI/CD workflow; Documentation version consistency maintenance.
Analytics & Build Fixes: Extracted GA4 credentials into separate
analytics_config.js (gitignored) with template file and full setup
instructions; Fixed CORS errors by routing analytics through background service worker;
Fixed missing analytics_helper.js in build output; Fixed locale description
exceeding 132-char Chrome Web Store limit; Added contextMenus permission
justification and all 7 host permissions to submission docs.
Improvements: Documentation accuracy pass β keyboard shortcut references validated against codebase; Settings guide corrected (Ctrl+Shift+S default, unassigned defaults clarified); Chrome Web Store submission updated with full feature coverage, all 7 host permissions, and contextMenus permission; Version consistency maintenance.
Features: Two-row header layout with tab scrolling; LMS Explorer redesign with detail pane; SOQL virtualized table with column pinning and smart view; Compact result toolbar; Pop-out results window; Collapsible query editor; Bug fixes in suggestion engine.
Features: Independent button positioning (Show All Data, Command Palette); LMS bridge rewrite with 4 real Aura strategies; Subscribe/unsubscribe UI; LMS status pill with activity log; Full dark theme for LMS.
Features: Configurable keyboard shortcuts; Per-org inline edit toggles; Tab reorganization (Records promoted, Org Tools β top-level); Org Management table in Settings.
Major Release: Complete 3-mode architecture (Explore/Debug/Analyze); Launcher popup redesign; Workspace tab consolidation; Settings tab redesign; 9-tab interface; Cross-browser support (Chrome, Edge, Firefox, Opera).
Features: Virtualized SOQL result table with 1000+ row support; Column pinning, filtering, sorting; Compact toolbar with density modes; Full-screen and focus modes; Inline edit callback delegation.
Features: LMS Explorer detail pane; Context-aware empty state; Beta badge on LMS; Network detail overflow fix; Extension context invalidated error fix.
Features: SOQL relationship field links (dot-notation); LWC Explorer live mode (3s polling); Labeled buttons; Dock persistence; LMS bridge rewrite; Two-row header layout.
Features: Independent button positioning for Show All Data and Command Palette; Bottom position support.
Features: Save & Apply button; Org Management table with inline edit toggles; Multi-source org ID resolution.
Features: Per-org inline edit toggles; Configurable keyboard shortcuts; Tab reorganization; Org Tools promoted to top-level tab.
Features: Show All Data floating panel; Content script injection; Inline field editing; Command Palette; Context menu.
Initial Release: SOQL Builder, GraphQL Builder, Records, REST Explorer, Audit Trail, Platform Events, Org Tools, Settings.
π Migration Guides
Upgrading from v1.x to v2.0+
What Changed: Major UI reorganization (3-mode architecture, Launcher popup, Settings redesign, tab reorganization).
- Your existing SOQL queries and REST collections are automatically migrated
- Inline edit setting (old tfpDisableInlineEditProd boolean) is auto-migrated to per-org map
- Sidebar shortcuts are renamed: old "de-tool" β "rec-tool" (Records), "org-panel" β "org-tool" (Org Tools)
- Data Explorer tab is now called Records; Org & Favicon is now Org Management
- No manual action needed β upgrade seamlessly
Switching Machines
How to transfer settings:
- On old machine: Settings > Advanced > Backup β Export JSON
- Install extension on new machine
- On new machine: Settings > Advanced > Restore β Import JSON
Clearing Cache & Resetting Defaults
- Settings > Advanced > Cache Management
- Click "Clear All Cache" β removes describe results, search history, workspace state
- Click "Reset to Defaults" β restores all settings to initial state