- Relay Best PracticesBest practices for writing idiomatic Relay code. ALWAYS use this skill when writing or modifying React components that use Relay for data fetching. Covers fragments, queries, mutations, pagination, and common anti-patterns. Use when you see `useFragment`, `useLazyLoadQuery`, `usePreloadedQuery`, `useMutation`, `usePaginationFragment`, `graphql` template literals, `react-relay` imports, or `__generated__/*.graphql` files. Also use when asked to explain Relay concepts, debug Relay issues, or reviefacebook/relay18,963
- Relay E2e TestWrite and run markdown-driven e2e tests for Relay. Covers fixture format, server/client code patterns, interaction DSL, snapshots, and running tests.facebook/relay18,963
- Relay PerformancePerformance best practices for Relay applications. Use when optimizing data fetching, reducing re-renders, configuring caching, or improving time to first meaningful paint. Covers query placement, @defer, pagination, fetch policies, garbage collection, fragment granularity, and server-side filtering. Companion to the relay-best-practices skill which covers correctness and architecture.facebook/relay18,963
- Analyze WwwAnalyze code patterns across WWW using a TAST logger.facebook/hhvm18,665
- Sandcastle PerfRun or monitor Sandcastle hh_perf jobs for Hack performance benchmarking.facebook/hhvm18,665
- Add Ir InstructionGuide for adding a new IR instruction to the Hermes compiler. Use when the user asks to add, create, or define a new IR instruction (Inst/Instruction) in the Hermes intermediate representation. Covers all required files and the patterns for each.facebook/hermes11,339
- Binary Size AnalysisThis skill should be used when the user wants to analyze hermesvm binary size changes across a range of commits. Use when the user mentions "binary size", "size analysis", "size regression", "size increase", or asks to measure how commits affect the hermesvm library size.facebook/hermes11,339
- Gc Safe CodingRules for writing and reviewing GC-safe C++ code in the Hermes VM runtime. Use when writing, modifying, or reviewing C++ runtime VM code that uses internal Hermes VM APIs (as opposed to code using JSI). This includes working with GC-managed types (HermesValue, Handle, PinnedValue, JSObject, StringPrimitive, etc.), Locals, GCScope, PseudoHandle, CallResult, or any function with _RJS suffix. Typically in lib/VM/, include/hermes/VM/, API/hermes/, or API/napi/.facebook/hermes11,339
- Modify Jsi FeaturesGuide for adding new JSI functionality to the JavaScript Interface (JSI) layer. Use when the user asks to add, create, or implement new methods or features in the JSI Runtime interface. Covers all required files across JSI core, Hermes implementation, and SynthTrace replay support.facebook/hermes11,339
- Non Interactive Git RebaseUse when needing to reorder, split, drop, or amend git commits that are not the top commit, without interactive editor access. Covers programmatic rebase via GIT_SEQUENCE_EDITOR, commit splitting with automated hunk selection, and metadata changes (author, message, dates) on any commit in a range.facebook/hermes11,339
- Add Shape Types To Torch ModelPort a PyTorch model to use pyrefly's tensor shape type system (Tensor[[B, C, H, W]], Int[T]). Use this skill whenever the user wants to add shape annotations to a PyTorch model, type a model with tensor dimensions, port a model to use shape tracking, or annotate model forward methods with tensor shapes. Also use when the user mentions tensor shape ports, Int types for PyTorch, or pyrefly shape checking on a model file. Invoke BEFORE starting any model port — the skill's gated workflow prevents facebook/pyrefly7,053
- Add Torch Shapes ExampleUse when adding a new PyTorch model to Pyrefly's shape-tracking example corpus under tensor-shapes/pyrefly-torch-stubs/examples — i.e. importing a model as a tested, corpus-quality reference port. This is maintainer-facing fbsource work. For porting your own model elsewhere, use the porting skill directly; for fixing a wrong/missing shape rule, use modify-shaped-array-dsl.facebook/pyrefly7,053
- Benchmark PyreflyRun Pyrefly benchmarks locally via Buck or Cargo, including PyTorch real-world LSP benchmarks. Use when user asks to benchmark pyrefly performance, run pyrefly bench, compare cold start vs error propagation, or update PyTorch benchmark pin.facebook/pyrefly7,053
- Modify Shaped Array DslUse when Pyrefly computes a wrong tensor shape (or is missing one that can't be expressed in a stub signature) and you need to add or fix a shape-DSL rule. Requires a Pyrefly checkout (fbsource or a clone); not usable from a pip/site-packages install.facebook/pyrefly7,053
- Review Pyrefly DiffReviews a comma separated pyrefly diff according to the pyrefly review best practices.facebook/pyrefly7,053
- Score Pyrefly ChangeProduces a scorecard evaluating a pyrefly change on correctness and quality.facebook/pyrefly7,053
- CREATING ENDPOINTSThis guide explains how to create new EdenAPI/SLAPI endpoints, covering both streaming and non-streaming patterns.facebook/sapling7,030
- Eden ResearchLocate Eden implementations and trace behavior across Sapling, EdenFS, and Mononoke when the relevant code path is not already known.facebook/sapling7,030
- Edenfs Systemd TriageTriage systemd-managed EdenFS issues on Linux devservers and OnDemands. Use when investigating EdenFS service failures, unexpected restarts, systemctl errors, edenfs_upgrade/edenfs_restarter problems, or when a user reports EdenFS is down on a systemd-enabled host. Also use when someone asks how systemd-managed EdenFS works, how to monitor it, or how to check its health. Use when asked to build a timeline of EdenFS lifecycle events, show edenfs restart history, or understand how edenfs reached ifacebook/sapling7,030
- Structured Error LoggingAdd or review structured error logging in EdenFS daemon (C++) — the ErrorLogger / EdenErrorInfo system that feeds the edenfs_errors table. Use when writing a catch block or handling a boxed/async exception (folly::Try / exception_wrapper / .thenError), instrumenting a failure path, or debugging a wrong stack trace or wrong component. Covers throw-site trace rules, component choice, errorType, noise filtering, gating, and testing.facebook/sapling7,030
- Write HookCreate a Mononoke server-side hook with 3-diff split (tests, wiring, implementation), unit tests, and integration testsfacebook/sapling7,030
- Buck2 Rule BasicsGuide users through writing their first Buck2 rule to learn fundamental concepts including rules, actions, targets, configurations, analysis, and select(). Use this skill when users want to learn Buck2 basics hands-on or need help understanding rule writing.facebook/buck24,457
- Openzl Codec DesignDesign patterns and requirements for OpenZL codecs (located under `src/openzl/codecs/`). **USE AUOMATICALLY** when creating, modifying, or reviewing codecs in OpenZL.facebook/openzl3,264
- Openzl Gpu Test FramesHow to mint real OpenZL frames and chunks for GPU decoder tests using the contrib/gpu/testkit utilities (frame_factory, multichunk_frame, frame_verifier), and how to extract a codec's encoded streams via reflection for differential GPU decode. USE when writing or reviewing GPU-decoder tests that need OpenZL-encoded fixtures.facebook/openzl3,264
- Unitbench Openzl ScenariosUse when creating benchmark scenarios for new openzl codec nodes in unitBench - adding kernel-level encode/decode benchmarks or graph-level compress/decompress benchmarks for codecs like bitsplit, delta, transpose, entropy, etc.facebook/openzl3,264
- Build Fboss Oss LocalBuild FBOSS locally from source with getdeps and CMake, in a container - container setup, run-getdeps.py, supplying a vendor SAI SDK, fake SAI, build targets, packaging, tests and test artifacts, and why the build works the way it does. Use when building FBOSS from source on your own machine, debugging a local getdeps or CMake failure, or answering questions about the open-source build system. Also answers how the OSS CI and export work; not for triaging a specific CI run.facebook/fboss991
- Debug Agent Hw TestDebug FBOSS AgentHwTest failures - build, run, analyze logs, crash debug, vendor diag shell, hypothesis-driven debugging. Use when running sai_agent_hw_test or multi_switch_agent_hw_test and investigating test failures.facebook/fboss991
- Debug Link TestDebug FBOSS link test (agent ensemble link test) failures from logs - find the root cause among benign noise, and when the link test log is not enough (ports never came up, transceivers not ACTIVE, qsfp_service errors) use the qsfp_service log for the same window to root-cause the optics side. Works on logs handed to it (link test log, optionally qsfp_service / hw agent logs and the result record) without fetching anything, or fetches them itself from a result record or CI run link. Use when a lfacebook/fboss991
- Debug Qsfp Hw TestDebug QSFP HW test failures from logs - isolate the root-cause assertion among benign noise. Use when a qsfp_hw_test gtest failed and you have its log as pasted text, a file, or a CI run link.facebook/fboss991
- Fboss Agent Platform OnboardingUse when planning, implementing, or reviewing a new FBOSS hardware platform for wedge_agent, including PlatformType registration, platform descriptor and mapping inputs, generic SAI platform selection, ASIC traits, or exceptional platform-specific behavior.facebook/fboss991
- Fboss Code StandardsFBOSS coding standards and patterns. Auto-loaded when writing code in fboss/ to catch architecture violations, SAI/SDK misuse, thrift_cow pitfalls, platform config errors, and testing gaps. For explicit multi-reviewer review, use /fboss-review instead.facebook/fboss991
- Fboss Distro ImageInteractively plan, explain, and optionally execute FBOSS OSS Distro image workflows. Default to providing commands without running them; execute only when the user explicitly asks. Use whenever a user asks about the `fboss-image` CLI, distro manifests, kernel/BSP/SAI/FBOSS component integration, USB/PXE/ONIE artifacts, `distro_infra`, or distro-image build failures. Use `--help` to see common prompts.facebook/fboss991
- Fboss ReviewComprehensive FBOSS code review with 11 parallel reviewers (5 generic + 6 FBOSS-specific). Covers reliability, engineering, code quality, silent failures, agent architecture, SAI/SDK, FSDB/thrift_cow, platform/config, testing, and cross-cutting design. Self-contained alternative to /review-diff for FBOSS diffs. Findings shown to user only, never auto-posted.facebook/fboss991
- Fboss Transceiver NpiUse when onboarding a new transceiver NPI end-to-end or partially — adding transceiver code, firmware, and/or conveyor nodes. Trigger phrases: new transceiver NPI, onboard transceiver, add firmware, conveyor nodes, HAL test node, link test config, new optic. For processing an optics firmware intake task (butterfly form) on an existing optic, use the transceiver-fw-intake skill instead.facebook/fboss991
- Link Log DiagnosisDiagnose link flaps from wedge_agent and qsfp_service logs — determine software vs hardware root cause, point to evidence, suggest fixes or detection strategiesfacebook/fboss991
- Platform ServicesFBOSS platform services - BMC-Lite stack (platform_manager, sensor_service, fan_service, data_corral_service, rackmon), per-platform JSON configs, CLI utilities (fw_util, weutil, fixmyfboss), hardware tests, BSP kernel modulesfacebook/fboss991
- Platform VerifyEnd-to-end workflow for building a platform binary, deploying to a switch, running it, and verifying output for errors, BSP version, and exploration status. Triggers on test on switch, verify on switch, build and run on switch, check platform_manager output.facebook/fboss991
- Audio StreamingReceive synchronized PCM audio frames through a Camera stream on iOSfacebook/meta-wearables-dat-ios560
- Camera CaptureCapture standalone high-quality photos from connected glasses on iOSfacebook/meta-wearables-dat-ios560
- Camera StreamingStream, video frames, photo capture, resolution/frame rate configurationfacebook/meta-wearables-dat-ios560
- Dat ConventionsSwift patterns, async/await, naming conventions, key types for DAT SDK iOS developmentfacebook/meta-wearables-dat-ios560
- Dat Docs McpUse the Wearables DAT MCP server for live DAT documentation search with `search_dat_docs`, Muse Code, Claude Code, Codex, Cursor, and MCP Inspectorfacebook/meta-wearables-dat-ios560
- DebuggingCommon issues, Developer Mode, version compatibility, state machine diagnosisfacebook/meta-wearables-dat-ios560
- Display AccessDisplay capability setup, display-capable device selection, UI DSL, icons, buttons, images, and video playbackfacebook/meta-wearables-dat-ios560
- Getting StartedSDK setup, Swift Package Manager integration, Info.plist configuration, and first connection to Meta glassesfacebook/meta-wearables-dat-ios560
- InputsReceive navigation, button, capture, and drag input events from connected glasses on iOSfacebook/meta-wearables-dat-ios560
- Live Debugging McpUse this whenever debugging an iOS DAT app with local DAT Inspector MCP tools, live device events, Meta AI app/device boundary issues, permissions, registration, sessions, streaming, callbacks, or user reports that the app cannot communicate with glasses.facebook/meta-wearables-dat-ios560
- Mockdevice TestingMockDeviceKit for testing without physical glasses hardwarefacebook/meta-wearables-dat-ios560
- MotionStream accelerometer, gyroscope, magnetometer, and orientation samples from connected wearables on iOSfacebook/meta-wearables-dat-ios560
- Permissions RegistrationApp registration with Meta AI, camera permission flowsfacebook/meta-wearables-dat-ios560
- Sample App GuideBuilding a complete DAT app with camera streaming and photo capturefacebook/meta-wearables-dat-ios560
- Session LifecycleDevice session states, pause/resume, availability monitoringfacebook/meta-wearables-dat-ios560
- SpeechRecognize speech on connected glasses and consume partial and final transcriptions on iOSfacebook/meta-wearables-dat-ios560
- Voice InvocationsLaunch and activate an iOS app from Hey Meta voice invocations and acknowledge each actionfacebook/meta-wearables-dat-ios560
- Audio StreamingReceive synchronized PCM audio frames through a Camera stream on Androidfacebook/meta-wearables-dat-android370
- Camera CaptureCapture standalone high-quality photos from connected glasses on Androidfacebook/meta-wearables-dat-android370
- Camera StreamingSession and Stream capability setup, video frames, photo capture, resolution and frame rate configurationfacebook/meta-wearables-dat-android370
- Dat ConventionsKotlin patterns, DatResult, session and capability conventions for DAT SDK Android developmentfacebook/meta-wearables-dat-android370
- Dat Docs McpUse the Wearables DAT MCP server for live DAT documentation search with `search_dat_docs`, Muse Code, Claude Code, Codex, Cursor, and MCP Inspectorfacebook/meta-wearables-dat-android370
- DebuggingCommon issues, Developer Mode, version compatibility, and session and stream diagnosisfacebook/meta-wearables-dat-android370