Install sf-skills to different agentic coding CLIs following the Agent Skills open standard.
| CLI | Install Path | Format | Description |
|---|---|---|---|
| OpenCode | .opencode/skill/{name}/ |
SKILL.md | Open-source Claude Code alternative |
| Codex CLI | .codex/skills/{name}/ |
SKILL.md | OpenAI's coding CLI |
| Gemini CLI | ~/.gemini/skills/{name}/ |
SKILL.md | Google's Gemini-powered CLI |
| Droid CLI | .factory/skills/{name}/ |
SKILL.md | Factory.ai's agentic CLI (Claude Code compatible) |
| Cursor | .cursor/rules/{name}.mdc |
MDC | Cursor IDE rules (transformed format) |
| Agentforce Vibes | .clinerules/{name}.md |
Markdown | Salesforce's enterprise vibe-coding tool |
Note: Claude Code support remains via the native
.claude-plugin/structure in each skill directory. This installer is for other CLIs.
# Clone the repository
git clone https://github.com/Jaganpro/sf-skills
cd sf-skills
# Install all skills for OpenCode
python tools/installer.py --cli opencode --all
# Install specific skills for Gemini
python tools/installer.py --cli gemini --skills sf-apex sf-flow
# Auto-detect installed CLIs and install all skills
python tools/installer.py --detect --allusage: installer.py [-h] [--cli {opencode,codex,gemini,droid,cursor,agentforce-vibes}] [--detect]
[--skills SKILLS [SKILLS ...]] [--all]
[--target TARGET] [--force] [--list] [--list-clis]
Install sf-skills to different agentic coding CLIs
optional arguments:
-h, --help show this help message and exit
--cli {opencode,codex,gemini,droid,cursor,agentforce-vibes}
Target CLI to install for
--detect Auto-detect installed CLIs
--skills SKILLS [SKILLS ...]
Specific skills to install
--all Install all available skills
--target TARGET Custom target directory for installation
--force Overwrite existing installations
--list List available skills
--list-clis List supported CLIs
python tools/installer.py --listOutput:
Available Skills
================
sf-apex Salesforce Apex development with validation...
sf-data Salesforce data operations and SOQL queries...
sf-deploy Salesforce deployment automation...
sf-flow Salesforce Flow development...
...
python tools/installer.py --cli opencode --allThis installs to .opencode/skill/ in your current directory.
python tools/installer.py --cli codex --target /path/to/project/.codex/skills/ --allpython tools/installer.py --detect --allDetects installed CLIs (OpenCode, Codex, Gemini, Droid, Cursor) and installs skills to each.
python tools/installer.py --cli gemini --all --forceOverwrites existing skill installations.
Each installed skill contains:
{skill-name}/
├── SKILL.md # Skill definition (transformed for target CLI)
├── scripts/ # Validation scripts (standalone)
│ ├── README.md # Manual run instructions
│ ├── validate_*.py # Validation scripts
│ └── shared/ # Bundled shared modules
├── templates/ # Code templates (or assets/ for Codex)
├── docs/ # Documentation (or references/ for Codex)
└── examples/ # Example files
| Source | OpenCode | Codex | Gemini | Droid | Cursor | Agentforce Vibes |
|---|---|---|---|---|---|---|
SKILL.md |
SKILL.md |
SKILL.md |
SKILL.md |
SKILL.md |
{name}.mdc |
{nn}-{name}.md |
.claude-plugin/* |
(skipped) | (skipped) | (skipped) | (skipped) | (skipped) | (skipped) |
hooks/scripts/*.py |
scripts/*.py |
scripts/*.py |
scripts/*.py |
scripts/*.py |
scripts/*.py |
(skipped) |
templates/ |
templates/ |
assets/ |
templates/ |
templates/ |
assets/ |
(inlined) |
docs/ |
docs/ |
references/ |
docs/ |
docs/ |
references/ |
(skipped) |
shared/* |
scripts/shared/ |
scripts/shared/ |
scripts/shared/ |
scripts/shared/ |
scripts/shared/ |
(skipped) |
Note for Agentforce Vibes: Templates are inlined into the markdown rules. Scripts and docs are not included since automatic validation hooks are not supported.
Unlike Claude Code (which runs hooks automatically), other CLIs require manual validation:
# Navigate to installed skill
cd .opencode/skill/sf-apex/scripts
# Run Apex validation
python validate_apex.py /path/to/MyClass.cls
# Run Flow validation
cd .opencode/skill/sf-flow/scripts
python validate_flow.py /path/to/MyFlow.flow-meta.xml- Looks for skills in
.opencode/skill/(project) or~/.opencode/skill/(global) - Also supports
.claude/skills/for Claude Code compatibility - Skills are auto-discovered on startup
- Uses different directory names:
assets/instead oftemplates/,references/instead ofdocs/ - Enable skills with
codex --enable skills - Looks in
.codex/skills/(project) or~/.codex/skills/(global)
- Installs to
~/.gemini/skills/(user scope) by default - Can symlink with Claude Code:
ln -s ~/.gemini/skills/sf-apex ~/.claude/skills/sf-apex - Benefits from Gemini's 1M+ token context window
- Claude Code compatible - uses same SKILL.md format
- Installs to
.factory/skills/(project) or~/.factory/skills/(user) - Can also auto-discover from
.claude/skills/directory - Requires Custom Droids enabled:
/settings → Experimental → Custom Droids - Docs: docs.factory.ai/cli/configuration/skills
- Uses MDC (Markdown with metadata) format instead of SKILL.md
- Skills are transformed into
.mdcrule files with YAML frontmatter - Installs to
.cursor/rules/directory - For full Agent Skills support, consider SkillPort MCP bridge
- Validation scripts available but must be run manually
Cursor MDC Format:
---
description: Salesforce Apex development skill
globs: ["**/*.cls", "**/*.trigger"]
alwaysApply: false
---
# Skill content here...Agentforce Vibes is Salesforce's enterprise vibe-coding tool, built on a fork of Cline with strong Model Context Protocol (MCP) support.
- Uses pure markdown files in
.clinerules/directory - Files are auto-combined in alphanumeric order (numbered prefixes:
01-sf-apex.md, etc.) - Templates are inlined directly into the markdown rules (self-contained)
- Includes Agentforce-specific tips (e.g.,
/newrulecommand reference) - Integrates with Salesforce DX MCP Server for additional tools
- Available in VS Code and Open VSX marketplaces
Installation:
python tools/installer.py --cli agentforce-vibes --allOutput structure:
.clinerules/
├── 01-sf-apex.md
├── 02-sf-flow.md
├── 03-sf-lwc.md
└── ... (13 skills total)
Learn More:
Make sure you're running from the sf-skills repository root:
cd /path/to/sf-skills
python tools/installer.py --listUse --force to overwrite:
python tools/installer.py --cli opencode --skills sf-apex --forceEnsure shared modules are bundled. Reinstall with --force:
python tools/installer.py --cli opencode --all --forceThe auto-detect feature checks for:
- OpenCode:
opencodecommand or~/.opencode/directory - Codex:
codexcommand - Gemini:
geminicommand or~/.gemini/directory - Droid:
droidcommand or~/.factory/directory - Cursor:
cursorcommand or~/.cursor/directory - Agentforce Vibes: Not auto-detected (use
--cli agentforce-vibesexplicitly)
If your CLI is installed but not detected, use --cli explicitly.
To add support for a new CLI:
- Create
tools/cli_adapters/{cli_name}.py - Inherit from
CLIAdapterbase class - Implement required methods:
cli_namepropertydefault_install_pathpropertytransform_skill_md()method
- Register in
tools/cli_adapters/__init__.py
See existing adapters for examples.
Same as the main sf-skills repository.