Salesforce Enterprise Rbac
jeremylongshore/tons-of-skills-marketplace
Review and govern Salesforce enterprise access across profiles, permission sets and groups, sharing, field access, OAuth apps, SSO, and privileged roles.
Create and maintain Hurl tests for Dolibarr ERP/CRM. An agent skill from Dolibarr/dolibarr.
$ npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Dolibarr/dolibarr skill-doli-test-hurl --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Dolibarr/dolibarr.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/skill-doli-test-hurl .claude/skills/skill-doli-test-hurl && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "skill-doli-test-hurl" agent skill from https://github.com/Dolibarr/dolibarr/tree/develop/.agents/skills/skill-doli-test-hurl into .claude/skills/skill-doli-test-hurl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-doli-test-hurl", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Dolibarr/dolibarr/tree/develop/.agents/skills/skill-doli-test-hurlType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Dolibarr/dolibarr skill-doli-test-hurl --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Dolibarr/dolibarr.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/skill-doli-test-hurl .agents/skills/skill-doli-test-hurl && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "skill-doli-test-hurl" agent skill from https://github.com/Dolibarr/dolibarr/tree/develop/.agents/skills/skill-doli-test-hurl into .agents/skills/skill-doli-test-hurl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-doli-test-hurl", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Dolibarr/dolibarr skill-doli-test-hurl --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Dolibarr/dolibarr.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/skill-doli-test-hurl .cursor/skills/skill-doli-test-hurl && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "skill-doli-test-hurl" agent skill from https://github.com/Dolibarr/dolibarr/tree/develop/.agents/skills/skill-doli-test-hurl into .cursor/skills/skill-doli-test-hurl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-doli-test-hurl", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Dolibarr/dolibarr.git --path .agents/skills/skill-doli-test-hurl--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Dolibarr/dolibarr skill-doli-test-hurl --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Dolibarr/dolibarr.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/skill-doli-test-hurl .gemini/skills/skill-doli-test-hurl && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "skill-doli-test-hurl" agent skill from https://github.com/Dolibarr/dolibarr/tree/develop/.agents/skills/skill-doli-test-hurl into .gemini/skills/skill-doli-test-hurl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-doli-test-hurl", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Dolibarr/dolibarr skill-doli-test-hurlInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Dolibarr/dolibarr.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/skill-doli-test-hurl .github/skills/skill-doli-test-hurl && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "skill-doli-test-hurl" agent skill from https://github.com/Dolibarr/dolibarr/tree/develop/.agents/skills/skill-doli-test-hurl into .github/skills/skill-doli-test-hurl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-doli-test-hurl", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Dolibarr/dolibarr skill-doli-test-hurl --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Dolibarr/dolibarr.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/skill-doli-test-hurl .opencode/skills/skill-doli-test-hurl && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "skill-doli-test-hurl" agent skill from https://github.com/Dolibarr/dolibarr/tree/develop/.agents/skills/skill-doli-test-hurl into .opencode/skills/skill-doli-test-hurl/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-doli-test-hurl", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skill-doli-test-hurlCreate and maintain Hurl tests for Dolibarr ERP/CRM. An agent skill from Dolibarr/dolibarr.
Skill Doli Test Hurl is an agent skill from Dolibarr/dolibarr. Create and maintain Hurl tests for Dolibarr ERP/CRM. Use when asked to create, write, or fix hurl tests for Dolibarr, or when working with test/hurl directory. Covers Dolibarr-specific conventions for hurl testing including authentication, test file naming, and test structure.
Its SKILL.md is about 3.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Sales & Support, covering Authentication. The repository describes itself as: Dolibarr ERP CRM is a modern software package to manage your company or foundation's activity (contacts, suppliers, invoices, orders, stocks, agenda, accounting, ...). it's an… The licence is GPL-3.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 419a05a. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
read_filewrite_filegrepbashFrom allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are hurl and bash).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
fedex.comAlso links to:
hurl.devFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Skill Doli Test Hurl loads about 3.7k tokens when it runs. Until then it costs about 75 tokens; SKILL.md has 966 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Dolibarr/dolibarr at commit 419a05a, republished under its GPL-3.0 licence (© Dolibarr). 966 words, ~3,661 tokens.
.claude/skills/skill-doli-test-hurl/SKILL.md (or your agent's skills folder).Create and maintain Hurl tests for Dolibarr ERP/CRM. Use when asked to create, write, or fix hurl tests for Dolibarr, or when working with test/hurl directory. This skill covers the Dolibarr-specific conventions for hurl testing including authentication, test file naming, and test structure.
IMPORTANT: Add body not contains "xdebug-error" assertions to Hurl tests (and also for each {Error:,Warning:,notice,warning}).
NOTE: Hurl uses Rust regex syntax, which does not support negative lookaheads ((?!...)). Use character class exclusions like [^X] instead.
The instructions in this file are complementary to the instructions defined in AGENTS.md.
AGENTS.md contains the general instructions and rules for the project.SKILLS.md contains additional instructions specific to skills.SKILLS.md does not replace or override AGENTS.md.SKILLS.md conflicts with AGENTS.md, follow the rules defined by AGENTS.md.Hurl test files must follow a specific naming pattern based on the number prefix:
| Prefix | Description | Authentication Required |
|---|---|---|
| 00 | No authentication required | No |
| 10 | Authentication required (GUI tests) | Yes |
| 20 | Reserved for future use | - |
| 30 | POST data for later tests | Yes |
| 40 | GET data that was POST'ed in 30_ files | Yes |
| 50 | PUT data that was POST'ed in 30_ files | Yes |
| 60 | GET data that was PUT'ed in 50_ files | Yes |
| 70 | DELETE data | Yes |
| 80 | GET data that was just DELETE'd | Yes |
| 90 | Reserved for future use | - |
Important: For Dolibarr GUI tests that require authentication, use the 10 prefix (not 30, 40, etc.). The run.sh script only executes GUI tests matching */10*.hurl.
test/hurl/
├── api/ # API endpoint tests
│ ├── 00_*.hurl # No auth required
│ └── 10_*.hurl # Auth required
├── gui/ # GUI/browser tests
│ ├── 00_*.hurl # No auth required
│ ├── 10_*.hurl # Auth required (most GUI tests)
│ └── save_login_cookie.hurl # Special file for login
└── public/ # Public endpoint tests
└── 00_*.hurlPlace tests in directories matching the Dolibarr module/path structure:
test/hurl/gui/fourn/commande/ - Supplier order teststest/hurl/gui/societe/ - Third party/company teststest/hurl/api/commande/ - Customer order API teststest/hurl/api/fourn/ - Supplier API testsDolibarr requires authentication for most GUI operations. The hurl framework handles this through:
--cookiefile parameter# Get the login page to capture CSRF token
GET http://{{hostnport}}/
HTTP 200
[Captures]
token: xpath "normalize-space(//meta[@name='anti-csrf-newtoken']/@content)"
# Use the token in subsequent requests
POST http://{{hostnport}}/some/page.php
[FormParams]
action: some_action
token: {{token}}Suppliers (fournisseurs) are created via societe/card.php with type=f:
POST http://{{hostnport}}/societe/card.php?leftmenu=suppliers&action=create&type=f
HTTP 200
[FormParams]
name: Test Supplier {{timestamp}}
code_fournisseur: TEST_{{timestamp}}
fournisseur: 1
client: 0
email: test-{{timestamp}}@example.com
address:
zip:
town:
country_id: 1
token: {{token}}
# Capture the supplier ID
GET http://{{hostnport}}/societe/card.php?socid={{socid}}&leftmenu=suppliers
HTTP 200
[Captures]
socid: queryParam "socid"POST http://{{hostnport}}/fourn/commande/card.php?action=create
HTTP 200
[FormParams]
socid: {{socid}}
date: {{now}}
date_livraison: {{now_plus_7_days}}
ref_supplier: ORDER-{{timestamp}}
statut: 0
token: {{token}}
# Capture the order ID
GET http://{{hostnport}}/fourn/commande/card.php?id={{orderid}}
HTTP 200
[Captures]
orderid: queryParam "id"POST http://{{hostnport}}/commande/card.php?action=create
HTTP 200
[FormParams]
socid: {{socid}}
date: {{now}}
date_livraison: {{now_plus_7_days}}
ref_customer: ORDER-{{timestamp}}
statut: 0
token: {{token}}Use Dolibarr-specific assertions:
# Check for tracking number display
GET http://{{hostnport}}/fourn/commande/card.php?id={{orderid}}
HTTP 200
[Asserts]
body contains "FX123456789012"
body contains "FedEx"
body contains "TrackingNumber"
body contains "https://www.fedex.com/tracking/FX123456789012"When testing for expected warning messages while catching unexpected ones:
# Expect a specific warning but catch others
GET http://{{hostnport}}/some/page.php
HTTP 200
[Asserts]
body contains "Warning: Invoice.*has different tracking"
body not contains "Warning: [^I]"This allows the expected "Invoice..." warning while catching any other warnings that don't start with "I".
Hurl uses Rust regex syntax. Important differences from PCRE:
(?!pattern) is NOT supported[^X] to match any character except X? in URLs, use [?] not \?^ for start of string# Match redirect Location header with query parameter
header "Location" matches "^/fourn/facture/card.php[?]id=[0-9]+$"
# Match any warning except those starting with "I"
body not contains "Warning: [^I]"The recommended way to run hurl tests locally:
# Run specific test path
test/hurl/run.sh gui/fourn/commande
# Run with custom port
test/hurl/run.sh --port=9000 gui/fourn/commande# Set environment variables
export DOLIHOST="127.0.50.1"
export DOLIPORT="9999"
export DOLIUSERNAME="admin"
export DOLIPASSWORD="admin"
export COOKIEJAR="/tmp/hurl_cookie.jar"
# Run tests
test/hurl/run.sh --cookiefile="$COOKIEJAR" --port="$DOLIPORT" --host="$DOLIHOST" --user="$DOLIUSERNAME" --pass="$DOLIPASSWORD" gui/fourn/commande# Run all tests containing "tracking"
test/hurl/run_with_server.sh tracking
# Run tests in a specific directory
test/hurl/run_with_server.sh gui/fourn
# Run specific test file
test/hurl/run_with_server.sh 10_supplier_order_tracking_POST# Test description
POST http://{{hostnport}}/module/page.php?action=create
HTTP 200
[FormParams]
field1: value1
field2: value2
token: {{token}}
# Capture created ID
GET http://{{hostnport}}/module/page.php?id={{created_id}}
HTTP 200
[Captures]
created_id: queryParam "id"
# Verify the creation
GET http://{{hostnport}}/module/page.php?id={{created_id}}
HTTP 200
[Asserts]
body contains "value1"
body contains "value2"
body not contains "warning"
body not contains "error"
body not contains "notice"
body not contains "Warning:"
body not contains "Error:"
body not contains "xdebug-error"# API tests use the DOLAPIKEY header
GET http://{{hostnport}}/api/index.php/orders
HTTP 200
DOLAPIKEY: DOLAPIKEY: your_api_key_here
[Asserts]
jsonpath "$.data" exists
jsonpath "$.pagination.total" >= 0
body not contains "warning"
body not contains "error"
body not contains "notice"
body not contains "Warning:"
body not contains "Error:"Hurl provides useful built-in variables:
| Variable | Description | Example |
|---|---|---|
| {{timestamp}} | Current timestamp | 1712345678 |
| {{now}} | Current date/time | 2024-04-05T12:34:56 |
| {{now_plus_7_days}} | Date 7 days from now | 2024-04-12T12:34:56 |
| {{hostnport}} | Host and port | 127.0.50.1:9999 |
| {{token}} | CSRF token (captured) | abc123... |
| {{username}} | Username | admin |
| {{password}} | Password | admin |
Always include token in POST requests
[FormParams]
action: create
token: {{token}}Use proper URL patterns
societe/card.php?leftmenu=suppliers&action=create&type=fsociete/card.php?leftmenu=customers&action=create&type=cfourn/commande/card.phpcommande/card.phpCapture IDs for cleanup Always capture created IDs so they can be used in subsequent tests and cleaned up:
[Captures]
socid: queryParam "socid"
orderid: queryParam "id"Clean up test data Create DELETE tests (70_ prefix) to remove test data:
POST http://{{hostnport}}/fourn/commande/card.php?action=delete
HTTP 200
[FormParams]
id: {{orderid}}
token: {{token}}Use proper HTTP status codes
Test both positive and negative cases
Keep tests small and focused Each test file should test one specific functionality.
Handle expected messages properly
body contains "Expected message" for messages you expect to seebody not contains "Error:" and body not contains "Warning:" for unexpected errorsCause: Wrong file name prefix
Fix: Use 10_ prefix for GUI tests that require authentication
Cause: Missing token or cookie
Fix: Ensure save_login_cookie.hurl runs first and token is captured
Cause: Missing token parameter
Fix: Add token: {{token}} to all POST requests with actions
Cause: Hurl doesn't follow redirects by default Fix: Use separate GET requests to follow redirects, capture IDs from URLs
Cause: Using PCRE syntax (like (?!...) negative lookahead) which Rust regex doesn't support
Fix: Use Rust-compatible regex syntax. For excluding patterns, use character class exclusions like [^X] instead of negative lookaheads
Cause: Using \? to match literal ? in URLs
Fix: Use [?] to match literal question marks in regex patterns
Cause: Using body not contains "Warning:" when some warnings are expected
Fix: Use body contains "Warning: ExpectedMessage" for expected warnings and body not contains "Warning: [^E]" to catch unexpected warnings starting with other characters
Cause: Hardcoded URLs
Fix: Use {{hostnport}} variable and proper environment setup
File: test/hurl/gui/fourn/commande/10_supplier_order_tracking_POST.hurl
# Create a supplier for tracking test
POST http://{{hostnport}}/societe/card.php?leftmenu=suppliers&action=create&type=f
HTTP 200
[FormParams]
name: Test Supplier for Tracking {{timestamp}}
code_fournisseur: TRACKTEST_{{timestamp}}
fournisseur: 1
client: 0
email: test-supplier-{{timestamp}}@example.com
country_id: 1
token: {{token}}
# Capture the supplier ID
GET http://{{hostnport}}/societe/card.php?socid={{socid}}&leftmenu=suppliers
HTTP 200
[Captures]
socid: queryParam "socid"
# Create a supplier order
POST http://{{hostnport}}/fourn/commande/card.php?action=create
HTTP 200
[FormParams]
socid: {{socid}}
date: {{now}}
date_livraison: {{now_plus_7_days}}
ref_supplier: ORDER-{{timestamp}}
statut: 0
token: {{token}}
# Capture the order ID
GET http://{{hostnport}}/fourn/commande/card.php?id={{orderid}}
HTTP 200
[Captures]
orderid: queryParam "id"
# Set tracking information
POST http://{{hostnport}}/fourn/commande/card.php?action=set_tracking
HTTP 200
[FormParams]
id: {{orderid}}
tracking_awb: FX123456789012
carrier_code: FX
token: {{token}}File: test/hurl/gui/fourn/commande/10_supplier_order_tracking_GET.hurl
# Verify tracking information is displayed
GET http://{{hostnport}}/fourn/commande/card.php?id={{orderid}}
HTTP 200
[Asserts]
body contains "FX123456789012"
body contains "FedEx"
body contains "TrackingNumber"
body contains "https://www.fedex.com/tracking/FX123456789012"File: test/hurl/gui/fourn/commande/10_supplier_order_tracking_DELETE.hurl
# Delete the supplier order
POST http://{{hostnport}}/fourn/commande/card.php?action=delete
HTTP 200
[FormParams]
id: {{orderid}}
token: {{token}}
# Verify order is deleted
GET http://{{hostnport}}/fourn/commande/card.php?id={{orderid}}
HTTP 404
# Delete the supplier
POST http://{{hostnport}}/societe/card.php?leftmenu=suppliers&action=delete
HTTP 200
[FormParams]
socid: {{socid}}
token: {{token}}
# Verify supplier is deleted
GET http://{{hostnport}}/societe/card.php?socid={{socid}}&leftmenu=suppliers
HTTP 404Before committing hurl tests:
test/hurl/run_with_server.sh <test_path>© Dolibarr, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/skill-doli-test-hurl of Dolibarr/dolibarr.
Open the folder on GitHubat commit 419a05a
Skill Doli Test Hurl next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Skill Doli Test Hurl this skillDolibarr/dolibarr | 7.7k | — | ~3.7k | Automated safety check: Pass | GPL-3.0 | |
| Salesforce Enterprise Rbacjeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Alpaca CLIalpacahq/cli | 178 | — | ~2.6k | Automated safety check: Pass | Apache-2.0 | |
| Superior Trade AuthSuperior-Trade/superior-skills | 215 | — | ~950 | Automated safety check: Pass | MIT | |
| Metamask Agent Walletnirholas/three.ws | 229 | — | ~4.5k | Automated safety check: Pass | MIT | |
| Setupdaloopa/investing | 489 | — | ~1k | Automated safety check: Notes | Apache-2.0 |
jeremylongshore/tons-of-skills-marketplace
Review and govern Salesforce enterprise access across profiles, permission sets and groups, sharing, field access, OAuth apps, SSO, and privileged roles.
alpacahq/cli
Install, configure, and use the Alpaca CLI - a command-line tool for the Alpaca Trading API.
Superior-Trade/superior-skills
A skill your agent uses when an agent needs to register a Superior Trade account, verify an email OTP, configure x-api-key authentication, or recover from missing or invalid credentials before using…
nirholas/three.ws
A skill your agent uses when the user asks anything about blockchain wallets, transactions, signing, token transfers, supported chains, wallet balances, perpetual futures trading, prediction…
daloopa/investing
Walk through initial setup and authentication for this Daloopa starter kit
forcedotcom/sf-skills
Configure Multi-Factor Authentication (MFA) for Salesforce Experience Site users.
Dolibarr/dolibarr
Reviews Dolibarr PHP code for compliance with coding standards and security best practices, and fixes identified issues.
Dolibarr/dolibarr
A skill your agent uses when developing a Dolibarr ERP/CRM external module, working with database queries, or asking about Dolibarr best practices.
Dolibarr/dolibarr
Creates or modify PHP unit tests for Dolibarr ERP/CRM functions and methods.
Dolibarr/dolibarr
A skill your agent uses when developing Dolibarr ERP/CRM code, working with database queries, or asking about Dolibarr best practices.
Dolibarr/dolibarr
Forward-port (upmerge) Dolibarr maintenance branches in cascade (n into n+1, up to develop) with dev/pullmerge.sh, and resolve merge conflicts without committing.
Dolibarr/dolibarr
Create interactive PHP test case scripts for Dolibarr ERP/CRM that allow users to setup test data, view results via direct links, and tear down (clean up) the data.
Create and maintain Hurl tests for Dolibarr ERP/CRM. An agent skill from Dolibarr/dolibarr. Skill Doli Test Hurl is an agent skill from Dolibarr/dolibarr. Create and maintain Hurl tests for Dolibarr ERP/CRM.
Skill Doli Test Hurl fits situations like: asked to create; fix hurl tests for Dolibarr; working with test/hurl directory.
Run `npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a claude-code`. Or copy the skill folder (.agents/skills/skill-doli-test-hurl in Dolibarr/dolibarr) into .claude/skills/skill-doli-test-hurl in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a codex`. Or copy the skill folder (.agents/skills/skill-doli-test-hurl in Dolibarr/dolibarr) into .agents/skills/skill-doli-test-hurl in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/skill-doli-test-hurl, .gemini/skills/skill-doli-test-hurl, .github/skills/skill-doli-test-hurl and .opencode/skills/skill-doli-test-hurl in your project.
SKILL.md names no scripts, command-line tools or credentials: Skill Doli Test Hurl is instructions for the agent only. Its frontmatter pre-approves these tools: read_file, write_file, grep, bash.
SKILL.md names 2 domains. In commands or code: fedex.com; the agent is likely to contact it when it follows the instructions. As links in the text: hurl.dev. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Skill Doli Test Hurl is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.7k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Skill Doli Test Hurl: Salesforce Enterprise Rbac (jeremylongshore/tons-of-skills-marketplace, 2.8k stars), Alpaca CLI (alpacahq/cli, 178 stars), Superior Trade Auth (Superior-Trade/superior-skills, 215 stars) and Metamask Agent Wallet (nirholas/three.ws, 229 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Dolibarr (a GitHub organization) maintains it in Dolibarr/dolibarr, which has 7,707 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on October 10, 2026.
Source: Dolibarr/dolibarr on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.