1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
#+TITLE: First Session Workflow
#+AUTHOR: Craig Jennings & Claude
Run this workflow on the first Claude Code session for a new
project. It establishes the git/.ai policy, orients Claude to the
project, and initializes =.ai/notes.org=.
* When to Run
When any of these are true:
- =.ai/notes.org= contains the "If this is the first session" pointer
- =.ai/sessions/= doesn't exist or is empty (no prior session records)
- User says "this is a new project" or "let's set this project up"
If unsure, ask.
* The Workflow
** Step 1: Determine git / =.ai= policy
Ask:
- Is this project in a git repository?
- What are the remote repositories (if any)?
- Is this a *code project* (Emacs package, library, software project)
or a *content/documentation project* (personal planning, business,
reference)?
Based on the answer:
*** Code project
- Add =/.ai/= to =.gitignore= — session tooling is private, not part
of the codebase
- Examples: org-msg, chime.el, wttrin, or any future Emacs
packages/libraries
- =.ai/= contains session notes and Claude tooling; stays local-only
- A project-level =docs/= (if ever created) is still tracked — real
user-facing docs go there, not in =.ai/=
*** Content / documentation project
- Commit =.ai/= normally — the project history IS the project
- Examples: personal projects, business planning, documentation,
reference collections
- =.ai/= holds session context and reference material that's part of
the project's evolution
** Step 2: Understand the project
Ask:
- What is this project about?
- What are the goals?
- Any background, constraints, or people involved?
- Anything that's already tried / ruled out?
Take clarifying questions as they arise. Don't try to finish this
step before moving on — understanding deepens across the first few
sessions.
** Step 3: Brainstorm how to help
- Discuss approaches and strategies
- Identify immediate next steps
- Agree on a first concrete task (or that the first session is just
orientation)
** Step 4: Document what was learned
- Fill in the *Project-Specific Context* section of =.ai/notes.org=
with the project overview, goals, and any key facts from Step 2
- Add project-specific references or files to =.ai/= as needed
- If the project has a task file (=todo.org= at root), note its
location in notes.org
** Step 5: Clean up
- Remove the "If this is the first session" pointer from
=.ai/notes.org= (it's done its job)
- The first session's record will be archived automatically via
wrap-it-up.org at session end — the session-context.org file
becomes =.ai/sessions/YYYY-MM-DD-HH-MM-description.org=. No
additional notes.org transcription needed.
* Rationale
First-session setup is a one-time event per project but it's
procedural, so it belongs in workflows/ rather than embedded in the
notes.org seed. The seed notes.org points here on first session;
subsequent sessions should never touch this workflow.
|