Skip to content
Back to skills

Smart Init

ASecurity

Conversational onboarding for A Team. Detects ROADMAP.md, extracts context, generates INIT.md without requiring technical knowledge. Invoked automatically by the orchestrator when INIT.md is missing.

  • 24 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 16, 2026
ai-agentsjavascripttypescriptpythonrustgojavaswiftkotlinbashreact

Works with

  • claude code
  • cursor
  • cli
  • api

Security analysis

A100/100

Scanned October 16, 2026

npx -y skills add RBraga01/a-team --skill smart-init --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Smart Init?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Smart Init
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rbraga01-smart-init/badge)](https://www.skillsdirectory.com/skills/rbraga01-smart-init)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: smart-init
description: Conversational onboarding for A Team. Detects ROADMAP.md, extracts context, generates INIT.md without requiring technical knowledge. Invoked automatically by the orchestrator when INIT.md is missing.
---

# Smart Init — Conversational Onboarding

## Trigger

This skill is invoked by the orchestrator when `/orchestrate init` is called and no `INIT.md` exists.

## Detection Sequence

Check in this order:

1. `INIT.md` exists → stop, use current init flow unchanged
2. `ROADMAP.md` exists → Path A (extract from ROADMAP)
3. `ROADMAP_*.md` exists (e.g. `ROADMAP_icd10.md`) → Path A (extract from that file)
4. Neither exists → Path B (full 5-question interview)

---

## Path A — ROADMAP Exists

Read the ROADMAP file and extract:

| Look for in ROADMAP | Maps to INIT.md field |
|--------------------|-----------------------|
| Project name in H1 or title | Project name |
| Description paragraph | Project overview |
| Stack table or technology mentions | Languages & stack |
| "Princípios não-negociáveis" or "Non-negotiable" section | Immutable rules |
| "Próximo" / "Next" / "Roadmap" items | Active work context |
| Compliance mentions (GDPR, local-first, privacy, HIPAA) | Compliance scope |
| "Feito" / "Done" section | Existing coverage |

After extraction, ask **only one question** (the only thing a ROADMAP cannot tell you):

> "Que ferramentas de IA estás a usar para escrever código neste projecto?"
> → A) Claude Code
> → B) Codex CLI
> → C) Cursor
> → D) OpenCode
> → E) Várias — escolho mais do que uma

Then generate INIT.md (see Template section below) and show the review gate.

---

## Path B — No ROADMAP (Full Interview)

Ask these 5 questions, one at a time. Use plain language — assume the user is non-technical.

**Q1 (free text):**
> "O que queres construir? Descreve com as tuas palavras."

**Q2 (multiple choice):**
> "Já existe código ou começas do zero?"
> → A) Começo do zero
> → B) Já existe código
> → C) Não tenho a certeza

*If answer is B: run stack inference silently (see Stack Inference section).*

**Q3 (multiple choice):**
> "Que tipo de projecto é?"
> → A) App web (abre no browser)
> → B) App móvel (iPhone ou Android)
> → C) API ou serviço de backend
> → D) Análise de dados ou automação
> → E) Outro

**Q4 (multiple choice):**
> "Em que dispositivo ou plataforma deve correr?"
> → A) Browser (qualquer dispositivo)
> → B) iPhone / iPad
> → C) Android
> → D) Desktop (Windows / Mac / Linux)
> → E) Servidor / cloud

**Q5 (multiple choice):**
> "Que ferramentas de IA estás a usar para escrever código?"
> → A) Claude Code
> → B) Codex CLI
> → C) Cursor
> → D) OpenCode
> → E) Várias — escolho mais do que uma

After Q5: generate INIT.md, show review gate, then **offer to create ROADMAP.md**:
> "Queres que eu crie um ROADMAP.md para este projecto com base no que descreveste? É útil para futuras sessões."

---

## Stack Inference (Path B, answer B to Q2 only)

Run silently after the user answers B. Do NOT run for new projects (answer A or C).

```bash
git ls-files | sed 's/.*\.//' | sort | uniq -c | sort -rn | head -10
```

Extension → stack mapping:
- `.kt` → Kotlin / Android (agents: kotlin-reviewer, compose-ui)
- `.swift` → Swift / iOS (agents: swift-reviewer)
- `.py` → Python (agents: python-reviewer)
- `.ts` or `.tsx` → TypeScript / React (agents: code-reviewer)
- `.go` → Go (agents: go-reviewer)
- `.rs` → Rust (agents: rust-reviewer)
- `.dart` → Flutter (agents: flutter-reviewer)
- `.java` → Java / Android (agents: kotlin-reviewer as fallback)

Confidence threshold: if one extension accounts for >40% of tracked files, pre-fill Q3/Q4 and confirm with user. If ambiguous, ask normally.

---

## Review Gate

After generating INIT.md, display ONLY the `## O que entendi` section and ask:

> "Está correcto? Falta alguma coisa?"

- User says "ok" / "sim" / "yes" → run `/orchestrate init` automatically
- User describes a correction → update the relevant INIT.md section, show `## O que entendi` again
- After 3 correction rounds without approval → ask user to edit INIT.md manually: "Não consegui perceber a correcção. Por favor edita o INIT.md directamente e diz 'ok' quando estiver pronto."

---

## Codex Warning

Show this **before** the final approval:

> "Última coisa: o Codex vai pedir para aprovares um script de segurança na próxima sessão. Clica em 'Trust' para continuar — é o script de estado da A Team."

---

## INIT.md Template

Generate this file at the project root. Fill each field from the interview answers or ROADMAP extraction.

```markdown
## O que entendi
[Plain language summary: what the project is, inferred stack, active AI platforms, agent count after init]

Se algo estiver errado, edita este ficheiro antes de continuar.

---

# INIT.md — [Project Name]

> Run `/orchestrate init` after reviewing this file.

## Project Overview

**Name:** [from Q1 or ROADMAP H1]
**Type:** [from Q3: web app / mobile app / API / data / other]
**Status:** [New project / Active development]
**Description:** [from Q1 free text or ROADMAP description]

## Languages & Stack

[Check all that apply — inferred from ROADMAP or stack scan]
- [ ] Kotlin
- [ ] Swift
- [ ] Python
- [ ] TypeScript / JavaScript
- [ ] Go
- [ ] Rust
- [ ] Flutter / Dart
- [ ] Other: ___

**Framework / UI:** [inferred or left blank]
**Database:** [inferred or left blank]
**Build system:** [inferred or left blank]

## Compliance Scope

[Extracted from ROADMAP compliance mentions, or left unchecked]
- [ ] GDPR
- [ ] Child privacy / COPPA
- [ ] Local-first / no external data
- [ ] HIPAA
- [ ] PCI-DSS

## Active AI Platforms

[From Q5 or Path A question]
- [ ] Claude Code
- [ ] Codex CLI
- [ ] Cursor
- [ ] OpenCode

## Non-Negotiable Rules

[Extracted from ROADMAP "princípios não-negociáveis" section, or left blank]

## Active Work / Next Steps

[Extracted from ROADMAP "Próximo" / "Next" section, or left blank]

## Agents to Prune

[Inferred from stack — list agents irrelevant to this project's languages/domain]
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.