CtrlK
BlogDocsLog inGet started
Tessl Logo

spec-driven-devlopment/spec-as-source

Spec-driven development on OpenSpec, with mechanical spec-as-source enforcement: a custom 'spec-as-source' OpenSpec schema adds file-ownership (targets) and test-verification ([@test]) metadata to every capability spec, three scripts (link check, ownership check, manifest build) keep code and specs from drifting apart, plus requirement-gathering, spec-writer, work-review, and a session-handoff skill with a proactive context-warning hook.

71

Quality

89%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

handoff-template.mdskills/handoff/references/

HANDOFF-NNN.md — Template Completo

# HANDOFF-[NNN] — [Brand/Progetto]
> Data: [YYYY-MM-DD HH:MM] | Sessione: #[N] | Continua da: HANDOFF-[N-1].md (o —)
> Progetto: [nome] | Operatore: [persona + modello AI es. "Giuseppe + Claude Sonnet 4.6"]
> Cliente: [se applicabile] | Deadline: [se applicabile]

---

## 🎯 Goal
[Obiettivo finale, 2-4 righe. Cosa si sta costruendo/creando, per chi, con quale deliverable atteso.
Questa sezione cambia raramente — solo se lo scope del progetto cambia davvero.]

## ✅ Current Progress

### Completato ✓
- [x] [Task specifico con riferimento a file/asset — es. "Homepage hero generata, salvata in /assets/hero-v3.png"]
- [x] [Task specifico]

### In corso / Sospeso
- [ ] [Task — a che punto è, cosa manca]
- [ ] [Task non iniziato]

## 💡 What Worked
[Approcci, prompt, comandi, decisioni con esito positivo.
Riporta i dettagli tecnici ESATTI — il prossimo operatore deve poterli riusare.]

- **[Tecnica/Approccio]**: [descrizione] → [risultato] ([perché ha funzionato])
- Esempio: **Prompt NanoBanana hero ESAC**: "single red LED strip, deep ocean black bg, cinematic 4K, product hero shot, no text" → qualità eccellente al primo tentativo (lighting semplice = più controllo in post)

## ❌ What Didn't Work
[Errori, vicoli ciechi, approcci falliti con parametri esatti.
Ogni voce qui è tempo risparmiato al prossimo operatore. MAI lasciare vuota per ottimismo.]

- **[Approccio fallito]**: [cosa è andato storto] → [cosa NON rifare]
- Esempio: **Seedance speed 1.0**: movimento troppo agitato, effetto non premium → usare max 0.6 per contenuti luxury

Se nulla è fallito: "Nessun vicolo cieco rilevante in questa sessione."

## 🚀 Next Steps
[Lista numerata, ordinata per priorità. Item #1 eseguibile subito senza domande.]

1. [Azione concreta — tool, file input, output atteso]
2. [Azione concreta]
3. [Azione concreta]

## 📎 Context Importante (opzionale)
[Solo se serve: vincoli cliente, decisioni architetturali con motivazione,
convenzioni di naming, link a file di supporto. Non duplicare sezioni sopra.]
- Credenziali: → vedi .env (mai nel testo)
- Riferimenti: `.handoff/PROMPTS.md`, `.handoff/CLIENTS.md`

Regole di aggiornamento (quando HANDOFF già esiste)

Quando crei HANDOFF-NNN.md a partire dal precedente:

  1. Incrementa numero sessione, aggiorna data.
  2. Migra i Next Steps completati → Current Progress (checked ✓).
  3. Appendi nuove voci a What Worked / What Didn't Work — non cancellare mai le precedenti. Se serve chiarezza, prefissa con (S3) per indicare la sessione.
  4. Riscrivi Next Steps da zero per la prossima sessione.
  5. Goal — tocca solo se lo scope è cambiato davvero.

skills

README.md

tile.json