Riferimento degli strumenti
SecCheck espone sette strumenti. Sono tutti di sola lettura — cercano contenuti e li restituiscono; nessuno modifica il suo progetto, i suoi sistemi o alcuno stato lato server. Nessuno effettua chiamate in uscita: ogni risposta proviene dal corpus incorporato nel server.
| Strumento | In una riga |
|---|---|
list_sources | Quali librerie esistono, quanto sono grandi, cosa coprono? |
search_skills | Trovare playbook per parola chiave, categoria, framework o tag. |
load_skill | Leggere un playbook completo. |
list_skill_resources | Quali file inclusi accompagnano un playbook? (Pro) |
read_skill_resource | Leggere uno script / payload / riferimento incluso. (Pro) |
license_status | Cosa sblocca la mia credenziale? |
get_attribution | Licenze di terze parti e avvisi obbligatori. |
Il contratto di risposta
Ogni strumento che restituisce dati strutturati risponde in esattamente due righe:
<RIGA DI VERDETTO — dichiara l'esito a parole>
<payload JSON compatto su una riga>
È voluto. Un modello legge la prima riga, quindi la prima riga deve portare la
risposta. I prefissi distinti — FOUND, NO MATCH, AVAILABLE, RESOURCES,
EDITION, ATTRIBUTION — sono ciò che permette a un agente di distinguere
«nulla corrisponde alla sua query» da «questa cosa non esiste», che è la
differenza tra un nuovo tentativo e una conclusione sbagliata.
load_skill e read_skill_resource fanno eccezione: restituiscono il documento
stesso, poiché è quello la risposta.
Gli errori tornano come risultati di strumento che iniziano con error: , non
come errori di protocollo JSON-RPC — i modelli si riprendono molto meglio da un
risultato leggibile che da un guasto a livello di trasporto.
list_sources
Elenca le librerie di skill, il loro numero di skill e la ripartizione per categoria. Lo chiami per primo per vedere cosa contiene realmente il server.
Parametri — nessuno.
Restituisce
AVAILABLE: 857 playbooks across 3 libraries (43 compliance, 745 defensive, 69 offensive). Edition: community.
{
"total_skills": 857,
"by_category": { "compliance": 43, "defensive": 745, "offensive": 69 },
"sources": [
{
"key": "cybersecurity",
"label": "Cybersecurity Skills",
"description": "817-skill offensive+defensive library, mapped to MITRE ATT&CK/ATLAS/D3FEND, NIST CSF/AI-RMF, and F3.",
"skill_count": 817,
"categories": { "compliance": 13, "defensive": 745, "offensive": 59 },
"available": true,
"unlocked": true
},
{ "key": "grc", "label": "GRC & Compliance Skills", "skill_count": 30, "categories": { "compliance": 30 }, "unlocked": true },
{ "key": "pentesterflow", "label": "PentesterFlow CLI Skills", "skill_count": 10, "categories": { "offensive": 10 }, "unlocked": true }
],
"edition": "community"
}
Sono elencate solo le fonti che la sua credenziale sblocca — un pacchetto di skill privato o su misura che non le è stato concesso semplicemente non compare.
search_skills
Cerca in tutte le librerie sbloccate e restituisce corrispondenze compatte. È il punto di ingresso di quasi ogni compito: trovare il playbook, poi caricarlo.
Parametri — tutti facoltativi. I filtri sono combinati in AND.
| Nome | Obbligatorio | Descrizione |
|---|---|---|
query | ➖ | Parole chiave in testo libero, ad es. dns exfiltration, kerberoasting, GDPR data subject rights. |
source | ➖ | Restringere a una libreria: cybersecurity, grc, pentesterflow. |
category | ➖ | offensive (red team/pentest), defensive (blue team/DFIR), compliance (GRC/regolamentare). |
framework | ➖ | Etichetta di framework, ad es. MITRE ATT&CK, NIST CSF, GDPR, PCI DSS, ISO 27001. |
tag | ➖ | Un tag del frontmatter, ad es. splunk, kubernetes, active-directory. |
limit | ➖ | Numero massimo di risultati. Predefinito 20, massimo 100. |
Omettere query e passare solo filtri è una chiamata di elenco valida — ad
esempio «tutti i playbook di conformità della libreria GRC».
Esempio
{ "query": "kerberoasting", "limit": 3 }
Restituisce
FOUND: 3 playbook(s). Load the most relevant with load_skill(id).
{
"count": 3,
"results": [
{
"id": "cybersecurity/detecting-kerberoasting-attacks",
"name": "detecting-kerberoasting-attacks",
"source": "cybersecurity",
"category": "defensive",
"frameworks": ["MITRE ATT&CK", "NIST CSF", "MITRE D3FEND"],
"tags": ["threat-hunting", "kerberoasting", "credential-access", "kerberos", "t1558"],
"description": "Detect Kerberoasting attacks by monitoring for anomalous Kerberos TGS requests targeting service accounts with SPNs for offline password cracking."
},
{
"id": "cybersecurity/exploiting-kerberoasting-with-impacket",
"category": "offensive",
"frameworks": ["MITRE ATT&CK", "NIST CSF", "MITRE D3FEND"],
"description": "Perform Kerberoasting attacks using Impacket's GetUserSPNs to extract and crack Kerberos TGS tickets for Active Directory service accounts."
}
// …
]
}
Le descrizioni sono troncate a 300 caratteri — abbastanza perché l'agente scelga, non abbastanza da sostituire il caricamento del playbook.
Come sono ordinati i risultati. Le corrispondenze ricevono un punteggio per ogni token della query e sono ordinate dal più alto, così il playbook più pertinente compare in cima:
| Dove corrisponde il token | Punti |
|---|---|
| Il nome dello skill, esattamente | +100 |
| In qualsiasi punto del nome dello skill | +5 |
| Un tag | +3 |
| Un'etichetta di framework | +3 |
| Il sottodominio | +2 |
| La descrizione | +1 |
Poiché il punteggio è additivo sui token, una query lunga in linguaggio naturale
restituisce comunque qualcosa — spesso solo debolmente correlato. Se la
descrizione del primo risultato non corrisponde chiaramente al compito, restringa
con category o framework invece di aggiungere altre parole.
Quando davvero nulla corrisponde, la riga di verdetto è esplicita:
NO MATCH: no playbook matched this query. Try broader keywords, or drop the source/category/framework filters — the library is not exhaustive of all security work.
load_skill
Restituisce il playbook SKILL.md completo per un id restituito da
search_skills — di solito quando usarlo, i suoi prerequisiti e i suoi passaggi,
più gli eventuali criteri di verifica o di convalida che contiene.
Parametri
| Nome | Obbligatorio | Descrizione |
|---|---|---|
id | ✅ | Id dello skill nella forma <source>/<name>, ad es. cybersecurity/analyzing-dns-logs-for-exfiltration. |
Restituisce — il documento Markdown stesso, frontmatter incluso.
Quando un playbook include risorse, viene aggiunto un piè di pagina. In Community tale piè di pagina riporta solo il conteggio, senza rivelare percorsi né dimensioni dei file:
---
_3 runnable bundled resource(s) ship with this skill; unlock them with a Pro license (read_skill_resource)._
Con Pro o Enterprise diventa l'inventario completo (percorsi e dimensioni), gli
stessi dati restituiti da
list_skill_resources.
Errori
error: unknown skill id "cybersecurity/does-not-exist" (use search_skills to find valid ids)
Prenda sempre l'id da search_skills invece di indovinarlo da un nome di skill
visto altrove.
list_skill_resources
Elenca i file di riferimento, gli script e i payload inclusi che accompagnano un playbook — percorsi relativi e dimensioni.
In Community restituisce un error: che spiega la limitazione. Tutti gli 857
playbook restano liberamente consultabili e caricabili; ciò che è sotto licenza è
il materiale eseguibile.
Parametri
| Nome | Obbligatorio | Descrizione |
|---|---|---|
id | ✅ | Id dello skill ottenuto da search_skills. |
Restituisce
RESOURCES: 3 bundled file(s) ship with grc/iso27001. Fetch one with read_skill_resource.
{
"id": "grc/iso27001",
"resources": [
{ "path": "references/annex-a-2013.md", "size": 7753 },
{ "path": "references/annex-a-2022.md", "size": 10131 },
{ "path": "references/control-mapping.md", "size": 7001 }
]
}
read_skill_resource
Legge un file di risorsa incluso che accompagna un playbook.
Stessa limitazione di list_skill_resources.
Parametri
| Nome | Obbligatorio | Descrizione |
|---|---|---|
id | ✅ | Id dello skill ottenuto da search_skills. |
path | ✅ | Un percorso relativo così come restituito da list_skill_resources, ad es. references/standards.md o payloads/jinja2.txt. |
Restituisce — il contenuto del file.
I percorsi sono risolti rigorosamente all'interno della directory propria dello skill, e i collegamenti simbolici non vengono mai elencati né serviti: un percorso di risorsa non può quindi essere usato per leggere alcunché al di fuori del playbook a cui appartiene.
license_status
Riporta la sua edizione attiva e quali fonti e capacità sblocca esattamente la sua credenziale. Utile quando uno strumento restituisce un errore di limitazione inatteso.
Parametri — nessuno.
Restituisce
EDITION: community — playbooks only.
{
"tier": "community",
"unlocked_sources": { "cybersecurity": true, "grc": true, "pentesterflow": true },
"bundled_resources": false,
"audit_log": false,
"usage_metering": false,
"status": "Hosted: capabilities are provisioned on your Cert-IX API key"
}
I valori descrivono il chiamante, non l'operatore. In ospitato sono risolti dalla sua chiave API a cura dell'edge Cert-IX a ogni richiesta — si veda Sicurezza e trattamento dei dati.
get_attribution
Restituisce l'attribuzione e la licenza di terze parti per ogni libreria inclusa, testi completi delle licenze compresi. È l'avviso che deve riprodurre se ridistribuisce questi contenuti.
Parametri — nessuno.
Restituisce
ATTRIBUTION: 3 third-party sources, redistributed under their own permissive licences.
{
"notice": "This product redistributes third-party skill content under the licences below. All rights of the original authors are retained. Full licence texts are included.",
"sources": [
{ "source": "cybersecurity", "upstream": "Anthropic-Cybersecurity-Skills", "author": "mahipal (community project)", "license": "Apache-2.0", "homepage": "https://github.com/mukul975/Anthropic-Cybersecurity-Skills" },
{ "source": "grc", "upstream": "Claude-Skills-Governance-Risk-and-Compliance", "author": "Hemant Naik (Sushegaad)", "license": "MIT", "homepage": "https://github.com/Sushegaad/Claude-Skills-Governance-Risk-and-Compliance" },
{ "source": "pentesterflow", "upstream": "PentesterFlow", "author": "PentesterFlow", "license": "Apache-2.0", "homepage": "https://github.com/pentesterflow/agent" }
],
"license_texts": { "cybersecurity": "Apache License…", "grc": "MIT License…", "pentesterflow": "Apache License…" }
}
Un identificativo SPDX e una homepage sono un riferimento, non un avviso — per questo il testo completo viaggia con la risposta, invece di attendersi che vada lei a cercare il repository di origine.
Matrice delle capacità
| Strumento | Community | Pro | Enterprise |
|---|---|---|---|
list_sources | ✅ | ✅ | ✅ |
search_skills | ✅ | ✅ | ✅ |
load_skill | ✅ | ✅ | ✅ |
list_skill_resources | — | ✅ | ✅ |
read_skill_resource | — | ✅ | ✅ |
license_status | ✅ | ✅ | ✅ |
get_attribution | ✅ | ✅ | ✅ |
Si veda Flussi di lavoro degli agenti per collegare tutto questo al ciclo di un agente, così che ricorra a un playbook per impostazione predefinita invece di improvvisare.
Questa pagina ti è stata utile?