Add weeknotes system with /weeknotes command
- Create weeknotes archetype for manual post creation - Add /weeknotes slash command that prompts through each section interactively (shipped, read, played, cooked, noticed, thinking, next) - Add /weeknotes landing page explaining the concept - Update CLAUDE.md with weeknotes documentation and voice guidelines Weeknotes are brief weekly reflections—lighter than full posts, more personal journal than polished article. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
108
.claude/commands/weeknotes.md
Normal file
108
.claude/commands/weeknotes.md
Normal file
@@ -0,0 +1,108 @@
|
|||||||
|
---
|
||||||
|
description: Interactive weeknotes blog post generator - prompts through each section and creates the post
|
||||||
|
---
|
||||||
|
|
||||||
|
You are helping Eric create his weekly weeknotes blog post. Weeknotes are personal reflections on the week—what happened, what was made, what was noticed. They should feel like a genuine personal update, not a status report.
|
||||||
|
|
||||||
|
## Reference Material
|
||||||
|
|
||||||
|
Before starting, read these resources to understand Eric's current context:
|
||||||
|
- `/content/now.md` - what Eric is currently working on
|
||||||
|
- Recent posts in `/content/posts/` - for voice and recent activity context
|
||||||
|
|
||||||
|
## Gathering Information
|
||||||
|
|
||||||
|
Use the AskUserQuestion tool to prompt Eric for each section. Ask these one at a time, allowing him to skip any with "skip" or "-":
|
||||||
|
|
||||||
|
1. **Shipped**: "What did you ship, build, fix, or finish this week? (Projects, features, code, creative work, household accomplishments)"
|
||||||
|
|
||||||
|
2. **Read**: "What did you read this week? (Books, articles, documentation, interesting threads)"
|
||||||
|
|
||||||
|
3. **Played**: "What did you play this week? (Video games, board games, experiments, fun side projects)"
|
||||||
|
|
||||||
|
4. **Cooked**: "What did you cook this week? (New recipes, Random Recipe Project experiments, notable meals)"
|
||||||
|
|
||||||
|
5. **Noticed**: "What did you notice this week? (In the garden, neighborhood, weather, cats, life in general)"
|
||||||
|
|
||||||
|
6. **Thinking About**: "What's on your mind? (Ideas brewing, problems you're chewing on, topics you keep returning to)"
|
||||||
|
|
||||||
|
7. **What's Next**: "What's coming up? (Plans for next week, upcoming events, things you're looking forward to)"
|
||||||
|
|
||||||
|
8. **Vibe Check**: "In one sentence, what was the overall feel of this week?"
|
||||||
|
|
||||||
|
## Generating the Post
|
||||||
|
|
||||||
|
After gathering responses, create the weeknotes post:
|
||||||
|
|
||||||
|
1. **Calculate the filename**: Use today's date in format `YYYY-MM-DD-weeknotes.md`
|
||||||
|
|
||||||
|
2. **Generate frontmatter**:
|
||||||
|
```yaml
|
||||||
|
---
|
||||||
|
title: "Weeknotes: [Date in 'January 2, 2006' format]"
|
||||||
|
date: [ISO 8601 datetime with -05:00 timezone]
|
||||||
|
draft: false
|
||||||
|
tags:
|
||||||
|
- weeknotes
|
||||||
|
---
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Write the opening**: Take the "vibe check" response and craft it into an italicized opening tagline that captures the week's essence.
|
||||||
|
|
||||||
|
4. **Write each section**: Only include sections where Eric provided content (skip empty ones). For each:
|
||||||
|
- Use `## Section Name` heading
|
||||||
|
- Transform bullet points into brief, punchy prose or keep as bullets depending on content
|
||||||
|
- Add relevant links where appropriate
|
||||||
|
- Keep Eric's voice: concrete, specific, honest
|
||||||
|
|
||||||
|
5. **Voice guidelines** (from CLAUDE.md):
|
||||||
|
- Concrete over abstract—real project names, actual numbers
|
||||||
|
- Brief sentences work well for weeknotes
|
||||||
|
- Honest about setbacks alongside wins
|
||||||
|
- Forward momentum at the end
|
||||||
|
|
||||||
|
## Creating the File
|
||||||
|
|
||||||
|
Save the post to `/Users/ericwagoner/Sites/blog/content/posts/[date]-weeknotes.md`
|
||||||
|
|
||||||
|
## After Creation
|
||||||
|
|
||||||
|
Show Eric the generated post content and ask:
|
||||||
|
- "Want me to start the Hugo dev server so you can preview it?"
|
||||||
|
- "Any sections you'd like me to revise?"
|
||||||
|
|
||||||
|
If he wants to preview, run `hugo server -D` in the blog directory.
|
||||||
|
|
||||||
|
## Example Output
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
---
|
||||||
|
title: "Weeknotes: December 27, 2025"
|
||||||
|
date: 2025-12-27T12:00:00-05:00
|
||||||
|
draft: false
|
||||||
|
tags:
|
||||||
|
- weeknotes
|
||||||
|
---
|
||||||
|
|
||||||
|
_A week of small wins and steady momentum._
|
||||||
|
|
||||||
|
## Shipped
|
||||||
|
|
||||||
|
Built a pantry inventory app in two hours with Claude Code. Simple PHP/HTML, deployed to YunoHost. Already used it at the grocery store.
|
||||||
|
|
||||||
|
## Read
|
||||||
|
|
||||||
|
Finished the first few chapters of *Service Model* by Adrian Tchaikovsky. The robot narrator's voice is delightful.
|
||||||
|
|
||||||
|
## Played
|
||||||
|
|
||||||
|
More Outer Worlds 2. The corporate dystopia hits different when you're on vacation.
|
||||||
|
|
||||||
|
## Noticed
|
||||||
|
|
||||||
|
The cats have claimed the heating vent by my desk. Territorial negotiations ongoing.
|
||||||
|
|
||||||
|
## What's Next
|
||||||
|
|
||||||
|
Inuhele prep is ramping up. Need to finalize my schedule and pack the tiki shirts.
|
||||||
|
```
|
||||||
24
CLAUDE.md
24
CLAUDE.md
@@ -52,12 +52,34 @@ hugo new content-name.md
|
|||||||
The blog uses the "m10c" theme but has two additional themes available (henry, kestrel). Theme switching is done via `config.toml`.
|
The blog uses the "m10c" theme but has two additional themes available (henry, kestrel). Theme switching is done via `config.toml`.
|
||||||
|
|
||||||
### Content Organization
|
### Content Organization
|
||||||
- `/content/posts/` - Blog posts
|
|
||||||
|
- `/content/posts/` - Blog posts (including weeknotes)
|
||||||
- `/content/now.md` - "Now" page showing current activities
|
- `/content/now.md` - "Now" page showing current activities
|
||||||
- `/content/then.md` - "Past" page with historical content
|
- `/content/then.md` - "Past" page with historical content
|
||||||
- `/content/upcoming.md` - "Future" page with upcoming events
|
- `/content/upcoming.md` - "Future" page with upcoming events
|
||||||
|
- `/content/weeknotes.md` - Weeknotes landing page
|
||||||
- `/content/mytweets.md` - Local tweet archive page
|
- `/content/mytweets.md` - Local tweet archive page
|
||||||
|
|
||||||
|
### Weeknotes
|
||||||
|
|
||||||
|
Weeknotes are short weekly reflections on what Eric shipped, read, played, cooked, and noticed. They use a lighter voice than full blog posts—more personal journal than polished article.
|
||||||
|
|
||||||
|
**To create a weeknote**: Run `/weeknotes` to be prompted through each section interactively.
|
||||||
|
|
||||||
|
**Manual creation**: `hugo new --kind weeknotes posts/YYYY-MM-DD-weeknotes.md`
|
||||||
|
|
||||||
|
**Sections** (all optional—skip any that don't apply):
|
||||||
|
|
||||||
|
- Shipped — projects, features, fixes, accomplishments
|
||||||
|
- Read — books, articles, interesting finds
|
||||||
|
- Played — games, experiments, fun projects
|
||||||
|
- Cooked — recipes, Random Recipe Project work
|
||||||
|
- Noticed — observations from garden, neighborhood, life
|
||||||
|
- Thinking About — ideas brewing, problems being chewed on
|
||||||
|
- What's Next — upcoming plans and goals
|
||||||
|
|
||||||
|
**Voice for weeknotes**: Brief, punchy, concrete. Less polished than regular posts. Okay to be fragmentary. The goal is marking time and noticing patterns, not crafting essays.
|
||||||
|
|
||||||
### Menu Structure
|
### Menu Structure
|
||||||
The site has four menu groups configured in `config.toml`:
|
The site has four menu groups configured in `config.toml`:
|
||||||
- **main**: Home and Tags navigation
|
- **main**: Home and Tags navigation
|
||||||
|
|||||||
37
archetypes/weeknotes.md
Normal file
37
archetypes/weeknotes.md
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
---
|
||||||
|
title: "Weeknotes: {{ dateFormat "January 2, 2006" .Date }}"
|
||||||
|
date: {{ .Date }}
|
||||||
|
draft: true
|
||||||
|
tags:
|
||||||
|
- weeknotes
|
||||||
|
---
|
||||||
|
|
||||||
|
_[One sentence capturing the week's vibe]_
|
||||||
|
|
||||||
|
## Shipped
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Read
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Played
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Cooked
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Noticed
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## Thinking About
|
||||||
|
|
||||||
|
-
|
||||||
|
|
||||||
|
## What's Next
|
||||||
|
|
||||||
|
-
|
||||||
11
content/weeknotes.md
Normal file
11
content/weeknotes.md
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
---
|
||||||
|
title: Weeknotes
|
||||||
|
aliases:
|
||||||
|
- /weeknotes/
|
||||||
|
---
|
||||||
|
|
||||||
|
Weeknotes are short, personal reflections on the week—what I shipped, read, played, cooked, noticed, and thought about. They're a way to mark time and notice patterns.
|
||||||
|
|
||||||
|
The format comes from the [weeknotes movement](https://indieweb.org/weeknotes), which grew out of the UK digital government community and spread through personal blogs. [Giles Turnbull's guide](https://doingweeknotes.com/) and [Tracy Durnell's reflections](https://tracydurnell.com/2024/07/30/using-personal-weeknotes-as-a-tool-for-attention/) shaped my approach.
|
||||||
|
|
||||||
|
Browse all weeknotes: [/tags/weeknotes](/tags/weeknotes/)
|
||||||
Reference in New Issue
Block a user