---
title: "Project Kickoff: Start Every Project the Same Way"
date: "2026-05-21T00:00:00.000Z"
summary: "A skill that bootstraps new project directories with a consistent structure. Drop in your artifacts, answer a few questions, and get an organized working directory that any agent or human can pick up cold."
tags:
  - "ai"
  - "skills"
  - "documentation"
  - "development"
  - "project management"
authors:
  - "default"
---
I recently published [project-briefing](/blog/project-briefing-skill), a skill for getting back up to speed on a project after time away. But it depends on having good source material to synthesize: an overview document, an activity log, structured notes. If those files don't exist, the briefing has nothing to work with.

That raised an obvious question: how do I make sure every project starts with the right files in the first place?

## The bootstrapping problem

Starting a new project usually means I have a pile of scattered artifacts. Forwarded emails, a requirements PDF, some screenshots, maybe a meeting transcript. It all lives in a folder somewhere, unstructured.

Getting organized takes real effort, especially if I want the structure to be machine-readable for coding agents. And if I'm honest, I skip it more often than I should. I just start working and pay for it later when I can't remember what was decided three sessions ago.

The other issue is consistency. When every project has a different structure, re-orienting is slow. There is no muscle memory for where things live.

## What project-kickoff does

[project-kickoff](https://github.com/rocksoup/project-kickoff) is a skill that solves this once. I create a directory, drop in whatever I already have, and invoke the skill. It does four things:

1. **Scans** everything in the directory: documents, screenshots, PDFs, emails, whatever I've dumped in
2. **Interviews** me with 3-5 targeted questions to fill gaps the artifacts don't cover
3. **Writes an OVERVIEW.md** and reads it back for my approval
4. **Scaffolds the rest**: an activity log, an agent instructions file, and a scratch directory

The scan-first design is important. Most project kickoffs start with a blank template and make you fill everything in. That ignores the reality that you usually already have information. The skill reads what exists and only asks about what's missing.

When it's done, the project directory looks like this:

```
my-project/
├── OVERVIEW.md      # What the project is
├── LOG.md           # What's happened so far
├── CLAUDE.md        # How agents should work here
└── temp/
    └── README.md    # Scratch space for intermediate work
```

## Why these four files

**OVERVIEW.md** is the single source of truth. Goals, stakeholders, timelines, key facts, open questions, and an index of important files. It's written in plain language so anyone picking up the project cold can understand it. This is also what [project-briefing](https://github.com/rocksoup/project-briefing) reads when I ask "get me up to speed."

**LOG.md** is insurance against lost context. Sessions end unexpectedly all the time: token limits, disconnects, timeouts. The CLAUDE.md file instructs agents to update the log proactively throughout a session, not at the end. If a session stops mid-task, everything completed up to that point is recorded and recoverable.

**CLAUDE.md** is loaded into every agent session automatically. It contains operational rules, not project knowledge: stay inside this directory, use `temp/` for scratch work, update the log as you go, read the overview before starting. Rules in this file get followed session after session without me repeating myself.

**temp/** is the pressure valve. By giving agents a sanctioned place for messy intermediate work, the rest of the project directory stays clean.

The separation between OVERVIEW.md and CLAUDE.md is deliberate. The overview answers "what is this?" The instructions answer "how should I work on this?" They reference each other but never duplicate content. Mixing project facts and operational rules into a single file creates something too long to maintain and too confusing to follow.

## The pair

These two skills form a project lifecycle:

1. **Kickoff** creates the directory structure with OVERVIEW.md, LOG.md, CLAUDE.md, and temp/
2. **Work** happens; agents update LOG.md as they go
3. **Return** with project-briefing, which synthesizes the overview and log into a quick status update
4. **Repeat** because re-entry is fast when the structure is consistent and the log is current

The OVERVIEW.md that project-kickoff creates is specifically designed to give project-briefing everything it needs. The five questions that project-briefing answers (objective, completed work, current milestone, next step, risks) all have their source material in the overview and log files.

## Install and use

The skill is open source. Install it by copying the inner directory into your agent's skill directory:

```bash
cp -R project-kickoff/project-kickoff ~/.claude/skills/project-kickoff
# or
cp -R project-kickoff/project-kickoff ~/.codex/skills/project-kickoff
```

Only copy the nested `project-kickoff/` directory, not the repo root.

Then create a new project directory, drop in your artifacts, and invoke the skill:

```
/project-kickoff
```

The whole process takes a few minutes. At the end, you have a project directory that any agent or human can pick up and work with immediately.

Like project-briefing, this is intentionally agent-agnostic. The files it creates are plain markdown, readable by any tool. Workflow assets should be portable.

The repo is at [rocksoup/project-kickoff](https://github.com/rocksoup/project-kickoff).

---

## More on AI-assisted development

- [Project Briefing: A Small Skill for Getting Back Up to Speed](/blog/project-briefing-skill). The companion skill that turns project state into a fast handoff when returning after time away.
- [How I Control Claude Code from Slack Using the Channels MCP](/blog/slack-bridge-for-claude-code). Push messages into a running Claude Code session from Slack on your phone using the Channels MCP.
- [The Linear Walkthrough: Architecture Context That Stays Accurate for AI Agents](/blog/linear-walkthrough-pattern). The documentation pattern that gives AI agents full codebase context at session start.
- [Inspect Before You Ask: Wiring Chrome's Debug Protocol into Your AI Workflow](/blog/chrome-devtools-mcp-live-site-inspection). Using the Chrome DevTools MCP to query live site markup from inside Claude Code.
- [Show, Don't Describe: Analyzing UI Recordings with Claude Code](/blog/screen-recording-skill). Extract key frames from a screen recording to communicate dynamic UI behavior to the agent with full fidelity.

