[Feature] Skill signing and integrity verification (ed25519 + content_hash)

Aperta
#90 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

@rohitg00 ci sta già lavorando.

Dal 11/5/2026.

  • #122 di @rohitg00 — aperta

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
cryptography, typescript, yaml
Ambito
cli, security

Direzione di ricerca

Start by tracing the existing skillkit install, skillkit validate, and skillkit publish command entry points, then inspect how skill.json and skillkit.yaml are parsed. The first phase targets the integrity field and hash generation/verification; later phases introduce Ed25519 signing, publisher trust, and CI/CD enforcement. Completion requires defining and testing each phase, but this cross-cutting security design is not self-contained for a first-time contributor.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement

Problem

The agent skills ecosystem is under active attack (Q1 2026):

  • ClawHavoc campaign: 341 malicious skills flooding ClawHub in 3 days
  • Snyk audit: 13.4% of marketplace skills contain critical security issues
  • OWASP Agentic Skills Top 10 recommends ed25519 signing + content_hash

SkillKit has skillkit scan and skillkit validate but no cryptographic integrity verification.

Proposed Solution

Phase 1: Content Hashing
  • Add integrity field to skill.json (per #83): "integrity": "sha256-yY1jg1cPGoisxK/..."
  • skillkit install verifies hash after download
  • skillkit validate checks integrity matches content
  • skillkit publish auto-generates integrity hash
Phase 2: Skill Signing
  • ed25519 key pair generation: skillkit sign init
  • Sign skills on publish: skillkit publish --sign
  • Verify signatures on install: skillkit install --verify
  • Public key registry for known publishers
Phase 3: Trust Chain
  • Configurable trust levels: trusted (signed + verified), scanned (passed security scan), unknown
  • skillkit.yaml config: trust: { requireSigned: true, allowedPublishers: [...] }
  • CI/CD flag: --require-signed to fail on unsigned skills

References

Lingua principale
TypeScript
Stelle
1.6k
Fork
156
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di rohitg00/skillkit

Tutte le issue di rohitg00/skillkit

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.