# Maker:kickoff

> Initialize project context and preferences. Use when starting a new project, when the user says "kickoff", or when there is no .maker/project_state.md and the user wants to get started.

- Skill: `rp7o/maker-kickoff` (Agent Skill)
- Install (CLI): `npx skillmds@latest add rp7o/maker-kickoff`
- Raw SKILL.md: https://api.skillmd.com/api/skills/rp7o/maker-kickoff/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: rp7o (https://skillmd.com/u/rp7o)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/rp7o/maker-kickoff

---


# kickoff — Initialize Project

Creates the project context and `.maker/project_state.md`. Quick — gets just enough context to start. Deeper product thinking happens in `maker:discover`. Technical decisions happen in `maker:architect`.

Before running this command, read `../../references/shared-protocols.md` for shared protocols.

## When to Run

- First interaction with a new project (no `.maker/project_state.md` exists).
- User explicitly says `maker:kickoff`.
- User wants to reset and start fresh (confirm before overwriting existing state).

## ⚠️ CRITICAL BOUNDARY WARNING
**DO NOT** merge `maker:discover` or `maker:architect` questions into `maker:kickoff`. 
Even if the user provides a detailed project description upfront (e.g., target users, features, tech stack), you MUST ONLY ask the 3 kickoff questions (Name, Style, Constraints) and then terminate the kickoff phase. 
**Do NOT ask about target users, core jobs, or tech stack preferences during kickoff.**

## Workflow

### Step 1: Project Name

Ask: "What's the project called? (working name is fine)"

Wait for response.

### Step 2: Working Preferences

Use the `AskUserQuestion` tool to ask: "How do you like to work with me?" with these single-select options:
- **Thorough** — I ask lots of questions, discover deeply before acting.
- **Balanced** — Some questions, then I move. Check in at key points.
- **Fast** — Minimal questions. I make reasonable defaults and go. You course-correct.

Wait for response.

### Step 3: Anything Else

Ask: "Anything else I should know upfront? Hard constraints, deadlines, things to avoid?"

Wait for response. If nothing, proceed.

## Output

Create `.maker/project_state.md` in the project root with the Profile section populated. Initialize all other sections as empty with their headers.

Write `AGENTS.md` to the project root as follows:

- **If `AGENTS.md` does not exist**: create it with the full template below.
- **If `AGENTS.md` already exists**: update only the `## Where Context Lives` table and the `## Staying Current` section in place. Preserve all other sections and content exactly as-is. If those sections are not present, append them.

```markdown
# Project Context Map

This file orients agents working in this project. Read it before exploring, building, reviewing, or debugging.

## Where Context Lives

| What you need | Where to look |
|---|---|
| Project state, decisions, session log | `.maker/project_state.md` |
| Product context, business rationale | `handbook/product/` |
| Architecture decisions, folder model | `handbook/architecture/` |
| Engineering conventions, API design | `handbook/engineering/` |
| Design system, styling decisions | `handbook/design/` |
| Workflow context loading | `handbook/workflows/context-loading.md` |
| Code structure, conventions, how to work with this codebase | `LLM.md` (generated by build — may not exist yet) |
| Upstream business/product brief | `.shaper/` (if Shaper was used) |
| Debug lessons and patterns to avoid | `.maker/lessons.md` |

## Staying Current

If any maker command ran earlier in this session, re-read `.maker/project_state.md` and relevant handbook sections before proceeding — state and decisions may have changed.
```

Present a summary:

```markdown
## Project Initialized

- **Name**: [name]
- **Type**: [type, or "TBD — we'll figure this out during exploration"]
- **Working style**: [thorough / balanced / fast]

### Suggested Next Step

→ `/maker:discover` — Let's flesh out what problem you're solving and who it's for.
→ `/maker:design` — If you already know the problem, design the solution shape.
→ `/maker:help` — See all available commands.
```

**Note**: Stack is NOT set during kickoff. It's a technical decision that belongs in `maker:architect`, where it benefits from product context. Don't ask about frameworks, CSS strategies, or tooling here.

## State Update

- Create `.maker/project_state.md` with Profile populated (name, type, working preferences, constraints).
- Profile > Stack is left blank — populated by `maker:architect`.
- Initialize empty sections: Product Context, Architecture, Decision Log, Implementation Status, Deferred Decisions, Iteration History, Session Log.
- Write `AGENTS.md` to the project root: create if absent, otherwise merge — update only the `## Where Context Lives` and `## Staying Current` sections, leave all other content untouched.
- Add to Session Log: date, "kickoff", key outcomes.

## Interaction Calibration

After kickoff, calibrate all future interactions to the working preference:
- **Thorough**: Full one-question-at-a-time flow in discover. Detailed confirmations.
- **Balanced**: Grouped questions (2-3 at a time) in discover. Confirm before code only.
- **Fast**: Minimal questions. Make defaults, present plan, ask "proceed?" once.

This calibration affects `maker:discover`, `maker:architect`, and `maker:build`. It does NOT reduce the quality of decisions or the rigor of the output — only the interaction density.

