Agent skill

Skill Doli Test Hurl

by Dolibarr in Dolibarr/dolibarr

Create and maintain Hurl tests for Dolibarr ERP/CRM. An agent skill from Dolibarr/dolibarr.

GPL-3.0Auto-check passedSales & Support

Install Skill Doli Test Hurl

skills CLI
$ npx skills add Dolibarr/dolibarr --skill skill-doli-test-hurl -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Dolibarr/dolibarr skill-doli-test-hurl --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ 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-src

Use ~/.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/

Facts

Skill name
skill-doli-test-hurl
GitHub stars
7.7k
Token cost
~3.7k tokens
SKILL.md length
966 words
Files
1
Skills in repo
8
Repo updated
First seen
Licence
GPL-3.0

At a glance

Create and maintain Hurl tests for Dolibarr ERP/CRM. An agent skill from Dolibarr/dolibarr.

  • Works in 3 steps: save_login_cookie.hurl - Special file… → Cookie jar - Passed via --cookiefile… → CSRF token - Captured from login page…
  • Asked to create
  • SKILL.md covers Description, When to Use, Relationship with AGENTS.md and Dolibarr Hurl Test Conventions
  • Reaches fedex.com

What it does

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.

When your agent uses it

  • Asked to create
  • Fix hurl tests for Dolibarr
  • Working with test/hurl directory

Example prompts

  • “/skill-doli-test-hurl”

Requirements

  • Pre-approved tools (allowed-tools): read_file, write_file, grep, bash

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. save_login_cookie.hurl - Special file that logs in and saves cookies
  2. Cookie jar - Passed via --cookiefile parameter
  3. CSRF token - Captured from login page and passed with requests

What it can do on your machine

Read from SKILL.md and the folder at commit 419a05a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • read_file
    • write_file
    • grep
    • bash

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    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.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • fedex.com

    Also links to:

    • hurl.dev

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

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.

Always · name and description, kept in context so the agent knows when to use it
~75
When it runs · the whole SKILL.md, loaded when a task matches
~3.7k

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.

Safety

Auto-check passed

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.

SKILL.md

The full file from Dolibarr/dolibarr at commit 419a05a, republished under its GPL-3.0 licence (© Dolibarr). 966 words, ~3,661 tokens.

Download SKILL.mdSave it as .claude/skills/skill-doli-test-hurl/SKILL.md (or your agent's skills folder).
name
skill-doli-test-hurl
description
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.
allowed-tools
read_file, write_file, grep, bash
user-invocable
true

Dolibarr Hurl Test Skill

Description

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.

When to Use

  • User asks to create hurl tests for Dolibarr
  • User asks to fix failing hurl tests
  • Working with test/hurl directory
  • Need to test Dolibarr GUI or API endpoints
  • User mentions "hurl test" or "hurl tests"

Relationship with AGENTS.md

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.
  • Unless explicitly stated otherwise, the instructions from both files apply.
  • SKILLS.md does not replace or override AGENTS.md.
  • If an instruction in SKILLS.md conflicts with AGENTS.md, follow the rules defined by AGENTS.md.

Dolibarr Hurl Test Conventions

File Naming Pattern

Hurl test files must follow a specific naming pattern based on the number prefix:

PrefixDescriptionAuthentication Required
00No authentication requiredNo
10Authentication required (GUI tests)Yes
20Reserved for future use-
30POST data for later testsYes
40GET data that was POST'ed in 30_ filesYes
50PUT data that was POST'ed in 30_ filesYes
60GET data that was PUT'ed in 50_ filesYes
70DELETE dataYes
80GET data that was just DELETE'dYes
90Reserved 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.

File Structure
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_*.hurl
Directory Structure

Place tests in directories matching the Dolibarr module/path structure:

  • test/hurl/gui/fourn/commande/ - Supplier order tests
  • test/hurl/gui/societe/ - Third party/company tests
  • test/hurl/api/commande/ - Customer order API tests
  • test/hurl/api/fourn/ - Supplier API tests
Authentication

Dolibarr requires authentication for most GUI operations. The hurl framework handles this through:

  1. save_login_cookie.hurl - Special file that logs in and saves cookies
  2. Cookie jar - Passed via --cookiefile parameter
  3. CSRF token - Captured from login page and passed with requests
Capturing CSRF Token
hurl
# 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}}
Creating Test Data
Supplier Creation

Suppliers (fournisseurs) are created via societe/card.php with type=f:

hurl
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"
Supplier Order Creation
hurl
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"
Customer Order Creation
hurl
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}}
Assertions

Use Dolibarr-specific assertions:

hurl
# 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"
Handling Expected Warnings

When testing for expected warning messages while catching unexpected ones:

hurl
# 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".

Regex Patterns

Hurl uses Rust regex syntax. Important differences from PCRE:

  • No negative lookahead support: (?!pattern) is NOT supported
  • Use character class exclusions: [^X] to match any character except X
  • To match a literal ? in URLs, use [?] not \?
  • Start anchors: Use ^ for start of string
hurl
# 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]"
Running Tests
Using run.sh

The recommended way to run hurl tests locally:

bash
# Run specific test path
test/hurl/run.sh gui/fourn/commande

# Run with custom port
test/hurl/run.sh --port=9000 gui/fourn/commande
Using run.sh Directly
bash
# 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
Running Specific Tests
bash
# 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 File Template
GUI Test with Authentication (10 prefix)
hurl
# 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 Test with Authentication (10 prefix)
hurl
# 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:"
Built-in Variables

Hurl provides useful built-in variables:

VariableDescriptionExample
{{timestamp}}Current timestamp1712345678
{{now}}Current date/time2024-04-05T12:34:56
{{now_plus_7_days}}Date 7 days from now2024-04-12T12:34:56
{{hostnport}}Host and port127.0.50.1:9999
{{token}}CSRF token (captured)abc123...
{{username}}Usernameadmin
{{password}}Passwordadmin
Show full SKILL.md (435 more words)Show less
Best Practices
  1. Always include token in POST requests

    hurl
    [FormParams]
    action: create
    token: {{token}}
  2. Use proper URL patterns

    • Supplier creation: societe/card.php?leftmenu=suppliers&action=create&type=f
    • Customer creation: societe/card.php?leftmenu=customers&action=create&type=c
    • Supplier order: fourn/commande/card.php
    • Customer order: commande/card.php
  3. Capture IDs for cleanup Always capture created IDs so they can be used in subsequent tests and cleaned up:

    hurl
    [Captures]
    socid: queryParam "socid"
    orderid: queryParam "id"
  4. Clean up test data Create DELETE tests (70_ prefix) to remove test data:

    hurl
    POST http://{{hostnport}}/fourn/commande/card.php?action=delete
    HTTP 200
    [FormParams]
    id: {{orderid}}
    token: {{token}}
  5. Use proper HTTP status codes

    • 200 for successful operations
    • 404 for deleted/not found resources
    • 400 for bad requests
  6. Test both positive and negative cases

    • Test valid inputs
    • Test invalid inputs
    • Test edge cases
  7. Keep tests small and focused Each test file should test one specific functionality.

  8. Handle expected messages properly

    • Use body contains "Expected message" for messages you expect to see
    • Use body not contains "Error:" and body not contains "Warning:" for unexpected errors
    • For expected warnings, check for the specific warning text and use exclusion patterns for unexpected ones
Common Issues and Fixes
Issue: Tests not being found

Cause: Wrong file name prefix Fix: Use 10_ prefix for GUI tests that require authentication

Issue: Authentication failing

Cause: Missing token or cookie Fix: Ensure save_login_cookie.hurl runs first and token is captured

Issue: CSRF protection blocking requests

Cause: Missing token parameter Fix: Add token: {{token}} to all POST requests with actions

Issue: Redirects not being followed

Cause: Hurl doesn't follow redirects by default Fix: Use separate GET requests to follow redirects, capture IDs from URLs

Issue: Regex patterns not working

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

Issue: URL query parameter matching

Cause: Using \? to match literal ? in URLs Fix: Use [?] to match literal question marks in regex patterns

Issue: Expected warnings being flagged as failures

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

Issue: Tests running against wrong environment

Cause: Hardcoded URLs Fix: Use {{hostnport}} variable and proper environment setup

Example: Complete Test Suite for Supplier Order Tracking

File: test/hurl/gui/fourn/commande/10_supplier_order_tracking_POST.hurl

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

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

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 404
Validation

Before committing hurl tests:

  1. Run the tests locally with test/hurl/run_with_server.sh <test_path>
  2. Verify all tests pass
  3. Check that cleanup works (DELETE tests)
  4. Ensure no test data is left behind
References

© 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

Files

Just SKILL.md in .agents/skills/skill-doli-test-hurl of Dolibarr/dolibarr.

Open the folder on GitHubat commit 419a05a

Compare with similar skills

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 Doli Test Hurl compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Skill Doli Test Hurl this skillDolibarr/dolibarr7.7k—~3.7kAutomated safety check: PassGPL-3.0
Salesforce Enterprise Rbacjeremylongshore/tons-of-skills-marketplace2.8k—~1.1kAutomated safety check: PassMIT
Alpaca CLIalpacahq/cli178—~2.6kAutomated safety check: PassApache-2.0
Superior Trade AuthSuperior-Trade/superior-skills215—~950Automated safety check: PassMIT
Metamask Agent Walletnirholas/three.ws229—~4.5kAutomated safety check: PassMIT
Setupdaloopa/investing489—~1kAutomated safety check: NotesApache-2.0

Similar skills

  • 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.

    2.8k GitHub stars~1.1k tokensUpdated yesterday
    Sales & SupportAuto-check passed
  • Alpaca CLI

    alpacahq/cli

    Install, configure, and use the Alpaca CLI - a command-line tool for the Alpaca Trading API.

    178 GitHub stars~2.6k tokensUpdated yesterday
    Business, Finance & HRAuto-check passed
  • Superior Trade Auth

    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…

    215 GitHub stars~950 tokensUpdated 1 mo ago
    Business, Finance & HRAuto-check passed
  • Metamask Agent Wallet

    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…

    229 GitHub stars~4.5k tokensUpdated yesterday
    Business, Finance & HRAuto-check passed
  • Setup

    daloopa/investing

    Walk through initial setup and authentication for this Daloopa starter kit

    489 GitHub stars~1k tokensUpdated 3 days ago
    Business, Finance & HRAuto-check: notes
  • Configure Multi-Factor Authentication (MFA) for Salesforce Experience Site users.

    1.1k GitHub stars~4.8k tokensUpdated yesterday
    Sales & SupportAuto-check passed

More from Dolibarr/dolibarr

All 8 skills in this repo
  • Skill Doli Code Review

    Dolibarr/dolibarr

    Reviews Dolibarr PHP code for compliance with coding standards and security best practices, and fixes identified issues.

    7.7k GitHub starsUsed in 1 repo~1.1k tokens
    Auto-check passed
  • Skill Doli Devmodule

    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.

    7.7k GitHub starsUsed in 1 repo~3.3k tokens
    Auto-check passed
  • Skill Doli Test Phpunit

    Dolibarr/dolibarr

    Creates or modify PHP unit tests for Dolibarr ERP/CRM functions and methods.

    7.7k GitHub starsUsed in 1 repo~1.3k tokens
    Auto-check passed
  • Skill Doli Dev

    Dolibarr/dolibarr

    A skill your agent uses when developing Dolibarr ERP/CRM code, working with database queries, or asking about Dolibarr best practices.

    7.7k GitHub stars~2.9k tokensUpdated yesterday
    Auto-check passed
  • Skill Doli Upmerge

    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.

    7.7k GitHub stars~674 tokensUpdated yesterday
    Auto-check passed
  • 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.

    7.7k GitHub starsUsed in 1 repo~5.5k tokens
    Auto-check passed

Questions about Skill Doli Test Hurl

What does Skill Doli Test Hurl do?

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.

When should I use Skill Doli Test Hurl?

Skill Doli Test Hurl fits situations like: asked to create; fix hurl tests for Dolibarr; working with test/hurl directory.

How do I install Skill Doli Test Hurl in Claude Code?

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.

How do I install Skill Doli Test Hurl in Codex?

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.

Can I use Skill Doli Test Hurl in Cursor, Gemini CLI or GitHub Copilot?

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.

What does Skill Doli Test Hurl need to run?

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.

Does Skill Doli Test Hurl access the network?

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.

Is Skill Doli Test Hurl safe to install?

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.

What licence does Skill Doli Test Hurl use?

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.

How many tokens does Skill Doli Test Hurl use?

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.

What are the alternatives to Skill Doli Test Hurl?

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.

Who maintains Skill Doli Test Hurl?

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.