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-suggestion.mdrules/

handoff-suggestion

Una skill non ha accesso al conteggio esatto dei token di contesto: questa rule è il fallback soft, portabile su qualsiasi agente, per il caso in cui l'hook deterministico (PreCompact, Claude Code only — vedi skills/handoff/templates/claude-settings-hooks.json) non sia installato o non sia supportato dall'ambiente.

Quando suggerire l'handoff

Valuta la conversazione corrente, non un singolo messaggio. Segnali che il contesto si sta avvicinando a un punto critico (circa 300k token, o la soglia di compattazione automatica del tuo ambiente):

  • hai letto molti file grandi o eseguito molte ricerche/tool call in questa sessione;
  • la sessione contiene già più round di implementazione/debug su più file;
  • l'utente fa riferimento a decisioni prese "molto prima" nella stessa conversazione;
  • stai per iniziare un nuovo blocco di lavoro ampio (nuova feature, refactor, debugging complesso) dentro una sessione già lunga.

Cosa fare

Quando rilevi questi segnali, prima di continuare, avvisa l'utente con questa frase esatta (o una traduzione fedele se la conversazione è in un'altra lingua):

Utilizza l'handoff, il modello potrebbe avere delle allucinazioni.

Poi offri di eseguire /handoff save (skill handoff, Workflow B) per congelare lo stato corrente prima di proseguire. Non bloccare il lavoro in attesa di risposta — è un suggerimento, non un gate: se l'utente ignora l'avviso o dice di continuare, procedi normalmente.

Non ripetere l'avviso più di una volta ogni poche decine di scambi: è un nudge, non un disclaimer da ripetere a ogni messaggio.

README.md

tile.json