feat(template): add complete OpenCode project template with placeholder paths
- Replace hardcoded project paths with generic placeholders ([NOME_PROGETTO], [ROOT_PROGETTO]) - Add .opencode/ configuration with agent definitions (spec-architect, tdd-developer, git-manager, security-reviewer) - Add export/ templates (prd, architecture, kanban, progress, githistory) - Add docs/ templates (bug_ledger, architecture) - Add prompt/prompt-zero.md kickoff template - Update README.md with installation instructions and usage guide Template now ready for reuse in new projects with workflow: 1. Spec-Driven (@spec-architect) 2. TDD (@tdd-developer) 3. Git management (@git-manager)
This commit is contained in:
224
prompt/prompt-zero.md
Normal file
224
prompt/prompt-zero.md
Normal file
@@ -0,0 +1,224 @@
|
||||
# Prompt Zero: [NOME_PROGETTO] - Project Kickoff
|
||||
|
||||
## 🎯 Missione
|
||||
|
||||
Sviluppare **[NOME_PROGETTO]**, [descrizione breve del progetto - da personalizzare].
|
||||
|
||||
**Repository:** `[ROOT_PROGETTO]`
|
||||
**PRD:** `[ROOT_PROGETTO]/export/prd.md`
|
||||
|
||||
---
|
||||
|
||||
## 📊 Stato Attuale
|
||||
|
||||
- ✅ **PRD Completo**: Requisiti funzionali e non funzionali definiti
|
||||
- ✅ **Team Configurato**: Agenti specializzati pronti
|
||||
- ❌ **Nessun Codice**: Progetto da zero
|
||||
- ❌ **Nessuna Specifica Tecnica**: Da creare
|
||||
|
||||
---
|
||||
|
||||
## 👥 Team di Sviluppo
|
||||
|
||||
| Agente | Ruolo | File Config |
|
||||
|--------|-------|-------------|
|
||||
| `@spec-architect` | Definisce specifiche e architettura | `.opencode/agents/spec-architect.md` |
|
||||
| `@tdd-developer` | Implementazione TDD | `.opencode/agents/tdd-developer.md` |
|
||||
| `@git-manager` | Gestione commit Git | `.opencode/agents/git-manager.md` |
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Workflow Obbligatorio
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ FASE 1: SPECIFICA │
|
||||
│ @spec-architect │
|
||||
│ └── Legge PRD → Crea architecture.md, kanban.md │
|
||||
│ │
|
||||
│ ↓ │
|
||||
│ │
|
||||
│ FASE 2: IMPLEMENTAZIONE │
|
||||
│ @tdd-developer │
|
||||
│ └── RED → GREEN → REFACTOR per ogni task │
|
||||
│ │
|
||||
│ ↓ │
|
||||
│ │
|
||||
│ FASE 3: COMMIT │
|
||||
│ @git-manager │
|
||||
│ └── Commit atomico + Conventional Commits │
|
||||
└─────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Task Iniziale: Fase 1 - Specifica
|
||||
|
||||
**AGENTE:** `@spec-architect`
|
||||
|
||||
**OBIETTIVO:** Analizzare il PRD e creare le specifiche tecniche dettagliate.
|
||||
|
||||
### Azioni Richieste
|
||||
|
||||
1. **Leggere** `[ROOT_PROGETTO]/export/prd.md`
|
||||
|
||||
2. **Creare** la struttura di output:
|
||||
```
|
||||
[ROOT_PROGETTO]/export/
|
||||
├── prd.md # Requisiti prodotti (estratto/dettaglio)
|
||||
├── architecture.md # Architettura sistema
|
||||
├── kanban.md # Task breakdown
|
||||
└── progress.md # Tracciamento progresso
|
||||
```
|
||||
|
||||
3. **Produrre** `architecture.md` con:
|
||||
- Stack tecnologico dettagliato
|
||||
- Struttura cartelle progetto
|
||||
- Diagrammi flusso dati
|
||||
- Schema database completo (DDL)
|
||||
- Interfacce API (OpenAPI specs)
|
||||
- Sicurezza (cifratura, autenticazione)
|
||||
|
||||
4. **Produrre** `kanban.md` con:
|
||||
- Task breakdown per Fase 1 (MVP)
|
||||
- Stima complessità
|
||||
- Dipendenze tra task
|
||||
- Regola "little often": task < 2 ore
|
||||
|
||||
5. **Inizializzare** `progress.md` con:
|
||||
- Feature corrente: "Fase 1 - MVP"
|
||||
- Stato: "🔴 Pianificazione"
|
||||
- Percentuale: 0%
|
||||
|
||||
### Criteri di Accettazione
|
||||
|
||||
- [ ] Architecture.md completo con tutte le sezioni
|
||||
- [ ] Kanban.md con task pronti per @tdd-developer
|
||||
- [ ] Progress.md inizializzato
|
||||
- [ ] Tutti i path usano `[ROOT_PROGETTO]/`
|
||||
|
||||
---
|
||||
|
||||
## 📋 Requisiti Chiave (Dal PRD)
|
||||
|
||||
### Funzionalità MVP (Fase 1)
|
||||
|
||||
[DA PERSONALIZZARE - Inserire le funzionalità principali del progetto]
|
||||
|
||||
1. **[Feature 1]**
|
||||
- [Dettaglio 1]
|
||||
- [Dettaglio 2]
|
||||
|
||||
2. **[Feature 2]**
|
||||
- [Dettaglio 1]
|
||||
- [Dettaglio 2]
|
||||
|
||||
### Stack Tecnologico (Esempio)
|
||||
|
||||
- **Backend:** [Linguaggio/Framework]
|
||||
- **Database:** [Tipo database]
|
||||
- **Frontend:** [Tecnologia frontend]
|
||||
- **Auth:** [Metodo autenticazione]
|
||||
- **Task Background:** [Scheduler]
|
||||
|
||||
---
|
||||
|
||||
## 🛡️ Vincoli e Best Practices
|
||||
|
||||
### Sicurezza (Critico)
|
||||
- [Requisito sicurezza 1]
|
||||
- [Requisito sicurezza 2]
|
||||
- SQL injection prevention
|
||||
- XSS prevention
|
||||
- CSRF protection
|
||||
- Rate limiting
|
||||
|
||||
### Qualità
|
||||
- Test coverage ≥ 90%
|
||||
- TDD obbligatorio
|
||||
- Conventional commits
|
||||
- Commit atomici
|
||||
|
||||
### Organizzazione
|
||||
- Task "little often" (< 2 ore)
|
||||
- Documentazione in `/export/`
|
||||
- Bug complessi in `/docs/bug_ledger.md`
|
||||
|
||||
---
|
||||
|
||||
## 📁 Struttura Progetto Attesa
|
||||
|
||||
```
|
||||
[ROOT_PROGETTO]/
|
||||
├── prd.md # Product Requirements
|
||||
├── prompt/
|
||||
│ └── prompt-zero.md # Questo file
|
||||
├── .opencode/
|
||||
│ ├── agents/ # Configurazioni agenti
|
||||
│ └── skills/ # Skill condivise
|
||||
├── export/ # Output spec-driven (da creare)
|
||||
│ ├── prd.md
|
||||
│ ├── architecture.md
|
||||
│ ├── kanban.md
|
||||
│ └── progress.md
|
||||
├── docs/ # Documentazione (da creare)
|
||||
│ ├── bug_ledger.md
|
||||
│ └── architecture.md
|
||||
├── src/ # Codice sorgente (da creare)
|
||||
│ └── [nome_package]/
|
||||
│ ├── __init__.py
|
||||
│ ├── main.py
|
||||
│ ├── config.py
|
||||
│ └── ...
|
||||
├── tests/ # Test suite (da creare)
|
||||
│ ├── unit/
|
||||
│ ├── integration/
|
||||
│ └── conftest.py
|
||||
├── requirements.txt / package.json
|
||||
└── README.md
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ Checklist Pre-Sviluppo
|
||||
|
||||
- [ ] @spec-architect ha letto questo prompt
|
||||
- [ ] Cartella `export/` creata
|
||||
- [ ] `architecture.md` creato con schema DB
|
||||
- [ ] `kanban.md` creato con task Fase 1
|
||||
- [ ] `progress.md` inizializzato
|
||||
|
||||
---
|
||||
|
||||
## 🎬 Prossima Azione
|
||||
|
||||
**@spec-architect**: Inizia analizzando il PRD in `export/prd.md` e crea le specifiche tecniche in `export/`.
|
||||
|
||||
**NON iniziare l'implementazione** finché le specifiche non sono approvate.
|
||||
|
||||
---
|
||||
|
||||
## 📞 Note per il Team
|
||||
|
||||
- **Domande sul PRD?** Leggi prima `export/prd.md` completamente
|
||||
- **Ambiguità?** Chiedi prima di procedere
|
||||
- **Vincoli tecnici?** Documentali in `architecture.md`
|
||||
- **Task troppo grandi?** Spezza in task più piccoli
|
||||
|
||||
---
|
||||
|
||||
**Data Creazione:** YYYY-MM-DD
|
||||
**Versione:** 1.0
|
||||
**Stato:** Pronto per kickoff
|
||||
|
||||
---
|
||||
|
||||
## 📝 Note per l'Utente
|
||||
|
||||
Questo è un template. Per usarlo:
|
||||
|
||||
1. **Sostituisci** `[NOME_PROGETTO]` con il nome reale
|
||||
2. **Descrivi** il progetto nella sezione Missione
|
||||
3. **Personalizza** la sezione "Requisiti Chiave" con i tuoi requisiti
|
||||
4. **Aggiorna** lo stack tecnologico
|
||||
5. **Definisci** gli scope dei commit pertinenti al tuo progetto
|
||||
Reference in New Issue
Block a user